(self.webpackChunk=self.webpackChunk||[]).push([[111],{232:(e,t,a)=>{"use strict";a.r(t);var n=a(7760),o=a.n(n),i=a(7152),s=a(4605);window.$=window.jQuery=a(9755),window.axios=a(9669),window.axios.defaults.headers.common["X-Requested-With"]="XMLHttpRequest";var r=document.head.querySelector('meta[name="csrf-token"]');r?window.axios.defaults.headers.common["X-CSRF-TOKEN"]=r.content:console.error("CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token");var c=document.head.querySelector('meta[name="locale"]');localStorage.locale=c?c.content:"en_US",a(6891),a(3734),a(7632),a(5432),window.vuei18n=i.Z,window.uiv=s,o().use(vuei18n),o().use(s),window.Vue=o()},9899:(e,t,a)=>{"use strict";a.d(t,{Z:()=>D});var n=a(7760),o=a.n(n),i=a(629),s=a(4478),r=a(3465);const c={namespaced:!0,state:function(){return{transactionType:"any",groupTitle:"",transactions:[],customDateFields:{interest_date:!1,book_date:!1,process_date:!1,due_date:!1,payment_date:!1,invoice_date:!1},defaultTransaction:(0,s.f$)(),defaultErrors:(0,s.kQ)()}},getters:{transactions:function(e){return e.transactions},defaultErrors:function(e){return e.defaultErrors},groupTitle:function(e){return e.groupTitle},transactionType:function(e){return e.transactionType},accountToTransaction:function(e){return e.accountToTransaction},defaultTransaction:function(e){return e.defaultTransaction},sourceAllowedTypes:function(e){return e.sourceAllowedTypes},destinationAllowedTypes:function(e){return e.destinationAllowedTypes},allowedOpposingTypes:function(e){return e.allowedOpposingTypes},customDateFields:function(e){return e.customDateFields}},actions:{},mutations:{addTransaction:function(e){var t=r(e.defaultTransaction);t.errors=r(e.defaultErrors),e.transactions.push(t)},resetErrors:function(e,t){e.transactions[t.index].errors=r(e.defaultErrors)},resetTransactions:function(e){e.transactions=[]},setGroupTitle:function(e,t){e.groupTitle=t.groupTitle},setCustomDateFields:function(e,t){e.customDateFields=t},deleteTransaction:function(e,t){e.transactions.splice(t.index,1),e.transactions.length},setTransactionType:function(e,t){e.transactionType=t},setAllowedOpposingTypes:function(e,t){e.allowedOpposingTypes=t},setAccountToTransaction:function(e,t){e.accountToTransaction=t},updateField:function(e,t){e.transactions[t.index][t.field]=t.value},setTransactionError:function(e,t){e.transactions[t.index].errors[t.field]=t.errors},setDestinationAllowedTypes:function(e,t){e.destinationAllowedTypes=t},setSourceAllowedTypes:function(e,t){e.sourceAllowedTypes=t}}};const l={namespaced:!0,state:function(){return{}},getters:{},actions:{},mutations:{}};var _=a(9119),d=a(3894),u=a(584),p=a(7090),g=a(4431),y=a(8358),m=a(4135),h=a(3703);const b={namespaced:!0,state:function(){return{viewRange:"default",start:null,end:null,defaultStart:null,defaultEnd:null}},getters:{start:function(e){return e.start},end:function(e){return e.end},defaultStart:function(e){return e.defaultStart},defaultEnd:function(e){return e.defaultEnd},viewRange:function(e){return e.viewRange}},actions:{initialiseStore:function(e){console.log("initialiseStore for dashboard."),e.dispatch("restoreViewRange"),axios.get("./api/v1/preferences/viewRange").then((function(t){var a=t.data.data.attributes.data,n=e.getters.viewRange;e.commit("setViewRange",a),a!==n&&e.dispatch("setDatesFromViewRange"),a===n&&e.dispatch("restoreViewRangeDates")})).catch((function(){e.commit("setViewRange","1M"),e.dispatch("setDatesFromViewRange")}))},restoreViewRangeDates:function(e){localStorage.viewRangeStart&&e.commit("setStart",new Date(localStorage.viewRangeStart)),localStorage.viewRangeEnd&&e.commit("setEnd",new Date(localStorage.viewRangeEnd)),localStorage.viewRangeDefaultStart&&e.commit("setDefaultStart",new Date(localStorage.viewRangeDefaultStart)),localStorage.viewRangeDefaultEnd&&e.commit("setDefaultEnd",new Date(localStorage.viewRangeDefaultEnd))},restoreViewRange:function(e){var t=localStorage.getItem("viewRange");null!==t&&e.commit("setViewRange",t)},setDatesFromViewRange:function(e){var t,a,n=e.getters.viewRange,o=new Date;switch(n){case"1D":t=(0,_.Z)(o),a=(0,d.Z)(o);break;case"1W":t=(0,_.Z)((0,u.Z)(o,{weekStartsOn:1})),a=(0,d.Z)((0,p.Z)(o,{weekStartsOn:1}));break;case"1M":t=(0,_.Z)((0,h.Z)(o)),a=(0,d.Z)((0,m.Z)(o));break;case"3M":t=(0,_.Z)((0,g.Z)(o)),a=(0,d.Z)((0,y.Z)(o));break;case"6M":o.getMonth()<=5&&((t=new Date(o)).setMonth(0),t.setDate(1),t=(0,_.Z)(t),(a=new Date(o)).setMonth(5),a.setDate(30),a=(0,d.Z)(t)),o.getMonth()>5&&((t=new Date(o)).setMonth(6),t.setDate(1),t=(0,_.Z)(t),(a=new Date(o)).setMonth(11),a.setDate(31),a=(0,d.Z)(t));break;case"1Y":(t=new Date(o)).setMonth(0),t.setDate(1),t=(0,_.Z)(t),(a=new Date(o)).setMonth(11),a.setDate(31),a=(0,d.Z)(a)}e.commit("setStart",t),e.commit("setEnd",a),e.commit("setDefaultStart",t),e.commit("setDefaultEnd",a)}},mutations:{setStart:function(e,t){e.start=t,window.localStorage.setItem("viewRangeStart",t)},setEnd:function(e,t){e.end=t,window.localStorage.setItem("viewRangeEnd",t)},setDefaultStart:function(e,t){e.defaultStart=t,window.localStorage.setItem("viewRangeDefaultStart",t)},setDefaultEnd:function(e,t){e.defaultEnd=t,window.localStorage.setItem("viewRangeDefaultEnd",t)},setViewRange:function(e,t){e.viewRange=t,window.localStorage.setItem("viewRange",t)}}};var f=function(){return{listPageSize:33,timezone:"",cacheKey:{age:0,value:"empty"}}},v={initialiseStore:function(e){if(console.log("Now in initialize store."),localStorage.cacheKey){console.log("Storage has cache key: "),console.log(localStorage.cacheKey);var t=JSON.parse(localStorage.cacheKey);Date.now()-t.age>864e5?(console.log("Key is here but is old."),e.commit("refreshCacheKey")):(console.log("Cache key from local storage: "+t.value),e.commit("setCacheKey",t))}else console.log("No key need new one."),e.commit("refreshCacheKey");localStorage.listPageSize&&(f.listPageSize=localStorage.listPageSize,e.commit("setListPageSize",{length:localStorage.listPageSize})),localStorage.listPageSize||axios.get("./api/v1/preferences/listPageSize").then((function(t){e.commit("setListPageSize",{length:parseInt(t.data.data.attributes.data)})})),localStorage.timezone&&(f.timezone=localStorage.timezone,e.commit("setTimezone",{timezone:localStorage.timezone})),localStorage.timezone||axios.get("./api/v1/configuration/app.timezone").then((function(t){e.commit("setTimezone",{timezone:t.data.data.value})}))}};const w={namespaced:!0,state:f,getters:{listPageSize:function(e){return e.listPageSize},timezone:function(e){return e.timezone},cacheKey:function(e){return e.cacheKey.value}},actions:v,mutations:{refreshCacheKey:function(e){var t=Date.now(),a=Array(9).join((Math.random().toString(36)+"00000000000000000").slice(2,18)).slice(0,8),n={age:t,value:a};console.log("Store new key in string JSON"),console.log(JSON.stringify(n)),localStorage.cacheKey=JSON.stringify(n),e.cacheKey={age:t,value:a},console.log("Refresh: cachekey is now "+a)},setCacheKey:function(e,t){console.log("Stored cache key in localstorage."),console.log(t),console.log(JSON.stringify(t)),localStorage.cacheKey=JSON.stringify(t),e.cacheKey=t},setListPageSize:function(e,t){var a=parseInt(t.length);0!==a&&(e.listPageSize=a,localStorage.listPageSize=a)},setTimezone:function(e,t){""!==t.timezone&&(e.timezone=t.timezone,localStorage.timezone=t.timezone)}}};const k={namespaced:!0,state:function(){return{orderMode:!1,activeFilter:1}},getters:{orderMode:function(e){return e.orderMode},activeFilter:function(e){return e.activeFilter}},actions:{},mutations:{setOrderMode:function(e,t){e.orderMode=t},setActiveFilter:function(e,t){e.activeFilter=t}}};o().use(i.ZP);const D=new i.ZP.Store({namespaced:!0,modules:{root:w,transactions:{namespaced:!0,modules:{create:c,edit:l}},accounts:{namespaced:!0,modules:{index:k}},dashboard:{namespaced:!0,modules:{index:b}}},strict:false,plugins:[],state:{currencyPreference:{},locale:"en-US",listPageSize:50},mutations:{setCurrencyPreference:function(e,t){e.currencyPreference=t.payload},initialiseStore:function(e){if(console.log("Now in initialiseStore()"),localStorage.locale)e.locale=localStorage.locale;else{var t=document.head.querySelector('meta[name="locale"]');t&&(e.locale=t.content,localStorage.locale=t.content)}}},getters:{currencyCode:function(e){return e.currencyPreference.code},currencyPreference:function(e){return e.currencyPreference},currencyId:function(e){return e.currencyPreference.id},locale:function(e){return e.locale}},actions:{updateCurrencyPreference:function(e){console.log("Now in updateCurrencyPreference"),localStorage.currencyPreference?e.commit("setCurrencyPreference",{payload:JSON.parse(localStorage.currencyPreference)}):axios.get("./api/v1/currencies/default").then((function(t){var a={id:parseInt(t.data.data.id),name:t.data.data.attributes.name,symbol:t.data.data.attributes.symbol,code:t.data.data.attributes.code,decimal_places:parseInt(t.data.data.attributes.decimal_places)};localStorage.currencyPreference=JSON.stringify(a),e.commit("setCurrencyPreference",{payload:a})})).catch((function(t){console.error(t),e.commit("setCurrencyPreference",{payload:{id:1,name:"Euro",symbol:"€",code:"EUR",decimal_places:2}})}))}}})},157:(e,t,a)=>{e.exports=new vuei18n({locale:document.documentElement.lang,fallbackLocale:"en",messages:{bg:a(7154),cs:a(6407),de:a(4726),en:a(3340),"en-us":a(3340),"en-gb":a(6318),es:a(5394),el:a(3636),fr:a(2551),hu:a(995),it:a(9112),nl:a(4671),nb:a(9085),pl:a(6238),fi:a(7868),"pt-br":a(6586),"pt-pt":a(8664),ro:a(1102),ru:a(753),"zh-tw":a(1715),"zh-cn":a(4556),sk:a(7049),sv:a(7921),vi:a(1497)}})},552:(e,t,a)=>{"use strict";var n=a(7760),o=a.n(n),i=a(9899),s=a(7757),r=a.n(s),c=a(629),l=a(7955),_=a(361);function d(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return u(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);"Object"===a&&e.constructor&&(a=e.constructor.name);if("Map"===a||"Set"===a)return Array.from(e);if("Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return u(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=new Array(t);a1&&(a.description=t.attributes.group_title,a.split=!0,a.collapsed=!0===t.collapsed||void 0===t.collapsed,a.amount=t.attributes.transactions.map((function(e){return Number(e.amount)})).reduce((function(e,t){return e+t})),a.source_name="",a.source_id="",a.destination_name="",a.destination_id="",!a.collapsed))for(var n=0;nc?1:0:l(r).localeCompare(l(c),s,i);function l(e){return null==e?"":e instanceof Object?Object.keys(e).sort().map((function(t){return l(e[t])})).join(" "):String(e)}}})};const b=(0,a(1900).Z)(h,(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[e._m(0),e._v(" "),a("div",{staticClass:"row"},[a("div",{staticClass:"col-lg-8 col-md-6 col-sm-12 col-xs-12"},[a("b-pagination",{attrs:{"total-rows":e.total,"per-page":e.perPage,"aria-controls":"my-table"},model:{value:e.currentPage,callback:function(t){e.currentPage=t},expression:"currentPage"}})],1),e._v(" "),a("div",{staticClass:"col-lg-4 col-md-6 col-sm-12 col-xs-12"},[a("button",{staticClass:"btn btn-sm float-right btn-info",on:{click:e.newCacheKey}},[a("span",{staticClass:"fas fa-sync"})])])]),e._v(" "),a("div",{staticClass:"row"},[a("div",{staticClass:"col"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-body p-0"},[a("b-table",{ref:"table",attrs:{id:"my-table",small:"",striped:"",hover:"",responsive:"md","primary-key":"key","no-local-sorting":!1,items:e.transactionRows,fields:e.fields,"per-page":e.perPage,"sort-icon-left":"","current-page":e.currentPage,busy:e.loading,"sort-desc":e.sortDesc,"sort-compare":e.tableSortCompare},on:{"update:busy":function(t){e.loading=t},"update:sortDesc":function(t){e.sortDesc=t},"update:sort-desc":function(t){e.sortDesc=t}},scopedSlots:e._u([{key:"table-busy",fn:function(){return[a("span",{staticClass:"fa fa-spinner"})]},proxy:!0},{key:"cell(type)",fn:function(t){return[t.item.split&&null!==t.item.split_parent?e._e():a("span",["deposit"===t.item.type?a("span",{staticClass:"fas fa-long-arrow-alt-right"}):"withdrawal"===t.item.type?a("span",{staticClass:"fas fa-long-arrow-alt-left"}):"transfer"===t.item.type?a("span",{staticClass:"fas fa-long-arrows-alt-h"}):e._e()])]}},{key:"cell(description)",fn:function(t){return[t.item.split&&null!==t.item.split_parent?a("span",{staticClass:"fas fa-angle-right"}):e._e(),e._v(" "),a("a",{class:!1===t.item.active?"text-muted":"",attrs:{href:"./transactions/show/"+t.item.id,title:t.value}},[e._v(e._s(t.value))])]}},{key:"cell(amount)",fn:function(t){return["deposit"===t.item.type?a("span",{staticClass:"text-success"},[e._v("\n "+e._s(Intl.NumberFormat("en-US",{style:"currency",currency:t.item.currency_code}).format(t.item.amount))+"\n ")]):"withdrawal"===t.item.type?a("span",{staticClass:"text-danger"},[e._v("\n "+e._s(Intl.NumberFormat("en-US",{style:"currency",currency:t.item.currency_code}).format(-t.item.amount))+"\n ")]):"transfer"===t.item.type?a("span",{staticClass:"text-muted"},[e._v("\n "+e._s(Intl.NumberFormat("en-US",{style:"currency",currency:t.item.currency_code}).format(t.item.amount))+"\n ")]):e._e()]}},{key:"cell(date)",fn:function(t){return[e._v("\n "+e._s(t.item.date_formatted)+"\n ")]}},{key:"cell(source_account)",fn:function(t){return[a("a",{class:!1===t.item.active?"text-muted":"",attrs:{href:"./accounts/show/"+t.item.source_id,title:t.item.source_name}},[e._v(e._s(t.item.source_name))])]}},{key:"cell(destination_account)",fn:function(t){return[a("a",{class:!1===t.item.active?"text-muted":"",attrs:{href:"./accounts/show/"+t.item.destination_id,title:t.item.destination_name}},[e._v(e._s(t.item.destination_name))])]}},{key:"cell(menu)",fn:function(t){return[t.item.split&&null!==t.item.split_parent?e._e():a("div",{staticClass:"btn-group btn-group-sm"},[a("div",{staticClass:"dropdown"},[a("button",{staticClass:"btn btn-light btn-sm dropdown-toggle",attrs:{type:"button",id:"dropdownMenuButton"+t.item.id,"data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"}},[e._v("\n "+e._s(e.$t("firefly.actions"))+"\n ")]),e._v(" "),a("div",{staticClass:"dropdown-menu",attrs:{"aria-labelledby":"dropdownMenuButton"+t.item.id}},[a("a",{staticClass:"dropdown-item",attrs:{href:"./transactions/edit/"+t.item.id}},[a("span",{staticClass:"fa fas fa-pencil-alt"}),e._v(" "+e._s(e.$t("firefly.edit")))]),e._v(" "),a("a",{staticClass:"dropdown-item",attrs:{href:"./transactions/delete/"+t.item.id}},[a("span",{staticClass:"fa far fa-trash"}),e._v(" "+e._s(e.$t("firefly.delete")))])])])]),e._v(" "),t.item.split&&null===t.item.split_parent&&!0===t.item.collapsed?a("div",{staticClass:"btn btn-light btn-sm",on:{click:function(a){return e.toggleCollapse(t.item)}}},[a("span",{staticClass:"fa fa-caret-down"}),e._v("\n "+e._s(e.$t("firefly.transaction_expand_split"))+"\n ")]):t.item.split&&null===t.item.split_parent&&!1===t.item.collapsed?a("div",{staticClass:"btn btn-light btn-sm",on:{click:function(a){return e.toggleCollapse(t.item)}}},[a("span",{staticClass:"fa fa-caret-up"}),e._v("\n "+e._s(e.$t("firefly.transaction_collapse_split"))+"\n ")]):e._e()]}},{key:"cell(category)",fn:function(t){return[e._v("\n "+e._s(t.item.category_name)+"\n ")]}}])})],1),e._v(" "),a("div",{staticClass:"card-footer"},[a("a",{staticClass:"btn btn-success",attrs:{href:"./transactions/create/"+e.type,title:e.$t("firefly.create_new_transaction")}},[e._v(e._s(e.$t("firefly.create_new_transaction")))])])])])]),e._v(" "),a("div",{staticClass:"row"},[a("div",{staticClass:"col-lg-8 col-md-6 col-sm-12 col-xs-12"},[a("b-pagination",{attrs:{"total-rows":e.total,"per-page":e.perPage,"aria-controls":"my-table"},model:{value:e.currentPage,callback:function(t){e.currentPage=t},expression:"currentPage"}})],1),e._v(" "),a("div",{staticClass:"col-lg-4 col-md-6 col-sm-12 col-xs-12"},[a("button",{staticClass:"btn btn-sm float-right btn-info",on:{click:e.newCacheKey}},[a("span",{staticClass:"fas fa-sync"})])])]),e._v(" "),e._m(1)])}),[function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"row"},[a("div",{staticClass:"col"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-body"},[e._v("\n Treemap categories?\n ")])])]),e._v(" "),a("div",{staticClass:"col"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-body"},[e._v("\n Treemap accounts?\n ")])])])])},function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"row"},[a("div",{staticClass:"col-xl-2 col-lg-4 col-sm-6 col-xs-12"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-header"},[a("h3",{staticClass:"card-title"},[e._v("I am title")])]),e._v(" "),a("div",{staticClass:"card-body"},[e._v("\n Box previous periods\n ")])])])])}],!1,null,null,null).exports;var f=a(459),v=a(9559),w=a(3938);a(232);var k=a(157),D={};o().component("b-table",f.h),o().component("b-pagination",v.c),new(o())({i18n:k,store:i.Z,render:function(e){return e(b,{props:D})},beforeCreate:function(){this.$store.commit("initialiseStore"),this.$store.dispatch("updateCurrencyPreference"),this.$store.dispatch("root/initialiseStore"),this.$store.dispatch("dashboard/index/initialiseStore")}}).$mount("#transactions_index"),new(o())({i18n:k,store:i.Z,el:"#calendar",render:function(e){return e(w.Z,{props:D})}})},361:(e,t,a)=>{"use strict";a.d(t,{y:()=>u});var n=a(7757),o=a.n(n),i=a(9483),s=a.n(i),r=a(881),c=a.n(r),l=a(5974);function _(e,t,a,n,o,i,s){try{var r=e[i](s),c=r.value}catch(e){return void a(e)}r.done?t(c):Promise.resolve(c).then(n,o)}function d(e){return function(){var t=this,a=arguments;return new Promise((function(n,o){var i=e.apply(t,a);function s(e){_(i,n,o,s,r,"next",e)}function r(e){_(i,n,o,s,r,"throw",e)}s(void 0)}))}}function u(){return p.apply(this,arguments)}function p(){return(p=d(o().mark((function e(){var t,a;return o().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s().defineDriver(c());case 2:return t=s().createInstance({driver:[s().INDEXEDDB,s().LOCALSTORAGE,c()._driver],name:"my-cache"}),a=document.head.querySelector('meta[name="csrf-token"]'),e.abrupt("return",(0,l.setup)({baseURL:"./",headers:{"X-CSRF-TOKEN":a.content,"X-James-Rocks":"oh yes"},cache:{maxAge:864e5,readHeaders:!1,exclude:{query:!1},debug:!0,store:t}}));case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}},4478:(e,t,a)=>{"use strict";function n(){return{description:[],amount:[],source:[],destination:[],currency:[],foreign_currency:[],foreign_amount:[],date:[],custom_dates:[],budget:[],category:[],bill:[],tags:[],piggy_bank:[],internal_reference:[],external_url:[],notes:[],location:[]}}function o(){return{description:"",transaction_journal_id:0,source_account_id:null,source_account_name:null,source_account_type:null,source_account_currency_id:null,source_account_currency_code:null,source_account_currency_symbol:null,destination_account_id:null,destination_account_name:null,destination_account_type:null,destination_account_currency_id:null,destination_account_currency_code:null,destination_account_currency_symbol:null,attachments:!1,selectedAttachments:!1,uploadTrigger:!1,clearTrigger:!1,source_account:{id:0,name:"",name_with_balance:"",type:"",currency_id:0,currency_name:"",currency_code:"",currency_decimal_places:2},destination_account:{id:0,name:"",type:"",currency_id:0,currency_name:"",currency_code:"",currency_decimal_places:2},amount:"",currency_id:0,foreign_amount:"",foreign_currency_id:0,category:null,budget_id:0,bill_id:0,piggy_bank_id:0,tags:[],interest_date:null,book_date:null,process_date:null,due_date:null,payment_date:null,invoice_date:null,internal_reference:null,external_url:null,external_id:null,notes:null,links:[],zoom_level:null,longitude:null,latitude:null,errors:{}}}a.d(t,{kQ:()=>n,f$:()=>o})},444:(e,t,a)=>{"use strict";a.d(t,{Z:()=>r});var n=a(4015),o=a.n(n),i=a(3645),s=a.n(i)()(o());s.push([e.id,".dropdown-item[data-v-0f404e99],.dropdown-item[data-v-0f404e99]:hover{color:#212529}","",{version:3,sources:["webpack://./src/components/dashboard/Calendar.vue"],names:[],mappings:"AAslBA,sEACA,aACA",sourcesContent:["\x3c!--\n - Calendar.vue\n - Copyright (c) 2020 james@firefly-iii.org\n -\n - This file is part of Firefly III (https://github.com/firefly-iii).\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see .\n --\x3e\n\n\n\n