mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-02-25 18:45:27 -06:00
1 line
14 KiB
JavaScript
Vendored
1 line
14 KiB
JavaScript
Vendored
"use strict";(self["webpackChunkfirefly_iii"]=self["webpackChunkfirefly_iii"]||[]).push([[7736],{7736:(e,t,s)=>{s.r(t),s.d(t,{default:()=>te});var i=s(9835),r=s(6970);const o={class:"row q-mx-md"},n={class:"col-12"},a={class:"row q-mx-md q-mt-md"},l={class:"col-xl-4 col-lg-6 col-md-12 col-xs-12 q-px-xs"},d=(0,i._)("div",{class:"text-h6"},"Basic options for recurring transaction",-1),u={class:"row"},c={class:"col-12 q-mb-xs"},p={class:"row"},m={class:"col-12 q-mb-xs"},b={class:"col-xl-4 col-lg-6 col-md-12 col-xs-12 q-px-xs"},_=(0,i._)("div",{class:"text-h6"},"Repeat info",-1),h={class:"row"},g={class:"col-12 q-mb-xs"},f={class:"row"},y={class:"col-12 q-mb-xs"},x={class:"row"},w={class:"col-12 q-mb-xs"},v={class:"row q-mx-md q-mt-md"},E={class:"col-xl-4 col-lg-6 col-md-12 col-xs-12 q-px-xs"},k=(0,i._)("div",{class:"text-h6"},"Single transaction",-1),V={class:"col-xl-4 col-lg-6 col-md-12 col-xs-12 q-px-xs"},q=(0,i._)("div",{class:"text-h6"},"Single repetition",-1),W={class:"row q-mx-md"},S={class:"col-12 q-pa-xs"},I={class:"row"},R={class:"col-12 text-right"},Z={class:"row"},M={class:"col-12 text-right"},U=(0,i._)("br",null,null,-1);function T(e,t,s,T,D,C){const $=(0,i.up)("q-btn"),Q=(0,i.up)("q-banner"),P=(0,i.up)("q-card-section"),F=(0,i.up)("q-input"),H=(0,i.up)("q-select"),B=(0,i.up)("q-card"),j=(0,i.up)("q-checkbox"),O=(0,i.up)("q-page");return(0,i.wg)(),(0,i.j4)(O,null,{default:(0,i.w5)((()=>[(0,i._)("div",o,[(0,i._)("div",n,[""!==D.errorMessage?((0,i.wg)(),(0,i.j4)(Q,{key:0,"inline-actions":"",rounded:"",class:"bg-orange text-white"},{action:(0,i.w5)((()=>[(0,i.Wm)($,{flat:"",onClick:C.dismissBanner,label:"Dismiss"},null,8,["onClick"])])),default:(0,i.w5)((()=>[(0,i.Uk)((0,r.zw)(D.errorMessage)+" ",1)])),_:1})):(0,i.kq)("",!0)])]),(0,i._)("div",a,[(0,i._)("div",l,[(0,i.Wm)(B,{bordered:""},{default:(0,i.w5)((()=>[(0,i.Wm)(P,null,{default:(0,i.w5)((()=>[d])),_:1}),(0,i.Wm)(P,null,{default:(0,i.w5)((()=>[(0,i._)("div",u,[(0,i._)("div",c,[(0,i.Wm)(F,{"error-message":D.submissionErrors.title,error:D.hasSubmissionErrors.title,"bottom-slots":"",disable:C.disabledInput,type:"text",clearable:"",modelValue:D.title,"onUpdate:modelValue":t[0]||(t[0]=e=>D.title=e),label:e.$t("form.title"),outlined:""},null,8,["error-message","error","disable","modelValue","label"])])]),(0,i._)("div",p,[(0,i._)("div",m,[(0,i.Wm)(H,{"error-message":D.submissionErrors.type,error:D.hasSubmissionErrors.type,"bottom-slots":"",disable:C.disabledInput,outlined:"",modelValue:D.type,"onUpdate:modelValue":t[1]||(t[1]=e=>D.type=e),"emit-value":"",class:"q-pr-xs","map-options":"",options:D.types,label:"Transaction type"},null,8,["error-message","error","disable","modelValue","options"])])])])),_:1})])),_:1})]),(0,i._)("div",b,[(0,i.Wm)(B,{bordered:""},{default:(0,i.w5)((()=>[(0,i.Wm)(P,null,{default:(0,i.w5)((()=>[_])),_:1}),(0,i.Wm)(P,null,{default:(0,i.w5)((()=>[(0,i._)("div",h,[(0,i._)("div",g,[(0,i.Wm)(F,{"error-message":D.submissionErrors.first_date,error:D.hasSubmissionErrors.first_date,clearable:"","bottom-slots":"",disable:C.disabledInput,type:"date",modelValue:D.first_date,"onUpdate:modelValue":t[2]||(t[2]=e=>D.first_date=e),label:e.$t("form.first_date"),hint:"The first date you want the recurrence",outlined:""},null,8,["error-message","error","disable","modelValue","label"])])]),(0,i._)("div",f,[(0,i._)("div",y,[(0,i.Wm)(F,{"error-message":D.submissionErrors.nr_of_repetitions,error:D.hasSubmissionErrors.nr_of_repetitions,clearable:"","bottom-slots":"",disable:C.disabledInput,type:"number",step:"1",modelValue:D.nr_of_repetitions,"onUpdate:modelValue":t[3]||(t[3]=e=>D.nr_of_repetitions=e),label:e.$t("form.repetitions"),hint:"nr_of_repetitions",outlined:""},null,8,["error-message","error","disable","modelValue","label"])])]),(0,i._)("div",x,[(0,i._)("div",w,[(0,i.Wm)(F,{"error-message":D.submissionErrors.repeat_until,error:D.hasSubmissionErrors.repeat_until,"bottom-slots":"",disable:C.disabledInput,type:"date",modelValue:D.repeat_until,"onUpdate:modelValue":t[4]||(t[4]=e=>D.repeat_until=e),hint:"repeat_until",clearable:"",outlined:""},null,8,["error-message","error","disable","modelValue"])])])])),_:1})])),_:1})])]),(0,i._)("div",v,[(0,i._)("div",E,[(0,i.Wm)(B,{bordered:""},{default:(0,i.w5)((()=>[(0,i.Wm)(P,null,{default:(0,i.w5)((()=>[k])),_:1}),(0,i.Wm)(P,null,{default:(0,i.w5)((()=>[(0,i.Wm)(F,{"error-message":D.submissionErrors.transactions[D.index].description,error:D.hasSubmissionErrors.transactions[D.index].description,"bottom-slots":"",disable:C.disabledInput,type:"text",clearable:"",modelValue:D.transactions[D.index].description,"onUpdate:modelValue":t[5]||(t[5]=e=>D.transactions[D.index].description=e),label:e.$t("form.description"),outlined:""},null,8,["error-message","error","disable","modelValue","label"]),(0,i.Wm)(F,{"error-message":D.submissionErrors.transactions[D.index].amount,error:D.hasSubmissionErrors.transactions[D.index].amount,"bottom-slots":"",disable:C.disabledInput,clearable:"",mask:D.balance_input_mask,"reverse-fill-mask":"",hint:"Expects #.##","fill-mask":"0",modelValue:D.transactions[D.index].amount,"onUpdate:modelValue":t[6]||(t[6]=e=>D.transactions[D.index].amount=e),label:e.$t("firefly.amount"),outlined:""},null,8,["error-message","error","disable","mask","modelValue","label"]),(0,i.Wm)(H,{"error-message":D.submissionErrors.transactions[D.index].source_id,error:D.hasSubmissionErrors.transactions[D.index].source_id,modelValue:D.transactions[D.index].source_id,"onUpdate:modelValue":t[7]||(t[7]=e=>D.transactions[D.index].source_id=e),"bottom-slots":"",disable:C.disabledInput,outlined:"","emit-value":"",class:"q-pr-xs","map-options":"",options:D.accounts,label:"Source account"},null,8,["error-message","error","modelValue","disable","options"]),(0,i.Wm)(H,{"error-message":D.submissionErrors.transactions[D.index].destination_id,error:D.hasSubmissionErrors.transactions[D.index].destination_id,modelValue:D.transactions[D.index].destination_id,"onUpdate:modelValue":t[8]||(t[8]=e=>D.transactions[D.index].destination_id=e),"bottom-slots":"",disable:C.disabledInput,outlined:"","emit-value":"",class:"q-pr-xs","map-options":"",options:D.accounts,label:"Destination account"},null,8,["error-message","error","modelValue","disable","options"])])),_:1})])),_:1})]),(0,i._)("div",V,[(0,i.Wm)(B,{bordered:""},{default:(0,i.w5)((()=>[(0,i.Wm)(P,null,{default:(0,i.w5)((()=>[q])),_:1}),(0,i.Wm)(P,null,{default:(0,i.w5)((()=>[(0,i.Wm)(H,{"error-message":D.submissionErrors.repetitions[D.index].type,error:D.hasSubmissionErrors.repetitions[D.index].type,"bottom-slots":"","emit-value":"",disable:C.disabledInput,outlined:"",modelValue:D.repetitions[D.index].type,"onUpdate:modelValue":t[9]||(t[9]=e=>D.repetitions[D.index].type=e),"map-options":"",options:D.repetition_types,label:"Type of repetition"},null,8,["error-message","error","disable","modelValue","options"]),(0,i.Wm)(F,{"error-message":D.submissionErrors.repetitions[D.index].skip,error:D.hasSubmissionErrors.repetitions[D.index].skip,"bottom-slots":"",disable:C.disabledInput,clearable:"",modelValue:D.repetitions[D.index].skip,"onUpdate:modelValue":t[10]||(t[10]=e=>D.repetitions[D.index].skip=e),type:"number",min:"0",max:"31",label:e.$t("form.skip"),outlined:""},null,8,["error-message","error","disable","modelValue","label"]),(0,i.Wm)(H,{"error-message":D.submissionErrors.repetitions[D.index].weekend,error:D.hasSubmissionErrors.repetitions[D.index].weekend,modelValue:D.repetitions[D.index].weekend,"onUpdate:modelValue":t[11]||(t[11]=e=>D.repetitions[D.index].weekend=e),"bottom-slots":"",disable:C.disabledInput,outlined:"","emit-value":"",class:"q-pr-xs","map-options":"",options:D.weekends,label:"Weekend?"},null,8,["error-message","error","modelValue","disable","options"])])),_:1})])),_:1})])]),(0,i._)("div",W,[(0,i._)("div",S,[(0,i.Wm)(B,{class:"q-mt-xs"},{default:(0,i.w5)((()=>[(0,i.Wm)(P,null,{default:(0,i.w5)((()=>[(0,i._)("div",I,[(0,i._)("div",R,[(0,i.Wm)($,{disable:C.disabledInput,color:"primary",label:"Submit",onClick:C.submitRecurringTransaction},null,8,["disable","onClick"])])]),(0,i._)("div",Z,[(0,i._)("div",M,[(0,i.Wm)(j,{disable:C.disabledInput,modelValue:D.doReturnHere,"onUpdate:modelValue":t[12]||(t[12]=e=>D.doReturnHere=e),"left-label":"",label:"Return here to create another one"},null,8,["disable","modelValue"]),U,(0,i.Wm)(j,{modelValue:D.doResetForm,"onUpdate:modelValue":t[13]||(t[13]=e=>D.doResetForm=e),"left-label":"",disable:!D.doReturnHere||C.disabledInput,label:"Reset form after submission"},null,8,["modelValue","disable"])])])])),_:1})])),_:1})])])])),_:1})}var D=s(4352),C=s(1569);class ${post(e,t){let s="/api/v1/recurrences/"+e;return C.api.put(s,t)}}var Q=s(8480),P=s(8898),F=s(3836),H=s(3555);const B={name:"Edit",data(){return{submissionErrors:{},hasSubmissionErrors:{},submitting:!1,loading:!1,doReturnHere:!1,doResetForm:!1,errorMessage:"",index:0,accounts:[],balance_input_mask:"#.##",types:[{value:"withdrawal",label:"Withdrawal"},{value:"deposit",label:"Deposit"},{value:"transfer",label:"Transfer"}],weekends:[{value:1,label:"dont care"},{value:2,label:"skip creation"},{value:3,label:"jump to previous friday"},{value:4,label:"jump to next monday"}],repetition_types:[],id:0,type:"",title:"",first_date:null,nr_of_repetitions:0,repeat_until:"",repetitions:{},transactions:{},store:null}},watch:{first_date:function(){this.recalculateRepetitions()}},computed:{disabledInput:function(){return this.submitting||this.loading}},created(){this.loading=!0,this.store=(0,H.S)(),this.resetErrors(),this.resetForm(),this.getAccounts().then((()=>{this.collectRecurringTransaction().then((()=>{this.loading=!1}))})),this.id=parseInt(this.$route.params.id)},methods:{resetForm:function(){this.transactions=[{description:null,amount:null,foreign_amount:null,currency_id:null,currency_code:null,foreign_currency_id:null,foreign_currency_code:null,budget_id:null,category_id:null,source_id:null,destination_id:null,tags:null,piggy_bank_id:null}],this.repetitions=[{type:"daily",moment:"",skip:null,weekend:1}]},recalculateRepetitions:function(){let e=(0,Q.Z)(this.first_date+"T00:00:00"),t=this.getXth(e);this.repetition_types=[{value:"daily",label:"Every day"},{value:"monthly",label:"Every month on the "+(0,P.Z)(e,"do")+" day"},{value:"ndom",label:"Every month on the "+t+"-th "+(0,P.Z)(e,"EEEE")},{value:"yearly",label:"Every year on "+(0,P.Z)(e,"d MMMM")}]},getXth:function(e){let t=(0,P.Z)(e,"EEEE"),s=new Date(e),i=0;s.setDate(1);const r=new Date(s.getFullYear(),s.getMonth()+1,0).getDate();let o=1;while(s.getDate()<=r&&e.getMonth()===s.getMonth()||o<=32){if(o++,t===(0,P.Z)(s,"EEEE")&&i++,s.getDate()===e.getDate())return i;s.setDate(s.getDate()+1)}return i},collectRecurringTransaction:function(){let e=new D.Z;return e.get(this.id).then((e=>this.parseRecurringTransaction(e)))},parseRecurringTransaction:function(e){let t=e.data.data,s=t.attributes;this.id=parseInt(t.id),this.title=s.title,this.type=s.type,this.first_date=s.first_date.substr(0,10),this.nr_of_repetitions=s.nr_of_repetitions,this.repeat_until=s.repeat_until?s.repeat_until.substr(0,10):null;let i=s.transactions[0];this.transactions[0].description=i.description,this.transactions[0].amount=i.amount,this.transactions[0].source_id=parseInt(i.source_id),this.transactions[0].destination_id=parseInt(i.destination_id);let r=s.repetitions[0];this.repetitions[0].type=r.type,this.repetitions[0].weekend=r.weekend,this.repetitions[0].skip=r.skip},resetErrors:function(){this.submissionErrors={title:"",type:"",first_date:"",nr_of_repetitions:"",repeat_until:"",transactions:[{description:"",amount:"",foreign_amount:"",currency_id:"",currency_code:"",foreign_currency_id:"",foreign_currency_code:"",budget_id:"",category_id:"",source_id:"",destination_id:"",tags:"",piggy_bank_id:""}],repetitions:[{type:"",moment:"",skip:"",weekend:""}]},this.hasSubmissionErrors={title:!1,type:!1,first_date:!1,nr_of_repetitions:!1,repeat_until:!1,transactions:[{description:!1,amount:!1,foreign_amount:!1,currency_id:!1,currency_code:!1,foreign_currency_id:!1,foreign_currency_code:!1,budget_id:!1,category_id:!1,source_id:!1,destination_id:!1,tags:!1,piggy_bank_id:!1}],repetitions:[{type:!1,moment:!1,skip:!1,weekend:!1}]}},submitRecurringTransaction:function(){this.submitting=!0,this.errorMessage="",this.resetErrors();const e=this.buildRecurringTransaction();(new $).post(this.id,e).catch(this.processErrors).then(this.processSuccess)},buildRecurringTransaction:function(){let e={title:this.title,type:this.type,first_date:this.first_date,nr_of_repetitions:this.nr_of_repetitions,repeat_until:this.repeat_until,transactions:this.transactions,repetitions:[]};for(let t in this.repetitions)if(this.repetitions.hasOwnProperty(t)){let s="",i=(0,Q.Z)(this.first_date+"T00:00:00");if("monthly"===this.repetitions[t].type&&(s=i.getDate().toString()),"ndom"===this.repetitions[t].type){let e=this.getXth(i);s=e+","+(0,P.Z)(i,"i")}"yearly"===this.repetitions[t].type&&(s=(0,P.Z)(i,"yyyy-MM-dd")),e.repetitions.push({type:this.repetitions[t].type,moment:s,skip:this.repetitions[t].skip,weekend:this.repetitions[t].weekend})}return e},dismissBanner:function(){this.errorMessage=""},processSuccess:function(e){if(this.store.refreshCacheKey(),!e)return;this.submitting=!1;let t={level:"success",text:"Recurrence is updated",show:!0,action:{show:!0,text:"Go to recurrence",link:{name:"recurring.show",params:{id:parseInt(e.data.data.id)}}}};this.$q.localStorage.set("flash",t),this.doReturnHere&&window.dispatchEvent(new CustomEvent("flash",{detail:{flash:this.$q.localStorage.getItem("flash")}})),this.doReturnHere||this.$router.go(-1)},processErrors:function(e){if(e.response){let t=e.response.data;this.errorMessage=t.message;for(let e in t.errors)t.errors.hasOwnProperty(e)&&(this.submissionErrors[e]=t.errors[e][0],this.hasSubmissionErrors[e]=!0)}this.submitting=!1},getAccounts:function(){return this.getPage(1)},getPage:function(e){return(new F.Z).list("all",e,this.getCacheKey).then((t=>{let s=parseInt(t.data.meta.pagination.total_pages);for(let e in t.data.data)if(t.data.data.hasOwnProperty(e)){let s=t.data.data[e];this.accounts.push({value:parseInt(s.id),label:s.attributes.type+": "+s.attributes.name,decimal_places:parseInt(s.attributes.currency_decimal_places)})}if(e<s)return this.getPage(e+1);e===s&&(this.loading=!1,this.accounts.sort(((e,t)=>e.label>t.label?1:t.label>e.label?-1:0)))}))}}};var j=s(1639),O=s(9885),X=s(7128),A=s(8879),K=s(4458),z=s(3190),G=s(6611),Y=s(7887),J=s(1221),L=s(9984),N=s.n(L);const ee=(0,j.Z)(B,[["render",T]]),te=ee;N()(B,"components",{QPage:O.Z,QBanner:X.Z,QBtn:A.Z,QCard:K.Z,QCardSection:z.Z,QInput:G.Z,QSelect:Y.Z,QCheckbox:J.Z})}}]); |