diff --git a/index.html b/index.html index a077c17b..18686826 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -Dashy
\ No newline at end of file +Dashy
\ No newline at end of file diff --git a/js/about.d1c21b1f.js b/js/about.9d5011cf.js similarity index 99% rename from js/about.d1c21b1f.js rename to js/about.9d5011cf.js index 2ce96b9e..f59b20b0 100644 --- a/js/about.d1c21b1f.js +++ b/js/about.9d5011cf.js @@ -1,2 +1,2 @@ (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["about"],{1792:function(t,e,i){"use strict";i.d(e,"a",(function(){return s})),i.d(e,"b",(function(){return o}));var s=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},o=[function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("article",{staticClass:"about"},[i("h1",[t._v("About Dashy")]),i("section",[i("h2",[t._v("Project Overview")]),i("p",[t._v(" Dashy is a self-hosted startpage for keeping your running applications and services organised. The aim of Dashy is to provide an easy-to-deploy, highly customizable and functianl dashboard, in order to improvde productivity and enable easy organisation of running services or web links. ")])]),i("section",[i("h2",[t._v("Source")]),i("p",[t._v(" Dashy's source is available through "),i("a",{attrs:{href:"https://github.com/lissy93/dashy"}},[t._v("GitHub")]),t._v(", and the Docker image is on "),i("a",{attrs:{href:"https://hub.docker.com/r/lissy93/dashy"}},[t._v("DockerHub")]),t._v(". ")])]),i("section",[i("h2",[t._v("Reporting a Bug")]),i("p",[t._v(" If you've come across an bug in Dashy, please "),i("a",{attrs:{href:"https://git.io/JnqPR"}},[t._v("open an issue")]),t._v(", so that it can be fixed. ")])]),i("section",[i("h2",[t._v("Getting Support")]),i("p",[t._v(" If you need any help deploying, using, or developing Dashy, feel free to "),i("a",{attrs:{href:"https://git.io/JnqiA"}},[t._v("open a support ticket")]),t._v(" or start a "),i("a",{attrs:{href:"https://github.com/Lissy93/dashy/discussions"}},[t._v("discussion")]),t._v(" on GitHub. ")])]),i("section",[i("h2",[t._v("About the Author")]),i("a",{attrs:{href:"https://aliciasykes.com"}},[i("img",{staticClass:"aht-pic",attrs:{src:"https://i.ibb.co/FnxqTfx/aht-bot-round.png",alt:"Alicia Sykes"}})]),t._v(" Dashy is developed an maintained by "),i("a",{attrs:{href:"https://aliciasykes.com"}},[t._v("Alicia Sykes")]),t._v(" ("),i("a",{attrs:{href:"https://github.com/lissy93"}},[t._v("@Lissy93")]),t._v("), with support from the community. "),i("ul",[i("li",[i("b",[t._v("PGP Key")]),t._v(" - "),i("a",{attrs:{href:"https://keybase.io/aliciasykes/pgp_keys.asc?fingerprint=0688f8d34587d954e9e51fb8fedb68f55c0283a7"}},[i("code",[t._v("0688 F8D3 4587 D954 E9E5 1FB8 FEDB 68F5 5C02 83A7")])])]),i("li",[i("b",[t._v("BTC Address")]),t._v(" - "),i("code",[t._v("3853bSxupMjvxEYfwGDGAaLZhTKxB2vEVC")])]),i("li",[i("b",[t._v("Mail")]),t._v(" - "),i("code",[t._v("alicia at omg dot lol")])]),i("li",[i("b",[t._v("Blog")]),t._v(" - "),i("a",{attrs:{href:"https://notes.aliciasykes.com"}},[t._v("notes.aliciasykes.com")])])])]),i("section",{staticClass:"license"},[i("h2",[t._v("License")]),i("code",[t._v(" Copyright © 2021 Alicia Sykes (https://aliciasykes.com) ")]),i("br"),i("br"),i("code",[t._v(" Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: ")]),i("br"),i("br"),i("code",[t._v(" The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. ")]),i("br"),i("br"),i("code",[t._v(" THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWAREOR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ")])])])}]},"35a2":function(t,e,i){},4869:function(t,e,i){"use strict";i("35a2")},5679:function(t,e){document.getElementsByTagName("html")[0].setAttribute("data-theme","callisto")},6109:function(t,e,i){"use strict";i.r(e);var s=i("5679"),o=i.n(s);for(var a in s)["default"].indexOf(a)<0&&function(t){i.d(e,t,(function(){return s[t]}))}(a);e["default"]=o.a},f820:function(t,e,i){"use strict";i.r(e);var s=i("1792"),o=i("6109");for(var a in o)["default"].indexOf(a)<0&&function(t){i.d(e,t,(function(){return o[t]}))}(a);i("4869");var n=i("2877"),r=Object(n["a"])(o["default"],s["a"],s["b"],!1,null,"502c8927",null);e["default"]=r.exports}}]); -//# sourceMappingURL=about.d1c21b1f.js.map \ No newline at end of file +//# sourceMappingURL=about.9d5011cf.js.map \ No newline at end of file diff --git a/js/about.d1c21b1f.js.map b/js/about.9d5011cf.js.map similarity index 99% rename from js/about.d1c21b1f.js.map rename to js/about.9d5011cf.js.map index 9d0785c2..205ba688 100644 --- a/js/about.d1c21b1f.js.map +++ b/js/about.9d5011cf.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///./src/views/About.vue?c0c9","webpack:///./src/views/About.vue?ac07","webpack:///src/views/About.vue","webpack:///./src/views/About.vue?060c","webpack:///./src/views/About.vue"],"names":["render","_vm","this","_h","$createElement","_self","_c","_m","staticRenderFns","staticClass","_v","attrs","document","getElementsByTagName","setAttribute","component"],"mappings":"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","file":"js/about.d1c21b1f.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('article',{staticClass:\"about\"},[_c('h1',[_vm._v(\"About Dashy\")]),_c('section',[_c('h2',[_vm._v(\"Project Overview\")]),_c('p',[_vm._v(\" Dashy is a self-hosted startpage for keeping your running applications and services organised. The aim of Dashy is to provide an easy-to-deploy, highly customizable and functianl dashboard, in order to improvde productivity and enable easy organisation of running services or web links. \")])]),_c('section',[_c('h2',[_vm._v(\"Source\")]),_c('p',[_vm._v(\" Dashy's source is available through \"),_c('a',{attrs:{\"href\":\"https://github.com/lissy93/dashy\"}},[_vm._v(\"GitHub\")]),_vm._v(\", and the Docker image is on \"),_c('a',{attrs:{\"href\":\"https://hub.docker.com/r/lissy93/dashy\"}},[_vm._v(\"DockerHub\")]),_vm._v(\". \")])]),_c('section',[_c('h2',[_vm._v(\"Reporting a Bug\")]),_c('p',[_vm._v(\" If you've come across an bug in Dashy, please \"),_c('a',{attrs:{\"href\":\"https://git.io/JnqPR\"}},[_vm._v(\"open an issue\")]),_vm._v(\", so that it can be fixed. \")])]),_c('section',[_c('h2',[_vm._v(\"Getting Support\")]),_c('p',[_vm._v(\" If you need any help deploying, using, or developing Dashy, feel free to \"),_c('a',{attrs:{\"href\":\"https://git.io/JnqiA\"}},[_vm._v(\"open a support ticket\")]),_vm._v(\" or start a \"),_c('a',{attrs:{\"href\":\"https://github.com/Lissy93/dashy/discussions\"}},[_vm._v(\"discussion\")]),_vm._v(\" on GitHub. \")])]),_c('section',[_c('h2',[_vm._v(\"About the Author\")]),_c('a',{attrs:{\"href\":\"https://aliciasykes.com\"}},[_c('img',{staticClass:\"aht-pic\",attrs:{\"src\":\"https://i.ibb.co/FnxqTfx/aht-bot-round.png\",\"alt\":\"Alicia Sykes\"}})]),_vm._v(\" Dashy is developed an maintained by \"),_c('a',{attrs:{\"href\":\"https://aliciasykes.com\"}},[_vm._v(\"Alicia Sykes\")]),_vm._v(\" (\"),_c('a',{attrs:{\"href\":\"https://github.com/lissy93\"}},[_vm._v(\"@Lissy93\")]),_vm._v(\"), with support from the community. \"),_c('ul',[_c('li',[_c('b',[_vm._v(\"PGP Key\")]),_vm._v(\" - \"),_c('a',{attrs:{\"href\":\"https://keybase.io/aliciasykes/pgp_keys.asc?fingerprint=0688f8d34587d954e9e51fb8fedb68f55c0283a7\"}},[_c('code',[_vm._v(\"0688 F8D3 4587 D954 E9E5 1FB8 FEDB 68F5 5C02 83A7\")])])]),_c('li',[_c('b',[_vm._v(\"BTC Address\")]),_vm._v(\" - \"),_c('code',[_vm._v(\"3853bSxupMjvxEYfwGDGAaLZhTKxB2vEVC\")])]),_c('li',[_c('b',[_vm._v(\"Mail\")]),_vm._v(\" - \"),_c('code',[_vm._v(\"alicia at omg dot lol\")])]),_c('li',[_c('b',[_vm._v(\"Blog\")]),_vm._v(\" - \"),_c('a',{attrs:{\"href\":\"https://notes.aliciasykes.com\"}},[_vm._v(\"notes.aliciasykes.com\")])])])]),_c('section',{staticClass:\"license\"},[_c('h2',[_vm._v(\"License\")]),_c('code',[_vm._v(\" Copyright © 2021 Alicia Sykes (https://aliciasykes.com) \")]),_c('br'),_c('br'),_c('code',[_vm._v(\" Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: \")]),_c('br'),_c('br'),_c('code',[_vm._v(\" The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. \")]),_c('br'),_c('br'),_c('code',[_vm._v(\" THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWAREOR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \")])])])}]\n\nexport { render, staticRenderFns }","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./About.vue?vue&type=style&index=0&id=502c8927&scoped=true&lang=scss&\"","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./About.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./About.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./About.vue?vue&type=template&id=502c8927&scoped=true&\"\nimport script from \"./About.vue?vue&type=script&lang=js&\"\nexport * from \"./About.vue?vue&type=script&lang=js&\"\nimport style0 from \"./About.vue?vue&type=style&index=0&id=502c8927&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"502c8927\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///./src/views/About.vue?b1b6","webpack:///./src/views/About.vue?ac07","webpack:///src/views/About.vue","webpack:///./src/views/About.vue?060c","webpack:///./src/views/About.vue"],"names":["render","_vm","this","_h","$createElement","_self","_c","_m","staticRenderFns","staticClass","_v","attrs","document","getElementsByTagName","setAttribute","component"],"mappings":"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","file":"js/about.9d5011cf.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('article',{staticClass:\"about\"},[_c('h1',[_vm._v(\"About Dashy\")]),_c('section',[_c('h2',[_vm._v(\"Project Overview\")]),_c('p',[_vm._v(\" Dashy is a self-hosted startpage for keeping your running applications and services organised. The aim of Dashy is to provide an easy-to-deploy, highly customizable and functianl dashboard, in order to improvde productivity and enable easy organisation of running services or web links. \")])]),_c('section',[_c('h2',[_vm._v(\"Source\")]),_c('p',[_vm._v(\" Dashy's source is available through \"),_c('a',{attrs:{\"href\":\"https://github.com/lissy93/dashy\"}},[_vm._v(\"GitHub\")]),_vm._v(\", and the Docker image is on \"),_c('a',{attrs:{\"href\":\"https://hub.docker.com/r/lissy93/dashy\"}},[_vm._v(\"DockerHub\")]),_vm._v(\". \")])]),_c('section',[_c('h2',[_vm._v(\"Reporting a Bug\")]),_c('p',[_vm._v(\" If you've come across an bug in Dashy, please \"),_c('a',{attrs:{\"href\":\"https://git.io/JnqPR\"}},[_vm._v(\"open an issue\")]),_vm._v(\", so that it can be fixed. \")])]),_c('section',[_c('h2',[_vm._v(\"Getting Support\")]),_c('p',[_vm._v(\" If you need any help deploying, using, or developing Dashy, feel free to \"),_c('a',{attrs:{\"href\":\"https://git.io/JnqiA\"}},[_vm._v(\"open a support ticket\")]),_vm._v(\" or start a \"),_c('a',{attrs:{\"href\":\"https://github.com/Lissy93/dashy/discussions\"}},[_vm._v(\"discussion\")]),_vm._v(\" on GitHub. \")])]),_c('section',[_c('h2',[_vm._v(\"About the Author\")]),_c('a',{attrs:{\"href\":\"https://aliciasykes.com\"}},[_c('img',{staticClass:\"aht-pic\",attrs:{\"src\":\"https://i.ibb.co/FnxqTfx/aht-bot-round.png\",\"alt\":\"Alicia Sykes\"}})]),_vm._v(\" Dashy is developed an maintained by \"),_c('a',{attrs:{\"href\":\"https://aliciasykes.com\"}},[_vm._v(\"Alicia Sykes\")]),_vm._v(\" (\"),_c('a',{attrs:{\"href\":\"https://github.com/lissy93\"}},[_vm._v(\"@Lissy93\")]),_vm._v(\"), with support from the community. \"),_c('ul',[_c('li',[_c('b',[_vm._v(\"PGP Key\")]),_vm._v(\" - \"),_c('a',{attrs:{\"href\":\"https://keybase.io/aliciasykes/pgp_keys.asc?fingerprint=0688f8d34587d954e9e51fb8fedb68f55c0283a7\"}},[_c('code',[_vm._v(\"0688 F8D3 4587 D954 E9E5 1FB8 FEDB 68F5 5C02 83A7\")])])]),_c('li',[_c('b',[_vm._v(\"BTC Address\")]),_vm._v(\" - \"),_c('code',[_vm._v(\"3853bSxupMjvxEYfwGDGAaLZhTKxB2vEVC\")])]),_c('li',[_c('b',[_vm._v(\"Mail\")]),_vm._v(\" - \"),_c('code',[_vm._v(\"alicia at omg dot lol\")])]),_c('li',[_c('b',[_vm._v(\"Blog\")]),_vm._v(\" - \"),_c('a',{attrs:{\"href\":\"https://notes.aliciasykes.com\"}},[_vm._v(\"notes.aliciasykes.com\")])])])]),_c('section',{staticClass:\"license\"},[_c('h2',[_vm._v(\"License\")]),_c('code',[_vm._v(\" Copyright © 2021 Alicia Sykes (https://aliciasykes.com) \")]),_c('br'),_c('br'),_c('code',[_vm._v(\" Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: \")]),_c('br'),_c('br'),_c('code',[_vm._v(\" The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. \")]),_c('br'),_c('br'),_c('code',[_vm._v(\" THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWAREOR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \")])])])}]\n\nexport { render, staticRenderFns }","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./About.vue?vue&type=style&index=0&id=502c8927&scoped=true&lang=scss&\"","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./About.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./About.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./About.vue?vue&type=template&id=502c8927&scoped=true&\"\nimport script from \"./About.vue?vue&type=script&lang=js&\"\nexport * from \"./About.vue?vue&type=script&lang=js&\"\nimport style0 from \"./About.vue?vue&type=style&index=0&id=502c8927&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"502c8927\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""} \ No newline at end of file diff --git a/js/dashy.6bba1668.js b/js/dashy.4288c606.js similarity index 99% rename from js/dashy.6bba1668.js rename to js/dashy.4288c606.js index a8435bc8..c41958d7 100644 --- a/js/dashy.6bba1668.js +++ b/js/dashy.4288c606.js @@ -1,2 +1,2 @@ -(function(e){function t(t){for(var n,s,r=t[0],l=t[1],c=t[2],u=0,d=[];unew RegExp(/(http|https):\/\/(\S+)(:[0-9]+)?/).test(e)}},T=x,O=(a("d16d"),Object(v["a"])(T,S,I,!1,null,"68c1bd5c",null)),E=O.exports,A=a("5cc6"),$=a.n(A),L={name:"Header",inject:["visibleComponents"],components:{PageTitle:C,Nav:E},props:{pageInfo:Object},data(){return{titleVisible:(this.visibleComponents||A["visibleComponents"]).pageTitle,navVisible:(this.visibleComponents||A["visibleComponents"]).navigation}}},z=L,j=(a("6ea3"),Object(v["a"])(z,h,p,!1,null,"73a6fa67",null)),N=j.exports,M=function(){var e=this,t=e.$createElement,a=e._self._c||t;return e.text&&""!==e.text?a("footer",{domProps:{innerHTML:e._s(e.text)}}):a("footer",[e._v(" Developed by "),a("a",{attrs:{href:e.authorUrl}},[e._v(e._s(e.authorName))]),e._v(". Licensed under "),a("a",{attrs:{href:e.licenseUrl}},[e._v(e._s(e.license))]),e._v(" "+e._s(e.showCopyright?"©":"")+" "+e._s(e.date)+". Get the "),a("a",{attrs:{href:e.repoUrl}},[e._v("Source Code")]),e._v(". ")])},B=[],V={name:"Footer",props:{text:String,authorName:{type:String,default:"Alicia Sykes"},authorUrl:{type:String,default:"https://aliciasykes.com"},license:{type:String,default:"MIT"},licenseUrl:{type:String,default:"https://gist.github.com/Lissy93/143d2ee01ccc5c052a17"},date:{type:String,default:""+(new Date).getFullYear()},showCopyright:{type:Boolean,default:!0},repoUrl:{type:String,default:"https://github.com/lissy93/dashy"}}},D=V,H=(a("ed9b"),Object(v["a"])(D,M,B,!1,null,"64591bd5",null)),P=H.exports,U=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("transition",{attrs:{name:"slide-fade"}},[e.isLoading?a("div",{class:e.c,attrs:{id:"loading"},on:{click:function(t){e.c="hide"}}},[a("h2",[e._v("Dashy")]),a("div",{staticClass:"inner-container"},[a("p",[e._v("Loading")]),a("span",{staticClass:"dots-cont"},[a("span",{staticClass:"dot dot-1"}),a("span",{staticClass:"dot dot-2"}),a("span",{staticClass:"dot dot-3"}),a("span",{staticClass:"dot dot-4"})])])]):e._e()])},R=[],K={name:"LoadingScreen",props:{isLoading:{type:Boolean,default:!1}},data:()=>({c:""})},F=K,W=(a("2bb3"),Object(v["a"])(F,U,R,!1,null,"a7bc1de6",null)),q=W.exports,G=a("8b8e"),J=a.n(G);class Y{constructor(){this.conf=J.a}appConfig(){let e={};this.conf&&(e=this.conf.appConfig||{});let t=A["appConfig"];return localStorage[A["localStorageKeys"].APP_CONFIG]?t=JSON.parse(localStorage[A["localStorageKeys"].APP_CONFIG]):e!=={}&&(t=e),t.layout=localStorage[A["localStorageKeys"].LAYOUT_ORIENTATION]||e.layout||A["layout"],t.iconSize=localStorage[A["localStorageKeys"].ICON_SIZE]||e.iconSize||A["iconSize"],t.language=localStorage[A["localStorageKeys"].LANGUAGE]||e.language||A["language"],t}pageInfo(){const e=A["pageInfo"];let t;try{t=JSON.parse(localStorage[A["localStorageKeys"].PAGE_INFO])}catch(s){t={}}let a={};this.conf&&(a=this.conf.pageInfo||{});const n=a||e;return n.title=t.title||a.title||e.title,n.logo=t.logo||a.logo||e.logo,n.description=t.description||a.description||e.description,n.navLinks=t.navLinks||a.navLinks||e.navLinks,n.footerText=t.footerText||a.footerText||e.footerText,n}sections(){const e=localStorage[A["localStorageKeys"].CONF_SECTIONS];if(e)try{const t=JSON.parse(e);if(t.length>=1)return t}catch(a){}let t=[];return this.conf&&(t=this.conf.sections||[]),t}config(){return{appConfig:this.appConfig(),pageInfo:this.pageInfo(),sections:this.sections()}}}var X=a("0e40"),Z=a("cb40"),Q=a("3b11");const ee=[{name:"English",code:"en",locale:X,flag:"🇬🇧"},{name:"German",code:"de",locale:Z,flag:"🇩🇪"},{name:"Dutch",code:"nl",locale:Q,flag:"🇳🇱"}],te={};ee.forEach(e=>{te[e.code]=e.locale});const ae=te,ne=(()=>{const e=new Y;return e.config()})(),se=e=>{const t=e.hideComponents||{},a=e=>"boolean"===typeof e;return{pageTitle:a(t.hideHeading)?!t.hideHeading:A["visibleComponents"].pageTitle,navigation:a(t.hideNav)?!t.hideNav:A["visibleComponents"].navigation,searchBar:a(t.hideSearch)?!t.hideSearch:A["visibleComponents"].searchBar,settings:a(t.hideSettings)?!t.hideSettings:A["visibleComponents"].settings,footer:a(t.hideFooter)?!t.hideFooter:A["visibleComponents"].footer,splashScreen:a(t.hideSplashScreen)?!t.hideSplashScreen:A["visibleComponents"].splashScreen}},oe=()=>{const e=localStorage[A["localStorageKeys"].THEME],t=ne.appConfig.theme;return e||t||A["theme"]},ie=()=>{const e=JSON.parse(localStorage[A["localStorageKeys"].CUSTOM_COLORS]||"{}"),t=ne.appConfig.customColors||{};return Object.assign(t,e)},re=()=>{const e=[],t=ne.sections||[];return t.forEach(t=>{const a=t.items.filter(e=>e.hotkey);e.push(a.map(e=>({hotkey:e.hotkey,url:e.url})))}),e.flat()},le=()=>{const e=localStorage[A["localStorageKeys"].LANGUAGE]||ne.appConfig.language||A["language"],t=ee.find(t=>t.code===e);return t},ce=()=>{const e="V1.5.3";console.log(`%cDashy ${e} 🚀`,"color:#00af87; background:#0b1021; font-size:36px; padding: 0.5rem 0.5rem 0; margin: 1rem auto; font-family: Rockwell; border: 2px solid #00af87; border-radius: 4px;font-weight: bold; text-shadow: 1px 1px 1px #00af87bf;")},ue=()=>{console.log("%c⚠️ Error ⚠️","background:#21bbca; color:#0b1021; font-size:20px; padding:0.25rem 0.5rem; margin: 1rem auto 0.25rem; font-family: 'Trebuchet MS', Helvetica; border: 2px solid yellow; border-radius: 4px; font-weight: bold;")},de=()=>{console.log("%c🐛If you have found a bug, raise an issue on GitHub, at:\nhttps://git.io/JnqPR","color:#dddd10; font-size: 14px; font-family: 'Trebuchet MS', Helvetica;")},_e=new Y,me=_e.config(),ge=se(me.appConfig)||A["visibleComponents"];var he={name:"app",components:{Header:N,Footer:P,LoadingScreen:q},provide:{config:me,visibleComponents:ge},data(){return{isLoading:!0,showFooter:ge.footer,appConfig:_e.appConfig(),pageInfo:_e.pageInfo(),visibleComponents:ge}},methods:{getFooterText(){return this.pageInfo&&this.pageInfo.footerText?this.pageInfo.footerText:""},injectCustomStyles(e){const t=document.createElement("style");t.textContent=e,document.head.append(t)},shouldShowSplash(){return(this.visibleComponents||A["visibleComponents"]).splashScreen||!localStorage[A["localStorageKeys"].HIDE_WELCOME_BANNER]},hideSplash(){this.shouldShowSplash()?setTimeout(()=>{this.isLoading=!1},A["splashScreenTime"]||1500):this.isLoading=!1},applyLanguage(){let e=A["language"];const t=this.$i18n.availableLocales,a=localStorage[A["localStorageKeys"].LANGUAGE]||this.appConfig.language;if(a&&t.includes(a))e=a;else{const a=window.navigator.language||"",n=a.split("-")[0];t.includes(a)?e=a:t.includes(n)&&(e=n)}this.$i18n.locale=e,document.getElementsByTagName("html")[0].setAttribute("lang",e)}},mounted(){if(this.applyLanguage(),this.hideSplash(),this.appConfig.customCss){const e=this.appConfig.customCss.replace(/<\/?[^>]+(>|$)/g,"");this.injectCustomStyles(e)}ce()}},pe=he,fe=(a("5c0b"),Object(v["a"])(pe,m,g,!1,null,null,null)),be=fe.exports,ke=a("8c4f"),we=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"home",style:e.getBackgroundImage()},[a("SettingsContainer",{ref:"filterComp",staticClass:"settings-outer",attrs:{displayLayout:e.layout,iconSize:e.itemSizeBound,externalThemes:e.getExternalCSSLinks(),sections:e.getSections(e.sections),appConfig:e.appConfig,pageInfo:e.pageInfo,modalOpen:e.modalOpen},on:{"user-is-searchin":e.searching,"change-display-layout":e.setLayoutOrientation,"change-icon-size":e.setItemSize,"change-modal-visibility":e.updateModalVisibility}}),e.checkTheresData(e.sections)?a("div",{class:"item-group-container orientation-"+e.layout+" item-size-"+e.itemSizeBound},e._l(e.getSections(e.sections),(function(t,n){return a("ItemGroup",{key:n,class:0===e.filterTiles(t.items).length&&e.searchValue?"no-results":"",attrs:{title:t.name,icon:t.icon||void 0,displayData:e.getDisplayData(t),groupId:"section-"+n,items:e.filterTiles(t.items),itemSize:e.itemSizeBound},on:{itemClicked:function(t){return e.finishedSearching()},"change-modal-visibility":e.updateModalVisibility}})})),1):e._e(),e.checkIfResults()?a("div",{staticClass:"no-data"},[e._v(" "+e._s(e.searchValue?e.$t("home.no-results"):e.$t("home.no-data"))+" ")]):e._e()],1)},ve=[],ye=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("section",[e.searchVisible?a("SearchBar",{ref:"SearchBar",attrs:{active:!e.modalOpen},on:{"user-is-searchin":e.userIsTypingSomething}}):e._e(),a("div",{staticClass:"options-outer"},[a("div",{class:"options-container "+(e.settingsVisible?"":"hide")},[a("ThemeSelector",{attrs:{externalThemes:e.externalThemes,confTheme:e.getInitialTheme(),userThemes:e.getUserThemes()},on:{modalChanged:e.modalChanged}}),a("LayoutSelector",{attrs:{displayLayout:e.displayLayout},on:{layoutUpdated:e.updateDisplayLayout}}),a("ItemSizeSelector",{attrs:{iconSize:e.iconSize},on:{iconSizeUpdated:e.updateIconSize}}),a("ConfigLauncher",{attrs:{sections:e.sections,pageInfo:e.pageInfo,appConfig:e.appConfig},on:{modalChanged:e.modalChanged}}),e.isUserLoggedIn()?a("AppButtons"):e._e()],1),a("div",{class:"show-hide-container "+(e.settingsVisible?"hide-btn":"show-btn")},[a("button",{directives:[{name:"tooltip",rawName:"v-tooltip",value:(e.settingsVisible?"Hide":"Open")+" Settings Menu",expression:"`${settingsVisible? 'Hide' : 'Open'} Settings Menu`"}],attrs:{tabindex:"-2"},on:{click:function(t){return e.toggleSettingsVisibility()}}},[e.settingsVisible?a("IconClose"):a("IconOpen")],1)])]),a("KeyboardShortcutInfo"),a("AppInfoModal")],1)},Ce=[],Se=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("form",[a("label",{attrs:{for:"filter-tiles"}},[e._v(e._s(e.$t("search.search-label")))]),a("input",{directives:[{name:"model",rawName:"v-model",value:e.input,expression:"input"}],ref:"filter",attrs:{id:"filter-tiles",placeholder:e.$t("search.search-placeholder")},domProps:{value:e.input},on:{input:[function(t){t.target.composing||(e.input=t.target.value)},e.userIsTypingSomething],keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.clearFilterInput.apply(null,arguments)}}}),e.input.length>0?a("i",{staticClass:"clear-search",attrs:{title:e.$t("search.clear-search-tooltip")},on:{click:e.clearFilterInput}},[e._v("x")]):e._e()])},Ie=[];class xe{constructor(e){this.index=e}resetIndex(){this.index=0}arrowNavigation(e){void 0===this.index?this.index=0:37===e?this.index-=1:38===e?this.index=xe.goToPrevious(this.index):39===e?this.index+=1:40===e&&(this.index=xe.goToNext(this.index)),this.index=xe.getSafeElementIndex(this.index),xe.selectItemByIndex(this.index).focus()}static getNumResults(){return document.getElementsByClassName("item").length}static getSafeElementIndex(e){const t=xe.getNumResults();return e<0?t-1:e>=t?0:e}static selectItemByIndex(e){return e>=0&&e<=xe.getNumResults()?document.getElementsByClassName("item")[e]:[document.getElementsByClassName("item")]}static findPreviousRow(e){const t=(e,t)=>xe.selectItemByIndex(e).offsetTop===t,a=(e,n)=>e>=xe.getNumResults()?a(0,n):t(e,n)?a(e-1,n):e,n=xe.selectItemByIndex(e).offsetTop;return a(e,n)}static goToPrevious(e){const t=(e,t)=>xe.selectItemByIndex(e).offsetTopxe.selectItemByIndex(e).offsetTop===t,a=(e,n)=>e>=xe.getNumResults()?a(0,n):t(e,n)?a(e+1,n):e,n=xe.selectItemByIndex(e).offsetTop;return a(e,n)}static goToNext(e){const t=(e,t)=>xe.selectItemByIndex(e).offsetTop>xe.selectItemByIndex(t).offsetTop,a=xe.findNextRow(e),n=a-e,s=a-xe.findPreviousRow(e)-1,o=t(e,a)?0:s-n;return a+o}}var Te={name:"FilterTile",props:{active:Boolean},data(){return{input:"",akn:new xe,getCustomKeyShortcuts:re}},mounted(){window.addEventListener("keydown",e=>{const t=document.activeElement.id,{key:a,keyCode:n}=e;this.active&&(/^[a-zA-Z]$/.test(a)&&"filter-tiles"!==t?(this.$refs.filter&&this.$refs.filter.focus(),this.userIsTypingSomething()):/^[0-9]$/.test(a)?this.handleHotKey(a):n>=37&&n<=40?this.akn.arrowNavigation(n):27===n&&this.clearFilterInput())})},methods:{userIsTypingSomething(){this.$emit("user-is-searchin",this.input)},clearFilterInput(){this.input="",this.userIsTypingSomething(),document.activeElement.blur(),this.akn.resetIndex()},handleHotKey(e){const t=this.getCustomKeyShortcuts();t.forEach(t=>{t.hotkey===parseInt(e,10)&&t.url&&window.open(t.url,"_blank")})}}},Oe=Te,Ee=(a("b021"),Object(v["a"])(Oe,Se,Ie,!1,null,"2350dd8e",null)),Ae=Ee.exports,$e=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"config-options"},[a("span",[e._v(e._s(e.$t("settings.config-launcher-label")))]),a("div",{staticClass:"config-buttons"},[a("IconSpanner",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip("Update configuration"),expression:"tooltip('Update configuration')"}],attrs:{tabindex:"-2"},on:{click:function(t){return e.showEditor()}}})],1),a("modal",{attrs:{name:e.modalNames.CONF_EDITOR,resizable:!0,width:"60%",height:"85%",classes:"dashy-modal"},on:{closed:function(t){return e.$emit("modalChanged",!1)}}},[a("ConfigContainer",{attrs:{config:e.combineConfig()}})],1),a("modal",{attrs:{name:e.modalNames.LANG_SWITCHER,classes:"dashy-modal",resizable:!0,width:"30%",height:"25%"}},[a("LanguageSwitcher")],1)],1)},Le=[],ze=a("35c3"),je=a.n(ze),Ne=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("Tabs",{ref:"tabView",attrs:{navAuto:!0,name:"Add Item"}},[a("TabItem",{staticClass:"main-tab",attrs:{name:e.$t("config.main-tab")}},[a("div",{staticClass:"main-options-container"},[a("div",{staticClass:"config-buttons"},[a("h2",[e._v("Configuration Options")]),a("a",{staticClass:"hyperlink-wrapper",on:{click:function(t){return e.downloadConfigFile("conf.yml",e.yaml)}}},[a("button",{staticClass:"config-button center"},[a("DownloadIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.download-config-button"))+" ")],1)]),a("button",{staticClass:"config-button center",on:{click:function(){return e.navigateToTab(2)}}},[a("EditIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.edit-config-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(){return e.navigateToTab(4)}}},[a("CustomCssIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.edit-css-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(){return e.navigateToTab(3)}}},[a("CloudIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.backupId?e.$t("config.edit-cloud-sync-button"):e.$t("config.cloud-sync-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(t){return e.openLanguageSwitchModal()}}},[a("LanguageIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.change-language-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(t){return e.openRebuildAppModal()}}},[a("RebuildIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.rebuild-app-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(t){return e.resetLocalSettings()}}},[a("DeleteIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.reset-settings-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(t){return e.openAboutModal()}}},[a("IconAbout",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.app-info-button"))+" ")],1),a("p",{staticClass:"small-screen-note",staticStyle:{display:"none"}},[e._v(" You are using a very small screen, and some screens in this menu may not be optimal ")]),a("p",{staticClass:"language"},[e._v(e._s(e.getLanguage()))]),a("AppVersion")],1),a("div",{staticClass:"config-note"},[a("span",[e._v(e._s(e.$t("config.backup-note")))])])]),a("RebuildApp")],1),a("TabItem",{staticClass:"code-container",attrs:{name:e.$t("config.view-config-tab")}},[a("pre",{attrs:{id:"conf-yaml"}},[e._v(e._s(e.yaml))]),a("div",{staticClass:"yaml-action-buttons"},[a("h2",[e._v(e._s(e.$t("config.actions-label")))]),a("a",{staticClass:"yaml-button download",on:{click:function(t){return e.downloadConfigFile("conf.yml",e.yaml)}}},[e._v(" "+e._s(e.$t("config.download-config-button"))+" ")]),a("a",{staticClass:"yaml-button copy",on:{click:function(t){return e.copyConfigToClipboard()}}},[e._v(" "+e._s(e.$t("config.copy-config-label"))+" ")]),a("a",{staticClass:"yaml-button reset",on:{click:function(t){return e.resetLocalSettings()}}},[e._v(" "+e._s(e.$t("config.reset-config-label"))+" ")])])]),a("TabItem",{attrs:{name:e.$t("config.edit-config-tab")}},[a("JsonEditor",{attrs:{config:e.config}})],1),a("TabItem",{attrs:{name:e.$t("cloud-sync.title")}},[a("CloudBackupRestore",{attrs:{config:e.config}})],1),a("TabItem",{attrs:{name:e.$t("config.custom-css-tab")}},[a("CustomCssEditor",{attrs:{config:e.config}})],1)],1)},Me=[],Be=a("1020"),Ve=a.n(Be),De=a("2e7b"),He=a.n(De),Pe=(a("1d89"),a("d97e"));const Ue=e=>e.split("\n").map(e=>e.trimRight()).join("\n"),Re=e=>{throw new Error("Error in Json to YAML conversion: "+e)},Ke=e=>{let t="";const a={undefined(){return"null"},null(){return"null"},number(e){return e},boolean(e){return e?"true":"false"},string(e){return JSON.stringify(e)},array(e){let n="";return 0===e.length?(n+="[]",n):(t=t.replace(/$/," "),e.forEach(e=>{const s=a[Object(Pe["typeOf"])(e)];s||Re(Object(Pe["typeOf"])(e)),n+=`\n${t}- ${s(e,!0)}`}),t=t.replace(/ {2}/,""),n)},object(e,n,s){let o="";return 0===Object.keys(e).length?(o+="{}",o):(s||(t=t.replace(/$/," ")),Object.keys(e).forEach((s,i)=>{const r=e[s],l=a[Object(Pe["typeOf"])(r)];"undefined"!==typeof r&&(l||Re(Object(Pe["typeOf"])(r)),n&&0===i||(o+="\n"+t),o+=`${s}: ${l(r)}`)}),t=t.replace(/ {2}/,""),o)},function(){return"[object Function]"}};return Ue(a[Object(Pe["typeOf"])(e)](e,!0,!0)+"\n")};var Fe=Ke,We=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"json-editor-outer"},[a("v-jsoneditor",{attrs:{options:e.options,height:"500px"},model:{value:e.jsonData,callback:function(t){e.jsonData=t},expression:"jsonData"}}),a("div",{staticClass:"save-options"},[a("span",{staticClass:"save-option-title"},[e._v(e._s(e.$t("config-editor.save-location-label"))+":")]),a("div",{staticClass:"option"},[a("input",{directives:[{name:"model",rawName:"v-model",value:e.saveMode,expression:"saveMode"}],staticClass:"radio-option",attrs:{type:"radio",id:"local",value:"local",disabled:!e.allowWriteToDisk},domProps:{checked:e._q(e.saveMode,"local")},on:{change:function(t){e.saveMode="local"}}}),a("label",{staticClass:"save-option-label",attrs:{for:"local"}},[e._v(" "+e._s(e.$t("config-editor.location-local-label"))+" ")])]),a("div",{staticClass:"option"},[a("input",{directives:[{name:"model",rawName:"v-model",value:e.saveMode,expression:"saveMode"}],staticClass:"radio-option",attrs:{type:"radio",id:"file",value:"file",disabled:!e.allowWriteToDisk},domProps:{checked:e._q(e.saveMode,"file")},on:{change:function(t){e.saveMode="file"}}}),a("label",{staticClass:"save-option-label",attrs:{for:"file"}},[e._v(" "+e._s(e.$t("config-editor.location-disk-label"))+" ")])])]),a("button",{class:"save-button "+(e.isValid?"":"err"),on:{click:function(t){return e.save()}}},[e._v(" "+e._s(e.$t("config-editor.save-button"))+" ")]),a("p",{staticClass:"errors"},[a("ul",[e._l(e.errorMessages,(function(t,n){return a("li",{key:n,class:"type-"+t.type},[e._v(" "+e._s(t.msg)+" ")])})),e.errorMessages.length<1?a("li",{staticClass:"type-valid"},[e._v(" "+e._s(e.$t("config-editor.valid-label"))+" ")]):e._e()],2)]),void 0!==e.saveSuccess?a("p",{class:"response-output status-"+(e.saveSuccess?"success":"fail")},[e._v(" "+e._s(e.saveSuccess?e.$t("config-editor.status-success-msg"):e.$t("config-editor.status-fail-msg"))+" ")]):e._e(),a("p",{staticClass:"response-output"},[e._v(e._s(e.responseText))]),e.saveSuccess?a("p",{staticClass:"response-output"},[e._v(" "+e._s(e.$t("config-editor.success-note-l1"))+" "+e._s(e.$t("config-editor.success-note-l2"))+" "+e._s(e.$t("config-editor.success-note-l3"))+" ")]):e._e(),a("p",{staticClass:"note"},[e._v(e._s(e.$t("config.backup-note")))])],1)},qe=[],Ge=a("bcb2"),Je=a.n(Ge),Ye=a("831b"),Xe=a("94f8"),Ze=a.n(Xe);const Qe=e=>{const t=e=>e.toString().toUpperCase(),a=Ze()(t(e.user)+t(e.hash));return t(a)},et=e=>{const t=e.map(e=>Qe(e));let a=!1;return document.cookie.split(";").forEach(e=>{if(e&&e.split("=").length>1){const n=e.split("=")[0].trim(),s=e.split("=")[1].trim();n===A["cookieKeys"].AUTH_TOKEN&&t.includes(s)&&(a=!0)}}),a},tt=(e,t,a)=>{let n;return e?t?a.forEach(a=>{a.user.toLowerCase()===e.toLowerCase()&&(n=a.hash.toLowerCase()===Ze()(t).toString().toLowerCase()?{correct:!0,msg:"Logging in..."}:{correct:!1,msg:"Incorrect Password"})}):n={correct:!1,msg:"Missing Password"}:n={correct:!1,msg:"Missing Username"},n||{correct:!1,msg:"User not found"}},at=(e,t,a)=>{const n=new Date,s=new Date(n.setTime(n.getTime()+a)).toGMTString(),o={user:e,hash:Ze()(t).toString().toLowerCase()};document.cookie=`authenticationToken=${Qe(o)};`+(a>0?"expires="+s:""),localStorage.setItem(A["localStorageKeys"].USERNAME,e)},nt=()=>{document.cookie="authenticationToken=null",localStorage.removeItem(A["localStorageKeys"].USERNAME)},st=e=>{if(!e||0===e.length)return!0;if(!et(e))return!1;const t=localStorage[A["localStorageKeys"].USERNAME];let a=!1;return e.forEach(e=>{e.user===t&&"admin"===e.type&&(a=!0)}),a};var ot=a("bc3a"),it=a.n(ot),rt={name:"JsonEditor",props:{config:Object},components:{VJsoneditor:Je.a},data(){return{jsonData:this.config,errorMessages:[],saveMode:"file",options:{schema:Ye,mode:"tree",modes:["tree","code","preview"],name:"config",onValidationError:this.validationErrors},jsonParser:Fe,responseText:"",saveSuccess:void 0,allowWriteToDisk:this.shouldAllowWriteToDisk()}},computed:{isValid(){return this.errorMessages.length<1}},mounted(){this.allowWriteToDisk||(this.saveMode="local")},methods:{shouldAllowWriteToDisk(){const{appConfig:e}=this.config;return!1!==e.allowConfigEdit&&st(e.auth)},save(){"local"!==this.saveMode&&this.allowWriteToDisk?"file"===this.saveMode?this.writeConfigToDisk():this.$toasted.show(this.$t("config-editor.error-msg-save-mode")):this.saveConfigLocally()},writeConfigToDisk(){const e=this.jsonParser(this.jsonData),t=Object({NODE_ENV:"production",VUE_APP_VERSION:"1.5.3",BASE_URL:"/"}).VUE_APP_DOMAIN||window.location.origin,a=t+"/config-manager/save",n={"Content-Type":"text/plain"},s={config:e,timestamp:new Date},o=it.a.post(a,s,n);o.then(e=>{this.saveSuccess=e.data.success||!1,this.responseText=e.data.message,this.saveSuccess?(this.carefullyClearLocalStorage(),this.showToast(this.$t("config-editor.success-msg-disk"),!0)):this.showToast(this.$t("config-editor.error-msg-cannot-save"),!1)}).catch(e=>{this.saveSuccess=!1,this.responseText=e,this.showToast(e,!1)})},saveConfigLocally(){const e=this.jsonData;e.sections&&localStorage.setItem(A["localStorageKeys"].CONF_SECTIONS,JSON.stringify(e.sections)),e.pageInfo&&localStorage.setItem(A["localStorageKeys"].PAGE_INFO,JSON.stringify(e.pageInfo)),e.appConfig&&(e.appConfig.auth=this.config.appConfig.auth||[],localStorage.setItem(A["localStorageKeys"].APP_CONFIG,JSON.stringify(e.appConfig))),e.appConfig.theme&&localStorage.setItem(A["localStorageKeys"].THEME,e.appConfig.theme),this.showToast(this.$t("config-editor.success-msg-local"),!0)},carefullyClearLocalStorage(){localStorage.removeItem(A["localStorageKeys"].PAGE_INFO),localStorage.removeItem(A["localStorageKeys"].APP_CONFIG),localStorage.removeItem(A["localStorageKeys"].CONF_SECTIONS)},validationErrors(e){const t=[];e.forEach(e=>{switch(e.type){case"validation":t.push({type:"validation",msg:this.$t("config-editor.warning-msg-validation")+": "+`${e.error.keyword} ${e.error.message}`});break;case"error":t.push({type:"parse",msg:e.message});break;default:t.push({type:"editor",msg:this.$t("config-editor.error-msg-bad-json")});break}}),this.errorMessages=t},showToast(e,t){this.$toasted.show(e,{className:"toast-"+(t?"success":"error")})}}},lt=rt,ct=(a("80a7"),Object(v["a"])(lt,We,qe,!1,null,null,null)),ut=ct.exports,dt=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"css-editor-outer"},[a("prism-editor",{staticClass:"my-editor",attrs:{highlight:e.highlighter,"line-numbers":""},model:{value:e.customCss,callback:function(t){e.customCss=t},expression:"customCss"}}),a("button",{staticClass:"save-button",on:{click:function(t){return e.save()}}},[e._v(e._s(e.$t("config.css-save-btn")))]),a("p",{staticClass:"quick-note"},[a("b",[e._v(e._s(e.$t("config.css-note-label"))+":")]),e._v(" "+e._s(e.$t("config.css-note-l1"))+" "+e._s(e.$t("config.css-note-l2"))+" "+e._s(e.$t("config.css-note-l3"))+" ")]),a("CustomThemeMaker",{staticClass:"color-config",attrs:{themeToEdit:e.currentTheme}})],1)},_t=[],mt=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{class:"theme-configurator-wrapper "+(e.showingAllVars?"showing-all":"")},[a("h3",{staticClass:"configurator-title"},[e._v(e._s(e.$t("theme-maker.title")))]),a("div",{staticClass:"color-row-container"},e._l(Object.keys(e.customColors),(function(t){return a("div",{key:t,staticClass:"color-row"},[a("label",{staticClass:"color-name",attrs:{for:"color-input-"+t}},[e._v(" "+e._s(t.replaceAll("-"," "))+" ")]),e.isColor(t,e.customColors[t])?a("v-swatches",{attrs:{"show-fallback":"","fallback-input-type":"color","popover-x":"left",swatches:e.swatches},on:{input:function(a){return e.setVariable(t,e.customColors[t])}},model:{value:e.customColors[t],callback:function(a){e.$set(e.customColors,t,a)},expression:"customColors[colorName]"}},[a("input",{staticClass:"swatch-input form__input__element",style:e.makeSwatchStyles(t),attrs:{slot:"trigger",id:"color-input-"+t,readonly:""},domProps:{value:e.customColors[t]},slot:"trigger"})]):a("input",{staticClass:"misc-input",attrs:{id:"color-input-"+t},domProps:{value:e.customColors[t]},on:{input:function(a){return e.setVariable(t,e.customColors[t])}}})],1)})),0),a("p",{staticClass:"action-text-btn",on:{click:e.exportToClipboard}},[e._v(" "+e._s(e.$t("theme-maker.export-button"))+" ")]),a("p",{staticClass:"action-text-btn show-all-vars-btn",on:{click:e.resetAndSave}},[e._v(" "+e._s(e.$t("theme-maker.reset-button"))+" '"+e._s(e.themeToEdit)+"' ")]),a("p",{staticClass:"action-text-btn",on:{click:e.findAllVariableNames}},[e._v(" "+e._s(e.$t("theme-maker.show-all-button"))+" ")]),a("div",{staticClass:"action-buttons"},[a("Button",{attrs:{click:e.saveChanges}},[a("SaveIcon"),e._v(" "+e._s(e.$t("theme-maker.save-button"))+" ")],1),a("Button",{attrs:{click:e.resetUnsavedColors}},[a("CancelIcon"),e._v(" "+e._s(e.$t("theme-maker.cancel-button"))+" ")],1)],1)])},gt=[],ht=a("7f75"),pt=a.n(ht),ft=(a("b3a4"),function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("button",{class:e.disallow?"disallowed":"",attrs:{disabled:e.disabled},on:{click:function(t){return e.click()}}},[e._t("default"),e._t("text"),e._t("icon")],2)}),bt=[],kt={name:"Button",props:{text:String,click:Function,disabled:Boolean,disallow:Boolean}},wt=kt,vt=(a("24e6"),Object(v["a"])(wt,ft,bt,!1,null,"ec408f00",null)),yt=vt.exports,Ct=a("90ff"),St=a.n(Ct),It=a("90de"),xt=a.n(It),Tt={name:"ThemeMaker",components:{VSwatches:pt.a,Button:yt,SaveIcon:St.a,CancelIcon:xt.a},data(){return{customColors:this.makeInitialData(A["mainCssVars"]),showingAllVars:!1,swatches:A["swatches"]}},props:{themeToEdit:String},methods:{getCssVariableValue(e){return getComputedStyle(document.documentElement).getPropertyValue(e).trim()||"inherit"},setVariable(e,t){document.documentElement.style.setProperty("--"+e,t)},saveChanges(){const e=JSON.parse(localStorage[A["localStorageKeys"].CUSTOM_COLORS]||"{}");e[this.themeToEdit]=this.customColors,localStorage.setItem(A["localStorageKeys"].CUSTOM_COLORS,JSON.stringify(e)),this.$toasted.show(this.$t("theme-maker.saved-toast",{theme:this.themeToEdit})),this.$emit("closeThemeConfigurator")},resetUnsavedColors(){const e=Object.keys(this.customColors);e.forEach(e=>{document.documentElement.style.removeProperty("--"+e)}),this.customColors=this.makeInitialData(A["mainCssVars"]),this.$emit("closeThemeConfigurator")},resetAndSave(){const e=JSON.parse(localStorage[A["localStorageKeys"].CUSTOM_COLORS]||"{}");delete e[this.themeToEdit],localStorage.setItem(A["localStorageKeys"].CUSTOM_COLORS,JSON.stringify(e)),this.resetUnsavedColors(),this.$toasted.show(this.$t("theme-maker.reset-toast",{theme:this.themeToEdit}))},exportToClipboard(){const e=this.themeToEdit.replace(/^\w/,e=>e.toUpperCase());let t=`// Custom Colors for ${e}\n`;Object.keys(this.customColors).forEach(e=>{t+=`--${e}: ${this.customColors[e]};\n`}),navigator.clipboard.writeText(t),this.$toasted.show(this.$t("theme-maker.copied-toast",{theme:e}))},makeInitialData(e){const t={},a=e=>/^--/.exec(e),n=e=>a(e)?e:"--"+e,s=e=>a(e)?e.replace("--",""):e;return e.forEach(e=>{t[s(e)]=this.getCssVariableValue(n(e))}),t},findAllVariableNames(){const e=Array.from(document.styleSheets).filter(e=>null===e.href||e.href.startsWith(window.location.origin)).reduce((e,t)=>[...e,...Array.from(t.cssRules).reduce((e,t)=>":root"===t.selectorText?[...e,...Array.from(t.style).filter(e=>e.startsWith("--"))]:e,[])],[]);this.customColors=this.makeInitialData(e),this.showingAllVars=!0},getForegroundColor(e){const t=e=>{const t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(!t||t.length<3)return"black";const a=e=>parseInt(t[e],16);return t?{r:a(1),g:a(2),b:a(3)}:null},a=e=>(299*e.r+587*e.g+114*e.b)/1e3;return a(t(e.trim()))<100?"white":"black"},makeSwatchStyles(e){const t=this.getForegroundColor(this.customColors[e]);return`background:${this.customColors[e]};color:${t}; border: 1px solid ${t}`},isColor(e,t){if(/rem|px|%/.exec(t))return!1;const a=["--curve-factor","--curve-factor-navbar","--curve-factor-small","--dimming-factor","--scroll-bar-width","--header-height","--footer-height","--item-group-padding","--item-shadow","--item-hover-shadow:","--item-icon-transform","--item-icon-transform-hover","--item-group-shadow","--context-menu-shadow","--settings-container-shadow","--side-bar-width"];return!a.includes("--"+e)}}},Ot=Tt,Et=(a("369e"),Object(v["a"])(Ot,mt,gt,!1,null,null,null)),At=Et.exports,$t=a("e57a"),Lt=a("8c7a"),zt=(a("6605"),a("dff1"),a("cabf"),{name:"JsonEditor",props:{config:Object},components:{CustomThemeMaker:At,PrismEditor:$t["a"]},data(){return{customCss:this.config.appConfig.customCss||"\n\n\n\n\n",currentTheme:oe()}},methods:{validate(e){return""===e||e.match(/((?:^\s*)([\w#.@*,:\-.:>,*\s]+)\s*{(?:[\s]*)((?:[A-Za-z\- \s]+[:]\s*['"0-9\w .,/()\-!%]+;?)*)*\s*}(?:\s*))/gim)},save(){let e="";if(this.validate(this.customCss)){const t={...this.config.appConfig};t.customCss=this.customCss,localStorage.setItem(A["localStorageKeys"].APP_CONFIG,JSON.stringify(t)),e="Changes saved succesfully",this.inject(this.customCss),""===this.customCss&&setTimeout(()=>{location.reload()},1500)}else e="Error - Invalid CSS";this.$toasted.show(e)},inject(e){const t=e.replace(/<\/?[^>]+(>|$)/g,""),a=document.createElement("style");a.textContent=t,document.head.append(a)},highlighter(e){return Object(Lt["highlight"])(e,Lt["languages"].css)}}}),jt=zt,Nt=(a("9e50"),Object(v["a"])(jt,dt,_t,!1,null,null,null)),Mt=Nt.exports,Bt=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"cloud-backup-restore-wrapper"},[a("div",{staticClass:"section intro"},[a("h2",[e._v(e._s(e.$t("cloud-sync.title")))]),a("p",{staticClass:"intro"},[e._v(" "+e._s(e.$t("cloud-sync.intro-l1"))+" "),a("br"),a("br"),e._v(" "+e._s(e.$t("cloud-sync.intro-l2"))+" "),a("br"),e._v(" "+e._s(e.$t("cloud-sync.intro-l3"))+" "),a("a",{attrs:{href:"https://github.com/Lissy93/dashy/blob/master/docs/backup-restore.md"}},[e._v("docs")])])]),a("div",{staticClass:"section backup-section"},[(e.backupId,a("h3",[e._v(e._s(e.$t("cloud-sync.backup-title-setup")))])),a("Input",{attrs:{name:"backup-password",label:e.backupId?e.$t("cloud-sync.password-label-update"):e.$t("cloud-sync.password-label-setup"),layout:"vertical",type:"password"},model:{value:e.backupPassword,callback:function(t){e.backupPassword=t},expression:"backupPassword"}}),a("Button",{attrs:{click:e.checkPass},scopedSlots:e._u([{key:"text",fn:function(){return[e._v(" "+e._s(e.backupId?e.$t("cloud-sync.backup-button-update"):e.$t("cloud-sync.backup-button-setup"))+" ")]},proxy:!0},{key:"icon",fn:function(){return[a("IconBackup")]},proxy:!0}])}),e.backupId?a("div",{staticClass:"results-view"},[a("span",{staticClass:"backup-id-label"},[e._v(e._s(e.$t("cloud-sync.backup-id-label"))+": ")]),a("pre",{staticClass:"backup-id-value"},[e._v(e._s(e.backupId))]),a("span",{staticClass:"backup-id-note"},[e._v(e._s(e.$t("cloud-sync.backup-id-note")))])]):e._e()],1),a("div",{staticClass:"section restore-section"},[a("h3",[e._v(e._s(e.$t("cloud-sync.restore-title")))]),a("Input",{attrs:{name:"restore-code",label:e.$t("cloud-sync.restore-id-label")},model:{value:e.restoreCode,callback:function(t){e.restoreCode=t},expression:"restoreCode"}}),a("Input",{attrs:{name:"restore-password",label:e.$t("cloud-sync.restore-password-label"),type:"password"},model:{value:e.restorePassword,callback:function(t){e.restorePassword=t},expression:"restorePassword"}}),a("Button",{attrs:{click:e.restoreBackup},scopedSlots:e._u([{key:"text",fn:function(){return[e._v(e._s(e.$t("cloud-sync.restore-button")))]},proxy:!0},{key:"icon",fn:function(){return[a("IconRestore")]},proxy:!0}])})],1)])},Vt=[],Dt=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{class:"input-container "+e.layout},[e.label?a("label",{attrs:{for:"name"}},[e._v(e._s(e.label))]):e._e(),a("input",{attrs:{type:e.type,name:e.name,id:e.name,placeholder:e.placeholder},domProps:{value:e.value},on:{input:function(t){return e.updateValue(t.target.value)}}})])},Ht=[],Pt={name:"Input",props:{value:String,label:String,name:String,placeholder:String,type:{default:"text",type:String},layout:{validator:e=>-1!==["horizontal","vertical"].indexOf(e),type:String,default:"vertical"}},methods:{updateValue(e){this.$emit("input",e)}}},Ut=Pt,Rt=(a("2d25"),Object(v["a"])(Ut,Dt,Ht,!1,null,"5df13ed2",null)),Kt=Rt.exports,Ft=a("3a1e"),Wt=a.n(Ft),qt=a("e6a4"),Gt=a.n(qt),Jt=a("c198"),Yt=a.n(Jt),Xt=a("f8d5"),Zt=a.n(Xt);const Qt=A["backupEndpoint"],ea=(e,t)=>{const a=JSON.stringify(e),n=Yt.a.encrypt(a,t);return n.toString()},ta=(e,t)=>Yt.a.decrypt(e,t).toString(Zt.a),aa=e=>Ze()(e).toString().slice(0,14),na=(e,t)=>it.a.post(Qt,{userData:ea(e,t),subHash:aa(t)}),sa=(e,t,a)=>it.a.put(Qt,{backupId:a,userData:ea(e,t),subHash:aa(t)}),oa=e=>Object.entries(e).map(e=>e.map(encodeURIComponent).join("=")).join("&"),ia=(e,t)=>{const a=oa({backupId:e,subHash:aa(t)}),n=`${Qt}/?${a}`;return new Promise((e,a)=>{it.a.get(n).then(n=>{if(!n.data||n.data.errorMsg)a(n.data.errorMsg||"Error");else{const o=ta(n.data.userData.userData,t);try{e(JSON.parse(o))}catch(s){a(s)}}})})};var ra={name:"CloudBackupRestore",props:{config:Object},data(){return{backupPassword:"",restorePassword:"",restoreCode:"",backupId:localStorage[A["localStorageKeys"].BACKUP_ID]||""}},components:{Button:yt,Input:Kt,IconBackup:Wt.a,IconRestore:Gt.a},methods:{restoreBackup(){ia(this.restoreCode,this.restorePassword).then(e=>{this.restoreFromBackup(e,this.restoreCode)}).catch(e=>{this.showErrorMsg(e)})},checkPass(){const e=localStorage[A["localStorageKeys"].BACKUP_HASH]||void 0;e?e===this.makeHash(this.backupPassword)?this.makeUpdate():this.showErrorMsg(this.$t("cloud-sync.backup-error-password")):this.makeBackup()},makeBackup(){na(this.config,this.backupPassword).then(e=>{e.data&&!e.data.errorMsg&&e.data.backupId?this.updateUiAfterBackup(e.data.backupId,!1):this.showErrorMsg(e.data.errorMsg||"Error")}).catch(()=>{this.showErrorMsg(this.$t("cloud-sync.backup-error-unknown"))})},makeUpdate(){sa(this.config,this.backupPassword,this.backupId).then(e=>{e.data&&!e.data.errorMsg&&e.data.backupId?this.updateUiAfterBackup(e.data.backupId,!0):this.showErrorMsg(e.data.errorMsg||"Error")}).catch(()=>{this.showErrorMsg(this.$t("cloud-sync.backup-error-unknown"))})},restoreFromBackup(e,t){localStorage.setItem(A["localStorageKeys"].CONF_SECTIONS,JSON.stringify(e.sections)),localStorage.setItem(A["localStorageKeys"].APP_CONFIG,JSON.stringify(e.appConfig)),localStorage.setItem(A["localStorageKeys"].PAGE_INFO,JSON.stringify(e.pageInfo)),e.appConfig.theme&&localStorage.setItem(A["localStorageKeys"].THEME,e.appConfig.theme),this.setBackupIdLocally(t,this.restorePassword),this.showSuccessMsg(this.$t("cloud-sync.restore-success-msg")),setTimeout(()=>{location.reload()},1500)},updateUiAfterBackup(e,t=!1){this.setBackupIdLocally(e,this.backupPassword),this.showSuccessMsg(`${t?"Update":"Backup"} ${this.$t("cloud-sync.backup-success-msg")}`),this.backupPassword=""},showErrorMsg(e){this.$toasted.show(e,{className:"toast-error"})},showSuccessMsg(e){this.$toasted.show(e,{className:"toast-success"})},makeHash(e){return Ze()(e).toString()},setBackupIdLocally(e,t){this.backupId=e;const a=this.makeHash(t);localStorage.setItem(A["localStorageKeys"].BACKUP_ID,e),localStorage.setItem(A["localStorageKeys"].BACKUP_HASH,a)}}},la=ra,ca=(a("5583"),Object(v["a"])(la,Bt,Vt,!1,null,"079113a8",null)),ua=ca.exports,da=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("modal",{attrs:{name:e.modalName,resizable:!0,width:"50%",height:"60%",classes:"dashy-modal"}},[a("div",{staticClass:"rebuild-app-container"},[a("h3",{staticClass:"rebuild-app-title"},[e._v(e._s(e.$t("app-rebuild.title")))]),a("p",[e._v(" "+e._s(e.$t("app-rebuild.rebuild-note-l1"))+" "+e._s(e.$t("app-rebuild.rebuild-note-l2"))),a("br"),e._v(" "+e._s(e.$t("app-rebuild.rebuild-note-l3"))+" ")]),a("Button",{attrs:{click:e.startBuild,disabled:e.loading||!e.allowRebuild,disallow:!e.allowRebuild},scopedSlots:e._u([{key:"text",fn:function(){return[e._v(" "+e._s(e.loading?e.$t("app-rebuild.rebuilding-status-1"):e.$t("app-rebuild.rebuild-button"))+" ")]},proxy:!0},{key:"icon",fn:function(){return[a("RebuildIcon")]},proxy:!0}])}),e.allowRebuild?e._e():a("div",[a("p",{staticClass:"disallow-rebuild-msg"},[e._v(e._s(e.$t("app-rebuild.error-permission")))])]),e.loading?a("div",{staticClass:"loader-info"},[a("LoadingAnimation",{staticClass:"loader"}),a("p",{staticClass:"loading-message"},[e._v(e._s(e.$t("app-rebuild.rebuilding-status-2"))+"...")])],1):e._e(),void 0!==e.success?a("div",{staticClass:"rebuild-response"},[e.success?a("p",{staticClass:"response-status success"},[e._v(" ✅ "+e._s(e.$t("app-rebuild.success-msg"))+" ")]):a("p",{staticClass:"response-status failure"},[e._v(" ❌ "+e._s(e.$t("app-rebuild.fail-msg"))+" ")]),a("pre",{staticClass:"output"},[a("code",[e._v(e._s(e.output||e.error))])]),a("p",{staticClass:"rebuild-message"},[e._v(e._s(e.message))]),e.success?a("p",{staticClass:"rebuild-message"},[e._v(" "+e._s(e.$t("app-rebuild.reload-note"))+" ")]):e._e(),e.success?a("Button",{attrs:{click:e.refreshPage},scopedSlots:e._u([{key:"text",fn:function(){return[e._v(e._s(e.$t("app-rebuild.reload-button")))]},proxy:!0},{key:"icon",fn:function(){return[a("ReloadIcon")]},proxy:!0}],null,!1,3658341317)}):e._e()],1):e._e()],1)])},_a=[],ma=a("0911"),ga=a.n(ma),ha=a("3ff5"),pa=a.n(ha),fa=a("6266"),ba=a.n(fa),ka={name:"RebuildApp",inject:["config"],components:{Button:yt,RebuildIcon:ga.a,ReloadIcon:pa.a,LoadingAnimation:ba.a},data:()=>({modalName:A["modalNames"].REBUILD_APP,loading:!1,success:void 0,error:"",output:"",message:"",allowRebuild:!0}),methods:{startBuild(){const e=Object({NODE_ENV:"production",VUE_APP_VERSION:"1.5.3",BASE_URL:"/"}).VUE_APP_DOMAIN||window.location.origin,t=e+"/config-manager/rebuild";this.loading=!0,it.a.get(t).then(e=>{this.finished(e.data||!1)}).catch(e=>{this.finished({success:!1,error:e})})},finished(e){if(this.loading=!1,e){const{success:t,output:a,error:n,message:s}=e;this.success=t,this.output=a,this.message=s,this.error=n}this.$toasted.show(this.success?"✅ "+this.$t("app-rebuild.success-msg"):"❌ "+this.$t("app-rebuild.fail-msg"),{className:"toast-"+(this.success?"success":"error")})},refreshPage(){location.reload()}},mounted(){this.config&&this.config.appConfig&&!1===this.config.appConfig.allowConfigEdit&&(this.allowRebuild=!1)}},wa=ka,va=(a("1171"),Object(v["a"])(wa,da,_a,!1,null,"306fcc3a",null)),ya=va.exports,Ca=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"app-version"},[a("p",[e._v(" "+e._s(e.$t("updates.app-version-note"))+" "+e._s(e.appVersion)+" ")]),e.checksEnabled?a("div",[e.finished?e._e():a("p",[e._v(" "+e._s(e.error?"Error checking for updates.":"Chcekcing for Updates...")+" ")]),e.finished&&e.isUpToDate?a("p",{staticClass:"up-to-date"},[e._v(" ✅ "+e._s(e.$t("updates.up-to-date"))+" ")]):e.finished&&!e.veryOutOfDate?a("p",{staticClass:"update-availible"},[e._v(" ⚠️"+e._s(e.$t("updates.out-of-date"))+": "),a("b",[e._v(e._s(e.latestVersion))])]):e.finished&&e.veryOutOfDate?a("p",{staticClass:"big-update-availible"},[e._v(" ❗ "+e._s(e.$t("updates.out-of-date"))+": "),a("b",[e._v(e._s(e.latestVersion))]),a("span",{staticClass:"please-update"},[e._v(" "+e._s(e.$t("updates.unsupported-version-l1"))+"."),a("br"),e._v(" "+e._s(e.$t("updates.unsupported-version-2"))+" "+e._s(e.latestVersion)+" ")])]):e._e()]):e._e()])},Sa=[],Ia={name:"AppInfoModal",inject:["config"],data(){return{appVersion:"1.5.3",latestVersion:"",checksEnabled:!0,isUpToDate:!0,veryOutOfDate:!1,finished:!1,error:!1}},mounted(){const e=this.config.appConfig||{};!this.appVersion||e&&e.disableUpdateChecks?this.checksEnabled=!1:this.checkVersion()},methods:{checkVersion(){const e="https://raw.githubusercontent.com/Lissy93/dashy/master/package.json";it.a.get(e).then(e=>{e&&e.data&&e.data.version&&(this.latestVersion=e.data.version,this.isUpToDate=this.checkIfUpToDate(this.appVersion,this.latestVersion),this.finished=!0)}).catch(()=>{this.error=!0})},checkIfUpToDate(e,t){const a=e=>parseInt(e.replaceAll(".",""),10),n=a(t)-a(e);return n>5&&(this.veryOutOfDate=!0),n<=0}}},xa=Ia,Ta=(a("f255"),Object(v["a"])(xa,Ca,Sa,!1,null,"49d7ffdf",null)),Oa=Ta.exports,Ea=a("cbd9"),Aa=a.n(Ea),$a=a("0278"),La=a.n($a),za=a("e7fa"),ja=a.n(za),Na=a("7da9"),Ma=a.n(Na),Ba=a("6780"),Va=a.n(Ba),Da=a("0845"),Ha=a.n(Da),Pa=a("2413"),Ua=a.n(Pa),Ra={name:"ConfigContainer",data(){return{jsonParser:Fe,backupId:localStorage[A["localStorageKeys"].BACKUP_ID]||"",appVersion:"1.5.3",latestVersion:""}},props:{config:Object},computed:{sections:function(){return this.config.sections},yaml(){return this.jsonParser(this.config)}},components:{JsonEditor:ut,CustomCssEditor:Mt,CloudBackupRestore:ua,RebuildApp:ya,AppVersion:Oa,DownloadIcon:Aa.a,DeleteIcon:La.a,EditIcon:ja.a,CloudIcon:Va.a,CustomCssIcon:Ma.a,LanguageIcon:Ha.a,RebuildIcon:ga.a,IconAbout:Ua.a},methods:{navigateToTab(e){const t=this.$refs.tabView.navItems[e];this.$refs.tabView.activeTabItem(t)},openRebuildAppModal(){this.$modal.show(A["modalNames"].REBUILD_APP)},openAboutModal(){this.$modal.show(A["modalNames"].ABOUT_APP)},openLanguageSwitchModal(){this.$modal.show(A["modalNames"].LANG_SWITCHER)},copyConfigToClipboard(){navigator.clipboard.writeText(this.jsonParser(this.config)),this.$toasted.show(this.$t("config.data-copied-msg"))},resetLocalSettings(){const e=`${this.$t("config.reset-config-msg-l1")}${this.$t("config.reset-config-msg-l2")}\n\n${this.$t("config.reset-config-msg-l3")}`,t=confirm(e);t&&(localStorage.clear(),this.$toasted.show(this.$t("config.data-cleared-msg")),setTimeout(()=>{location.reload(!0)},1900))},downloadConfigFile(e,t){const a=document.createElement("a");a.setAttribute("href","data:text/plain;charset=utf-8, "+encodeURIComponent(t)),a.setAttribute("download",e),a.style.display="none",document.body.appendChild(a),a.click(),document.body.removeChild(a)},initiateStntaxHighlighter(){Ve.a.registerLanguage("yaml",He.a);const e=Ve.a.highlight(this.jsonParser(this.config),{language:"yaml"}).value;document.getElementById("conf-yaml").innerHTML=e},getLanguage(){const e=le();return e?`${e.flag} ${e.name}`:""}},mounted(){this.initiateStntaxHighlighter()}},Ka=Ra,Fa=(a("e1d5"),a("1d47"),Object(v["a"])(Ka,Ne,Me,!1,null,"43a15f79",null)),Wa=Fa.exports,qa=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"language-switcher"},[a("h3",{staticClass:"title"},[e._v(e._s(e.$t("language-switcher.title")))]),a("p",{staticClass:"intro"},[e._v(e._s(e.$t("language-switcher.dropdown-label"))+":")]),a("v-select",{staticClass:"language-dropdown",attrs:{selectOnTab:!0,options:e.availibleLanguages,label:"name",input:e.setLangLocally()},model:{value:e.language,callback:function(t){e.language=t},expression:"language"}}),a("Button",{staticClass:"save-button",attrs:{click:e.saveLanguage,disallow:!e.language}},[e._v(" "+e._s(e.$t("language-switcher.save-button"))+" "),a("SaveConfigIcon")],1),e.language?a("p",[e._v(e._s(e.language.flag)+" "+e._s(e.language.name))]):e._e(),e.$i18n.availableLocales.length<=1?a("p",{staticClass:"sad-times"},[e._v(" There are not currently any additional languages supported, but stay tuned as more are on their way! ")]):e._e()],1)},Ga=[],Ja={name:"LanguageSwitcher",inject:["config"],components:{Button:yt,SaveConfigIcon:St.a},data(){return{availibleLanguages:ee,language:"",modalName:A["modalNames"].LANG_SWITCHER}},methods:{saveLanguage(){const e=this.language;if(this.checkLocale(e)){localStorage.setItem(A["localStorageKeys"].LANGUAGE,e.code),this.setLangLocally();const t=e.flag+" "+`${this.$t("language-switcher.success-msg")} ${e.name}`;this.$toasted.show(t,{className:"toast-success"}),this.$modal.hide(this.modalName)}else this.$toasted.show("Unable to update language",{className:"toast-error"})},checkLocale(e){if(!e||!e.code)return!1;const t=this.$i18n.availableLocales;return t.includes(e.code)},setLangLocally(){this.language&&this.language.code&&(this.$i18n.locale=this.language.code)}}},Ya=Ja,Xa=(a("570c"),Object(v["a"])(Ya,qa,Ga,!1,null,"631f0843",null)),Za=Xa.exports,Qa={name:"ConfigLauncher",data(){return{modalNames:A["modalNames"]}},components:{IconSpanner:je.a,ConfigContainer:Wa,LanguageSwitcher:Za},props:{sections:Array,pageInfo:Object,appConfig:Object},methods:{showEditor:function(){this.$modal.show(A["modalNames"].CONF_EDITOR),this.$emit("modalChanged",!0)},combineConfig(){const e={};return e[A["topLevelConfKeys"].APP_CONFIG]=this.appConfig,e[A["topLevelConfKeys"].PAGE_INFO]=this.pageInfo,e[A["topLevelConfKeys"].SECTIONS]=this.sections,e[A["topLevelConfKeys"].APP_CONFIG].theme=localStorage[A["localStorageKeys"].THEME]||e[A["topLevelConfKeys"].APP_CONFIG].theme,e},tooltip(e){return{content:e,trigger:"hover focus",delay:250}}}},en=Qa,tn=(a("07b7"),Object(v["a"])(en,$e,Le,!1,null,"766377f2",null)),an=tn.exports,nn=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.closeThemeConfigurator,expression:"closeThemeConfigurator"}],staticClass:"theme-selector-section"},[a("div",[a("span",{staticClass:"theme-label"},[e._v(e._s(e.$t("settings.theme-label")))]),a("v-select",{staticClass:"theme-dropdown",attrs:{options:e.themeNames,tabindex:-2},model:{value:e.selectedTheme,callback:function(t){e.selectedTheme=t},expression:"selectedTheme"}})],1),a("IconPalette",{staticClass:"color-button",on:{click:e.openThemeConfigurator}}),e.themeConfiguratorOpen?a("CustomThemeMaker",{attrs:{themeToEdit:e.selectedTheme},on:{closeThemeConfigurator:function(t){return e.closeThemeConfigurator()}}}):e._e()],1)},sn=[];const on=function(e){ue(),console.warn(e),de()};var rn=on;const ln=()=>oe(),cn=e=>{A["mainCssVars"].forEach(e=>{document.documentElement.style.removeProperty("--"+e)});const t=ie()[e];t&&Object.keys(t).forEach(e=>{document.documentElement.style.setProperty("--"+e,t[e])})},un=e=>{const t=document.getElementsByTagName("html")[0];t.hasAttribute("data-theme")&&t.removeAttribute("data-theme"),t.setAttribute("data-theme",e)},dn=function(){const e=e=>{const t=document.createElement("link");return t.rel="stylesheet",t.href=e,document.head.appendChild(t),new Promise((e,a)=>{t.onload=t=>{const{sheet:a}=t.target;a.disabled=!0,e(a)},t.onerror=a})},t=(e,t)=>!(!t||"custom"!==t&&!e[t])||(rn(`Theme: '${t||"[not selected]"}' does not exist.`),!1),a=(e,a)=>{if(t(e,a)){const t=e;Object.keys(e).forEach(e=>{t[e].disabled=e!==a})}},n={};return{add(t,a){return e(a).then(e=>{n[t]=e})},set theme(e){a(n,e)},get theme(){return Object.keys(n).find(e=>!n[e].disabled)}}};var _n=a("4400"),mn=a.n(_n),gn={name:"ThemeSelector",props:{externalThemes:Object,confTheme:String,userThemes:Array},components:{CustomThemeMaker:At,IconPalette:mn.a},watch:{selectedTheme(e){this.updateTheme(e)}},data(){return{selectedTheme:this.getInitialTheme(),builtInThemes:[...$.a.builtInThemes,...this.userThemes],themeHelper:new dn,themeConfiguratorOpen:!1,ApplyLocalTheme:un,ApplyCustomVariables:cn}},computed:{themeNames:function(){const e=Object.keys(this.externalThemes),t=["custom"];return[...e,...this.builtInThemes,...t]}},created(){const e=Object.keys(this.externalThemes).map(e=>this.themeHelper.add(e,this.externalThemes[e]));this.isThemeLocal(this.selectedTheme)?this.updateTheme(this.selectedTheme):this.selectedTheme!==$.a.theme&&Promise.all(e).then(()=>{this.updateTheme(this.selectedTheme)})},methods:{getInitialTheme(){return localStorage[A["localStorageKeys"].THEME]||this.confTheme||$.a.theme},isThemeLocal(e){return this.builtInThemes.includes(e)},openThemeConfigurator(){this.$emit("modalChanged",!0),this.themeConfiguratorOpen=!0},closeThemeConfigurator(){this.themeConfiguratorOpen=!1},updateTheme(e){"Default"===e?(this.resetToDefault(),this.themeHelper.theme="Default"):this.isThemeLocal(e)?this.ApplyLocalTheme(e):this.themeHelper.theme=e,this.ApplyCustomVariables(e),localStorage.setItem(A["localStorageKeys"].THEME,e)},resetToDefault(){document.getElementsByTagName("html")[0].removeAttribute("data-theme")}}},hn=gn,pn=(a("4ade"),Object(v["a"])(hn,nn,sn,!1,null,null,null)),fn=pn.exports,bn=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("span",{staticClass:"options-label"},[e._v(e._s(e.$t("settings.layout-label")))]),a("div",{staticClass:"display-options"},[a("IconDeafault",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.layout-auto")),expression:"tooltip($t('settings.layout-auto'))"}],class:"layout-icon "+("auto"===e.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateDisplayLayout("auto")}}}),a("IconHorizontal",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.layout-horizontal")),expression:"tooltip($t('settings.layout-horizontal'))"}],class:"layout-icon "+("horizontal"===e.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateDisplayLayout("horizontal")}}}),a("IconVertical",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.layout-vertical")),expression:"tooltip($t('settings.layout-vertical'))"}],class:"layout-icon "+("vertical"===e.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateDisplayLayout("vertical")}}})],1)])},kn=[],wn=a("c715"),vn=a.n(wn),yn=a("570d"),Cn=a.n(yn),Sn=a("f9d7"),In=a.n(Sn),xn={name:"LayoutSelector",data(){return{input:""}},props:{displayLayout:String},components:{IconDeafault:vn.a,IconHorizontal:Cn.a,IconVertical:In.a},methods:{updateDisplayLayout(e){this.$emit("layoutUpdated",e)},tooltip(e){return{content:e,trigger:"hover focus",delay:250}}}},Tn=xn,On=(a("5dbe"),Object(v["a"])(Tn,bn,kn,!1,null,"b3a6111c",null)),En=On.exports,An=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("span",{staticClass:"options-label"},[e._v(e._s(e.$t("settings.item-size-label")))]),a("div",{staticClass:"display-options"},[a("IconSmall",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.item-size-small")),expression:"tooltip($t('settings.item-size-small'))"}],class:"layout-icon "+("small"===e.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateIconSize("small")}}}),a("IconMedium",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.item-size-medium")),expression:"tooltip($t('settings.item-size-medium'))"}],class:"layout-icon "+("medium"===e.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateIconSize("medium")}}}),a("IconLarge",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.item-size-large")),expression:"tooltip($t('settings.item-size-large'))"}],class:"layout-icon "+("large"===e.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateIconSize("large")}}})],1)])},$n=[],Ln=a("d8e8"),zn=a.n(Ln),jn=a("7075"),Nn=a.n(jn),Mn=a("922c"),Bn=a.n(Mn),Vn={name:"IconSizeSelector",data(){return{input:""}},props:{iconSize:String},components:{IconSmall:zn.a,IconMedium:Nn.a,IconLarge:Bn.a},methods:{updateIconSize(e){this.$emit("iconSizeUpdated",e)},tooltip(e){return{content:e,trigger:"hover focus",delay:250}}}},Dn=Vn,Hn=(a("89e2"),Object(v["a"])(Dn,An,$n,!1,null,"1ff45660",null)),Pn=Hn.exports,Un=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("div",{staticClass:"display-options"},[a("IconLogout",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip("Sign Out"),expression:"tooltip('Sign Out')"}],staticClass:"layout-icon",attrs:{tabindex:"-2"},on:{click:function(t){return e.logout()}}})],1)])},Rn=[],Kn=a("0123"),Fn=a.n(Kn),Wn={name:"AppButtons",components:{IconLogout:Fn.a},methods:{logout(){nt(),this.$toasted.show("Logged Out"),setTimeout(()=>{location.reload(!0)},500)},tooltip(e){return{content:e,trigger:"hover focus",delay:250}}}},qn=Wn,Gn=(a("0e1b"),Object(v["a"])(qn,Un,Rn,!1,null,"d69dca9c",null)),Jn=Gn.exports,Yn=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("transition",{attrs:{name:"slide-fade"}},[e.shouldHide?e._e():a("div",{staticClass:"kb-sc-info"},[a("h5",[e._v("There are keyboard shortcuts! ⌨️🙌")]),a("div",{staticClass:"close",attrs:{title:"Hide forever [Esc]"},on:{click:function(t){return e.hideWelcomeHelper()}}},[e._v("x")]),a("p",{attrs:{title:"Press [Esc] to hide this tip forever. See there's even a shortcut for that! 🚀"}},[e._v(" Just start typing to filter. Then use the tab key to cycle through results, and press enter to launch the selected item, or alt + enter to open in a modal. You can hit Esc at anytime to clear the search. Easy 🥳 ")])])])},Xn=[],Zn={name:"KeyboardShortcutInfo",data(){return{shouldHide:!0,timeDelay:3e3}},methods:{shouldHideWelcomeMessage(){return!!localStorage[A["localStorageKeys"].HIDE_WELCOME_BANNER]},hideWelcomeHelper(){this.shouldHide=!0,localStorage.setItem(A["localStorageKeys"].HIDE_WELCOME_BANNER,!0),window.removeEventListener("keyup",this.keyPressEvent)},keyPressEvent(e){27===e.keyCode&&this.hideWelcomeHelper()}},mounted(){const e=this.shouldHideWelcomeMessage();e?this.$destroy():(window.setTimeout(()=>{this.shouldHide=e},this.timeDelay),window.addEventListener("keyup",this.keyPressEvent))}},Qn=Zn,es=(a("9517"),Object(v["a"])(Qn,Yn,Xn,!1,null,"c5f17d9a",null)),ts=es.exports,as=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("modal",{attrs:{name:e.modalName,resizable:!0,width:"40%",height:"60%",classes:"dashy-modal"}},[a("div",{staticClass:"about-modal"},[a("router-link",{attrs:{to:"/about"}},[a("h2",[e._v("Dashy")])]),a("AppVersion"),a("h3",[e._v("Service Worker Status")]),a("code",{domProps:{innerHTML:e._s(e.serviceWorkerInfo)}},[e._v(e._s(e.serviceWorkerInfo))]),a("br"),a("h3",[e._v("Config Validation Status")]),a("code",[e._v(e._s(e.getIsConfigValidStatus()))]),a("br"),a("h3",[e._v("Help & Support")]),a("ul",[a("li",[a("a",{attrs:{href:"https://git.io/JnqPR"}},[e._v("Report a Bug")])]),a("li",[a("a",{attrs:{href:"https://git.io/JnDxL"}},[e._v("Request a Feature")])]),a("li",[a("a",{attrs:{href:"https://git.io/JnDxs"}},[e._v("Ask a Question")])]),a("li",[a("a",{attrs:{href:"https://git.io/JnDxn"}},[e._v("Leave Feedback")])]),a("li",[a("a",{attrs:{href:"https://github.com/Lissy93/dashy/discussions"}},[e._v("Join the Discussion")])])]),a("p",{staticClass:"small-note"},[e._v("Please include the following info in your bug report:")]),a("a",{on:{click:function(t){e.showInfo=!e.showInfo}}},[e._v(e._s(e.showInfo?"Hide":"Show")+" system info")]),e.showInfo?a("div",{staticClass:"system-info"},[a("h4",[e._v("System Info")]),a("code",[a("b",[e._v("Dashy Version:")]),e._v(" V "+e._s(e.appVersion))]),a("br"),a("code",[a("b",[e._v("Browser:")]),e._v(" "+e._s(e.systemInfo.browser))]),a("br"),a("code",[a("b",[e._v("Is Mobile?")]),e._v(" "+e._s(e.systemInfo.isMobile?"Yes":"No"))]),a("br"),a("code",[a("b",[e._v("OS:")]),e._v(" "+e._s(e.systemInfo.os))]),a("br")]):e._e(),a("h3",[e._v("About")]),a("p",{staticClass:"about-text"},[e._v(" Documentation and Source Code available on "),a("a",{attrs:{href:"https://github.com/lissy93/dashy"}},[e._v("GitHub")])]),a("h3",[e._v("License")]),a("code",[e._v("Licensed under MIT X11. Copyright © 2021")])],1)])},ns=[],ss={name:"AppInfoModal",components:{AppVersion:Oa},data(){return{modalName:A["modalNames"].ABOUT_APP,appVersion:"1.5.3",systemInfo:this.getSystemInfo(),serviceWorkerInfo:"Checking...",showInfo:!1}},mounted(){setTimeout(()=>{this.serviceWorkerInfo=this.getSwStatus()},100)},methods:{getIsConfigValidStatus(){const e=Object({NODE_ENV:"production",VUE_APP_VERSION:"1.5.3",BASE_URL:"/"}).VUE_APP_CONFIG_VALID;return void 0===e?"Config validation status is missing":"Config is "+(e?"Valid":"Invalid")},getSwStatus(){const e=sessionStorage[A["sessionStorageKeys"].SW_STATUS],t=e?JSON.parse(e):{};let a="";return t.registered&&(a+="Service worker registered
"),t.ready&&(a+="Dashy is being served from service worker
"),t.cached&&(a+="Content has been cached for offline use
"),t.updateFound&&(a+="New content is downloading
"),t.updated&&(a+="New content is available; please refresh
"),t.offline&&(a+="No internet connection found. App is running in offline mode
"),t.error&&(a+="Error during service worker registration
"),t.devMode&&(a+="App running in dev mode, no need for service worker
"),0===a.length&&(a+="No service worker info available"),a},getSystemInfo(){const{userAgent:e}=navigator;let t="Unknown";-1!==e.indexOf("Win")?t="Windows":-1!==e.indexOf("Mac")?t="MacOS":-1!==e.indexOf("Android")?t="Android":-1!==e.indexOf("iPhone")?t="iOS":-1!==e.indexOf("Linux")?t="Linux":-1!==e.indexOf("X11")&&(t="UNIX");let a="Unknown";a=-1!==e.indexOf("Opera")?"Opera":-1!==e.indexOf("Chrome")?"Chrome":-1!==e.indexOf("Safari")?"Safari":-1!==e.indexOf("Firefox")?"Firefox":-1!==e.indexOf("MSIE")?"IE":"Unknown";const n=!!navigator.userAgent.match(/iphone|android|blackberry/gi)||!1;return{os:t,browser:a,userAgent:e,isMobile:n}}}},os=ss,is=(a("d636"),Object(v["a"])(os,as,ns,!1,null,"77ccbcae",null)),rs=is.exports,ls=a("5703"),cs=a.n(ls),us=a("5f32"),ds=a.n(us),_s={name:"SettingsContainer",props:{displayLayout:String,iconSize:String,externalThemes:Object,appConfig:Object,pageInfo:Object,sections:Array,modalOpen:Boolean},components:{SearchBar:Ae,ConfigLauncher:an,ThemeSelector:fn,LayoutSelector:En,ItemSizeSelector:Pn,AppButtons:Jn,KeyboardShortcutInfo:ts,AppInfoModal:rs,IconOpen:cs.a,IconClose:ds.a},inject:["visibleComponents"],methods:{userIsTypingSomething(e){this.$emit("user-is-searchin",e)},clearFilterInput(){this.$refs.SearchBar.clearFilterInput()},updateDisplayLayout(e){this.$emit("change-display-layout",e)},updateIconSize(e){this.$emit("change-icon-size",e)},modalChanged(e){this.$emit("change-modal-visibility",e)},getInitialTheme(){return this.appConfig.theme||""},logout(){nt(),this.$toasted.show("Logged Out"),setTimeout(()=>{location.reload(!0)},100)},isUserLoggedIn(){return!!localStorage[A["localStorageKeys"].USERNAME]},getUserThemes(){const e=this.appConfig.cssThemes||[];return"string"===typeof e?[e]:e},toggleSettingsVisibility(){this.settingsVisible=!this.settingsVisible,localStorage.setItem(A["localStorageKeys"].HIDE_SETTINGS,this.settingsVisible)},getSettingsVisibility(){return JSON.parse(localStorage[A["localStorageKeys"].HIDE_SETTINGS]||(this.visibleComponents||A["visibleComponents"]).settings)}},data(){return{settingsVisible:this.getSettingsVisibility(),searchVisible:(this.visibleComponents||A["visibleComponents"]).searchBar}}},ms=_s,gs=(a("fa2b"),Object(v["a"])(ms,ye,Ce,!1,null,"66dc3458",null)),hs=gs.exports,ps=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("Collapsable",{attrs:{title:e.title,icon:e.icon,uniqueKey:e.groupId,collapsed:e.displayData.collapsed,cols:e.displayData.cols,rows:e.displayData.rows,color:e.displayData.color,customStyles:e.displayData.customStyles}},[!e.items||e.items.length<1?a("div",{staticClass:"no-items"},[e._v(" No Items to Show Yet ")]):a("div",{class:"there-are-items "+(e.isGridLayout?"item-group-grid":""),style:e.gridStyle},[e._l(e.items,(function(t,n){return a("Item",{key:n+"_"+e.makeId(t.title),attrs:{id:n+"_"+e.makeId(t.title),url:t.url,title:t.title,description:t.description,icon:t.icon,target:t.target,color:t.color,backgroundColor:t.backgroundColor,statusCheckUrl:t.statusCheckUrl,statusCheckHeaders:t.statusCheckHeaders,itemSize:e.newItemSize,hotkey:t.hotkey,enableStatusCheck:e.shouldEnableStatusCheck(t.statusCheck),statusCheckInterval:e.getStatusCheckInterval()},on:{itemClicked:function(t){return e.$emit("itemClicked")},triggerModal:e.triggerModal}})})),a("div",{ref:"modalContainer"})],2),a("IframeModal",{ref:"iframeModal-"+e.groupId,attrs:{name:"iframeModal-"+e.groupId},on:{closed:function(t){return e.$emit("itemClicked")},modalChanged:e.modalChanged}})],1)},fs=[],bs=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"item-wrapper"},[a("a",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.getTooltipOptions(),expression:"getTooltipOptions()"}],class:"item "+(e.icon?"":"short")+" size-"+e.itemSize,style:"--open-icon: "+e.getUnicodeOpeningIcon()+"; "+e.customStyles,attrs:{href:"modal"!==e.target?e.url:"#",target:"newtab"===e.target?"_blank":"",rel:"noopener noreferrer",tabindex:"0",id:"link-"+e.id},on:{click:e.itemOpened,mouseup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"right",39,t.key,["Right","ArrowRight"])||"button"in t&&2!==t.button?null:e.openContextMenu.apply(null,arguments)},contextmenu:function(e){e.preventDefault()}}},[a("div",{class:"tile-title "+(e.icon?"":"bounce"),attrs:{id:"tile-"+e.id}},[a("span",{staticClass:"text"},[e._v(e._s(e.title))]),a("p",{staticClass:"description"},[e._v(e._s(e.description))])]),a("Icon",{staticClass:"bounce",style:e.customStyles,attrs:{icon:e.icon,url:e.url,size:e.itemSize,color:e.color}}),a("ItemOpenMethodIcon",{staticClass:"opening-method-icon",attrs:{isSmall:!e.icon||"small"===e.itemSize,openingMethod:e.target,position:"medium"===e.itemSize?"bottom right":"top right",hotkey:e.hotkey}}),e.enableStatusCheck?a("StatusIndicator",{staticClass:"status-indicator",attrs:{statusSuccess:e.statusResponse?e.statusResponse.successStatus:void 0,statusText:e.statusResponse?e.statusResponse.message:void 0}}):e._e()],1),a("ContextMenu",{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.closeContextMenu,expression:"closeContextMenu"}],attrs:{show:e.contextMenuOpen,posX:e.contextPos.posX,posY:e.contextPos.posY,id:"context-menu-"+e.id},on:{contextItemClick:e.contextItemClick}})],1)},ks=[],ws=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"item-icon"},["font-awesome"===e.iconType?a("i",{class:e.icon+" "+e.size}):"emoji"===e.iconType?a("i",{class:"emoji-icon "+e.size},[e._v(e._s(e.getEmoji(e.iconPath)))]):e.icon?a("img",{class:"tile-icon "+e.size+" "+(e.broken?"broken":""),attrs:{src:e.iconPath},on:{error:e.imageNotFound}}):e._e(),e.broken?a("BrokenImage",{staticClass:"missing-image"}):e._e()],1)},vs=[],ys=a("9635"),Cs=a.n(ys),Ss=a("e0a2"),Is=a.n(Ss),xs=a("492d"),Ts={name:"Icon",inject:["config"],props:{icon:String,url:String,size:String},components:{BrokenImage:Cs.a},computed:{iconType:function(){return this.determineImageType(this.icon)},iconPath:function(){return this.getIconPath(this.icon,this.url)}},data(){return{broken:!1}},methods:{isUrl(e){const t=new RegExp(/(http|https):\/\/(\w+:{0,1}\w*)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%!\-/]))?/);return t.test(e)},isImage(e){const t=/(?:\.([^.]+))?$/,a=["png","jpg"],n=t.exec(e);return n.length>=1&&a.includes(n[1])},isEmoji(e){return Is.a.test(e)&&e.match(/./gu).length?{isEmoji:!0,emojiType:"glyph"}:new RegExp(/^:.*:$/).test(e)?{isEmoji:!0,emojiType:"shortcode"}:"U+"===e.substring(0,2)&&7===e.length?{isEmoji:!0,emojiType:"unicode"}:{isEmoji:!1,emojiType:""}},getEmoji(e){const{emojiType:t}=this.isEmoji(e);if("shortcode"===t){if(xs[e])return xs[e]}else if("unicode"===t)return String.fromCodePoint(parseInt(e.substr(2),16));return e},getFavicon(e){if(this.shouldUseDefaultFavicon(e)){const t=e.split("/");if(t.length>=2)return`${t[0]}/${t[1]}/${t[2]}/favicon.ico`}else if(e.includes("http")){const t=this.getHostName(e),a=this.config.appConfig.faviconApi||A["faviconApi"],n=A["faviconApiEndpoints"][a];return n.replace("$URL",t)}return""},shouldUseDefaultFavicon(e){const t=/(127\.)|(192\.168\.)|(10\.)|(172\.1[6-9]\.)|(172\.2[0-9]\.)|(172\.3[0-1]\.)|(::1$)|([fF][cCdD])|(localhost)/;return t.test(e)||"local"===this.config.appConfig.faviconApi},getLocalImagePath(e){return"/item-icons/"+e},getGenerativeIcon(e){return`https://ipsicon.io/${this.getHostName(e)}.svg`},getIconPath(e,t){switch(this.determineImageType(e)){case"url":return e;case"img":return this.getLocalImagePath(e);case"favicon":return this.getFavicon(t);case"generative":return this.getGenerativeIcon(t);case"svg":return e;case"emoji":return e;default:return""}},determineImageType(e){let t="";return t=e?e.endsWith(".svg")?"svg":this.isUrl(e)?"url":this.isImage(e)?"img":e.includes("fa-")?"font-awesome":"favicon"===e?"favicon":"generative"===e?"generative":this.isEmoji(e).isEmoji?"emoji":"none":"none",t},getHostName(e){try{return new URL(e).hostname}catch(t){return e}},imageNotFound(){this.broken=!0,rn(`The path to '${this.icon}' could not be resolved`)}}},Os=Ts,Es=(a("de40"),Object(v["a"])(Os,ws,vs,!1,null,null,null)),As=Es.exports,$s=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("div",{class:e.makeClass(e.position,e.isSmall,e.isTransparent)},["newtab"===e.openingMethod?a("NewTabOpenIcon"):"sametab"===e.openingMethod?a("SameTabOpenIcon"):"modal"===e.openingMethod?a("IframeOpenIcon"):"workspace"===e.openingMethod?a("WorkspaceOpenIcon"):e._e()],1),e.hotkey?a("div",{class:"hotkey-denominator "+e.makeClass(e.position,e.isSmall,e.isTransparent)},[e._v(" "+e._s(e.hotkey)+" ")]):e._e()])},Ls=[],zs=a("237e"),js=a.n(zs),Ns=a("2352"),Ms=a.n(Ns),Bs=a("1946"),Vs=a.n(Bs),Ds=a("3b49"),Hs=a.n(Ds),Ps={name:"ItemOpenMethodIcon",props:{openingMethod:String,isSmall:Boolean,position:String,isTransparent:Boolean,hotkey:Number},methods:{makeClass(e="top right",t=!1,a=!1){return`opening-method-icon\n ${e||"top right"}\n ${t?"short":""}\n ${a?"transparent":""}`}},components:{NewTabOpenIcon:js.a,SameTabOpenIcon:Ms.a,IframeOpenIcon:Vs.a,WorkspaceOpenIcon:Hs.a}},Us=Ps,Rs=(a("b5c9"),Object(v["a"])(Us,$s,Ls,!1,null,"b0684bc4",null)),Ks=Rs.exports,Fs=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{directives:[{name:"tooltip",rawName:"v-tooltip",value:{content:e.statusText||e.otherStatusText,classes:["status-tooltip","tip-"+e.color()]},expression:"{\n content: statusText || otherStatusText, classes: ['status-tooltip', `tip-${color()}`] }"}],staticClass:"indicator",on:{click:function(t){return e.showToast()}}},[a("div",{class:"dot dot-"+e.color()},[e._m(0)])])},Ws=[function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("span",[a("span")])}],qs={name:"StatusIndicator",props:{statusText:String,statusSuccess:Boolean},methods:{color(){switch(this.statusSuccess){case void 0:return new Date-this.startTime>2e3?"grey":"yellow";case!0:return"green";default:return"red"}}},data(){return{startTime:new Date,otherStatusText:"Checking..."}},mounted(){setTimeout(()=>{this.statusText||(this.otherStatusText="Request timed out")},2e3)}},Gs=qs,Js=(a("e697"),a("45d4"),Object(v["a"])(Gs,Fs,Ws,!1,null,"46972ad8",null)),Ys=Js.exports,Xs=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("transition",{attrs:{name:"slide"}},[e.show&&e.menuEnabled?a("div",{staticClass:"context-menu",style:e.posX&&e.posY?"top:"+e.posY+"px;left:"+e.posX+"px;":""},[a("ul",[a("li",{on:{click:function(t){return e.launch("sametab")}}},[a("SameTabOpenIcon"),a("span",[e._v("Open in Current Tab")])],1),a("li",{on:{click:function(t){return e.launch("newtab")}}},[a("NewTabOpenIcon"),a("span",[e._v("Open in New Tab")])],1),a("li",{on:{click:function(t){return e.launch("modal")}}},[a("IframeOpenIcon"),a("span",[e._v("Open in Pop-Up Modal")])],1),a("li",{on:{click:function(t){return e.launch("workspace")}}},[a("WorkspaceOpenIcon"),a("span",[e._v("Open in Workspace View")])],1)])]):e._e()])},Zs=[],Qs={name:"ContextMenu",inject:["config"],components:{SameTabOpenIcon:Ms.a,NewTabOpenIcon:js.a,IframeOpenIcon:Vs.a,WorkspaceOpenIcon:Hs.a},props:{posX:Number,posY:Number,show:Boolean},data(){return{menuEnabled:!this.isMenuDisabled()}},methods:{launch(e){this.$emit("contextItemClick",e)},isMenuDisabled(){return!(!this.config||!this.config.appConfig)&&!!this.config.appConfig.disableContextMenu}}},eo=Qs,to=(a("6850"),Object(v["a"])(eo,Xs,Zs,!1,null,null,null)),ao=to.exports,no={name:"Item",props:{id:String,title:String,subtitle:String,description:String,icon:String,color:String,backgroundColor:String,url:String,hotkey:Number,target:{type:String,default:"newtab",validator:e=>-1!==["newtab","sametab","modal","workspace"].indexOf(e)},itemSize:String,enableStatusCheck:Boolean,statusCheckHeaders:Object,statusCheckUrl:String,statusCheckInterval:Number},data(){return{contextMenuOpen:!1,getId:this.id,customStyles:{color:this.color,background:this.backgroundColor},statusResponse:void 0,contextPos:{posX:void 0,posY:void 0}}},components:{Icon:As,ItemOpenMethodIcon:Ks,StatusIndicator:Ys,ContextMenu:ao},methods:{itemOpened(e){e.altKey||"modal"===this.target?(e.preventDefault(),this.$emit("triggerModal",this.url)):this.$emit("itemClicked")},openContextMenu(e){this.contextMenuOpen=!this.contextMenuOpen,e&&window&&(this.contextPos={posX:e.clientX+window.pageXOffset,posY:e.clientY+window.pageYOffset})},closeContextMenu(){this.contextMenuOpen=!1},getTooltipOptions(){const e=this.hotkey?`\nPress '${this.hotkey}' to launch`:"";return{disabled:!this.description,content:this.description+e,trigger:"hover focus",hideOnTargetClick:!0,html:!1,placement:this.statusResponse?"left":"auto",delay:{show:600,hide:200},classes:"item-description-tooltip"}},getUnicodeOpeningIcon(){switch(this.target){case"newtab":return'"\\f360"';case"sametab":return'"\\f24d"';case"modal":return'"\\f2d0"';default:return'"\\f054"'}},checkWebsiteStatus(){this.statusResponse=void 0;const e=Object({NODE_ENV:"production",VUE_APP_VERSION:"1.5.3",BASE_URL:"/"}).VUE_APP_DOMAIN||window.location.origin,t=this.statusCheckUrl||this.url,a=this.statusCheckHeaders||{},n=`${e}/ping?url=${t}`;it.a.get(n,{headers:a}).then(e=>{e.data&&(this.statusResponse=e.data)}).catch(()=>{this.statusResponse={statusText:"Failed to make request",statusSuccess:!1}})},contextItemClick(e){const{url:t}=this;switch(this.contextMenuOpen=!1,e){case"newtab":window.open(t,"_blank");break;case"sametab":window.open(t,"_self");break;case"modal":this.$emit("triggerModal",t);break;case"workspace":ki.push({name:"workspace",query:{url:t}});break;default:window.open(t,"_blank")}}},mounted(){this.enableStatusCheck&&this.checkWebsiteStatus(),this.statusCheckInterval>0&&setInterval(this.checkWebsiteStatus,1e3*this.statusCheckInterval)}},so=no,oo=(a("826e"),a("f719"),Object(v["a"])(so,bs,ks,!1,null,null,null)),io=oo.exports,ro=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{class:"collapsable "+e.checkSpanNum(e.cols,"col")+" "+e.checkSpanNum(e.rows,"row"),style:(e.color?"background: "+e.color:"")+"; "+e.sanitizeCustomStyles(e.customStyles)+";"},[a("input",{staticClass:"toggle",attrs:{id:"collapsible-"+e.uniqueKey,type:"checkbox",tabIndex:"-1"},domProps:{checked:e.getCollapseState()},on:{change:e.collapseChanged}}),a("label",{staticClass:"lbl-toggle",attrs:{for:"collapsible-"+e.uniqueKey,tabindex:"-1"}},[e.icon?a("Icon",{staticClass:"section-icon",attrs:{icon:e.icon,size:"small",url:e.title}}):e._e(),a("h3",[e._v(e._s(e.title))])],1),a("div",{staticClass:"collapsible-content"},[a("div",{staticClass:"content-inner"},[e._t("default")],2)])])},lo=[],co={name:"CollapsableContainer",props:{uniqueKey:String,title:String,icon:String,collapsed:Boolean,cols:Number,rows:Number,color:String,customStyles:String},components:{Icon:As},methods:{checkSpanNum(e,t){const a=4;let n=/^\d*$/.test(e)?parseInt(e,10):1;return n=n>a?a:n,`${t}-${n}`},sanitizeCustomStyles(e){return e?e.replace(/[^a-zA-Z0-9- :;.]/g,""):""},initialiseStorage(){const e=()=>localStorage.setItem(A["localStorageKeys"].COLLAPSE_STATE,JSON.stringify({}));localStorage[A["localStorageKeys"].COLLAPSE_STATE]||e();try{JSON.parse(localStorage[A["localStorageKeys"].COLLAPSE_STATE])}catch{e()}return JSON.parse(localStorage[A["localStorageKeys"].COLLAPSE_STATE])},getCollapseState(){const e=this.initialiseStorage();let t=!this.collapsed;return void 0!==e[this.uniqueKey]&&(t=e[this.uniqueKey]),t},setCollapseState(e,t){const a=JSON.parse(localStorage[A["localStorageKeys"].COLLAPSE_STATE]);a[e]=t,localStorage.setItem(A["localStorageKeys"].COLLAPSE_STATE,JSON.stringify(a))},collapseChanged(e){this.initialiseStorage(),this.setCollapseState(this.uniqueKey.toString(),e.srcElement.checked)}}},uo=co,_o=(a("eb58"),Object(v["a"])(uo,ro,lo,!1,null,"ac1beaa4",null)),mo=_o.exports,go=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("modal",{attrs:{name:e.name,resizable:!0,width:"80%",height:"80%",classes:"dashy-modal"},on:{closed:function(t){return e.modalClosed()}}},[a("div",{attrs:{slot:"top-right"},on:{click:function(t){return e.hide()}},slot:"top-right"},[e._v("Close")]),a("a",{staticClass:"close-button",attrs:{title:"Close"},on:{click:function(t){return e.hide()}}},[e._v("x")]),e.url?a("iframe",{staticClass:"frame",attrs:{src:e.url},on:{keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.close.apply(null,arguments)}}}):a("div",{staticClass:"no-url"},[e._v("No URL Specified")])])},ho=[],po={name:"IframeModal",props:{name:String},data:()=>({url:"#"}),methods:{show(e){this.url=e,this.$modal.show(this.name),this.$emit("modalChanged",!0)},hide(){this.$modal.hide(this.name)},modalClosed(){this.$emit("modalChanged",!1)}}},fo=po,bo=(a("eda6"),Object(v["a"])(fo,go,ho,!1,null,null,null)),ko=bo.exports,wo={name:"ItemGroup",inject:["config"],props:{groupId:String,title:String,icon:String,displayData:Object,items:Array,itemSize:String,modalOpen:Boolean},components:{Collapsable:mo,Item:io,IframeModal:ko},computed:{newItemSize(){return this.displayData.itemSize||this.itemSize},isGridLayout(){return"grid"===this.displayData.sectionLayout||!(!this.displayData.itemCountX&&!this.displayData.itemCountY)},gridStyle(){let e="";return e+=this.displayData.itemCountX?`grid-template-columns: repeat(${this.displayData.itemCountX}, 1fr);`:"",e+=this.displayData.itemCountY?`grid-template-rows: repeat(${this.displayData.itemCountY}, 1fr);`:"",e}},methods:{makeId(e){return e.replace(/\s+/g,"-").replace(/[^a-zA-Z ]/g,"").toLowerCase()},triggerModal(e){this.$refs["iframeModal-"+this.groupId].show(e)},modalChanged(e){this.$emit("change-modal-visibility",e)},shouldEnableStatusCheck(e){const t=this.config.appConfig.statusCheck||!1;return void 0!==e?e:t},getStatusCheckInterval(){let e=this.config.appConfig.statusCheckInterval;return e?(e>60&&(e=60),e<1&&(e=0),e):0}}},vo=wo,yo=(a("196f"),Object(v["a"])(vo,ps,fs,!1,null,"cce3e8c4",null)),Co=yo.exports,So={name:"home",props:{sections:Array,appConfig:Object,pageInfo:Object},components:{SettingsContainer:hs,ItemGroup:Co},data:()=>({searchValue:"",layout:"",itemSizeBound:"",modalOpen:!1}),computed:{layoutOrientation:{get(){return this.appConfig.layout||$.a.layout},set:function(e){localStorage.setItem(A["localStorageKeys"].LAYOUT_ORIENTATION,e),this.layout=e}},iconSize:{get(){return this.appConfig.iconSize||$.a.iconSize},set:function(e){localStorage.setItem(A["localStorageKeys"].ICON_SIZE,e),this.itemSizeBound=e}}},methods:{checkTheresData(e){const t=localStorage[A["localStorageKeys"].CONF_SECTIONS];return e&&e.length>=1||t&&t.length>=1},getSections(e){const t=localStorage[A["localStorageKeys"].CONF_SECTIONS];if(t){const e=JSON.parse(t);if(e.length>=1)return e}return e},searching(e){this.searchValue=e||""},finishedSearching(){this.$refs.filterComp.clearFilterInput()},getDomainFromUrl(e){if(!e)return"";const t=/^(?:https?:\/\/)?(?:w{3}\.)?([a-z\d.-]+)\.(?:[a-z.]{2,10})(?:[/\w.-]*)*/,a=e.match(t);return a?a[1]:""},filterTiles(e){return e?e.filter(e=>{const{title:t,description:a,provider:n,url:s}=e,o=this.searchValue.toLowerCase();return t&&t.toLowerCase().includes(o)||n&&n.toLowerCase().includes(o)||a&&a.toLowerCase().includes(o)||this.getDomainFromUrl(s).includes(o)}):[]},getDisplayData(e){return e.displayData?e.displayData:{}},setLayoutOrientation(e){this.layoutOrientation=e},setItemSize(e){this.iconSize=e},updateModalVisibility(e){this.modalOpen=e},getExternalCSSLinks(){const e={};if(this.appConfig&&this.appConfig.externalStyleSheet){const t=this.appConfig.externalStyleSheet;Array.isArray(t)?t.forEach((t,a)=>{e["External Stylesheet "+(a+1)]=t}):e["External Stylesheet"]=this.appConfig.externalStyleSheet}return e.Default="#",e},checkIfFontAwesomeNeeded(){let e=!1;if(!this.sections)return!1;this.sections.forEach(t=>{t.icon&&t.icon.includes("fa-")&&(e=!0),t.items.forEach(t=>{t.icon&&t.icon.includes("fa-")&&(e=!0)})});const t=localStorage[A["localStorageKeys"].THEME];return["material","material-dark"].includes(t)&&(e=!0),e},initiateFontAwesome(){if(this.appConfig.enableFontAwesome||this.checkIfFontAwesomeNeeded()){const e=document.createElement("script"),t=this.appConfig.fontAwesomeKey||$.a.fontAwesomeKey;e.setAttribute("src",`https://kit.fontawesome.com/${t}.js`),document.head.appendChild(e)}},checkIfResults(){if(this.sections){let e=!0;return this.sections.forEach(t=>{this.filterTiles(t.items).length>0&&(e=!1)}),e}return!1},getBackgroundImage(){return this.appConfig&&this.appConfig.backgroundImg?`background: url('${this.appConfig.backgroundImg}');background-size:cover;`:""}},mounted(){this.initiateFontAwesome(),this.layout=this.layoutOrientation,this.itemSizeBound=this.iconSize}},Io=So,xo=(a("1d6b"),Object(v["a"])(Io,we,ve,!1,null,"50d025ad",null)),To=xo.exports,Oo=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"login-page"},[a("form",{staticClass:"login-form"},[a("h2",{staticClass:"login-title"},[e._v(e._s(e.$t("login.title")))]),a("Input",{staticClass:"login-field username",attrs:{type:"text",label:e.$t("login.username-label")},model:{value:e.username,callback:function(t){e.username=t},expression:"username"}}),a("Input",{staticClass:"login-field password",attrs:{type:"password",label:e.$t("login.password-label")},model:{value:e.password,callback:function(t){e.password=t},expression:"password"}}),a("label",[e._v(e._s(e.$t("login.remember-me-label")))]),a("v-select",{staticClass:"login-time-dropdown",attrs:{selectOnTab:!0,options:e.dropDownMenu},model:{value:e.timeout,callback:function(t){e.timeout=t},expression:"timeout"}}),a("Button",{staticClass:"login-button",attrs:{click:e.submitLogin}},[e._v(" "+e._s(e.$t("login.login-button"))+" ")]),a("transition",{attrs:{name:"bounce"}},[a("p",{directives:[{name:"show",rawName:"v-show",value:e.message,expression:"message"}],class:"login-error-message "+e.status},[e._v(e._s(e.message))])])],1)])},Eo=[],Ao={name:"login",props:{appConfig:Object},data(){return{username:"",password:"",message:"",status:"waiting",timeout:{label:this.$t("login.remember-me-never"),time:0},dropDownMenu:[{label:this.$t("login.remember-me-never"),time:0},{label:this.$t("login.remember-me-hour"),time:144e5},{label:this.$t("login.remember-me-day"),time:864e5},{label:this.$t("login.remember-me-week"),time:6048e5}]}},components:{Button:yt,Input:Kt},methods:{submitLogin(){const e=this.timeout?this.timeout.time:0,t=tt(this.username,this.password,this.appConfig.auth||[]);this.message=t.msg,this.status=t.correct?"success":"error",t.correct&&(at(this.username,this.password,e),setTimeout(()=>{ki.push({path:"/"})},250))},setTheme(){const e=localStorage[A["localStorageKeys"].THEME]||$.a.theme;document.getElementsByTagName("html")[0].setAttribute("data-theme",e)}},created(){this.setTheme()}},$o=Ao,Lo=(a("206d"),Object(v["a"])($o,Oo,Eo,!1,null,null,null)),zo=Lo.exports,jo=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"work-space"},[a("SideBar",{attrs:{sections:e.sections},on:{"launch-app":e.launchApp}}),a("WebContent",{attrs:{url:e.url}})],1)},No=[],Mo=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("nav",{staticClass:"side-bar"},e._l(e.sections,(function(t,n){return a("div",{key:n},[a("div",{staticClass:"side-bar-item-container",on:{click:function(t){return e.openSection(n)}}},[a("SideBarItem",{staticClass:"item",attrs:{icon:t.icon,title:t.name}})],1),a("transition",{attrs:{name:"slide"}},[e.isOpen[n]?a("SideBarSection",{attrs:{items:t.items},on:{"launch-app":e.launchApp}}):e._e()],1)],1)})),0)},Bo=[],Vo=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip,expression:"tooltip"}],class:"side-bar-item "+(e.icon?"w-icon":"text-only"),on:{click:function(t){return e.itemClicked()}}},[e.icon?a("Icon",{attrs:{icon:e.icon,size:"small",url:e.url}}):a("p",{staticClass:"small-title"},[e._v(e._s(e.title))])],1)},Do=[],Ho={name:"SideBarItem",inject:["config"],props:{icon:String,title:String,url:String,click:Function},components:{Icon:As},methods:{itemClicked(){this.url&&this.$emit("launch-app",this.url)}},data(){return{tooltip:{disabled:!this.title,content:this.title,trigger:"hover focus",hideOnTargetClick:!0,html:!1,placement:"right-start",delay:{show:800,hide:1e3}}}}},Po=Ho,Uo=(a("5e61"),Object(v["a"])(Po,Vo,Do,!1,null,"d979f4fe",null)),Ro=Uo.exports,Ko=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"sub-side-bar"},e._l(e.items,(function(t,n){return a("div",{key:n},[a("SideBarItem",{staticClass:"item",attrs:{icon:t.icon,title:t.title,url:t.url},on:{"launch-app":e.launchApp}})],1)})),0)},Fo=[],Wo={name:"SideBarSection",inject:["config"],props:{items:Array},components:{SideBarItem:Ro},methods:{launchApp(e){this.$emit("launch-app",e)}}},qo=Wo,Go=(a("cf1c"),Object(v["a"])(qo,Ko,Fo,!1,null,"56ddb963",null)),Jo=Go.exports,Yo={name:"SideBar",inject:["config"],props:{sections:Array},data(){return{isOpen:new Array(this.sections.length).fill(!1)}},components:{SideBarItem:Ro,SideBarSection:Jo},methods:{openSection(e){this.isOpen=this.isOpen.map((t,a)=>a===e&&!t)},launchApp(e){this.$emit("launch-app",e)}}},Xo=Yo,Zo=(a("85e1"),Object(v["a"])(Xo,Mo,Bo,!1,null,"31476576",null)),Qo=Zo.exports,ei=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"web-content"},[a("iframe",{attrs:{src:e.url}})])},ti=[],ai={name:"WebContent",props:{url:String}},ni=ai,si=(a("44e9"),Object(v["a"])(ni,ei,ti,!1,null,"a2564c04",null)),oi=si.exports,ii={name:"Workspace",props:{sections:Array,appConfig:Object},data:()=>({url:"",GetTheme:ln,ApplyLocalTheme:un,ApplyCustomVariables:cn}),components:{SideBar:Qo,WebContent:oi},methods:{launchApp(e){this.url=e},setTheme(){const e=this.GetTheme();this.ApplyLocalTheme(e),this.ApplyCustomVariables(e)},initiateFontAwesome(){const e=document.createElement("script"),t=this.appConfig.fontAwesomeKey||$.a.fontAwesomeKey;e.setAttribute("src",`https://kit.fontawesome.com/${t}.js`),document.head.appendChild(e)},repositionFooter(){document.getElementsByTagName("footer")[0].style.position="fixed"}},mounted(){const e=this.$route;e.query&&e.query.url&&(this.url=decodeURI(e.query.url)),this.setTheme(),this.initiateFontAwesome()}},ri=ii,li=(a("6423"),Object(v["a"])(ri,jo,No,!1,null,"62772a5b",null)),ci=li.exports,ui=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("pre",[a("code",[e._v(e._s(e.jsonParser(e.config)))])])},di=[],_i={name:"DownloadConfig",props:{sections:Array,appConfig:Object,pageInfo:Object},data(){return{config:{appConfig:this.appConfig,pageInfo:this.pageInfo,sections:this.sections},jsonParser:Fe}}},mi=_i,gi=(a("6cd5"),Object(v["a"])(mi,ui,di,!1,null,"33cd2d90",null)),hi=gi.exports;n["a"].use(ke["a"]);const pi=()=>{const e=ne.appConfig.auth;return!e||0===e.length||et(e)},fi=new ke["a"]({routes:[{path:"/",name:"home",component:To,props:ne,meta:{title:ne.pageInfo.title||"Home Page",metaTags:A["metaTagData"]}},{path:"/workspace",name:"workspace",component:ci,props:ne,meta:{title:ne.pageInfo.title||"Dashy Workspace",metaTags:A["metaTagData"]}},{path:"/login",name:"login",component:zo,props:{appConfig:ne.appConfig},beforeEnter:(e,t,a)=>{pi()&&fi.push({path:"/"}),a()}},{path:"/about",name:"about",component:()=>a.e("about").then(a.bind(null,"f820"))},{path:"/download",name:"download",component:hi,props:ne,meta:{title:ne.pageInfo.title||"Download Dashy Config",metaTags:A["metaTagData"]}}]});fi.beforeEach((e,t,a)=>{"login"===e.name||pi()?a():a({name:"login"})});const bi="Dashy";fi.afterEach(e=>{n["a"].nextTick(()=>{document.title=e.meta.title||bi})});var ki=fi,wi=a("9483");const vi=e=>{const t={ready:!1,registered:!1,cached:!1,updateFound:!1,updated:!1,offline:!1,error:!1,devMode:!1,disabledByUser:!1},a=sessionStorage[A["sessionStorageKeys"].SW_STATUS],n=a?JSON.parse(a):t;try{const t={...n,...e};sessionStorage.setItem(A["sessionStorageKeys"].SW_STATUS,JSON.stringify(t))}catch(s){console.warn("Error setting SW data",s)}},yi=()=>{let e=!0;return J.a&&J.a.appConfig&&J.a.appConfig.disableServiceWorker&&(e=!1,vi({disabledByUser:!0})),e},Ci=()=>{yi()&&Object(wi["a"])("/service-worker.js",{ready(){vi({ready:!0}),console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered(){vi({registered:!0}),console.log("Service worker has been registered.")},cached(){vi({cached:!0}),console.log("Content has been cached for offline use.")},updatefound(){vi({updateFound:!0}),console.log("New content is downloading.")},updated(){vi({updated:!0}),console.log("New content is available; please refresh.")},offline(){vi({offline:!0}),console.log("No internet connection found. App is running in offline mode.")},error(e){vi({error:!0}),console.error("Error during service worker registration:",e)}})};var Si=Ci;const Ii=[];function xi(e,t,a){const{target:n}=e;t===n||t.contains(n)||a(e)}var Ti={bind(e,t){const a=e;a.dataset.outsideClickIndex=Ii.length;const n=t.value,s=e=>{xi(e,a,n)};document.addEventListener("click",s),document.addEventListener("touchstart",s),Ii.push(s)},unbind(e){if(!e.dataset)return;const t=e.dataset.outsideClickIndex,a=Ii[t];document.removeEventListener("click",a),Ii.splice(t,1)}};const Oi=(e,t)=>{const n=(new Y).appConfig()||{};if(n.enableErrorReporting){const n=a("2075"),{Integrations:s}=a("688d"),o="https://3138ea85f15a4fa883a5b27a4dc8ee28@o937511.ingest.sentry.io/5887934";n.init({Vue:e,dsn:o,integrations:[new s.BrowserTracing({routingInstrumentation:n.vueRouterInstrumentation(t)})],tracesSampleRate:1})}};var Ei=Oi;n["a"].use(s["a"]),n["a"].use(o["a"]),n["a"].use(r.a),n["a"].use(u["a"]),n["a"].use(_.a,A["toastedOptions"]),n["a"].component("v-select",c.a),n["a"].directive("clickOutside",Ti),n["a"].config.productionTip=!1;const Ai=new s["a"]({locale:A["language"],fallbackLocale:A["language"],messages:ae});Si(),Ei(n["a"],ki);const $i=e=>e(be);new n["a"]({router:ki,render:$i,i18n:Ai}).$mount("#app")},5703:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-sliders-h fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"sliders-h",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M496 384H160v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h80v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h336c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160h-80v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h336v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h80c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160H288V48c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16C7.2 64 0 71.2 0 80v32c0 8.8 7.2 16 16 16h208v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h208c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16z"}})]))}}},"570c":function(e,t,a){"use strict";a("f94d")},"570d":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-th-list fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"th-list",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M149.333 216v80c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24v-80c0-13.255 10.745-24 24-24h101.333c13.255 0 24 10.745 24 24zM0 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H24c-13.255 0-24 10.745-24 24zM125.333 32H24C10.745 32 0 42.745 0 56v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24zm80 448H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zm-24-424v80c0 13.255 10.745 24 24 24H488c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24zm24 264H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24z"}})]))}}},"58c1":function(e,t,a){},"5c0b":function(e,t,a){"use strict";a("9c0c")},"5cc6":function(e,t){e.exports={pageInfo:{title:"Dashy",description:"",navLinks:[{title:"Home",path:"/"},{title:"Source",path:"https://github.com/Lissy93/dashy"}],footerText:""},appConfig:{},language:"en",iconSize:"medium",layout:"auto",theme:"default",fontAwesomeKey:"0821c65656",faviconApi:"faviconkit",builtInThemes:["callisto","thebe","dracula","material","material-dark","colorful","nord","nord-frost","minimal-dark","minimal-light","oblivion","matrix","matrix-red","hacker-girl","raspberry-jam","bee","tiger","blue-purple","material-original","material-dark-original","cyberpunk","vaporware","high-contrast-dark","high-contrast-light"],visibleComponents:{pageTitle:!0,navigation:!0,searchBar:!0,settings:!0,footer:!0},localStorageKeys:{LANGUAGE:"language",HIDE_WELCOME_BANNER:"hideWelcomeHelpers",LAYOUT_ORIENTATION:"layoutOrientation",COLLAPSE_STATE:"collapseState",ICON_SIZE:"iconSize",THEME:"theme",CUSTOM_COLORS:"customColors",CONF_SECTIONS:"confSections",PAGE_INFO:"pageInfo",APP_CONFIG:"appConfig",BACKUP_ID:"backupId",BACKUP_HASH:"backupHash",HIDE_SETTINGS:"hideSettings",USERNAME:"username"},cookieKeys:{AUTH_TOKEN:"authenticationToken"},sessionStorageKeys:{SW_STATUS:"serviceWorkerStatus"},modalNames:{CONF_EDITOR:"CONF_EDITOR",CLOUD_BACKUP:"CLOUD_BACKUP",REBUILD_APP:"REBUILD_APP",THEME_MAKER:"THEME_MAKER",ABOUT_APP:"ABOUT_APP",LANG_SWITCHER:"LANG_SWITCHER"},topLevelConfKeys:{PAGE_INFO:"pageInfo",APP_CONFIG:"appConfig",SECTIONS:"sections"},mainCssVars:["primary","background","background-darker"],splashScreenTime:1900,metaTagData:[{name:"description",content:"A simple static homepage for you're server"}],toastedOptions:{position:"bottom-center",duration:2500,keepOnHover:!0,className:"toast-message",iconPack:"fontawesome"},backupEndpoint:"https://dashy-sync-service.as93.net",faviconApiEndpoints:{mcapi:"https://eu.mc-api.net/v3/server/favicon/$URL",clearbit:"https://logo.clearbit.com/$URL",faviconkit:"https://api.faviconkit.com/$URL/64",google:"https://www.google.com/s2/favicons?sz=128&domain_url=$URL",allesedv:"https://f1.allesedv.com/128/$URL",webmasterapi:"https://api.webmasterapi.com/v1/favicon/yEwx0ZFs0CSPshHq/$URL"},swatches:[["#eb5cad","#985ceb","#5346f3","#5c90eb"],["#5cdfeb","#00CCB4","#5ceb8d","#afeb5c"],["#eff961","#ebb75c","#eb615c","#eb2d6c"],["#060913","#141b33","#1c2645","#263256"],["#2b2d42","#1a535c","#372424","#312437"],["#f5f5f5","#d9d9d9","#bfbfbf","#9a9a9a"],["#636363","#363636","#313941","#0d0d0d"]]}},"5dbe":function(e,t,a){"use strict";a("fae5")},"5e61":function(e,t,a){"use strict";a("b315")},"5f32":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-times-circle fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"times-circle",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm101.8-262.2L295.6 256l62.2 62.2c4.7 4.7 4.7 12.3 0 17l-22.6 22.6c-4.7 4.7-12.3 4.7-17 0L256 295.6l-62.2 62.2c-4.7 4.7-12.3 4.7-17 0l-22.6-22.6c-4.7-4.7-4.7-12.3 0-17l62.2-62.2-62.2-62.2c-4.7-4.7-4.7-12.3 0-17l22.6-22.6c4.7-4.7 12.3-4.7 17 0l62.2 62.2 62.2-62.2c4.7-4.7 12.3-4.7 17 0l22.6 22.6c4.7 4.7 4.7 12.3 0 17z"}})]))}}},6266:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:[i,r],style:[l,c],attrs:Object.assign({xmlns:"http://www.w3.org/2000/svg",width:"100",height:"100",preserveAspectRatio:"xMidYMid"},u),...d},o.concat([a("defs",[a("clipPath",{attrs:{id:"a"}},[a("path",{attrs:{d:"M20 0h60v100H20z"}})])]),a("path",{attrs:{fill:"none",stroke:"var(--primary, #00af87)","stroke-width":"6","stroke-linecap":"round","stroke-linejoin":"round","stroke-miterlimit":"10","clip-path":"url(#a)",d:"M90 76.7V28.3c0-2.7-2.2-5-5-5h-3.4c-2.7 0-5 2.2-5 5v43.4c0 2.7-2.2 5-5 5h-3.4c-2.7 0-5-2.2-5-5V28.3c0-2.7-2.2-5-5-5H55c-2.7 0-5 2.2-5 5v43.4c0 2.7-2.2 5-5 5h-3.4c-2.7 0-5-2.2-5-5V28.3c0-2.7-2.2-5-5-5h-3.4c-2.7 0-5 2.2-5 5v43.4c0 2.7-2.2 5-5 5H15c-2.7 0-5-2.2-5-5V23.3"}},[a("animateTransform",{attrs:{attributeName:"transform",type:"translate",repeatCount:"indefinite",dur:"1.4925373134328357s",values:"-20 0;7 0",keyTimes:"0;1"}}),a("animate",{attrs:{attributeName:"stroke-dasharray",repeatCount:"indefinite",dur:"1.4925373134328357s",values:"0 72 125 232;0 197 125 233",keyTimes:"0;1"}})])]))}}},6423:function(e,t,a){"use strict";a("2143")},6504:function(e,t,a){},6780:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-cloud-upload-alt fa-w-20",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"cloud-upload-alt",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 640 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M395.5 267.5l-99-99c-4.7-4.7-12.3-4.7-17 0l-99 99c-7.6 7.6-2.2 20.5 8.5 20.5h67v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-84h67c10.7 0 16.1-12.9 8.5-20.5zm148.2-67.4C539.7 142.1 491.4 96 432 96c-7.6 0-15.1.8-22.4 2.3C377.7 58.3 328.1 32 272 32c-84.6 0-155.5 59.7-172.3 139.8C39.9 196.1 0 254.4 0 320c0 88.4 71.6 160 160 160h336c79.5 0 144-64.5 144-144 0-61.8-39.2-115.8-96.3-135.9zM496 432H160c-61.9 0-112-50.1-112-112 0-56.4 41.7-103.1 96-110.9V208c0-70.7 57.3-128 128-128 53.5 0 99.3 32.8 118.4 79.4 11.2-9.6 25.7-15.4 41.6-15.4 35.3 0 64 28.7 64 64 0 11.8-3.2 22.9-8.8 32.4 2.9-.3 5.9-.4 8.8-.4 53 0 96 43 96 96s-43 96-96 96z"}})]))}}},6850:function(e,t,a){"use strict";a("18b8")},"6cab":function(e,t,a){},"6cd5":function(e,t,a){"use strict";a("6504")},"6ea3":function(e,t,a){"use strict";a("edaf")},7075:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-expand fa-w-14",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"expand",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M0 180V56c0-13.3 10.7-24 24-24h124c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H64v84c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12zM288 44v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V56c0-13.3-10.7-24-24-24H300c-6.6 0-12 5.4-12 12zm148 276h-40c-6.6 0-12 5.4-12 12v84h-84c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24V332c0-6.6-5.4-12-12-12zM160 468v-40c0-6.6-5.4-12-12-12H64v-84c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v124c0 13.3 10.7 24 24 24h124c6.6 0 12-5.4 12-12z"}})]))}}},7645:function(e,t,a){},"78d0":function(e,t,a){},"7da9":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-css3-alt fa-w-12",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fab","data-icon":"css3-alt",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M0 32l34.9 395.8L192 480l157.1-52.2L384 32H0zm313.1 80l-4.8 47.3L193 208.6l-.3.1h111.5l-12.8 146.6-98.2 28.7-98.8-29.2-6.4-73.9h48.9l3.2 38.3 52.6 13.3 54.7-15.4 3.7-61.6-166.3-.5v-.1l-.2.1-3.6-46.3L193.1 162l6.5-2.7H76.7L70.9 112h242.2z"}})]))}}},"7eb0":function(e,t,a){},"7f59":function(e,t,a){},"80a7":function(e,t,a){"use strict";a("7eb0")},"826e":function(e,t,a){"use strict";a("939b")},"831b":function(e){e.exports=JSON.parse('{"type":"object","required":["sections"],"additionalProperties":false,"properties":{"pageInfo":{"type":"object","properties":{"title":{"type":"string","description":"Title and heading for the app"},"description":{"type":"string","description":"Sub-title, displayed in header"},"navLinks":{"type":"array","maxItems":6,"description":"Quick access links, displayed in header","items":{"type":"object","additionalProperties":false,"required":["title","path"],"properties":{"title":{"type":"string"},"path":{"type":"string"}}}},"footerText":{"type":"string"},"logo":{"type":"string","description":"Path to an optional image asset, to be displayed in the header","pattern":"^(http|/)","examples":["/web-icons/dashy-logo.png","https://i.ibb.co/yhbt6CY/dashy.png"]}},"required":["title"],"additionalProperties":false},"appConfig":{"type":"object","description":"Application configuration","properties":{"backgroundImg":{"type":"string","description":"A URL to an image asset to be displayed as background"},"language":{"type":"string","description":"The ISO code of your desired language, must have translations present, check docs for more info"},"theme":{"type":"string","default":"callisto","description":"A theme to be applied by default on first load","examples":["callisto","thebe","dracula","material","material-dark","colorful","nord","nord-frost","minimal-dark","minimal-light","matrix","matrix-red","hacker-girl","raspberry-jam","bee","tiger","material-original","material-dark-original","vaporware","high-contrast-dark","high-contrast-light"]},"enableFontAwesome":{"type":"boolean","default":true,"description":"Should load font-awesome assets"},"fontAwesomeKey":{"type":"string","pattern":"^[a-z0-9]{10}$","description":"API key for font-awesome"},"faviconApi":{"enum":["local","faviconkit","google","clearbit","webmasterapi","allesedv"],"default":"faviconkit","description":"Which service to use to resolve favicons. Set to local to do this locally instead"},"layout":{"enum":["horizontal","vertical","auto","sidebar"],"default":"auto","description":"Specifies sections layout orientation on the home screen"},"iconSize":{"enum":["small","medium","large"],"default":"medium","description":"The size of each link item / icon"},"hideComponents":{"type":"object","description":"Hide individual parts of the page. If not set, all components are visible by default","properties":{"hideHeading":{"type":"boolean","default":"false","description":"If set to true, the page heading & subtitle will be hidden"},"hideNav":{"type":"boolean","default":"false","description":"If set to true, the navigation menu will be hidden"},"hideSearch":{"type":"boolean","default":"false","description":"If set to true, the search bar will be hidden"},"hideSettings":{"type":"boolean","default":"false","description":"If set to true, the settings buttons will be hidden"},"hideFooter":{"type":"boolean","default":"false","description":"If set to true, the page footer will be hidden"},"hideSplashScreen":{"type":"boolean","default":"true","description":"If set to true, the loading / splash screen will not be shown"}}},"cssThemes":{"type":"array","description":"Theme names to be added to the dropdown","items":{"type":"string"}},"customColors":{"type":"object","description":"Set a custom color palette for any theme"},"externalStyleSheet":{"description":"URL or URLs of external stylesheets to add to dropdown/ load","type":["string","array"],"items":{"type":"string"}},"customCss":{"type":"string","description":"Any custom CSS overides, must be minified"},"statusCheck":{"type":"boolean","default":false,"description":"Displays an online/ offline status for each of your services"},"statusCheckInterval":{"type":"number","default":0,"description":"How often to recheck statuses. If set to 0, status will only be checked on page load"},"auth":{"type":"array","description":"Usernames and hashed credentials for frontend authentication","items":{"type":"object","additionalProperties":false,"required":["user","hash"],"properties":{"user":{"type":"string","description":"The username for a user"},"hash":{"type":"string","description":"A SHA-256 hashed password for that user","minLength":64,"maxLength":64},"type":{"enum":["admin","normal"],"description":"User type, denoting privilege level, either admin or normal","default":"normal"}}}},"allowConfigEdit":{"type":"boolean","default":true,"description":"Can user write changes to conf.yml file from the UI. If set to false, preferences are only stored locally"},"disableServiceWorker":{"type":"boolean","default":false,"description":"If set to true, then service workers will not be used to cache page contents"},"disableContextMenu":{"type":"boolean","default":false,"description":"If set to true, custom right-click context menu will be disabled"},"disableUpdateChecks":{"type":"boolean","default":false,"description":"Prevents Dashy from checking for updates"},"enableErrorReporting":{"type":"boolean","default":false,"description":"Enable anonymous crash reports. This helps bugs be found and fixed, in order to make Dashy more stable. Reporting is off by default, and no data will EVER be collected without your explicit and active concent."}},"additionalProperties":false},"sections":{"type":"array","description":"Array of sections, containing items","items":{"type":"object","required":["name","items"],"additionalProperties":false,"properties":{"name":{"type":"string","description":"Title/ heading for a section"},"icon":{"type":"string","description":"Icon will be displayed next to title"},"displayData":{"type":"object","additionalProperties":false,"description":"Optional meta data for customizing a section","properties":{"collapsed":{"type":"boolean","default":false,"description":"If true, section needs to be clicked to open"},"color":{"type":"string","description":"Hex code, or HTML color for section fill"},"customStyles":{"type":"string","description":"CSS overides for section container"},"itemSize":{"enum":["small","medium","large"],"default":"medium","description":"Size of items within the section"},"rows":{"type":"number","minimum":1,"maximum":5,"default":1,"description":"The amount of space that the section spans vertically"},"cols":{"type":"number","minimum":1,"maximum":5,"default":1,"description":"The amount of space that the section spans horizontally"},"sectionLayout":{"enum":["grid","auto"],"default":"auto","description":"If set to grid, items have uniform width, and itemCount can be set"},"itemCountX":{"type":"number","minimum":1,"maximum":12,"description":"Number of items per column"},"itemCountY":{"type":"number","minimum":1,"maximum":12,"description":"Number of items per row"}}},"items":{"type":"array","description":"Array of items to display with a section","items":{"type":"object","additionalProperties":false,"required":["title"],"properties":{"title":{"type":"string","description":"Text shown on the item"},"description":{"type":"string","nullable":true,"description":"Short description, shown on hover or in a tooltip"},"icon":{"type":"string","nullable":true,"description":"An icon, either as a font-awesome identifier, local or remote URL, or the word favicon or generative"},"url":{"type":"string","description":"The destination to navigate to when item is clicked"},"target":{"enum":["newtab","sametab","modal","workspace"],"default":"newtab","description":"Opening method, when item is clicked"},"hotkey":{"type":"number","description":"A numeric shortcut key, between 0 and 9. Useful for quickly launching frequently used applications"},"color":{"type":"string","description":"A custom fill color of the item"},"provider":{"type":"string","description":"Provider name, e.g. Microsoft"},"statusCheck":{"type":"boolean","default":false,"description":"Whether or not to display online/ offline status for this service. Will override appConfig.statusCheck"},"statusCheckUrl":{"type":"string","description":"If you\'ve enabled statusCheck, and want to use a different URL to what is defined under the item, then specify it here"},"statusCheckHeaders":{"type":"object","description":" If you\'re endpoint requires any specific headers for the status checking, then define them here"}}}}}}}}}')},"832d":function(e,t,a){},"85e1":function(e,t,a){"use strict";a("1036")},"89e2":function(e,t,a){"use strict";a("1653")},"8b35":function(e,t,a){},"8b8e":function(e,t){e.exports={pageInfo:{title:"Dashy",navLinks:[{title:"Home",path:"/"},{title:"About",path:"/about"},{title:"Source Code",path:"https://github.com/Lissy93/dashy"}]},appConfig:{theme:"colorful",fontAwesomeKey:"0821c65656"},sections:[{name:"Getting Started",items:[{title:"Source",description:"Source code and documentation on GitHub",icon:"fab fa-github",url:"https://github.com/Lissy93/dashy"},{title:"Issues",description:"View currently open issues, or raise a new one",icon:"fas fa-bug",url:"https://github.com/Lissy93/dashy/issues"},{title:"Demo 1",description:"Live Demo #1",icon:"far fa-rocket",url:"https://dashy-demo-1.netlify.app"},{title:"Demo 2",description:"Live Demo #2",icon:"fad fa-planet-ringed",url:"https://dashy-demo-2.netlify.app"}]}]}},"8d7c":function(e,t,a){},"905d":function(e,t,a){},"90de":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-window-close fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"window-close",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 394c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V86c0-3.3 2.7-6 6-6h404c3.3 0 6 2.7 6 6v340zM356.5 194.6L295.1 256l61.4 61.4c4.6 4.6 4.6 12.1 0 16.8l-22.3 22.3c-4.6 4.6-12.1 4.6-16.8 0L256 295.1l-61.4 61.4c-4.6 4.6-12.1 4.6-16.8 0l-22.3-22.3c-4.6-4.6-4.6-12.1 0-16.8l61.4-61.4-61.4-61.4c-4.6-4.6-4.6-12.1 0-16.8l22.3-22.3c4.6-4.6 12.1-4.6 16.8 0l61.4 61.4 61.4-61.4c4.6-4.6 12.1-4.6 16.8 0l22.3 22.3c4.7 4.6 4.7 12.1 0 16.8z"}})]))}}},"90ff":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-save fa-w-14",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"save",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M433.941 129.941l-83.882-83.882A48 48 0 00316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 00-14.059-33.941zM272 80v80H144V80h128zm122 352H54a6 6 0 01-6-6V86a6 6 0 016-6h42v104c0 13.255 10.745 24 24 24h176c13.255 0 24-10.745 24-24V83.882l78.243 78.243a6 6 0 011.757 4.243V426a6 6 0 01-6 6zM224 232c-48.523 0-88 39.477-88 88s39.477 88 88 88 88-39.477 88-88-39.477-88-88-88zm0 128c-22.056 0-40-17.944-40-40s17.944-40 40-40 40 17.944 40 40-17.944 40-40 40z"}})]))}}},"922c":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-expand-arrows-alt fa-w-14",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"expand-arrows-alt",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M448 344v112a23.94 23.94 0 01-24 24H312c-21.39 0-32.09-25.9-17-41l36.2-36.2L224 295.6 116.77 402.9 153 439c15.09 15.1 4.39 41-17 41H24a23.94 23.94 0 01-24-24V344c0-21.4 25.89-32.1 41-17l36.19 36.2L184.46 256 77.18 148.7 41 185c-15.1 15.1-41 4.4-41-17V56a23.94 23.94 0 0124-24h112c21.39 0 32.09 25.9 17 41l-36.2 36.2L224 216.4l107.23-107.3L295 73c-15.09-15.1-4.39-41 17-41h112a23.94 23.94 0 0124 24v112c0 21.4-25.89 32.1-41 17l-36.19-36.2L263.54 256l107.28 107.3L407 327.1c15.1-15.2 41-4.5 41 16.9z"}})]))}}},"939b":function(e,t,a){},9517:function(e,t,a){"use strict";a("a8d0")},9635:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:[i,r],style:[l,c],attrs:Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{d:"M132.893 310.534l-30.082 10.911L91.9 291.364l30.081-10.911z"}}),a("path",{attrs:{d:"M271.552 301.072l-77.856-46.72-41.616 15.152 10.944 30.064 27.28-9.92 82.144 49.28 97.6-65.072L480 315.088V480H32V347.2l40.8-14.848-10.928-30.048L0 324.8V512h512V292.912l-146.048-54.768z"}}),a("path",{attrs:{d:"M0 0v278.848l66.576-24.224-10.928-30.064L32 233.152V32h448v168.912l-114.048-42.768-94.4 62.928-77.856-46.72-47.84 17.392 10.944 30.064 33.504-12.16 82.144 49.28 97.6-65.072L512 247.088V0z"}}),a("path",{attrs:{d:"M96.656 243.686L85.721 213.63l30.07-10.94 10.935 30.055z"}})]))}}},"97fb":function(e,t,a){},"9c0c":function(e,t,a){},"9e50":function(e,t,a){"use strict";a("3323")},"9e96":function(e,t,a){},a4c2:function(e,t,a){},a8d0:function(e,t,a){},b021:function(e,t,a){"use strict";a("905d")},b2be:function(e,t,a){},b315:function(e,t,a){},b5c9:function(e,t,a){"use strict";a("7645")},c715:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-table fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"table",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM224 416H64v-96h160v96zm0-160H64v-96h160v96zm224 160H288v-96h160v96zm0-160H288v-96h160v96z"}})]))}}},c7d5:function(e,t,a){},c924:function(e,t,a){},cb40:function(e){e.exports=JSON.parse('{"home":{"no-results":"keine Suchresultate","no-data":"keine Daten Konfiguriert"},"search":{"search-label":"Suche","search-placeholder":"Starte tippen um zu filtern","clear-search-tooltip":"Leere die Suche"},"login":{"title":"Dashy","username-label":"Username","password-label":"Passwort","login-button":"Login","remember-me-label":"Angemeldet bleiben für","remember-me-never":"Niemals","remember-me-hour":"4 Stunden","remember-me-day":"1 Tag","remember-me-week":"1 Woche"},"config":{"main-tab":"Config","view-config-tab":"zeige Config","edit-config-tab":"bearbeite Config","custom-css-tab":"eigene Styles","heading":"Konfiguration optionen","download-config-button":"Download Config","edit-config-button":"bearbeite Config","edit-css-button":"bearbeite Custom CSS","cloud-sync-button":"aktiviere Cloud Sync","edit-cloud-sync-button":"bearbeite Cloud Sync","rebuild-app-button":"Anwendung neu erstellen","change-language-button":"ändere App Sprache","reset-settings-button":"Lokale Einstellungen zurücksetzten","app-info-button":"App Info","backup-note":"Es wird empfohlen ein Backup der Konfiguration zu erstellen, bevor Änderungen durchgeführt werden.","reset-config-msg-l1":"Dadurch werden alle Benutzereinstellungen aus dem lokalen Speicher entfernt, hat jedoch keine Auswirkungen auf Ihre Datei \'conf.yml\'.","reset-config-msg-l2":"Sie sollten zuerst alle Änderungen, die Sie lokal vorgenommen haben, sichern, wenn Sie sie in Zukunft verwenden möchten.","reset-config-msg-l3":"Sind Sie sicher, dass Sie fortfahren möchten?","data-cleared-msg":"Daten erfolgreich gelöscht","actions-label":"Aktionen","copy-config-label":"Config kopieren","data-copied-msg":"Config wurde in die Zwischenablage kopiert","reset-config-label":"Config zurücksetzten","css-save-btn":"Änderungen speichern","css-note-label":"Bemerkung","css-note-l1":"Sie müssen die Seite aktualisieren, damit Ihre Änderungen wirksam werden.","css-note-l2":"Stilüberschreibungen werden nur lokal gespeichert, daher wird empfohlen, eine Kopie Ihres CSS zu erstellen.","css-note-l3":"Um alle benutzerdefinierten Stile zu entfernen, löschen Sie den Inhalt und klicken Sie auf Änderungen speichern."},"settings":{"theme-label":"Theme","layout-label":"Layout","layout-auto":"Auto","layout-horizontal":"Horizontal","layout-vertical":"Vertikal","item-size-label":"Item größe","item-size-small":"klein","item-size-medium":"mittel","item-size-large":"groß","config-launcher-label":"Config"},"updates":{"app-version-note":"Dashy version","up-to-date":"Up-to-Date","out-of-date":"Update Verfügbar","unsupported-version-l1":"Sie verwenden eine nicht unterstützte Version von Dashy","unsupported-version-l2":"Für die beste Erfahrung und aktuelle Sicherheitspatches aktualisieren Sie bitte auf"},"language-switcher":{"title":"Ändere die Applikationssprache","dropdown-label":"Sprache Auswählen","save-button":"Speichern","success-msg":"Sprache geändert zu"},"theme-maker":{"title":"Theme Konfigurator","export-button":"Benutzerdefinierte Variablen exportieren","reset-button":"Styles zurücksetzen für","show-all-button":"Alle Variablen anzeigen","save-button":"Speichern","cancel-button":"Abbrechen","saved-toast":"{theme} wurde Erfolgreich geupdated","copied-toast":"Theme Daten für {theme} in Zwischenablage kopiert.","reset-toast":"Benutzerdefinierte Farben für {theme} entfernt"},"config-editor":{"save-location-label":"Speicherort","location-local-label":"Lokal","location-disk-label":"Änderungen in die Konfigurationsdatei schreiben","save-button":"speichere Änderungen","valid-label":"Config ist gültig","status-success-msg":"Aufgabe abgeschlossen","status-fail-msg":"Aufgabe fehlgeschlagen","success-msg-disk":"Konfigurationsdatei erfolgreich auf die Festplatte geschrieben","success-msg-local":"Lokale Änderungen erfolgreich gespeichert","success-note-l1":"Die App sollte automatisch rebuild werden.","success-note-l2":"Dies kann bis zu einer Minute dauern.","success-note-l3":"Sie müssen die Seite aktualisieren, damit die Änderungen wirksam werden.","error-msg-save-mode":"Bitte wählen Sie einen Speichermodus: Lokal oder Datei","error-msg-cannot-save":"Beim Speichern der Konfiguration ist ein Fehler aufgetreten","error-msg-bad-json":"Fehler in JSON, möglicherweise fehlerhaft","warning-msg-validation":"Validierungswarnung"},"app-rebuild":{"title":"Rebuild Application","rebuild-note-l1":"Damit die in die Datei conf.yml geschriebenen Änderungen wirksam werden, ist ein rebuild erforderlich.","rebuild-note-l2":"Dies sollte automatisch passieren, aber wenn nicht, können Sie es hier manuell auslösen.","rebuild-note-l3":"Dies ist bei lokal gespeicherten Änderungen nicht erforderlich.","rebuild-button":"Start Build","rebuilding-status-1":"Building...","rebuilding-status-2":"Das kann ein paar minuten dauern","error-permission":"Sie sind nicht berechtigt, diese Aktion auszulösen","success-msg":"Build erfolgreich abgeschlossen","fail-msg":"Build-Vorgang fehlgeschlagen","reload-note":"Ein Neuladen der Seite ist jetzt erforderlich, damit die Änderungen wirksam werden.","reload-button":"Seite neuladen"},"cloud-sync":{"title":"Cloud Backup & Wiederherstellung","intro-l1":"Cloud-Backup und Wiederherstellung ist eine optionale Funktion, mit der Sie Ihre Config in das Internet hochladen und dann auf einem anderen Gerät oder einer anderen Dashy-Instanz wiederherstellen können.","intro-l2":"Alle Daten sind vollständig Ende-zu-Ende mit AES verschlüsselt. Ihr Passwort wird als Schlüssel verwendet wird.","intro-l3":"Weitere Informationen finden Sie im","backup-title-setup":"Backup erstellen","backup-title-update":"Backup aktualisieren","password-label-setup":"Passwort auswählen","password-label-update":"Passwort eigeben","backup-button-setup":"Backup","backup-button-update":"Backup aktualisieren","backup-id-label":"Your Backup ID","backup-id-note":"Dies wird verwendet, um später aus Backups wiederherzustellen. Bewahren Sie es zusammen mit Ihrem Passwort an einem sicheren Ort auf.","restore-title":"Backup wiederherstellen","restore-id-label":"Restore ID","restore-password-label":"Passwort","restore-button":"wiederherstellen","backup-error-unknown":"Anfrage kann nicht verarbeitet werden","backup-error-password":"Falsches Passwort. Bitte geben Sie Ihr aktuelles Passwort ein.","backup-success-msg":"Erfolgreich beendet","restore-success-msg":"Config erfolgreich wiederhergestellt"}}')},cbd9:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-file-download fa-w-12",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"file-download",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M216 236.07c0-6.63-5.37-12-12-12h-24c-6.63 0-12 5.37-12 12v84.01h-48.88c-10.71 0-16.05 12.97-8.45 20.52l72.31 71.77c4.99 4.95 13.04 4.95 18.03 0l72.31-71.77c7.6-7.54 2.26-20.52-8.45-20.52H216v-84.01zM369.83 97.98L285.94 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h287.94c26.5 0 48.07-21.5 48.07-47.99V131.97c0-12.69-5.17-24.99-14.17-33.99zM255.95 51.99l76.09 76.08h-76.09V51.99zM336 464.01H47.99V48.09h159.97v103.98c0 13.3 10.7 23.99 24 23.99H336v287.95z"}})]))}}},cf1c:function(e,t,a){"use strict";a("8d7c")},d16d:function(e,t,a){"use strict";a("18dd")},d636:function(e,t,a){"use strict";a("78d0")},d8e8:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-compress-arrows-alt fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"compress-arrows-alt",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M200 288H88c-21.4 0-32.1 25.8-17 41l32.9 31-99.2 99.3c-6.2 6.2-6.2 16.4 0 22.6l25.4 25.4c6.2 6.2 16.4 6.2 22.6 0L152 408l31.1 33c15.1 15.1 40.9 4.4 40.9-17V312c0-13.3-10.7-24-24-24zm112-64h112c21.4 0 32.1-25.9 17-41l-33-31 99.3-99.3c6.2-6.2 6.2-16.4 0-22.6L481.9 4.7c-6.2-6.2-16.4-6.2-22.6 0L360 104l-31.1-33C313.8 55.9 288 66.6 288 88v112c0 13.3 10.7 24 24 24zm96 136l33-31.1c15.1-15.1 4.4-40.9-17-40.9H312c-13.3 0-24 10.7-24 24v112c0 21.4 25.9 32.1 41 17l31-32.9 99.3 99.3c6.2 6.2 16.4 6.2 22.6 0l25.4-25.4c6.2-6.2 6.2-16.4 0-22.6L408 360zM183 71.1L152 104 52.7 4.7c-6.2-6.2-16.4-6.2-22.6 0L4.7 30.1c-6.2 6.2-6.2 16.4 0 22.6L104 152l-33 31.1C55.9 198.2 66.6 224 88 224h112c13.3 0 24-10.7 24-24V88c0-21.3-25.9-32-41-16.9z"}})]))}}},de40:function(e,t,a){"use strict";a("7f59")},e0a2:function(e,t){e.exports=/(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff]|[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|[\ud83c[\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|[\ud83c[\ude32-\ude3a]|[\ud83c[\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff])/},e1d5:function(e,t,a){"use strict";a("2bcd")},e697:function(e,t,a){"use strict";a("2574")},e6a4:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-download fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fal","data-icon":"download",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M452 432c0 11-9 20-20 20s-20-9-20-20 9-20 20-20 20 9 20 20zm-84-20c-11 0-20 9-20 20s9 20 20 20 20-9 20-20-9-20-20-20zm144-48v104c0 24.3-19.7 44-44 44H44c-24.3 0-44-19.7-44-44V364c0-24.3 19.7-44 44-44h99.4L87 263.6c-25.2-25.2-7.3-68.3 28.3-68.3H168V40c0-22.1 17.9-40 40-40h96c22.1 0 40 17.9 40 40v155.3h52.7c35.6 0 53.4 43.1 28.3 68.3L368.6 320H468c24.3 0 44 19.7 44 44zm-261.7 17.7c3.1 3.1 8.2 3.1 11.3 0L402.3 241c5-5 1.5-13.7-5.7-13.7H312V40c0-4.4-3.6-8-8-8h-96c-4.4 0-8 3.6-8 8v187.3h-84.7c-7.1 0-10.7 8.6-5.7 13.7l140.7 140.7zM480 364c0-6.6-5.4-12-12-12H336.6l-52.3 52.3c-15.6 15.6-41 15.6-56.6 0L175.4 352H44c-6.6 0-12 5.4-12 12v104c0 6.6 5.4 12 12 12h424c6.6 0 12-5.4 12-12V364z"}})]))}}},e7fa:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-edit fa-w-18",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"edit",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 576 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M402.3 344.9l32-32c5-5 13.7-1.5 13.7 5.7V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h273.5c7.1 0 10.7 8.6 5.7 13.7l-32 32c-1.5 1.5-3.5 2.3-5.7 2.3H48v352h352V350.5c0-2.1.8-4.1 2.3-5.6zm156.6-201.8L296.3 405.7l-90.4 10c-26.2 2.9-48.5-19.2-45.6-45.6l10-90.4L432.9 17.1c22.9-22.9 59.9-22.9 82.7 0l43.2 43.2c22.9 22.9 22.9 60 .1 82.8zM460.1 174L402 115.9 216.2 301.8l-7.3 65.3 65.3-7.3L460.1 174zm64.8-79.7l-43.2-43.2c-4.1-4.1-10.8-4.1-14.8 0L436 82l58.1 58.1 30.9-30.9c4-4.2 4-10.8-.1-14.9z"}})]))}}},eb58:function(e,t,a){"use strict";a("9e96")},ec1d:function(e,t,a){"use strict";a("f254")},ed9b:function(e,t,a){"use strict";a("a4c2")},eda6:function(e,t,a){"use strict";a("1864")},edaf:function(e,t,a){},edfc:function(e,t,a){},f254:function(e,t,a){},f255:function(e,t,a){"use strict";a("339a")},f719:function(e,t,a){"use strict";a("27c1")},f7af:function(e,t,a){},f94d:function(e,t,a){},f9d7:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-columns fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"columns",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM224 416H64V160h160v256zm224 0H288V160h160v256z"}})]))}}},fa2b:function(e,t,a){"use strict";a("f7af")},fae5:function(e,t,a){}}); -//# sourceMappingURL=dashy.6bba1668.js.map \ No newline at end of file +(function(e){function t(t){for(var n,s,r=t[0],l=t[1],c=t[2],u=0,d=[];unew RegExp(/(http|https):\/\/(\S+)(:[0-9]+)?/).test(e)}},T=x,O=(a("d16d"),Object(v["a"])(T,S,I,!1,null,"68c1bd5c",null)),E=O.exports,A=a("5cc6"),$=a.n(A),L={name:"Header",inject:["visibleComponents"],components:{PageTitle:C,Nav:E},props:{pageInfo:Object},data(){return{titleVisible:(this.visibleComponents||A["visibleComponents"]).pageTitle,navVisible:(this.visibleComponents||A["visibleComponents"]).navigation}}},z=L,j=(a("6ea3"),Object(v["a"])(z,h,p,!1,null,"73a6fa67",null)),N=j.exports,M=function(){var e=this,t=e.$createElement,a=e._self._c||t;return e.text&&""!==e.text?a("footer",{domProps:{innerHTML:e._s(e.text)}}):a("footer",[e._v(" Developed by "),a("a",{attrs:{href:e.authorUrl}},[e._v(e._s(e.authorName))]),e._v(". Licensed under "),a("a",{attrs:{href:e.licenseUrl}},[e._v(e._s(e.license))]),e._v(" "+e._s(e.showCopyright?"©":"")+" "+e._s(e.date)+". Get the "),a("a",{attrs:{href:e.repoUrl}},[e._v("Source Code")]),e._v(". ")])},B=[],V={name:"Footer",props:{text:String,authorName:{type:String,default:"Alicia Sykes"},authorUrl:{type:String,default:"https://aliciasykes.com"},license:{type:String,default:"MIT"},licenseUrl:{type:String,default:"https://gist.github.com/Lissy93/143d2ee01ccc5c052a17"},date:{type:String,default:""+(new Date).getFullYear()},showCopyright:{type:Boolean,default:!0},repoUrl:{type:String,default:"https://github.com/lissy93/dashy"}}},D=V,H=(a("ed9b"),Object(v["a"])(D,M,B,!1,null,"64591bd5",null)),P=H.exports,U=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("transition",{attrs:{name:"slide-fade"}},[e.isLoading?a("div",{class:e.c,attrs:{id:"loading"},on:{click:function(t){e.c="hide"}}},[a("h2",[e._v("Dashy")]),a("div",{staticClass:"inner-container"},[a("p",[e._v("Loading")]),a("span",{staticClass:"dots-cont"},[a("span",{staticClass:"dot dot-1"}),a("span",{staticClass:"dot dot-2"}),a("span",{staticClass:"dot dot-3"}),a("span",{staticClass:"dot dot-4"})])])]):e._e()])},R=[],K={name:"LoadingScreen",props:{isLoading:{type:Boolean,default:!1}},data:()=>({c:""})},F=K,W=(a("2bb3"),Object(v["a"])(F,U,R,!1,null,"a7bc1de6",null)),q=W.exports,G=a("8b8e"),J=a.n(G);class Y{constructor(){this.conf=J.a}appConfig(){let e={};this.conf&&(e=this.conf.appConfig||{});let t=A["appConfig"];return localStorage[A["localStorageKeys"].APP_CONFIG]?t=JSON.parse(localStorage[A["localStorageKeys"].APP_CONFIG]):e!=={}&&(t=e),t.layout=localStorage[A["localStorageKeys"].LAYOUT_ORIENTATION]||e.layout||A["layout"],t.iconSize=localStorage[A["localStorageKeys"].ICON_SIZE]||e.iconSize||A["iconSize"],t.language=localStorage[A["localStorageKeys"].LANGUAGE]||e.language||A["language"],t}pageInfo(){const e=A["pageInfo"];let t;try{t=JSON.parse(localStorage[A["localStorageKeys"].PAGE_INFO])}catch(s){t={}}let a={};this.conf&&(a=this.conf.pageInfo||{});const n=a||e;return n.title=t.title||a.title||e.title,n.logo=t.logo||a.logo||e.logo,n.description=t.description||a.description||e.description,n.navLinks=t.navLinks||a.navLinks||e.navLinks,n.footerText=t.footerText||a.footerText||e.footerText,n}sections(){const e=localStorage[A["localStorageKeys"].CONF_SECTIONS];if(e)try{const t=JSON.parse(e);if(t.length>=1)return t}catch(a){}let t=[];return this.conf&&(t=this.conf.sections||[]),t}config(){return{appConfig:this.appConfig(),pageInfo:this.pageInfo(),sections:this.sections()}}}var X=a("0e40"),Z=a("cb40"),Q=a("3b11");const ee=[{name:"English",code:"en",locale:X,flag:"🇬🇧"},{name:"German",code:"de",locale:Z,flag:"🇩🇪"},{name:"Dutch",code:"nl",locale:Q,flag:"🇳🇱"}],te={};ee.forEach(e=>{te[e.code]=e.locale});const ae=te,ne=(()=>{const e=new Y;return e.config()})(),se=e=>{const t=e.hideComponents||{},a=e=>"boolean"===typeof e;return{pageTitle:a(t.hideHeading)?!t.hideHeading:A["visibleComponents"].pageTitle,navigation:a(t.hideNav)?!t.hideNav:A["visibleComponents"].navigation,searchBar:a(t.hideSearch)?!t.hideSearch:A["visibleComponents"].searchBar,settings:a(t.hideSettings)?!t.hideSettings:A["visibleComponents"].settings,footer:a(t.hideFooter)?!t.hideFooter:A["visibleComponents"].footer,splashScreen:a(t.hideSplashScreen)?!t.hideSplashScreen:A["visibleComponents"].splashScreen}},oe=()=>{const e=localStorage[A["localStorageKeys"].THEME],t=ne.appConfig.theme;return e||t||A["theme"]},ie=()=>{const e=JSON.parse(localStorage[A["localStorageKeys"].CUSTOM_COLORS]||"{}"),t=ne.appConfig.customColors||{};return Object.assign(t,e)},re=()=>{const e=[],t=ne.sections||[];return t.forEach(t=>{const a=t.items.filter(e=>e.hotkey);e.push(a.map(e=>({hotkey:e.hotkey,url:e.url})))}),e.flat()},le=()=>{const e=localStorage[A["localStorageKeys"].LANGUAGE]||ne.appConfig.language||A["language"],t=ee.find(t=>t.code===e);return t},ce=()=>{const e="V1.5.3";console.log(`%cDashy ${e} 🚀`,"color:#00af87; background:#0b1021; font-size:36px; padding: 0.5rem 0.5rem 0; margin: 1rem auto; font-family: Rockwell; border: 2px solid #00af87; border-radius: 4px;font-weight: bold; text-shadow: 1px 1px 1px #00af87bf;")},ue=()=>{console.log("%c⚠️ Error ⚠️","background:#21bbca; color:#0b1021; font-size:20px; padding:0.25rem 0.5rem; margin: 1rem auto 0.25rem; font-family: 'Trebuchet MS', Helvetica; border: 2px solid yellow; border-radius: 4px; font-weight: bold;")},de=()=>{console.log("%c🐛If you have found a bug, raise an issue on GitHub, at:\nhttps://git.io/JnqPR","color:#dddd10; font-size: 14px; font-family: 'Trebuchet MS', Helvetica;")},_e=new Y,me=_e.config(),ge=se(me.appConfig)||A["visibleComponents"];var he={name:"app",components:{Header:N,Footer:P,LoadingScreen:q},provide:{config:me,visibleComponents:ge},data(){return{isLoading:!0,showFooter:ge.footer,appConfig:_e.appConfig(),pageInfo:_e.pageInfo(),visibleComponents:ge}},methods:{getFooterText(){return this.pageInfo&&this.pageInfo.footerText?this.pageInfo.footerText:""},injectCustomStyles(e){const t=document.createElement("style");t.textContent=e,document.head.append(t)},shouldShowSplash(){return(this.visibleComponents||A["visibleComponents"]).splashScreen||!localStorage[A["localStorageKeys"].HIDE_WELCOME_BANNER]},hideSplash(){this.shouldShowSplash()?setTimeout(()=>{this.isLoading=!1},A["splashScreenTime"]||1500):this.isLoading=!1},applyLanguage(){let e=A["language"];const t=this.$i18n.availableLocales,a=localStorage[A["localStorageKeys"].LANGUAGE]||this.appConfig.language;if(a&&t.includes(a))e=a;else{const a=window.navigator.language||"",n=a.split("-")[0];t.includes(a)?e=a:t.includes(n)&&(e=n)}this.$i18n.locale=e,document.getElementsByTagName("html")[0].setAttribute("lang",e)}},mounted(){if(this.applyLanguage(),this.hideSplash(),this.appConfig.customCss){const e=this.appConfig.customCss.replace(/<\/?[^>]+(>|$)/g,"");this.injectCustomStyles(e)}ce()}},pe=he,fe=(a("5c0b"),Object(v["a"])(pe,m,g,!1,null,null,null)),be=fe.exports,ke=a("8c4f"),we=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"home",style:e.getBackgroundImage()},[a("SettingsContainer",{ref:"filterComp",staticClass:"settings-outer",attrs:{displayLayout:e.layout,iconSize:e.itemSizeBound,externalThemes:e.getExternalCSSLinks(),sections:e.getSections(e.sections),appConfig:e.appConfig,pageInfo:e.pageInfo,modalOpen:e.modalOpen},on:{"user-is-searchin":e.searching,"change-display-layout":e.setLayoutOrientation,"change-icon-size":e.setItemSize,"change-modal-visibility":e.updateModalVisibility}}),e.checkTheresData(e.sections)?a("div",{class:"item-group-container orientation-"+e.layout+" item-size-"+e.itemSizeBound},e._l(e.getSections(e.sections),(function(t,n){return a("ItemGroup",{key:n,class:0===e.filterTiles(t.items).length&&e.searchValue?"no-results":"",attrs:{title:t.name,icon:t.icon||void 0,displayData:e.getDisplayData(t),groupId:"section-"+n,items:e.filterTiles(t.items),itemSize:e.itemSizeBound},on:{itemClicked:function(t){return e.finishedSearching()},"change-modal-visibility":e.updateModalVisibility}})})),1):e._e(),e.checkIfResults()?a("div",{staticClass:"no-data"},[e._v(" "+e._s(e.searchValue?e.$t("home.no-results"):e.$t("home.no-data"))+" ")]):e._e()],1)},ve=[],ye=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("section",[e.searchVisible?a("SearchBar",{ref:"SearchBar",attrs:{active:!e.modalOpen},on:{"user-is-searchin":e.userIsTypingSomething}}):e._e(),a("div",{staticClass:"options-outer"},[a("div",{class:"options-container "+(e.settingsVisible?"":"hide")},[a("ThemeSelector",{attrs:{externalThemes:e.externalThemes,confTheme:e.getInitialTheme(),userThemes:e.getUserThemes()},on:{modalChanged:e.modalChanged}}),a("LayoutSelector",{attrs:{displayLayout:e.displayLayout},on:{layoutUpdated:e.updateDisplayLayout}}),a("ItemSizeSelector",{attrs:{iconSize:e.iconSize},on:{iconSizeUpdated:e.updateIconSize}}),a("ConfigLauncher",{attrs:{sections:e.sections,pageInfo:e.pageInfo,appConfig:e.appConfig},on:{modalChanged:e.modalChanged}}),e.isUserLoggedIn()?a("AppButtons"):e._e()],1),a("div",{class:"show-hide-container "+(e.settingsVisible?"hide-btn":"show-btn")},[a("button",{directives:[{name:"tooltip",rawName:"v-tooltip",value:(e.settingsVisible?"Hide":"Open")+" Settings Menu",expression:"`${settingsVisible? 'Hide' : 'Open'} Settings Menu`"}],attrs:{tabindex:"-2"},on:{click:function(t){return e.toggleSettingsVisibility()}}},[e.settingsVisible?a("IconClose"):a("IconOpen")],1)])]),a("KeyboardShortcutInfo"),a("AppInfoModal")],1)},Ce=[],Se=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("form",[a("label",{attrs:{for:"filter-tiles"}},[e._v(e._s(e.$t("search.search-label")))]),a("input",{directives:[{name:"model",rawName:"v-model",value:e.input,expression:"input"}],ref:"filter",attrs:{id:"filter-tiles",placeholder:e.$t("search.search-placeholder")},domProps:{value:e.input},on:{input:[function(t){t.target.composing||(e.input=t.target.value)},e.userIsTypingSomething],keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.clearFilterInput.apply(null,arguments)}}}),e.input.length>0?a("i",{staticClass:"clear-search",attrs:{title:e.$t("search.clear-search-tooltip")},on:{click:e.clearFilterInput}},[e._v("x")]):e._e()])},Ie=[];class xe{constructor(e){this.index=e}resetIndex(){this.index=0}arrowNavigation(e){void 0===this.index?this.index=0:37===e?this.index-=1:38===e?this.index=xe.goToPrevious(this.index):39===e?this.index+=1:40===e&&(this.index=xe.goToNext(this.index)),this.index=xe.getSafeElementIndex(this.index),xe.selectItemByIndex(this.index).focus()}static getNumResults(){return document.getElementsByClassName("item").length}static getSafeElementIndex(e){const t=xe.getNumResults();return e<0?t-1:e>=t?0:e}static selectItemByIndex(e){return e>=0&&e<=xe.getNumResults()?document.getElementsByClassName("item")[e]:[document.getElementsByClassName("item")]}static findPreviousRow(e){const t=(e,t)=>xe.selectItemByIndex(e).offsetTop===t,a=(e,n)=>e>=xe.getNumResults()?a(0,n):t(e,n)?a(e-1,n):e,n=xe.selectItemByIndex(e).offsetTop;return a(e,n)}static goToPrevious(e){const t=(e,t)=>xe.selectItemByIndex(e).offsetTopxe.selectItemByIndex(e).offsetTop===t,a=(e,n)=>e>=xe.getNumResults()?a(0,n):t(e,n)?a(e+1,n):e,n=xe.selectItemByIndex(e).offsetTop;return a(e,n)}static goToNext(e){const t=(e,t)=>xe.selectItemByIndex(e).offsetTop>xe.selectItemByIndex(t).offsetTop,a=xe.findNextRow(e),n=a-e,s=a-xe.findPreviousRow(e)-1,o=t(e,a)?0:s-n;return a+o}}var Te={name:"FilterTile",props:{active:Boolean},data(){return{input:"",akn:new xe,getCustomKeyShortcuts:re}},mounted(){window.addEventListener("keydown",e=>{const t=document.activeElement.id,{key:a,keyCode:n}=e;this.active&&(/^[a-zA-Z]$/.test(a)&&"filter-tiles"!==t?(this.$refs.filter&&this.$refs.filter.focus(),this.userIsTypingSomething()):/^[0-9]$/.test(a)?this.handleHotKey(a):n>=37&&n<=40?this.akn.arrowNavigation(n):27===n&&this.clearFilterInput())})},methods:{userIsTypingSomething(){this.$emit("user-is-searchin",this.input)},clearFilterInput(){this.input="",this.userIsTypingSomething(),document.activeElement.blur(),this.akn.resetIndex()},handleHotKey(e){const t=this.getCustomKeyShortcuts();t.forEach(t=>{t.hotkey===parseInt(e,10)&&t.url&&window.open(t.url,"_blank")})}}},Oe=Te,Ee=(a("b021"),Object(v["a"])(Oe,Se,Ie,!1,null,"2350dd8e",null)),Ae=Ee.exports,$e=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"config-options"},[a("span",[e._v(e._s(e.$t("settings.config-launcher-label")))]),a("div",{staticClass:"config-buttons"},[a("IconSpanner",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip("Update configuration"),expression:"tooltip('Update configuration')"}],attrs:{tabindex:"-2"},on:{click:function(t){return e.showEditor()}}})],1),a("modal",{attrs:{name:e.modalNames.CONF_EDITOR,resizable:!0,width:"60%",height:"85%",classes:"dashy-modal"},on:{closed:function(t){return e.$emit("modalChanged",!1)}}},[a("ConfigContainer",{attrs:{config:e.combineConfig()}})],1),a("modal",{attrs:{name:e.modalNames.LANG_SWITCHER,classes:"dashy-modal",resizable:!0,width:"30%",height:"25%"}},[a("LanguageSwitcher")],1)],1)},Le=[],ze=a("35c3"),je=a.n(ze),Ne=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("Tabs",{ref:"tabView",attrs:{navAuto:!0,name:"Add Item"}},[a("TabItem",{staticClass:"main-tab",attrs:{name:e.$t("config.main-tab")}},[a("div",{staticClass:"main-options-container"},[a("div",{staticClass:"config-buttons"},[a("h2",[e._v("Configuration Options")]),a("a",{staticClass:"hyperlink-wrapper",on:{click:function(t){return e.downloadConfigFile("conf.yml",e.yaml)}}},[a("button",{staticClass:"config-button center"},[a("DownloadIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.download-config-button"))+" ")],1)]),a("button",{staticClass:"config-button center",on:{click:function(){return e.navigateToTab(2)}}},[a("EditIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.edit-config-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(){return e.navigateToTab(4)}}},[a("CustomCssIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.edit-css-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(){return e.navigateToTab(3)}}},[a("CloudIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.backupId?e.$t("config.edit-cloud-sync-button"):e.$t("config.cloud-sync-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(t){return e.openLanguageSwitchModal()}}},[a("LanguageIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.change-language-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(t){return e.openRebuildAppModal()}}},[a("RebuildIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.rebuild-app-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(t){return e.resetLocalSettings()}}},[a("DeleteIcon",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.reset-settings-button"))+" ")],1),a("button",{staticClass:"config-button center",on:{click:function(t){return e.openAboutModal()}}},[a("IconAbout",{staticClass:"button-icon"}),e._v(" "+e._s(e.$t("config.app-info-button"))+" ")],1),a("p",{staticClass:"small-screen-note",staticStyle:{display:"none"}},[e._v(" You are using a very small screen, and some screens in this menu may not be optimal ")]),a("p",{staticClass:"language"},[e._v(e._s(e.getLanguage()))]),a("AppVersion")],1),a("div",{staticClass:"config-note"},[a("span",[e._v(e._s(e.$t("config.backup-note")))])])]),a("RebuildApp")],1),a("TabItem",{staticClass:"code-container",attrs:{name:e.$t("config.view-config-tab")}},[a("pre",{attrs:{id:"conf-yaml"}},[e._v(e._s(e.yaml))]),a("div",{staticClass:"yaml-action-buttons"},[a("h2",[e._v(e._s(e.$t("config.actions-label")))]),a("a",{staticClass:"yaml-button download",on:{click:function(t){return e.downloadConfigFile("conf.yml",e.yaml)}}},[e._v(" "+e._s(e.$t("config.download-config-button"))+" ")]),a("a",{staticClass:"yaml-button copy",on:{click:function(t){return e.copyConfigToClipboard()}}},[e._v(" "+e._s(e.$t("config.copy-config-label"))+" ")]),a("a",{staticClass:"yaml-button reset",on:{click:function(t){return e.resetLocalSettings()}}},[e._v(" "+e._s(e.$t("config.reset-config-label"))+" ")])])]),a("TabItem",{attrs:{name:e.$t("config.edit-config-tab")}},[a("JsonEditor",{attrs:{config:e.config}})],1),a("TabItem",{attrs:{name:e.$t("cloud-sync.title")}},[a("CloudBackupRestore",{attrs:{config:e.config}})],1),a("TabItem",{attrs:{name:e.$t("config.custom-css-tab")}},[a("CustomCssEditor",{attrs:{config:e.config}})],1)],1)},Me=[],Be=a("1020"),Ve=a.n(Be),De=a("2e7b"),He=a.n(De),Pe=(a("1d89"),a("d97e"));const Ue=e=>e.split("\n").map(e=>e.trimRight()).join("\n"),Re=e=>{throw new Error("Error in Json to YAML conversion: "+e)},Ke=e=>{let t="";const a={undefined(){return"null"},null(){return"null"},number(e){return e},boolean(e){return e?"true":"false"},string(e){return JSON.stringify(e)},array(e){let n="";return 0===e.length?(n+="[]",n):(t=t.replace(/$/," "),e.forEach(e=>{const s=a[Object(Pe["typeOf"])(e)];s||Re(Object(Pe["typeOf"])(e)),n+=`\n${t}- ${s(e,!0)}`}),t=t.replace(/ {2}/,""),n)},object(e,n,s){let o="";return 0===Object.keys(e).length?(o+="{}",o):(s||(t=t.replace(/$/," ")),Object.keys(e).forEach((s,i)=>{const r=e[s],l=a[Object(Pe["typeOf"])(r)];"undefined"!==typeof r&&(l||Re(Object(Pe["typeOf"])(r)),n&&0===i||(o+="\n"+t),o+=`${s}: ${l(r)}`)}),t=t.replace(/ {2}/,""),o)},function(){return"[object Function]"}};return Ue(a[Object(Pe["typeOf"])(e)](e,!0,!0)+"\n")};var Fe=Ke,We=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"json-editor-outer"},[a("v-jsoneditor",{attrs:{options:e.options,height:"500px"},model:{value:e.jsonData,callback:function(t){e.jsonData=t},expression:"jsonData"}}),a("div",{staticClass:"save-options"},[a("span",{staticClass:"save-option-title"},[e._v(e._s(e.$t("config-editor.save-location-label"))+":")]),a("div",{staticClass:"option"},[a("input",{directives:[{name:"model",rawName:"v-model",value:e.saveMode,expression:"saveMode"}],staticClass:"radio-option",attrs:{type:"radio",id:"local",value:"local",disabled:!e.allowWriteToDisk},domProps:{checked:e._q(e.saveMode,"local")},on:{change:function(t){e.saveMode="local"}}}),a("label",{staticClass:"save-option-label",attrs:{for:"local"}},[e._v(" "+e._s(e.$t("config-editor.location-local-label"))+" ")])]),a("div",{staticClass:"option"},[a("input",{directives:[{name:"model",rawName:"v-model",value:e.saveMode,expression:"saveMode"}],staticClass:"radio-option",attrs:{type:"radio",id:"file",value:"file",disabled:!e.allowWriteToDisk},domProps:{checked:e._q(e.saveMode,"file")},on:{change:function(t){e.saveMode="file"}}}),a("label",{staticClass:"save-option-label",attrs:{for:"file"}},[e._v(" "+e._s(e.$t("config-editor.location-disk-label"))+" ")])])]),a("button",{class:"save-button "+(e.isValid?"":"err"),on:{click:function(t){return e.save()}}},[e._v(" "+e._s(e.$t("config-editor.save-button"))+" ")]),a("p",{staticClass:"errors"},[a("ul",[e._l(e.errorMessages,(function(t,n){return a("li",{key:n,class:"type-"+t.type},[e._v(" "+e._s(t.msg)+" ")])})),e.errorMessages.length<1?a("li",{staticClass:"type-valid"},[e._v(" "+e._s(e.$t("config-editor.valid-label"))+" ")]):e._e()],2)]),void 0!==e.saveSuccess?a("p",{class:"response-output status-"+(e.saveSuccess?"success":"fail")},[e._v(" "+e._s(e.saveSuccess?e.$t("config-editor.status-success-msg"):e.$t("config-editor.status-fail-msg"))+" ")]):e._e(),a("p",{staticClass:"response-output"},[e._v(e._s(e.responseText))]),e.saveSuccess?a("p",{staticClass:"response-output"},[e._v(" "+e._s(e.$t("config-editor.success-note-l1"))+" "+e._s(e.$t("config-editor.success-note-l2"))+" "+e._s(e.$t("config-editor.success-note-l3"))+" ")]):e._e(),a("p",{staticClass:"note"},[e._v(e._s(e.$t("config.backup-note")))])],1)},qe=[],Ge=a("bcb2"),Je=a.n(Ge),Ye=a("831b"),Xe=a("94f8"),Ze=a.n(Xe);const Qe=e=>{const t=e=>e.toString().toUpperCase(),a=Ze()(t(e.user)+t(e.hash));return t(a)},et=e=>{const t=e.map(e=>Qe(e));let a=!1;return document.cookie.split(";").forEach(e=>{if(e&&e.split("=").length>1){const n=e.split("=")[0].trim(),s=e.split("=")[1].trim();n===A["cookieKeys"].AUTH_TOKEN&&t.includes(s)&&(a=!0)}}),a},tt=(e,t,a)=>{let n;return e?t?a.forEach(a=>{a.user.toLowerCase()===e.toLowerCase()&&(n=a.hash.toLowerCase()===Ze()(t).toString().toLowerCase()?{correct:!0,msg:"Logging in..."}:{correct:!1,msg:"Incorrect Password"})}):n={correct:!1,msg:"Missing Password"}:n={correct:!1,msg:"Missing Username"},n||{correct:!1,msg:"User not found"}},at=(e,t,a)=>{const n=new Date,s=new Date(n.setTime(n.getTime()+a)).toGMTString(),o={user:e,hash:Ze()(t).toString().toLowerCase()};document.cookie=`authenticationToken=${Qe(o)};`+(a>0?"expires="+s:""),localStorage.setItem(A["localStorageKeys"].USERNAME,e)},nt=()=>{document.cookie="authenticationToken=null",localStorage.removeItem(A["localStorageKeys"].USERNAME)},st=e=>{if(!e||0===e.length)return!0;if(!et(e))return!1;const t=localStorage[A["localStorageKeys"].USERNAME];let a=!1;return e.forEach(e=>{e.user===t&&"admin"===e.type&&(a=!0)}),a};var ot=a("bc3a"),it=a.n(ot),rt={name:"JsonEditor",props:{config:Object},components:{VJsoneditor:Je.a},data(){return{jsonData:this.config,errorMessages:[],saveMode:"file",options:{schema:Ye,mode:"tree",modes:["tree","code","preview"],name:"config",onValidationError:this.validationErrors},jsonParser:Fe,responseText:"",saveSuccess:void 0,allowWriteToDisk:this.shouldAllowWriteToDisk()}},computed:{isValid(){return this.errorMessages.length<1}},mounted(){this.allowWriteToDisk||(this.saveMode="local")},methods:{shouldAllowWriteToDisk(){const{appConfig:e}=this.config;return!1!==e.allowConfigEdit&&st(e.auth)},save(){"local"!==this.saveMode&&this.allowWriteToDisk?"file"===this.saveMode?this.writeConfigToDisk():this.$toasted.show(this.$t("config-editor.error-msg-save-mode")):this.saveConfigLocally()},writeConfigToDisk(){const e=this.jsonParser(this.jsonData),t=Object({NODE_ENV:"production",VUE_APP_VERSION:"1.5.3",BASE_URL:"/"}).VUE_APP_DOMAIN||window.location.origin,a=t+"/config-manager/save",n={"Content-Type":"text/plain"},s={config:e,timestamp:new Date},o=it.a.post(a,s,n);o.then(e=>{this.saveSuccess=e.data.success||!1,this.responseText=e.data.message,this.saveSuccess?(this.carefullyClearLocalStorage(),this.showToast(this.$t("config-editor.success-msg-disk"),!0)):this.showToast(this.$t("config-editor.error-msg-cannot-save"),!1)}).catch(e=>{this.saveSuccess=!1,this.responseText=e,this.showToast(e,!1)})},saveConfigLocally(){const e=this.jsonData;e.sections&&localStorage.setItem(A["localStorageKeys"].CONF_SECTIONS,JSON.stringify(e.sections)),e.pageInfo&&localStorage.setItem(A["localStorageKeys"].PAGE_INFO,JSON.stringify(e.pageInfo)),e.appConfig&&(e.appConfig.auth=this.config.appConfig.auth||[],localStorage.setItem(A["localStorageKeys"].APP_CONFIG,JSON.stringify(e.appConfig))),e.appConfig.theme&&localStorage.setItem(A["localStorageKeys"].THEME,e.appConfig.theme),this.showToast(this.$t("config-editor.success-msg-local"),!0)},carefullyClearLocalStorage(){localStorage.removeItem(A["localStorageKeys"].PAGE_INFO),localStorage.removeItem(A["localStorageKeys"].APP_CONFIG),localStorage.removeItem(A["localStorageKeys"].CONF_SECTIONS)},validationErrors(e){const t=[];e.forEach(e=>{switch(e.type){case"validation":t.push({type:"validation",msg:this.$t("config-editor.warning-msg-validation")+": "+`${e.error.keyword} ${e.error.message}`});break;case"error":t.push({type:"parse",msg:e.message});break;default:t.push({type:"editor",msg:this.$t("config-editor.error-msg-bad-json")});break}}),this.errorMessages=t},showToast(e,t){this.$toasted.show(e,{className:"toast-"+(t?"success":"error")})}}},lt=rt,ct=(a("80a7"),Object(v["a"])(lt,We,qe,!1,null,null,null)),ut=ct.exports,dt=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"css-editor-outer"},[a("prism-editor",{staticClass:"my-editor",attrs:{highlight:e.highlighter,"line-numbers":""},model:{value:e.customCss,callback:function(t){e.customCss=t},expression:"customCss"}}),a("button",{staticClass:"save-button",on:{click:function(t){return e.save()}}},[e._v(e._s(e.$t("config.css-save-btn")))]),a("p",{staticClass:"quick-note"},[a("b",[e._v(e._s(e.$t("config.css-note-label"))+":")]),e._v(" "+e._s(e.$t("config.css-note-l1"))+" "+e._s(e.$t("config.css-note-l2"))+" "+e._s(e.$t("config.css-note-l3"))+" ")]),a("CustomThemeMaker",{staticClass:"color-config",attrs:{themeToEdit:e.currentTheme}})],1)},_t=[],mt=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{class:"theme-configurator-wrapper "+(e.showingAllVars?"showing-all":"")},[a("h3",{staticClass:"configurator-title"},[e._v(e._s(e.$t("theme-maker.title")))]),a("div",{staticClass:"color-row-container"},e._l(Object.keys(e.customColors),(function(t){return a("div",{key:t,staticClass:"color-row"},[a("label",{staticClass:"color-name",attrs:{for:"color-input-"+t}},[e._v(" "+e._s(t.replaceAll("-"," "))+" ")]),e.isColor(t,e.customColors[t])?a("v-swatches",{attrs:{"show-fallback":"","fallback-input-type":"color","popover-x":"left",swatches:e.swatches},on:{input:function(a){return e.setVariable(t,e.customColors[t])}},model:{value:e.customColors[t],callback:function(a){e.$set(e.customColors,t,a)},expression:"customColors[colorName]"}},[a("input",{staticClass:"swatch-input form__input__element",style:e.makeSwatchStyles(t),attrs:{slot:"trigger",id:"color-input-"+t,readonly:""},domProps:{value:e.customColors[t]},slot:"trigger"})]):a("input",{staticClass:"misc-input",attrs:{id:"color-input-"+t},domProps:{value:e.customColors[t]},on:{input:function(a){return e.setVariable(t,e.customColors[t])}}})],1)})),0),a("p",{staticClass:"action-text-btn",on:{click:e.exportToClipboard}},[e._v(" "+e._s(e.$t("theme-maker.export-button"))+" ")]),a("p",{staticClass:"action-text-btn show-all-vars-btn",on:{click:e.resetAndSave}},[e._v(" "+e._s(e.$t("theme-maker.reset-button"))+" '"+e._s(e.themeToEdit)+"' ")]),a("p",{staticClass:"action-text-btn",on:{click:e.findAllVariableNames}},[e._v(" "+e._s(e.$t("theme-maker.show-all-button"))+" ")]),a("div",{staticClass:"action-buttons"},[a("Button",{attrs:{click:e.saveChanges}},[a("SaveIcon"),e._v(" "+e._s(e.$t("theme-maker.save-button"))+" ")],1),a("Button",{attrs:{click:e.resetUnsavedColors}},[a("CancelIcon"),e._v(" "+e._s(e.$t("theme-maker.cancel-button"))+" ")],1)],1)])},gt=[],ht=a("7f75"),pt=a.n(ht),ft=(a("b3a4"),function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("button",{class:e.disallow?"disallowed":"",attrs:{disabled:e.disabled},on:{click:function(t){return e.click()}}},[e._t("default"),e._t("text"),e._t("icon")],2)}),bt=[],kt={name:"Button",props:{text:String,click:Function,disabled:Boolean,disallow:Boolean}},wt=kt,vt=(a("24e6"),Object(v["a"])(wt,ft,bt,!1,null,"ec408f00",null)),yt=vt.exports,Ct=a("90ff"),St=a.n(Ct),It=a("90de"),xt=a.n(It),Tt={name:"ThemeMaker",components:{VSwatches:pt.a,Button:yt,SaveIcon:St.a,CancelIcon:xt.a},data(){return{customColors:this.makeInitialData(A["mainCssVars"]),showingAllVars:!1,swatches:A["swatches"]}},props:{themeToEdit:String},methods:{getCssVariableValue(e){return getComputedStyle(document.documentElement).getPropertyValue(e).trim()||"inherit"},setVariable(e,t){document.documentElement.style.setProperty("--"+e,t)},saveChanges(){const e=JSON.parse(localStorage[A["localStorageKeys"].CUSTOM_COLORS]||"{}");e[this.themeToEdit]=this.customColors,localStorage.setItem(A["localStorageKeys"].CUSTOM_COLORS,JSON.stringify(e)),this.$toasted.show(this.$t("theme-maker.saved-toast",{theme:this.themeToEdit})),this.$emit("closeThemeConfigurator")},resetUnsavedColors(){const e=Object.keys(this.customColors);e.forEach(e=>{document.documentElement.style.removeProperty("--"+e)}),this.customColors=this.makeInitialData(A["mainCssVars"]),this.$emit("closeThemeConfigurator")},resetAndSave(){const e=JSON.parse(localStorage[A["localStorageKeys"].CUSTOM_COLORS]||"{}");delete e[this.themeToEdit],localStorage.setItem(A["localStorageKeys"].CUSTOM_COLORS,JSON.stringify(e)),this.resetUnsavedColors(),this.$toasted.show(this.$t("theme-maker.reset-toast",{theme:this.themeToEdit}))},exportToClipboard(){const e=this.themeToEdit.replace(/^\w/,e=>e.toUpperCase());let t=`// Custom Colors for ${e}\n`;Object.keys(this.customColors).forEach(e=>{t+=`--${e}: ${this.customColors[e]};\n`}),navigator.clipboard.writeText(t),this.$toasted.show(this.$t("theme-maker.copied-toast",{theme:e}))},makeInitialData(e){const t={},a=e=>/^--/.exec(e),n=e=>a(e)?e:"--"+e,s=e=>a(e)?e.replace("--",""):e;return e.forEach(e=>{t[s(e)]=this.getCssVariableValue(n(e))}),t},findAllVariableNames(){const e=Array.from(document.styleSheets).filter(e=>null===e.href||e.href.startsWith(window.location.origin)).reduce((e,t)=>[...e,...Array.from(t.cssRules).reduce((e,t)=>":root"===t.selectorText?[...e,...Array.from(t.style).filter(e=>e.startsWith("--"))]:e,[])],[]);this.customColors=this.makeInitialData(e),this.showingAllVars=!0},getForegroundColor(e){const t=e=>{const t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(!t||t.length<3)return"black";const a=e=>parseInt(t[e],16);return t?{r:a(1),g:a(2),b:a(3)}:null},a=e=>(299*e.r+587*e.g+114*e.b)/1e3;return a(t(e.trim()))<100?"white":"black"},makeSwatchStyles(e){const t=this.getForegroundColor(this.customColors[e]);return`background:${this.customColors[e]};color:${t}; border: 1px solid ${t}`},isColor(e,t){if(/rem|px|%/.exec(t))return!1;const a=["--curve-factor","--curve-factor-navbar","--curve-factor-small","--dimming-factor","--scroll-bar-width","--header-height","--footer-height","--item-group-padding","--item-shadow","--item-hover-shadow:","--item-icon-transform","--item-icon-transform-hover","--item-group-shadow","--context-menu-shadow","--settings-container-shadow","--side-bar-width"];return!a.includes("--"+e)}}},Ot=Tt,Et=(a("369e"),Object(v["a"])(Ot,mt,gt,!1,null,null,null)),At=Et.exports,$t=a("e57a"),Lt=a("8c7a"),zt=(a("6605"),a("dff1"),a("cabf"),{name:"JsonEditor",props:{config:Object},components:{CustomThemeMaker:At,PrismEditor:$t["a"]},data(){return{customCss:this.config.appConfig.customCss||"\n\n\n\n\n",currentTheme:oe()}},methods:{validate(e){return""===e||e.match(/((?:^\s*)([\w#.@*,:\-.:>,*\s]+)\s*{(?:[\s]*)((?:[A-Za-z\- \s]+[:]\s*['"0-9\w .,/()\-!%]+;?)*)*\s*}(?:\s*))/gim)},save(){let e="";if(this.validate(this.customCss)){const t={...this.config.appConfig};t.customCss=this.customCss,localStorage.setItem(A["localStorageKeys"].APP_CONFIG,JSON.stringify(t)),e="Changes saved succesfully",this.inject(this.customCss),""===this.customCss&&setTimeout(()=>{location.reload()},1500)}else e="Error - Invalid CSS";this.$toasted.show(e)},inject(e){const t=e.replace(/<\/?[^>]+(>|$)/g,""),a=document.createElement("style");a.textContent=t,document.head.append(a)},highlighter(e){return Object(Lt["highlight"])(e,Lt["languages"].css)}}}),jt=zt,Nt=(a("9e50"),Object(v["a"])(jt,dt,_t,!1,null,null,null)),Mt=Nt.exports,Bt=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"cloud-backup-restore-wrapper"},[a("div",{staticClass:"section intro"},[a("h2",[e._v(e._s(e.$t("cloud-sync.title")))]),a("p",{staticClass:"intro"},[e._v(" "+e._s(e.$t("cloud-sync.intro-l1"))+" "),a("br"),a("br"),e._v(" "+e._s(e.$t("cloud-sync.intro-l2"))+" "),a("br"),e._v(" "+e._s(e.$t("cloud-sync.intro-l3"))+" "),a("a",{attrs:{href:"https://github.com/Lissy93/dashy/blob/master/docs/backup-restore.md"}},[e._v("docs")])])]),a("div",{staticClass:"section backup-section"},[(e.backupId,a("h3",[e._v(e._s(e.$t("cloud-sync.backup-title-setup")))])),a("Input",{attrs:{name:"backup-password",label:e.backupId?e.$t("cloud-sync.password-label-update"):e.$t("cloud-sync.password-label-setup"),layout:"vertical",type:"password"},model:{value:e.backupPassword,callback:function(t){e.backupPassword=t},expression:"backupPassword"}}),a("Button",{attrs:{click:e.checkPass},scopedSlots:e._u([{key:"text",fn:function(){return[e._v(" "+e._s(e.backupId?e.$t("cloud-sync.backup-button-update"):e.$t("cloud-sync.backup-button-setup"))+" ")]},proxy:!0},{key:"icon",fn:function(){return[a("IconBackup")]},proxy:!0}])}),e.backupId?a("div",{staticClass:"results-view"},[a("span",{staticClass:"backup-id-label"},[e._v(e._s(e.$t("cloud-sync.backup-id-label"))+": ")]),a("pre",{staticClass:"backup-id-value"},[e._v(e._s(e.backupId))]),a("span",{staticClass:"backup-id-note"},[e._v(e._s(e.$t("cloud-sync.backup-id-note")))])]):e._e()],1),a("div",{staticClass:"section restore-section"},[a("h3",[e._v(e._s(e.$t("cloud-sync.restore-title")))]),a("Input",{attrs:{name:"restore-code",label:e.$t("cloud-sync.restore-id-label")},model:{value:e.restoreCode,callback:function(t){e.restoreCode=t},expression:"restoreCode"}}),a("Input",{attrs:{name:"restore-password",label:e.$t("cloud-sync.restore-password-label"),type:"password"},model:{value:e.restorePassword,callback:function(t){e.restorePassword=t},expression:"restorePassword"}}),a("Button",{attrs:{click:e.restoreBackup},scopedSlots:e._u([{key:"text",fn:function(){return[e._v(e._s(e.$t("cloud-sync.restore-button")))]},proxy:!0},{key:"icon",fn:function(){return[a("IconRestore")]},proxy:!0}])})],1)])},Vt=[],Dt=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{class:"input-container "+e.layout},[e.label?a("label",{attrs:{for:"name"}},[e._v(e._s(e.label))]):e._e(),a("input",{attrs:{type:e.type,name:e.name,id:e.name,placeholder:e.placeholder},domProps:{value:e.value},on:{input:function(t){return e.updateValue(t.target.value)}}})])},Ht=[],Pt={name:"Input",props:{value:String,label:String,name:String,placeholder:String,type:{default:"text",type:String},layout:{validator:e=>-1!==["horizontal","vertical"].indexOf(e),type:String,default:"vertical"}},methods:{updateValue(e){this.$emit("input",e)}}},Ut=Pt,Rt=(a("2d25"),Object(v["a"])(Ut,Dt,Ht,!1,null,"5df13ed2",null)),Kt=Rt.exports,Ft=a("3a1e"),Wt=a.n(Ft),qt=a("e6a4"),Gt=a.n(qt),Jt=a("c198"),Yt=a.n(Jt),Xt=a("f8d5"),Zt=a.n(Xt);const Qt=A["backupEndpoint"],ea=(e,t)=>{const a=JSON.stringify(e),n=Yt.a.encrypt(a,t);return n.toString()},ta=(e,t)=>Yt.a.decrypt(e,t).toString(Zt.a),aa=e=>Ze()(e).toString().slice(0,14),na=(e,t)=>it.a.post(Qt,{userData:ea(e,t),subHash:aa(t)}),sa=(e,t,a)=>it.a.put(Qt,{backupId:a,userData:ea(e,t),subHash:aa(t)}),oa=e=>Object.entries(e).map(e=>e.map(encodeURIComponent).join("=")).join("&"),ia=(e,t)=>{const a=oa({backupId:e,subHash:aa(t)}),n=`${Qt}/?${a}`;return new Promise((e,a)=>{it.a.get(n).then(n=>{if(!n.data||n.data.errorMsg)a(n.data.errorMsg||"Error");else{const o=ta(n.data.userData.userData,t);try{e(JSON.parse(o))}catch(s){a(s)}}})})};var ra={name:"CloudBackupRestore",props:{config:Object},data(){return{backupPassword:"",restorePassword:"",restoreCode:"",backupId:localStorage[A["localStorageKeys"].BACKUP_ID]||""}},components:{Button:yt,Input:Kt,IconBackup:Wt.a,IconRestore:Gt.a},methods:{restoreBackup(){ia(this.restoreCode,this.restorePassword).then(e=>{this.restoreFromBackup(e,this.restoreCode)}).catch(e=>{this.showErrorMsg(e)})},checkPass(){const e=localStorage[A["localStorageKeys"].BACKUP_HASH]||void 0;e?e===this.makeHash(this.backupPassword)?this.makeUpdate():this.showErrorMsg(this.$t("cloud-sync.backup-error-password")):this.makeBackup()},makeBackup(){na(this.config,this.backupPassword).then(e=>{e.data&&!e.data.errorMsg&&e.data.backupId?this.updateUiAfterBackup(e.data.backupId,!1):this.showErrorMsg(e.data.errorMsg||"Error")}).catch(()=>{this.showErrorMsg(this.$t("cloud-sync.backup-error-unknown"))})},makeUpdate(){sa(this.config,this.backupPassword,this.backupId).then(e=>{e.data&&!e.data.errorMsg&&e.data.backupId?this.updateUiAfterBackup(e.data.backupId,!0):this.showErrorMsg(e.data.errorMsg||"Error")}).catch(()=>{this.showErrorMsg(this.$t("cloud-sync.backup-error-unknown"))})},restoreFromBackup(e,t){localStorage.setItem(A["localStorageKeys"].CONF_SECTIONS,JSON.stringify(e.sections)),localStorage.setItem(A["localStorageKeys"].APP_CONFIG,JSON.stringify(e.appConfig)),localStorage.setItem(A["localStorageKeys"].PAGE_INFO,JSON.stringify(e.pageInfo)),e.appConfig.theme&&localStorage.setItem(A["localStorageKeys"].THEME,e.appConfig.theme),this.setBackupIdLocally(t,this.restorePassword),this.showSuccessMsg(this.$t("cloud-sync.restore-success-msg")),setTimeout(()=>{location.reload()},1500)},updateUiAfterBackup(e,t=!1){this.setBackupIdLocally(e,this.backupPassword),this.showSuccessMsg(`${t?"Update":"Backup"} ${this.$t("cloud-sync.backup-success-msg")}`),this.backupPassword=""},showErrorMsg(e){this.$toasted.show(e,{className:"toast-error"})},showSuccessMsg(e){this.$toasted.show(e,{className:"toast-success"})},makeHash(e){return Ze()(e).toString()},setBackupIdLocally(e,t){this.backupId=e;const a=this.makeHash(t);localStorage.setItem(A["localStorageKeys"].BACKUP_ID,e),localStorage.setItem(A["localStorageKeys"].BACKUP_HASH,a)}}},la=ra,ca=(a("5583"),Object(v["a"])(la,Bt,Vt,!1,null,"079113a8",null)),ua=ca.exports,da=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("modal",{attrs:{name:e.modalName,resizable:!0,width:"50%",height:"60%",classes:"dashy-modal"}},[a("div",{staticClass:"rebuild-app-container"},[a("h3",{staticClass:"rebuild-app-title"},[e._v(e._s(e.$t("app-rebuild.title")))]),a("p",[e._v(" "+e._s(e.$t("app-rebuild.rebuild-note-l1"))+" "+e._s(e.$t("app-rebuild.rebuild-note-l2"))),a("br"),e._v(" "+e._s(e.$t("app-rebuild.rebuild-note-l3"))+" ")]),a("Button",{attrs:{click:e.startBuild,disabled:e.loading||!e.allowRebuild,disallow:!e.allowRebuild},scopedSlots:e._u([{key:"text",fn:function(){return[e._v(" "+e._s(e.loading?e.$t("app-rebuild.rebuilding-status-1"):e.$t("app-rebuild.rebuild-button"))+" ")]},proxy:!0},{key:"icon",fn:function(){return[a("RebuildIcon")]},proxy:!0}])}),e.allowRebuild?e._e():a("div",[a("p",{staticClass:"disallow-rebuild-msg"},[e._v(e._s(e.$t("app-rebuild.error-permission")))])]),e.loading?a("div",{staticClass:"loader-info"},[a("LoadingAnimation",{staticClass:"loader"}),a("p",{staticClass:"loading-message"},[e._v(e._s(e.$t("app-rebuild.rebuilding-status-2"))+"...")])],1):e._e(),void 0!==e.success?a("div",{staticClass:"rebuild-response"},[e.success?a("p",{staticClass:"response-status success"},[e._v(" ✅ "+e._s(e.$t("app-rebuild.success-msg"))+" ")]):a("p",{staticClass:"response-status failure"},[e._v(" ❌ "+e._s(e.$t("app-rebuild.fail-msg"))+" ")]),a("pre",{staticClass:"output"},[a("code",[e._v(e._s(e.output||e.error))])]),a("p",{staticClass:"rebuild-message"},[e._v(e._s(e.message))]),e.success?a("p",{staticClass:"rebuild-message"},[e._v(" "+e._s(e.$t("app-rebuild.reload-note"))+" ")]):e._e(),e.success?a("Button",{attrs:{click:e.refreshPage},scopedSlots:e._u([{key:"text",fn:function(){return[e._v(e._s(e.$t("app-rebuild.reload-button")))]},proxy:!0},{key:"icon",fn:function(){return[a("ReloadIcon")]},proxy:!0}],null,!1,3658341317)}):e._e()],1):e._e()],1)])},_a=[],ma=a("0911"),ga=a.n(ma),ha=a("3ff5"),pa=a.n(ha),fa=a("6266"),ba=a.n(fa),ka={name:"RebuildApp",inject:["config"],components:{Button:yt,RebuildIcon:ga.a,ReloadIcon:pa.a,LoadingAnimation:ba.a},data:()=>({modalName:A["modalNames"].REBUILD_APP,loading:!1,success:void 0,error:"",output:"",message:"",allowRebuild:!0}),methods:{startBuild(){const e=Object({NODE_ENV:"production",VUE_APP_VERSION:"1.5.3",BASE_URL:"/"}).VUE_APP_DOMAIN||window.location.origin,t=e+"/config-manager/rebuild";this.loading=!0,it.a.get(t).then(e=>{this.finished(e.data||!1)}).catch(e=>{this.finished({success:!1,error:e})})},finished(e){if(this.loading=!1,e){const{success:t,output:a,error:n,message:s}=e;this.success=t,this.output=a,this.message=s,this.error=n}this.$toasted.show(this.success?"✅ "+this.$t("app-rebuild.success-msg"):"❌ "+this.$t("app-rebuild.fail-msg"),{className:"toast-"+(this.success?"success":"error")})},refreshPage(){location.reload()}},mounted(){this.config&&this.config.appConfig&&!1===this.config.appConfig.allowConfigEdit&&(this.allowRebuild=!1)}},wa=ka,va=(a("1171"),Object(v["a"])(wa,da,_a,!1,null,"306fcc3a",null)),ya=va.exports,Ca=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"app-version"},[a("p",[e._v(" "+e._s(e.$t("updates.app-version-note"))+" "+e._s(e.appVersion)+" ")]),e.checksEnabled?a("div",[e.finished?e._e():a("p",[e._v(" "+e._s(e.error?"Error checking for updates.":"Chcekcing for Updates...")+" ")]),e.finished&&e.isUpToDate?a("p",{staticClass:"up-to-date"},[e._v(" ✅ "+e._s(e.$t("updates.up-to-date"))+" ")]):e.finished&&!e.veryOutOfDate?a("p",{staticClass:"update-availible"},[e._v(" ⚠️"+e._s(e.$t("updates.out-of-date"))+": "),a("b",[e._v(e._s(e.latestVersion))])]):e.finished&&e.veryOutOfDate?a("p",{staticClass:"big-update-availible"},[e._v(" ❗ "+e._s(e.$t("updates.out-of-date"))+": "),a("b",[e._v(e._s(e.latestVersion))]),a("span",{staticClass:"please-update"},[e._v(" "+e._s(e.$t("updates.unsupported-version-l1"))+"."),a("br"),e._v(" "+e._s(e.$t("updates.unsupported-version-2"))+" "+e._s(e.latestVersion)+" ")])]):e._e()]):e._e()])},Sa=[],Ia={name:"AppInfoModal",inject:["config"],data(){return{appVersion:"1.5.3",latestVersion:"",checksEnabled:!0,isUpToDate:!0,veryOutOfDate:!1,finished:!1,error:!1}},mounted(){const e=this.config.appConfig||{};!this.appVersion||e&&e.disableUpdateChecks?this.checksEnabled=!1:this.checkVersion()},methods:{checkVersion(){const e="https://raw.githubusercontent.com/Lissy93/dashy/master/package.json";it.a.get(e).then(e=>{e&&e.data&&e.data.version&&(this.latestVersion=e.data.version,this.isUpToDate=this.checkIfUpToDate(this.appVersion,this.latestVersion),this.finished=!0)}).catch(()=>{this.error=!0})},checkIfUpToDate(e,t){const a=e=>parseInt(e.replaceAll(".",""),10),n=a(t)-a(e);return n>5&&(this.veryOutOfDate=!0),n<=0}}},xa=Ia,Ta=(a("f255"),Object(v["a"])(xa,Ca,Sa,!1,null,"49d7ffdf",null)),Oa=Ta.exports,Ea=a("cbd9"),Aa=a.n(Ea),$a=a("0278"),La=a.n($a),za=a("e7fa"),ja=a.n(za),Na=a("7da9"),Ma=a.n(Na),Ba=a("6780"),Va=a.n(Ba),Da=a("0845"),Ha=a.n(Da),Pa=a("2413"),Ua=a.n(Pa),Ra={name:"ConfigContainer",data(){return{jsonParser:Fe,backupId:localStorage[A["localStorageKeys"].BACKUP_ID]||"",appVersion:"1.5.3",latestVersion:""}},props:{config:Object},computed:{sections:function(){return this.config.sections},yaml(){return this.jsonParser(this.config)}},components:{JsonEditor:ut,CustomCssEditor:Mt,CloudBackupRestore:ua,RebuildApp:ya,AppVersion:Oa,DownloadIcon:Aa.a,DeleteIcon:La.a,EditIcon:ja.a,CloudIcon:Va.a,CustomCssIcon:Ma.a,LanguageIcon:Ha.a,RebuildIcon:ga.a,IconAbout:Ua.a},methods:{navigateToTab(e){const t=this.$refs.tabView.navItems[e];this.$refs.tabView.activeTabItem(t)},openRebuildAppModal(){this.$modal.show(A["modalNames"].REBUILD_APP)},openAboutModal(){this.$modal.show(A["modalNames"].ABOUT_APP)},openLanguageSwitchModal(){this.$modal.show(A["modalNames"].LANG_SWITCHER)},copyConfigToClipboard(){navigator.clipboard.writeText(this.jsonParser(this.config)),this.$toasted.show(this.$t("config.data-copied-msg"))},resetLocalSettings(){const e=`${this.$t("config.reset-config-msg-l1")}${this.$t("config.reset-config-msg-l2")}\n\n${this.$t("config.reset-config-msg-l3")}`,t=confirm(e);t&&(localStorage.clear(),this.$toasted.show(this.$t("config.data-cleared-msg")),setTimeout(()=>{location.reload(!0)},1900))},downloadConfigFile(e,t){const a=document.createElement("a");a.setAttribute("href","data:text/plain;charset=utf-8, "+encodeURIComponent(t)),a.setAttribute("download",e),a.style.display="none",document.body.appendChild(a),a.click(),document.body.removeChild(a)},initiateStntaxHighlighter(){Ve.a.registerLanguage("yaml",He.a);const e=Ve.a.highlight(this.jsonParser(this.config),{language:"yaml"}).value;document.getElementById("conf-yaml").innerHTML=e},getLanguage(){const e=le();return e?`${e.flag} ${e.name}`:""}},mounted(){this.initiateStntaxHighlighter()}},Ka=Ra,Fa=(a("e1d5"),a("1d47"),Object(v["a"])(Ka,Ne,Me,!1,null,"43a15f79",null)),Wa=Fa.exports,qa=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"language-switcher"},[a("h3",{staticClass:"title"},[e._v(e._s(e.$t("language-switcher.title")))]),a("p",{staticClass:"intro"},[e._v(e._s(e.$t("language-switcher.dropdown-label"))+":")]),a("v-select",{staticClass:"language-dropdown",attrs:{selectOnTab:!0,options:e.availibleLanguages,label:"name",input:e.setLangLocally()},model:{value:e.language,callback:function(t){e.language=t},expression:"language"}}),a("Button",{staticClass:"save-button",attrs:{click:e.saveLanguage,disallow:!e.language}},[e._v(" "+e._s(e.$t("language-switcher.save-button"))+" "),a("SaveConfigIcon")],1),e.language?a("p",[e._v(e._s(e.language.flag)+" "+e._s(e.language.name))]):e._e(),e.$i18n.availableLocales.length<=1?a("p",{staticClass:"sad-times"},[e._v(" There are not currently any additional languages supported, but stay tuned as more are on their way! ")]):e._e()],1)},Ga=[],Ja={name:"LanguageSwitcher",inject:["config"],components:{Button:yt,SaveConfigIcon:St.a},data(){return{availibleLanguages:ee,language:"",modalName:A["modalNames"].LANG_SWITCHER}},methods:{saveLanguage(){const e=this.language;if(this.checkLocale(e)){localStorage.setItem(A["localStorageKeys"].LANGUAGE,e.code),this.setLangLocally();const t=e.flag+" "+`${this.$t("language-switcher.success-msg")} ${e.name}`;this.$toasted.show(t,{className:"toast-success"}),this.$modal.hide(this.modalName)}else this.$toasted.show("Unable to update language",{className:"toast-error"})},checkLocale(e){if(!e||!e.code)return!1;const t=this.$i18n.availableLocales;return t.includes(e.code)},setLangLocally(){this.language&&this.language.code&&(this.$i18n.locale=this.language.code)}}},Ya=Ja,Xa=(a("570c"),Object(v["a"])(Ya,qa,Ga,!1,null,"631f0843",null)),Za=Xa.exports,Qa={name:"ConfigLauncher",data(){return{modalNames:A["modalNames"]}},components:{IconSpanner:je.a,ConfigContainer:Wa,LanguageSwitcher:Za},props:{sections:Array,pageInfo:Object,appConfig:Object},methods:{showEditor:function(){this.$modal.show(A["modalNames"].CONF_EDITOR),this.$emit("modalChanged",!0)},combineConfig(){const e={};return e[A["topLevelConfKeys"].APP_CONFIG]=this.appConfig,e[A["topLevelConfKeys"].PAGE_INFO]=this.pageInfo,e[A["topLevelConfKeys"].SECTIONS]=this.sections,e[A["topLevelConfKeys"].APP_CONFIG].theme=localStorage[A["localStorageKeys"].THEME]||e[A["topLevelConfKeys"].APP_CONFIG].theme,e},tooltip(e){return{content:e,trigger:"hover focus",delay:250}}}},en=Qa,tn=(a("07b7"),Object(v["a"])(en,$e,Le,!1,null,"766377f2",null)),an=tn.exports,nn=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.closeThemeConfigurator,expression:"closeThemeConfigurator"}],staticClass:"theme-selector-section"},[a("div",[a("span",{staticClass:"theme-label"},[e._v(e._s(e.$t("settings.theme-label")))]),a("v-select",{staticClass:"theme-dropdown",attrs:{options:e.themeNames,tabindex:-2},model:{value:e.selectedTheme,callback:function(t){e.selectedTheme=t},expression:"selectedTheme"}})],1),a("IconPalette",{staticClass:"color-button",on:{click:e.openThemeConfigurator}}),e.themeConfiguratorOpen?a("CustomThemeMaker",{attrs:{themeToEdit:e.selectedTheme},on:{closeThemeConfigurator:function(t){return e.closeThemeConfigurator()}}}):e._e()],1)},sn=[];const on=function(e){ue(),console.warn(e),de()};var rn=on;const ln=()=>oe(),cn=e=>{A["mainCssVars"].forEach(e=>{document.documentElement.style.removeProperty("--"+e)});const t=ie()[e];t&&Object.keys(t).forEach(e=>{document.documentElement.style.setProperty("--"+e,t[e])})},un=e=>{const t=document.getElementsByTagName("html")[0];t.hasAttribute("data-theme")&&t.removeAttribute("data-theme"),t.setAttribute("data-theme",e)},dn=function(){const e=e=>{const t=document.createElement("link");return t.rel="stylesheet",t.href=e,document.head.appendChild(t),new Promise((e,a)=>{t.onload=t=>{const{sheet:a}=t.target;a.disabled=!0,e(a)},t.onerror=a})},t=(e,t)=>!(!t||"custom"!==t&&!e[t])||(rn(`Theme: '${t||"[not selected]"}' does not exist.`),!1),a=(e,a)=>{if(t(e,a)){const t=e;Object.keys(e).forEach(e=>{t[e].disabled=e!==a})}},n={};return{add(t,a){return e(a).then(e=>{n[t]=e})},set theme(e){a(n,e)},get theme(){return Object.keys(n).find(e=>!n[e].disabled)}}};var _n=a("4400"),mn=a.n(_n),gn={name:"ThemeSelector",props:{externalThemes:Object,confTheme:String,userThemes:Array},components:{CustomThemeMaker:At,IconPalette:mn.a},watch:{selectedTheme(e){this.updateTheme(e)}},data(){return{selectedTheme:this.getInitialTheme(),builtInThemes:[...$.a.builtInThemes,...this.userThemes],themeHelper:new dn,themeConfiguratorOpen:!1,ApplyLocalTheme:un,ApplyCustomVariables:cn}},computed:{themeNames:function(){const e=Object.keys(this.externalThemes),t=["custom"];return[...e,...this.builtInThemes,...t]}},created(){const e=Object.keys(this.externalThemes).map(e=>this.themeHelper.add(e,this.externalThemes[e]));this.isThemeLocal(this.selectedTheme)?this.updateTheme(this.selectedTheme):this.selectedTheme!==$.a.theme&&Promise.all(e).then(()=>{this.updateTheme(this.selectedTheme)})},methods:{getInitialTheme(){return localStorage[A["localStorageKeys"].THEME]||this.confTheme||$.a.theme},isThemeLocal(e){return this.builtInThemes.includes(e)},openThemeConfigurator(){this.$emit("modalChanged",!0),this.themeConfiguratorOpen=!0},closeThemeConfigurator(){this.themeConfiguratorOpen=!1},updateTheme(e){"Default"===e?(this.resetToDefault(),this.themeHelper.theme="Default"):this.isThemeLocal(e)?this.ApplyLocalTheme(e):this.themeHelper.theme=e,this.ApplyCustomVariables(e),localStorage.setItem(A["localStorageKeys"].THEME,e)},resetToDefault(){document.getElementsByTagName("html")[0].removeAttribute("data-theme")}}},hn=gn,pn=(a("4ade"),Object(v["a"])(hn,nn,sn,!1,null,null,null)),fn=pn.exports,bn=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("span",{staticClass:"options-label"},[e._v(e._s(e.$t("settings.layout-label")))]),a("div",{staticClass:"display-options"},[a("IconDeafault",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.layout-auto")),expression:"tooltip($t('settings.layout-auto'))"}],class:"layout-icon "+("auto"===e.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateDisplayLayout("auto")}}}),a("IconHorizontal",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.layout-horizontal")),expression:"tooltip($t('settings.layout-horizontal'))"}],class:"layout-icon "+("horizontal"===e.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateDisplayLayout("horizontal")}}}),a("IconVertical",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.layout-vertical")),expression:"tooltip($t('settings.layout-vertical'))"}],class:"layout-icon "+("vertical"===e.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateDisplayLayout("vertical")}}})],1)])},kn=[],wn=a("c715"),vn=a.n(wn),yn=a("570d"),Cn=a.n(yn),Sn=a("f9d7"),In=a.n(Sn),xn={name:"LayoutSelector",data(){return{input:""}},props:{displayLayout:String},components:{IconDeafault:vn.a,IconHorizontal:Cn.a,IconVertical:In.a},methods:{updateDisplayLayout(e){this.$emit("layoutUpdated",e)},tooltip(e){return{content:e,trigger:"hover focus",delay:250}}}},Tn=xn,On=(a("5dbe"),Object(v["a"])(Tn,bn,kn,!1,null,"b3a6111c",null)),En=On.exports,An=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("span",{staticClass:"options-label"},[e._v(e._s(e.$t("settings.item-size-label")))]),a("div",{staticClass:"display-options"},[a("IconSmall",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.item-size-small")),expression:"tooltip($t('settings.item-size-small'))"}],class:"layout-icon "+("small"===e.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateIconSize("small")}}}),a("IconMedium",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.item-size-medium")),expression:"tooltip($t('settings.item-size-medium'))"}],class:"layout-icon "+("medium"===e.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateIconSize("medium")}}}),a("IconLarge",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip(e.$t("settings.item-size-large")),expression:"tooltip($t('settings.item-size-large'))"}],class:"layout-icon "+("large"===e.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(t){return e.updateIconSize("large")}}})],1)])},$n=[],Ln=a("d8e8"),zn=a.n(Ln),jn=a("7075"),Nn=a.n(jn),Mn=a("922c"),Bn=a.n(Mn),Vn={name:"IconSizeSelector",data(){return{input:""}},props:{iconSize:String},components:{IconSmall:zn.a,IconMedium:Nn.a,IconLarge:Bn.a},methods:{updateIconSize(e){this.$emit("iconSizeUpdated",e)},tooltip(e){return{content:e,trigger:"hover focus",delay:250}}}},Dn=Vn,Hn=(a("89e2"),Object(v["a"])(Dn,An,$n,!1,null,"1ff45660",null)),Pn=Hn.exports,Un=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("div",{staticClass:"display-options"},[a("IconLogout",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip("Sign Out"),expression:"tooltip('Sign Out')"}],staticClass:"layout-icon",attrs:{tabindex:"-2"},on:{click:function(t){return e.logout()}}})],1)])},Rn=[],Kn=a("0123"),Fn=a.n(Kn),Wn={name:"AppButtons",components:{IconLogout:Fn.a},methods:{logout(){nt(),this.$toasted.show("Logged Out"),setTimeout(()=>{location.reload(!0)},500)},tooltip(e){return{content:e,trigger:"hover focus",delay:250}}}},qn=Wn,Gn=(a("0e1b"),Object(v["a"])(qn,Un,Rn,!1,null,"d69dca9c",null)),Jn=Gn.exports,Yn=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("transition",{attrs:{name:"slide-fade"}},[e.shouldHide?e._e():a("div",{staticClass:"kb-sc-info"},[a("h5",[e._v("There are keyboard shortcuts! ⌨️🙌")]),a("div",{staticClass:"close",attrs:{title:"Hide forever [Esc]"},on:{click:function(t){return e.hideWelcomeHelper()}}},[e._v("x")]),a("p",{attrs:{title:"Press [Esc] to hide this tip forever. See there's even a shortcut for that! 🚀"}},[e._v(" Just start typing to filter. Then use the tab key to cycle through results, and press enter to launch the selected item, or alt + enter to open in a modal. You can hit Esc at anytime to clear the search. Easy 🥳 ")])])])},Xn=[],Zn={name:"KeyboardShortcutInfo",data(){return{shouldHide:!0,timeDelay:3e3}},methods:{shouldHideWelcomeMessage(){return!!localStorage[A["localStorageKeys"].HIDE_WELCOME_BANNER]},hideWelcomeHelper(){this.shouldHide=!0,localStorage.setItem(A["localStorageKeys"].HIDE_WELCOME_BANNER,!0),window.removeEventListener("keyup",this.keyPressEvent)},keyPressEvent(e){27===e.keyCode&&this.hideWelcomeHelper()}},mounted(){const e=this.shouldHideWelcomeMessage();e?this.$destroy():(window.setTimeout(()=>{this.shouldHide=e},this.timeDelay),window.addEventListener("keyup",this.keyPressEvent))}},Qn=Zn,es=(a("9517"),Object(v["a"])(Qn,Yn,Xn,!1,null,"c5f17d9a",null)),ts=es.exports,as=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("modal",{attrs:{name:e.modalName,resizable:!0,width:"40%",height:"60%",classes:"dashy-modal"}},[a("div",{staticClass:"about-modal"},[a("router-link",{attrs:{to:"/about"}},[a("h2",[e._v("Dashy")])]),a("AppVersion"),a("h3",[e._v("Service Worker Status")]),a("code",{domProps:{innerHTML:e._s(e.serviceWorkerInfo)}},[e._v(e._s(e.serviceWorkerInfo))]),a("br"),a("h3",[e._v("Config Validation Status")]),a("code",[e._v(e._s(e.getIsConfigValidStatus()))]),a("br"),a("h3",[e._v("Help & Support")]),a("ul",[a("li",[a("a",{attrs:{href:"https://git.io/JnqPR"}},[e._v("Report a Bug")])]),a("li",[a("a",{attrs:{href:"https://git.io/JnDxL"}},[e._v("Request a Feature")])]),a("li",[a("a",{attrs:{href:"https://git.io/JnDxs"}},[e._v("Ask a Question")])]),a("li",[a("a",{attrs:{href:"https://git.io/JnDxn"}},[e._v("Leave Feedback")])]),a("li",[a("a",{attrs:{href:"https://github.com/Lissy93/dashy/discussions"}},[e._v("Join the Discussion")])])]),a("p",{staticClass:"small-note"},[e._v("Please include the following info in your bug report:")]),a("a",{on:{click:function(t){e.showInfo=!e.showInfo}}},[e._v(e._s(e.showInfo?"Hide":"Show")+" system info")]),e.showInfo?a("div",{staticClass:"system-info"},[a("h4",[e._v("System Info")]),a("code",[a("b",[e._v("Dashy Version:")]),e._v(" V "+e._s(e.appVersion))]),a("br"),a("code",[a("b",[e._v("Browser:")]),e._v(" "+e._s(e.systemInfo.browser))]),a("br"),a("code",[a("b",[e._v("Is Mobile?")]),e._v(" "+e._s(e.systemInfo.isMobile?"Yes":"No"))]),a("br"),a("code",[a("b",[e._v("OS:")]),e._v(" "+e._s(e.systemInfo.os))]),a("br")]):e._e(),a("h3",[e._v("About")]),a("p",{staticClass:"about-text"},[e._v(" Documentation and Source Code available on "),a("a",{attrs:{href:"https://github.com/lissy93/dashy"}},[e._v("GitHub")])]),a("h3",[e._v("License")]),a("code",[e._v("Licensed under MIT X11. Copyright © 2021")])],1)])},ns=[],ss={name:"AppInfoModal",components:{AppVersion:Oa},data(){return{modalName:A["modalNames"].ABOUT_APP,appVersion:"1.5.3",systemInfo:this.getSystemInfo(),serviceWorkerInfo:"Checking...",showInfo:!1}},mounted(){setTimeout(()=>{this.serviceWorkerInfo=this.getSwStatus()},100)},methods:{getIsConfigValidStatus(){const e=Object({NODE_ENV:"production",VUE_APP_VERSION:"1.5.3",BASE_URL:"/"}).VUE_APP_CONFIG_VALID;return void 0===e?"Config validation status is missing":"Config is "+(e?"Valid":"Invalid")},getSwStatus(){const e=sessionStorage[A["sessionStorageKeys"].SW_STATUS],t=e?JSON.parse(e):{};let a="";return t.registered&&(a+="Service worker registered
"),t.ready&&(a+="Dashy is being served from service worker
"),t.cached&&(a+="Content has been cached for offline use
"),t.updateFound&&(a+="New content is downloading
"),t.updated&&(a+="New content is available; please refresh
"),t.offline&&(a+="No internet connection found. App is running in offline mode
"),t.error&&(a+="Error during service worker registration
"),t.devMode&&(a+="App running in dev mode, no need for service worker
"),0===a.length&&(a+="No service worker info available"),a},getSystemInfo(){const{userAgent:e}=navigator;let t="Unknown";-1!==e.indexOf("Win")?t="Windows":-1!==e.indexOf("Mac")?t="MacOS":-1!==e.indexOf("Android")?t="Android":-1!==e.indexOf("iPhone")?t="iOS":-1!==e.indexOf("Linux")?t="Linux":-1!==e.indexOf("X11")&&(t="UNIX");let a="Unknown";a=-1!==e.indexOf("Opera")?"Opera":-1!==e.indexOf("Chrome")?"Chrome":-1!==e.indexOf("Safari")?"Safari":-1!==e.indexOf("Firefox")?"Firefox":-1!==e.indexOf("MSIE")?"IE":"Unknown";const n=!!navigator.userAgent.match(/iphone|android|blackberry/gi)||!1;return{os:t,browser:a,userAgent:e,isMobile:n}}}},os=ss,is=(a("d636"),Object(v["a"])(os,as,ns,!1,null,"77ccbcae",null)),rs=is.exports,ls=a("5703"),cs=a.n(ls),us=a("5f32"),ds=a.n(us),_s={name:"SettingsContainer",props:{displayLayout:String,iconSize:String,externalThemes:Object,appConfig:Object,pageInfo:Object,sections:Array,modalOpen:Boolean},components:{SearchBar:Ae,ConfigLauncher:an,ThemeSelector:fn,LayoutSelector:En,ItemSizeSelector:Pn,AppButtons:Jn,KeyboardShortcutInfo:ts,AppInfoModal:rs,IconOpen:cs.a,IconClose:ds.a},inject:["visibleComponents"],methods:{userIsTypingSomething(e){this.$emit("user-is-searchin",e)},clearFilterInput(){this.$refs.SearchBar.clearFilterInput()},updateDisplayLayout(e){this.$emit("change-display-layout",e)},updateIconSize(e){this.$emit("change-icon-size",e)},modalChanged(e){this.$emit("change-modal-visibility",e)},getInitialTheme(){return this.appConfig.theme||""},logout(){nt(),this.$toasted.show("Logged Out"),setTimeout(()=>{location.reload(!0)},100)},isUserLoggedIn(){return!!localStorage[A["localStorageKeys"].USERNAME]},getUserThemes(){const e=this.appConfig.cssThemes||[];return"string"===typeof e?[e]:e},toggleSettingsVisibility(){this.settingsVisible=!this.settingsVisible,localStorage.setItem(A["localStorageKeys"].HIDE_SETTINGS,this.settingsVisible)},getSettingsVisibility(){return JSON.parse(localStorage[A["localStorageKeys"].HIDE_SETTINGS]||(this.visibleComponents||A["visibleComponents"]).settings)}},data(){return{settingsVisible:this.getSettingsVisibility(),searchVisible:(this.visibleComponents||A["visibleComponents"]).searchBar}}},ms=_s,gs=(a("fa2b"),Object(v["a"])(ms,ye,Ce,!1,null,"66dc3458",null)),hs=gs.exports,ps=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("Collapsable",{attrs:{title:e.title,icon:e.icon,uniqueKey:e.groupId,collapsed:e.displayData.collapsed,cols:e.displayData.cols,rows:e.displayData.rows,color:e.displayData.color,customStyles:e.displayData.customStyles}},[!e.items||e.items.length<1?a("div",{staticClass:"no-items"},[e._v(" No Items to Show Yet ")]):a("div",{class:"there-are-items "+(e.isGridLayout?"item-group-grid":""),style:e.gridStyle},[e._l(e.items,(function(t,n){return a("Item",{key:n+"_"+e.makeId(t.title),attrs:{id:n+"_"+e.makeId(t.title),url:t.url,title:t.title,description:t.description,icon:t.icon,target:t.target,color:t.color,backgroundColor:t.backgroundColor,statusCheckUrl:t.statusCheckUrl,statusCheckHeaders:t.statusCheckHeaders,itemSize:e.newItemSize,hotkey:t.hotkey,enableStatusCheck:e.shouldEnableStatusCheck(t.statusCheck),statusCheckInterval:e.getStatusCheckInterval()},on:{itemClicked:function(t){return e.$emit("itemClicked")},triggerModal:e.triggerModal}})})),a("div",{ref:"modalContainer"})],2),a("IframeModal",{ref:"iframeModal-"+e.groupId,attrs:{name:"iframeModal-"+e.groupId},on:{closed:function(t){return e.$emit("itemClicked")},modalChanged:e.modalChanged}})],1)},fs=[],bs=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"item-wrapper"},[a("a",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.getTooltipOptions(),expression:"getTooltipOptions()"}],class:"item "+(e.icon?"":"short")+" size-"+e.itemSize,style:"--open-icon: "+e.getUnicodeOpeningIcon()+"; "+e.customStyles,attrs:{href:"modal"!==e.target?e.url:"#",target:"newtab"===e.target?"_blank":"",rel:"noopener noreferrer",tabindex:"0",id:"link-"+e.id},on:{click:e.itemOpened,mouseup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"right",39,t.key,["Right","ArrowRight"])||"button"in t&&2!==t.button?null:e.openContextMenu.apply(null,arguments)},contextmenu:function(e){e.preventDefault()}}},[a("div",{class:"tile-title "+(e.icon?"":"bounce"),attrs:{id:"tile-"+e.id}},[a("span",{staticClass:"text"},[e._v(e._s(e.title))]),a("p",{staticClass:"description"},[e._v(e._s(e.description))])]),a("Icon",{staticClass:"bounce",style:e.customStyles,attrs:{icon:e.icon,url:e.url,size:e.itemSize,color:e.color}}),a("ItemOpenMethodIcon",{staticClass:"opening-method-icon",attrs:{isSmall:!e.icon||"small"===e.itemSize,openingMethod:e.target,position:"medium"===e.itemSize?"bottom right":"top right",hotkey:e.hotkey}}),e.enableStatusCheck?a("StatusIndicator",{staticClass:"status-indicator",attrs:{statusSuccess:e.statusResponse?e.statusResponse.successStatus:void 0,statusText:e.statusResponse?e.statusResponse.message:void 0}}):e._e()],1),a("ContextMenu",{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.closeContextMenu,expression:"closeContextMenu"}],attrs:{show:e.contextMenuOpen,posX:e.contextPos.posX,posY:e.contextPos.posY,id:"context-menu-"+e.id},on:{contextItemClick:e.contextItemClick}})],1)},ks=[],ws=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"item-icon"},["font-awesome"===e.iconType?a("i",{class:e.icon+" "+e.size}):"emoji"===e.iconType?a("i",{class:"emoji-icon "+e.size},[e._v(e._s(e.getEmoji(e.iconPath)))]):e.icon?a("img",{class:"tile-icon "+e.size+" "+(e.broken?"broken":""),attrs:{src:e.iconPath},on:{error:e.imageNotFound}}):e._e(),e.broken?a("BrokenImage",{staticClass:"missing-image"}):e._e()],1)},vs=[],ys=a("9635"),Cs=a.n(ys),Ss=a("e0a2"),Is=a.n(Ss),xs=a("492d"),Ts={name:"Icon",inject:["config"],props:{icon:String,url:String,size:String},components:{BrokenImage:Cs.a},computed:{iconType:function(){return this.determineImageType(this.icon)},iconPath:function(){return this.getIconPath(this.icon,this.url)}},data(){return{broken:!1}},methods:{isUrl(e){const t=new RegExp(/(http|https):\/\/(\w+:{0,1}\w*)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%!\-/]))?/);return t.test(e)},isImage(e){const t=/(?:\.([^.]+))?$/,a=["png","jpg"],n=t.exec(e);return n.length>=1&&a.includes(n[1])},isEmoji(e){return Is.a.test(e)&&e.match(/./gu).length?{isEmoji:!0,emojiType:"glyph"}:new RegExp(/^:.*:$/).test(e)?{isEmoji:!0,emojiType:"shortcode"}:"U+"===e.substring(0,2)&&7===e.length?{isEmoji:!0,emojiType:"unicode"}:{isEmoji:!1,emojiType:""}},getEmoji(e){const{emojiType:t}=this.isEmoji(e);if("shortcode"===t){if(xs[e])return xs[e]}else if("unicode"===t)return String.fromCodePoint(parseInt(e.substr(2),16));return e},getFavicon(e){if(this.shouldUseDefaultFavicon(e)){const t=e.split("/");if(t.length>=2)return`${t[0]}/${t[1]}/${t[2]}/favicon.ico`}else if(e.includes("http")){const t=this.getHostName(e),a=this.config.appConfig.faviconApi||A["faviconApi"],n=A["faviconApiEndpoints"][a];return n.replace("$URL",t)}return""},shouldUseDefaultFavicon(e){const t=/(127\.)|(192\.168\.)|(10\.)|(172\.1[6-9]\.)|(172\.2[0-9]\.)|(172\.3[0-1]\.)|(::1$)|([fF][cCdD])|(localhost)/;return t.test(e)||"local"===this.config.appConfig.faviconApi},getLocalImagePath(e){return"/item-icons/"+e},getGenerativeIcon(e){return`https://ipsicon.io/${this.getHostName(e)}.svg`},getIconPath(e,t){switch(this.determineImageType(e)){case"url":return e;case"img":return this.getLocalImagePath(e);case"favicon":return this.getFavicon(t);case"generative":return this.getGenerativeIcon(t);case"svg":return e;case"emoji":return e;default:return""}},determineImageType(e){let t="";return t=e?e.endsWith(".svg")?"svg":this.isUrl(e)?"url":this.isImage(e)?"img":e.includes("fa-")?"font-awesome":"favicon"===e?"favicon":"generative"===e?"generative":this.isEmoji(e).isEmoji?"emoji":"none":"none",t},getHostName(e){try{return new URL(e).hostname}catch(t){return e}},imageNotFound(){this.broken=!0,rn(`The path to '${this.icon}' could not be resolved`)}}},Os=Ts,Es=(a("de40"),Object(v["a"])(Os,ws,vs,!1,null,null,null)),As=Es.exports,$s=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("div",{class:e.makeClass(e.position,e.isSmall,e.isTransparent)},["newtab"===e.openingMethod?a("NewTabOpenIcon"):"sametab"===e.openingMethod?a("SameTabOpenIcon"):"modal"===e.openingMethod?a("IframeOpenIcon"):"workspace"===e.openingMethod?a("WorkspaceOpenIcon"):e._e()],1),e.hotkey?a("div",{class:"hotkey-denominator "+e.makeClass(e.position,e.isSmall,e.isTransparent)},[e._v(" "+e._s(e.hotkey)+" ")]):e._e()])},Ls=[],zs=a("237e"),js=a.n(zs),Ns=a("2352"),Ms=a.n(Ns),Bs=a("1946"),Vs=a.n(Bs),Ds=a("3b49"),Hs=a.n(Ds),Ps={name:"ItemOpenMethodIcon",props:{openingMethod:String,isSmall:Boolean,position:String,isTransparent:Boolean,hotkey:Number},methods:{makeClass(e="top right",t=!1,a=!1){return`opening-method-icon\n ${e||"top right"}\n ${t?"short":""}\n ${a?"transparent":""}`}},components:{NewTabOpenIcon:js.a,SameTabOpenIcon:Ms.a,IframeOpenIcon:Vs.a,WorkspaceOpenIcon:Hs.a}},Us=Ps,Rs=(a("b5c9"),Object(v["a"])(Us,$s,Ls,!1,null,"b0684bc4",null)),Ks=Rs.exports,Fs=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{directives:[{name:"tooltip",rawName:"v-tooltip",value:{content:e.statusText||e.otherStatusText,classes:["status-tooltip","tip-"+e.color()]},expression:"{\n content: statusText || otherStatusText, classes: ['status-tooltip', `tip-${color()}`] }"}],staticClass:"indicator",on:{click:function(t){return e.showToast()}}},[a("div",{class:"dot dot-"+e.color()},[e._m(0)])])},Ws=[function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("span",[a("span")])}],qs={name:"StatusIndicator",props:{statusText:String,statusSuccess:Boolean},methods:{color(){switch(this.statusSuccess){case void 0:return new Date-this.startTime>2e3?"grey":"yellow";case!0:return"green";default:return"red"}}},data(){return{startTime:new Date,otherStatusText:"Checking..."}},mounted(){setTimeout(()=>{this.statusText||(this.otherStatusText="Request timed out")},2e3)}},Gs=qs,Js=(a("e697"),a("45d4"),Object(v["a"])(Gs,Fs,Ws,!1,null,"46972ad8",null)),Ys=Js.exports,Xs=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("transition",{attrs:{name:"slide"}},[e.show&&e.menuEnabled?a("div",{staticClass:"context-menu",style:e.posX&&e.posY?"top:"+e.posY+"px;left:"+e.posX+"px;":""},[a("ul",[a("li",{on:{click:function(t){return e.launch("sametab")}}},[a("SameTabOpenIcon"),a("span",[e._v("Open in Current Tab")])],1),a("li",{on:{click:function(t){return e.launch("newtab")}}},[a("NewTabOpenIcon"),a("span",[e._v("Open in New Tab")])],1),a("li",{on:{click:function(t){return e.launch("modal")}}},[a("IframeOpenIcon"),a("span",[e._v("Open in Pop-Up Modal")])],1),a("li",{on:{click:function(t){return e.launch("workspace")}}},[a("WorkspaceOpenIcon"),a("span",[e._v("Open in Workspace View")])],1)])]):e._e()])},Zs=[],Qs={name:"ContextMenu",inject:["config"],components:{SameTabOpenIcon:Ms.a,NewTabOpenIcon:js.a,IframeOpenIcon:Vs.a,WorkspaceOpenIcon:Hs.a},props:{posX:Number,posY:Number,show:Boolean},data(){return{menuEnabled:!this.isMenuDisabled()}},methods:{launch(e){this.$emit("contextItemClick",e)},isMenuDisabled(){return!(!this.config||!this.config.appConfig)&&!!this.config.appConfig.disableContextMenu}}},eo=Qs,to=(a("6850"),Object(v["a"])(eo,Xs,Zs,!1,null,null,null)),ao=to.exports,no={name:"Item",props:{id:String,title:String,subtitle:String,description:String,icon:String,color:String,backgroundColor:String,url:String,hotkey:Number,target:{type:String,default:"newtab",validator:e=>-1!==["newtab","sametab","modal","workspace"].indexOf(e)},itemSize:String,enableStatusCheck:Boolean,statusCheckHeaders:Object,statusCheckUrl:String,statusCheckInterval:Number},data(){return{contextMenuOpen:!1,getId:this.id,customStyles:{color:this.color,background:this.backgroundColor},statusResponse:void 0,contextPos:{posX:void 0,posY:void 0}}},components:{Icon:As,ItemOpenMethodIcon:Ks,StatusIndicator:Ys,ContextMenu:ao},methods:{itemOpened(e){e.altKey||"modal"===this.target?(e.preventDefault(),this.$emit("triggerModal",this.url)):this.$emit("itemClicked")},openContextMenu(e){this.contextMenuOpen=!this.contextMenuOpen,e&&window&&(this.contextPos={posX:e.clientX+window.pageXOffset,posY:e.clientY+window.pageYOffset})},closeContextMenu(){this.contextMenuOpen=!1},getTooltipOptions(){const e=this.hotkey?`\nPress '${this.hotkey}' to launch`:"";return{disabled:!this.description,content:this.description+e,trigger:"hover focus",hideOnTargetClick:!0,html:!1,placement:this.statusResponse?"left":"auto",delay:{show:600,hide:200},classes:"item-description-tooltip"}},getUnicodeOpeningIcon(){switch(this.target){case"newtab":return'"\\f360"';case"sametab":return'"\\f24d"';case"modal":return'"\\f2d0"';default:return'"\\f054"'}},checkWebsiteStatus(){this.statusResponse=void 0;const e=Object({NODE_ENV:"production",VUE_APP_VERSION:"1.5.3",BASE_URL:"/"}).VUE_APP_DOMAIN||window.location.origin,t=this.statusCheckUrl||this.url,a=this.statusCheckHeaders||{},n=`${e}/ping?url=${t}`;it.a.get(n,{headers:a}).then(e=>{e.data&&(this.statusResponse=e.data)}).catch(()=>{this.statusResponse={statusText:"Failed to make request",statusSuccess:!1}})},contextItemClick(e){const{url:t}=this;switch(this.contextMenuOpen=!1,e){case"newtab":window.open(t,"_blank");break;case"sametab":window.open(t,"_self");break;case"modal":this.$emit("triggerModal",t);break;case"workspace":ki.push({name:"workspace",query:{url:t}});break;default:window.open(t,"_blank")}}},mounted(){this.enableStatusCheck&&this.checkWebsiteStatus(),this.statusCheckInterval>0&&setInterval(this.checkWebsiteStatus,1e3*this.statusCheckInterval)}},so=no,oo=(a("826e"),a("f719"),Object(v["a"])(so,bs,ks,!1,null,null,null)),io=oo.exports,ro=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{class:"collapsable "+e.checkSpanNum(e.cols,"col")+" "+e.checkSpanNum(e.rows,"row"),style:(e.color?"background: "+e.color:"")+"; "+e.sanitizeCustomStyles(e.customStyles)+";"},[a("input",{staticClass:"toggle",attrs:{id:"collapsible-"+e.uniqueKey,type:"checkbox",tabIndex:"-1"},domProps:{checked:e.getCollapseState()},on:{change:e.collapseChanged}}),a("label",{staticClass:"lbl-toggle",attrs:{for:"collapsible-"+e.uniqueKey,tabindex:"-1"}},[e.icon?a("Icon",{staticClass:"section-icon",attrs:{icon:e.icon,size:"small",url:e.title}}):e._e(),a("h3",[e._v(e._s(e.title))])],1),a("div",{staticClass:"collapsible-content"},[a("div",{staticClass:"content-inner"},[e._t("default")],2)])])},lo=[],co={name:"CollapsableContainer",props:{uniqueKey:String,title:String,icon:String,collapsed:Boolean,cols:Number,rows:Number,color:String,customStyles:String},components:{Icon:As},methods:{checkSpanNum(e,t){const a=4;let n=/^\d*$/.test(e)?parseInt(e,10):1;return n=n>a?a:n,`${t}-${n}`},sanitizeCustomStyles(e){return e?e.replace(/[^a-zA-Z0-9- :;.]/g,""):""},initialiseStorage(){const e=()=>localStorage.setItem(A["localStorageKeys"].COLLAPSE_STATE,JSON.stringify({}));localStorage[A["localStorageKeys"].COLLAPSE_STATE]||e();try{JSON.parse(localStorage[A["localStorageKeys"].COLLAPSE_STATE])}catch{e()}return JSON.parse(localStorage[A["localStorageKeys"].COLLAPSE_STATE])},getCollapseState(){const e=this.initialiseStorage();let t=!this.collapsed;return void 0!==e[this.uniqueKey]&&(t=e[this.uniqueKey]),t},setCollapseState(e,t){const a=JSON.parse(localStorage[A["localStorageKeys"].COLLAPSE_STATE]);a[e]=t,localStorage.setItem(A["localStorageKeys"].COLLAPSE_STATE,JSON.stringify(a))},collapseChanged(e){this.initialiseStorage(),this.setCollapseState(this.uniqueKey.toString(),e.srcElement.checked)}}},uo=co,_o=(a("eb58"),Object(v["a"])(uo,ro,lo,!1,null,"ac1beaa4",null)),mo=_o.exports,go=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("modal",{attrs:{name:e.name,resizable:!0,width:"80%",height:"80%",classes:"dashy-modal"},on:{closed:function(t){return e.modalClosed()}}},[a("div",{attrs:{slot:"top-right"},on:{click:function(t){return e.hide()}},slot:"top-right"},[e._v("Close")]),a("a",{staticClass:"close-button",attrs:{title:"Close"},on:{click:function(t){return e.hide()}}},[e._v("x")]),e.url?a("iframe",{staticClass:"frame",attrs:{src:e.url},on:{keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.close.apply(null,arguments)}}}):a("div",{staticClass:"no-url"},[e._v("No URL Specified")])])},ho=[],po={name:"IframeModal",props:{name:String},data:()=>({url:"#"}),methods:{show(e){this.url=e,this.$modal.show(this.name),this.$emit("modalChanged",!0)},hide(){this.$modal.hide(this.name)},modalClosed(){this.$emit("modalChanged",!1)}}},fo=po,bo=(a("eda6"),Object(v["a"])(fo,go,ho,!1,null,null,null)),ko=bo.exports,wo={name:"ItemGroup",inject:["config"],props:{groupId:String,title:String,icon:String,displayData:Object,items:Array,itemSize:String,modalOpen:Boolean},components:{Collapsable:mo,Item:io,IframeModal:ko},computed:{newItemSize(){return this.displayData.itemSize||this.itemSize},isGridLayout(){return"grid"===this.displayData.sectionLayout||!(!this.displayData.itemCountX&&!this.displayData.itemCountY)},gridStyle(){let e="";return e+=this.displayData.itemCountX?`grid-template-columns: repeat(${this.displayData.itemCountX}, 1fr);`:"",e+=this.displayData.itemCountY?`grid-template-rows: repeat(${this.displayData.itemCountY}, 1fr);`:"",e}},methods:{makeId(e){return e.replace(/\s+/g,"-").replace(/[^a-zA-Z ]/g,"").toLowerCase()},triggerModal(e){this.$refs["iframeModal-"+this.groupId].show(e)},modalChanged(e){this.$emit("change-modal-visibility",e)},shouldEnableStatusCheck(e){const t=this.config.appConfig.statusCheck||!1;return void 0!==e?e:t},getStatusCheckInterval(){let e=this.config.appConfig.statusCheckInterval;return e?(e>60&&(e=60),e<1&&(e=0),e):0}}},vo=wo,yo=(a("196f"),Object(v["a"])(vo,ps,fs,!1,null,"cce3e8c4",null)),Co=yo.exports,So={name:"home",props:{sections:Array,appConfig:Object,pageInfo:Object},components:{SettingsContainer:hs,ItemGroup:Co},data:()=>({searchValue:"",layout:"",itemSizeBound:"",modalOpen:!1}),computed:{layoutOrientation:{get(){return this.appConfig.layout||$.a.layout},set:function(e){localStorage.setItem(A["localStorageKeys"].LAYOUT_ORIENTATION,e),this.layout=e}},iconSize:{get(){return this.appConfig.iconSize||$.a.iconSize},set:function(e){localStorage.setItem(A["localStorageKeys"].ICON_SIZE,e),this.itemSizeBound=e}}},methods:{checkTheresData(e){const t=localStorage[A["localStorageKeys"].CONF_SECTIONS];return e&&e.length>=1||t&&t.length>=1},getSections(e){const t=localStorage[A["localStorageKeys"].CONF_SECTIONS];if(t){const e=JSON.parse(t);if(e.length>=1)return e}return e},searching(e){this.searchValue=e||""},finishedSearching(){this.$refs.filterComp.clearFilterInput()},getDomainFromUrl(e){if(!e)return"";const t=/^(?:https?:\/\/)?(?:w{3}\.)?([a-z\d.-]+)\.(?:[a-z.]{2,10})(?:[/\w.-]*)*/,a=e.match(t);return a?a[1]:""},filterTiles(e){return e?e.filter(e=>{const{title:t,description:a,provider:n,url:s}=e,o=this.searchValue.toLowerCase();return t&&t.toLowerCase().includes(o)||n&&n.toLowerCase().includes(o)||a&&a.toLowerCase().includes(o)||this.getDomainFromUrl(s).includes(o)}):[]},getDisplayData(e){return e.displayData?e.displayData:{}},setLayoutOrientation(e){this.layoutOrientation=e},setItemSize(e){this.iconSize=e},updateModalVisibility(e){this.modalOpen=e},getExternalCSSLinks(){const e={};if(this.appConfig&&this.appConfig.externalStyleSheet){const t=this.appConfig.externalStyleSheet;Array.isArray(t)?t.forEach((t,a)=>{e["External Stylesheet "+(a+1)]=t}):e["External Stylesheet"]=this.appConfig.externalStyleSheet}return e.Default="#",e},checkIfFontAwesomeNeeded(){let e=!1;if(!this.sections)return!1;this.sections.forEach(t=>{t.icon&&t.icon.includes("fa-")&&(e=!0),t.items.forEach(t=>{t.icon&&t.icon.includes("fa-")&&(e=!0)})});const t=localStorage[A["localStorageKeys"].THEME];return["material","material-dark"].includes(t)&&(e=!0),e},initiateFontAwesome(){if(this.appConfig.enableFontAwesome||this.checkIfFontAwesomeNeeded()){const e=document.createElement("script"),t=this.appConfig.fontAwesomeKey||$.a.fontAwesomeKey;e.setAttribute("src",`https://kit.fontawesome.com/${t}.js`),document.head.appendChild(e)}},checkIfResults(){if(this.sections){let e=!0;return this.sections.forEach(t=>{this.filterTiles(t.items).length>0&&(e=!1)}),e}return!1},getBackgroundImage(){return this.appConfig&&this.appConfig.backgroundImg?`background: url('${this.appConfig.backgroundImg}');background-size:cover;`:""}},mounted(){this.initiateFontAwesome(),this.layout=this.layoutOrientation,this.itemSizeBound=this.iconSize}},Io=So,xo=(a("1d6b"),Object(v["a"])(Io,we,ve,!1,null,"50d025ad",null)),To=xo.exports,Oo=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"login-page"},[a("form",{staticClass:"login-form"},[a("h2",{staticClass:"login-title"},[e._v(e._s(e.$t("login.title")))]),a("Input",{staticClass:"login-field username",attrs:{type:"text",label:e.$t("login.username-label")},model:{value:e.username,callback:function(t){e.username=t},expression:"username"}}),a("Input",{staticClass:"login-field password",attrs:{type:"password",label:e.$t("login.password-label")},model:{value:e.password,callback:function(t){e.password=t},expression:"password"}}),a("label",[e._v(e._s(e.$t("login.remember-me-label")))]),a("v-select",{staticClass:"login-time-dropdown",attrs:{selectOnTab:!0,options:e.dropDownMenu},model:{value:e.timeout,callback:function(t){e.timeout=t},expression:"timeout"}}),a("Button",{staticClass:"login-button",attrs:{click:e.submitLogin}},[e._v(" "+e._s(e.$t("login.login-button"))+" ")]),a("transition",{attrs:{name:"bounce"}},[a("p",{directives:[{name:"show",rawName:"v-show",value:e.message,expression:"message"}],class:"login-error-message "+e.status},[e._v(e._s(e.message))])])],1)])},Eo=[],Ao={name:"login",props:{appConfig:Object},data(){return{username:"",password:"",message:"",status:"waiting",timeout:{label:this.$t("login.remember-me-never"),time:0},dropDownMenu:[{label:this.$t("login.remember-me-never"),time:0},{label:this.$t("login.remember-me-hour"),time:144e5},{label:this.$t("login.remember-me-day"),time:864e5},{label:this.$t("login.remember-me-week"),time:6048e5}]}},components:{Button:yt,Input:Kt},methods:{submitLogin(){const e=this.timeout?this.timeout.time:0,t=tt(this.username,this.password,this.appConfig.auth||[]);this.message=t.msg,this.status=t.correct?"success":"error",t.correct&&(at(this.username,this.password,e),setTimeout(()=>{ki.push({path:"/"})},250))},setTheme(){const e=localStorage[A["localStorageKeys"].THEME]||$.a.theme;document.getElementsByTagName("html")[0].setAttribute("data-theme",e)}},created(){this.setTheme()}},$o=Ao,Lo=(a("206d"),Object(v["a"])($o,Oo,Eo,!1,null,null,null)),zo=Lo.exports,jo=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"work-space"},[a("SideBar",{attrs:{sections:e.sections},on:{"launch-app":e.launchApp}}),a("WebContent",{attrs:{url:e.url}})],1)},No=[],Mo=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("nav",{staticClass:"side-bar"},e._l(e.sections,(function(t,n){return a("div",{key:n},[a("div",{staticClass:"side-bar-item-container",on:{click:function(t){return e.openSection(n)}}},[a("SideBarItem",{staticClass:"item",attrs:{icon:t.icon,title:t.name}})],1),a("transition",{attrs:{name:"slide"}},[e.isOpen[n]?a("SideBarSection",{attrs:{items:t.items},on:{"launch-app":e.launchApp}}):e._e()],1)],1)})),0)},Bo=[],Vo=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{directives:[{name:"tooltip",rawName:"v-tooltip",value:e.tooltip,expression:"tooltip"}],class:"side-bar-item "+(e.icon?"w-icon":"text-only"),on:{click:function(t){return e.itemClicked()}}},[e.icon?a("Icon",{attrs:{icon:e.icon,size:"small",url:e.url}}):a("p",{staticClass:"small-title"},[e._v(e._s(e.title))])],1)},Do=[],Ho={name:"SideBarItem",inject:["config"],props:{icon:String,title:String,url:String,click:Function},components:{Icon:As},methods:{itemClicked(){this.url&&this.$emit("launch-app",this.url)}},data(){return{tooltip:{disabled:!this.title,content:this.title,trigger:"hover focus",hideOnTargetClick:!0,html:!1,placement:"right-start",delay:{show:800,hide:1e3}}}}},Po=Ho,Uo=(a("5e61"),Object(v["a"])(Po,Vo,Do,!1,null,"d979f4fe",null)),Ro=Uo.exports,Ko=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"sub-side-bar"},e._l(e.items,(function(t,n){return a("div",{key:n},[a("SideBarItem",{staticClass:"item",attrs:{icon:t.icon,title:t.title,url:t.url},on:{"launch-app":e.launchApp}})],1)})),0)},Fo=[],Wo={name:"SideBarSection",inject:["config"],props:{items:Array},components:{SideBarItem:Ro},methods:{launchApp(e){this.$emit("launch-app",e)}}},qo=Wo,Go=(a("cf1c"),Object(v["a"])(qo,Ko,Fo,!1,null,"56ddb963",null)),Jo=Go.exports,Yo={name:"SideBar",inject:["config"],props:{sections:Array},data(){return{isOpen:new Array(this.sections.length).fill(!1)}},components:{SideBarItem:Ro,SideBarSection:Jo},methods:{openSection(e){this.isOpen=this.isOpen.map((t,a)=>a===e&&!t)},launchApp(e){this.$emit("launch-app",e)}}},Xo=Yo,Zo=(a("85e1"),Object(v["a"])(Xo,Mo,Bo,!1,null,"31476576",null)),Qo=Zo.exports,ei=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"web-content"},[a("iframe",{attrs:{src:e.url}})])},ti=[],ai={name:"WebContent",props:{url:String}},ni=ai,si=(a("44e9"),Object(v["a"])(ni,ei,ti,!1,null,"a2564c04",null)),oi=si.exports,ii={name:"Workspace",props:{sections:Array,appConfig:Object},data:()=>({url:"",GetTheme:ln,ApplyLocalTheme:un,ApplyCustomVariables:cn}),components:{SideBar:Qo,WebContent:oi},methods:{launchApp(e){this.url=e},setTheme(){const e=this.GetTheme();this.ApplyLocalTheme(e),this.ApplyCustomVariables(e)},initiateFontAwesome(){const e=document.createElement("script"),t=this.appConfig.fontAwesomeKey||$.a.fontAwesomeKey;e.setAttribute("src",`https://kit.fontawesome.com/${t}.js`),document.head.appendChild(e)},repositionFooter(){document.getElementsByTagName("footer")[0].style.position="fixed"}},mounted(){const e=this.$route;e.query&&e.query.url&&(this.url=decodeURI(e.query.url)),this.setTheme(),this.initiateFontAwesome()}},ri=ii,li=(a("6423"),Object(v["a"])(ri,jo,No,!1,null,"62772a5b",null)),ci=li.exports,ui=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("pre",[a("code",[e._v(e._s(e.jsonParser(e.config)))])])},di=[],_i={name:"DownloadConfig",props:{sections:Array,appConfig:Object,pageInfo:Object},data(){return{config:{appConfig:this.appConfig,pageInfo:this.pageInfo,sections:this.sections},jsonParser:Fe}}},mi=_i,gi=(a("6cd5"),Object(v["a"])(mi,ui,di,!1,null,"33cd2d90",null)),hi=gi.exports;n["a"].use(ke["a"]);const pi=()=>{const e=ne.appConfig.auth;return!e||0===e.length||et(e)},fi=new ke["a"]({routes:[{path:"/",name:"home",component:To,props:ne,meta:{title:ne.pageInfo.title||"Home Page",metaTags:A["metaTagData"]}},{path:"/workspace",name:"workspace",component:ci,props:ne,meta:{title:ne.pageInfo.title||"Dashy Workspace",metaTags:A["metaTagData"]}},{path:"/login",name:"login",component:zo,props:{appConfig:ne.appConfig},beforeEnter:(e,t,a)=>{pi()&&fi.push({path:"/"}),a()}},{path:"/about",name:"about",component:()=>a.e("about").then(a.bind(null,"f820"))},{path:"/download",name:"download",component:hi,props:ne,meta:{title:ne.pageInfo.title||"Download Dashy Config",metaTags:A["metaTagData"]}}]});fi.beforeEach((e,t,a)=>{"login"===e.name||pi()?a():a({name:"login"})});const bi="Dashy";fi.afterEach(e=>{n["a"].nextTick(()=>{document.title=e.meta.title||bi})});var ki=fi,wi=a("9483");const vi=e=>{const t={ready:!1,registered:!1,cached:!1,updateFound:!1,updated:!1,offline:!1,error:!1,devMode:!1,disabledByUser:!1},a=sessionStorage[A["sessionStorageKeys"].SW_STATUS],n=a?JSON.parse(a):t;try{const t={...n,...e};sessionStorage.setItem(A["sessionStorageKeys"].SW_STATUS,JSON.stringify(t))}catch(s){console.warn("Error setting SW data",s)}},yi=()=>{let e=!0;return J.a&&J.a.appConfig&&J.a.appConfig.disableServiceWorker&&(e=!1,vi({disabledByUser:!0})),e},Ci=()=>{yi()&&Object(wi["a"])("/service-worker.js",{ready(){vi({ready:!0}),console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered(){vi({registered:!0}),console.log("Service worker has been registered.")},cached(){vi({cached:!0}),console.log("Content has been cached for offline use.")},updatefound(){vi({updateFound:!0}),console.log("New content is downloading.")},updated(){vi({updated:!0}),console.log("New content is available; please refresh.")},offline(){vi({offline:!0}),console.log("No internet connection found. App is running in offline mode.")},error(e){vi({error:!0}),console.error("Error during service worker registration:",e)}})};var Si=Ci;const Ii=[];function xi(e,t,a){const{target:n}=e;t===n||t.contains(n)||a(e)}var Ti={bind(e,t){const a=e;a.dataset.outsideClickIndex=Ii.length;const n=t.value,s=e=>{xi(e,a,n)};document.addEventListener("click",s),document.addEventListener("touchstart",s),Ii.push(s)},unbind(e){if(!e.dataset)return;const t=e.dataset.outsideClickIndex,a=Ii[t];document.removeEventListener("click",a),Ii.splice(t,1)}};const Oi=(e,t)=>{const n=(new Y).appConfig()||{};if(n.enableErrorReporting){const n=a("2075"),{Integrations:s}=a("688d"),o="https://3138ea85f15a4fa883a5b27a4dc8ee28@o937511.ingest.sentry.io/5887934";n.init({Vue:e,dsn:o,integrations:[new s.BrowserTracing({routingInstrumentation:n.vueRouterInstrumentation(t)})],tracesSampleRate:1})}};var Ei=Oi;n["a"].use(s["a"]),n["a"].use(o["a"]),n["a"].use(r.a),n["a"].use(u["a"]),n["a"].use(_.a,A["toastedOptions"]),n["a"].component("v-select",c.a),n["a"].directive("clickOutside",Ti),n["a"].config.productionTip=!1;const Ai=new s["a"]({locale:A["language"],fallbackLocale:A["language"],messages:ae});Si(),Ei(n["a"],ki);const $i=e=>e(be);new n["a"]({router:ki,render:$i,i18n:Ai}).$mount("#app")},5703:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-sliders-h fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"sliders-h",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M496 384H160v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h80v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h336c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160h-80v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h336v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h80c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160H288V48c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16C7.2 64 0 71.2 0 80v32c0 8.8 7.2 16 16 16h208v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h208c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16z"}})]))}}},"570c":function(e,t,a){"use strict";a("f94d")},"570d":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-th-list fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"th-list",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M149.333 216v80c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24v-80c0-13.255 10.745-24 24-24h101.333c13.255 0 24 10.745 24 24zM0 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H24c-13.255 0-24 10.745-24 24zM125.333 32H24C10.745 32 0 42.745 0 56v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24zm80 448H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zm-24-424v80c0 13.255 10.745 24 24 24H488c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24zm24 264H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24z"}})]))}}},"58c1":function(e,t,a){},"5c0b":function(e,t,a){"use strict";a("9c0c")},"5cc6":function(e,t){e.exports={pageInfo:{title:"Dashy",description:"",navLinks:[{title:"Home",path:"/"},{title:"Source",path:"https://github.com/Lissy93/dashy"}],footerText:""},appConfig:{},language:"en",iconSize:"medium",layout:"auto",theme:"default",fontAwesomeKey:"0821c65656",faviconApi:"faviconkit",builtInThemes:["callisto","thebe","dracula","material","material-dark","colorful","nord","nord-frost","minimal-dark","minimal-light","oblivion","matrix","matrix-red","hacker-girl","raspberry-jam","bee","tiger","blue-purple","material-original","material-dark-original","cyberpunk","vaporware","high-contrast-dark","high-contrast-light"],visibleComponents:{pageTitle:!0,navigation:!0,searchBar:!0,settings:!0,footer:!0},localStorageKeys:{LANGUAGE:"language",HIDE_WELCOME_BANNER:"hideWelcomeHelpers",LAYOUT_ORIENTATION:"layoutOrientation",COLLAPSE_STATE:"collapseState",ICON_SIZE:"iconSize",THEME:"theme",CUSTOM_COLORS:"customColors",CONF_SECTIONS:"confSections",PAGE_INFO:"pageInfo",APP_CONFIG:"appConfig",BACKUP_ID:"backupId",BACKUP_HASH:"backupHash",HIDE_SETTINGS:"hideSettings",USERNAME:"username"},cookieKeys:{AUTH_TOKEN:"authenticationToken"},sessionStorageKeys:{SW_STATUS:"serviceWorkerStatus"},modalNames:{CONF_EDITOR:"CONF_EDITOR",CLOUD_BACKUP:"CLOUD_BACKUP",REBUILD_APP:"REBUILD_APP",THEME_MAKER:"THEME_MAKER",ABOUT_APP:"ABOUT_APP",LANG_SWITCHER:"LANG_SWITCHER"},topLevelConfKeys:{PAGE_INFO:"pageInfo",APP_CONFIG:"appConfig",SECTIONS:"sections"},mainCssVars:["primary","background","background-darker"],splashScreenTime:1900,metaTagData:[{name:"description",content:"A simple static homepage for you're server"}],toastedOptions:{position:"bottom-center",duration:2500,keepOnHover:!0,className:"toast-message",iconPack:"fontawesome"},backupEndpoint:"https://dashy-sync-service.as93.net",faviconApiEndpoints:{mcapi:"https://eu.mc-api.net/v3/server/favicon/$URL",clearbit:"https://logo.clearbit.com/$URL",faviconkit:"https://api.faviconkit.com/$URL/64",google:"https://www.google.com/s2/favicons?sz=128&domain_url=$URL",allesedv:"https://f1.allesedv.com/128/$URL",webmasterapi:"https://api.webmasterapi.com/v1/favicon/yEwx0ZFs0CSPshHq/$URL"},swatches:[["#eb5cad","#985ceb","#5346f3","#5c90eb"],["#5cdfeb","#00CCB4","#5ceb8d","#afeb5c"],["#eff961","#ebb75c","#eb615c","#eb2d6c"],["#060913","#141b33","#1c2645","#263256"],["#2b2d42","#1a535c","#372424","#312437"],["#f5f5f5","#d9d9d9","#bfbfbf","#9a9a9a"],["#636363","#363636","#313941","#0d0d0d"]]}},"5dbe":function(e,t,a){"use strict";a("fae5")},"5e61":function(e,t,a){"use strict";a("b315")},"5f32":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-times-circle fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"times-circle",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm101.8-262.2L295.6 256l62.2 62.2c4.7 4.7 4.7 12.3 0 17l-22.6 22.6c-4.7 4.7-12.3 4.7-17 0L256 295.6l-62.2 62.2c-4.7 4.7-12.3 4.7-17 0l-22.6-22.6c-4.7-4.7-4.7-12.3 0-17l62.2-62.2-62.2-62.2c-4.7-4.7-4.7-12.3 0-17l22.6-22.6c4.7-4.7 12.3-4.7 17 0l62.2 62.2 62.2-62.2c4.7-4.7 12.3-4.7 17 0l22.6 22.6c4.7 4.7 4.7 12.3 0 17z"}})]))}}},6266:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:[i,r],style:[l,c],attrs:Object.assign({xmlns:"http://www.w3.org/2000/svg",width:"100",height:"100",preserveAspectRatio:"xMidYMid"},u),...d},o.concat([a("defs",[a("clipPath",{attrs:{id:"a"}},[a("path",{attrs:{d:"M20 0h60v100H20z"}})])]),a("path",{attrs:{fill:"none",stroke:"var(--primary, #00af87)","stroke-width":"6","stroke-linecap":"round","stroke-linejoin":"round","stroke-miterlimit":"10","clip-path":"url(#a)",d:"M90 76.7V28.3c0-2.7-2.2-5-5-5h-3.4c-2.7 0-5 2.2-5 5v43.4c0 2.7-2.2 5-5 5h-3.4c-2.7 0-5-2.2-5-5V28.3c0-2.7-2.2-5-5-5H55c-2.7 0-5 2.2-5 5v43.4c0 2.7-2.2 5-5 5h-3.4c-2.7 0-5-2.2-5-5V28.3c0-2.7-2.2-5-5-5h-3.4c-2.7 0-5 2.2-5 5v43.4c0 2.7-2.2 5-5 5H15c-2.7 0-5-2.2-5-5V23.3"}},[a("animateTransform",{attrs:{attributeName:"transform",type:"translate",repeatCount:"indefinite",dur:"1.4925373134328357s",values:"-20 0;7 0",keyTimes:"0;1"}}),a("animate",{attrs:{attributeName:"stroke-dasharray",repeatCount:"indefinite",dur:"1.4925373134328357s",values:"0 72 125 232;0 197 125 233",keyTimes:"0;1"}})])]))}}},6423:function(e,t,a){"use strict";a("2143")},6504:function(e,t,a){},6780:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-cloud-upload-alt fa-w-20",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"cloud-upload-alt",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 640 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M395.5 267.5l-99-99c-4.7-4.7-12.3-4.7-17 0l-99 99c-7.6 7.6-2.2 20.5 8.5 20.5h67v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-84h67c10.7 0 16.1-12.9 8.5-20.5zm148.2-67.4C539.7 142.1 491.4 96 432 96c-7.6 0-15.1.8-22.4 2.3C377.7 58.3 328.1 32 272 32c-84.6 0-155.5 59.7-172.3 139.8C39.9 196.1 0 254.4 0 320c0 88.4 71.6 160 160 160h336c79.5 0 144-64.5 144-144 0-61.8-39.2-115.8-96.3-135.9zM496 432H160c-61.9 0-112-50.1-112-112 0-56.4 41.7-103.1 96-110.9V208c0-70.7 57.3-128 128-128 53.5 0 99.3 32.8 118.4 79.4 11.2-9.6 25.7-15.4 41.6-15.4 35.3 0 64 28.7 64 64 0 11.8-3.2 22.9-8.8 32.4 2.9-.3 5.9-.4 8.8-.4 53 0 96 43 96 96s-43 96-96 96z"}})]))}}},6850:function(e,t,a){"use strict";a("18b8")},"6cab":function(e,t,a){},"6cd5":function(e,t,a){"use strict";a("6504")},"6ea3":function(e,t,a){"use strict";a("edaf")},7075:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-expand fa-w-14",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"expand",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M0 180V56c0-13.3 10.7-24 24-24h124c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H64v84c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12zM288 44v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V56c0-13.3-10.7-24-24-24H300c-6.6 0-12 5.4-12 12zm148 276h-40c-6.6 0-12 5.4-12 12v84h-84c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24V332c0-6.6-5.4-12-12-12zM160 468v-40c0-6.6-5.4-12-12-12H64v-84c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v124c0 13.3 10.7 24 24 24h124c6.6 0 12-5.4 12-12z"}})]))}}},7645:function(e,t,a){},"78d0":function(e,t,a){},"7da9":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-css3-alt fa-w-12",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fab","data-icon":"css3-alt",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M0 32l34.9 395.8L192 480l157.1-52.2L384 32H0zm313.1 80l-4.8 47.3L193 208.6l-.3.1h111.5l-12.8 146.6-98.2 28.7-98.8-29.2-6.4-73.9h48.9l3.2 38.3 52.6 13.3 54.7-15.4 3.7-61.6-166.3-.5v-.1l-.2.1-3.6-46.3L193.1 162l6.5-2.7H76.7L70.9 112h242.2z"}})]))}}},"7eb0":function(e,t,a){},"7f59":function(e,t,a){},"80a7":function(e,t,a){"use strict";a("7eb0")},"826e":function(e,t,a){"use strict";a("939b")},"831b":function(e){e.exports=JSON.parse('{"type":"object","required":["sections"],"additionalProperties":false,"properties":{"pageInfo":{"type":"object","properties":{"title":{"type":"string","description":"Title and heading for the app"},"description":{"type":"string","description":"Sub-title, displayed in header"},"navLinks":{"type":"array","maxItems":6,"description":"Quick access links, displayed in header","items":{"type":"object","additionalProperties":false,"required":["title","path"],"properties":{"title":{"type":"string"},"path":{"type":"string"}}}},"footerText":{"type":"string"},"logo":{"type":"string","description":"Path to an optional image asset, to be displayed in the header","pattern":"^(http|/)","examples":["/web-icons/dashy-logo.png","https://i.ibb.co/yhbt6CY/dashy.png"]}},"required":["title"],"additionalProperties":false},"appConfig":{"type":"object","description":"Application configuration","properties":{"backgroundImg":{"type":"string","description":"A URL to an image asset to be displayed as background"},"language":{"type":"string","description":"The ISO code of your desired language, must have translations present, check docs for more info"},"theme":{"type":"string","default":"callisto","description":"A theme to be applied by default on first load","examples":["callisto","thebe","dracula","material","material-dark","colorful","nord","nord-frost","minimal-dark","minimal-light","matrix","matrix-red","hacker-girl","raspberry-jam","bee","tiger","material-original","material-dark-original","vaporware","high-contrast-dark","high-contrast-light"]},"enableFontAwesome":{"type":"boolean","default":true,"description":"Should load font-awesome assets"},"fontAwesomeKey":{"type":"string","pattern":"^[a-z0-9]{10}$","description":"API key for font-awesome"},"faviconApi":{"enum":["local","faviconkit","google","clearbit","webmasterapi","allesedv"],"default":"faviconkit","description":"Which service to use to resolve favicons. Set to local to do this locally instead"},"layout":{"enum":["horizontal","vertical","auto","sidebar"],"default":"auto","description":"Specifies sections layout orientation on the home screen"},"iconSize":{"enum":["small","medium","large"],"default":"medium","description":"The size of each link item / icon"},"hideComponents":{"type":"object","description":"Hide individual parts of the page. If not set, all components are visible by default","properties":{"hideHeading":{"type":"boolean","default":"false","description":"If set to true, the page heading & subtitle will be hidden"},"hideNav":{"type":"boolean","default":"false","description":"If set to true, the navigation menu will be hidden"},"hideSearch":{"type":"boolean","default":"false","description":"If set to true, the search bar will be hidden"},"hideSettings":{"type":"boolean","default":"false","description":"If set to true, the settings buttons will be hidden"},"hideFooter":{"type":"boolean","default":"false","description":"If set to true, the page footer will be hidden"},"hideSplashScreen":{"type":"boolean","default":"true","description":"If set to true, the loading / splash screen will not be shown"}}},"cssThemes":{"type":"array","description":"Theme names to be added to the dropdown","items":{"type":"string"}},"customColors":{"type":"object","description":"Set a custom color palette for any theme"},"externalStyleSheet":{"description":"URL or URLs of external stylesheets to add to dropdown/ load","type":["string","array"],"items":{"type":"string"}},"customCss":{"type":"string","description":"Any custom CSS overides, must be minified"},"statusCheck":{"type":"boolean","default":false,"description":"Displays an online/ offline status for each of your services"},"statusCheckInterval":{"type":"number","default":0,"description":"How often to recheck statuses. If set to 0, status will only be checked on page load"},"auth":{"type":"array","description":"Usernames and hashed credentials for frontend authentication","items":{"type":"object","additionalProperties":false,"required":["user","hash"],"properties":{"user":{"type":"string","description":"The username for a user"},"hash":{"type":"string","description":"A SHA-256 hashed password for that user","minLength":64,"maxLength":64},"type":{"enum":["admin","normal"],"description":"User type, denoting privilege level, either admin or normal","default":"normal"}}}},"allowConfigEdit":{"type":"boolean","default":true,"description":"Can user write changes to conf.yml file from the UI. If set to false, preferences are only stored locally"},"disableServiceWorker":{"type":"boolean","default":false,"description":"If set to true, then service workers will not be used to cache page contents"},"disableContextMenu":{"type":"boolean","default":false,"description":"If set to true, custom right-click context menu will be disabled"},"disableUpdateChecks":{"type":"boolean","default":false,"description":"Prevents Dashy from checking for updates"},"enableErrorReporting":{"type":"boolean","default":false,"description":"Enable anonymous crash reports. This helps bugs be found and fixed, in order to make Dashy more stable. Reporting is off by default, and no data will EVER be collected without your explicit and active concent."}},"additionalProperties":false},"sections":{"type":"array","description":"Array of sections, containing items","items":{"type":"object","required":["name","items"],"additionalProperties":false,"properties":{"name":{"type":"string","description":"Title/ heading for a section"},"icon":{"type":"string","description":"Icon will be displayed next to title"},"displayData":{"type":"object","additionalProperties":false,"description":"Optional meta data for customizing a section","properties":{"collapsed":{"type":"boolean","default":false,"description":"If true, section needs to be clicked to open"},"color":{"type":"string","description":"Hex code, or HTML color for section fill"},"customStyles":{"type":"string","description":"CSS overides for section container"},"itemSize":{"enum":["small","medium","large"],"default":"medium","description":"Size of items within the section"},"rows":{"type":"number","minimum":1,"maximum":5,"default":1,"description":"The amount of space that the section spans vertically"},"cols":{"type":"number","minimum":1,"maximum":5,"default":1,"description":"The amount of space that the section spans horizontally"},"sectionLayout":{"enum":["grid","auto"],"default":"auto","description":"If set to grid, items have uniform width, and itemCount can be set"},"itemCountX":{"type":"number","minimum":1,"maximum":12,"description":"Number of items per column"},"itemCountY":{"type":"number","minimum":1,"maximum":12,"description":"Number of items per row"}}},"items":{"type":"array","description":"Array of items to display with a section","items":{"type":"object","additionalProperties":false,"required":["title"],"properties":{"title":{"type":"string","description":"Text shown on the item"},"description":{"type":"string","nullable":true,"description":"Short description, shown on hover or in a tooltip"},"icon":{"type":"string","nullable":true,"description":"An icon, either as a font-awesome identifier, local or remote URL, or the word favicon or generative"},"url":{"type":"string","description":"The destination to navigate to when item is clicked"},"target":{"enum":["newtab","sametab","modal","workspace"],"default":"newtab","description":"Opening method, when item is clicked"},"hotkey":{"type":"number","description":"A numeric shortcut key, between 0 and 9. Useful for quickly launching frequently used applications"},"color":{"type":"string","description":"A custom fill color of the item"},"provider":{"type":"string","description":"Provider name, e.g. Microsoft"},"statusCheck":{"type":"boolean","default":false,"description":"Whether or not to display online/ offline status for this service. Will override appConfig.statusCheck"},"statusCheckUrl":{"type":"string","description":"If you\'ve enabled statusCheck, and want to use a different URL to what is defined under the item, then specify it here"},"statusCheckHeaders":{"type":"object","description":" If you\'re endpoint requires any specific headers for the status checking, then define them here"}}}}}}}}}')},"832d":function(e,t,a){},"85e1":function(e,t,a){"use strict";a("1036")},"89e2":function(e,t,a){"use strict";a("1653")},"8b35":function(e,t,a){},"8b8e":function(e,t){e.exports={pageInfo:{title:"Dashy",navLinks:[{title:"Home",path:"/"},{title:"About",path:"/about"},{title:"Source Code",path:"https://github.com/Lissy93/dashy"}]},appConfig:{theme:"colorful",fontAwesomeKey:"0821c65656"},sections:[{name:"Getting Started",items:[{title:"Source",description:"Source code and documentation on GitHub",icon:"fab fa-github",url:"https://github.com/Lissy93/dashy"},{title:"Issues",description:"View currently open issues, or raise a new one",icon:"fas fa-bug",url:"https://github.com/Lissy93/dashy/issues"},{title:"Demo 1",description:"Live Demo #1",icon:"far fa-rocket",url:"https://dashy-demo-1.netlify.app"},{title:"Demo 2",description:"Live Demo #2",icon:"fad fa-planet-ringed",url:"https://dashy-demo-2.netlify.app"}]}]}},"8d7c":function(e,t,a){},"905d":function(e,t,a){},"90de":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-window-close fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"window-close",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 394c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V86c0-3.3 2.7-6 6-6h404c3.3 0 6 2.7 6 6v340zM356.5 194.6L295.1 256l61.4 61.4c4.6 4.6 4.6 12.1 0 16.8l-22.3 22.3c-4.6 4.6-12.1 4.6-16.8 0L256 295.1l-61.4 61.4c-4.6 4.6-12.1 4.6-16.8 0l-22.3-22.3c-4.6-4.6-4.6-12.1 0-16.8l61.4-61.4-61.4-61.4c-4.6-4.6-4.6-12.1 0-16.8l22.3-22.3c4.6-4.6 12.1-4.6 16.8 0l61.4 61.4 61.4-61.4c4.6-4.6 12.1-4.6 16.8 0l22.3 22.3c4.7 4.6 4.7 12.1 0 16.8z"}})]))}}},"90ff":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-save fa-w-14",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"save",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M433.941 129.941l-83.882-83.882A48 48 0 00316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 00-14.059-33.941zM272 80v80H144V80h128zm122 352H54a6 6 0 01-6-6V86a6 6 0 016-6h42v104c0 13.255 10.745 24 24 24h176c13.255 0 24-10.745 24-24V83.882l78.243 78.243a6 6 0 011.757 4.243V426a6 6 0 01-6 6zM224 232c-48.523 0-88 39.477-88 88s39.477 88 88 88 88-39.477 88-88-39.477-88-88-88zm0 128c-22.056 0-40-17.944-40-40s17.944-40 40-40 40 17.944 40 40-17.944 40-40 40z"}})]))}}},"922c":function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-expand-arrows-alt fa-w-14",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"expand-arrows-alt",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M448 344v112a23.94 23.94 0 01-24 24H312c-21.39 0-32.09-25.9-17-41l36.2-36.2L224 295.6 116.77 402.9 153 439c15.09 15.1 4.39 41-17 41H24a23.94 23.94 0 01-24-24V344c0-21.4 25.89-32.1 41-17l36.19 36.2L184.46 256 77.18 148.7 41 185c-15.1 15.1-41 4.4-41-17V56a23.94 23.94 0 0124-24h112c21.39 0 32.09 25.9 17 41l-36.2 36.2L224 216.4l107.23-107.3L295 73c-15.09-15.1-4.39-41 17-41h112a23.94 23.94 0 0124 24v112c0 21.4-25.89 32.1-41 17l-36.19-36.2L263.54 256l107.28 107.3L407 327.1c15.1-15.2 41-4.5 41 16.9z"}})]))}}},"939b":function(e,t,a){},9517:function(e,t,a){"use strict";a("a8d0")},9635:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:[i,r],style:[l,c],attrs:Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{d:"M132.893 310.534l-30.082 10.911L91.9 291.364l30.081-10.911z"}}),a("path",{attrs:{d:"M271.552 301.072l-77.856-46.72-41.616 15.152 10.944 30.064 27.28-9.92 82.144 49.28 97.6-65.072L480 315.088V480H32V347.2l40.8-14.848-10.928-30.048L0 324.8V512h512V292.912l-146.048-54.768z"}}),a("path",{attrs:{d:"M0 0v278.848l66.576-24.224-10.928-30.064L32 233.152V32h448v168.912l-114.048-42.768-94.4 62.928-77.856-46.72-47.84 17.392 10.944 30.064 33.504-12.16 82.144 49.28 97.6-65.072L512 247.088V0z"}}),a("path",{attrs:{d:"M96.656 243.686L85.721 213.63l30.07-10.94 10.935 30.055z"}})]))}}},"97fb":function(e,t,a){},"9c0c":function(e,t,a){},"9e50":function(e,t,a){"use strict";a("3323")},"9e96":function(e,t,a){},a4c2:function(e,t,a){},a8d0:function(e,t,a){},b021:function(e,t,a){"use strict";a("905d")},b2be:function(e,t,a){},b315:function(e,t,a){},b5c9:function(e,t,a){"use strict";a("7645")},c715:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-table fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"table",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM224 416H64v-96h160v96zm0-160H64v-96h160v96zm224 160H288v-96h160v96zm0-160H288v-96h160v96z"}})]))}}},c7d5:function(e,t,a){},c924:function(e,t,a){},cb40:function(e){e.exports=JSON.parse('{"home":{"no-results":"keine Suchresultate","no-data":"keine Daten Konfiguriert"},"search":{"search-label":"Suche","search-placeholder":"Starte tippen um zu filtern","clear-search-tooltip":"Leere die Suche"},"login":{"title":"Dashy","username-label":"Username","password-label":"Passwort","login-button":"Login","remember-me-label":"Angemeldet bleiben für","remember-me-never":"Niemals","remember-me-hour":"4 Stunden","remember-me-day":"1 Tag","remember-me-week":"1 Woche"},"config":{"main-tab":"Config","view-config-tab":"zeige Config","edit-config-tab":"bearbeite Config","custom-css-tab":"eigene Styles","heading":"Konfiguration optionen","download-config-button":"Download Config","edit-config-button":"bearbeite Config","edit-css-button":"bearbeite Custom CSS","cloud-sync-button":"aktiviere Cloud Sync","edit-cloud-sync-button":"bearbeite Cloud Sync","rebuild-app-button":"Anwendung neu erstellen","change-language-button":"ändere App Sprache","reset-settings-button":"Lokale Einstellungen zurücksetzten","app-info-button":"App Info","backup-note":"Es wird empfohlen ein Backup der Konfiguration zu erstellen, bevor Änderungen durchgeführt werden.","reset-config-msg-l1":"Dadurch werden alle Benutzereinstellungen aus dem lokalen Speicher entfernt, hat jedoch keine Auswirkungen auf Ihre Datei \'conf.yml\'.","reset-config-msg-l2":"Sie sollten zuerst alle Änderungen, die Sie lokal vorgenommen haben, sichern, wenn Sie sie in Zukunft verwenden möchten.","reset-config-msg-l3":"Sind Sie sicher, dass Sie fortfahren möchten?","data-cleared-msg":"Daten erfolgreich gelöscht","actions-label":"Aktionen","copy-config-label":"Config kopieren","data-copied-msg":"Config wurde in die Zwischenablage kopiert","reset-config-label":"Config zurücksetzten","css-save-btn":"Änderungen speichern","css-note-label":"Bemerkung","css-note-l1":"Sie müssen die Seite aktualisieren, damit Ihre Änderungen wirksam werden.","css-note-l2":"Stilüberschreibungen werden nur lokal gespeichert, daher wird empfohlen, eine Kopie Ihres CSS zu erstellen.","css-note-l3":"Um alle benutzerdefinierten Stile zu entfernen, löschen Sie den Inhalt und klicken Sie auf Änderungen speichern."},"settings":{"theme-label":"Theme","layout-label":"Layout","layout-auto":"Auto","layout-horizontal":"Horizontal","layout-vertical":"Vertikal","item-size-label":"Item größe","item-size-small":"klein","item-size-medium":"mittel","item-size-large":"groß","config-launcher-label":"Config"},"updates":{"app-version-note":"Dashy version","up-to-date":"Up-to-Date","out-of-date":"Update Verfügbar","unsupported-version-l1":"Sie verwenden eine nicht unterstützte Version von Dashy","unsupported-version-l2":"Für die beste Erfahrung und aktuelle Sicherheitspatches aktualisieren Sie bitte auf"},"language-switcher":{"title":"Ändere die Applikationssprache","dropdown-label":"Sprache Auswählen","save-button":"Speichern","success-msg":"Sprache geändert zu"},"theme-maker":{"title":"Theme Konfigurator","export-button":"Benutzerdefinierte Variablen exportieren","reset-button":"Styles zurücksetzen für","show-all-button":"Alle Variablen anzeigen","save-button":"Speichern","cancel-button":"Abbrechen","saved-toast":"{theme} wurde Erfolgreich geupdated","copied-toast":"Theme Daten für {theme} in Zwischenablage kopiert.","reset-toast":"Benutzerdefinierte Farben für {theme} entfernt"},"config-editor":{"save-location-label":"Speicherort","location-local-label":"Lokal","location-disk-label":"Änderungen in die Konfigurationsdatei schreiben","save-button":"speichere Änderungen","valid-label":"Config ist gültig","status-success-msg":"Aufgabe abgeschlossen","status-fail-msg":"Aufgabe fehlgeschlagen","success-msg-disk":"Konfigurationsdatei erfolgreich auf die Festplatte geschrieben","success-msg-local":"Lokale Änderungen erfolgreich gespeichert","success-note-l1":"Die App sollte automatisch rebuild werden.","success-note-l2":"Dies kann bis zu einer Minute dauern.","success-note-l3":"Sie müssen die Seite aktualisieren, damit die Änderungen wirksam werden.","error-msg-save-mode":"Bitte wählen Sie einen Speichermodus: Lokal oder Datei","error-msg-cannot-save":"Beim Speichern der Konfiguration ist ein Fehler aufgetreten","error-msg-bad-json":"Fehler in JSON, möglicherweise fehlerhaft","warning-msg-validation":"Validierungswarnung"},"app-rebuild":{"title":"Rebuild Application","rebuild-note-l1":"Damit die in die Datei conf.yml geschriebenen Änderungen wirksam werden, ist ein rebuild erforderlich.","rebuild-note-l2":"Dies sollte automatisch passieren, aber wenn nicht, können Sie es hier manuell auslösen.","rebuild-note-l3":"Dies ist bei lokal gespeicherten Änderungen nicht erforderlich.","rebuild-button":"Start Build","rebuilding-status-1":"Building...","rebuilding-status-2":"Das kann ein paar minuten dauern","error-permission":"Sie sind nicht berechtigt, diese Aktion auszulösen","success-msg":"Build erfolgreich abgeschlossen","fail-msg":"Build-Vorgang fehlgeschlagen","reload-note":"Ein Neuladen der Seite ist jetzt erforderlich, damit die Änderungen wirksam werden.","reload-button":"Seite neuladen"},"cloud-sync":{"title":"Cloud Backup & Wiederherstellung","intro-l1":"Cloud-Backup und Wiederherstellung ist eine optionale Funktion, mit der Sie Ihre Config in das Internet hochladen und dann auf einem anderen Gerät oder einer anderen Dashy-Instanz wiederherstellen können.","intro-l2":"Alle Daten sind vollständig Ende-zu-Ende mit AES verschlüsselt. Ihr Passwort wird als Schlüssel verwendet wird.","intro-l3":"Weitere Informationen finden Sie im","backup-title-setup":"Backup erstellen","backup-title-update":"Backup aktualisieren","password-label-setup":"Passwort auswählen","password-label-update":"Passwort eigeben","backup-button-setup":"Backup","backup-button-update":"Backup aktualisieren","backup-id-label":"Your Backup ID","backup-id-note":"Dies wird verwendet, um später aus Backups wiederherzustellen. Bewahren Sie es zusammen mit Ihrem Passwort an einem sicheren Ort auf.","restore-title":"Backup wiederherstellen","restore-id-label":"Restore ID","restore-password-label":"Passwort","restore-button":"wiederherstellen","backup-error-unknown":"Anfrage kann nicht verarbeitet werden","backup-error-password":"Falsches Passwort. Bitte geben Sie Ihr aktuelles Passwort ein.","backup-success-msg":"Erfolgreich beendet","restore-success-msg":"Config erfolgreich wiederhergestellt"}}')},cbd9:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-file-download fa-w-12",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"file-download",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M216 236.07c0-6.63-5.37-12-12-12h-24c-6.63 0-12 5.37-12 12v84.01h-48.88c-10.71 0-16.05 12.97-8.45 20.52l72.31 71.77c4.99 4.95 13.04 4.95 18.03 0l72.31-71.77c7.6-7.54 2.26-20.52-8.45-20.52H216v-84.01zM369.83 97.98L285.94 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h287.94c26.5 0 48.07-21.5 48.07-47.99V131.97c0-12.69-5.17-24.99-14.17-33.99zM255.95 51.99l76.09 76.08h-76.09V51.99zM336 464.01H47.99V48.09h159.97v103.98c0 13.3 10.7 23.99 24 23.99H336v287.95z"}})]))}}},cf1c:function(e,t,a){"use strict";a("8d7c")},d16d:function(e,t,a){"use strict";a("18dd")},d636:function(e,t,a){"use strict";a("78d0")},d8e8:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-compress-arrows-alt fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"compress-arrows-alt",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M200 288H88c-21.4 0-32.1 25.8-17 41l32.9 31-99.2 99.3c-6.2 6.2-6.2 16.4 0 22.6l25.4 25.4c6.2 6.2 16.4 6.2 22.6 0L152 408l31.1 33c15.1 15.1 40.9 4.4 40.9-17V312c0-13.3-10.7-24-24-24zm112-64h112c21.4 0 32.1-25.9 17-41l-33-31 99.3-99.3c6.2-6.2 6.2-16.4 0-22.6L481.9 4.7c-6.2-6.2-16.4-6.2-22.6 0L360 104l-31.1-33C313.8 55.9 288 66.6 288 88v112c0 13.3 10.7 24 24 24zm96 136l33-31.1c15.1-15.1 4.4-40.9-17-40.9H312c-13.3 0-24 10.7-24 24v112c0 21.4 25.9 32.1 41 17l31-32.9 99.3 99.3c6.2 6.2 16.4 6.2 22.6 0l25.4-25.4c6.2-6.2 6.2-16.4 0-22.6L408 360zM183 71.1L152 104 52.7 4.7c-6.2-6.2-16.4-6.2-22.6 0L4.7 30.1c-6.2 6.2-6.2 16.4 0 22.6L104 152l-33 31.1C55.9 198.2 66.6 224 88 224h112c13.3 0 24-10.7 24-24V88c0-21.3-25.9-32-41-16.9z"}})]))}}},de40:function(e,t,a){"use strict";a("7f59")},e0a2:function(e,t){e.exports=/(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff]|[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|[\ud83c[\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|[\ud83c[\ude32-\ude3a]|[\ud83c[\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff])/},e1d5:function(e,t,a){"use strict";a("2bcd")},e697:function(e,t,a){"use strict";a("2574")},e6a4:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-download fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fal","data-icon":"download",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M452 432c0 11-9 20-20 20s-20-9-20-20 9-20 20-20 20 9 20 20zm-84-20c-11 0-20 9-20 20s9 20 20 20 20-9 20-20-9-20-20-20zm144-48v104c0 24.3-19.7 44-44 44H44c-24.3 0-44-19.7-44-44V364c0-24.3 19.7-44 44-44h99.4L87 263.6c-25.2-25.2-7.3-68.3 28.3-68.3H168V40c0-22.1 17.9-40 40-40h96c22.1 0 40 17.9 40 40v155.3h52.7c35.6 0 53.4 43.1 28.3 68.3L368.6 320H468c24.3 0 44 19.7 44 44zm-261.7 17.7c3.1 3.1 8.2 3.1 11.3 0L402.3 241c5-5 1.5-13.7-5.7-13.7H312V40c0-4.4-3.6-8-8-8h-96c-4.4 0-8 3.6-8 8v187.3h-84.7c-7.1 0-10.7 8.6-5.7 13.7l140.7 140.7zM480 364c0-6.6-5.4-12-12-12H336.6l-52.3 52.3c-15.6 15.6-41 15.6-56.6 0L175.4 352H44c-6.6 0-12 5.4-12 12v104c0 6.6 5.4 12 12 12h424c6.6 0 12-5.4 12-12V364z"}})]))}}},e7fa:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-edit fa-w-18",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"edit",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 576 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M402.3 344.9l32-32c5-5 13.7-1.5 13.7 5.7V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h273.5c7.1 0 10.7 8.6 5.7 13.7l-32 32c-1.5 1.5-3.5 2.3-5.7 2.3H48v352h352V350.5c0-2.1.8-4.1 2.3-5.6zm156.6-201.8L296.3 405.7l-90.4 10c-26.2 2.9-48.5-19.2-45.6-45.6l10-90.4L432.9 17.1c22.9-22.9 59.9-22.9 82.7 0l43.2 43.2c22.9 22.9 22.9 60 .1 82.8zM460.1 174L402 115.9 216.2 301.8l-7.3 65.3 65.3-7.3L460.1 174zm64.8-79.7l-43.2-43.2c-4.1-4.1-10.8-4.1-14.8 0L436 82l58.1 58.1 30.9-30.9c4-4.2 4-10.8-.1-14.9z"}})]))}}},eb58:function(e,t,a){"use strict";a("9e96")},ec1d:function(e,t,a){"use strict";a("f254")},ed9b:function(e,t,a){"use strict";a("a4c2")},eda6:function(e,t,a){"use strict";a("1864")},edaf:function(e,t,a){},edfc:function(e,t,a){},f254:function(e,t,a){},f255:function(e,t,a){"use strict";a("339a")},f719:function(e,t,a){"use strict";a("27c1")},f7af:function(e,t,a){},f94d:function(e,t,a){},f9d7:function(e,t){e.exports={functional:!0,render(e,t){const{_c:a,_v:n,data:s,children:o=[]}=t,{class:i,staticClass:r,style:l,staticStyle:c,attrs:u={},...d}=s;return a("svg",{class:["svg-inline--fa fa-columns fa-w-16",i,r],style:[l,c],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"columns",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},o.concat([a("path",{attrs:{fill:"currentColor",d:"M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM224 416H64V160h160v256zm224 0H288V160h160v256z"}})]))}}},fa2b:function(e,t,a){"use strict";a("f7af")},fae5:function(e,t,a){}}); +//# sourceMappingURL=dashy.4288c606.js.map \ No newline at end of file diff --git a/js/dashy.6bba1668.js.map b/js/dashy.4288c606.js.map similarity index 99% rename from js/dashy.6bba1668.js.map rename to js/dashy.4288c606.js.map index 7ecc51fb..2cb53864 100644 --- a/js/dashy.6bba1668.js.map +++ b/js/dashy.4288c606.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/assets/interface-icons/user-logout.svg","webpack:///./src/assets/interface-icons/config-delete-local.svg","webpack:///./src/components/Settings/ConfigLauncher.vue?11cf","webpack:///./src/assets/interface-icons/config-language.svg","webpack:///./src/assets/interface-icons/application-rebuild.svg","webpack:///./src/components/Settings/AppButtons.vue?ae12","webpack:///./src/components/Configuration/RebuildApp.vue?b4b6","webpack:///./src/assets/interface-icons/open-iframe.svg","webpack:///./src/components/LinkItems/ItemGroup.vue?c93a","webpack:///./src/components/Configuration/ConfigContainer.vue?09fd","webpack:///./src/views/Home.vue?7e5a","webpack:///./src/views/Login.vue?2567","webpack:///./src/assets/interface-icons/open-current-tab.svg","webpack:///./src/assets/interface-icons/open-new-tab.svg","webpack:///./src/assets/interface-icons/application-about.svg","webpack:///./src/components/FormElements/Button.vue?8611","webpack:///./src/components/PageStrcture/LoadingScreen.vue?ea0c","webpack:///./src/components/FormElements/Input.vue?fb76","webpack:///./src/assets/interface-icons/config-editor.svg","webpack:///./src/components/Settings/CustomThemeMaker.vue?25a2","webpack:///./src/assets/interface-icons/config-backup.svg","webpack:///./src/assets/interface-icons/open-workspace.svg","webpack:///./src/assets/interface-icons/application-reload.svg","webpack:///./src/assets/interface-icons/config-color-palette.svg","webpack:///./src/components/Workspace/WebContent.vue?7bf3","webpack:///./src/components/LinkItems/StatusIndicator.vue?dc21","webpack:///./src/components/Settings/ThemeSelector.vue?89f8","webpack:///./src/components/Configuration/CloudBackupRestore.vue?fe42","webpack:///./src/App.vue?fd7f","webpack:///./src/components/PageStrcture/Header.vue?3877","webpack:///./src/components/PageStrcture/PageTitle.vue?0c63","webpack:///src/components/PageStrcture/PageTitle.vue","webpack:///./src/components/PageStrcture/PageTitle.vue?ea63","webpack:///./src/components/PageStrcture/PageTitle.vue","webpack:///./src/components/PageStrcture/Nav.vue?423c","webpack:///src/components/PageStrcture/Nav.vue","webpack:///./src/components/PageStrcture/Nav.vue?c674","webpack:///./src/components/PageStrcture/Nav.vue","webpack:///src/components/PageStrcture/Header.vue","webpack:///./src/components/PageStrcture/Header.vue?83b0","webpack:///./src/components/PageStrcture/Header.vue","webpack:///./src/components/PageStrcture/Footer.vue?fbd1","webpack:///src/components/PageStrcture/Footer.vue","webpack:///./src/components/PageStrcture/Footer.vue?6588","webpack:///./src/components/PageStrcture/Footer.vue","webpack:///./src/components/PageStrcture/LoadingScreen.vue?d067","webpack:///src/components/PageStrcture/LoadingScreen.vue","webpack:///./src/components/PageStrcture/LoadingScreen.vue?96ea","webpack:///./src/components/PageStrcture/LoadingScreen.vue","webpack:///./src/utils/ConfigAccumalator.js","webpack:///./src/utils/languages.js","webpack:///./src/utils/ConfigHelpers.js","webpack:///./src/utils/CoolConsole.js","webpack:///src/App.vue","webpack:///./src/App.vue?382d","webpack:///./src/App.vue","webpack:///./src/views/Home.vue?13be","webpack:///./src/components/Settings/SettingsContainer.vue?d4c7","webpack:///./src/components/Settings/SearchBar.vue?907f","webpack:///./src/utils/ArrowKeyNavigation.js","webpack:///src/components/Settings/SearchBar.vue","webpack:///./src/components/Settings/SearchBar.vue?8307","webpack:///./src/components/Settings/SearchBar.vue","webpack:///./src/components/Settings/ConfigLauncher.vue?65d9","webpack:///./src/components/Configuration/ConfigContainer.vue?357f","webpack:///./src/utils/JsonToYaml.js","webpack:///./src/components/Configuration/JsonEditor.vue?5bd5","webpack:///./src/utils/Auth.js","webpack:///src/components/Configuration/JsonEditor.vue","webpack:///./src/components/Configuration/JsonEditor.vue?579f","webpack:///./src/components/Configuration/JsonEditor.vue","webpack:///./src/components/Configuration/CustomCss.vue?8303","webpack:///./src/components/Settings/CustomThemeMaker.vue?96e3","webpack:///./src/components/FormElements/Button.vue?0107","webpack:///src/components/FormElements/Button.vue","webpack:///./src/components/FormElements/Button.vue?52f8","webpack:///./src/components/FormElements/Button.vue","webpack:///src/components/Settings/CustomThemeMaker.vue","webpack:///./src/components/Settings/CustomThemeMaker.vue?39f6","webpack:///./src/components/Settings/CustomThemeMaker.vue","webpack:///src/components/Configuration/CustomCss.vue","webpack:///./src/components/Configuration/CustomCss.vue?3340","webpack:///./src/components/Configuration/CustomCss.vue","webpack:///./src/components/Configuration/CloudBackupRestore.vue?c20f","webpack:///./src/components/FormElements/Input.vue?eee8","webpack:///src/components/FormElements/Input.vue","webpack:///./src/components/FormElements/Input.vue?49a6","webpack:///./src/components/FormElements/Input.vue","webpack:///./src/utils/CloudBackup.js","webpack:///src/components/Configuration/CloudBackupRestore.vue","webpack:///./src/components/Configuration/CloudBackupRestore.vue?d065","webpack:///./src/components/Configuration/CloudBackupRestore.vue","webpack:///./src/components/Configuration/RebuildApp.vue?dcd0","webpack:///src/components/Configuration/RebuildApp.vue","webpack:///./src/components/Configuration/RebuildApp.vue?1840","webpack:///./src/components/Configuration/RebuildApp.vue","webpack:///./src/components/Configuration/AppVersion.vue?b411","webpack:///src/components/Configuration/AppVersion.vue","webpack:///./src/components/Configuration/AppVersion.vue?808b","webpack:///./src/components/Configuration/AppVersion.vue","webpack:///src/components/Configuration/ConfigContainer.vue","webpack:///./src/components/Configuration/ConfigContainer.vue?d8c3","webpack:///./src/components/Configuration/ConfigContainer.vue","webpack:///./src/components/Settings/LanguageSwitcher.vue?7677","webpack:///src/components/Settings/LanguageSwitcher.vue","webpack:///./src/components/Settings/LanguageSwitcher.vue?15e6","webpack:///./src/components/Settings/LanguageSwitcher.vue","webpack:///src/components/Settings/ConfigLauncher.vue","webpack:///./src/components/Settings/ConfigLauncher.vue?5a66","webpack:///./src/components/Settings/ConfigLauncher.vue","webpack:///./src/components/Settings/ThemeSelector.vue?5d94","webpack:///./src/utils/ErrorHandler.js","webpack:///./src/utils/ThemeHelper.js","webpack:///src/components/Settings/ThemeSelector.vue","webpack:///./src/components/Settings/ThemeSelector.vue?3fa2","webpack:///./src/components/Settings/ThemeSelector.vue","webpack:///./src/components/Settings/LayoutSelector.vue?6e40","webpack:///src/components/Settings/LayoutSelector.vue","webpack:///./src/components/Settings/LayoutSelector.vue?4a31","webpack:///./src/components/Settings/LayoutSelector.vue","webpack:///./src/components/Settings/ItemSizeSelector.vue?be6e","webpack:///src/components/Settings/ItemSizeSelector.vue","webpack:///./src/components/Settings/ItemSizeSelector.vue?7880","webpack:///./src/components/Settings/ItemSizeSelector.vue","webpack:///./src/components/Settings/AppButtons.vue?6bd8","webpack:///src/components/Settings/AppButtons.vue","webpack:///./src/components/Settings/AppButtons.vue?185d","webpack:///./src/components/Settings/AppButtons.vue","webpack:///./src/components/Settings/KeyboardShortcutInfo.vue?fd82","webpack:///src/components/Settings/KeyboardShortcutInfo.vue","webpack:///./src/components/Settings/KeyboardShortcutInfo.vue?6297","webpack:///./src/components/Settings/KeyboardShortcutInfo.vue","webpack:///./src/components/Configuration/AppInfoModal.vue?be1d","webpack:///src/components/Configuration/AppInfoModal.vue","webpack:///./src/components/Configuration/AppInfoModal.vue?ee6a","webpack:///./src/components/Configuration/AppInfoModal.vue","webpack:///src/components/Settings/SettingsContainer.vue","webpack:///./src/components/Settings/SettingsContainer.vue?5e44","webpack:///./src/components/Settings/SettingsContainer.vue","webpack:///./src/components/LinkItems/ItemGroup.vue?59b3","webpack:///./src/components/LinkItems/Item.vue?518a","webpack:///./src/components/LinkItems/ItemIcon.vue?7fdd","webpack:///src/components/LinkItems/ItemIcon.vue","webpack:///./src/components/LinkItems/ItemIcon.vue?e801","webpack:///./src/components/LinkItems/ItemIcon.vue","webpack:///./src/components/LinkItems/ItemOpenMethodIcon.vue?8c8c","webpack:///src/components/LinkItems/ItemOpenMethodIcon.vue","webpack:///./src/components/LinkItems/ItemOpenMethodIcon.vue?b230","webpack:///./src/components/LinkItems/ItemOpenMethodIcon.vue","webpack:///./src/components/LinkItems/StatusIndicator.vue?77e8","webpack:///src/components/LinkItems/StatusIndicator.vue","webpack:///./src/components/LinkItems/StatusIndicator.vue?9938","webpack:///./src/components/LinkItems/StatusIndicator.vue","webpack:///./src/components/LinkItems/ContextMenu.vue?657c","webpack:///src/components/LinkItems/ContextMenu.vue","webpack:///./src/components/LinkItems/ContextMenu.vue?623e","webpack:///./src/components/LinkItems/ContextMenu.vue","webpack:///src/components/LinkItems/Item.vue","webpack:///./src/components/LinkItems/Item.vue?a851","webpack:///./src/components/LinkItems/Item.vue","webpack:///./src/components/LinkItems/Collapsable.vue?bf67","webpack:///src/components/LinkItems/Collapsable.vue","webpack:///./src/components/LinkItems/Collapsable.vue?bb21","webpack:///./src/components/LinkItems/Collapsable.vue","webpack:///./src/components/LinkItems/IframeModal.vue?999e","webpack:///src/components/LinkItems/IframeModal.vue","webpack:///./src/components/LinkItems/IframeModal.vue?5f28","webpack:///./src/components/LinkItems/IframeModal.vue","webpack:///src/components/LinkItems/ItemGroup.vue","webpack:///./src/components/LinkItems/ItemGroup.vue?d5bc","webpack:///./src/components/LinkItems/ItemGroup.vue","webpack:///src/views/Home.vue","webpack:///./src/views/Home.vue?1ead","webpack:///./src/views/Home.vue","webpack:///./src/views/Login.vue?14ba","webpack:///src/views/Login.vue","webpack:///./src/views/Login.vue?8434","webpack:///./src/views/Login.vue","webpack:///./src/views/Workspace.vue?b923","webpack:///./src/components/Workspace/SideBar.vue?9057","webpack:///./src/components/Workspace/SideBarItem.vue?c715","webpack:///src/components/Workspace/SideBarItem.vue","webpack:///./src/components/Workspace/SideBarItem.vue?61b9","webpack:///./src/components/Workspace/SideBarItem.vue","webpack:///./src/components/Workspace/SideBarSection.vue?53e8","webpack:///src/components/Workspace/SideBarSection.vue","webpack:///./src/components/Workspace/SideBarSection.vue?3ca7","webpack:///./src/components/Workspace/SideBarSection.vue","webpack:///src/components/Workspace/SideBar.vue","webpack:///./src/components/Workspace/SideBar.vue?368a","webpack:///./src/components/Workspace/SideBar.vue","webpack:///./src/components/Workspace/WebContent.vue?50a9","webpack:///src/components/Workspace/WebContent.vue","webpack:///./src/components/Workspace/WebContent.vue?01ce","webpack:///./src/components/Workspace/WebContent.vue","webpack:///src/views/Workspace.vue","webpack:///./src/views/Workspace.vue?c5ca","webpack:///./src/views/Workspace.vue","webpack:///./src/views/DownloadConfig.vue?93b7","webpack:///src/views/DownloadConfig.vue","webpack:///./src/views/DownloadConfig.vue?a1ac","webpack:///./src/views/DownloadConfig.vue","webpack:///./src/router.js","webpack:///./src/utils/InitServiceWorker.js","webpack:///./src/utils/ClickOutside.js","webpack:///./src/utils/ErrorReporting.js","webpack:///./src/main.js","webpack:///./src/assets/interface-icons/config-open-settings.svg","webpack:///./src/components/Settings/LanguageSwitcher.vue?1cc7","webpack:///./src/assets/interface-icons/layout-horizontal.svg","webpack:///./src/App.vue?595f","webpack:///./src/utils/defaults.js","webpack:///./src/components/Settings/LayoutSelector.vue?6653","webpack:///./src/components/Workspace/SideBarItem.vue?3a0a","webpack:///./src/assets/interface-icons/config-close.svg","webpack:///./src/assets/interface-icons/loader.svg","webpack:///./src/views/Workspace.vue?602a","webpack:///./src/assets/interface-icons/cloud-backup-restore.svg","webpack:///./src/components/LinkItems/ContextMenu.vue?595f","webpack:///./src/views/DownloadConfig.vue?4e96","webpack:///./src/components/PageStrcture/Header.vue?c489","webpack:///./src/assets/interface-icons/icon-size-medium.svg","webpack:///./src/assets/interface-icons/config-custom-css.svg","webpack:///./src/components/Configuration/JsonEditor.vue?5179","webpack:///./src/components/LinkItems/Item.vue?b4f3","webpack:///./src/components/Workspace/SideBar.vue?34c4","webpack:///./src/components/Settings/ItemSizeSelector.vue?dc3b","webpack:///./public/conf.yml","webpack:///./src/assets/interface-icons/config-cancel.svg","webpack:///./src/assets/interface-icons/save-config.svg","webpack:///./src/assets/interface-icons/icon-size-large.svg","webpack:///./src/components/Settings/KeyboardShortcutInfo.vue?300b","webpack:///./src/assets/interface-icons/broken-icon.svg","webpack:///./src/components/Configuration/CustomCss.vue?fa1a","webpack:///./src/components/Settings/SearchBar.vue?96a9","webpack:///./src/components/LinkItems/ItemOpenMethodIcon.vue?d33a","webpack:///./src/assets/interface-icons/layout-default.svg","webpack:///./src/assets/interface-icons/config-download-file.svg","webpack:///./src/components/Workspace/SideBarSection.vue?8693","webpack:///./src/components/PageStrcture/Nav.vue?efdc","webpack:///./src/components/Configuration/AppInfoModal.vue?02c2","webpack:///./src/assets/interface-icons/icon-size-small.svg","webpack:///./src/components/LinkItems/ItemIcon.vue?e410","webpack:///./src/utils/EmojiUnicodeRegex.js","webpack:///./src/components/Configuration/ConfigContainer.vue?366d","webpack:///./src/components/LinkItems/StatusIndicator.vue?b7eb","webpack:///./src/assets/interface-icons/config-restore.svg","webpack:///./src/assets/interface-icons/config-edit-json.svg","webpack:///./src/components/LinkItems/Collapsable.vue?d84e","webpack:///./src/components/PageStrcture/PageTitle.vue?99fa","webpack:///./src/components/PageStrcture/Footer.vue?70f9","webpack:///./src/components/LinkItems/IframeModal.vue?f46c","webpack:///./src/components/Configuration/AppVersion.vue?7d66","webpack:///./src/components/LinkItems/Item.vue?d111","webpack:///./src/assets/interface-icons/layout-vertical.svg","webpack:///./src/components/Settings/SettingsContainer.vue?88da"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","functional","_h","_vm","_c","_v","children","class","classNames","staticClass","style","staticStyle","attrs","rest","assign","concat","render","this","$createElement","_self","shouldShowSplash","isLoading","_e","pageInfo","visibleComponents","getFooterText","staticRenderFns","title","description","logo","navLinks","_s","props","String","component","_l","link","index","path","isUrl","links","Array","methods","inject","components","PageTitle","Nav","titleVisible","navVisible","text","domProps","authorUrl","authorName","licenseUrl","license","showCopyright","date","repoUrl","on","$event","ConfigAccumulator","constructor","conf","appConfig","appConfigFile","usersAppConfig","defaultAppConfig","localStorage","localStorageKeys","APP_CONFIG","JSON","parse","layout","LAYOUT_ORIENTATION","defaultLayout","iconSize","ICON_SIZE","defaultIconSize","language","LANGUAGE","defaultLanguage","defaults","defaultPageInfo","localPageInfo","PAGE_INFO","filePageInfo","pi","footerText","sections","localSections","CONF_SECTIONS","json","sectionsFile","config","languages","locale","en","flag","de","nl","i18nMessages","forEach","lang","messages","Accumulator","componentVisibility","usersChoice","hideComponents","isThere","userValue","pageTitle","hideHeading","navigation","hideNav","searchBar","hideSearch","settings","hideSettings","footer","hideFooter","splashScreen","hideSplashScreen","getTheme","localTheme","THEME","appConfigTheme","theme","defaultTheme","getCustomColors","localColors","CUSTOM_COLORS","configColors","customColors","getCustomKeyShortcuts","results","section","itemsWithHotKeys","items","filter","item","hotkey","map","url","flat","getUsersLanguage","langCode","langObj","find","welcomeMsg","v","log","warningMsg","raiseBug","Header","Footer","LoadingScreen","provide","showFooter","usersCss","textContent","append","availibleLocales","$i18n","availableLocales","usersLang","includes","usersBorwserLang1","navigator","usersBorwserLang2","split","applyLanguage","hideSplash","customCss","cleanedCss","replace","injectCustomStyles","getBackgroundImage","ref","itemSizeBound","getExternalCSSLinks","getSections","modalOpen","searching","setLayoutOrientation","setItemSize","updateModalVisibility","checkTheresData","filterTiles","searchValue","icon","getDisplayData","finishedSearching","checkIfResults","$t","userIsTypingSomething","settingsVisible","externalThemes","getInitialTheme","getUserThemes","modalChanged","displayLayout","updateDisplayLayout","updateIconSize","isUserLoggedIn","directives","rawName","expression","toggleSettingsVisibility","composing","input","indexOf","_k","keyCode","clearFilterInput","arguments","ArrowKeyNavigation","resetIndex","arrowNavigation","goToPrevious","goToNext","getSafeElementIndex","selectItemByIndex","focus","getElementsByClassName","numResults","getNumResults","startingIndex","isSameRow","indx","pos","offsetTop","checkPreviousIndex","currentIndex","yPos","position","isBelow","start","end","nextIndex","findPreviousRow","count","rowLen","findNextRow","adjustment","checkNextIndex","isAbove","active","Boolean","akn","addEventListener","currentElem","activeElement","id","test","$refs","handleHotKey","$emit","blur","usersHotKeys","parseInt","open","tooltip","showEditor","modalNames","CONF_EDITOR","combineConfig","LANG_SWITCHER","downloadConfigFile","yaml","navigateToTab","backupId","openLanguageSwitchModal","openRebuildAppModal","resetLocalSettings","openAboutModal","getLanguage","copyConfigToClipboard","trimWhitespace","x","trimRight","join","throwError","msg","stringify","indentLevel","handlers","null","number","boolean","string","array","output","y","handler","typeOf","inArray","rootNode","keys","k","val","function","options","model","callback","$$v","jsonData","allowWriteToDisk","_q","saveMode","isValid","save","errorMessages","saveSuccess","responseText","generateUserToken","user","strAndUpper","toString","toUpperCase","sha","sha256","hash","isLoggedIn","users","validTokens","userAuthenticated","cookie","cookieKey","trim","cookieValue","cookieKeys","AUTH_TOKEN","checkCredentials","username","pass","response","toLowerCase","correct","login","now","Date","expiry","setTime","getTime","toGMTString","userObject","setItem","USERNAME","logout","removeItem","isUserAdmin","currentUser","isAdmin","VJsoneditor","schema","modes","onValidationError","validationErrors","jsonParser","JsonToYaml","shouldAllowWriteToDisk","computed","allowConfigEdit","auth","writeConfigToDisk","$toasted","show","saveConfigLocally","baseUrl","endpoint","headers","body","success","carefullyClearLocalStorage","showToast","errors","highlighter","currentTheme","showingAllVars","colorName","replaceAll","isColor","swatches","setVariable","$set","makeSwatchStyles","slot","exportToClipboard","resetAndSave","themeToEdit","findAllVariableNames","saveChanges","resetUnsavedColors","disallow","disabled","click","_t","Function","VSwatches","Button","SaveIcon","CancelIcon","makeInitialData","cssVar","getComputedStyle","documentElement","getPropertyValue","variable","setProperty","priorSettings","variables","removeProperty","themeName","clipboardText","clipboard","writeText","variableArray","hasDash","addDash","removeDash","getCssVariableValue","availableVariables","from","styleSheets","colorHex","hexToRgb","colorParts","exec","hex","getLightness","contrastingColor","getForegroundColor","variableName","variableValue","nonColorVariables","CustomThemeMaker","PrismEditor","css","match","validate","userStyles","backupPassword","checkPass","scopedSlots","_u","fn","proxy","restoreCode","restorePassword","restoreBackup","label","placeholder","updateValue","default","validator","ENDPOINT","backupEndpoint","encryptData","password","stringifiedData","encryptedData","aes","encrypt","decryptData","decrypt","Utf8","makeSubHash","backup","axios","post","userData","subHash","update","put","encodeGetParams","entries","kv","encodeURIComponent","restore","params","errorMsg","decryptedData","Input","IconBackup","IconRestore","savedHash","makeUpdate","showErrorMsg","makeBackup","setBackupIdLocally","showSuccessMsg","isUpdate","makeHash","modalName","startBuild","loading","allowRebuild","refreshPage","RebuildIcon","ReloadIcon","LoadingAnimation","responseData","location","reload","appVersion","finished","isUpToDate","veryOutOfDate","latestVersion","checksEnabled","checkVersion","packageUrl","version","checkIfUpToDate","currentVersion","difference","JsonEditor","CustomCssEditor","CloudBackupRestore","RebuildApp","AppVersion","DownloadIcon","DeleteIcon","EditIcon","CloudIcon","CustomCssIcon","LanguageIcon","IconAbout","tabInxex","itemToSelect","tabView","navItems","activeTabItem","$modal","isTheUserSure","confirm","clear","filename","filecontents","element","display","highlighted","getElementById","innerHTML","initiateStntaxHighlighter","availibleLanguages","setLangLocally","saveLanguage","SaveConfigIcon","selectedLanguage","checkLocale","successMsg","hide","i18nLocales","IconSpanner","ConfigContainer","LanguageSwitcher","content","themeNames","selectedTheme","openThemeConfigurator","closeThemeConfigurator","ErrorHandler","warn","GetTheme","ApplyCustomVariables","mainCssVars","vName","themeColors","customVar","ApplyLocalTheme","newTheme","htmlTag","hasAttribute","removeAttribute","LoadExternalTheme","preloadTheme","sheet","checkTheme","themes","selectTheme","add","confTheme","userThemes","IconPalette","watch","updateTheme","builtInThemes","themeHelper","themeConfiguratorOpen","externalThemeNames","specialThemes","added","isThemeLocal","themeToCheck","resetToDefault","IconDeafault","IconHorizontal","IconVertical","IconSmall","IconMedium","IconLarge","IconLogout","shouldHide","hideWelcomeHelper","timeDelay","removeEventListener","keyPressEvent","shouldHideWelcomeMessage","$destroy","serviceWorkerInfo","getIsConfigValidStatus","showInfo","systemInfo","browser","isMobile","os","getSystemInfo","getSwStatus","isValidVar","sessionData","sessionStorage","swInfo","swStatus","registered","ready","cached","updateFound","updated","offline","devMode","userAgent","SearchBar","ConfigLauncher","ThemeSelector","LayoutSelector","ItemSizeSelector","AppButtons","KeyboardShortcutInfo","AppInfoModal","IconOpen","IconClose","something","changedTo","cssThemes","getSettingsVisibility","searchVisible","groupId","displayData","collapsed","cols","rows","color","customStyles","isGridLayout","makeId","backgroundColor","statusCheckUrl","statusCheckHeaders","newItemSize","shouldEnableStatusCheck","statusCheck","getStatusCheckInterval","triggerModal","getTooltipOptions","itemSize","getUnicodeOpeningIcon","itemOpened","button","openContextMenu","preventDefault","statusResponse","successStatus","contextMenuOpen","contextPos","posX","posY","contextItemClick","iconType","size","getEmoji","iconPath","broken","imageNotFound","BrokenImage","determineImageType","getIconPath","str","pattern","RegExp","img","fileExtRegex","validImgExtensions","splitPath","emojiCode","emojiType","fromCodePoint","substr","fullUrl","shouldUseDefaultFavicon","urlParts","host","getHostName","faviconApi","isLocalIP","imgType","makeClass","isSmall","isTransparent","openingMethod","Number","transparent","NewTabOpenIcon","SameTabOpenIcon","IframeOpenIcon","WorkspaceOpenIcon","statusText","otherStatusText","classes","_m","statusSuccess","startTime","menuEnabled","launch","isMenuDisabled","disableContextMenu","subtitle","enableStatusCheck","statusCheckInterval","getId","background","Icon","ItemOpenMethodIcon","StatusIndicator","ContextMenu","altKey","clientX","pageXOffset","clientY","pageYOffset","hotkeyText","trigger","hideOnTargetClick","html","placement","delay","urlToCheck","method","checkWebsiteStatus","setInterval","checkSpanNum","sanitizeCustomStyles","uniqueKey","getCollapseState","collapseChanged","span","classPrefix","maxSpan","numSpan","userCss","initStorage","collapseStateObject","initialiseStorage","collapseState","newState","whatChanged","setCollapseState","srcElement","checked","modalClosed","close","Collapsable","Item","IframeModal","sectionLayout","styles","itemCountX","itemCountY","itemPreference","globalPreference","interval","SettingsContainer","ItemGroup","layoutOrientation","set","filterComp","urlPattern","domainPattern","allTiles","searchTerm","modalState","availibleThemes","externalStyleSheet","externals","isArray","ext","Default","isNeeded","enableFontAwesome","checkIfFontAwesomeNeeded","fontAwesomeScript","faKey","fontAwesomeKey","itemsFound","backgroundImg","initiateFontAwesome","dropDownMenu","submitLogin","status","time","setTheme","launchApp","openSection","isOpen","itemClicked","SideBarItem","fill","SideBarSection","ind","SideBar","WebContent","route","$route","query","decodeURI","Vue","use","Router","isAuthenticated","router","routes","Home","meta","metaTags","metaTagData","Workspace","Login","beforeEnter","to","next","DownloadConfig","beforeEach","defaultTitle","afterEach","nextTick","setSwStatus","swStateToSet","initialSwState","disabledByUser","sessionStorageKeys","SW_STATUS","currentSwState","newSwState","shouldEnableServiceWorker","shouldEnable","disableServiceWorker","registerServiceWorker","register","updatefound","instances","onDocumentClick","el","contains","binding","dataset","outsideClickIndex","unbind","ErrorTracking","enableErrorReporting","Sentry","require","Integrations","dsn","init","integrations","BrowserTracing","routingInstrumentation","vueRouterInstrumentation","tracesSampleRate","VueI18n","VTooltip","VModal","VTabs","Toasted","toastedOptions","VSelect","directive","clickOutside","productionTip","i18n","fallbackLocale","serviceWorker","ErrorReporting","awesome","Dashy","$mount","HIDE_WELCOME_BANNER","COLLAPSE_STATE","BACKUP_ID","BACKUP_HASH","HIDE_SETTINGS","CLOUD_BACKUP","REBUILD_APP","THEME_MAKER","ABOUT_APP","topLevelConfKeys","SECTIONS","splashScreenTime","duration","keepOnHover","className","iconPack","faviconApiEndpoints","mcapi","clearbit","faviconkit","google","allesedv","webmasterapi"],"mappings":"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","file":"js/dashy.6bba1668.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"dashy\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"dashy\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({\"about\":\"about\"}[chunkId]||chunkId) + \".\" + {\"about\":\"d1c21b1f\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"about\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({\"about\":\"about\"}[chunkId]||chunkId) + \".\" + {\"about\":\"a64c098d\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-sign-out-alt fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"sign-out-alt\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M497 273L329 441c-15 15-41 4.5-41-17v-96H152c-13.3 0-24-10.7-24-24v-96c0-13.3 10.7-24 24-24h136V88c0-21.4 25.9-32 41-17l168 168c9.3 9.4 9.3 24.6 0 34zM192 436v-40c0-6.6-5.4-12-12-12H96c-17.7 0-32-14.3-32-32V160c0-17.7 14.3-32 32-32h84c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12H96c-53 0-96 43-96 96v192c0 53 43 96 96 96h84c6.6 0 12-5.4 12-12z\"}})])\n )\n }\n }\n ","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-trash-alt fa-w-14\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"trash-alt\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 448 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M268 416h24a12 12 0 0012-12V188a12 12 0 00-12-12h-24a12 12 0 00-12 12v216a12 12 0 0012 12zM432 80h-82.41l-34-56.7A48 48 0 00274.41 0H173.59a48 48 0 00-41.16 23.3L98.41 80H16A16 16 0 000 96v16a16 16 0 0016 16h16v336a48 48 0 0048 48h288a48 48 0 0048-48V128h16a16 16 0 0016-16V96a16 16 0 00-16-16zM171.84 50.91A6 6 0 01177 48h94a6 6 0 015.15 2.91L293.61 80H154.39zM368 464H80V128h288zm-212-48h24a12 12 0 0012-12V188a12 12 0 00-12-12h-24a12 12 0 00-12 12v216a12 12 0 0012 12z\"}})])\n )\n }\n }\n ","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfigLauncher.vue?vue&type=style&index=0&id=766377f2&scoped=true&lang=scss&\"","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-language fa-w-20\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"language\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 640 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M160.3 203.8h-.5s-4.3 20.9-7.8 33l-11 37.3h37.9l-10.7-37.3c-3.6-12.1-7.9-33-7.9-33zM616 96H24c-13.3 0-24 10.7-24 24v272c0 13.3 10.7 24 24 24h592c13.3 0 24-10.7 24-24V120c0-13.3-10.7-24-24-24zM233.2 352h-22.6a12 12 0 01-11.5-8.6l-9.3-31.7h-59.9l-9.1 31.6c-1.5 5.1-6.2 8.7-11.5 8.7H86.8c-8.2 0-14-8.1-11.4-15.9l57.1-168c1.7-4.9 6.2-8.1 11.4-8.1h32.2c5.1 0 9.7 3.3 11.4 8.1l57.1 168c2.6 7.8-3.2 15.9-11.4 15.9zM600 376H320V136h280zM372 228h110.8c-6.3 12.8-15.1 25.9-25.9 38.5-6.6-7.8-12.8-15.8-18.3-24-3.5-5.3-10.6-6.9-16.1-3.6l-13.7 8.2c-5.9 3.5-7.6 11.3-3.8 17 6.5 9.7 14.4 20.1 23.5 30.6-9 7.7-18.6 14.8-28.7 21.2-5.4 3.4-7.1 10.5-3.9 16l7.9 13.9c3.4 5.9 11 7.9 16.8 4.2 12.5-7.9 24.6-17 36-26.8 10.7 9.6 22.3 18.6 34.6 26.6 5.8 3.7 13.6 1.9 17-4.1l8-13.9c3.1-5.5 1.5-12.5-3.8-16-9.2-6-18.4-13.1-27.2-20.9 1.5-1.7 2.9-3.3 4.3-5 17.1-20.6 29.6-41.7 36.8-62H540c6.6 0 12-5.4 12-12v-16c0-6.6-5.4-12-12-12h-64v-16c0-6.6-5.4-12-12-12h-16c-6.6 0-12 5.4-12 12v16h-64c-6.6 0-12 5.4-12 12v16c0 6.7 5.4 12.1 12 12.1z\"}})])\n )\n }\n }\n ","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-hammer fa-w-18\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"hammer\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 576 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M571.31 193.94l-22.63-22.63c-6.25-6.25-16.38-6.25-22.63 0l-11.31 11.31-28.9-28.9c5.63-21.31.36-44.9-16.35-61.61l-45.25-45.25c-62.48-62.48-163.79-62.48-226.28 0l90.51 45.25v18.75c0 16.97 6.74 33.25 18.75 45.25l49.14 49.14c16.71 16.71 40.3 21.98 61.61 16.35l28.9 28.9-11.31 11.31c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l90.51-90.51c6.23-6.24 6.23-16.37-.02-22.62zm-286.72-15.2c-3.7-3.7-6.84-7.79-9.85-11.95L19.64 404.96c-25.57 23.88-26.26 64.19-1.53 88.93s65.05 24.05 88.93-1.53l238.13-255.07c-3.96-2.91-7.9-5.87-11.44-9.41l-49.14-49.14z\"}})])\n )\n }\n }\n ","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppButtons.vue?vue&type=style&index=0&id=d69dca9c&scoped=true&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RebuildApp.vue?vue&type=style&index=0&id=306fcc3a&scoped=true&lang=scss&\"","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-clone fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"clone\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M464 0c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48H176c-26.51 0-48-21.49-48-48V48c0-26.51 21.49-48 48-48h288M176 416c-44.112 0-80-35.888-80-80V128H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48v-48H176z\"}})])\n )\n }\n }\n ","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemGroup.vue?vue&type=style&index=0&id=cce3e8c4&scoped=true&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfigContainer.vue?vue&type=style&index=1&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=style&index=0&id=50d025ad&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=style&index=0&lang=scss&\"","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-window-maximize fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"window-maximize\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 394c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V192h416v234z\"}})])\n )\n }\n }\n ","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-external-link-alt fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"external-link-alt\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M432 320h-32a16 16 0 00-16 16v112H64V128h144a16 16 0 0016-16V80a16 16 0 00-16-16H48a48 48 0 00-48 48v352a48 48 0 0048 48h352a48 48 0 0048-48V336a16 16 0 00-16-16zM488 0H360c-21.37 0-32.05 25.91-17 41l35.73 35.73L135 320.37a24 24 0 000 34L157.67 377a24 24 0 0034 0l243.61-243.68L471 169c15 15 41 4.5 41-17V24a24 24 0 00-24-24z\"}})])\n )\n }\n }\n ","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-info fa-w-8\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"info\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 256 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M224 352.589V224c0-16.475-6.258-31.517-16.521-42.872C225.905 161.14 236 135.346 236 108 236 48.313 187.697 0 128 0 68.313 0 20 48.303 20 108c0 20.882 5.886 40.859 16.874 58.037C15.107 176.264 0 198.401 0 224v39.314c0 23.641 12.884 44.329 32 55.411v33.864C12.884 363.671 0 384.359 0 408v40c0 35.29 28.71 64 64 64h128c35.29 0 64-28.71 64-64v-40c0-23.641-12.884-44.329-32-55.411zM128 48c33.137 0 60 26.863 60 60s-26.863 60-60 60-60-26.863-60-60 26.863-60 60-60zm80 400c0 8.836-7.164 16-16 16H64c-8.836 0-16-7.164-16-16v-40c0-8.836 7.164-16 16-16h16V279.314H64c-8.836 0-16-7.164-16-16V224c0-8.836 7.164-16 16-16h96c8.836 0 16 7.164 16 16v168h16c8.836 0 16 7.164 16 16v40z\"}})])\n )\n }\n }\n ","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=style&index=0&id=ec408f00&scoped=true&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingScreen.vue?vue&type=style&index=0&id=a7bc1de6&scoped=true&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Input.vue?vue&type=style&index=0&id=5df13ed2&scoped=true&lang=scss&\"","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-wrench fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"wrench\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M507.73 109.1c-2.24-9.03-13.54-12.09-20.12-5.51l-74.36 74.36-67.88-11.31-11.31-67.88 74.36-74.36c6.62-6.62 3.43-17.9-5.66-20.16-47.38-11.74-99.55.91-136.58 37.93-39.64 39.64-50.55 97.1-34.05 147.2L18.74 402.76c-24.99 24.99-24.99 65.51 0 90.5 24.99 24.99 65.51 24.99 90.5 0l213.21-213.21c50.12 16.71 107.47 5.68 147.37-34.22 37.07-37.07 49.7-89.32 37.91-136.73zM64 472c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z\"}})])\n )\n }\n }\n ","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomThemeMaker.vue?vue&type=style&index=0&lang=scss&\"","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-upload fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fal\",\"data-icon\":\"upload\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M452 432c0 11-9 20-20 20s-20-9-20-20 9-20 20-20 20 9 20 20zm-84-20c-11 0-20 9-20 20s9 20 20 20 20-9 20-20-9-20-20-20zm144-48v104c0 24.3-19.7 44-44 44H44c-24.3 0-44-19.7-44-44V364c0-24.3 19.7-44 44-44h124v-99.3h-52.7c-35.6 0-53.4-43.1-28.3-68.3L227.7 11.7c15.6-15.6 40.9-15.6 56.6 0L425 152.4c25.2 25.2 7.3 68.3-28.3 68.3H344V320h124c24.3 0 44 19.7 44 44zM200 188.7V376c0 4.4 3.6 8 8 8h96c4.4 0 8-3.6 8-8V188.7h84.7c7.1 0 10.7-8.6 5.7-13.7L261.7 34.3c-3.1-3.1-8.2-3.1-11.3 0L109.7 175c-5 5-1.5 13.7 5.7 13.7H200zM480 364c0-6.6-5.4-12-12-12H344v24c0 22.1-17.9 40-40 40h-96c-22.1 0-40-17.9-40-40v-24H44c-6.6 0-12 5.4-12 12v104c0 6.6 5.4 12 12 12h424c6.6 0 12-5.4 12-12V364z\"}})])\n )\n }\n }\n ","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-browser fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"browser\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M32 36v416c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V36c0-26.5-21.5-48-48-48H80C53.5-12 32 9.5 32 36zm60 416c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h24c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H92zM426 36c3.3 0 6 2.7 6 6v404c0 3.3-2.7 6-6 6H168V36h258zm-310 0c6.6 0 12 5.4 12 12v280c0 6.6-5.4 12-12 12H92c-6.6 0-12-5.4-12-12V48c0-6.6 5.4-12 12-12h24z\"}})])\n )\n }\n }\n ","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-sync fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"sync\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M440.65 12.57l4 82.77A247.16 247.16 0 00255.83 8C134.73 8 33.91 94.92 12.29 209.82A12 12 0 0024.09 224h49.05a12 12 0 0011.67-9.26 175.91 175.91 0 01317-56.94l-101.46-4.86a12 12 0 00-12.57 12v47.41a12 12 0 0012 12H500a12 12 0 0012-12V12a12 12 0 00-12-12h-47.37a12 12 0 00-11.98 12.57zM255.83 432a175.61 175.61 0 01-146-77.8l101.8 4.87a12 12 0 0012.57-12v-47.4a12 12 0 00-12-12H12a12 12 0 00-12 12V500a12 12 0 0012 12h47.35a12 12 0 0012-12.6l-4.15-82.57A247.17 247.17 0 00255.83 504c121.11 0 221.93-86.92 243.55-201.82a12 12 0 00-11.8-14.18h-49.05a12 12 0 00-11.67 9.26A175.86 175.86 0 01255.83 432z\"}})])\n )\n }\n }\n ","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [\"svg-inline--fa fa-palette fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"palette\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M128 224c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.4-32-32-32zM418.6 58.1C359.2 9.3 281.3-10 204.6 5 104.9 24.4 24.7 104.2 5.1 203.7c-16.7 84.2 8.1 168.3 67.8 230.6 47.3 49.4 109.7 77.8 167.9 77.8 8.8 0 17.5-.6 26.1-2 24.2-3.7 44.6-18.7 56.1-41.1 12.3-24 12.3-52.7.2-76.6-6.1-12-5.5-26.2 1.8-38 7-11.8 18.7-18.4 32-18.4h72.2c46.4 0 82.8-35.7 82.8-81.3-.2-76.4-34.3-148.1-93.4-196.6zM429.2 288H357c-29.9 0-57.2 15.4-73 41.3-16 26.1-17.3 57.8-3.6 84.9 5.1 10.1 5.1 22.7-.2 32.9-2.6 5-8.7 13.7-20.6 15.6-49.3 7.7-108.9-16.6-152-61.6-48.8-50.9-69-119.4-55.4-188 15.9-80.6 80.8-145.3 161.6-161 62.6-12.3 126.1 3.5 174.3 43.1 48.1 39.5 75.7 97.6 75.9 159.6 0 18.6-15.3 33.2-34.8 33.2zM160 128c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.4-32-32-32zm96-32.1c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32c0-17.6-14.3-32-32-32zm96 32.1c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"}})])\n )\n }\n }\n ","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WebContent.vue?vue&type=style&index=0&id=a2564c04&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatusIndicator.vue?vue&type=style&index=1&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThemeSelector.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CloudBackupRestore.vue?vue&type=style&index=0&id=079113a8&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"dashy\"}},[(_vm.shouldShowSplash())?_c('LoadingScreen',{attrs:{\"isLoading\":_vm.isLoading}}):_vm._e(),_c('Header',{attrs:{\"pageInfo\":_vm.pageInfo}}),_c('router-view'),(_vm.visibleComponents.footer)?_c('Footer',{attrs:{\"text\":_vm.getFooterText()}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('header',[(_vm.titleVisible)?_c('PageTitle',{attrs:{\"title\":_vm.pageInfo.title,\"description\":_vm.pageInfo.description,\"logo\":_vm.pageInfo.logo}}):_vm._e(),(_vm.navVisible)?_c('Nav',{staticClass:\"nav\",attrs:{\"links\":_vm.pageInfo.navLinks}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('router-link',{staticClass:\"page-titles\",attrs:{\"to\":\"/\"}},[(_vm.logo)?_c('img',{staticClass:\"site-logo\",attrs:{\"src\":_vm.logo}}):_vm._e(),_c('div',{staticClass:\"text\"},[_c('h1',[_vm._v(_vm._s(_vm.title))]),_c('span',{staticClass:\"subtitle\"},[_vm._v(_vm._s(_vm.description))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PageTitle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PageTitle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PageTitle.vue?vue&type=template&id=28f9cb72&scoped=true&\"\nimport script from \"./PageTitle.vue?vue&type=script&lang=js&\"\nexport * from \"./PageTitle.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PageTitle.vue?vue&type=style&index=0&id=28f9cb72&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"28f9cb72\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('nav',{attrs:{\"id\":\"nav\"}},_vm._l((_vm.links),function(link,index){return _c('router-link',{key:index,staticClass:\"nav-item\",attrs:{\"to\":link.path,\"href\":link.path,\"target\":_vm.isUrl(link.path) ? '_blank' : '',\"rel\":\"noopener noreferrer\"}},[_vm._v(_vm._s(link.title))])}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Nav.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Nav.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Nav.vue?vue&type=template&id=68c1bd5c&scoped=true&\"\nimport script from \"./Nav.vue?vue&type=script&lang=js&\"\nexport * from \"./Nav.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Nav.vue?vue&type=style&index=0&id=68c1bd5c&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"68c1bd5c\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Header.vue?vue&type=template&id=73a6fa67&scoped=true&\"\nimport script from \"./Header.vue?vue&type=script&lang=js&\"\nexport * from \"./Header.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Header.vue?vue&type=style&index=0&id=73a6fa67&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"73a6fa67\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.text && _vm.text !== '')?_c('footer',{domProps:{\"innerHTML\":_vm._s(_vm.text)}}):_c('footer',[_vm._v(\" Developed by \"),_c('a',{attrs:{\"href\":_vm.authorUrl}},[_vm._v(_vm._s(_vm.authorName))]),_vm._v(\". Licensed under \"),_c('a',{attrs:{\"href\":_vm.licenseUrl}},[_vm._v(_vm._s(_vm.license))]),_vm._v(\" \"+_vm._s(_vm.showCopyright? '©': '')+\" \"+_vm._s(_vm.date)+\". Get the \"),_c('a',{attrs:{\"href\":_vm.repoUrl}},[_vm._v(\"Source Code\")]),_vm._v(\". \")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Footer.vue?vue&type=template&id=64591bd5&scoped=true&\"\nimport script from \"./Footer.vue?vue&type=script&lang=js&\"\nexport * from \"./Footer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Footer.vue?vue&type=style&index=0&id=64591bd5&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"64591bd5\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{\"name\":\"slide-fade\"}},[(_vm.isLoading)?_c('div',{class:_vm.c,attrs:{\"id\":\"loading\"},on:{\"click\":function($event){_vm.c = 'hide'}}},[_c('h2',[_vm._v(\"Dashy\")]),_c('div',{staticClass:\"inner-container\"},[_c('p',[_vm._v(\"Loading\")]),_c('span',{staticClass:\"dots-cont\"},[_c('span',{staticClass:\"dot dot-1\"}),_c('span',{staticClass:\"dot dot-2\"}),_c('span',{staticClass:\"dot dot-3\"}),_c('span',{staticClass:\"dot dot-4\"})])])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingScreen.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingScreen.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LoadingScreen.vue?vue&type=template&id=a7bc1de6&scoped=true&\"\nimport script from \"./LoadingScreen.vue?vue&type=script&lang=js&\"\nexport * from \"./LoadingScreen.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LoadingScreen.vue?vue&type=style&index=0&id=a7bc1de6&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a7bc1de6\",\n null\n \n)\n\nexport default component.exports","/**\n * Reads the users config from `conf.yml`, and combines it with any local preferences\n * Also ensures that any missing attributes are populated with defaults, and the\n * object is structurally sound, to avoid any error if the user is missing something\n * The main config object is made up of three parts: appConfig, pageInfo and sections\n * For anything other than these three sections, please see @utils/ConfigHelpers.js\n */\nimport {\n localStorageKeys,\n appConfig as defaultAppConfig,\n pageInfo as defaultPageInfo,\n iconSize as defaultIconSize,\n layout as defaultLayout,\n language as defaultLanguage,\n} from '@/utils/defaults';\n\nimport conf from '../../public/conf.yml';\n\nexport default class ConfigAccumulator {\n constructor() {\n this.conf = conf;\n }\n\n /* App Config */\n appConfig() {\n let appConfigFile = {};\n if (this.conf) {\n appConfigFile = this.conf.appConfig || {};\n }\n let usersAppConfig = defaultAppConfig;\n if (localStorage[localStorageKeys.APP_CONFIG]) {\n usersAppConfig = JSON.parse(localStorage[localStorageKeys.APP_CONFIG]);\n } else if (appConfigFile !== {}) {\n usersAppConfig = appConfigFile;\n }\n usersAppConfig.layout = localStorage[localStorageKeys.LAYOUT_ORIENTATION]\n || appConfigFile.layout || defaultLayout;\n usersAppConfig.iconSize = localStorage[localStorageKeys.ICON_SIZE]\n || appConfigFile.iconSize || defaultIconSize;\n usersAppConfig.language = localStorage[localStorageKeys.LANGUAGE]\n || appConfigFile.language || defaultLanguage;\n return usersAppConfig;\n }\n\n /* Page Info */\n pageInfo() {\n const defaults = defaultPageInfo;\n let localPageInfo;\n try {\n localPageInfo = JSON.parse(localStorage[localStorageKeys.PAGE_INFO]);\n } catch (e) {\n localPageInfo = {};\n }\n let filePageInfo = {};\n if (this.conf) {\n filePageInfo = this.conf.pageInfo || {};\n }\n const pi = filePageInfo || defaults; // The page info object to return\n pi.title = localPageInfo.title || filePageInfo.title || defaults.title;\n pi.logo = localPageInfo.logo || filePageInfo.logo || defaults.logo;\n pi.description = localPageInfo.description || filePageInfo.description || defaults.description;\n pi.navLinks = localPageInfo.navLinks || filePageInfo.navLinks || defaults.navLinks;\n pi.footerText = localPageInfo.footerText || filePageInfo.footerText || defaults.footerText;\n return pi;\n }\n\n /* Sections */\n sections() {\n // If the user has stored sections in local storage, return those\n const localSections = localStorage[localStorageKeys.CONF_SECTIONS];\n if (localSections) {\n try {\n const json = JSON.parse(localSections);\n if (json.length >= 1) return json;\n } catch (e) {\n // The data in local storage has been malformed, will return conf.sections instead\n }\n }\n // If the function hasn't yet returned, then return the config file sections\n let sectionsFile = [];\n if (this.conf) sectionsFile = this.conf.sections || [];\n return sectionsFile;\n }\n\n /* Complete config */\n config() {\n return {\n appConfig: this.appConfig(),\n pageInfo: this.pageInfo(),\n sections: this.sections(),\n };\n }\n}\n","// Locales - Import translation files here!\nimport en from '@/assets/locales/en.json';\nimport de from '@/assets/locales/de.json';\nimport nl from '@/assets/locales/nl.json';\n\n// Language data - Add your country name, locale code and imported file here\nexport const languages = [\n {\n name: 'English',\n code: 'en',\n locale: en,\n flag: '🇬🇧',\n },\n {\n name: 'German',\n code: 'de',\n locale: de,\n flag: '🇩🇪',\n },\n {\n name: 'Dutch',\n code: 'nl',\n locale: nl,\n flag: '🇳🇱',\n },\n // Including:\n // name - Human readable name for your language (e.g German)\n // code - ISO language code (e.g. de)\n // locale - The file that you imported above\n // flag - A nice emoji flag (optional, e.g. 🇩🇪)\n];\n\nconst i18nMessages = {};\nlanguages.forEach((lang) => {\n i18nMessages[lang.code] = lang.locale;\n});\nexport const messages = i18nMessages;\n","import ConfigAccumulator from '@/utils/ConfigAccumalator';\nimport { languages } from '@/utils/languages';\nimport {\n visibleComponents,\n localStorageKeys,\n theme as defaultTheme,\n language as defaultLanguage,\n} from '@/utils/defaults';\n\n/**\n * Initiates the Accumulator class and generates a complete config object\n * Self-executing function, returns the full user config as a JSON object\n */\nexport const config = (() => {\n const Accumulator = new ConfigAccumulator();\n return Accumulator.config();\n})();\n\n/**\n * Generates an object containing booleans indicating which\n * components should be hidden. This enables the user to hide\n * parts of the page and disable functionality that they don't need/ want\n * All options fallback on the values defined in the defaults\n * @param {object} appConfig The full app config\n * @returns {object} result\n */\nexport const componentVisibility = (appConfig) => {\n // Get users choice from app config\n const usersChoice = appConfig.hideComponents || {};\n // Checks if value is defined, and is a boolean\n const isThere = (userValue) => typeof userValue === 'boolean';\n // For each option, return users choice (if specified), else use the default\n return {\n pageTitle: isThere(usersChoice.hideHeading)\n ? !usersChoice.hideHeading : visibleComponents.pageTitle,\n navigation: isThere(usersChoice.hideNav)\n ? !usersChoice.hideNav : visibleComponents.navigation,\n searchBar: isThere(usersChoice.hideSearch)\n ? !usersChoice.hideSearch : visibleComponents.searchBar,\n settings: isThere(usersChoice.hideSettings)\n ? !usersChoice.hideSettings : visibleComponents.settings,\n footer: isThere(usersChoice.hideFooter)\n ? !usersChoice.hideFooter : visibleComponents.footer,\n splashScreen: isThere(usersChoice.hideSplashScreen)\n ? !usersChoice.hideSplashScreen : visibleComponents.splashScreen,\n };\n};\n\n/**\n * Gets the users saved theme, first looks for local storage theme,\n * then looks at user's appConfig, and finally checks the defaults\n * @returns {string} Name of theme to apply\n */\nexport const getTheme = () => {\n const localTheme = localStorage[localStorageKeys.THEME];\n const appConfigTheme = config.appConfig.theme;\n return localTheme || appConfigTheme || defaultTheme;\n};\n\n/**\n * Gets any custom styles the user has applied, wither from local storage, or from the config\n * @returns {object} An array of objects, one for each theme, containing kvps for variables\n */\nexport const getCustomColors = () => {\n const localColors = JSON.parse(localStorage[localStorageKeys.CUSTOM_COLORS] || '{}');\n const configColors = config.appConfig.customColors || {};\n return Object.assign(configColors, localColors);\n};\n\n/**\n * Returns a list of items which the user has assigned a hotkey to\n * So that when the hotkey is pressed, the app/ service can be launched\n */\nexport const getCustomKeyShortcuts = () => {\n const results = [];\n const sections = config.sections || [];\n sections.forEach((section) => {\n const itemsWithHotKeys = section.items.filter(item => item.hotkey);\n results.push(itemsWithHotKeys.map(item => ({ hotkey: item.hotkey, url: item.url })));\n });\n return results.flat();\n};\n\n/**\n * Gets the users chosen language. Defaults to English.\n * @returns {object} Language, including code, name and flag\n */\nexport const getUsersLanguage = () => {\n const langCode = localStorage[localStorageKeys.LANGUAGE]\n || config.appConfig.language\n || defaultLanguage;\n const langObj = languages.find(lang => lang.code === langCode);\n return langObj;\n};\n","/* eslint no-console: [\"error\", { allow: [\"log\"] }] */\n\nexport const welcomeMsg = () => {\n const v = process.env.VUE_APP_VERSION ? `V${process.env.VUE_APP_VERSION}` : '';\n console.log(`%cDashy ${v} 🚀`, 'color:#00af87; background:#0b1021; font-size:36px; padding: 0.5rem 0.5rem 0; margin: 1rem auto; font-family: Rockwell; border: 2px solid #00af87; border-radius: 4px;font-weight: bold; text-shadow: 1px 1px 1px #00af87bf;');\n};\n\nexport const warningMsg = () => {\n console.log('%c⚠️ Error ⚠️', \"background:#21bbca; color:#0b1021; font-size:20px; padding:0.25rem 0.5rem; margin: 1rem auto 0.25rem; font-family: 'Trebuchet MS', Helvetica; border: 2px solid yellow; border-radius: 4px; font-weight: bold;\");\n};\n\nexport const raiseBug = () => {\n console.log('%c🐛If you have found a bug, raise an issue on GitHub, at:\\nhttps://git.io/JnqPR', \"color:#dddd10; font-size: 14px; font-family: 'Trebuchet MS', Helvetica;\");\n};\n","\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--11-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--11-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=2bf20c39&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"home\",style:(_vm.getBackgroundImage())},[_c('SettingsContainer',{ref:\"filterComp\",staticClass:\"settings-outer\",attrs:{\"displayLayout\":_vm.layout,\"iconSize\":_vm.itemSizeBound,\"externalThemes\":_vm.getExternalCSSLinks(),\"sections\":_vm.getSections(_vm.sections),\"appConfig\":_vm.appConfig,\"pageInfo\":_vm.pageInfo,\"modalOpen\":_vm.modalOpen},on:{\"user-is-searchin\":_vm.searching,\"change-display-layout\":_vm.setLayoutOrientation,\"change-icon-size\":_vm.setItemSize,\"change-modal-visibility\":_vm.updateModalVisibility}}),(_vm.checkTheresData(_vm.sections))?_c('div',{class:(\"item-group-container orientation-\" + _vm.layout + \" item-size-\" + _vm.itemSizeBound)},_vm._l((_vm.getSections(_vm.sections)),function(section,index){return _c('ItemGroup',{key:index,class:(_vm.filterTiles(section.items).length === 0 && _vm.searchValue) ? 'no-results' : '',attrs:{\"title\":section.name,\"icon\":section.icon || undefined,\"displayData\":_vm.getDisplayData(section),\"groupId\":(\"section-\" + index),\"items\":_vm.filterTiles(section.items),\"itemSize\":_vm.itemSizeBound},on:{\"itemClicked\":function($event){return _vm.finishedSearching()},\"change-modal-visibility\":_vm.updateModalVisibility}})}),1):_vm._e(),(_vm.checkIfResults())?_c('div',{staticClass:\"no-data\"},[_vm._v(\" \"+_vm._s(_vm.searchValue ? _vm.$t('home.no-results') : _vm.$t('home.no-data'))+\" \")]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[(_vm.searchVisible)?_c('SearchBar',{ref:\"SearchBar\",attrs:{\"active\":!_vm.modalOpen},on:{\"user-is-searchin\":_vm.userIsTypingSomething}}):_vm._e(),_c('div',{staticClass:\"options-outer\"},[_c('div',{class:(\"options-container \" + (!_vm.settingsVisible ? 'hide' : ''))},[_c('ThemeSelector',{attrs:{\"externalThemes\":_vm.externalThemes,\"confTheme\":_vm.getInitialTheme(),\"userThemes\":_vm.getUserThemes()},on:{\"modalChanged\":_vm.modalChanged}}),_c('LayoutSelector',{attrs:{\"displayLayout\":_vm.displayLayout},on:{\"layoutUpdated\":_vm.updateDisplayLayout}}),_c('ItemSizeSelector',{attrs:{\"iconSize\":_vm.iconSize},on:{\"iconSizeUpdated\":_vm.updateIconSize}}),_c('ConfigLauncher',{attrs:{\"sections\":_vm.sections,\"pageInfo\":_vm.pageInfo,\"appConfig\":_vm.appConfig},on:{\"modalChanged\":_vm.modalChanged}}),(_vm.isUserLoggedIn())?_c('AppButtons'):_vm._e()],1),_c('div',{class:(\"show-hide-container \" + (_vm.settingsVisible? 'hide-btn' : 'show-btn'))},[_c('button',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(((_vm.settingsVisible? 'Hide' : 'Open') + \" Settings Menu\")),expression:\"`${settingsVisible? 'Hide' : 'Open'} Settings Menu`\"}],attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.toggleSettingsVisibility()}}},[(_vm.settingsVisible)?_c('IconClose'):_c('IconOpen')],1)])]),_c('KeyboardShortcutInfo'),_c('AppInfoModal')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form',[_c('label',{attrs:{\"for\":\"filter-tiles\"}},[_vm._v(_vm._s(_vm.$t('search.search-label')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.input),expression:\"input\"}],ref:\"filter\",attrs:{\"id\":\"filter-tiles\",\"placeholder\":_vm.$t('search.search-placeholder')},domProps:{\"value\":(_vm.input)},on:{\"input\":[function($event){if($event.target.composing){ return; }_vm.input=$event.target.value},_vm.userIsTypingSomething],\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }return _vm.clearFilterInput.apply(null, arguments)}}}),(_vm.input.length > 0)?_c('i',{staticClass:\"clear-search\",attrs:{\"title\":_vm.$t('search.clear-search-tooltip')},on:{\"click\":_vm.clearFilterInput}},[_vm._v(\"x\")]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * Class encapsulating the functionality that enables the user to\n * navigate through tiles/ search result grid using the arrow keys\n * This code is very hacky, it's best not to look at it for too long\n */\nexport default class ArrowKeyNavigation {\n constructor(index) {\n this.index = index;\n }\n\n resetIndex() {\n this.index = 0;\n }\n\n /* Figures out which element is next, based on the key pressed *\n * current index and total number of items. Then calls focus function */\n arrowNavigation(key) {\n if (this.index === undefined) this.index = 0; // Start at beginning\n else if (key === 37) { // Left --> Previous\n this.index -= 1;\n } else if (key === 38) { // Up --> Previous\n this.index = ArrowKeyNavigation.goToPrevious(this.index);\n } else if (key === 39) { // Right --> Next\n this.index += 1;\n } else if (key === 40) { // Down --> Next\n this.index = ArrowKeyNavigation.goToNext(this.index);\n }\n /* Ensure the index is within bounds, then focus element */\n this.index = ArrowKeyNavigation.getSafeElementIndex(this.index);\n ArrowKeyNavigation.selectItemByIndex(this.index).focus();\n }\n\n /* Returns the number of visible items / results */\n static getNumResults() {\n return document.getElementsByClassName('item').length;\n }\n\n /* Returns the index for an element, ensuring that it's within bounds */\n static getSafeElementIndex(index) {\n const numResults = ArrowKeyNavigation.getNumResults();\n if (index < 0) return numResults - 1;\n else if (index >= numResults) return 0;\n return index;\n }\n\n /* Selects a given element, by it's ID. If out of bounds, returns element 0 */\n static selectItemByIndex(index) {\n return (index >= 0 && index <= ArrowKeyNavigation.getNumResults())\n ? document.getElementsByClassName('item')[index] : [document.getElementsByClassName('item')];\n }\n\n /* Returns the index of the first cell in the previous/ above row */\n static findPreviousRow(startingIndex) {\n const isSameRow = (indx, pos) => ArrowKeyNavigation.selectItemByIndex(indx).offsetTop === pos;\n const checkPreviousIndex = (currentIndex, yPos) => {\n if (currentIndex >= ArrowKeyNavigation.getNumResults()) return checkPreviousIndex(0, yPos);\n else if (isSameRow(currentIndex, yPos)) return checkPreviousIndex(currentIndex - 1, yPos);\n return currentIndex;\n };\n const position = ArrowKeyNavigation.selectItemByIndex(startingIndex).offsetTop;\n return checkPreviousIndex(startingIndex, position);\n }\n\n /* Moves to the cell directly above the current */\n static goToPrevious(startingIndex) {\n const isBelow = (start, end) => (ArrowKeyNavigation.selectItemByIndex(start).offsetTop\n < ArrowKeyNavigation.selectItemByIndex(end).offsetTop);\n const nextIndex = ArrowKeyNavigation.findPreviousRow(startingIndex);\n const count = nextIndex - startingIndex;\n const rowLen = nextIndex - ArrowKeyNavigation.findNextRow(startingIndex) + 1;\n const adjustment = isBelow(startingIndex, nextIndex) ? 0 : rowLen - count;\n return nextIndex + adjustment;\n }\n\n /* Returns the index of the first cell in the next/ below row */\n static findNextRow(startingIndex) {\n const isSameRow = (indx, pos) => ArrowKeyNavigation.selectItemByIndex(indx).offsetTop === pos;\n const checkNextIndex = (currentIndex, yPos) => {\n if (currentIndex >= ArrowKeyNavigation.getNumResults()) return checkNextIndex(0, yPos);\n else if (isSameRow(currentIndex, yPos)) return checkNextIndex(currentIndex + 1, yPos);\n return currentIndex;\n };\n const position = ArrowKeyNavigation.selectItemByIndex(startingIndex).offsetTop;\n return checkNextIndex(startingIndex, position);\n }\n\n /* Moves to the cell directly below the current */\n static goToNext(startingIndex) {\n const isAbove = (start, end) => (ArrowKeyNavigation.selectItemByIndex(start).offsetTop\n > ArrowKeyNavigation.selectItemByIndex(end).offsetTop);\n const nextIndex = ArrowKeyNavigation.findNextRow(startingIndex);\n const count = nextIndex - startingIndex;\n const rowLen = nextIndex - ArrowKeyNavigation.findPreviousRow(startingIndex) - 1;\n const adjustment = isAbove(startingIndex, nextIndex) ? 0 : rowLen - count;\n return nextIndex + adjustment;\n }\n}\n","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SearchBar.vue?vue&type=template&id=2350dd8e&scoped=true&\"\nimport script from \"./SearchBar.vue?vue&type=script&lang=js&\"\nexport * from \"./SearchBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SearchBar.vue?vue&type=style&index=0&id=2350dd8e&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2350dd8e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"config-options\"},[_c('span',[_vm._v(_vm._s(_vm.$t('settings.config-launcher-label')))]),_c('div',{staticClass:\"config-buttons\"},[_c('IconSpanner',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip('Update configuration')),expression:\"tooltip('Update configuration')\"}],attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.showEditor()}}})],1),_c('modal',{attrs:{\"name\":_vm.modalNames.CONF_EDITOR,\"resizable\":true,\"width\":\"60%\",\"height\":\"85%\",\"classes\":\"dashy-modal\"},on:{\"closed\":function($event){return _vm.$emit('modalChanged', false)}}},[_c('ConfigContainer',{attrs:{\"config\":_vm.combineConfig()}})],1),_c('modal',{attrs:{\"name\":_vm.modalNames.LANG_SWITCHER,\"classes\":\"dashy-modal\",\"resizable\":true,\"width\":\"30%\",\"height\":\"25%\"}},[_c('LanguageSwitcher')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Tabs',{ref:\"tabView\",attrs:{\"navAuto\":true,\"name\":\"Add Item\"}},[_c('TabItem',{staticClass:\"main-tab\",attrs:{\"name\":_vm.$t('config.main-tab')}},[_c('div',{staticClass:\"main-options-container\"},[_c('div',{staticClass:\"config-buttons\"},[_c('h2',[_vm._v(\"Configuration Options\")]),_c('a',{staticClass:\"hyperlink-wrapper\",on:{\"click\":function($event){return _vm.downloadConfigFile('conf.yml', _vm.yaml)}}},[_c('button',{staticClass:\"config-button center\"},[_c('DownloadIcon',{staticClass:\"button-icon\"}),_vm._v(\" \"+_vm._s(_vm.$t('config.download-config-button'))+\" \")],1)]),_c('button',{staticClass:\"config-button center\",on:{\"click\":function () { return _vm.navigateToTab(2); }}},[_c('EditIcon',{staticClass:\"button-icon\"}),_vm._v(\" \"+_vm._s(_vm.$t('config.edit-config-button'))+\" \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function () { return _vm.navigateToTab(4); }}},[_c('CustomCssIcon',{staticClass:\"button-icon\"}),_vm._v(\" \"+_vm._s(_vm.$t('config.edit-css-button'))+\" \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function () { return _vm.navigateToTab(3); }}},[_c('CloudIcon',{staticClass:\"button-icon\"}),_vm._v(\" \"+_vm._s(_vm.backupId ? _vm.$t('config.edit-cloud-sync-button') : _vm.$t('config.cloud-sync-button'))+\" \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.openLanguageSwitchModal()}}},[_c('LanguageIcon',{staticClass:\"button-icon\"}),_vm._v(\" \"+_vm._s(_vm.$t('config.change-language-button'))+\" \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.openRebuildAppModal()}}},[_c('RebuildIcon',{staticClass:\"button-icon\"}),_vm._v(\" \"+_vm._s(_vm.$t('config.rebuild-app-button'))+\" \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.resetLocalSettings()}}},[_c('DeleteIcon',{staticClass:\"button-icon\"}),_vm._v(\" \"+_vm._s(_vm.$t('config.reset-settings-button'))+\" \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.openAboutModal()}}},[_c('IconAbout',{staticClass:\"button-icon\"}),_vm._v(\" \"+_vm._s(_vm.$t('config.app-info-button'))+\" \")],1),_c('p',{staticClass:\"small-screen-note\",staticStyle:{\"display\":\"none\"}},[_vm._v(\" You are using a very small screen, and some screens in this menu may not be optimal \")]),_c('p',{staticClass:\"language\"},[_vm._v(_vm._s(_vm.getLanguage()))]),_c('AppVersion')],1),_c('div',{staticClass:\"config-note\"},[_c('span',[_vm._v(_vm._s(_vm.$t('config.backup-note')))])])]),_c('RebuildApp')],1),_c('TabItem',{staticClass:\"code-container\",attrs:{\"name\":_vm.$t('config.view-config-tab')}},[_c('pre',{attrs:{\"id\":\"conf-yaml\"}},[_vm._v(_vm._s(_vm.yaml))]),_c('div',{staticClass:\"yaml-action-buttons\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('config.actions-label')))]),_c('a',{staticClass:\"yaml-button download\",on:{\"click\":function($event){return _vm.downloadConfigFile('conf.yml', _vm.yaml)}}},[_vm._v(\" \"+_vm._s(_vm.$t('config.download-config-button'))+\" \")]),_c('a',{staticClass:\"yaml-button copy\",on:{\"click\":function($event){return _vm.copyConfigToClipboard()}}},[_vm._v(\" \"+_vm._s(_vm.$t('config.copy-config-label'))+\" \")]),_c('a',{staticClass:\"yaml-button reset\",on:{\"click\":function($event){return _vm.resetLocalSettings()}}},[_vm._v(\" \"+_vm._s(_vm.$t('config.reset-config-label'))+\" \")])])]),_c('TabItem',{attrs:{\"name\":_vm.$t('config.edit-config-tab')}},[_c('JsonEditor',{attrs:{\"config\":_vm.config}})],1),_c('TabItem',{attrs:{\"name\":_vm.$t('cloud-sync.title')}},[_c('CloudBackupRestore',{attrs:{\"config\":_vm.config}})],1),_c('TabItem',{attrs:{\"name\":_vm.$t('config.custom-css-tab')}},[_c('CustomCssEditor',{attrs:{\"config\":_vm.config}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { typeOf } from 'remedial';\n\nconst trimWhitespace = (input) => input.split('\\n').map(x => x.trimRight()).join('\\n');\n\nconst throwError = (msg) => {\n throw new Error(`Error in Json to YAML conversion: ${msg}`);\n};\n\n/* A function that converts valid JSON into valid YAML */\nconst stringify = (data) => {\n let indentLevel = '';\n const handlers = {\n undefined() {\n return 'null';\n },\n null() {\n return 'null';\n },\n number(x) {\n return x;\n },\n boolean(x) {\n return x ? 'true' : 'false';\n },\n string(x) {\n return JSON.stringify(x);\n },\n array(x) {\n let output = '';\n if (x.length === 0) {\n output += '[]';\n return output;\n }\n\n indentLevel = indentLevel.replace(/$/, ' ');\n x.forEach((y) => {\n const handler = handlers[typeOf(y)];\n\n if (!handler) throwError(typeOf(y));\n\n output += `\\n${indentLevel}- ${handler(y, true)}`;\n });\n indentLevel = indentLevel.replace(/ {2}/, '');\n\n return output;\n },\n object(x, inArray, rootNode) {\n let output = '';\n\n if (Object.keys(x).length === 0) {\n output += '{}';\n return output;\n }\n\n if (!rootNode) {\n indentLevel = indentLevel.replace(/$/, ' ');\n }\n\n Object.keys(x).forEach((k, i) => {\n const val = x[k];\n const handler = handlers[typeOf(val)];\n\n if (typeof val === 'undefined') {\n return;\n }\n\n if (!handler) throwError(typeOf(val));\n\n if (!(inArray && i === 0)) {\n output += `\\n${indentLevel}`;\n }\n\n output += `${k}: ${handler(val)}`;\n });\n indentLevel = indentLevel.replace(/ {2}/, '');\n\n return output;\n },\n function() {\n return '[object Function]';\n },\n };\n\n return trimWhitespace(`${handlers[typeOf(data)](data, true, true)}\\n`);\n};\n\nexport default stringify;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"json-editor-outer\"},[_c('v-jsoneditor',{attrs:{\"options\":_vm.options,\"height\":\"500px\"},model:{value:(_vm.jsonData),callback:function ($$v) {_vm.jsonData=$$v},expression:\"jsonData\"}}),_c('div',{staticClass:\"save-options\"},[_c('span',{staticClass:\"save-option-title\"},[_vm._v(_vm._s(_vm.$t('config-editor.save-location-label'))+\":\")]),_c('div',{staticClass:\"option\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.saveMode),expression:\"saveMode\"}],staticClass:\"radio-option\",attrs:{\"type\":\"radio\",\"id\":\"local\",\"value\":\"local\",\"disabled\":!_vm.allowWriteToDisk},domProps:{\"checked\":_vm._q(_vm.saveMode,\"local\")},on:{\"change\":function($event){_vm.saveMode=\"local\"}}}),_c('label',{staticClass:\"save-option-label\",attrs:{\"for\":\"local\"}},[_vm._v(\" \"+_vm._s(_vm.$t('config-editor.location-local-label'))+\" \")])]),_c('div',{staticClass:\"option\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.saveMode),expression:\"saveMode\"}],staticClass:\"radio-option\",attrs:{\"type\":\"radio\",\"id\":\"file\",\"value\":\"file\",\"disabled\":!_vm.allowWriteToDisk},domProps:{\"checked\":_vm._q(_vm.saveMode,\"file\")},on:{\"change\":function($event){_vm.saveMode=\"file\"}}}),_c('label',{staticClass:\"save-option-label\",attrs:{\"for\":\"file\"}},[_vm._v(\" \"+_vm._s(_vm.$t('config-editor.location-disk-label'))+\" \")])])]),_c('button',{class:(\"save-button \" + (!_vm.isValid ? 'err' : '')),on:{\"click\":function($event){return _vm.save()}}},[_vm._v(\" \"+_vm._s(_vm.$t('config-editor.save-button'))+\" \")]),_c('p',{staticClass:\"errors\"},[_c('ul',[_vm._l((_vm.errorMessages),function(error,index){return _c('li',{key:index,class:(\"type-\" + (error.type))},[_vm._v(\" \"+_vm._s(error.msg)+\" \")])}),(_vm.errorMessages.length < 1)?_c('li',{staticClass:\"type-valid\"},[_vm._v(\" \"+_vm._s(_vm.$t('config-editor.valid-label'))+\" \")]):_vm._e()],2)]),(_vm.saveSuccess !== undefined)?_c('p',{class:(\"response-output status-\" + (_vm.saveSuccess ? 'success' : 'fail'))},[_vm._v(\" \"+_vm._s(_vm.saveSuccess ? _vm.$t('config-editor.status-success-msg') : _vm.$t('config-editor.status-fail-msg'))+\" \")]):_vm._e(),_c('p',{staticClass:\"response-output\"},[_vm._v(_vm._s(_vm.responseText))]),(_vm.saveSuccess)?_c('p',{staticClass:\"response-output\"},[_vm._v(\" \"+_vm._s(_vm.$t('config-editor.success-note-l1'))+\" \"+_vm._s(_vm.$t('config-editor.success-note-l2'))+\" \"+_vm._s(_vm.$t('config-editor.success-note-l3'))+\" \")]):_vm._e(),_c('p',{staticClass:\"note\"},[_vm._v(_vm._s(_vm.$t('config.backup-note')))])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import sha256 from 'crypto-js/sha256';\nimport { cookieKeys, localStorageKeys } from './defaults';\n\n/**\n * Generates a 1-way hash, in order to be stored in local storage for authentication\n * @param {String} user The username of user\n * @returns {String} The hashed token\n */\nconst generateUserToken = (user) => {\n const strAndUpper = (input) => input.toString().toUpperCase();\n const sha = sha256(strAndUpper(user.user) + strAndUpper(user.hash));\n return strAndUpper(sha);\n};\n\n/**\n * Checks if the user is currently authenticated\n * @param {Array[Object]} users An array of user objects pulled from the config\n * @returns {Boolean} Will return true if the user is logged in, else false\n */\nexport const isLoggedIn = (users) => {\n const validTokens = users.map((user) => generateUserToken(user));\n let userAuthenticated = false;\n document.cookie.split(';').forEach((cookie) => {\n if (cookie && cookie.split('=').length > 1) {\n const cookieKey = cookie.split('=')[0].trim();\n const cookieValue = cookie.split('=')[1].trim();\n if (cookieKey === cookieKeys.AUTH_TOKEN) {\n if (validTokens.includes(cookieValue)) {\n userAuthenticated = true;\n }\n }\n }\n });\n return userAuthenticated;\n};\n\n/**\n * Checks credentials entered by the user against those in the config\n * Returns an object containing a boolean indicating success/ failure\n * along with a message outlining what's not right\n * @param {String} username The username entered by the user\n * @param {String} pass The password entered by the user\n * @param {String[]} users An array of valid user objects\n * @returns {Object} An object containing a boolean result and a message\n */\nexport const checkCredentials = (username, pass, users) => {\n let response;\n if (!username) {\n response = { correct: false, msg: 'Missing Username' };\n } else if (!pass) {\n response = { correct: false, msg: 'Missing Password' };\n } else {\n users.forEach((user) => {\n if (user.user.toLowerCase() === username.toLowerCase()) {\n if (user.hash.toLowerCase() === sha256(pass).toString().toLowerCase()) {\n response = { correct: true, msg: 'Logging in...' };\n } else {\n response = { correct: false, msg: 'Incorrect Password' };\n }\n }\n });\n }\n return response || { correct: false, msg: 'User not found' };\n};\n\n/**\n * Sets the cookie value in order to login the user locally\n * @param {String} username - The users username\n * @param {String} pass - Password, not yet hashed\n * @param {Number} timeout - A desired timeout for the session, in ms\n */\nexport const login = (username, pass, timeout) => {\n const now = new Date();\n const expiry = new Date(now.setTime(now.getTime() + timeout)).toGMTString();\n const userObject = { user: username, hash: sha256(pass).toString().toLowerCase() };\n document.cookie = `authenticationToken=${generateUserToken(userObject)};`\n + `${timeout > 0 ? `expires=${expiry}` : ''}`;\n localStorage.setItem(localStorageKeys.USERNAME, username);\n};\n\n/**\n * Removed the browsers cookie, causing user to be logged out\n */\nexport const logout = () => {\n document.cookie = 'authenticationToken=null';\n localStorage.removeItem(localStorageKeys.USERNAME);\n};\n\n/**\n * Checks if the current user has admin privileges.\n * If no users are setup, then function will always return true\n * But if auth is configured, then will verify user is correctly\n * logged in and then check weather they are of type admin, and\n * return false if any conditions fail\n * @param {String[]} - Array of users\n * @returns {Boolean} - True if admin privileges\n */\nexport const isUserAdmin = (users) => {\n if (!users || users.length === 0) return true; // Authentication not setup\n if (!isLoggedIn(users)) return false; // Auth setup, but not signed in as a valid user\n const currentUser = localStorage[localStorageKeys.USERNAME];\n let isAdmin = false;\n users.forEach((user) => {\n if (user.user === currentUser) {\n if (user.type === 'admin') isAdmin = true;\n }\n });\n return isAdmin;\n};\n","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./JsonEditor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./JsonEditor.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./JsonEditor.vue?vue&type=template&id=4e0e074b&\"\nimport script from \"./JsonEditor.vue?vue&type=script&lang=js&\"\nexport * from \"./JsonEditor.vue?vue&type=script&lang=js&\"\nimport style0 from \"./JsonEditor.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"css-editor-outer\"},[_c('prism-editor',{staticClass:\"my-editor\",attrs:{\"highlight\":_vm.highlighter,\"line-numbers\":\"\"},model:{value:(_vm.customCss),callback:function ($$v) {_vm.customCss=$$v},expression:\"customCss\"}}),_c('button',{staticClass:\"save-button\",on:{\"click\":function($event){return _vm.save()}}},[_vm._v(_vm._s(_vm.$t('config.css-save-btn')))]),_c('p',{staticClass:\"quick-note\"},[_c('b',[_vm._v(_vm._s(_vm.$t('config.css-note-label'))+\":\")]),_vm._v(\" \"+_vm._s(_vm.$t('config.css-note-l1'))+\" \"+_vm._s(_vm.$t('config.css-note-l2'))+\" \"+_vm._s(_vm.$t('config.css-note-l3'))+\" \")]),_c('CustomThemeMaker',{staticClass:\"color-config\",attrs:{\"themeToEdit\":_vm.currentTheme}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:(\"theme-configurator-wrapper \" + (_vm.showingAllVars ? 'showing-all' : ''))},[_c('h3',{staticClass:\"configurator-title\"},[_vm._v(_vm._s(_vm.$t('theme-maker.title')))]),_c('div',{staticClass:\"color-row-container\"},_vm._l((Object.keys(_vm.customColors)),function(colorName){return _c('div',{key:colorName,staticClass:\"color-row\"},[_c('label',{staticClass:\"color-name\",attrs:{\"for\":(\"color-input-\" + colorName)}},[_vm._v(\" \"+_vm._s(colorName.replaceAll('-', ' '))+\" \")]),(_vm.isColor(colorName, _vm.customColors[colorName]))?_c('v-swatches',{attrs:{\"show-fallback\":\"\",\"fallback-input-type\":\"color\",\"popover-x\":\"left\",\"swatches\":_vm.swatches},on:{\"input\":function($event){return _vm.setVariable(colorName, _vm.customColors[colorName])}},model:{value:(_vm.customColors[colorName]),callback:function ($$v) {_vm.$set(_vm.customColors, colorName, $$v)},expression:\"customColors[colorName]\"}},[_c('input',{staticClass:\"swatch-input form__input__element\",style:(_vm.makeSwatchStyles(colorName)),attrs:{\"slot\":\"trigger\",\"id\":(\"color-input-\" + colorName),\"readonly\":\"\"},domProps:{\"value\":_vm.customColors[colorName]},slot:\"trigger\"})]):_c('input',{staticClass:\"misc-input\",attrs:{\"id\":(\"color-input-\" + colorName)},domProps:{\"value\":_vm.customColors[colorName]},on:{\"input\":function($event){return _vm.setVariable(colorName, _vm.customColors[colorName])}}})],1)}),0),_c('p',{staticClass:\"action-text-btn\",on:{\"click\":_vm.exportToClipboard}},[_vm._v(\" \"+_vm._s(_vm.$t('theme-maker.export-button'))+\" \")]),_c('p',{staticClass:\"action-text-btn show-all-vars-btn\",on:{\"click\":_vm.resetAndSave}},[_vm._v(\" \"+_vm._s(_vm.$t('theme-maker.reset-button'))+\" '\"+_vm._s(_vm.themeToEdit)+\"' \")]),_c('p',{staticClass:\"action-text-btn\",on:{\"click\":_vm.findAllVariableNames}},[_vm._v(\" \"+_vm._s(_vm.$t('theme-maker.show-all-button'))+\" \")]),_c('div',{staticClass:\"action-buttons\"},[_c('Button',{attrs:{\"click\":_vm.saveChanges}},[_c('SaveIcon'),_vm._v(\" \"+_vm._s(_vm.$t('theme-maker.save-button'))+\" \")],1),_c('Button',{attrs:{\"click\":_vm.resetUnsavedColors}},[_c('CancelIcon'),_vm._v(\" \"+_vm._s(_vm.$t('theme-maker.cancel-button'))+\" \")],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{class:_vm.disallow ? 'disallowed': '',attrs:{\"disabled\":_vm.disabled},on:{\"click\":function($event){return _vm.click()}}},[_vm._t(\"default\"),_vm._t(\"text\"),_vm._t(\"icon\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Button.vue?vue&type=template&id=ec408f00&scoped=true&\"\nimport script from \"./Button.vue?vue&type=script&lang=js&\"\nexport * from \"./Button.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Button.vue?vue&type=style&index=0&id=ec408f00&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ec408f00\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomThemeMaker.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomThemeMaker.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CustomThemeMaker.vue?vue&type=template&id=57ccdb6d&\"\nimport script from \"./CustomThemeMaker.vue?vue&type=script&lang=js&\"\nexport * from \"./CustomThemeMaker.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CustomThemeMaker.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomCss.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomCss.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CustomCss.vue?vue&type=template&id=597bb48c&\"\nimport script from \"./CustomCss.vue?vue&type=script&lang=js&\"\nexport * from \"./CustomCss.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CustomCss.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"cloud-backup-restore-wrapper\"},[_c('div',{staticClass:\"section intro\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('cloud-sync.title')))]),_c('p',{staticClass:\"intro\"},[_vm._v(\" \"+_vm._s(_vm.$t('cloud-sync.intro-l1'))+\" \"),_c('br'),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('cloud-sync.intro-l2'))+\" \"),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('cloud-sync.intro-l3'))+\" \"),_c('a',{attrs:{\"href\":\"https://github.com/Lissy93/dashy/blob/master/docs/backup-restore.md\"}},[_vm._v(\"docs\")])])]),_c('div',{staticClass:\"section backup-section\"},[(_vm.backupId)?_c('h3',[_vm._v(_vm._s(_vm.$t('cloud-sync.backup-title-setup')))]):_c('h3',[_vm._v(_vm._s(_vm.$t('cloud-sync.backup-title-setup')))]),_c('Input',{attrs:{\"name\":\"backup-password\",\"label\":_vm.backupId\n ? _vm.$t('cloud-sync.password-label-update') : _vm.$t('cloud-sync.password-label-setup'),\"layout\":\"vertical\",\"type\":\"password\"},model:{value:(_vm.backupPassword),callback:function ($$v) {_vm.backupPassword=$$v},expression:\"backupPassword\"}}),_c('Button',{attrs:{\"click\":_vm.checkPass},scopedSlots:_vm._u([{key:\"text\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.backupId ? _vm.$t('cloud-sync.backup-button-update') : _vm.$t('cloud-sync.backup-button-setup'))+\" \")]},proxy:true},{key:\"icon\",fn:function(){return [_c('IconBackup')]},proxy:true}])}),(_vm.backupId)?_c('div',{staticClass:\"results-view\"},[_c('span',{staticClass:\"backup-id-label\"},[_vm._v(_vm._s(_vm.$t('cloud-sync.backup-id-label'))+\": \")]),_c('pre',{staticClass:\"backup-id-value\"},[_vm._v(_vm._s(_vm.backupId))]),_c('span',{staticClass:\"backup-id-note\"},[_vm._v(_vm._s(_vm.$t('cloud-sync.backup-id-note')))])]):_vm._e()],1),_c('div',{staticClass:\"section restore-section\"},[_c('h3',[_vm._v(_vm._s(_vm.$t('cloud-sync.restore-title')))]),_c('Input',{attrs:{\"name\":\"restore-code\",\"label\":_vm.$t('cloud-sync.restore-id-label')},model:{value:(_vm.restoreCode),callback:function ($$v) {_vm.restoreCode=$$v},expression:\"restoreCode\"}}),_c('Input',{attrs:{\"name\":\"restore-password\",\"label\":_vm.$t('cloud-sync.restore-password-label'),\"type\":\"password\"},model:{value:(_vm.restorePassword),callback:function ($$v) {_vm.restorePassword=$$v},expression:\"restorePassword\"}}),_c('Button',{attrs:{\"click\":_vm.restoreBackup},scopedSlots:_vm._u([{key:\"text\",fn:function(){return [_vm._v(_vm._s(_vm.$t('cloud-sync.restore-button')))]},proxy:true},{key:\"icon\",fn:function(){return [_c('IconRestore')]},proxy:true}])})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:(\"input-container \" + _vm.layout)},[(_vm.label)?_c('label',{attrs:{\"for\":\"name\"}},[_vm._v(_vm._s(_vm.label))]):_vm._e(),_c('input',{attrs:{\"type\":_vm.type,\"name\":_vm.name,\"id\":_vm.name,\"placeholder\":_vm.placeholder},domProps:{\"value\":_vm.value},on:{\"input\":function($event){return _vm.updateValue($event.target.value)}}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Input.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Input.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Input.vue?vue&type=template&id=5df13ed2&scoped=true&\"\nimport script from \"./Input.vue?vue&type=script&lang=js&\"\nexport * from \"./Input.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Input.vue?vue&type=style&index=0&id=5df13ed2&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5df13ed2\",\n null\n \n)\n\nexport default component.exports","import sha256 from 'crypto-js/sha256';\nimport aes from 'crypto-js/aes';\nimport Utf8 from 'crypto-js/enc-utf8';\nimport axios from 'axios';\nimport { backupEndpoint } from '@/utils/defaults';\n\nconst ENDPOINT = backupEndpoint; // 'https://dashy-sync-service.as93.net';\n\n/* Stringify, encrypt and encode data for transmission */\nconst encryptData = (data, password) => {\n const stringifiedData = JSON.stringify(data);\n const encryptedData = aes.encrypt(stringifiedData, password);\n return encryptedData.toString();\n};\n\n/* Decrypt, decode and parse received data */\nconst decryptData = (data, password) => aes.decrypt(data, password).toString(Utf8);\n\n/* Returns a splice of the hash of the users password */\nconst makeSubHash = (pass) => sha256(pass).toString().slice(0, 14);\n\n/* Makes the backup */\nexport const backup = (data, password) => axios.post(ENDPOINT, {\n userData: encryptData(data, password),\n subHash: makeSubHash(password),\n});\n\n/* Updates and existing backup */\nexport const update = (data, password, backupId) => axios.put(ENDPOINT, {\n backupId,\n userData: encryptData(data, password),\n subHash: makeSubHash(password),\n});\n\nconst encodeGetParams = p => Object.entries(p).map(kv => kv.map(encodeURIComponent).join('=')).join('&');\n\n/* Restores the backup */\nexport const restore = (backupId, password) => {\n const params = encodeGetParams({ backupId, subHash: makeSubHash(password) });\n const url = `${ENDPOINT}/?${params}`;\n return new Promise((resolve, reject) => {\n axios.get(url).then((response) => {\n if (!response.data || response.data.errorMsg) {\n reject(response.data.errorMsg || 'Error');\n } else {\n const decryptedData = decryptData(response.data.userData.userData, password);\n try { resolve(JSON.parse(decryptedData)); } catch (e) { reject(e); }\n }\n });\n });\n};\n","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CloudBackupRestore.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CloudBackupRestore.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CloudBackupRestore.vue?vue&type=template&id=079113a8&scoped=true&\"\nimport script from \"./CloudBackupRestore.vue?vue&type=script&lang=js&\"\nexport * from \"./CloudBackupRestore.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CloudBackupRestore.vue?vue&type=style&index=0&id=079113a8&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"079113a8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"name\":_vm.modalName,\"resizable\":true,\"width\":\"50%\",\"height\":\"60%\",\"classes\":\"dashy-modal\"}},[_c('div',{staticClass:\"rebuild-app-container\"},[_c('h3',{staticClass:\"rebuild-app-title\"},[_vm._v(_vm._s(_vm.$t('app-rebuild.title')))]),_c('p',[_vm._v(\" \"+_vm._s(_vm.$t('app-rebuild.rebuild-note-l1'))+\" \"+_vm._s(_vm.$t('app-rebuild.rebuild-note-l2'))),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('app-rebuild.rebuild-note-l3'))+\" \")]),_c('Button',{attrs:{\"click\":_vm.startBuild,\"disabled\":_vm.loading || !_vm.allowRebuild,\"disallow\":!_vm.allowRebuild},scopedSlots:_vm._u([{key:\"text\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.loading ? _vm.$t('app-rebuild.rebuilding-status-1') : _vm.$t('app-rebuild.rebuild-button'))+\" \")]},proxy:true},{key:\"icon\",fn:function(){return [_c('RebuildIcon')]},proxy:true}])}),(!_vm.allowRebuild)?_c('div',[_c('p',{staticClass:\"disallow-rebuild-msg\"},[_vm._v(_vm._s(_vm.$t('app-rebuild.error-permission')))])]):_vm._e(),(_vm.loading)?_c('div',{staticClass:\"loader-info\"},[_c('LoadingAnimation',{staticClass:\"loader\"}),_c('p',{staticClass:\"loading-message\"},[_vm._v(_vm._s(_vm.$t('app-rebuild.rebuilding-status-2'))+\"...\")])],1):_vm._e(),(_vm.success !== undefined)?_c('div',{staticClass:\"rebuild-response\"},[(_vm.success)?_c('p',{staticClass:\"response-status success\"},[_vm._v(\" ✅ \"+_vm._s(_vm.$t('app-rebuild.success-msg'))+\" \")]):_c('p',{staticClass:\"response-status failure\"},[_vm._v(\" ❌ \"+_vm._s(_vm.$t('app-rebuild.fail-msg'))+\" \")]),_c('pre',{staticClass:\"output\"},[_c('code',[_vm._v(_vm._s(_vm.output || _vm.error))])]),_c('p',{staticClass:\"rebuild-message\"},[_vm._v(_vm._s(_vm.message))]),(_vm.success)?_c('p',{staticClass:\"rebuild-message\"},[_vm._v(\" \"+_vm._s(_vm.$t('app-rebuild.reload-note'))+\" \")]):_vm._e(),(_vm.success)?_c('Button',{attrs:{\"click\":_vm.refreshPage},scopedSlots:_vm._u([{key:\"text\",fn:function(){return [_vm._v(_vm._s(_vm.$t('app-rebuild.reload-button')))]},proxy:true},{key:\"icon\",fn:function(){return [_c('ReloadIcon')]},proxy:true}],null,false,3658341317)}):_vm._e()],1):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RebuildApp.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RebuildApp.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RebuildApp.vue?vue&type=template&id=306fcc3a&scoped=true&\"\nimport script from \"./RebuildApp.vue?vue&type=script&lang=js&\"\nexport * from \"./RebuildApp.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RebuildApp.vue?vue&type=style&index=0&id=306fcc3a&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"306fcc3a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"app-version\"},[_c('p',[_vm._v(\" \"+_vm._s(_vm.$t('updates.app-version-note'))+\" \"+_vm._s(_vm.appVersion)+\" \")]),(_vm.checksEnabled)?_c('div',[(!_vm.finished)?_c('p',[_vm._v(\" \"+_vm._s(_vm.error ? 'Error checking for updates.' : 'Chcekcing for Updates...')+\" \")]):_vm._e(),(_vm.finished && _vm.isUpToDate)?_c('p',{staticClass:\"up-to-date\"},[_vm._v(\" ✅ \"+_vm._s(_vm.$t('updates.up-to-date'))+\" \")]):(_vm.finished && !_vm.veryOutOfDate)?_c('p',{staticClass:\"update-availible\"},[_vm._v(\" ⚠️\"+_vm._s(_vm.$t('updates.out-of-date'))+\": \"),_c('b',[_vm._v(_vm._s(_vm.latestVersion))])]):(_vm.finished && _vm.veryOutOfDate)?_c('p',{staticClass:\"big-update-availible\"},[_vm._v(\" ❗ \"+_vm._s(_vm.$t('updates.out-of-date'))+\": \"),_c('b',[_vm._v(_vm._s(_vm.latestVersion))]),_c('span',{staticClass:\"please-update\"},[_vm._v(\" \"+_vm._s(_vm.$t('updates.unsupported-version-l1'))+\".\"),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('updates.unsupported-version-2'))+\" \"+_vm._s(_vm.latestVersion)+\" \")])]):_vm._e()]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppVersion.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppVersion.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AppVersion.vue?vue&type=template&id=49d7ffdf&scoped=true&\"\nimport script from \"./AppVersion.vue?vue&type=script&lang=js&\"\nexport * from \"./AppVersion.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppVersion.vue?vue&type=style&index=0&id=49d7ffdf&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"49d7ffdf\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfigContainer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfigContainer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ConfigContainer.vue?vue&type=template&id=43a15f79&scoped=true&\"\nimport script from \"./ConfigContainer.vue?vue&type=script&lang=js&\"\nexport * from \"./ConfigContainer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ConfigContainer.vue?vue&type=style&index=0&id=43a15f79&scoped=true&lang=scss&\"\nimport style1 from \"./ConfigContainer.vue?vue&type=style&index=1&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"43a15f79\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"language-switcher\"},[_c('h3',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('language-switcher.title')))]),_c('p',{staticClass:\"intro\"},[_vm._v(_vm._s(_vm.$t('language-switcher.dropdown-label'))+\":\")]),_c('v-select',{staticClass:\"language-dropdown\",attrs:{\"selectOnTab\":true,\"options\":_vm.availibleLanguages,\"label\":\"name\",\"input\":_vm.setLangLocally()},model:{value:(_vm.language),callback:function ($$v) {_vm.language=$$v},expression:\"language\"}}),_c('Button',{staticClass:\"save-button\",attrs:{\"click\":_vm.saveLanguage,\"disallow\":!_vm.language}},[_vm._v(\" \"+_vm._s(_vm.$t('language-switcher.save-button'))+\" \"),_c('SaveConfigIcon')],1),(_vm.language)?_c('p',[_vm._v(_vm._s(_vm.language.flag)+\" \"+_vm._s(_vm.language.name))]):_vm._e(),(_vm.$i18n.availableLocales.length <= 1)?_c('p',{staticClass:\"sad-times\"},[_vm._v(\" There are not currently any additional languages supported, but stay tuned as more are on their way! \")]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LanguageSwitcher.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LanguageSwitcher.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LanguageSwitcher.vue?vue&type=template&id=631f0843&scoped=true&\"\nimport script from \"./LanguageSwitcher.vue?vue&type=script&lang=js&\"\nexport * from \"./LanguageSwitcher.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LanguageSwitcher.vue?vue&type=style&index=0&id=631f0843&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"631f0843\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfigLauncher.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfigLauncher.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ConfigLauncher.vue?vue&type=template&id=766377f2&scoped=true&\"\nimport script from \"./ConfigLauncher.vue?vue&type=script&lang=js&\"\nexport * from \"./ConfigLauncher.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ConfigLauncher.vue?vue&type=style&index=0&id=766377f2&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"766377f2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(_vm.closeThemeConfigurator),expression:\"closeThemeConfigurator\"}],staticClass:\"theme-selector-section\"},[_c('div',[_c('span',{staticClass:\"theme-label\"},[_vm._v(_vm._s(_vm.$t('settings.theme-label')))]),_c('v-select',{staticClass:\"theme-dropdown\",attrs:{\"options\":_vm.themeNames,\"tabindex\":-2},model:{value:(_vm.selectedTheme),callback:function ($$v) {_vm.selectedTheme=$$v},expression:\"selectedTheme\"}})],1),_c('IconPalette',{staticClass:\"color-button\",on:{\"click\":_vm.openThemeConfigurator}}),(_vm.themeConfiguratorOpen)?_c('CustomThemeMaker',{attrs:{\"themeToEdit\":_vm.selectedTheme},on:{\"closeThemeConfigurator\":function($event){return _vm.closeThemeConfigurator()}}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* eslint no-console: [\"error\", { allow: [\"warn\", \"error\"] }] */\n\nimport { warningMsg, raiseBug } from '@/utils/CoolConsole';\n\n/**\n * Function called when an error happens\n * If you wish to use an error logging service, put code for it here\n */\nconst ErrorHandler = function handler(msg) {\n warningMsg();\n console.warn(msg);\n raiseBug();\n};\n\nexport default ErrorHandler;\n","import ErrorHandler from '@/utils/ErrorHandler';\nimport { getTheme, getCustomColors } from '@/utils/ConfigHelpers';\nimport { mainCssVars } from '@/utils/defaults';\n\n/* Returns users current theme */\nexport const GetTheme = () => getTheme();\n\n/* Gets user custom color preferences for current theme, and applies to DOM */\nexport const ApplyCustomVariables = (theme) => {\n mainCssVars.forEach((vName) => { document.documentElement.style.removeProperty(`--${vName}`); });\n const themeColors = getCustomColors()[theme];\n if (themeColors) {\n Object.keys(themeColors).forEach((customVar) => {\n document.documentElement.style.setProperty(`--${customVar}`, themeColors[customVar]);\n });\n }\n};\n\n/* Sets the theme, by updating data-theme attribute on the html tag */\nexport const ApplyLocalTheme = (newTheme) => {\n const htmlTag = document.getElementsByTagName('html')[0];\n if (htmlTag.hasAttribute('data-theme')) htmlTag.removeAttribute('data-theme');\n htmlTag.setAttribute('data-theme', newTheme);\n};\n\n/**\n * A function for pre-loading, and easy switching of external stylesheets\n * External CSS is preloaded to avoid FOUC\n */\nexport const LoadExternalTheme = function th() {\n /* Preload selected external theme */\n const preloadTheme = (href) => {\n const link = document.createElement('link');\n link.rel = 'stylesheet';\n link.href = href;\n document.head.appendChild(link);\n return new Promise((resolve, reject) => {\n link.onload = e => {\n const { sheet } = e.target;\n sheet.disabled = true;\n resolve(sheet);\n };\n link.onerror = reject;\n });\n };\n\n /* Check theme is selected, and it exists */\n const checkTheme = (themes, name) => {\n if ((!name) || (name !== 'custom' && !themes[name])) {\n ErrorHandler(`Theme: '${name || '[not selected]'}' does not exist.`);\n return false;\n }\n return true;\n };\n\n /* Disable all but selected theme */\n const selectTheme = (themes, name) => {\n if (checkTheme(themes, name)) {\n const t = themes; // To avoid ESLint complaining about mutating a param\n Object.keys(themes).forEach(n => { t[n].disabled = (n !== name); });\n }\n };\n\n const themes = {};\n\n return {\n add(name, href) { return preloadTheme(href).then(s => { themes[name] = s; }); },\n set theme(name) { selectTheme(themes, name); },\n get theme() { return Object.keys(themes).find(n => !themes[n].disabled); },\n };\n};\n","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThemeSelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThemeSelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ThemeSelector.vue?vue&type=template&id=049f9474&\"\nimport script from \"./ThemeSelector.vue?vue&type=script&lang=js&\"\nexport * from \"./ThemeSelector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ThemeSelector.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('span',{staticClass:\"options-label\"},[_vm._v(_vm._s(_vm.$t('settings.layout-label')))]),_c('div',{staticClass:\"display-options\"},[_c('IconDeafault',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip(_vm.$t('settings.layout-auto'))),expression:\"tooltip($t('settings.layout-auto'))\"}],class:(\"layout-icon \" + (_vm.displayLayout === 'auto' ? 'selected' : '')),attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.updateDisplayLayout('auto')}}}),_c('IconHorizontal',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip(_vm.$t('settings.layout-horizontal'))),expression:\"tooltip($t('settings.layout-horizontal'))\"}],class:(\"layout-icon \" + (_vm.displayLayout === 'horizontal' ? 'selected' : '')),attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.updateDisplayLayout('horizontal')}}}),_c('IconVertical',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip(_vm.$t('settings.layout-vertical'))),expression:\"tooltip($t('settings.layout-vertical'))\"}],class:(\"layout-icon \" + (_vm.displayLayout === 'vertical' ? 'selected' : '')),attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.updateDisplayLayout('vertical')}}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LayoutSelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LayoutSelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LayoutSelector.vue?vue&type=template&id=b3a6111c&scoped=true&\"\nimport script from \"./LayoutSelector.vue?vue&type=script&lang=js&\"\nexport * from \"./LayoutSelector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LayoutSelector.vue?vue&type=style&index=0&id=b3a6111c&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b3a6111c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('span',{staticClass:\"options-label\"},[_vm._v(_vm._s(_vm.$t('settings.item-size-label')))]),_c('div',{staticClass:\"display-options\"},[_c('IconSmall',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip(_vm.$t('settings.item-size-small'))),expression:\"tooltip($t('settings.item-size-small'))\"}],class:(\"layout-icon \" + (_vm.iconSize === 'small' ? 'selected' : '')),attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.updateIconSize('small')}}}),_c('IconMedium',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip(_vm.$t('settings.item-size-medium'))),expression:\"tooltip($t('settings.item-size-medium'))\"}],class:(\"layout-icon \" + (_vm.iconSize === 'medium' ? 'selected' : '')),attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.updateIconSize('medium')}}}),_c('IconLarge',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip(_vm.$t('settings.item-size-large'))),expression:\"tooltip($t('settings.item-size-large'))\"}],class:(\"layout-icon \" + (_vm.iconSize === 'large' ? 'selected' : '')),attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.updateIconSize('large')}}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemSizeSelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemSizeSelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ItemSizeSelector.vue?vue&type=template&id=1ff45660&scoped=true&\"\nimport script from \"./ItemSizeSelector.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemSizeSelector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ItemSizeSelector.vue?vue&type=style&index=0&id=1ff45660&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1ff45660\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"display-options\"},[_c('IconLogout',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip('Sign Out')),expression:\"tooltip('Sign Out')\"}],staticClass:\"layout-icon\",attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.logout()}}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppButtons.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppButtons.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AppButtons.vue?vue&type=template&id=d69dca9c&scoped=true&\"\nimport script from \"./AppButtons.vue?vue&type=script&lang=js&\"\nexport * from \"./AppButtons.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppButtons.vue?vue&type=style&index=0&id=d69dca9c&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d69dca9c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{\"name\":\"slide-fade\"}},[(!_vm.shouldHide)?_c('div',{staticClass:\"kb-sc-info\"},[_c('h5',[_vm._v(\"There are keyboard shortcuts! ⌨️🙌\")]),_c('div',{staticClass:\"close\",attrs:{\"title\":\"Hide forever [Esc]\"},on:{\"click\":function($event){return _vm.hideWelcomeHelper()}}},[_vm._v(\"x\")]),_c('p',{attrs:{\"title\":\"Press [Esc] to hide this tip forever. See there's even a shortcut for that! 🚀\"}},[_vm._v(\" Just start typing to filter. Then use the tab key to cycle through results, and press enter to launch the selected item, or alt + enter to open in a modal. You can hit Esc at anytime to clear the search. Easy 🥳 \")])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KeyboardShortcutInfo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KeyboardShortcutInfo.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./KeyboardShortcutInfo.vue?vue&type=template&id=c5f17d9a&scoped=true&\"\nimport script from \"./KeyboardShortcutInfo.vue?vue&type=script&lang=js&\"\nexport * from \"./KeyboardShortcutInfo.vue?vue&type=script&lang=js&\"\nimport style0 from \"./KeyboardShortcutInfo.vue?vue&type=style&index=0&id=c5f17d9a&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c5f17d9a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"name\":_vm.modalName,\"resizable\":true,\"width\":\"40%\",\"height\":\"60%\",\"classes\":\"dashy-modal\"}},[_c('div',{staticClass:\"about-modal\"},[_c('router-link',{attrs:{\"to\":\"/about\"}},[_c('h2',[_vm._v(\"Dashy\")])]),_c('AppVersion'),_c('h3',[_vm._v(\"Service Worker Status\")]),_c('code',{domProps:{\"innerHTML\":_vm._s(_vm.serviceWorkerInfo)}},[_vm._v(_vm._s(_vm.serviceWorkerInfo))]),_c('br'),_c('h3',[_vm._v(\"Config Validation Status\")]),_c('code',[_vm._v(_vm._s(_vm.getIsConfigValidStatus()))]),_c('br'),_c('h3',[_vm._v(\"Help & Support\")]),_c('ul',[_c('li',[_c('a',{attrs:{\"href\":\"https://git.io/JnqPR\"}},[_vm._v(\"Report a Bug\")])]),_c('li',[_c('a',{attrs:{\"href\":\"https://git.io/JnDxL\"}},[_vm._v(\"Request a Feature\")])]),_c('li',[_c('a',{attrs:{\"href\":\"https://git.io/JnDxs\"}},[_vm._v(\"Ask a Question\")])]),_c('li',[_c('a',{attrs:{\"href\":\"https://git.io/JnDxn\"}},[_vm._v(\"Leave Feedback\")])]),_c('li',[_c('a',{attrs:{\"href\":\"https://github.com/Lissy93/dashy/discussions\"}},[_vm._v(\"Join the Discussion\")])])]),_c('p',{staticClass:\"small-note\"},[_vm._v(\"Please include the following info in your bug report:\")]),_c('a',{on:{\"click\":function($event){_vm.showInfo = !_vm.showInfo}}},[_vm._v(_vm._s(_vm.showInfo ? 'Hide' : 'Show')+\" system info\")]),(_vm.showInfo)?_c('div',{staticClass:\"system-info\"},[_c('h4',[_vm._v(\"System Info\")]),_c('code',[_c('b',[_vm._v(\"Dashy Version:\")]),_vm._v(\" V \"+_vm._s(_vm.appVersion))]),_c('br'),_c('code',[_c('b',[_vm._v(\"Browser:\")]),_vm._v(\" \"+_vm._s(_vm.systemInfo.browser))]),_c('br'),_c('code',[_c('b',[_vm._v(\"Is Mobile?\")]),_vm._v(\" \"+_vm._s(_vm.systemInfo.isMobile ? 'Yes' : 'No'))]),_c('br'),_c('code',[_c('b',[_vm._v(\"OS:\")]),_vm._v(\" \"+_vm._s(_vm.systemInfo.os))]),_c('br')]):_vm._e(),_c('h3',[_vm._v(\"About\")]),_c('p',{staticClass:\"about-text\"},[_vm._v(\" Documentation and Source Code available on \"),_c('a',{attrs:{\"href\":\"https://github.com/lissy93/dashy\"}},[_vm._v(\"GitHub\")])]),_c('h3',[_vm._v(\"License\")]),_c('code',[_vm._v(\"Licensed under MIT X11. Copyright © 2021\")])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppInfoModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppInfoModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AppInfoModal.vue?vue&type=template&id=77ccbcae&scoped=true&\"\nimport script from \"./AppInfoModal.vue?vue&type=script&lang=js&\"\nexport * from \"./AppInfoModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppInfoModal.vue?vue&type=style&index=0&id=77ccbcae&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"77ccbcae\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsContainer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsContainer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SettingsContainer.vue?vue&type=template&id=66dc3458&scoped=true&\"\nimport script from \"./SettingsContainer.vue?vue&type=script&lang=js&\"\nexport * from \"./SettingsContainer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SettingsContainer.vue?vue&type=style&index=0&id=66dc3458&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"66dc3458\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Collapsable',{attrs:{\"title\":_vm.title,\"icon\":_vm.icon,\"uniqueKey\":_vm.groupId,\"collapsed\":_vm.displayData.collapsed,\"cols\":_vm.displayData.cols,\"rows\":_vm.displayData.rows,\"color\":_vm.displayData.color,\"customStyles\":_vm.displayData.customStyles}},[(!_vm.items || _vm.items.length < 1)?_c('div',{staticClass:\"no-items\"},[_vm._v(\" No Items to Show Yet \")]):_c('div',{class:(\"there-are-items \" + (_vm.isGridLayout? 'item-group-grid': '')),style:(_vm.gridStyle)},[_vm._l((_vm.items),function(item,index){return _c('Item',{key:(index + \"_\" + (_vm.makeId(item.title))),attrs:{\"id\":(index + \"_\" + (_vm.makeId(item.title))),\"url\":item.url,\"title\":item.title,\"description\":item.description,\"icon\":item.icon,\"target\":item.target,\"color\":item.color,\"backgroundColor\":item.backgroundColor,\"statusCheckUrl\":item.statusCheckUrl,\"statusCheckHeaders\":item.statusCheckHeaders,\"itemSize\":_vm.newItemSize,\"hotkey\":item.hotkey,\"enableStatusCheck\":_vm.shouldEnableStatusCheck(item.statusCheck),\"statusCheckInterval\":_vm.getStatusCheckInterval()},on:{\"itemClicked\":function($event){return _vm.$emit('itemClicked')},\"triggerModal\":_vm.triggerModal}})}),_c('div',{ref:\"modalContainer\"})],2),_c('IframeModal',{ref:(\"iframeModal-\" + _vm.groupId),attrs:{\"name\":(\"iframeModal-\" + _vm.groupId)},on:{\"closed\":function($event){return _vm.$emit('itemClicked')},\"modalChanged\":_vm.modalChanged}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"item-wrapper\"},[_c('a',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.getTooltipOptions()),expression:\"getTooltipOptions()\"}],class:(\"item \" + (!_vm.icon? 'short': '') + \" size-\" + _vm.itemSize),style:((\"--open-icon: \" + (_vm.getUnicodeOpeningIcon()) + \"; \" + _vm.customStyles)),attrs:{\"href\":_vm.target !== 'modal' ? _vm.url : '#',\"target\":_vm.target === 'newtab' ? '_blank' : '',\"rel\":\"noopener noreferrer\",\"tabindex\":\"0\",\"id\":(\"link-\" + _vm.id)},on:{\"click\":_vm.itemOpened,\"mouseup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"right\",39,$event.key,[\"Right\",\"ArrowRight\"])){ return null; }if('button' in $event && $event.button !== 2){ return null; }return _vm.openContextMenu.apply(null, arguments)},\"contextmenu\":function($event){$event.preventDefault();}}},[_c('div',{class:(\"tile-title \" + (!_vm.icon? 'bounce': '')),attrs:{\"id\":(\"tile-\" + _vm.id)}},[_c('span',{staticClass:\"text\"},[_vm._v(_vm._s(_vm.title))]),_c('p',{staticClass:\"description\"},[_vm._v(_vm._s(_vm.description))])]),_c('Icon',{staticClass:\"bounce\",style:(_vm.customStyles),attrs:{\"icon\":_vm.icon,\"url\":_vm.url,\"size\":_vm.itemSize,\"color\":_vm.color}}),_c('ItemOpenMethodIcon',{staticClass:\"opening-method-icon\",attrs:{\"isSmall\":!_vm.icon || _vm.itemSize === 'small',\"openingMethod\":_vm.target,\"position\":_vm.itemSize === 'medium'? 'bottom right' : 'top right',\"hotkey\":_vm.hotkey}}),(_vm.enableStatusCheck)?_c('StatusIndicator',{staticClass:\"status-indicator\",attrs:{\"statusSuccess\":_vm.statusResponse ? _vm.statusResponse.successStatus : undefined,\"statusText\":_vm.statusResponse ? _vm.statusResponse.message : undefined}}):_vm._e()],1),_c('ContextMenu',{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(_vm.closeContextMenu),expression:\"closeContextMenu\"}],attrs:{\"show\":_vm.contextMenuOpen,\"posX\":_vm.contextPos.posX,\"posY\":_vm.contextPos.posY,\"id\":(\"context-menu-\" + _vm.id)},on:{\"contextItemClick\":_vm.contextItemClick}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"item-icon\"},[(_vm.iconType === 'font-awesome')?_c('i',{class:(_vm.icon + \" \" + _vm.size)}):(_vm.iconType === 'emoji')?_c('i',{class:(\"emoji-icon \" + _vm.size)},[_vm._v(_vm._s(_vm.getEmoji(_vm.iconPath)))]):(_vm.icon)?_c('img',{class:(\"tile-icon \" + _vm.size + \" \" + (_vm.broken ? 'broken' : '')),attrs:{\"src\":_vm.iconPath},on:{\"error\":_vm.imageNotFound}}):_vm._e(),(_vm.broken)?_c('BrokenImage',{staticClass:\"missing-image\"}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemIcon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ItemIcon.vue?vue&type=template&id=84c05142&\"\nimport script from \"./ItemIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemIcon.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ItemIcon.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{class:_vm.makeClass(_vm.position, _vm.isSmall, _vm.isTransparent)},[(_vm.openingMethod === 'newtab')?_c('NewTabOpenIcon'):(_vm.openingMethod === 'sametab')?_c('SameTabOpenIcon'):(_vm.openingMethod === 'modal')?_c('IframeOpenIcon'):(_vm.openingMethod === 'workspace')?_c('WorkspaceOpenIcon'):_vm._e()],1),(_vm.hotkey)?_c('div',{class:(\"hotkey-denominator \" + (_vm.makeClass(_vm.position, _vm.isSmall, _vm.isTransparent)))},[_vm._v(\" \"+_vm._s(_vm.hotkey)+\" \")]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemOpenMethodIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemOpenMethodIcon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ItemOpenMethodIcon.vue?vue&type=template&id=b0684bc4&scoped=true&\"\nimport script from \"./ItemOpenMethodIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemOpenMethodIcon.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ItemOpenMethodIcon.vue?vue&type=style&index=0&id=b0684bc4&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b0684bc4\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:({\n content: _vm.statusText || _vm.otherStatusText, classes: ['status-tooltip', (\"tip-\" + (_vm.color()))] }),expression:\"{\\n content: statusText || otherStatusText, classes: ['status-tooltip', `tip-${color()}`] }\"}],staticClass:\"indicator\",on:{\"click\":function($event){return _vm.showToast()}}},[_c('div',{class:(\"dot dot-\" + (_vm.color()))},[_vm._m(0)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[_c('span')])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatusIndicator.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatusIndicator.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StatusIndicator.vue?vue&type=template&id=46972ad8&scoped=true&\"\nimport script from \"./StatusIndicator.vue?vue&type=script&lang=js&\"\nexport * from \"./StatusIndicator.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StatusIndicator.vue?vue&type=style&index=0&id=46972ad8&scoped=true&lang=scss&\"\nimport style1 from \"./StatusIndicator.vue?vue&type=style&index=1&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"46972ad8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{\"name\":\"slide\"}},[(_vm.show && _vm.menuEnabled)?_c('div',{staticClass:\"context-menu\",style:(_vm.posX && _vm.posY ? (\"top:\" + _vm.posY + \"px;left:\" + _vm.posX + \"px;\") : '')},[_c('ul',[_c('li',{on:{\"click\":function($event){return _vm.launch('sametab')}}},[_c('SameTabOpenIcon'),_c('span',[_vm._v(\"Open in Current Tab\")])],1),_c('li',{on:{\"click\":function($event){return _vm.launch('newtab')}}},[_c('NewTabOpenIcon'),_c('span',[_vm._v(\"Open in New Tab\")])],1),_c('li',{on:{\"click\":function($event){return _vm.launch('modal')}}},[_c('IframeOpenIcon'),_c('span',[_vm._v(\"Open in Pop-Up Modal\")])],1),_c('li',{on:{\"click\":function($event){return _vm.launch('workspace')}}},[_c('WorkspaceOpenIcon'),_c('span',[_vm._v(\"Open in Workspace View\")])],1)])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ContextMenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ContextMenu.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ContextMenu.vue?vue&type=template&id=6463bf59&\"\nimport script from \"./ContextMenu.vue?vue&type=script&lang=js&\"\nexport * from \"./ContextMenu.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ContextMenu.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Item.vue?vue&type=template&id=01b72de8&ref=container&\"\nimport script from \"./Item.vue?vue&type=script&lang=js&\"\nexport * from \"./Item.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Item.vue?vue&type=style&index=0&lang=scss&\"\nimport style1 from \"./Item.vue?vue&type=style&index=1&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:(\"collapsable \" + (_vm.checkSpanNum(_vm.cols, 'col')) + \" \" + (_vm.checkSpanNum(_vm.rows, 'row'))),style:(((_vm.color ? 'background: '+_vm.color : '') + \"; \" + (_vm.sanitizeCustomStyles(_vm.customStyles)) + \";\"))},[_c('input',{staticClass:\"toggle\",attrs:{\"id\":(\"collapsible-\" + _vm.uniqueKey),\"type\":\"checkbox\",\"tabIndex\":\"-1\"},domProps:{\"checked\":_vm.getCollapseState()},on:{\"change\":_vm.collapseChanged}}),_c('label',{staticClass:\"lbl-toggle\",attrs:{\"for\":(\"collapsible-\" + _vm.uniqueKey),\"tabindex\":\"-1\"}},[(_vm.icon)?_c('Icon',{staticClass:\"section-icon\",attrs:{\"icon\":_vm.icon,\"size\":\"small\",\"url\":_vm.title}}):_vm._e(),_c('h3',[_vm._v(_vm._s(_vm.title))])],1),_c('div',{staticClass:\"collapsible-content\"},[_c('div',{staticClass:\"content-inner\"},[_vm._t(\"default\")],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Collapsable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Collapsable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Collapsable.vue?vue&type=template&id=ac1beaa4&scoped=true&\"\nimport script from \"./Collapsable.vue?vue&type=script&lang=js&\"\nexport * from \"./Collapsable.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Collapsable.vue?vue&type=style&index=0&id=ac1beaa4&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ac1beaa4\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"name\":_vm.name,\"resizable\":true,\"width\":\"80%\",\"height\":\"80%\",\"classes\":\"dashy-modal\"},on:{\"closed\":function($event){return _vm.modalClosed()}}},[_c('div',{attrs:{\"slot\":\"top-right\"},on:{\"click\":function($event){return _vm.hide()}},slot:\"top-right\"},[_vm._v(\"Close\")]),_c('a',{staticClass:\"close-button\",attrs:{\"title\":\"Close\"},on:{\"click\":function($event){return _vm.hide()}}},[_vm._v(\"x\")]),(_vm.url)?_c('iframe',{staticClass:\"frame\",attrs:{\"src\":_vm.url},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }return _vm.close.apply(null, arguments)}}}):_c('div',{staticClass:\"no-url\"},[_vm._v(\"No URL Specified\")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","