diff --git a/css/app.557608e8.css b/css/app.3cbdd1b4.css
similarity index 77%
rename from css/app.557608e8.css
rename to css/app.3cbdd1b4.css
index 728a1ab0..0d5688f3 100644
--- a/css/app.557608e8.css
+++ b/css/app.3cbdd1b4.css
@@ -1 +1 @@
-@import url(https://fonts.googleapis.com/css2?family=Francois+One&family=Roboto:wght@300&display=swap);@import url(https://fonts.googleapis.com/css2?family=Cutive+Mono&family=VT323&display=swap);@import url(https://fonts.googleapis.com/css2?family=Podkova:wght@500&display=swap);@import url(https://fonts.googleapis.com/css2?family=Allerta+Stencil&display=swap);@import url(https://fonts.googleapis.com/css2?family=Sniglet&display=swap);.page-titles[data-v-290d21a8]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.page-titles h1[data-v-290d21a8]{color:var(--heading-text-color);font-size:2.5rem;margin:0}.page-titles span.subtitle[data-v-290d21a8]{color:var(--heading-text-color);font-style:italic;text-shadow:1px 1px 2px #130f23;opacity:var(--dimming-factor)}@media(max-width:599px){.page-titles[data-v-290d21a8]{text-align:center;padding:.25rem 0}}nav[data-v-68c1bd5c]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}nav .nav-item[data-v-68c1bd5c]{display:inline-block;padding:.75rem .5rem;margin:.5rem;outline:none;border:none;border-radius:var(--curve-factor);-webkit-box-shadow:1px 1px 2px #232323;box-shadow:1px 1px 2px #232323;color:var(--nav-link-text-color);background:var(--nav-link-background-color);border:1px solid var(--nav-link-border-color);text-decoration:none}nav .nav-item.router-link-active[data-v-68c1bd5c],nav .nav-item[data-v-68c1bd5c]:hover{color:var(--nav-link-text-color-hover);background:var(--nav-link-background-color-hover);border:1px solid var(--nav-link-border-color-hover)}header[data-v-70a33270]{margin:0;padding:.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;background:var(--background-darker);-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:start;align-content:flex-start}@media(max-width:599px){header[data-v-70a33270]{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}footer[data-v-7bd89e4f]{padding:.25rem;text-align:center;color:var(--medium-grey);opacity:var(--dimming-factor);background:var(--background-darker);margin-top:1.5rem;border-top:1px solid var(--outline-color)}footer a[data-v-7bd89e4f]{color:var(--footer-text-color)}footer a[data-v-7bd89e4f]:hover{color:var(--footer-text-color-link)}div#loading[data-v-a7bc1de6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:absolute;height:100%;width:100%;z-index:7;background:var(--loading-screen-background);color:var(--loading-screen-color)}div#loading.hide[data-v-a7bc1de6]{display:none}div#loading .inner-container[data-v-a7bc1de6]{text-align:center}div#loading p[data-v-a7bc1de6]{font-size:6vw;display:inline;margin:0 auto}div#loading h2[data-v-a7bc1de6]{opacity:.35;font-size:16vw;margin:0}div#loading .dots-cont[data-v-a7bc1de6]{display:inline}div#loading .dots-cont .dot[data-v-a7bc1de6]{width:4px;height:4px;background:var(--loading-screen-color);display:inline-block;border-radius:35%;right:0;bottom:0;margin:0 2.5px;position:relative;-webkit-animation:jump-data-v-a7bc1de6 1s infinite;animation:jump-data-v-a7bc1de6 1s infinite}div#loading .dots-cont .dot.dot-1[data-v-a7bc1de6]{-webkit-animation-delay:.1s;animation-delay:.1s}div#loading .dots-cont .dot.dot-2[data-v-a7bc1de6]{-webkit-animation-delay:.2s;animation-delay:.2s}div#loading .dots-cont .dot.dot-3[data-v-a7bc1de6]{-webkit-animation-delay:.3s;animation-delay:.3s}div#loading .dots-cont .dot.dot-4[data-v-a7bc1de6]{-webkit-animation-delay:.4s;animation-delay:.4s}@-webkit-keyframes jump-data-v-a7bc1de6{0%{bottom:0}20%{bottom:5px}40%{bottom:0}}@keyframes jump-data-v-a7bc1de6{0%{bottom:0}20%{bottom:5px}40%{bottom:0}}.slide-fade-leave-active[data-v-a7bc1de6]{-webkit-transition:all .2s cubic-bezier(1,.9,.7,.4);transition:all .2s cubic-bezier(1,.9,.7,.4)}.slide-fade-enter[data-v-a7bc1de6],.slide-fade-leave-to[data-v-a7bc1de6]{-webkit-transform:translateY(-200px);transform:translateY(-200px);opacity:0}.scroll-bar::-webkit-scrollbar,html::-webkit-scrollbar{width:var(--scroll-bar-width);height:var(--scroll-bar-width)}.scroll-bar::-webkit-scrollbar-track,html::-webkit-scrollbar-track{border-radius:var(--curve-factor);background-color:var(--scroll-bar-background)}.scroll-bar::-webkit-scrollbar-thumb,html::-webkit-scrollbar-thumb{background:var(--scroll-bar-color);border-radius:var(--curve-factor)}.bold{font-weight:700}.light{font-weight:lighter}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.horizontal-center{margin:0 auto}.border-box{-webkit-box-sizing:border-box;box-sizing:border-box}.toast-message{background:var(--toast-background)!important;color:var(--toast-color)!important;border:1px solid var(--toast-color)!important;border-radius:var(--curve-factor)!important;font-size:1.25rem!important}.toast-error{background:var(--danger)!important}.toast-error,.toast-success{color:var(--white)!important;font-size:1.25rem!important}.toast-success{background:var(--success)!important}html{margin:0;padding:0;-webkit-transition:all 1s;transition:all 1s;margin-top:-3px;-webkit-box-sizing:border-box;box-sizing:border-box}html a,html button,html input[type=button]{cursor:pointer}:root{--primary:#5cabca;--background:#0b1021;--background-darker:#05070e;--info:#04e4f4;--success:#20e253;--warning:#f6f000;--danger:#f80363;--neutral:#272f4d;--white:#fff;--black:#000;--item-group-background:rgba(11,16,33,0.8);--medium-grey:#5e6474;--item-background:rgba(96,125,139,0.2);--item-background-hover:rgba(96,125,139,0.30196078431372547);--transparent-70:rgba(0,0,0,0.7019607843137254);--transparent-50:rgba(0,0,0,0.5019607843137255);--transparent-30:rgba(0,0,0,0.30196078431372547);--transparent-white-70:hsla(0,0%,100%,0.7019607843137254);--transparent-white-50:hsla(0,0%,100%,0.5019607843137255);--transparent-white-30:hsla(0,0%,100%,0.30196078431372547);--outline-color:none;--curve-factor:5px;--curve-factor-navbar:16px;--dimming-factor:0.7;--scroll-bar-width:8px;--item-group-padding:5px;--item-shadow:1px 1px 2px #130f23;--item-hover-shadow:1px 2px 4px #373737;--item-icon-transform:drop-shadow(2px 4px 6px var(--transparent-50)) saturate(0.65);--item-icon-transform-hover:drop-shadow(4px 8px 3px var(--transparent-50)) saturate(2);--item-group-shadow:var(--item-shadow);--settings-container-shadow:none;--heading-text-color:var(--primary);--nav-link-text-color:var(--primary);--nav-link-background-color:rgba(96,125,139,0.2);--nav-link-text-color-hover:var(--primary);--nav-link-background-color-hover:rgba(96,125,139,0.2);--nav-link-border-color:transparent;--nav-link-border-color-hover:var(--primary);--item-text-color:var(--primary);--item-group-outer-background:var(--primary);--item-group-heading-text-color:var(--item-group-background);--item-group-heading-text-color-hover:var(--background);--settings-background:var(--background);--settings-text-color:var(--primary);--search-container-background:var(--background-darker);--search-field-background:var(--background);--footer-text-color:var(--medium-grey);--footer-text-color-link:var(--primary);--welcome-popup-background:var(--background-darker);--welcome-popup-text-color:var(--primary);--config-code-background:#fff;--config-code-color:var(--background);--config-settings-color:var(--primary);--config-settings-background:var(--background-darker);--toast-background:var(--primary);--toast-color:var(--background);--scroll-bar-color:var(--primary);--scroll-bar-background:var(--background-darker);--loading-screen-color:var(--primary);--loading-screen-background:var(--background);--login-form-color:var(--primary);--login-form-background:var(--background);--login-form-background-secondary:var(--background-darker)}html[data-theme=callisto]{--item-group-background:#0b1021;--item-background:#141b33;--item-background-hover:#060913;--item-hover-shadow:0 1px 3px rgba(0,204,180,0.7019607843137254),0 1px 2px rgba(0,204,180,0.7490196078431373);--primary:#00ccb4;--font-body:"Inconsolata","Georgia",sans-serif}html[data-theme=callisto],html[data-theme=thebe]{--background:#141b33;--background-darker:#060913;--font-headings:"PTMono","Courier New",monospace}html[data-theme=thebe]{--item-group-background:#0b1021;--item-background:#141b33;--item-background-hover:#060913;--item-hover-shadow:0 1px 3px rgba(150,96,236,0.7019607843137254),0 1px 2px rgba(150,96,236,0.7490196078431373);--primary:#9660ec;--item-group-outer-background:#9660ec linear-gradient(45deg,#9660ec 2%,#5f60ea 51%,#9660ec)}html[data-theme=dracula]{--font-headings:"Allerta Stencil",sans-serif;--background:#44475a;--background-darker:#282a36;--item-group-background:#282a36;--item-background:none;--item-background-hover:#191b22;--item-shadow:none;--item-hover-shadow:none;--settings-text-color:#98ace9;--primary:#6272a4}html[data-theme=dracula] .collapsable:nth-child(1n){background:#8be9fd}html[data-theme=dracula] .collapsable:nth-child(1n) .item{border:1px solid #8be9fd;color:#8be9fd}html[data-theme=dracula] .collapsable:nth-child(2n){background:#50fa7b}html[data-theme=dracula] .collapsable:nth-child(2n) .item{border:1px solid #50fa7b;color:#50fa7b}html[data-theme=dracula] .collapsable:nth-child(3n){background:#ffb86c}html[data-theme=dracula] .collapsable:nth-child(3n) .item{border:1px solid #ffb86c;color:#ffb86c}html[data-theme=dracula] .collapsable:nth-child(4n){background:#ff79c6}html[data-theme=dracula] .collapsable:nth-child(4n) .item{border:1px solid #ff79c6;color:#ff79c6}html[data-theme=dracula] .collapsable:nth-child(4n){background:#bd93f9}html[data-theme=dracula] .collapsable:nth-child(4n) .item{border:1px solid #bd93f9;color:#bd93f9}html[data-theme=bee]{--primary:#c3eb5c}html[data-theme=bee],html[data-theme=raspberry-jam]{--item-background:#1c2636;--item-group-background:#0b1021;--nav-link-background-color:#0b1021;--font-headings:"Sniglet",cursive}html[data-theme=raspberry-jam]{--primary:#eb2d6c;--config-code-background:#0b1021;--config-code-color:#eb2d6c}html[data-theme=tiger]{--primary:#f58233;--item-background:#1c2636;--item-group-background:#0b1021;--nav-link-background-color:#0b1021;--font-headings:"Sniglet",cursive}html[data-theme=matrix-red]{--primary:red;--outline-color:red}html[data-theme=matrix-red],html[data-theme=matrix]{--background:#000;--background-darker:#000;--curve-factor:0px;--font-body:"Cutive Mono",monospace;--font-headings:"VT323",monospace}html[data-theme=matrix]{--primary:#2bca2b;--outline-color:#2bca2b}html[data-theme=matrix] .prism-editor-wrapper.my-editor{border:1px solid var(--primary)}html[data-theme=hacker-girl]{--background:#000;--background-darker:#000;--primary:#e435f1;--outline-color:#e435f1;--curve-factor:0px;--font-body:"Cutive Mono",monospace;--font-headings:"VT323",monospace}html[data-theme=high-contrast-light]{--background:#fff;--background-darker:#fff;--item-group-background:#fff;--item-background:#fff;--primary:#000;--outline-color:#000;--curve-factor:0px;--config-code-color:#000;--font-headings:"PTMono","Courier New",monospace}html[data-theme=high-contrast-dark]{--background:#000;--background-darker:#000;--item-group-background:#000;--primary:#fff;--outline-color:#fff;--curve-factor:0px;--font-headings:"PTMono","Courier New",monospace}html[data-theme=nord]{--primary:#d8dee9;--background:#3b4252;--background-darker:#2e3440;--item-background:#434c5e;--item-background-hover:#4c566a}html[data-theme=nord] .collapsable:nth-child(1n){background:#bf616a}html[data-theme=nord] .collapsable:nth-child(2n){background:#d08770}html[data-theme=nord] .collapsable:nth-child(3n){background:#ebcb8b}html[data-theme=nord] .collapsable:nth-child(4n){background:#a3be8c}html[data-theme=nord-frost]{--primary:#d8dee9;--background:#3b4252;--background-darker:#2e3440;--item-background:#434c5e;--item-background-hover:#4c566a}html[data-theme=nord-frost] .collapsable:nth-child(1n){background:#8fbcbb}html[data-theme=nord-frost] .collapsable:nth-child(2n){background:#88c0d0}html[data-theme=nord-frost] .collapsable:nth-child(3n){background:#81a1c1}html[data-theme=nord-frost] .collapsable:nth-child(4n){background:#5e81ac}html[data-theme=material-original]{--primary:#29b6f6;--settings-text-color:#01579b;--background:#e2e1e0;--background-darker:#01579b;--settings-background:#01579b;--item-group-shadow:none;--item-group-outer-background:none;--item-group-background:none;--item-background:#fff;--item-background-hover:#fff;--settings-background:#29b6f6;--search-container-background:#29b6f6;--curve-factor:2px;--curve-factor-navbar:0;--item-group-padding:5px 0 0;--item-shadow:0 1px 3px rgba(0,0,0,0.12156862745098039),0 1px 2px rgba(0,0,0,0.23921568627450981);--item-hover-shadow:0 1px 4px rgba(0,0,0,0.1607843137254902),0 2px 4px rgba(0,0,0,0.16470588235294117);--item-icon-transform:drop-shadow(1px 2px 1px var(--transparent-30)) saturate(0.65);--item-icon-transform-hover:drop-shadow(1px 3px 2px var(--transparent-30)) saturate(2);--settings-container-shadow:0 1px 3px rgba(0,0,0,0.3686274509803922),0 1px 2px rgba(0,0,0,0.5215686274509804);--welcome-popup-background:#01579b;--welcome-popup-text-color:#fff;--config-code-color:#000;--item-group-heading-text-color-hover:#01579b;--config-settings-background:#01579b;--config-settings-color:#fff;--heading-text-color:#fff}html[data-theme=material-dark-original]{--primary:#08b0bb;--settings-text-color:#08b0bb;--background:#39434c;--background-darker:#08b0bb;--settings-background:#092b3a;--item-group-background:#333c43;--item-background:#414b55;--item-background-hover:#414b55;--settings-background:#131a1f;--search-container-background:#131a1f;--search-field-background:#39434c;--heading-text-color:#131a1f;--nav-link-text-color:#08b0bb;--nav-link-background-color:#131a1f;--nav-link-text-color-hover:#08b0bb;--nav-link-background-color-hover:rgba(19,26,31,0.7803921568627451);--nav-link-border-color-hover:transparent;--curve-factor:2px;--curve-factor-navbar:0;--item-group-padding:5px 0 0;--item-shadow:2px 2px 3px rgba(0,0,0,0.5098039215686274),0 1px 10px rgba(0,0,0,0.25098039215686274);--item-hover-shadow:4px 4px 3px rgba(0,0,0,0.5098039215686274),0 1px 10px rgba(0,0,0,0.25098039215686274);--item-icon-transform:drop-shadow(1px 2px 1px var(--transparent-30)) saturate(0.65);--item-icon-transform-hover:drop-shadow(1px 3px 2px var(--transparent-30)) saturate(2);--welcome-popup-background:#131a1f;--welcome-popup-text-color:var(--primary);--config-settings-background:#131a1f;--config-settings-color:#41e2ed;--scroll-bar-color:#08b0bb;--scroll-bar-background:#131a1f}html[data-theme=material-dark-original]::-webkit-scrollbar-thumb{border-left:1px solid #131a1f}html[data-theme=colorful]{--font-headings:"Podkova",monospace;--primary:#e8eae1;--background:#0b1021;--item-background:#05070e;--item-background-hover:#0b1021;--item-group-background:transparent;--item-group-outer-background:#05070e;--item-group-heading-text-color:#e8eae1;--item-group-heading-text-color-hover:#fff}html[data-theme=colorful] .item:nth-child(1n){color:#eb5cad;border:1px solid #eb5cad}html[data-theme=colorful] .item:nth-child(2n){color:#985ceb;border:1px solid #985ceb}html[data-theme=colorful] .item:nth-child(3n){color:#5c90eb;border:1px solid #5c90eb}html[data-theme=colorful] .item:nth-child(4n){color:#5cdfeb;border:1px solid #5cdfeb}html[data-theme=colorful] .item:nth-child(5n){color:#5ceb8d;border:1px solid #5ceb8d}html[data-theme=colorful] .item:nth-child(6n){color:#afeb5c;border:1px solid #afeb5c}html[data-theme=colorful] .item:nth-child(7n){color:#ebb75c;border:1px solid #ebb75c}html[data-theme=colorful] .item:nth-child(8n){color:#eb615c;border:1px solid #eb615c}html[data-theme=colorful] .tile-title span.text{-webkit-transition:none;transition:none}html[data-theme=colorful] .item:focus,html[data-theme=colorful] .item:hover{opacity:.85;outline:none;background:currentColor}html[data-theme=colorful] .item:focus span,html[data-theme=colorful] .item:hover span{color:#05070e}html[data-theme=colorful] .item:focus svg path,html[data-theme=colorful] .item:hover svg path{fill:#05070e}html[data-theme=colorful] .item:focus i.fab,html[data-theme=colorful] .item:focus i.fad,html[data-theme=colorful] .item:focus i.fal,html[data-theme=colorful] .item:focus i.far,html[data-theme=colorful] .item:focus i.fas,html[data-theme=colorful] .item:hover i.fab,html[data-theme=colorful] .item:hover i.fad,html[data-theme=colorful] .item:hover i.fal,html[data-theme=colorful] .item:hover i.far,html[data-theme=colorful] .item:hover i.fas{color:#05070e}html[data-theme=colorful] h1,html[data-theme=colorful] h2,html[data-theme=colorful] h3,html[data-theme=colorful] h4{font-weight:400}html[data-theme=minimal-dark],html[data-theme=minimal-light]{--font-body:"PTMono-Regular","Courier New",monospace;--font-headings:"PTMono-Regular","Courier New",monospace}html[data-theme=minimal-dark] label.lbl-toggle h3,html[data-theme=minimal-light] label.lbl-toggle h3{font-size:1.8rem}html[data-theme=minimal-dark] .tile-title span.text,html[data-theme=minimal-light] .tile-title span.text{font-size:1.1rem;font-weight:700}html[data-theme=minimal-dark] header,html[data-theme=minimal-light] header{padding:.1rem .5rem}html[data-theme=minimal-dark] header .page-titles h1,html[data-theme=minimal-light] header .page-titles h1{font-size:1.25rem}html[data-theme=minimal-dark] header .page-titles span.subtitle,html[data-theme=minimal-light] header .page-titles span.subtitle{font-size:.8rem}html[data-theme=minimal-dark] header .nav .nav-item,html[data-theme=minimal-light] header .nav .nav-item{padding:.2rem .4rem;-webkit-box-shadow:none;box-shadow:none}html[data-theme=minimal-dark] .item-group-container.orientation-horizontal .collapsable,html[data-theme=minimal-light] .item-group-container.orientation-horizontal .collapsable{border-bottom:1px dashed hsla(0,0%,100%,.2196078431372549);border-radius:0}html[data-theme=material-dark],html[data-theme=material]{--font-body:"Raleway",serif;--font-headings:"Francois One",serif;--curve-factor:4px;--curve-factor-navbar:8px}html[data-theme=material-dark] .collapsable,html[data-theme=material] .collapsable{margin:0;padding:0}html[data-theme=material-dark] .item:not(.size-small),html[data-theme=material] .item:not(.size-small){display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left;overflow:hidden;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:15rem;min-width:15rem;max-height:6rem;margin:.2rem;padding:.5rem}html[data-theme=material-dark] .item:not(.size-small) img,html[data-theme=material] .item:not(.size-small) img{padding:.1rem .25rem}html[data-theme=material-dark] .item:not(.size-small) .tile-title,html[data-theme=material] .item:not(.size-small) .tile-title{height:auto;padding:.1rem .25rem}html[data-theme=material-dark] .item:not(.size-small) .tile-title span.text,html[data-theme=material] .item:not(.size-small) .tile-title span.text{position:relative;font-weight:700;font-size:1.1rem;width:100%}html[data-theme=material-dark] .item:not(.size-small) .tile-title p.description,html[data-theme=material] .item:not(.size-small) .tile-title p.description{display:block;margin:0;white-space:pre-wrap;font-size:.9em;text-overflow:ellipsis}html[data-theme=material-dark] .item:not(.size-small).size-large,html[data-theme=material] .item:not(.size-small).size-large{width:18rem;min-width:18rem;max-height:5rem;margin:.4rem}html[data-theme=material-dark] .item:not(.size-small).size-large img,html[data-theme=material] .item:not(.size-small).size-large img{padding:.2rem .5rem}html[data-theme=material-dark] .tooltip,html[data-theme=material] .tooltip{display:none!important}html[data-theme=material-dark] .orientation-horizontal,html[data-theme=material] .orientation-horizontal{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{display:grid;grid-template-columns:repeat(5,1fr)}@media(max-width:599px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(1,1fr)}}@media(min-width:600px)and (max-width:779px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(2,1fr)}}@media(min-width:780px)and (max-width:1149px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(3,1fr)}}@media(min-width:1150px)and (max-width:1779px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(4,1fr)}}@media(min-width:1780px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(5,1fr)}}@media(min-width:2800px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(6,1fr)}}html[data-theme=material-dark] a.item,html[data-theme=material] a.item{position:relative;overflow:hidden;-webkit-transition:all .2s linear 0s;transition:all .2s linear 0s}html[data-theme=material-dark] a.item div,html[data-theme=material] a.item div{-webkit-transition:all .2s linear 0s;transition:all .2s linear 0s}html[data-theme=material-dark] a.item .overflow-dots,html[data-theme=material] a.item .overflow-dots{display:none}html[data-theme=material-dark] a.item:before,html[data-theme=material] a.item:before{content:"";font-family:FontAwesome;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:0;left:0;height:100%;width:1rem;background:rgba(204,211,221,.5019607843137255);border-radius:0 60% 60% 0;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:left center;transform-origin:left center;-webkit-transition:all .2s linear 0s;transition:all .2s linear 0s;padding:0 .2rem}html[data-theme=material-dark] a.item:focus-within div.bounce,html[data-theme=material-dark] a.item:hover div.bounce,html[data-theme=material] a.item:focus-within div.bounce,html[data-theme=material] a.item:hover div.bounce{text-indent:1rem}html[data-theme=material-dark] a.item:focus-within:before,html[data-theme=material-dark] a.item:hover:before,html[data-theme=material] a.item:focus-within:before,html[data-theme=material] a.item:hover:before{-webkit-transform:scale(1);transform:scale(1);text-indent:0}html[data-theme=material-dark] a.item:focus-within .opening-method-icon,html[data-theme=material-dark] a.item:hover .opening-method-icon,html[data-theme=material] a.item:focus-within .opening-method-icon,html[data-theme=material] a.item:hover .opening-method-icon{display:none}html[data-theme=material-dark] a.item:active,html[data-theme=material] a.item:active{background:hsla(0,0%,78%,.32941176470588235)}html[data-theme=material-dark] a.item span.text,html[data-theme=material] a.item span.text{-webkit-transition:none;transition:none}html[data-theme=material-dark] a.item.size-small,html[data-theme=material] a.item.size-small{padding-left:.5rem;min-width:11rem}html[data-theme=material-dark] a.item.size-large:before,html[data-theme=material] a.item.size-large:before{width:1.5rem}html[data-theme=material-dark] a.item.size-large:hover div:nth-child(2),html[data-theme=material] a.item.size-large:hover div:nth-child(2){text-indent:1.5rem}html[data-theme=material]{--primary:#363636;--background:#f5f5f5;--background-darker:#4285f4;--item-group-outer-background:none;--item-group-shadow:none;--item-group-background:none;--item-background:#fff;--item-background-hover:#fff;--item-shadow:0 1px 3px rgba(0,0,0,0.12156862745098039),0 1px 2px rgba(0,0,0,0.23921568627450981);--item-hover-shadow:0 1px 4px rgba(0,0,0,0.1607843137254902),0 2px 4px rgba(0,0,0,0.16470588235294117);--item-text-color:#363636;--item-group-heading-text-color-hover:#363636;--item-icon-transform-hover:none;--nav-link-background-color:#0c4eba;--nav-link-text-color:#fff;--nav-link-border-color:#0c4eba;--settings-text-color:#363636;--config-code-color:#363636;--config-settings-background:#fff;--config-settings-color:#473f3f;--heading-text-color:#fff;--curve-factor:4px;--curve-factor-navbar:8px;--search-container-background:#4285f4;--welcome-popup-text-color:#f5f5f5;--footer-text-color:hsla(0,0%,96.1%,0.8)}html[data-theme=material] header{background:#4285f4;color:#fff}html[data-theme=material] header .page-titles span.subtitle{text-shadow:none}html[data-theme=material] footer{opacity:1;color:#fff}html[data-theme=material] section.filter-container form label{color:#fff}html[data-theme=material] .prism-editor-wrapper{background:#f5f5f5}html[data-theme=material-dark]{--primary:#08b0bb;--background:#313941;--background-darker:#08b0bb;--settings-background:#092b3a;--settings-text-color:#08b0bb;--item-group-background:none;--item-group-outer-background:none;--item-group-shadow:none;--item-group-padding:5px 0 0;--item-group-heading-text-color:#e0e0e0;--item-group-heading-text-color-hover:#08b0bb;--item-text-color:#e0e0e0;--item-shadow:2px 2px 3px rgba(0,0,0,0.5098039215686274),0 1px 10px rgba(0,0,0,0.25098039215686274);--item-hover-shadow:4px 4px 3px rgba(0,0,0,0.5098039215686274),0 1px 10px rgba(0,0,0,0.25098039215686274);--item-icon-transform:drop-shadow(1px 2px 1px var(--transparent-30)) saturate(0.65);--item-icon-transform-hover:drop-shadow(1px 3px 2px var(--transparent-30)) saturate(2);--item-background:#414b55;--item-background-hover:#414b55;--settings-background:#131a1f;--search-container-background:#131a1f;--search-field-background:#39434c;--heading-text-color:#131a1f;--nav-link-text-color:#08b0bb;--nav-link-background-color:#131a1f;--nav-link-text-color-hover:#08b0bb;--nav-link-background-color-hover:rgba(19,26,31,0.7803921568627451);--nav-link-border-color-hover:transparent;--curve-factor:2px;--curve-factor-navbar:0;--welcome-popup-background:#131a1f;--welcome-popup-text-color:var(--primary);--config-settings-background:#131a1f;--config-settings-color:#41e2ed;--scroll-bar-color:#08b0bb;--scroll-bar-background:#131a1f}html[data-theme=material-dark]::-webkit-scrollbar-thumb{border-left:1px solid #131a1f}html[data-theme=material-dark] .item:active,html[data-theme=material-dark] .item:before{background:#131a1f!important}html[data-theme=minimal-light]{--primary:#a5a5a5;--background:#fff;--background-darker:#14171e;--item-group-outer-background:none;--item-group-shadow:none;--item-group-background:none;--item-background:none;--item-background-hover:#f2f2f2;--item-shadow:none;--item-hover-shadow:none;--item-text-color:#101931;--item-group-heading-text-color-hover:#101931;--settings-text-color:#101931;--config-code-color:#101931;--nav-link-background-color:none;--search-container-background:#fff;--curve-factor:4px;--curve-factor-navbar:8px}html[data-theme=minimal-light] section.filter-container{background:#fff;border-bottom:1px dashed rgba(0,0,0,.2196078431372549)}html[data-theme=minimal-light] section.filter-container input#filter-tiles{border:1px solid #101931}html[data-theme=minimal-dark]{--primary:#a5a5a5;--background:#14171e;--background-darker:#090b0e;--item-group-outer-background:none;--item-group-shadow:none;--item-group-background:none;--item-background:none;--item-background-hover:#090b0e;--item-shadow:none;--item-hover-shadow:none;--item-text-color:#fff;--item-group-heading-text-color-hover:#fff;--settings-text-color:#fff;--config-code-color:#fff;--nav-link-background-color:none;--search-container-background:#14171e;--curve-factor:4px;--curve-factor-navbar:8px;--item-group-heading-text-color:#fff;--item-group-heading-text-color-hover:hsla(0,0%,100%,0.7490196078431373)}html[data-theme=minimal-dark] label.lbl-toggle h3{font-size:1.8rem}html[data-theme=minimal-dark] section.filter-container{background:#14171e;border-bottom:1px dashed hsla(0,0%,100%,.2196078431372549)}html[data-theme=minimal-dark] section.filter-container input#filter-tiles{border:1px solid #fff}@font-face{font-family:Inconsolata;src:url(../fonts/Inconsolata-Light.c8b568b1.ttf)}@font-face{font-family:Raleway;src:url(../fonts/Raleway-Variable.3b5635ac.ttf)}@font-face{font-family:PTMono;src:url(../fonts/PTMono-Regular.0c6b8e07.ttf)}html{--font-body:"Raleway","Trebuchet MS",sans-serif;--font-headings:"Inconsolata","Georgia",sans-serif;--font-monospace:"PTMono","Courier New",monospace;font-size:1rem;font-weight:400;text-decoration:none;background:transparent;vertical-align:baseline}html a,html body,html button,html div,html input,html label,html p,html span{font-family:var(--font-body)}html h1,html h2,html h3,html h4,html h5{font-family:var(--font-headings)}html .jsoneditor *,html .mono *,html code,html pre,html pre *{font-family:var(--font-monospace);font-weight:400}body{background:var(--background);margin:0;padding:0}#app .footer{text-align:center}section[data-v-4039a28b]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;background:-webkit-gradient(linear,left bottom,left top,from(var(--background)),to(var(--background-darker)));background:linear-gradient(0deg,var(--background),var(--background-darker))}form[data-v-4039a28b],section[data-v-4039a28b]{display:-webkit-box;display:-ms-flexbox;display:flex}form[data-v-4039a28b]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:0 0 var(--curve-factor-navbar) 0;padding:0 .2rem .2rem 0;background:var(--search-container-background)}form label[data-v-4039a28b]{color:var(--settings-text-color);margin:.5rem;display:inline}form input[data-v-4039a28b]{display:inline-block;width:200px;height:1rem;padding:.5rem;margin:.5rem;outline:none;border:none;border-radius:var(--curve-factor);background:var(--search-field-background);color:var(--settings-text-color);border:1px solid var(--outline-color)}form input[data-v-4039a28b]:focus{border-color:var(--settings-text-color);opacity:var(--dimming-factor)}form .clear-search[data-v-4039a28b]{position:absolute;color:var(--settings-text-color);margin:.55rem 0 0 -2.2rem;padding:0 .4rem;font-style:normal;font-size:1.5rem;opacity:var(--dimming-factor);border-radius:50px;cursor:pointer}form .clear-search[data-v-4039a28b]:hover{opacity:1;background:var(--background-darker)}@media(min-width:600px)and (max-width:779px){form[data-v-4039a28b]{display:block;text-align:center}}@media(max-width:599px){form[data-v-4039a28b]{-webkit-box-flex:1;-ms-flex:1;flex:1;border-radius:0;text-align:center;padding:.25rem 0;display:block}}.site-meta-container[data-v-772067bb]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:1rem 0;background:var(--config-settings-background);height:calc(100% - 1rem)}.site-meta-container h2[data-v-772067bb]{margin:1rem auto;color:var(--config-settings-color)}div.form[data-v-772067bb]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto 1rem auto;padding-bottom:1rem}div.form[data-v-772067bb]:not(:last-child){border-bottom:1px dashed var(--config-settings-color)}div.form div.add-nav-bar-link[data-v-772067bb]{margin:0 auto}div.form div.row[data-v-772067bb]{margin:.25rem auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;min-width:24rem}div.form div.row input[data-v-772067bb],div.form div.row span[data-v-772067bb]{font-size:1.2rem;color:var(--config-settings-color)}div.form div.row input[data-v-772067bb]{background:none;border:1px solid var(--config-settings-color);border-radius:var(--curve-factor);padding:.25rem .5rem;margin:.5rem;min-width:8rem}div.form div.row input[data-v-772067bb]:focus{-webkit-box-shadow:1px 1px 6px var(--config-settings-color);box-shadow:1px 1px 6px var(--config-settings-color);outline:none}button[data-v-772067bb]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:.5rem auto}button svg[data-v-772067bb]{width:1.2rem;margin:0 .2rem}button.save-button[data-v-772067bb]{padding:.5rem 1rem;font-size:1.2rem;width:24rem;background:var(--config-settings-background);color:var(--config-settings-color);border:1px solid var(--config-settings-color);border-radius:var(--curve-factor);cursor:pointer}button.save-button[data-v-772067bb]:hover{background:var(--config-settings-color);color:var(--config-settings-background)}button.add-new-link[data-v-772067bb]{background:none;text-decoration:underline;font-size:1rem;padding:.25rem .5rem;color:var(--config-settings-color);cursor:pointer;border-radius:3px;border:1px solid transparent}button.add-new-link[data-v-772067bb]:hover{border-color:var(--config-settings-color);text-decoration:none}button.add-new-link[data-v-772067bb]:active{background:var(--config-settings-color);color:var(--config-settings-background);border-color:var(--config-settings-color)}.json-editor-outer{text-align:center}p.note{font-size:.8rem;color:var(--medium-grey);margin:.2rem}p.errors{text-align:left;margin:.5rem auto;width:95%}p.errors ul{list-style:none;padding:0;margin:0}p.errors ul li.type-validation{color:var(--warning)}p.errors ul li.type-validation:before{content:"⚠️"}p.errors ul li.type-parse{color:var(--danger)}p.errors ul li.type-parse:before{content:"❌"}p.errors ul li.type-valid{color:var(--success)}p.errors ul li.type-valid:before{content:"✅"}button.save-button.err{opacity:.8;cursor:default}button.save-button.err:hover{background:var(--config-settings-color);color:var(--config-settings-background);border-color:var(--danger)}.jsoneditor-menu,.pico-modal-header{background:var(--config-settings-background)!important;color:var(--config-settings-color)!important}.jsoneditor-contextmenu .jsoneditor-menu li button{background:var(--config-settings-background);color:var(--config-settings-color)}.jsoneditor-contextmenu .jsoneditor-menu li button.jsoneditor-selected,.jsoneditor-contextmenu .jsoneditor-menu li button.jsoneditor-selected:focus,.jsoneditor-contextmenu .jsoneditor-menu li button.jsoneditor-selected:hover{background:var(--config-settings-color);color:var(--config-settings-background)}div.jsoneditor-search div.jsoneditor-frame{border-radius:var(--curve-factor)}.jsoneditor-poweredBy{display:none}.jsoneditor-tree,pre.jsoneditor-preview{background:#fff;text-align:left}.jsoneditor-jmespath-label{color:var(--config-settings-color)!important}.jsoneditor-jmespath-block.jsoneditor-modal-actions input{background:var(--config-settings-color);color:var(--config-settings-background);border:1px solid var(--config-settings-background);border-radius:var(--curve-factor)}.jsoneditor-jmespath-block.jsoneditor-modal-actions input:hover{background:var(--config-settings-background);color:var(--config-settings-color);border-color:var(--config-settings-color)}div.jsoneditor-jmespath-block textarea#query,textarea.jsoneditor-transform-preview{border:1px solid var(--config-settings-color);border-radius:var(--curve-factor)}button.save-button{padding:.5rem 1rem;margin:.25rem auto;font-size:1.2rem;background:var(--config-settings-color);color:var(--config-settings-background);border:1px solid var(--config-settings-background);border-radius:var(--curve-factor);cursor:pointer}button.save-button:hover{background:var(--config-settings-background);color:var(--config-settings-color);border-color:var(--config-settings-color)}.prism-editor-wrapper{min-height:200px;border:1px solid var(--transparent-70);border-radius:var(--curve-factor);width:90%;margin:.5rem auto;background:var(--transparent-50)}p.quick-note{text-align:left;width:80%;margin:1rem auto;padding:.5rem;border-radius:var(--curve-factor)}.scroll-bar[data-v-00f0c6a7]::-webkit-scrollbar,.tab-item[data-v-00f0c6a7]::-webkit-scrollbar{width:var(--scroll-bar-width);height:var(--scroll-bar-width)}.scroll-bar[data-v-00f0c6a7]::-webkit-scrollbar-track,.tab-item[data-v-00f0c6a7]::-webkit-scrollbar-track{border-radius:var(--curve-factor);background-color:var(--scroll-bar-background)}.scroll-bar[data-v-00f0c6a7]::-webkit-scrollbar-thumb,.tab-item[data-v-00f0c6a7]::-webkit-scrollbar-thumb{background:var(--scroll-bar-color);border-radius:var(--curve-factor)}.bold[data-v-00f0c6a7]{font-weight:700}.light[data-v-00f0c6a7]{font-weight:lighter}.text-left[data-v-00f0c6a7]{text-align:left}.text-right[data-v-00f0c6a7]{text-align:right}.text-center[data-v-00f0c6a7]{text-align:center}.horizontal-center[data-v-00f0c6a7]{margin:0 auto}.border-box[data-v-00f0c6a7]{-webkit-box-sizing:border-box;box-sizing:border-box}.toast-message[data-v-00f0c6a7]{background:var(--toast-background)!important;color:var(--toast-color)!important;border:1px solid var(--toast-color)!important;border-radius:var(--curve-factor)!important;font-size:1.25rem!important}.toast-error[data-v-00f0c6a7]{background:var(--danger)!important;color:var(--white)!important;font-size:1.25rem!important}.toast-success[data-v-00f0c6a7]{background:var(--success)!important;color:var(--white)!important;font-size:1.25rem!important}pre[data-v-00f0c6a7]{color:var(--config-code-color);font-weight:700!important;padding:.5rem 1rem}a.config-button[data-v-00f0c6a7],button.config-button[data-v-00f0c6a7]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.5rem 1rem;margin:.25rem auto;font-size:1.2rem;background:var(--config-settings-background);color:var(--config-settings-color);border:1px solid var(--config-settings-color);border-radius:var(--curve-factor);text-decoration:none;cursor:pointer;margin:.5rem auto;width:18rem}a.config-button svg.button-icon[data-v-00f0c6a7],button.config-button svg.button-icon[data-v-00f0c6a7]{width:1rem;height:1rem;padding:.2rem;margin-right:.5rem}a.config-button svg.button-icon path[data-v-00f0c6a7],button.config-button svg.button-icon path[data-v-00f0c6a7]{fill:var(--config-settings-color)}a.config-button[data-v-00f0c6a7]:hover,button.config-button[data-v-00f0c6a7]:hover{background:var(--config-settings-color);color:var(--config-settings-background)}a.config-button:hover svg path[data-v-00f0c6a7],button.config-button:hover svg path[data-v-00f0c6a7]{fill:var(--config-settings-background)}div.code-container[data-v-00f0c6a7]{background:var(--config-code-background)}div.code-container #conf-yaml span[data-v-00f0c6a7]{font-family:var(--font-monospace),monospace!important}div.code-container #conf-yaml span.hljs-attr[data-v-00f0c6a7]{font-weight:700!important}div.code-container .yaml-action-buttons[data-v-00f0c6a7]{position:absolute;top:.5rem;right:.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border:1px dashed;padding:.5rem;border-radius:4px}div.code-container .yaml-action-buttons h2[data-v-00f0c6a7]{margin:0;text-align:center;color:var(--config-code-color)}div.code-container .yaml-action-buttons a.yaml-button[data-v-00f0c6a7]{padding:.25rem .5rem;font-size:1rem;color:var(--config-code-color);border-radius:var(--curve-factor);cursor:pointer;text-decoration:underline;border:1px solid var(--config-code-background)}div.code-container .yaml-action-buttons a.yaml-button[data-v-00f0c6a7]:hover{color:var(--config-code-color);border-color:var(--config-code-color);text-decoration:none}div.code-container .yaml-action-buttons a.yaml-button[data-v-00f0c6a7]:active{color:var(--config-code-background);background-color:var(--config-settings-color);text-decoration:none}.tab-item[data-v-00f0c6a7]{overflow-y:auto;background:var(--config-settings-background)}.tab-item.main-tab[data-v-00f0c6a7]{min-height:500px}a.hyperlink-wrapper[data-v-00f0c6a7]{margin:0 auto;text-decoration:none}.main-options-container[data-v-00f0c6a7]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-top:2rem;background:var(--config-settings-background);height:calc(100% - 2rem)}.main-options-container h2[data-v-00f0c6a7]{margin:1rem auto;color:var(--config-settings-color)}.config-note[data-v-00f0c6a7]{width:80%;position:absolute;bottom:1rem;left:10%;margin:.5rem auto;padding:.5rem .75rem;border:1px dashed var(--config-settings-color);border-radius:var(--curve-factor);text-align:left;opacity:.95;color:var(--config-settings-color);background:var(--config-settings-background);display:none}.config-note p.sub-title[data-v-00f0c6a7]{font-weight:700;margin:0;display:inline}@media(min-width:780px){.config-note[data-v-00f0c6a7]{display:block}}p.small-screen-note[data-v-00f0c6a7]{margin:.5rem auto;padding:0 .5rem;text-align:center;opacity:.8;font-size:.9rem;color:var(--warning)}@media(max-width:599px){p.small-screen-note[data-v-00f0c6a7]{display:block!important}}.tab__pagination{background:var(--config-settings-background)}.tab__pagination,.tab__pagination .tab__nav__items .tab__nav__item span{color:var(--config-settings-color)}.tab__pagination .tab__nav__items .tab__nav__item:hover{background:var(--config-settings-color)!important}.tab__pagination .tab__nav__items .tab__nav__item:hover span{color:var(--config-settings-background)}.tab__pagination .tab__nav__items .tab__nav__item.active span{font-weight:700;color:var(--config-settings-color)!important}.tab__pagination .tab__nav__items .tab__nav__item.active{border-bottom:2px solid var(--config-settings-color)}.tab__pagination hr.tab__slider{background:var(--config-settings-color)}#conf-yaml .hljs-attr{color:#9c03f5}button[data-v-4bb44f8e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.5rem .75rem;margin:.5rem auto;font-size:1.2rem;min-width:10rem;cursor:pointer}button svg[data-v-4bb44f8e]{width:1.2rem;margin:0 .5rem}button svg g[data-v-4bb44f8e],button svg path[data-v-4bb44f8e]{fill:currentColor}button[data-v-4bb44f8e]{color:var(--primary);background:var(--background);border:1px solid var(--primary);border-radius:var(--curve-factor)}button[data-v-4bb44f8e]:hover{color:var(--background);background:var(--primary);border-color:var(--background)}div.input-container[data-v-5df13ed2]{margin:.25rem auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}div.input-container.vertical[data-v-5df13ed2]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}div.input-container.horizontal[data-v-5df13ed2]{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}div.input-container.horizontal label[data-v-5df13ed2]{margin-right:.25rem}div.input-container input[data-v-5df13ed2]{min-width:10rem;padding:.5rem .75rem;margin:.5rem auto;font-size:1.2rem;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--primary);background:var(--background);border:1px solid var(--primary);border-radius:var(--curve-factor)}div.input-container input[data-v-5df13ed2]:focus{-webkit-box-shadow:1px 1px 6px var(--config-settings-color);box-shadow:1px 1px 6px var(--config-settings-color);outline:none}.scroll-bar[data-v-763657f4]::-webkit-scrollbar,div.cloud-backup-restore-wrapper[data-v-763657f4]::-webkit-scrollbar{width:var(--scroll-bar-width);height:var(--scroll-bar-width)}.scroll-bar[data-v-763657f4]::-webkit-scrollbar-track,div.cloud-backup-restore-wrapper[data-v-763657f4]::-webkit-scrollbar-track{border-radius:var(--curve-factor);background-color:var(--scroll-bar-background)}.scroll-bar[data-v-763657f4]::-webkit-scrollbar-thumb,div.cloud-backup-restore-wrapper[data-v-763657f4]::-webkit-scrollbar-thumb{background:var(--scroll-bar-color);border-radius:var(--curve-factor)}.bold[data-v-763657f4]{font-weight:700}.light[data-v-763657f4]{font-weight:lighter}.text-left[data-v-763657f4]{text-align:left}.text-right[data-v-763657f4]{text-align:right}.text-center[data-v-763657f4]{text-align:center}.horizontal-center[data-v-763657f4]{margin:0 auto}.border-box[data-v-763657f4]{-webkit-box-sizing:border-box;box-sizing:border-box}.toast-message[data-v-763657f4]{background:var(--toast-background)!important;color:var(--toast-color)!important;border:1px solid var(--toast-color)!important;border-radius:var(--curve-factor)!important;font-size:1.25rem!important}.toast-error[data-v-763657f4]{background:var(--danger)!important;color:var(--white)!important;font-size:1.25rem!important}.toast-success[data-v-763657f4]{background:var(--success)!important;color:var(--white)!important;font-size:1.25rem!important}div.cloud-backup-restore-wrapper[data-v-763657f4]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;text-align:center;overflow:auto;height:100%;background:var(--config-settings-background);color:var(--config-settings-color)}div.cloud-backup-restore-wrapper .section[data-v-763657f4]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto 1rem auto;padding:0 .5rem 1rem .5rem}div.cloud-backup-restore-wrapper .section[data-v-763657f4]:first-child{border-bottom:1px dashed var(--config-settings-color)}div.cloud-backup-restore-wrapper .section.intro[data-v-763657f4]{width:100%;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}div.cloud-backup-restore-wrapper .section.intro a[data-v-763657f4]{color:var(--config-settings-color)}div.cloud-backup-restore-wrapper h2[data-v-763657f4]{font-size:2rem}div.cloud-backup-restore-wrapper h3[data-v-763657f4]{font-size:1.6rem}div.cloud-backup-restore-wrapper p.intro[data-v-763657f4]{text-align:left;font-size:1rem;margin:.25rem;padding:.25rem}div.results-view[data-v-763657f4]{width:16rem;margin:.5rem auto;padding:.5rem .75rem;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px dashed var(--config-settings-color);border-radius:var(--curve-factor);text-align:left}div.results-view .backup-id-label[data-v-763657f4],div.results-view .backup-id-value[data-v-763657f4]{display:inline;font-size:1rem;margin-right:.5rem}div.results-view .backup-id-note[data-v-763657f4]{font-size:.8rem;display:block;opacity:.8;margin-top:.5rem}button[data-v-763657f4],input[data-v-763657f4]{color:var(--config-settings-color);border:1px solid var(--config-settings-color);background:none;width:16rem}input[data-v-763657f4]:focus{-webkit-box-shadow:1px 1px 6px var(--config-settings-color);box-shadow:1px 1px 6px var(--config-settings-color)}button[data-v-763657f4]:hover{color:var(--config-settings-background);border:1px solid var(--config-settings-background);background:var(--config-settings-color)}h2[data-v-763657f4],h3[data-v-763657f4]{margin:1rem}.config-options[data-v-437d8549]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;color:var(--settings-text-color)}.config-options svg[data-v-437d8549]{width:1rem;height:1rem;margin:.2rem;padding:.2rem;text-align:center;background:var(--background);border:1px solid currentColor;border-radius:var(--curve-factor);cursor:pointer}.config-options svg path[data-v-437d8549]{fill:var(--settings-text-color)}.config-options svg.selected[data-v-437d8549],.config-options svg[data-v-437d8549]:hover{background:var(--settings-text-color)}.config-options svg.selected path[data-v-437d8549],.config-options svg:hover path[data-v-437d8549]{fill:var(--background)}.vm--modal{-webkit-box-shadow:0 40px 70px -2px rgba(0,0,0,.6),1px 1px 6px var(--primary);box-shadow:0 40px 70px -2px rgba(0,0,0,.6),1px 1px 6px var(--primary);min-width:350px;min-height:600px}.vm--overlay{background:rgba(0,0,0,.5019607843137255)}.v-select{position:relative;font-family:inherit}.v-select,.v-select *{-webkit-box-sizing:border-box;box-sizing:border-box}@-webkit-keyframes vSelectSpinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes vSelectSpinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.vs__fade-enter-active,.vs__fade-leave-active{pointer-events:none;-webkit-transition:opacity .15s cubic-bezier(1,.5,.8,1);transition:opacity .15s cubic-bezier(1,.5,.8,1)}.vs__fade-enter,.vs__fade-leave-to{opacity:0}.vs--disabled .vs__clear,.vs--disabled .vs__dropdown-toggle,.vs--disabled .vs__open-indicator,.vs--disabled .vs__search,.vs--disabled .vs__selected{cursor:not-allowed;background-color:#f8f8f8}.v-select[dir=rtl] .vs__actions{padding:0 3px 0 6px}.v-select[dir=rtl] .vs__clear{margin-left:6px;margin-right:0}.v-select[dir=rtl] .vs__deselect{margin-left:0;margin-right:2px}.v-select[dir=rtl] .vs__dropdown-menu{text-align:right}.vs__dropdown-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0 0 4px 0;background:none;border:1px solid rgba(60,60,60,.26);border-radius:4px;white-space:normal}.vs__dropdown-toggle,.vs__selected-options{display:-webkit-box;display:-ms-flexbox;display:flex}.vs__selected-options{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:0 2px;position:relative}.vs__actions{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:4px 6px 0 3px}.vs--searchable .vs__dropdown-toggle{cursor:text}.vs--unsearchable .vs__dropdown-toggle{cursor:pointer}.vs--open .vs__dropdown-toggle{border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0}.vs__open-indicator{fill:rgba(60,60,60,.5);-webkit-transform:scale(1);transform:scale(1);-webkit-transition:-webkit-transform .15s cubic-bezier(1,-.115,.975,.855);transition:-webkit-transform .15s cubic-bezier(1,-.115,.975,.855);transition:transform .15s cubic-bezier(1,-.115,.975,.855);transition:transform .15s cubic-bezier(1,-.115,.975,.855),-webkit-transform .15s cubic-bezier(1,-.115,.975,.855);-webkit-transition-timing-function:cubic-bezier(1,-.115,.975,.855);transition-timing-function:cubic-bezier(1,-.115,.975,.855)}.vs--open .vs__open-indicator{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}.vs--loading .vs__open-indicator{opacity:0}.vs__clear{fill:rgba(60,60,60,.5);padding:0;border:0;background-color:transparent;cursor:pointer;margin-right:8px}.vs__dropdown-menu{display:block;-webkit-box-sizing:border-box;box-sizing:border-box;position:absolute;top:calc(100% - 1px);left:0;z-index:1000;padding:5px 0;margin:0;width:100%;max-height:350px;min-width:160px;overflow-y:auto;-webkit-box-shadow:0 3px 6px 0 rgba(0,0,0,.15);box-shadow:0 3px 6px 0 rgba(0,0,0,.15);border:1px solid rgba(60,60,60,.26);border-top-style:none;border-radius:0 0 4px 4px;text-align:left;list-style:none;background:#fff}.vs__no-options{text-align:center}.vs__dropdown-option{line-height:1.42857143;display:block;padding:3px 20px;clear:both;color:#333;white-space:nowrap}.vs__dropdown-option:hover{cursor:pointer}.vs__dropdown-option--highlight{background:#5897fb;color:#fff}.vs__dropdown-option--disabled{background:inherit;color:rgba(60,60,60,.5)}.vs__dropdown-option--disabled:hover{cursor:inherit}.vs__selected{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#f0f0f0;border:1px solid rgba(60,60,60,.26);border-radius:4px;color:#333;line-height:1.4;margin:4px 2px 0 2px;padding:0 .25em;z-index:0}.vs__deselect{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-left:4px;padding:0;border:0;cursor:pointer;background:none;fill:rgba(60,60,60,.5);text-shadow:0 1px 0 #fff}.vs--single .vs__selected{background-color:transparent;border-color:transparent}.vs--single.vs--open .vs__selected{position:absolute;opacity:.4}.vs--single.vs--searching .vs__selected{display:none}.vs__search::-webkit-search-cancel-button{display:none}.vs__search::-ms-clear,.vs__search::-webkit-search-decoration,.vs__search::-webkit-search-results-button,.vs__search::-webkit-search-results-decoration{display:none}.vs__search,.vs__search:focus{-webkit-appearance:none;-moz-appearance:none;appearance:none;line-height:1.4;font-size:1em;border:1px solid transparent;border-left:none;outline:none;margin:4px 0 0 0;padding:0 7px;background:none;-webkit-box-shadow:none;box-shadow:none;width:0;max-width:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;z-index:1}.vs__search::-webkit-input-placeholder{color:inherit}.vs__search::-moz-placeholder{color:inherit}.vs__search:-ms-input-placeholder{color:inherit}.vs__search::-ms-input-placeholder{color:inherit}.vs__search::placeholder{color:inherit}.vs--unsearchable .vs__search{opacity:1}.vs--unsearchable:not(.vs--disabled) .vs__search:hover{cursor:pointer}.vs--single.vs--searching:not(.vs--open):not(.vs--loading) .vs__search{opacity:.2}.vs__spinner{-ms-flex-item-align:center;align-self:center;opacity:0;font-size:5px;text-indent:-9999em;overflow:hidden;border-top:.9em solid hsla(0,0%,39.2%,.1);border-right:.9em solid hsla(0,0%,39.2%,.1);border-bottom:.9em solid hsla(0,0%,39.2%,.1);border-left:.9em solid rgba(60,60,60,.45);-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-animation:vSelectSpinner 1.1s linear infinite;animation:vSelectSpinner 1.1s linear infinite;-webkit-transition:opacity .1s;transition:opacity .1s}.vs__spinner,.vs__spinner:after{border-radius:50%;width:5em;height:5em}.vs--loading .vs__spinner{opacity:1}.theme-dropdown div.vs__dropdown-toggle{border-color:var(--settings-text-color);border-radius:var(--curve-factor);min-width:10rem;height:1.8rem;font-size:.85rem;cursor:pointer}.theme-dropdown li.vs__dropdown-option,.theme-dropdown span.vs__selected{color:var(--settings-text-color);text-transform:capitalize}.theme-dropdown svg.vs__open-indicator{fill:var(--settings-text-color)}.theme-dropdown ul.vs__dropdown-menu{width:auto;background:var(--background);z-index:5}.theme-dropdown li.vs__dropdown-option--highlight{background:var(--settings-text-color);color:var(--background)}.theme-dropdown button.vs__clear{display:none}.theme-selector-section{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;height:100%}.theme-selector-section span.theme-label{font-size:1rem;color:var(--settings-text-color);margin:1px 0 2px 0}.display-options[data-v-c819d738],span.options-label[data-v-c819d738]{color:var(--settings-text-color)}.display-options svg[data-v-c819d738]{width:1rem;height:1rem;margin:.2rem;padding:.2rem;text-align:center;background:var(--background);border:1px solid currentColor;border-radius:var(--curve-factor);cursor:pointer}.display-options svg path[data-v-c819d738]{fill:var(--settings-text-color)}.display-options svg.selected[data-v-c819d738],.display-options svg[data-v-c819d738]:hover{background:var(--settings-text-color)}.display-options svg.selected path[data-v-c819d738],.display-options svg:hover path[data-v-c819d738]{fill:var(--background)}.display-options[data-v-58966274],span.options-label[data-v-58966274]{color:var(--settings-text-color)}.display-options svg[data-v-58966274]{width:1rem;height:1rem;margin:.2rem;padding:.2rem;text-align:center;background:var(--background);border:1px solid currentColor;border-radius:var(--curve-factor);cursor:pointer}.display-options svg path[data-v-58966274]{fill:var(--settings-text-color)}.display-options svg.selected[data-v-58966274],.display-options svg[data-v-58966274]:hover{background:var(--settings-text-color)}.display-options svg.selected path[data-v-58966274],.display-options svg:hover path[data-v-58966274]{fill:var(--background)}.kb-sc-info[data-v-c5f17d9a]{position:fixed;width:30em;bottom:0;right:10px;margin:.5em;padding:.1em .3em;z-index:6;border-radius:12px;border:1px solid var(--welcome-popup-background);-webkit-box-shadow:2px 1px 5px #130f23;box-shadow:2px 1px 5px #130f23;border:1px solid var(--welcome-popup-text-color);color:var(--welcome-popup-text-color);background:var(--welcome-popup-background);cursor:default;opacity:.94}@media(max-width:599px){.kb-sc-info[data-v-c5f17d9a]{display:none}}.kb-sc-info h5[data-v-c5f17d9a]{position:absolute;top:-35px;left:20px;border:1px solid var(--welcome-popup-text-color);color:var(--welcome-popup-text-color);background:var(--welcome-popup-background);padding:4px;border-radius:var(--curve-factor)}.kb-sc-info .close[data-v-c5f17d9a]{float:right;border-radius:20px;width:1em;padding:0 0 6px 6px;height:1em;background:var(--transparent-50);margin-top:3px;border:1px solid transparent;cursor:pointer}.kb-sc-info .close[data-v-c5f17d9a]:hover{border:1px solid var(--welcome-popup-text-color);opacity:var(--dimming-factor)}.slide-fade-enter-active[data-v-c5f17d9a]{-webkit-transition:all 1s ease;transition:all 1s ease}.slide-fade-leave-active[data-v-c5f17d9a]{-webkit-transition:all .8s cubic-bezier(.93,.01,.89,.5);transition:all .8s cubic-bezier(.93,.01,.89,.5)}.slide-fade-enter[data-v-c5f17d9a],.slide-fade-leave-to[data-v-c5f17d9a]{-webkit-transform:translateY(35em);transform:translateY(35em);opacity:0}section[data-v-0a85c63b]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;background:-webkit-gradient(linear,left bottom,left top,from(var(--background)),to(var(--background-darker)));background:linear-gradient(0deg,var(--background),var(--background-darker));-webkit-box-shadow:var(--settings-container-shadow);box-shadow:var(--settings-container-shadow)}.options-outer[data-v-0a85c63b]{position:relative;-ms-flex:1;flex:1}.options-container[data-v-0a85c63b],.options-outer[data-v-0a85c63b]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;background:var(--settings-background)}.options-container[data-v-0a85c63b]{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-ms-flex:1;flex:1;padding:.5rem 1.5rem .5rem 1rem;border-radius:var(--curve-factor-navbar) 0 0}.options-container div[data-v-0a85c63b]{margin-left:.5rem;opacity:var(--dimming-factor);opacity:1}.options-container div[data-v-0a85c63b]:hover{opacity:1}.options-container.hide[data-v-0a85c63b]{display:none}@media(max-width:399px){.options-container[data-v-0a85c63b]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}}.show-hide-container[data-v-0a85c63b]{display:-webkit-box;display:-ms-flexbox;display:flex;background:var(--settings-background);color:var(--settings-text-color);width:1.5rem;position:absolute;top:4px;right:4px}.show-hide-container.show-btn[data-v-0a85c63b]{width:2rem;top:.5rem;right:.5rem}@media(max-width:599px){.show-hide-container.show-btn[data-v-0a85c63b]{top:-3rem!important}}.show-hide-container button[data-v-0a85c63b]{width:100%;padding:2px 2px 0 2px;margin:2px;border-radius:var(--curve-factor);height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;background:none;border:none;color:var(--settings-text-color);cursor:pointer;opacity:var(--dimming-factor)}.show-hide-container:hover button[data-v-0a85c63b]{background:var(--settings-text-color);color:var(--settings-background)}svg.logout-icon[data-v-0a85c63b]{width:1rem;height:1rem;margin:.35rem .2rem;padding:.2rem;text-align:center;background:var(--background);border:1px solid var(--settings-text-color);border-radius:var(--curve-factor);cursor:pointer}svg.logout-icon path[data-v-0a85c63b]{fill:var(--settings-text-color)}svg.logout-icon.selected[data-v-0a85c63b],svg.logout-icon[data-v-0a85c63b]:hover{background:var(--settings-text-color)}svg.logout-icon.selected path[data-v-0a85c63b],svg.logout-icon:hover path[data-v-0a85c63b]{fill:var(--background)}@media(min-width:600px)and (max-width:779px){section[data-v-0a85c63b]{display:block;margin:0 auto;background:none}section .options-container[data-v-0a85c63b]{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}}.tile-icon{width:60px}.tile-icon.broken{display:none}i.fab,i.fad,i.fal,i.far,i.fas{font-size:2rem;color:currentColor;margin:1px auto 4px}i.fab.small,i.fad.small,i.fal.small,i.far.small,i.fas.small{font-size:1.5rem}i.fab.large,i.fad.large,i.fal.large,i.far.large,i.fas.large{font-size:3rem}object.tile-icon{width:55px;height:55px}object.tile-icon svg,object.tile-icon svg g,object.tile-icon svg g path{fill:currentColor}.missing-image{width:3.5rem}.missing-image path{fill:currentColor}.opening-method-icon svg[data-v-17201835]{position:absolute;width:1rem;margin:2px}.opening-method-icon svg path[data-v-17201835]{fill:currentColor}.opening-method-icon.top svg[data-v-17201835]{top:0}.opening-method-icon.bottom svg[data-v-17201835]{bottom:0}.opening-method-icon.left svg[data-v-17201835]{left:0}.opening-method-icon.right svg[data-v-17201835]{right:0}.opening-method-icon.short svg[data-v-17201835]{width:.8rem;margin:0}.opening-method-icon.transparent svg[data-v-17201835]{opacity:.5}.item{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;color:var(--item-text-color);vertical-align:middle;margin:.5rem;background:var(--item-background);text-align:center;padding:2px;outline:2px solid transparent;border:1px solid var(--outline-color);border-radius:var(--curve-factor);-webkit-box-shadow:var(--item-shadow);box-shadow:var(--item-shadow);cursor:pointer;text-decoration:none}.item:hover{-webkit-box-shadow:var(--item-hover-shadow);box-shadow:var(--item-hover-shadow);background:var(--item-background-hover);position:relative}.item:focus{outline:2px solid var(--primary)}.item.short{height:18px}.tile-title{white-space:nowrap;text-overflow:ellipsis;min-width:120px;height:30px;overflow:hidden;position:relative;padding:0;z-index:2}.tile-title span.text{position:absolute;white-space:nowrap;-webkit-transition:1s;transition:1s;float:left;left:0}.tile-title:not(.is-overflowing) span.text{width:100%}.tile-title .overflow-dots{opacity:0}.tile-title.is-overflowing span.text{overflow:hidden}.tile-title.is-overflowing .overflow-dots{display:block;opacity:1;background:var(--item-background);position:absolute;z-index:5;right:0;-webkit-transition:opacity .1s ease-in;transition:opacity .1s ease-in}.opening-method-icon{display:none}.item:focus .opening-method-icon,.item:hover .opening-method-icon{display:block}.item:focus .tile-title.is-overflowing .overflow-dots,.item:hover .tile-title.is-overflowing .overflow-dots{opacity:0}.item:focus .tile-title.is-overflowing span.text,.item:hover .tile-title.is-overflowing span.text{-webkit-transform:translateX(calc(100px - 100%));transform:translateX(calc(100px - 100%))}.item:focus .tile-icon,.item:focus .tile-svg,.item:hover .tile-icon,.item:hover .tile-svg{-webkit-filter:var(--item-icon-transform-hover);filter:var(--item-icon-transform-hover)}.item.size-small{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:2rem}.item.size-small div img,.item.size-small div svg.missing-image{width:2rem}.item.size-small .tile-title{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;min-height:1.2rem}.item.size-small .tile-title span.text{text-align:left;padding-left:10%}.item.size-medium{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:auto}.item.size-medium div img,.item.size-medium div svg.missing-image{width:2.5rem;margin-bottom:.25rem}.item.size-medium .tile-title{min-width:100px}.item.size-large{height:100px}.item p.description{display:none}.item:before{display:none;font-family:FontAwesome;content:var(--open-icon,"")!important}.tooltip{padding:.2rem .5rem;background:rgba(11,16,33,.8);border:1px solid #0b1021;border-radius:3px;color:#fff;max-width:250px}.tooltip-arrow{border-width:5px 5px 0 5px;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important;bottom:-11px;left:calc(50% - 5px);margin-top:0;margin-bottom:0;width:0;height:0;border-style:solid;position:absolute;margin:5px;border-color:rgba(11,16,33,.8);z-index:3}.disabled-link{pointer-events:none}.collapsable[data-v-3f92488c]{padding:var(--item-group-padding);margin:10px;border-radius:var(--curve-factor);background:var(--item-group-outer-background);-webkit-box-shadow:var(--item-group-shadow);box-shadow:var(--item-group-shadow);height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:100%;width:-webkit-fill-available;width:-moz-available;width:stretch;grid-row-start:span 1;grid-column-start:span 1}.collapsable.row-2[data-v-3f92488c]{grid-row-start:span 2}.collapsable.row-3[data-v-3f92488c]{grid-row-start:span 3}.collapsable.row-4[data-v-3f92488c]{grid-row-start:span 4}@media(min-width:780px){.collapsable.col-2[data-v-3f92488c],.collapsable.col-3[data-v-3f92488c],.collapsable.col-4[data-v-3f92488c]{grid-column-start:span 2}}@media(min-width:1150px){.collapsable.col-2[data-v-3f92488c]{grid-column-start:span 2}.collapsable.col-3[data-v-3f92488c],.collapsable.col-4[data-v-3f92488c]{grid-column-start:span 3}}@media(min-width:1780px){.collapsable.col-2[data-v-3f92488c]{grid-column-start:span 2}.collapsable.col-3[data-v-3f92488c]{grid-column-start:span 3}.collapsable.col-4[data-v-3f92488c]{grid-column-start:span 4}}.collapsable .wrap-collabsible[data-v-3f92488c]{margin-bottom:1.2rem 0}.collapsable input[type=checkbox][data-v-3f92488c]{display:none}.collapsable label.lbl-toggle[data-v-3f92488c]{outline:none;display:block;padding:.25rem;cursor:pointer;border-radius:var(--curve-factor);-webkit-transition:all .25s ease-out;transition:all .25s ease-out;text-align:left;color:var(--item-group-heading-text-color)}.collapsable label.lbl-toggle h3[data-v-3f92488c]{margin:0;padding:0;display:inline}.collapsable label.lbl-toggle .section-icon[data-v-3f92488c]{display:inline;margin-right:.5rem}.collapsable .lbl-toggle[data-v-3f92488c]:hover{color:var(--item-group-heading-text-color-hover)}.collapsable .lbl-toggle[data-v-3f92488c]:before{content:" ";display:inline-block;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid currentColor;vertical-align:middle;margin-right:.7rem;-webkit-transform:translateY(-2px);transform:translateY(-2px);-webkit-transition:-webkit-transform .2s ease-out;transition:-webkit-transform .2s ease-out;transition:transform .2s ease-out;transition:transform .2s ease-out,-webkit-transform .2s ease-out}.collapsable .toggle:checked+.lbl-toggle[data-v-3f92488c]:before{-webkit-transform:rotate(90deg) translateX(-3px);transform:rotate(90deg) translateX(-3px)}.collapsable .collapsible-content[data-v-3f92488c]{max-height:0;overflow:hidden;-webkit-transition:max-height .25s ease-in-out;transition:max-height .25s ease-in-out;background:var(--item-group-background);border-radius:0 0 var(--curve-factor) var(--curve-factor)}.collapsable .toggle:checked+.lbl-toggle+.collapsible-content[data-v-3f92488c]{max-height:3000px}.collapsable .toggle:checked+.lbl-toggle[data-v-3f92488c]{border-bottom-right-radius:0;border-bottom-left-radius:0}.collapsable .collapsible-content .content-inner[data-v-3f92488c]{padding:.5rem}.frame{width:100%;height:100%;border:none}.no-url{margin:4rem auto;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;font-size:2rem;padding:.5rem;border:1px dashed red;border-radius:3px;background:#f4f2f2}.close-button{position:absolute;right:0;padding:.5rem;border:0;border-radius:0 0 0 10px;background:var(--primary);color:var(--background);border-left:1px solid var(--primary);border-bottom:1px solid var(--primary);cursor:pointer}.close-button:hover{background:var(--background);color:var(--primary)}.scroll-bar[data-v-32dc7ad3]::-webkit-scrollbar,.there-are-items.item-group-grid[data-v-32dc7ad3]::-webkit-scrollbar{width:var(--scroll-bar-width);height:var(--scroll-bar-width)}.scroll-bar[data-v-32dc7ad3]::-webkit-scrollbar-track,.there-are-items.item-group-grid[data-v-32dc7ad3]::-webkit-scrollbar-track{border-radius:var(--curve-factor);background-color:var(--scroll-bar-background)}.scroll-bar[data-v-32dc7ad3]::-webkit-scrollbar-thumb,.there-are-items.item-group-grid[data-v-32dc7ad3]::-webkit-scrollbar-thumb{background:var(--scroll-bar-color);border-radius:var(--curve-factor)}.bold[data-v-32dc7ad3]{font-weight:700}.light[data-v-32dc7ad3]{font-weight:lighter}.text-left[data-v-32dc7ad3]{text-align:left}.text-right[data-v-32dc7ad3]{text-align:right}.text-center[data-v-32dc7ad3]{text-align:center}.horizontal-center[data-v-32dc7ad3]{margin:0 auto}.border-box[data-v-32dc7ad3]{-webkit-box-sizing:border-box;box-sizing:border-box}.toast-message[data-v-32dc7ad3]{background:var(--toast-background)!important;color:var(--toast-color)!important;border:1px solid var(--toast-color)!important;border-radius:var(--curve-factor)!important;font-size:1.25rem!important}.toast-error[data-v-32dc7ad3]{background:var(--danger)!important;color:var(--white)!important;font-size:1.25rem!important}.toast-success[data-v-32dc7ad3]{background:var(--success)!important;color:var(--white)!important;font-size:1.25rem!important}.no-items[data-v-32dc7ad3]{width:100px;margin:0 auto;padding:.8rem;text-align:center;cursor:default;border-radius:var(--curve-factor);background:rgba(96,125,139,.2);color:var(--primary);-webkit-box-shadow:var(--item-shadow);box-shadow:var(--item-shadow)}.there-are-items[data-v-32dc7ad3]{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.there-are-items.item-group-grid[data-v-32dc7ad3]{display:grid;overflow:auto}@media(max-width:599px){.there-are-items.item-group-grid[data-v-32dc7ad3]{grid-template-columns:repeat(1,1fr)}}@media(min-width:600px)and (max-width:779px){.there-are-items.item-group-grid[data-v-32dc7ad3]{grid-template-columns:repeat(2,1fr)}}@media(min-width:780px)and (max-width:1149px){.there-are-items.item-group-grid[data-v-32dc7ad3]{grid-template-columns:repeat(2,1fr)}}@media(min-width:1150px)and (max-width:1779px){.there-are-items.item-group-grid[data-v-32dc7ad3]{grid-template-columns:repeat(3,1fr)}}@media(min-width:1780px){.there-are-items.item-group-grid[data-v-32dc7ad3]{grid-template-columns:repeat(4,1fr)}}@media(min-width:2800px){.there-are-items.item-group-grid[data-v-32dc7ad3]{grid-template-columns:repeat(5,1fr)}}.orientation-horizontal[data-v-32dc7ad3]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.orientation-horizontal .there-are-items[data-v-32dc7ad3]{display:grid;grid-template-columns:repeat(5,1fr)}@media(max-width:599px){.orientation-horizontal .there-are-items[data-v-32dc7ad3]{grid-template-columns:repeat(2,1fr)}}@media(min-width:600px)and (max-width:779px){.orientation-horizontal .there-are-items[data-v-32dc7ad3]{grid-template-columns:repeat(4,1fr)}}@media(min-width:780px)and (max-width:1149px){.orientation-horizontal .there-are-items[data-v-32dc7ad3]{grid-template-columns:repeat(6,1fr)}}@media(min-width:1150px)and (max-width:1779px){.orientation-horizontal .there-are-items[data-v-32dc7ad3]{grid-template-columns:repeat(8,1fr)}}@media(min-width:1780px){.orientation-horizontal .there-are-items[data-v-32dc7ad3]{grid-template-columns:repeat(10,1fr)}}@media(min-width:2800px){.orientation-horizontal .there-are-items[data-v-32dc7ad3]{grid-template-columns:repeat(12,1fr)}}.item-group-container[data-v-14317bc9]::-webkit-scrollbar,.scroll-bar[data-v-14317bc9]::-webkit-scrollbar{width:var(--scroll-bar-width);height:var(--scroll-bar-width)}.item-group-container[data-v-14317bc9]::-webkit-scrollbar-track,.scroll-bar[data-v-14317bc9]::-webkit-scrollbar-track{border-radius:var(--curve-factor);background-color:var(--scroll-bar-background)}.item-group-container[data-v-14317bc9]::-webkit-scrollbar-thumb,.scroll-bar[data-v-14317bc9]::-webkit-scrollbar-thumb{background:var(--scroll-bar-color);border-radius:var(--curve-factor)}.bold[data-v-14317bc9]{font-weight:700}.light[data-v-14317bc9]{font-weight:lighter}.text-left[data-v-14317bc9]{text-align:left}.text-right[data-v-14317bc9]{text-align:right}.text-center[data-v-14317bc9]{text-align:center}.horizontal-center[data-v-14317bc9]{margin:0 auto}.border-box[data-v-14317bc9]{-webkit-box-sizing:border-box;box-sizing:border-box}.toast-message[data-v-14317bc9]{background:var(--toast-background)!important;color:var(--toast-color)!important;border:1px solid var(--toast-color)!important;border-radius:var(--curve-factor)!important;font-size:1.25rem!important}.toast-error[data-v-14317bc9]{background:var(--danger)!important;color:var(--white)!important;font-size:1.25rem!important}.toast-success[data-v-14317bc9]{background:var(--success)!important;color:var(--white)!important;font-size:1.25rem!important}.home[data-v-14317bc9]{padding-bottom:1px;background:var(--background);min-height:calc(100vh - 126px)}.item-group-container[data-v-14317bc9]{display:grid;gap:.5rem;margin:0 auto;max-width:90%;overflow:auto}@media(min-width:1780px){.item-group-container[data-v-14317bc9]{max-width:1400px}}.item-group-container.orientation-horizontal[data-v-14317bc9]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.item-group-container.orientation-vertical[data-v-14317bc9]{max-width:100%}@media(min-width:780px){.item-group-container.orientation-vertical[data-v-14317bc9]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}}@media(max-width:599px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(1,1fr)}}@media(min-width:600px)and (max-width:779px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(2,1fr)}}@media(min-width:780px)and (max-width:1149px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(2,1fr)}}@media(min-width:1150px)and (max-width:1779px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(3,1fr)}}@media(min-width:1780px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(4,1fr)}}@media(min-width:2800px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(5,1fr)}}.item-group-container .no-results[data-v-14317bc9]{display:none}.no-data[data-v-14317bc9]{font-size:2rem;color:var(--background);background:hsla(0,0%,100%,.9215686274509803);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:2rem auto;padding:.5rem 1rem;border-radius:var(--curve-factor)}section.filter-container[data-v-14317bc9]{border-bottom:1px solid var(--outline-color)}@media(max-width:599px){section.filter-container[data-v-14317bc9]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.login-page{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;min-height:800px}.login-page,.login-page .login-form{display:-webkit-box;display:-ms-flexbox;display:flex}.login-page .login-form{background:var(--login-form-background);color:var(--login-form-color);border:1px solid var(--login-form-color);border-radius:var(--curve-factor);padding:2rem;margin:2rem auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.login-page .login-form h2.login-title{font-size:3rem;margin:0 0 1rem 0;text-align:center}.login-page .login-form .login-field input,.login-page .login-form Button.login-button{width:18rem;margin:.5rem auto;font-size:1.4rem;padding:.5rem 1rem}.login-page .login-form .login-field input{color:var(--login-form-color)}.login-page .login-form .login-field input,.login-page .login-form Button.login-button{border-color:var(--login-form-background-secondary);background:var(--login-form-background-secondary)}.login-page .login-form Button.login-button:hover{border-color:var(--login-form-color);color:var(--login-form-background-secondary);background:var(--login-form-color)}.login-page .login-form Button.login-button:active,.login-page .login-form Button.login-button:focus{-webkit-box-shadow:1px 1px 6px var(--login-form-color);box-shadow:1px 1px 6px var(--login-form-color)}.login-page .login-form p.login-error-message{font-size:1rem;text-align:center}.login-page .login-form p.login-error-message.waiting{color:var(--login-form-color)}.login-page .login-form p.login-error-message.success{color:var(--success)}.login-page .login-form p.login-error-message.error{color:var(--warning)}.bounce-enter-active{-webkit-animation:bounce-in .25s;animation:bounce-in .25s}.bounce-leave-active{animation:bounce-in .25s reverse}@-webkit-keyframes bounce-in{0%{-webkit-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.25);transform:scale(1.25)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounce-in{0%{-webkit-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.25);transform:scale(1.25)}to{-webkit-transform:scale(1);transform:scale(1)}}
\ No newline at end of file
+@import url(https://fonts.googleapis.com/css2?family=Francois+One&family=Roboto:wght@300&display=swap);@import url(https://fonts.googleapis.com/css2?family=Cutive+Mono&family=VT323&display=swap);@import url(https://fonts.googleapis.com/css2?family=Podkova:wght@500&display=swap);@import url(https://fonts.googleapis.com/css2?family=Allerta+Stencil&display=swap);@import url(https://fonts.googleapis.com/css2?family=Sniglet&display=swap);.page-titles[data-v-290d21a8]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.page-titles h1[data-v-290d21a8]{color:var(--heading-text-color);font-size:2.5rem;margin:0}.page-titles span.subtitle[data-v-290d21a8]{color:var(--heading-text-color);font-style:italic;text-shadow:1px 1px 2px #130f23;opacity:var(--dimming-factor)}@media(max-width:599px){.page-titles[data-v-290d21a8]{text-align:center;padding:.25rem 0}}nav[data-v-68c1bd5c]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}nav .nav-item[data-v-68c1bd5c]{display:inline-block;padding:.75rem .5rem;margin:.5rem;outline:none;border:none;border-radius:var(--curve-factor);-webkit-box-shadow:1px 1px 2px #232323;box-shadow:1px 1px 2px #232323;color:var(--nav-link-text-color);background:var(--nav-link-background-color);border:1px solid var(--nav-link-border-color);text-decoration:none}nav .nav-item.router-link-active[data-v-68c1bd5c],nav .nav-item[data-v-68c1bd5c]:hover{color:var(--nav-link-text-color-hover);background:var(--nav-link-background-color-hover);border:1px solid var(--nav-link-border-color-hover)}header[data-v-70a33270]{margin:0;padding:.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;background:var(--background-darker);-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:start;align-content:flex-start}@media(max-width:599px){header[data-v-70a33270]{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}footer[data-v-7bd89e4f]{padding:.25rem;text-align:center;color:var(--medium-grey);opacity:var(--dimming-factor);background:var(--background-darker);margin-top:1.5rem;border-top:1px solid var(--outline-color)}footer a[data-v-7bd89e4f]{color:var(--footer-text-color)}footer a[data-v-7bd89e4f]:hover{color:var(--footer-text-color-link)}div#loading[data-v-a7bc1de6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:absolute;height:100%;width:100%;z-index:7;background:var(--loading-screen-background);color:var(--loading-screen-color)}div#loading.hide[data-v-a7bc1de6]{display:none}div#loading .inner-container[data-v-a7bc1de6]{text-align:center}div#loading p[data-v-a7bc1de6]{font-size:6vw;display:inline;margin:0 auto}div#loading h2[data-v-a7bc1de6]{opacity:.35;font-size:16vw;margin:0}div#loading .dots-cont[data-v-a7bc1de6]{display:inline}div#loading .dots-cont .dot[data-v-a7bc1de6]{width:4px;height:4px;background:var(--loading-screen-color);display:inline-block;border-radius:35%;right:0;bottom:0;margin:0 2.5px;position:relative;-webkit-animation:jump-data-v-a7bc1de6 1s infinite;animation:jump-data-v-a7bc1de6 1s infinite}div#loading .dots-cont .dot.dot-1[data-v-a7bc1de6]{-webkit-animation-delay:.1s;animation-delay:.1s}div#loading .dots-cont .dot.dot-2[data-v-a7bc1de6]{-webkit-animation-delay:.2s;animation-delay:.2s}div#loading .dots-cont .dot.dot-3[data-v-a7bc1de6]{-webkit-animation-delay:.3s;animation-delay:.3s}div#loading .dots-cont .dot.dot-4[data-v-a7bc1de6]{-webkit-animation-delay:.4s;animation-delay:.4s}@-webkit-keyframes jump-data-v-a7bc1de6{0%{bottom:0}20%{bottom:5px}40%{bottom:0}}@keyframes jump-data-v-a7bc1de6{0%{bottom:0}20%{bottom:5px}40%{bottom:0}}.slide-fade-leave-active[data-v-a7bc1de6]{-webkit-transition:all .2s cubic-bezier(1,.9,.7,.4);transition:all .2s cubic-bezier(1,.9,.7,.4)}.slide-fade-enter[data-v-a7bc1de6],.slide-fade-leave-to[data-v-a7bc1de6]{-webkit-transform:translateY(-200px);transform:translateY(-200px);opacity:0}.scroll-bar::-webkit-scrollbar,html::-webkit-scrollbar{width:var(--scroll-bar-width);height:var(--scroll-bar-width)}.scroll-bar::-webkit-scrollbar-track,html::-webkit-scrollbar-track{border-radius:var(--curve-factor);background-color:var(--scroll-bar-background)}.scroll-bar::-webkit-scrollbar-thumb,html::-webkit-scrollbar-thumb{background:var(--scroll-bar-color);border-radius:var(--curve-factor)}.bold{font-weight:700}.light{font-weight:lighter}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.horizontal-center{margin:0 auto}.border-box{-webkit-box-sizing:border-box;box-sizing:border-box}.toast-message{background:var(--toast-background)!important;color:var(--toast-color)!important;border:1px solid var(--toast-color)!important;border-radius:var(--curve-factor)!important;font-size:1.25rem!important}.toast-error{background:var(--danger)!important}.toast-error,.toast-success{color:var(--white)!important;font-size:1.25rem!important}.toast-success{background:var(--success)!important}html{margin:0;padding:0;-webkit-transition:all 1s;transition:all 1s;margin-top:-3px;-webkit-box-sizing:border-box;box-sizing:border-box}html a,html button,html input[type=button]{cursor:pointer}:root{--primary:#5cabca;--background:#0b1021;--background-darker:#05070e;--info:#04e4f4;--success:#20e253;--warning:#f6f000;--danger:#f80363;--neutral:#272f4d;--white:#fff;--black:#000;--item-group-background:rgba(11,16,33,0.8);--medium-grey:#5e6474;--item-background:rgba(96,125,139,0.2);--item-background-hover:rgba(96,125,139,0.30196078431372547);--transparent-70:rgba(0,0,0,0.7019607843137254);--transparent-50:rgba(0,0,0,0.5019607843137255);--transparent-30:rgba(0,0,0,0.30196078431372547);--transparent-white-70:hsla(0,0%,100%,0.7019607843137254);--transparent-white-50:hsla(0,0%,100%,0.5019607843137255);--transparent-white-30:hsla(0,0%,100%,0.30196078431372547);--outline-color:none;--curve-factor:5px;--curve-factor-navbar:16px;--dimming-factor:0.7;--scroll-bar-width:8px;--item-group-padding:5px;--item-shadow:1px 1px 2px #130f23;--item-hover-shadow:1px 2px 4px #373737;--item-icon-transform:drop-shadow(2px 4px 6px var(--transparent-50)) saturate(0.65);--item-icon-transform-hover:drop-shadow(4px 8px 3px var(--transparent-50)) saturate(2);--item-group-shadow:var(--item-shadow);--settings-container-shadow:none;--heading-text-color:var(--primary);--nav-link-text-color:var(--primary);--nav-link-background-color:rgba(96,125,139,0.2);--nav-link-text-color-hover:var(--primary);--nav-link-background-color-hover:rgba(96,125,139,0.2);--nav-link-border-color:transparent;--nav-link-border-color-hover:var(--primary);--item-text-color:var(--primary);--item-group-outer-background:var(--primary);--item-group-heading-text-color:var(--item-group-background);--item-group-heading-text-color-hover:var(--background);--settings-background:var(--background);--settings-text-color:var(--primary);--search-container-background:var(--background-darker);--search-field-background:var(--background);--footer-text-color:var(--medium-grey);--footer-text-color-link:var(--primary);--welcome-popup-background:var(--background-darker);--welcome-popup-text-color:var(--primary);--config-code-background:#fff;--config-code-color:var(--background);--config-settings-color:var(--primary);--config-settings-background:var(--background-darker);--toast-background:var(--primary);--toast-color:var(--background);--scroll-bar-color:var(--primary);--scroll-bar-background:var(--background-darker);--loading-screen-color:var(--primary);--loading-screen-background:var(--background);--login-form-color:var(--primary);--login-form-background:var(--background);--login-form-background-secondary:var(--background-darker)}html[data-theme=callisto]{--item-group-background:#0b1021;--item-background:#141b33;--item-background-hover:#060913;--item-hover-shadow:0 1px 3px rgba(0,204,180,0.7019607843137254),0 1px 2px rgba(0,204,180,0.7490196078431373);--primary:#00ccb4;--font-body:"Inconsolata","Georgia",sans-serif}html[data-theme=callisto],html[data-theme=thebe]{--background:#141b33;--background-darker:#060913;--font-headings:"PTMono","Courier New",monospace}html[data-theme=thebe]{--item-group-background:#0b1021;--item-background:#141b33;--item-background-hover:#060913;--item-hover-shadow:0 1px 3px rgba(150,96,236,0.7019607843137254),0 1px 2px rgba(150,96,236,0.7490196078431373);--primary:#9660ec;--item-group-outer-background:#9660ec linear-gradient(45deg,#9660ec 2%,#5f60ea 51%,#9660ec)}html[data-theme=dracula]{--font-headings:"Allerta Stencil",sans-serif;--background:#44475a;--background-darker:#282a36;--item-group-background:#282a36;--item-background:none;--item-background-hover:#191b22;--item-shadow:none;--item-hover-shadow:none;--settings-text-color:#98ace9;--primary:#6272a4}html[data-theme=dracula] .collapsable:nth-child(1n){background:#8be9fd}html[data-theme=dracula] .collapsable:nth-child(1n) .item{border:1px solid #8be9fd;color:#8be9fd}html[data-theme=dracula] .collapsable:nth-child(2n){background:#50fa7b}html[data-theme=dracula] .collapsable:nth-child(2n) .item{border:1px solid #50fa7b;color:#50fa7b}html[data-theme=dracula] .collapsable:nth-child(3n){background:#ffb86c}html[data-theme=dracula] .collapsable:nth-child(3n) .item{border:1px solid #ffb86c;color:#ffb86c}html[data-theme=dracula] .collapsable:nth-child(4n){background:#ff79c6}html[data-theme=dracula] .collapsable:nth-child(4n) .item{border:1px solid #ff79c6;color:#ff79c6}html[data-theme=dracula] .collapsable:nth-child(4n){background:#bd93f9}html[data-theme=dracula] .collapsable:nth-child(4n) .item{border:1px solid #bd93f9;color:#bd93f9}html[data-theme=bee]{--primary:#c3eb5c}html[data-theme=bee],html[data-theme=raspberry-jam]{--item-background:#1c2636;--item-group-background:#0b1021;--nav-link-background-color:#0b1021;--font-headings:"Sniglet",cursive}html[data-theme=raspberry-jam]{--primary:#eb2d6c;--config-code-background:#0b1021;--config-code-color:#eb2d6c}html[data-theme=tiger]{--primary:#f58233;--item-background:#1c2636;--item-group-background:#0b1021;--nav-link-background-color:#0b1021;--font-headings:"Sniglet",cursive}html[data-theme=matrix-red]{--primary:red;--outline-color:red}html[data-theme=matrix-red],html[data-theme=matrix]{--background:#000;--background-darker:#000;--curve-factor:0px;--font-body:"Cutive Mono",monospace;--font-headings:"VT323",monospace}html[data-theme=matrix]{--primary:#2bca2b;--outline-color:#2bca2b}html[data-theme=matrix] .prism-editor-wrapper.my-editor{border:1px solid var(--primary)}html[data-theme=hacker-girl]{--background:#000;--background-darker:#000;--primary:#e435f1;--outline-color:#e435f1;--curve-factor:0px;--font-body:"Cutive Mono",monospace;--font-headings:"VT323",monospace}html[data-theme=high-contrast-light]{--background:#fff;--background-darker:#fff;--item-group-background:#fff;--item-background:#fff;--primary:#000;--outline-color:#000;--curve-factor:0px;--config-code-color:#000;--font-headings:"PTMono","Courier New",monospace}html[data-theme=high-contrast-dark]{--background:#000;--background-darker:#000;--item-group-background:#000;--primary:#fff;--outline-color:#fff;--curve-factor:0px;--font-headings:"PTMono","Courier New",monospace}html[data-theme=nord]{--primary:#d8dee9;--background:#3b4252;--background-darker:#2e3440;--item-background:#434c5e;--item-background-hover:#4c566a}html[data-theme=nord] .collapsable:nth-child(1n){background:#bf616a}html[data-theme=nord] .collapsable:nth-child(2n){background:#d08770}html[data-theme=nord] .collapsable:nth-child(3n){background:#ebcb8b}html[data-theme=nord] .collapsable:nth-child(4n){background:#a3be8c}html[data-theme=nord-frost]{--primary:#d8dee9;--background:#3b4252;--background-darker:#2e3440;--item-background:#434c5e;--item-background-hover:#4c566a}html[data-theme=nord-frost] .collapsable:nth-child(1n){background:#8fbcbb}html[data-theme=nord-frost] .collapsable:nth-child(2n){background:#88c0d0}html[data-theme=nord-frost] .collapsable:nth-child(3n){background:#81a1c1}html[data-theme=nord-frost] .collapsable:nth-child(4n){background:#5e81ac}html[data-theme=material-original]{--primary:#29b6f6;--settings-text-color:#01579b;--background:#e2e1e0;--background-darker:#01579b;--settings-background:#01579b;--item-group-shadow:none;--item-group-outer-background:none;--item-group-background:none;--item-background:#fff;--item-background-hover:#fff;--settings-background:#29b6f6;--search-container-background:#29b6f6;--curve-factor:2px;--curve-factor-navbar:0;--item-group-padding:5px 0 0;--item-shadow:0 1px 3px rgba(0,0,0,0.12156862745098039),0 1px 2px rgba(0,0,0,0.23921568627450981);--item-hover-shadow:0 1px 4px rgba(0,0,0,0.1607843137254902),0 2px 4px rgba(0,0,0,0.16470588235294117);--item-icon-transform:drop-shadow(1px 2px 1px var(--transparent-30)) saturate(0.65);--item-icon-transform-hover:drop-shadow(1px 3px 2px var(--transparent-30)) saturate(2);--settings-container-shadow:0 1px 3px rgba(0,0,0,0.3686274509803922),0 1px 2px rgba(0,0,0,0.5215686274509804);--welcome-popup-background:#01579b;--welcome-popup-text-color:#fff;--config-code-color:#000;--item-group-heading-text-color-hover:#01579b;--config-settings-background:#01579b;--config-settings-color:#fff;--heading-text-color:#fff}html[data-theme=material-dark-original]{--primary:#08b0bb;--settings-text-color:#08b0bb;--background:#39434c;--background-darker:#08b0bb;--settings-background:#092b3a;--item-group-background:#333c43;--item-background:#414b55;--item-background-hover:#414b55;--settings-background:#131a1f;--search-container-background:#131a1f;--search-field-background:#39434c;--heading-text-color:#131a1f;--nav-link-text-color:#08b0bb;--nav-link-background-color:#131a1f;--nav-link-text-color-hover:#08b0bb;--nav-link-background-color-hover:rgba(19,26,31,0.7803921568627451);--nav-link-border-color-hover:transparent;--curve-factor:2px;--curve-factor-navbar:0;--item-group-padding:5px 0 0;--item-shadow:2px 2px 3px rgba(0,0,0,0.5098039215686274),0 1px 10px rgba(0,0,0,0.25098039215686274);--item-hover-shadow:4px 4px 3px rgba(0,0,0,0.5098039215686274),0 1px 10px rgba(0,0,0,0.25098039215686274);--item-icon-transform:drop-shadow(1px 2px 1px var(--transparent-30)) saturate(0.65);--item-icon-transform-hover:drop-shadow(1px 3px 2px var(--transparent-30)) saturate(2);--welcome-popup-background:#131a1f;--welcome-popup-text-color:var(--primary);--config-settings-background:#131a1f;--config-settings-color:#41e2ed;--scroll-bar-color:#08b0bb;--scroll-bar-background:#131a1f}html[data-theme=material-dark-original]::-webkit-scrollbar-thumb{border-left:1px solid #131a1f}html[data-theme=colorful]{--font-headings:"Podkova",monospace;--primary:#e8eae1;--background:#0b1021;--item-background:#05070e;--item-background-hover:#0b1021;--item-group-background:transparent;--item-group-outer-background:#05070e;--item-group-heading-text-color:#e8eae1;--item-group-heading-text-color-hover:#fff}html[data-theme=colorful] .item:nth-child(1n){color:#eb5cad;border:1px solid #eb5cad}html[data-theme=colorful] .item:nth-child(2n){color:#985ceb;border:1px solid #985ceb}html[data-theme=colorful] .item:nth-child(3n){color:#5c90eb;border:1px solid #5c90eb}html[data-theme=colorful] .item:nth-child(4n){color:#5cdfeb;border:1px solid #5cdfeb}html[data-theme=colorful] .item:nth-child(5n){color:#5ceb8d;border:1px solid #5ceb8d}html[data-theme=colorful] .item:nth-child(6n){color:#afeb5c;border:1px solid #afeb5c}html[data-theme=colorful] .item:nth-child(7n){color:#ebb75c;border:1px solid #ebb75c}html[data-theme=colorful] .item:nth-child(8n){color:#eb615c;border:1px solid #eb615c}html[data-theme=colorful] .tile-title span.text{-webkit-transition:none;transition:none}html[data-theme=colorful] .item:focus,html[data-theme=colorful] .item:hover{opacity:.85;outline:none;background:currentColor}html[data-theme=colorful] .item:focus span,html[data-theme=colorful] .item:hover span{color:#05070e}html[data-theme=colorful] .item:focus svg path,html[data-theme=colorful] .item:hover svg path{fill:#05070e}html[data-theme=colorful] .item:focus i.fab,html[data-theme=colorful] .item:focus i.fad,html[data-theme=colorful] .item:focus i.fal,html[data-theme=colorful] .item:focus i.far,html[data-theme=colorful] .item:focus i.fas,html[data-theme=colorful] .item:hover i.fab,html[data-theme=colorful] .item:hover i.fad,html[data-theme=colorful] .item:hover i.fal,html[data-theme=colorful] .item:hover i.far,html[data-theme=colorful] .item:hover i.fas{color:#05070e}html[data-theme=colorful] h1,html[data-theme=colorful] h2,html[data-theme=colorful] h3,html[data-theme=colorful] h4{font-weight:400}html[data-theme=minimal-dark],html[data-theme=minimal-light]{--font-body:"PTMono-Regular","Courier New",monospace;--font-headings:"PTMono-Regular","Courier New",monospace}html[data-theme=minimal-dark] label.lbl-toggle h3,html[data-theme=minimal-light] label.lbl-toggle h3{font-size:1.8rem}html[data-theme=minimal-dark] .tile-title span.text,html[data-theme=minimal-light] .tile-title span.text{font-size:1.1rem;font-weight:700}html[data-theme=minimal-dark] header,html[data-theme=minimal-light] header{padding:.1rem .5rem}html[data-theme=minimal-dark] header .page-titles h1,html[data-theme=minimal-light] header .page-titles h1{font-size:1.25rem}html[data-theme=minimal-dark] header .page-titles span.subtitle,html[data-theme=minimal-light] header .page-titles span.subtitle{font-size:.8rem}html[data-theme=minimal-dark] header .nav .nav-item,html[data-theme=minimal-light] header .nav .nav-item{padding:.2rem .4rem;-webkit-box-shadow:none;box-shadow:none}html[data-theme=minimal-dark] .item-group-container.orientation-horizontal .collapsable,html[data-theme=minimal-light] .item-group-container.orientation-horizontal .collapsable{border-bottom:1px dashed hsla(0,0%,100%,.2196078431372549);border-radius:0}html[data-theme=material-dark],html[data-theme=material]{--font-body:"Raleway",serif;--font-headings:"Francois One",serif;--curve-factor:4px;--curve-factor-navbar:8px}html[data-theme=material-dark] .collapsable,html[data-theme=material] .collapsable{margin:0;padding:0}html[data-theme=material-dark] .item:not(.size-small),html[data-theme=material] .item:not(.size-small){display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left;overflow:hidden;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:15rem;min-width:15rem;max-height:6rem;margin:.2rem;padding:.5rem}html[data-theme=material-dark] .item:not(.size-small) img,html[data-theme=material] .item:not(.size-small) img{padding:.1rem .25rem}html[data-theme=material-dark] .item:not(.size-small) .tile-title,html[data-theme=material] .item:not(.size-small) .tile-title{height:auto;padding:.1rem .25rem}html[data-theme=material-dark] .item:not(.size-small) .tile-title span.text,html[data-theme=material] .item:not(.size-small) .tile-title span.text{position:relative;font-weight:700;font-size:1.1rem;width:100%}html[data-theme=material-dark] .item:not(.size-small) .tile-title p.description,html[data-theme=material] .item:not(.size-small) .tile-title p.description{display:block;margin:0;white-space:pre-wrap;font-size:.9em;text-overflow:ellipsis}html[data-theme=material-dark] .item:not(.size-small).size-large,html[data-theme=material] .item:not(.size-small).size-large{width:18rem;min-width:18rem;max-height:5rem;margin:.4rem}html[data-theme=material-dark] .item:not(.size-small).size-large img,html[data-theme=material] .item:not(.size-small).size-large img{padding:.2rem .5rem}html[data-theme=material-dark] .tooltip,html[data-theme=material] .tooltip{display:none!important}html[data-theme=material-dark] .orientation-horizontal,html[data-theme=material] .orientation-horizontal{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{display:grid;grid-template-columns:repeat(5,1fr)}@media(max-width:599px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(1,1fr)}}@media(min-width:600px)and (max-width:779px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(2,1fr)}}@media(min-width:780px)and (max-width:1149px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(3,1fr)}}@media(min-width:1150px)and (max-width:1779px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(4,1fr)}}@media(min-width:1780px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(5,1fr)}}@media(min-width:2800px){html[data-theme=material-dark] .orientation-horizontal .there-are-items,html[data-theme=material] .orientation-horizontal .there-are-items{grid-template-columns:repeat(6,1fr)}}html[data-theme=material-dark] a.item,html[data-theme=material] a.item{position:relative;overflow:hidden;-webkit-transition:all .2s linear 0s;transition:all .2s linear 0s}html[data-theme=material-dark] a.item div,html[data-theme=material] a.item div{-webkit-transition:all .2s linear 0s;transition:all .2s linear 0s}html[data-theme=material-dark] a.item .overflow-dots,html[data-theme=material] a.item .overflow-dots{display:none}html[data-theme=material-dark] a.item:before,html[data-theme=material] a.item:before{content:"";font-family:FontAwesome;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:0;left:0;height:100%;width:1rem;background:rgba(204,211,221,.5019607843137255);border-radius:0 60% 60% 0;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:left center;transform-origin:left center;-webkit-transition:all .2s linear 0s;transition:all .2s linear 0s;padding:0 .2rem}html[data-theme=material-dark] a.item:focus-within div.bounce,html[data-theme=material-dark] a.item:hover div.bounce,html[data-theme=material] a.item:focus-within div.bounce,html[data-theme=material] a.item:hover div.bounce{text-indent:1rem}html[data-theme=material-dark] a.item:focus-within:before,html[data-theme=material-dark] a.item:hover:before,html[data-theme=material] a.item:focus-within:before,html[data-theme=material] a.item:hover:before{-webkit-transform:scale(1);transform:scale(1);text-indent:0}html[data-theme=material-dark] a.item:focus-within .opening-method-icon,html[data-theme=material-dark] a.item:hover .opening-method-icon,html[data-theme=material] a.item:focus-within .opening-method-icon,html[data-theme=material] a.item:hover .opening-method-icon{display:none}html[data-theme=material-dark] a.item:active,html[data-theme=material] a.item:active{background:hsla(0,0%,78%,.32941176470588235)}html[data-theme=material-dark] a.item span.text,html[data-theme=material] a.item span.text{-webkit-transition:none;transition:none}html[data-theme=material-dark] a.item.size-small,html[data-theme=material] a.item.size-small{padding-left:.5rem;min-width:11rem}html[data-theme=material-dark] a.item.size-large:before,html[data-theme=material] a.item.size-large:before{width:1.5rem}html[data-theme=material-dark] a.item.size-large:hover div:nth-child(2),html[data-theme=material] a.item.size-large:hover div:nth-child(2){text-indent:1.5rem}html[data-theme=material]{--primary:#363636;--background:#f5f5f5;--background-darker:#4285f4;--item-group-outer-background:none;--item-group-shadow:none;--item-group-background:none;--item-background:#fff;--item-background-hover:#fff;--item-shadow:0 1px 3px rgba(0,0,0,0.12156862745098039),0 1px 2px rgba(0,0,0,0.23921568627450981);--item-hover-shadow:0 1px 4px rgba(0,0,0,0.1607843137254902),0 2px 4px rgba(0,0,0,0.16470588235294117);--item-text-color:#363636;--item-group-heading-text-color-hover:#363636;--item-icon-transform-hover:none;--nav-link-background-color:#0c4eba;--nav-link-text-color:#fff;--nav-link-border-color:#0c4eba;--settings-text-color:#363636;--config-code-color:#363636;--config-settings-background:#fff;--config-settings-color:#473f3f;--heading-text-color:#fff;--curve-factor:4px;--curve-factor-navbar:8px;--search-container-background:#4285f4;--welcome-popup-text-color:#f5f5f5;--footer-text-color:hsla(0,0%,96.1%,0.8)}html[data-theme=material] header{background:#4285f4;color:#fff}html[data-theme=material] header .page-titles span.subtitle{text-shadow:none}html[data-theme=material] footer{opacity:1;color:#fff}html[data-theme=material] section.filter-container form label{color:#fff}html[data-theme=material] .prism-editor-wrapper{background:#f5f5f5}html[data-theme=material-dark]{--primary:#08b0bb;--background:#313941;--background-darker:#08b0bb;--settings-background:#092b3a;--settings-text-color:#08b0bb;--item-group-background:none;--item-group-outer-background:none;--item-group-shadow:none;--item-group-padding:5px 0 0;--item-group-heading-text-color:#e0e0e0;--item-group-heading-text-color-hover:#08b0bb;--item-text-color:#e0e0e0;--item-shadow:2px 2px 3px rgba(0,0,0,0.5098039215686274),0 1px 10px rgba(0,0,0,0.25098039215686274);--item-hover-shadow:4px 4px 3px rgba(0,0,0,0.5098039215686274),0 1px 10px rgba(0,0,0,0.25098039215686274);--item-icon-transform:drop-shadow(1px 2px 1px var(--transparent-30)) saturate(0.65);--item-icon-transform-hover:drop-shadow(1px 3px 2px var(--transparent-30)) saturate(2);--item-background:#414b55;--item-background-hover:#414b55;--settings-background:#131a1f;--search-container-background:#131a1f;--search-field-background:#39434c;--heading-text-color:#131a1f;--nav-link-text-color:#08b0bb;--nav-link-background-color:#131a1f;--nav-link-text-color-hover:#08b0bb;--nav-link-background-color-hover:rgba(19,26,31,0.7803921568627451);--nav-link-border-color-hover:transparent;--curve-factor:2px;--curve-factor-navbar:0;--welcome-popup-background:#131a1f;--welcome-popup-text-color:var(--primary);--config-settings-background:#131a1f;--config-settings-color:#41e2ed;--scroll-bar-color:#08b0bb;--scroll-bar-background:#131a1f}html[data-theme=material-dark]::-webkit-scrollbar-thumb{border-left:1px solid #131a1f}html[data-theme=material-dark] .item:active,html[data-theme=material-dark] .item:before{background:#131a1f!important}html[data-theme=minimal-light]{--primary:#a5a5a5;--background:#fff;--background-darker:#14171e;--item-group-outer-background:none;--item-group-shadow:none;--item-group-background:none;--item-background:none;--item-background-hover:#f2f2f2;--item-shadow:none;--item-hover-shadow:none;--item-text-color:#101931;--item-group-heading-text-color-hover:#101931;--settings-text-color:#101931;--config-code-color:#101931;--nav-link-background-color:none;--search-container-background:#fff;--curve-factor:4px;--curve-factor-navbar:8px}html[data-theme=minimal-light] section.filter-container{background:#fff;border-bottom:1px dashed rgba(0,0,0,.2196078431372549)}html[data-theme=minimal-light] section.filter-container input#filter-tiles{border:1px solid #101931}html[data-theme=minimal-dark]{--primary:#a5a5a5;--background:#14171e;--background-darker:#090b0e;--item-group-outer-background:none;--item-group-shadow:none;--item-group-background:none;--item-background:none;--item-background-hover:#090b0e;--item-shadow:none;--item-hover-shadow:none;--item-text-color:#fff;--item-group-heading-text-color-hover:#fff;--settings-text-color:#fff;--config-code-color:#fff;--nav-link-background-color:none;--search-container-background:#14171e;--curve-factor:4px;--curve-factor-navbar:8px;--item-group-heading-text-color:#fff;--item-group-heading-text-color-hover:hsla(0,0%,100%,0.7490196078431373)}html[data-theme=minimal-dark] label.lbl-toggle h3{font-size:1.8rem}html[data-theme=minimal-dark] section.filter-container{background:#14171e;border-bottom:1px dashed hsla(0,0%,100%,.2196078431372549)}html[data-theme=minimal-dark] section.filter-container input#filter-tiles{border:1px solid #fff}@font-face{font-family:Inconsolata;src:url(../fonts/Inconsolata-Light.c8b568b1.ttf)}@font-face{font-family:Raleway;src:url(../fonts/Raleway-Variable.3b5635ac.ttf)}@font-face{font-family:PTMono;src:url(../fonts/PTMono-Regular.0c6b8e07.ttf)}html{--font-body:"Raleway","Trebuchet MS",sans-serif;--font-headings:"Inconsolata","Georgia",sans-serif;--font-monospace:"PTMono","Courier New",monospace;font-size:1rem;font-weight:400;text-decoration:none;background:transparent;vertical-align:baseline}html a,html body,html button,html div,html input,html label,html p,html span{font-family:var(--font-body)}html h1,html h2,html h3,html h4,html h5{font-family:var(--font-headings)}html .jsoneditor *,html .mono *,html code,html pre,html pre *{font-family:var(--font-monospace);font-weight:400}body{background:var(--background);margin:0;padding:0}#app .footer{text-align:center}section[data-v-4039a28b]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;background:-webkit-gradient(linear,left bottom,left top,from(var(--background)),to(var(--background-darker)));background:linear-gradient(0deg,var(--background),var(--background-darker))}form[data-v-4039a28b],section[data-v-4039a28b]{display:-webkit-box;display:-ms-flexbox;display:flex}form[data-v-4039a28b]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:0 0 var(--curve-factor-navbar) 0;padding:0 .2rem .2rem 0;background:var(--search-container-background)}form label[data-v-4039a28b]{color:var(--settings-text-color);margin:.5rem;display:inline}form input[data-v-4039a28b]{display:inline-block;width:200px;height:1rem;padding:.5rem;margin:.5rem;outline:none;border:none;border-radius:var(--curve-factor);background:var(--search-field-background);color:var(--settings-text-color);border:1px solid var(--outline-color)}form input[data-v-4039a28b]:focus{border-color:var(--settings-text-color);opacity:var(--dimming-factor)}form .clear-search[data-v-4039a28b]{position:absolute;color:var(--settings-text-color);margin:.55rem 0 0 -2.2rem;padding:0 .4rem;font-style:normal;font-size:1.5rem;opacity:var(--dimming-factor);border-radius:50px;cursor:pointer}form .clear-search[data-v-4039a28b]:hover{opacity:1;background:var(--background-darker)}@media(min-width:600px)and (max-width:779px){form[data-v-4039a28b]{display:block;text-align:center}}@media(max-width:599px){form[data-v-4039a28b]{-webkit-box-flex:1;-ms-flex:1;flex:1;border-radius:0;text-align:center;padding:.25rem 0;display:block}}.site-meta-container[data-v-772067bb]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:1rem 0;background:var(--config-settings-background);height:calc(100% - 1rem)}.site-meta-container h2[data-v-772067bb]{margin:1rem auto;color:var(--config-settings-color)}div.form[data-v-772067bb]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto 1rem auto;padding-bottom:1rem}div.form[data-v-772067bb]:not(:last-child){border-bottom:1px dashed var(--config-settings-color)}div.form div.add-nav-bar-link[data-v-772067bb]{margin:0 auto}div.form div.row[data-v-772067bb]{margin:.25rem auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;min-width:24rem}div.form div.row input[data-v-772067bb],div.form div.row span[data-v-772067bb]{font-size:1.2rem;color:var(--config-settings-color)}div.form div.row input[data-v-772067bb]{background:none;border:1px solid var(--config-settings-color);border-radius:var(--curve-factor);padding:.25rem .5rem;margin:.5rem;min-width:8rem}div.form div.row input[data-v-772067bb]:focus{-webkit-box-shadow:1px 1px 6px var(--config-settings-color);box-shadow:1px 1px 6px var(--config-settings-color);outline:none}button[data-v-772067bb]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:.5rem auto}button svg[data-v-772067bb]{width:1.2rem;margin:0 .2rem}button.save-button[data-v-772067bb]{padding:.5rem 1rem;font-size:1.2rem;width:24rem;background:var(--config-settings-background);color:var(--config-settings-color);border:1px solid var(--config-settings-color);border-radius:var(--curve-factor);cursor:pointer}button.save-button[data-v-772067bb]:hover{background:var(--config-settings-color);color:var(--config-settings-background)}button.add-new-link[data-v-772067bb]{background:none;text-decoration:underline;font-size:1rem;padding:.25rem .5rem;color:var(--config-settings-color);cursor:pointer;border-radius:3px;border:1px solid transparent}button.add-new-link[data-v-772067bb]:hover{border-color:var(--config-settings-color);text-decoration:none}button.add-new-link[data-v-772067bb]:active{background:var(--config-settings-color);color:var(--config-settings-background);border-color:var(--config-settings-color)}.json-editor-outer{text-align:center}p.note{font-size:.8rem;color:var(--medium-grey);margin:.2rem}p.errors{text-align:left;margin:.5rem auto;width:95%}p.errors ul{list-style:none;padding:0;margin:0}p.errors ul li.type-validation{color:var(--warning)}p.errors ul li.type-validation:before{content:"⚠️"}p.errors ul li.type-parse{color:var(--danger)}p.errors ul li.type-parse:before{content:"❌"}p.errors ul li.type-valid{color:var(--success)}p.errors ul li.type-valid:before{content:"✅"}button.save-button.err{opacity:.8;cursor:default}button.save-button.err:hover{background:var(--config-settings-color);color:var(--config-settings-background);border-color:var(--danger)}.jsoneditor-menu,.pico-modal-header{background:var(--config-settings-background)!important;color:var(--config-settings-color)!important}.jsoneditor-contextmenu .jsoneditor-menu li button{background:var(--config-settings-background);color:var(--config-settings-color)}.jsoneditor-contextmenu .jsoneditor-menu li button.jsoneditor-selected,.jsoneditor-contextmenu .jsoneditor-menu li button.jsoneditor-selected:focus,.jsoneditor-contextmenu .jsoneditor-menu li button.jsoneditor-selected:hover{background:var(--config-settings-color);color:var(--config-settings-background)}div.jsoneditor-search div.jsoneditor-frame{border-radius:var(--curve-factor)}.jsoneditor-poweredBy{display:none}.jsoneditor-tree,pre.jsoneditor-preview{background:#fff;text-align:left}.jsoneditor-jmespath-label{color:var(--config-settings-color)!important}.jsoneditor-jmespath-block.jsoneditor-modal-actions input{background:var(--config-settings-color);color:var(--config-settings-background);border:1px solid var(--config-settings-background);border-radius:var(--curve-factor)}.jsoneditor-jmespath-block.jsoneditor-modal-actions input:hover{background:var(--config-settings-background);color:var(--config-settings-color);border-color:var(--config-settings-color)}div.jsoneditor-jmespath-block textarea#query,textarea.jsoneditor-transform-preview{border:1px solid var(--config-settings-color);border-radius:var(--curve-factor)}button.save-button{padding:.5rem 1rem;margin:.25rem auto;font-size:1.2rem;background:var(--config-settings-color);color:var(--config-settings-background);border:1px solid var(--config-settings-background);border-radius:var(--curve-factor);cursor:pointer}button.save-button:hover{background:var(--config-settings-background);color:var(--config-settings-color);border-color:var(--config-settings-color)}.prism-editor-wrapper{min-height:200px;border:1px solid var(--transparent-70);border-radius:var(--curve-factor);width:90%;margin:.5rem auto;background:var(--transparent-50)}p.quick-note{text-align:left;width:80%;margin:1rem auto;padding:.5rem;border-radius:var(--curve-factor)}.scroll-bar[data-v-00f0c6a7]::-webkit-scrollbar,.tab-item[data-v-00f0c6a7]::-webkit-scrollbar{width:var(--scroll-bar-width);height:var(--scroll-bar-width)}.scroll-bar[data-v-00f0c6a7]::-webkit-scrollbar-track,.tab-item[data-v-00f0c6a7]::-webkit-scrollbar-track{border-radius:var(--curve-factor);background-color:var(--scroll-bar-background)}.scroll-bar[data-v-00f0c6a7]::-webkit-scrollbar-thumb,.tab-item[data-v-00f0c6a7]::-webkit-scrollbar-thumb{background:var(--scroll-bar-color);border-radius:var(--curve-factor)}.bold[data-v-00f0c6a7]{font-weight:700}.light[data-v-00f0c6a7]{font-weight:lighter}.text-left[data-v-00f0c6a7]{text-align:left}.text-right[data-v-00f0c6a7]{text-align:right}.text-center[data-v-00f0c6a7]{text-align:center}.horizontal-center[data-v-00f0c6a7]{margin:0 auto}.border-box[data-v-00f0c6a7]{-webkit-box-sizing:border-box;box-sizing:border-box}.toast-message[data-v-00f0c6a7]{background:var(--toast-background)!important;color:var(--toast-color)!important;border:1px solid var(--toast-color)!important;border-radius:var(--curve-factor)!important;font-size:1.25rem!important}.toast-error[data-v-00f0c6a7]{background:var(--danger)!important;color:var(--white)!important;font-size:1.25rem!important}.toast-success[data-v-00f0c6a7]{background:var(--success)!important;color:var(--white)!important;font-size:1.25rem!important}pre[data-v-00f0c6a7]{color:var(--config-code-color);font-weight:700!important;padding:.5rem 1rem}a.config-button[data-v-00f0c6a7],button.config-button[data-v-00f0c6a7]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.5rem 1rem;margin:.25rem auto;font-size:1.2rem;background:var(--config-settings-background);color:var(--config-settings-color);border:1px solid var(--config-settings-color);border-radius:var(--curve-factor);text-decoration:none;cursor:pointer;margin:.5rem auto;width:18rem}a.config-button svg.button-icon[data-v-00f0c6a7],button.config-button svg.button-icon[data-v-00f0c6a7]{width:1rem;height:1rem;padding:.2rem;margin-right:.5rem}a.config-button svg.button-icon path[data-v-00f0c6a7],button.config-button svg.button-icon path[data-v-00f0c6a7]{fill:var(--config-settings-color)}a.config-button[data-v-00f0c6a7]:hover,button.config-button[data-v-00f0c6a7]:hover{background:var(--config-settings-color);color:var(--config-settings-background)}a.config-button:hover svg path[data-v-00f0c6a7],button.config-button:hover svg path[data-v-00f0c6a7]{fill:var(--config-settings-background)}div.code-container[data-v-00f0c6a7]{background:var(--config-code-background)}div.code-container #conf-yaml span[data-v-00f0c6a7]{font-family:var(--font-monospace),monospace!important}div.code-container #conf-yaml span.hljs-attr[data-v-00f0c6a7]{font-weight:700!important}div.code-container .yaml-action-buttons[data-v-00f0c6a7]{position:absolute;top:.5rem;right:.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border:1px dashed;padding:.5rem;border-radius:4px}div.code-container .yaml-action-buttons h2[data-v-00f0c6a7]{margin:0;text-align:center;color:var(--config-code-color)}div.code-container .yaml-action-buttons a.yaml-button[data-v-00f0c6a7]{padding:.25rem .5rem;font-size:1rem;color:var(--config-code-color);border-radius:var(--curve-factor);cursor:pointer;text-decoration:underline;border:1px solid var(--config-code-background)}div.code-container .yaml-action-buttons a.yaml-button[data-v-00f0c6a7]:hover{color:var(--config-code-color);border-color:var(--config-code-color);text-decoration:none}div.code-container .yaml-action-buttons a.yaml-button[data-v-00f0c6a7]:active{color:var(--config-code-background);background-color:var(--config-settings-color);text-decoration:none}.tab-item[data-v-00f0c6a7]{overflow-y:auto;background:var(--config-settings-background)}.tab-item.main-tab[data-v-00f0c6a7]{min-height:500px}a.hyperlink-wrapper[data-v-00f0c6a7]{margin:0 auto;text-decoration:none}.main-options-container[data-v-00f0c6a7]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-top:2rem;background:var(--config-settings-background);height:calc(100% - 2rem)}.main-options-container h2[data-v-00f0c6a7]{margin:1rem auto;color:var(--config-settings-color)}.config-note[data-v-00f0c6a7]{width:80%;position:absolute;bottom:1rem;left:10%;margin:.5rem auto;padding:.5rem .75rem;border:1px dashed var(--config-settings-color);border-radius:var(--curve-factor);text-align:left;opacity:.95;color:var(--config-settings-color);background:var(--config-settings-background);display:none}.config-note p.sub-title[data-v-00f0c6a7]{font-weight:700;margin:0;display:inline}@media(min-width:780px){.config-note[data-v-00f0c6a7]{display:block}}p.small-screen-note[data-v-00f0c6a7]{margin:.5rem auto;padding:0 .5rem;text-align:center;opacity:.8;font-size:.9rem;color:var(--warning)}@media(max-width:599px){p.small-screen-note[data-v-00f0c6a7]{display:block!important}}.tab__pagination{background:var(--config-settings-background)}.tab__pagination,.tab__pagination .tab__nav__items .tab__nav__item span{color:var(--config-settings-color)}.tab__pagination .tab__nav__items .tab__nav__item:hover{background:var(--config-settings-color)!important}.tab__pagination .tab__nav__items .tab__nav__item:hover span{color:var(--config-settings-background)}.tab__pagination .tab__nav__items .tab__nav__item.active span{font-weight:700;color:var(--config-settings-color)!important}.tab__pagination .tab__nav__items .tab__nav__item.active{border-bottom:2px solid var(--config-settings-color)}.tab__pagination hr.tab__slider{background:var(--config-settings-color)}#conf-yaml .hljs-attr{color:#9c03f5}button[data-v-4bb44f8e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.5rem .75rem;margin:.5rem auto;font-size:1.2rem;min-width:10rem;cursor:pointer}button svg[data-v-4bb44f8e]{width:1.2rem;margin:0 .5rem}button svg g[data-v-4bb44f8e],button svg path[data-v-4bb44f8e]{fill:currentColor}button[data-v-4bb44f8e]{color:var(--primary);background:var(--background);border:1px solid var(--primary);border-radius:var(--curve-factor)}button[data-v-4bb44f8e]:hover{color:var(--background);background:var(--primary);border-color:var(--background)}div.input-container[data-v-5df13ed2]{margin:.25rem auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}div.input-container.vertical[data-v-5df13ed2]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}div.input-container.horizontal[data-v-5df13ed2]{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}div.input-container.horizontal label[data-v-5df13ed2]{margin-right:.25rem}div.input-container input[data-v-5df13ed2]{min-width:10rem;padding:.5rem .75rem;margin:.5rem auto;font-size:1.2rem;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--primary);background:var(--background);border:1px solid var(--primary);border-radius:var(--curve-factor)}div.input-container input[data-v-5df13ed2]:focus{-webkit-box-shadow:1px 1px 6px var(--config-settings-color);box-shadow:1px 1px 6px var(--config-settings-color);outline:none}.scroll-bar[data-v-763657f4]::-webkit-scrollbar,div.cloud-backup-restore-wrapper[data-v-763657f4]::-webkit-scrollbar{width:var(--scroll-bar-width);height:var(--scroll-bar-width)}.scroll-bar[data-v-763657f4]::-webkit-scrollbar-track,div.cloud-backup-restore-wrapper[data-v-763657f4]::-webkit-scrollbar-track{border-radius:var(--curve-factor);background-color:var(--scroll-bar-background)}.scroll-bar[data-v-763657f4]::-webkit-scrollbar-thumb,div.cloud-backup-restore-wrapper[data-v-763657f4]::-webkit-scrollbar-thumb{background:var(--scroll-bar-color);border-radius:var(--curve-factor)}.bold[data-v-763657f4]{font-weight:700}.light[data-v-763657f4]{font-weight:lighter}.text-left[data-v-763657f4]{text-align:left}.text-right[data-v-763657f4]{text-align:right}.text-center[data-v-763657f4]{text-align:center}.horizontal-center[data-v-763657f4]{margin:0 auto}.border-box[data-v-763657f4]{-webkit-box-sizing:border-box;box-sizing:border-box}.toast-message[data-v-763657f4]{background:var(--toast-background)!important;color:var(--toast-color)!important;border:1px solid var(--toast-color)!important;border-radius:var(--curve-factor)!important;font-size:1.25rem!important}.toast-error[data-v-763657f4]{background:var(--danger)!important;color:var(--white)!important;font-size:1.25rem!important}.toast-success[data-v-763657f4]{background:var(--success)!important;color:var(--white)!important;font-size:1.25rem!important}div.cloud-backup-restore-wrapper[data-v-763657f4]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;text-align:center;overflow:auto;height:100%;background:var(--config-settings-background);color:var(--config-settings-color)}div.cloud-backup-restore-wrapper .section[data-v-763657f4]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto 1rem auto;padding:0 .5rem 1rem .5rem}div.cloud-backup-restore-wrapper .section[data-v-763657f4]:first-child{border-bottom:1px dashed var(--config-settings-color)}div.cloud-backup-restore-wrapper .section.intro[data-v-763657f4]{width:100%;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}div.cloud-backup-restore-wrapper .section.intro a[data-v-763657f4]{color:var(--config-settings-color)}div.cloud-backup-restore-wrapper h2[data-v-763657f4]{font-size:2rem}div.cloud-backup-restore-wrapper h3[data-v-763657f4]{font-size:1.6rem}div.cloud-backup-restore-wrapper p.intro[data-v-763657f4]{text-align:left;font-size:1rem;margin:.25rem;padding:.25rem}div.results-view[data-v-763657f4]{width:16rem;margin:.5rem auto;padding:.5rem .75rem;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px dashed var(--config-settings-color);border-radius:var(--curve-factor);text-align:left}div.results-view .backup-id-label[data-v-763657f4],div.results-view .backup-id-value[data-v-763657f4]{display:inline;font-size:1rem;margin-right:.5rem}div.results-view .backup-id-note[data-v-763657f4]{font-size:.8rem;display:block;opacity:.8;margin-top:.5rem}button[data-v-763657f4],input[data-v-763657f4]{color:var(--config-settings-color);border:1px solid var(--config-settings-color);background:none;width:16rem}input[data-v-763657f4]:focus{-webkit-box-shadow:1px 1px 6px var(--config-settings-color);box-shadow:1px 1px 6px var(--config-settings-color)}button[data-v-763657f4]:hover{color:var(--config-settings-background);border:1px solid var(--config-settings-background);background:var(--config-settings-color)}h2[data-v-763657f4],h3[data-v-763657f4]{margin:1rem}.config-options[data-v-437d8549]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;color:var(--settings-text-color)}.config-options svg[data-v-437d8549]{width:1rem;height:1rem;margin:.2rem;padding:.2rem;text-align:center;background:var(--background);border:1px solid currentColor;border-radius:var(--curve-factor);cursor:pointer}.config-options svg path[data-v-437d8549]{fill:var(--settings-text-color)}.config-options svg.selected[data-v-437d8549],.config-options svg[data-v-437d8549]:hover{background:var(--settings-text-color)}.config-options svg.selected path[data-v-437d8549],.config-options svg:hover path[data-v-437d8549]{fill:var(--background)}.vm--modal{-webkit-box-shadow:0 40px 70px -2px rgba(0,0,0,.6),1px 1px 6px var(--primary);box-shadow:0 40px 70px -2px rgba(0,0,0,.6),1px 1px 6px var(--primary);min-width:350px;min-height:600px}.vm--overlay{background:rgba(0,0,0,.5019607843137255)}.v-select{position:relative;font-family:inherit}.v-select,.v-select *{-webkit-box-sizing:border-box;box-sizing:border-box}@-webkit-keyframes vSelectSpinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes vSelectSpinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.vs__fade-enter-active,.vs__fade-leave-active{pointer-events:none;-webkit-transition:opacity .15s cubic-bezier(1,.5,.8,1);transition:opacity .15s cubic-bezier(1,.5,.8,1)}.vs__fade-enter,.vs__fade-leave-to{opacity:0}.vs--disabled .vs__clear,.vs--disabled .vs__dropdown-toggle,.vs--disabled .vs__open-indicator,.vs--disabled .vs__search,.vs--disabled .vs__selected{cursor:not-allowed;background-color:#f8f8f8}.v-select[dir=rtl] .vs__actions{padding:0 3px 0 6px}.v-select[dir=rtl] .vs__clear{margin-left:6px;margin-right:0}.v-select[dir=rtl] .vs__deselect{margin-left:0;margin-right:2px}.v-select[dir=rtl] .vs__dropdown-menu{text-align:right}.vs__dropdown-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0 0 4px 0;background:none;border:1px solid rgba(60,60,60,.26);border-radius:4px;white-space:normal}.vs__dropdown-toggle,.vs__selected-options{display:-webkit-box;display:-ms-flexbox;display:flex}.vs__selected-options{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:0 2px;position:relative}.vs__actions{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:4px 6px 0 3px}.vs--searchable .vs__dropdown-toggle{cursor:text}.vs--unsearchable .vs__dropdown-toggle{cursor:pointer}.vs--open .vs__dropdown-toggle{border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0}.vs__open-indicator{fill:rgba(60,60,60,.5);-webkit-transform:scale(1);transform:scale(1);-webkit-transition:-webkit-transform .15s cubic-bezier(1,-.115,.975,.855);transition:-webkit-transform .15s cubic-bezier(1,-.115,.975,.855);transition:transform .15s cubic-bezier(1,-.115,.975,.855);transition:transform .15s cubic-bezier(1,-.115,.975,.855),-webkit-transform .15s cubic-bezier(1,-.115,.975,.855);-webkit-transition-timing-function:cubic-bezier(1,-.115,.975,.855);transition-timing-function:cubic-bezier(1,-.115,.975,.855)}.vs--open .vs__open-indicator{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}.vs--loading .vs__open-indicator{opacity:0}.vs__clear{fill:rgba(60,60,60,.5);padding:0;border:0;background-color:transparent;cursor:pointer;margin-right:8px}.vs__dropdown-menu{display:block;-webkit-box-sizing:border-box;box-sizing:border-box;position:absolute;top:calc(100% - 1px);left:0;z-index:1000;padding:5px 0;margin:0;width:100%;max-height:350px;min-width:160px;overflow-y:auto;-webkit-box-shadow:0 3px 6px 0 rgba(0,0,0,.15);box-shadow:0 3px 6px 0 rgba(0,0,0,.15);border:1px solid rgba(60,60,60,.26);border-top-style:none;border-radius:0 0 4px 4px;text-align:left;list-style:none;background:#fff}.vs__no-options{text-align:center}.vs__dropdown-option{line-height:1.42857143;display:block;padding:3px 20px;clear:both;color:#333;white-space:nowrap}.vs__dropdown-option:hover{cursor:pointer}.vs__dropdown-option--highlight{background:#5897fb;color:#fff}.vs__dropdown-option--disabled{background:inherit;color:rgba(60,60,60,.5)}.vs__dropdown-option--disabled:hover{cursor:inherit}.vs__selected{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#f0f0f0;border:1px solid rgba(60,60,60,.26);border-radius:4px;color:#333;line-height:1.4;margin:4px 2px 0 2px;padding:0 .25em;z-index:0}.vs__deselect{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-left:4px;padding:0;border:0;cursor:pointer;background:none;fill:rgba(60,60,60,.5);text-shadow:0 1px 0 #fff}.vs--single .vs__selected{background-color:transparent;border-color:transparent}.vs--single.vs--open .vs__selected{position:absolute;opacity:.4}.vs--single.vs--searching .vs__selected{display:none}.vs__search::-webkit-search-cancel-button{display:none}.vs__search::-ms-clear,.vs__search::-webkit-search-decoration,.vs__search::-webkit-search-results-button,.vs__search::-webkit-search-results-decoration{display:none}.vs__search,.vs__search:focus{-webkit-appearance:none;-moz-appearance:none;appearance:none;line-height:1.4;font-size:1em;border:1px solid transparent;border-left:none;outline:none;margin:4px 0 0 0;padding:0 7px;background:none;-webkit-box-shadow:none;box-shadow:none;width:0;max-width:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;z-index:1}.vs__search::-webkit-input-placeholder{color:inherit}.vs__search::-moz-placeholder{color:inherit}.vs__search:-ms-input-placeholder{color:inherit}.vs__search::-ms-input-placeholder{color:inherit}.vs__search::placeholder{color:inherit}.vs--unsearchable .vs__search{opacity:1}.vs--unsearchable:not(.vs--disabled) .vs__search:hover{cursor:pointer}.vs--single.vs--searching:not(.vs--open):not(.vs--loading) .vs__search{opacity:.2}.vs__spinner{-ms-flex-item-align:center;align-self:center;opacity:0;font-size:5px;text-indent:-9999em;overflow:hidden;border-top:.9em solid hsla(0,0%,39.2%,.1);border-right:.9em solid hsla(0,0%,39.2%,.1);border-bottom:.9em solid hsla(0,0%,39.2%,.1);border-left:.9em solid rgba(60,60,60,.45);-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-animation:vSelectSpinner 1.1s linear infinite;animation:vSelectSpinner 1.1s linear infinite;-webkit-transition:opacity .1s;transition:opacity .1s}.vs__spinner,.vs__spinner:after{border-radius:50%;width:5em;height:5em}.vs--loading .vs__spinner{opacity:1}.theme-dropdown div.vs__dropdown-toggle{border-color:var(--settings-text-color);border-radius:var(--curve-factor);min-width:10rem;height:1.8rem;font-size:.85rem;cursor:pointer}.theme-dropdown li.vs__dropdown-option,.theme-dropdown span.vs__selected{color:var(--settings-text-color);text-transform:capitalize}.theme-dropdown svg.vs__open-indicator{fill:var(--settings-text-color)}.theme-dropdown ul.vs__dropdown-menu{width:auto;background:var(--background);z-index:5}.theme-dropdown li.vs__dropdown-option--highlight{background:var(--settings-text-color);color:var(--background)}.theme-dropdown button.vs__clear{display:none}.theme-selector-section{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;height:100%}.theme-selector-section span.theme-label{font-size:1rem;color:var(--settings-text-color);margin:1px 0 2px 0}.display-options[data-v-c819d738],span.options-label[data-v-c819d738]{color:var(--settings-text-color)}.display-options svg[data-v-c819d738]{width:1rem;height:1rem;margin:.2rem;padding:.2rem;text-align:center;background:var(--background);border:1px solid currentColor;border-radius:var(--curve-factor);cursor:pointer}.display-options svg path[data-v-c819d738]{fill:var(--settings-text-color)}.display-options svg.selected[data-v-c819d738],.display-options svg[data-v-c819d738]:hover{background:var(--settings-text-color)}.display-options svg.selected path[data-v-c819d738],.display-options svg:hover path[data-v-c819d738]{fill:var(--background)}.display-options[data-v-58966274],span.options-label[data-v-58966274]{color:var(--settings-text-color)}.display-options svg[data-v-58966274]{width:1rem;height:1rem;margin:.2rem;padding:.2rem;text-align:center;background:var(--background);border:1px solid currentColor;border-radius:var(--curve-factor);cursor:pointer}.display-options svg path[data-v-58966274]{fill:var(--settings-text-color)}.display-options svg.selected[data-v-58966274],.display-options svg[data-v-58966274]:hover{background:var(--settings-text-color)}.display-options svg.selected path[data-v-58966274],.display-options svg:hover path[data-v-58966274]{fill:var(--background)}.kb-sc-info[data-v-c5f17d9a]{position:fixed;width:30em;bottom:0;right:10px;margin:.5em;padding:.1em .3em;z-index:6;border-radius:12px;border:1px solid var(--welcome-popup-background);-webkit-box-shadow:2px 1px 5px #130f23;box-shadow:2px 1px 5px #130f23;border:1px solid var(--welcome-popup-text-color);color:var(--welcome-popup-text-color);background:var(--welcome-popup-background);cursor:default;opacity:.94}@media(max-width:599px){.kb-sc-info[data-v-c5f17d9a]{display:none}}.kb-sc-info h5[data-v-c5f17d9a]{position:absolute;top:-35px;left:20px;border:1px solid var(--welcome-popup-text-color);color:var(--welcome-popup-text-color);background:var(--welcome-popup-background);padding:4px;border-radius:var(--curve-factor)}.kb-sc-info .close[data-v-c5f17d9a]{float:right;border-radius:20px;width:1em;padding:0 0 6px 6px;height:1em;background:var(--transparent-50);margin-top:3px;border:1px solid transparent;cursor:pointer}.kb-sc-info .close[data-v-c5f17d9a]:hover{border:1px solid var(--welcome-popup-text-color);opacity:var(--dimming-factor)}.slide-fade-enter-active[data-v-c5f17d9a]{-webkit-transition:all 1s ease;transition:all 1s ease}.slide-fade-leave-active[data-v-c5f17d9a]{-webkit-transition:all .8s cubic-bezier(.93,.01,.89,.5);transition:all .8s cubic-bezier(.93,.01,.89,.5)}.slide-fade-enter[data-v-c5f17d9a],.slide-fade-leave-to[data-v-c5f17d9a]{-webkit-transform:translateY(35em);transform:translateY(35em);opacity:0}section[data-v-0a85c63b]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;background:-webkit-gradient(linear,left bottom,left top,from(var(--background)),to(var(--background-darker)));background:linear-gradient(0deg,var(--background),var(--background-darker));-webkit-box-shadow:var(--settings-container-shadow);box-shadow:var(--settings-container-shadow)}.options-outer[data-v-0a85c63b]{position:relative;-ms-flex:1;flex:1}.options-container[data-v-0a85c63b],.options-outer[data-v-0a85c63b]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;background:var(--settings-background)}.options-container[data-v-0a85c63b]{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-ms-flex:1;flex:1;padding:.5rem 1.5rem .5rem 1rem;border-radius:var(--curve-factor-navbar) 0 0}.options-container div[data-v-0a85c63b]{margin-left:.5rem;opacity:var(--dimming-factor);opacity:1}.options-container div[data-v-0a85c63b]:hover{opacity:1}.options-container.hide[data-v-0a85c63b]{display:none}@media(max-width:399px){.options-container[data-v-0a85c63b]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}}.show-hide-container[data-v-0a85c63b]{display:-webkit-box;display:-ms-flexbox;display:flex;background:var(--settings-background);color:var(--settings-text-color);width:1.5rem;position:absolute;top:4px;right:4px}.show-hide-container.show-btn[data-v-0a85c63b]{width:2rem;top:.5rem;right:.5rem}@media(max-width:599px){.show-hide-container.show-btn[data-v-0a85c63b]{top:-3rem!important}}.show-hide-container button[data-v-0a85c63b]{width:100%;padding:2px 2px 0 2px;margin:2px;border-radius:var(--curve-factor);height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;background:none;border:none;color:var(--settings-text-color);cursor:pointer;opacity:var(--dimming-factor)}.show-hide-container:hover button[data-v-0a85c63b]{background:var(--settings-text-color);color:var(--settings-background)}svg.logout-icon[data-v-0a85c63b]{width:1rem;height:1rem;margin:.35rem .2rem;padding:.2rem;text-align:center;background:var(--background);border:1px solid var(--settings-text-color);border-radius:var(--curve-factor);cursor:pointer}svg.logout-icon path[data-v-0a85c63b]{fill:var(--settings-text-color)}svg.logout-icon.selected[data-v-0a85c63b],svg.logout-icon[data-v-0a85c63b]:hover{background:var(--settings-text-color)}svg.logout-icon.selected path[data-v-0a85c63b],svg.logout-icon:hover path[data-v-0a85c63b]{fill:var(--background)}@media(min-width:600px)and (max-width:779px){section[data-v-0a85c63b]{display:block;margin:0 auto;background:none}section .options-container[data-v-0a85c63b]{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}}.tile-icon{width:60px}.tile-icon.broken{display:none}i.fab,i.fad,i.fal,i.far,i.fas{font-size:2rem;color:currentColor;margin:1px auto 4px}i.fab.small,i.fad.small,i.fal.small,i.far.small,i.fas.small{font-size:1.5rem}i.fab.large,i.fad.large,i.fal.large,i.far.large,i.fas.large{font-size:3rem}object.tile-icon{width:55px;height:55px}object.tile-icon svg,object.tile-icon svg g,object.tile-icon svg g path{fill:currentColor}.missing-image{width:3.5rem}.missing-image path{fill:currentColor}.opening-method-icon svg[data-v-17201835]{position:absolute;width:1rem;margin:2px}.opening-method-icon svg path[data-v-17201835]{fill:currentColor}.opening-method-icon.top svg[data-v-17201835]{top:0}.opening-method-icon.bottom svg[data-v-17201835]{bottom:0}.opening-method-icon.left svg[data-v-17201835]{left:0}.opening-method-icon.right svg[data-v-17201835]{right:0}.opening-method-icon.short svg[data-v-17201835]{width:.8rem;margin:0}.opening-method-icon.transparent svg[data-v-17201835]{opacity:.5}.indicator[data-v-4076b7e0]{padding:5px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;cursor:help}.indicator[data-v-4076b7e0]:hover{-webkit-transform:scale(1.25);transform:scale(1.25);-webkit-filter:saturate(2);filter:saturate(2);opacity:1}@-webkit-keyframes pulse-data-v-4076b7e0{0%{opacity:.75;-webkit-transform:scale(1);transform:scale(1)}25%{opacity:.75;-webkit-transform:scale(1);transform:scale(1)}to{opacity:0;-webkit-transform:scale(1.8);transform:scale(1.8)}}@keyframes pulse-data-v-4076b7e0{0%{opacity:.75;-webkit-transform:scale(1);transform:scale(1)}25%{opacity:.75;-webkit-transform:scale(1);transform:scale(1)}to{opacity:0;-webkit-transform:scale(1.8);transform:scale(1.8)}}@-webkit-keyframes applyOpacity-data-v-4076b7e0{50%{opacity:.9}to{opacity:.8}}@keyframes applyOpacity-data-v-4076b7e0{50%{opacity:.9}to{opacity:.8}}.dot[data-v-4076b7e0]{border-radius:50%;height:12px;width:12px;-webkit-animation:applyOpacity-data-v-4076b7e0 1s ease-in 8s forwards;animation:applyOpacity-data-v-4076b7e0 1s ease-in 8s forwards}.dot>span[data-v-4076b7e0],.dot>span span[data-v-4076b7e0],.dot>span span[data-v-4076b7e0]:after{-webkit-animation:pulse-data-v-4076b7e0 1s linear .5s 2;animation:pulse-data-v-4076b7e0 1s linear .5s 2;border-radius:50%;display:block;height:12px;width:12px;content:""}.dot.dot-green[data-v-4076b7e0]{background-color:var(--success)}.dot.dot-green span[data-v-4076b7e0],.dot.dot-green span[data-v-4076b7e0]:after{background-color:var(--success);opacity:.4}.dot.dot-red[data-v-4076b7e0]{background-color:var(--danger)}.dot.dot-red span[data-v-4076b7e0],.dot.dot-red span[data-v-4076b7e0]:after{background-color:var(--danger);opacity:.4}.dot.dot-yellow[data-v-4076b7e0]{background-color:var(--warning)}.dot.dot-yellow span[data-v-4076b7e0],.dot.dot-yellow span[data-v-4076b7e0]:after{background-color:var(--warning);opacity:.4}.dot.dot-grey[data-v-4076b7e0]{background-color:var(--medium-grey)}.dot.dot-grey span[data-v-4076b7e0],.dot.dot-grey span[data-v-4076b7e0]:after{background-color:var(--medium-grey);opacity:.4}.status-tooltip{background:var(--background-darker)!important;font-size:1rem;z-index:10}.status-tooltip.tip-green{border:1px solid var(--success)}.status-tooltip.tip-yellow{border:1px solid var(--warning)}.status-tooltip.tip-red{border:1px solid var(--danger)}.item{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;color:var(--item-text-color);vertical-align:middle;margin:.5rem;background:var(--item-background);text-align:center;padding:2px;outline:2px solid transparent;border:1px solid var(--outline-color);border-radius:var(--curve-factor);-webkit-box-shadow:var(--item-shadow);box-shadow:var(--item-shadow);cursor:pointer;text-decoration:none;position:relative}.item:hover{-webkit-box-shadow:var(--item-hover-shadow);box-shadow:var(--item-hover-shadow);background:var(--item-background-hover);position:relative}.item:focus{outline:2px solid var(--primary)}.item.short{height:18px}.tile-title{white-space:nowrap;text-overflow:ellipsis;min-width:120px;height:30px;overflow:hidden;position:relative;padding:0;z-index:2}.tile-title span.text{position:absolute;white-space:nowrap;-webkit-transition:1s;transition:1s;float:left;left:0}.tile-title:not(.is-overflowing) span.text{width:100%}.tile-title .overflow-dots{opacity:0}.tile-title.is-overflowing span.text{overflow:hidden}.tile-title.is-overflowing .overflow-dots{display:block;opacity:1;background:var(--item-background);position:absolute;z-index:5;right:0;-webkit-transition:opacity .1s ease-in;transition:opacity .1s ease-in}.status-indicator{position:absolute;top:0;right:0}.opening-method-icon{display:none}.item:focus .opening-method-icon,.item:hover .opening-method-icon{display:block}.item:focus .tile-title.is-overflowing .overflow-dots,.item:hover .tile-title.is-overflowing .overflow-dots{opacity:0}.item:focus .tile-title.is-overflowing span.text,.item:hover .tile-title.is-overflowing span.text{-webkit-transform:translateX(calc(100px - 100%));transform:translateX(calc(100px - 100%))}.item:focus .tile-icon,.item:focus .tile-svg,.item:hover .tile-icon,.item:hover .tile-svg{-webkit-filter:var(--item-icon-transform-hover);filter:var(--item-icon-transform-hover)}.item.size-small{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:2rem}.item.size-small div img,.item.size-small div svg.missing-image{width:2rem}.item.size-small .tile-title{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;min-height:1.2rem}.item.size-small .tile-title span.text{text-align:left;padding-left:10%}.item.size-medium{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:auto}.item.size-medium div img,.item.size-medium div svg.missing-image{width:2.5rem;margin-bottom:.25rem}.item.size-medium .tile-title{min-width:100px}.item.size-large{height:100px}.item p.description{display:none}.item:before{display:none;font-family:FontAwesome;content:var(--open-icon,"")!important}.tooltip{padding:.2rem .5rem;background:rgba(11,16,33,.8);border:1px solid #0b1021;border-radius:3px;color:#fff;max-width:250px}.tooltip-arrow{border-width:5px 5px 0 5px;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important;bottom:-11px;left:calc(50% - 5px);margin-top:0;margin-bottom:0;width:0;height:0;border-style:solid;position:absolute;margin:5px;border-color:rgba(11,16,33,.8);z-index:3}.disabled-link{pointer-events:none}.collapsable[data-v-3f92488c]{padding:var(--item-group-padding);margin:10px;border-radius:var(--curve-factor);background:var(--item-group-outer-background);-webkit-box-shadow:var(--item-group-shadow);box-shadow:var(--item-group-shadow);height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:100%;width:-webkit-fill-available;width:-moz-available;width:stretch;grid-row-start:span 1;grid-column-start:span 1}.collapsable.row-2[data-v-3f92488c]{grid-row-start:span 2}.collapsable.row-3[data-v-3f92488c]{grid-row-start:span 3}.collapsable.row-4[data-v-3f92488c]{grid-row-start:span 4}@media(min-width:780px){.collapsable.col-2[data-v-3f92488c],.collapsable.col-3[data-v-3f92488c],.collapsable.col-4[data-v-3f92488c]{grid-column-start:span 2}}@media(min-width:1150px){.collapsable.col-2[data-v-3f92488c]{grid-column-start:span 2}.collapsable.col-3[data-v-3f92488c],.collapsable.col-4[data-v-3f92488c]{grid-column-start:span 3}}@media(min-width:1780px){.collapsable.col-2[data-v-3f92488c]{grid-column-start:span 2}.collapsable.col-3[data-v-3f92488c]{grid-column-start:span 3}.collapsable.col-4[data-v-3f92488c]{grid-column-start:span 4}}.collapsable .wrap-collabsible[data-v-3f92488c]{margin-bottom:1.2rem 0}.collapsable input[type=checkbox][data-v-3f92488c]{display:none}.collapsable label.lbl-toggle[data-v-3f92488c]{outline:none;display:block;padding:.25rem;cursor:pointer;border-radius:var(--curve-factor);-webkit-transition:all .25s ease-out;transition:all .25s ease-out;text-align:left;color:var(--item-group-heading-text-color)}.collapsable label.lbl-toggle h3[data-v-3f92488c]{margin:0;padding:0;display:inline}.collapsable label.lbl-toggle .section-icon[data-v-3f92488c]{display:inline;margin-right:.5rem}.collapsable .lbl-toggle[data-v-3f92488c]:hover{color:var(--item-group-heading-text-color-hover)}.collapsable .lbl-toggle[data-v-3f92488c]:before{content:" ";display:inline-block;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid currentColor;vertical-align:middle;margin-right:.7rem;-webkit-transform:translateY(-2px);transform:translateY(-2px);-webkit-transition:-webkit-transform .2s ease-out;transition:-webkit-transform .2s ease-out;transition:transform .2s ease-out;transition:transform .2s ease-out,-webkit-transform .2s ease-out}.collapsable .toggle:checked+.lbl-toggle[data-v-3f92488c]:before{-webkit-transform:rotate(90deg) translateX(-3px);transform:rotate(90deg) translateX(-3px)}.collapsable .collapsible-content[data-v-3f92488c]{max-height:0;overflow:hidden;-webkit-transition:max-height .25s ease-in-out;transition:max-height .25s ease-in-out;background:var(--item-group-background);border-radius:0 0 var(--curve-factor) var(--curve-factor)}.collapsable .toggle:checked+.lbl-toggle+.collapsible-content[data-v-3f92488c]{max-height:3000px}.collapsable .toggle:checked+.lbl-toggle[data-v-3f92488c]{border-bottom-right-radius:0;border-bottom-left-radius:0}.collapsable .collapsible-content .content-inner[data-v-3f92488c]{padding:.5rem}.frame{width:100%;height:100%;border:none}.no-url{margin:4rem auto;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;font-size:2rem;padding:.5rem;border:1px dashed red;border-radius:3px;background:#f4f2f2}.close-button{position:absolute;right:0;padding:.5rem;border:0;border-radius:0 0 0 10px;background:var(--primary);color:var(--background);border-left:1px solid var(--primary);border-bottom:1px solid var(--primary);cursor:pointer}.close-button:hover{background:var(--background);color:var(--primary)}.scroll-bar[data-v-0ae71c1f]::-webkit-scrollbar,.there-are-items.item-group-grid[data-v-0ae71c1f]::-webkit-scrollbar{width:var(--scroll-bar-width);height:var(--scroll-bar-width)}.scroll-bar[data-v-0ae71c1f]::-webkit-scrollbar-track,.there-are-items.item-group-grid[data-v-0ae71c1f]::-webkit-scrollbar-track{border-radius:var(--curve-factor);background-color:var(--scroll-bar-background)}.scroll-bar[data-v-0ae71c1f]::-webkit-scrollbar-thumb,.there-are-items.item-group-grid[data-v-0ae71c1f]::-webkit-scrollbar-thumb{background:var(--scroll-bar-color);border-radius:var(--curve-factor)}.bold[data-v-0ae71c1f]{font-weight:700}.light[data-v-0ae71c1f]{font-weight:lighter}.text-left[data-v-0ae71c1f]{text-align:left}.text-right[data-v-0ae71c1f]{text-align:right}.text-center[data-v-0ae71c1f]{text-align:center}.horizontal-center[data-v-0ae71c1f]{margin:0 auto}.border-box[data-v-0ae71c1f]{-webkit-box-sizing:border-box;box-sizing:border-box}.toast-message[data-v-0ae71c1f]{background:var(--toast-background)!important;color:var(--toast-color)!important;border:1px solid var(--toast-color)!important;border-radius:var(--curve-factor)!important;font-size:1.25rem!important}.toast-error[data-v-0ae71c1f]{background:var(--danger)!important;color:var(--white)!important;font-size:1.25rem!important}.toast-success[data-v-0ae71c1f]{background:var(--success)!important;color:var(--white)!important;font-size:1.25rem!important}.no-items[data-v-0ae71c1f]{width:100px;margin:0 auto;padding:.8rem;text-align:center;cursor:default;border-radius:var(--curve-factor);background:rgba(96,125,139,.2);color:var(--primary);-webkit-box-shadow:var(--item-shadow);box-shadow:var(--item-shadow)}.there-are-items[data-v-0ae71c1f]{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.there-are-items.item-group-grid[data-v-0ae71c1f]{display:grid;overflow:auto}@media(max-width:599px){.there-are-items.item-group-grid[data-v-0ae71c1f]{grid-template-columns:repeat(1,1fr)}}@media(min-width:600px)and (max-width:779px){.there-are-items.item-group-grid[data-v-0ae71c1f]{grid-template-columns:repeat(2,1fr)}}@media(min-width:780px)and (max-width:1149px){.there-are-items.item-group-grid[data-v-0ae71c1f]{grid-template-columns:repeat(2,1fr)}}@media(min-width:1150px)and (max-width:1779px){.there-are-items.item-group-grid[data-v-0ae71c1f]{grid-template-columns:repeat(3,1fr)}}@media(min-width:1780px){.there-are-items.item-group-grid[data-v-0ae71c1f]{grid-template-columns:repeat(4,1fr)}}@media(min-width:2800px){.there-are-items.item-group-grid[data-v-0ae71c1f]{grid-template-columns:repeat(5,1fr)}}.orientation-horizontal[data-v-0ae71c1f]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.orientation-horizontal .there-are-items[data-v-0ae71c1f]{display:grid;grid-template-columns:repeat(5,1fr)}@media(max-width:599px){.orientation-horizontal .there-are-items[data-v-0ae71c1f]{grid-template-columns:repeat(2,1fr)}}@media(min-width:600px)and (max-width:779px){.orientation-horizontal .there-are-items[data-v-0ae71c1f]{grid-template-columns:repeat(4,1fr)}}@media(min-width:780px)and (max-width:1149px){.orientation-horizontal .there-are-items[data-v-0ae71c1f]{grid-template-columns:repeat(6,1fr)}}@media(min-width:1150px)and (max-width:1779px){.orientation-horizontal .there-are-items[data-v-0ae71c1f]{grid-template-columns:repeat(8,1fr)}}@media(min-width:1780px){.orientation-horizontal .there-are-items[data-v-0ae71c1f]{grid-template-columns:repeat(10,1fr)}}@media(min-width:2800px){.orientation-horizontal .there-are-items[data-v-0ae71c1f]{grid-template-columns:repeat(12,1fr)}}.item-group-container[data-v-14317bc9]::-webkit-scrollbar,.scroll-bar[data-v-14317bc9]::-webkit-scrollbar{width:var(--scroll-bar-width);height:var(--scroll-bar-width)}.item-group-container[data-v-14317bc9]::-webkit-scrollbar-track,.scroll-bar[data-v-14317bc9]::-webkit-scrollbar-track{border-radius:var(--curve-factor);background-color:var(--scroll-bar-background)}.item-group-container[data-v-14317bc9]::-webkit-scrollbar-thumb,.scroll-bar[data-v-14317bc9]::-webkit-scrollbar-thumb{background:var(--scroll-bar-color);border-radius:var(--curve-factor)}.bold[data-v-14317bc9]{font-weight:700}.light[data-v-14317bc9]{font-weight:lighter}.text-left[data-v-14317bc9]{text-align:left}.text-right[data-v-14317bc9]{text-align:right}.text-center[data-v-14317bc9]{text-align:center}.horizontal-center[data-v-14317bc9]{margin:0 auto}.border-box[data-v-14317bc9]{-webkit-box-sizing:border-box;box-sizing:border-box}.toast-message[data-v-14317bc9]{background:var(--toast-background)!important;color:var(--toast-color)!important;border:1px solid var(--toast-color)!important;border-radius:var(--curve-factor)!important;font-size:1.25rem!important}.toast-error[data-v-14317bc9]{background:var(--danger)!important;color:var(--white)!important;font-size:1.25rem!important}.toast-success[data-v-14317bc9]{background:var(--success)!important;color:var(--white)!important;font-size:1.25rem!important}.home[data-v-14317bc9]{padding-bottom:1px;background:var(--background);min-height:calc(100vh - 126px)}.item-group-container[data-v-14317bc9]{display:grid;gap:.5rem;margin:0 auto;max-width:90%;overflow:auto}@media(min-width:1780px){.item-group-container[data-v-14317bc9]{max-width:1400px}}.item-group-container.orientation-horizontal[data-v-14317bc9]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.item-group-container.orientation-vertical[data-v-14317bc9]{max-width:100%}@media(min-width:780px){.item-group-container.orientation-vertical[data-v-14317bc9]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}}@media(max-width:599px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(1,1fr)}}@media(min-width:600px)and (max-width:779px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(2,1fr)}}@media(min-width:780px)and (max-width:1149px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(2,1fr)}}@media(min-width:1150px)and (max-width:1779px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(3,1fr)}}@media(min-width:1780px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(4,1fr)}}@media(min-width:2800px){.item-group-container[data-v-14317bc9]{grid-template-columns:repeat(5,1fr)}}.item-group-container .no-results[data-v-14317bc9]{display:none}.no-data[data-v-14317bc9]{font-size:2rem;color:var(--background);background:hsla(0,0%,100%,.9215686274509803);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:2rem auto;padding:.5rem 1rem;border-radius:var(--curve-factor)}section.filter-container[data-v-14317bc9]{border-bottom:1px solid var(--outline-color)}@media(max-width:599px){section.filter-container[data-v-14317bc9]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.login-page{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;min-height:800px}.login-page,.login-page .login-form{display:-webkit-box;display:-ms-flexbox;display:flex}.login-page .login-form{background:var(--login-form-background);color:var(--login-form-color);border:1px solid var(--login-form-color);border-radius:var(--curve-factor);padding:2rem;margin:2rem auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.login-page .login-form h2.login-title{font-size:3rem;margin:0 0 1rem 0;text-align:center}.login-page .login-form .login-field input,.login-page .login-form Button.login-button{width:18rem;margin:.5rem auto;font-size:1.4rem;padding:.5rem 1rem}.login-page .login-form .login-field input{color:var(--login-form-color)}.login-page .login-form .login-field input,.login-page .login-form Button.login-button{border-color:var(--login-form-background-secondary);background:var(--login-form-background-secondary)}.login-page .login-form Button.login-button:hover{border-color:var(--login-form-color);color:var(--login-form-background-secondary);background:var(--login-form-color)}.login-page .login-form Button.login-button:active,.login-page .login-form Button.login-button:focus{-webkit-box-shadow:1px 1px 6px var(--login-form-color);box-shadow:1px 1px 6px var(--login-form-color)}.login-page .login-form p.login-error-message{font-size:1rem;text-align:center}.login-page .login-form p.login-error-message.waiting{color:var(--login-form-color)}.login-page .login-form p.login-error-message.success{color:var(--success)}.login-page .login-form p.login-error-message.error{color:var(--warning)}.bounce-enter-active{-webkit-animation:bounce-in .25s;animation:bounce-in .25s}.bounce-leave-active{animation:bounce-in .25s reverse}@-webkit-keyframes bounce-in{0%{-webkit-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.25);transform:scale(1.25)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounce-in{0%{-webkit-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.25);transform:scale(1.25)}to{-webkit-transform:scale(1);transform:scale(1)}}
\ No newline at end of file
diff --git a/index.html b/index.html
index 72b8836a..2d97fa98 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.5b7dd0f3.js b/js/about.295c2a00.js
similarity index 90%
rename from js/about.5b7dd0f3.js
rename to js/about.295c2a00.js
index 354170ff..aef0365c 100644
--- a/js/about.5b7dd0f3.js
+++ b/js/about.295c2a00.js
@@ -1,2 +1,2 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["about"],{f820:function(t,e,n){"use strict";n.r(e);var a=function(){var t=this,e=t.$createElement;t._self._c;return t._m(0)},s=[function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"about"},[n("h1",[t._v("This is an about page")])])}],u=n("2877"),c={},i=Object(u["a"])(c,a,s,!1,null,null,null);e["default"]=i.exports}}]);
-//# sourceMappingURL=about.5b7dd0f3.js.map
\ No newline at end of file
+//# sourceMappingURL=about.295c2a00.js.map
\ No newline at end of file
diff --git a/js/about.5b7dd0f3.js.map b/js/about.295c2a00.js.map
similarity index 90%
rename from js/about.5b7dd0f3.js.map
rename to js/about.295c2a00.js.map
index cca53090..6960e056 100644
--- a/js/about.5b7dd0f3.js.map
+++ b/js/about.295c2a00.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///./src/views/About.vue?bc2f","webpack:///./src/views/About.vue"],"names":["render","_vm","this","_h","$createElement","_self","_c","_m","staticRenderFns","staticClass","_v","script","component"],"mappings":"8GAAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAsBH,EAAII,MAAMC,GAAO,OAAOL,EAAIM,GAAG,IACnGC,EAAkB,CAAC,WAAa,IAAIP,EAAIC,KAASC,EAAGF,EAAIG,eAAmBE,EAAGL,EAAII,MAAMC,IAAIH,EAAG,OAAOG,EAAG,MAAM,CAACG,YAAY,SAAS,CAACH,EAAG,KAAK,CAACL,EAAIS,GAAG,+B,YCAtJC,EAAS,GAKTC,EAAY,eACdD,EACAX,EACAQ,GACA,EACA,KACA,KACA,MAIa,aAAAI,E","file":"js/about.5b7dd0f3.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('div',{staticClass:\"about\"},[_c('h1',[_vm._v(\"This is an about page\")])])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./About.vue?vue&type=template&id=1ae8a7be&\"\nvar script = {}\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"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":["webpack:///./src/views/About.vue?0f8e","webpack:///./src/views/About.vue"],"names":["render","_vm","this","_h","$createElement","_self","_c","_m","staticRenderFns","staticClass","_v","script","component"],"mappings":"8GAAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAsBH,EAAII,MAAMC,GAAO,OAAOL,EAAIM,GAAG,IACnGC,EAAkB,CAAC,WAAa,IAAIP,EAAIC,KAASC,EAAGF,EAAIG,eAAmBE,EAAGL,EAAII,MAAMC,IAAIH,EAAG,OAAOG,EAAG,MAAM,CAACG,YAAY,SAAS,CAACH,EAAG,KAAK,CAACL,EAAIS,GAAG,+B,YCAtJC,EAAS,GAKTC,EAAY,eACdD,EACAX,EACAQ,GACA,EACA,KACA,KACA,MAIa,aAAAI,E","file":"js/about.295c2a00.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('div',{staticClass:\"about\"},[_c('h1',[_vm._v(\"This is an about page\")])])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./About.vue?vue&type=template&id=1ae8a7be&\"\nvar script = {}\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"],"sourceRoot":""}
\ No newline at end of file
diff --git a/js/app.1b280214.js b/js/app.1b280214.js
deleted file mode 100644
index 246802c4..00000000
--- a/js/app.1b280214.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(function(t){function e(e){for(var a,i,r=e[0],c=e[1],l=e[2],u=0,p=[];unew RegExp(/(http|https):\/\/(\S+)(:[0-9]+)?/).test(t)}},O=E,T=(s("d16d"),Object(w["a"])(O,k,x,!1,null,"68c1bd5c",null)),L=T.exports,z={name:"Header",components:{PageTitle:_,Nav:L},props:{pageInfo:Object},data(){return{hiddenComponents:this.pageInfo.hiddenComponents||{},titleVisible:p["visibleComponents"].pageTitle,navVisible:p["visibleComponents"].navigation}}},N=z,M=(s("4239"),Object(w["a"])(N,g,v,!1,null,"70a33270",null)),H=M.exports,A=function(){var t=this,e=t.$createElement,s=t._self._c||e;return t.text&&""!==t.text?s("footer",{domProps:{innerHTML:t._s(t.text)}}):s("footer",[t._v(" Developed by "),s("a",{attrs:{href:t.authorUrl}},[t._v(t._s(t.authorName))]),t._v(". Licensed under "),s("a",{attrs:{href:t.licenseUrl}},[t._v(t._s(t.license))]),t._v(" "+t._s(t.showCopyright?"©":"")+" "+t._s(t.date)+". Get the "),s("a",{attrs:{href:t.repoUrl}},[t._v("Source Code")]),t._v(". ")])},P=[],j={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"}}},B=j,$=(s("41e6"),Object(w["a"])(B,A,P,!1,null,"7bd89e4f",null)),V=$.exports,D=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("transition",{attrs:{name:"slide-fade"}},[t.isLoading?s("div",{class:t.c,attrs:{id:"loading"},on:{click:function(e){t.c="hide"}}},[s("h2",[t._v("Dashy")]),s("div",{staticClass:"inner-container"},[s("p",[t._v("Loading")]),s("span",{staticClass:"dots-cont"},[s("span",{staticClass:"dot dot-1"}),s("span",{staticClass:"dot dot-2"}),s("span",{staticClass:"dot dot-3"}),s("span",{staticClass:"dot dot-4"})])])]):t._e()])},K=[],U={name:"LoadingScreen",props:{isLoading:{type:Boolean,default:!1}},data:()=>({c:""})},F=U,R=(s("2bb3"),Object(w["a"])(F,D,K,!1,null,"a7bc1de6",null)),J=R.exports,G=s("8b8e"),q=s.n(G),Y={name:"app",components:{Header:H,Footer:V,LoadingScreen:J},data(){return{showFooter:h.a.visibleComponents.footer,isLoading:!0}},computed:{pageInfo(){return this.getPageInfo(q.a.pageInfo)},appConfig(){return localStorage[p["localStorageKeys"].APP_CONFIG]?JSON.parse(localStorage[p["localStorageKeys"].APP_CONFIG]):q.a.appConfig?q.a.appConfig:h.a.appConfig}},methods:{getPageInfo(t){const e=h.a.pageInfo;let s;try{s=JSON.parse(localStorage[p["localStorageKeys"].PAGE_INFO])}catch(a){s={}}return t?{title:s.title||t.title||e.title,description:s.description||t.description||e.description,navLinks:s.navLinks||t.navLinks||e.navLinks,footerText:s.footerText||t.footerText||e.footerText}:e},getFooterText(){return this.pageInfo&&this.pageInfo.footerText?this.pageInfo.footerText:""},injectCustomStyles(t){const e=document.createElement("style");e.textContent=t,document.head.append(e)},shouldShowSplash(){return this.appConfig.showSplashScreen||!localStorage[p["localStorageKeys"].HIDE_WELCOME_BANNER]},hideSplash(){this.shouldShowSplash()?setTimeout(()=>{this.isLoading=!1},p["splashScreenTime"]||2e3):this.isLoading=!1}},mounted(){if(this.hideSplash(),this.appConfig.customCss){const t=this.appConfig.customCss.replace(/<\/?[^>]+(>|$)/g,"");this.injectCustomStyles(t)}}},W=Y,Z=(s("5c0b"),Object(w["a"])(W,m,f,!1,null,null,null)),X=Z.exports,Q=s("8c4f"),tt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"home",style:t.getBackgroundImage()},[s("SettingsContainer",{ref:"filterComp",staticClass:"filter-container",attrs:{displayLayout:t.layout,iconSize:t.itemSizeBound,availableThemes:t.getExternalCSSLinks(),sections:t.getSections(t.sections),appConfig:t.appConfig,pageInfo:t.pageInfo,modalOpen:t.modalOpen},on:{"user-is-searchin":t.searching,"change-display-layout":t.setLayoutOrientation,"change-icon-size":t.setItemSize,"change-modal-visibility":t.updateModalVisibility}}),t.checkTheresData(t.sections)?s("div",{class:"item-group-container orientation-"+t.layout+" item-size-"+t.itemSizeBound},t._l(t.getSections(t.sections),(function(e,a){return s("ItemGroup",{key:a,class:0===t.filterTiles(e.items).length&&t.searchValue?"no-results":"",attrs:{title:e.name,icon:e.icon||void 0,displayData:t.getDisplayData(e),groupId:"section-"+a,items:t.filterTiles(e.items),itemSize:t.itemSizeBound},on:{itemClicked:function(e){return t.finishedSearching()},"change-modal-visibility":t.updateModalVisibility}})})),1):t._e(),t.checkIfResults()?s("div",{staticClass:"no-data"},[t._v(" "+t._s(t.searchValue?"No Search Results":"No Data Configured")+" ")]):t._e()],1)},et=[],st=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("section",[t.searchVisible?s("SearchBar",{ref:"SearchBar",attrs:{active:!t.modalOpen},on:{"user-is-searchin":t.userIsTypingSomething}}):t._e(),s("div",{staticClass:"options-outer"},[s("div",{class:"options-container "+(t.settingsVisible?"":"hide")},[s("ThemeSelector",{attrs:{themes:t.availableThemes,confTheme:t.getInitialTheme(),userThemes:t.getUserThemes()}}),s("LayoutSelector",{attrs:{displayLayout:t.displayLayout},on:{layoutUpdated:t.updateDisplayLayout}}),s("ItemSizeSelector",{attrs:{iconSize:t.iconSize},on:{iconSizeUpdated:t.updateIconSize}}),s("ConfigLauncher",{attrs:{sections:t.sections,pageInfo:t.pageInfo,appConfig:t.appConfig},on:{modalChanged:t.modalChanged}}),t.isUserLoggedIn()?s("IconLogout",{directives:[{name:"tooltip",rawName:"v-tooltip",value:"Logout",expression:"'Logout'"}],staticClass:"logout-icon",on:{click:function(e){return t.logout()}}}):t._e()],1),s("div",{class:"show-hide-container "+(t.settingsVisible?"hide-btn":"show-btn")},[s("button",{directives:[{name:"tooltip",rawName:"v-tooltip",value:(t.settingsVisible?"Hide":"Open")+" Settings Menu",expression:"`${settingsVisible? 'Hide' : 'Open'} Settings Menu`"}],attrs:{tabindex:"-2"},on:{click:function(e){return t.toggleSettingsVisibility()}}},[t.settingsVisible?s("IconClose"):s("IconOpen")],1)])]),s("KeyboardShortcutInfo")],1)},at=[],ot=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("form",[s("label",{attrs:{for:"filter-tiles"}},[t._v("Search")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.input,expression:"input"}],ref:"filter",attrs:{id:"filter-tiles",placeholder:"Start typing to filter..."},domProps:{value:t.input},on:{input:[function(e){e.target.composing||(t.input=e.target.value)},t.userIsTypingSomething],keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.clearFilterInput.apply(null,arguments)}}}),t.input.length>0?s("i",{staticClass:"clear-search",attrs:{title:"Clear search"},on:{click:t.clearFilterInput}},[t._v("x")]):t._e()])},nt=[];class it{constructor(t){this.index=t}resetIndex(){this.index=0}arrowNavigation(t){void 0===this.index?this.index=0:37===t?this.index-=1:38===t?this.index=it.goToPrevious(this.index):39===t?this.index+=1:40===t&&(this.index=it.goToNext(this.index)),this.index=it.getSafeElementIndex(this.index),it.selectItemByIndex(this.index).focus()}static getNumResults(){return document.getElementsByClassName("item").length}static getSafeElementIndex(t){const e=it.getNumResults();return t<0?e-1:t>=e?0:t}static selectItemByIndex(t){return t>=0&&t<=it.getNumResults()?document.getElementsByClassName("item")[t]:[document.getElementsByClassName("item")]}static findPreviousRow(t){const e=(t,e)=>it.selectItemByIndex(t).offsetTop===e,s=(t,a)=>t>=it.getNumResults()?s(0,a):e(t,a)?s(t-1,a):t,a=it.selectItemByIndex(t).offsetTop;return s(t,a)}static goToPrevious(t){const e=(t,e)=>it.selectItemByIndex(t).offsetTopit.selectItemByIndex(t).offsetTop===e,s=(t,a)=>t>=it.getNumResults()?s(0,a):e(t,a)?s(t+1,a):t,a=it.selectItemByIndex(t).offsetTop;return s(t,a)}static goToNext(t){const e=(t,e)=>it.selectItemByIndex(t).offsetTop>it.selectItemByIndex(e).offsetTop,s=it.findNextRow(t),a=s-t,o=s-it.findPreviousRow(t)-1,n=e(t,s)?0:o-a;return s+n}}var rt={name:"FilterTile",props:{active:Boolean},data(){return{input:"",akn:new it}},mounted(){window.addEventListener("keydown",t=>{const e=document.activeElement.id,{key:s,keyCode:a}=t;this.active&&(/^[a-zA-Z]$/.test(s)&&"filter-tiles"!==e?(this.$refs.filter.focus(),this.userIsTypingSomething()):a>=37&&a<=40?this.akn.arrowNavigation(a):27===a&&this.clearFilterInput())})},methods:{userIsTypingSomething(){this.$emit("user-is-searchin",this.input)},clearFilterInput(){this.input="",this.userIsTypingSomething(),document.activeElement.blur(),this.akn.resetIndex()}}},ct=rt,lt=(s("d8c4"),Object(w["a"])(ct,ot,nt,!1,null,"4039a28b",null)),ut=lt.exports,dt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"config-options"},[s("span",[t._v("Config")]),s("div",{staticClass:"config-buttons"},[s("IconSpanner",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Update configuration locally"),expression:"tooltip('Update configuration locally')"}],attrs:{tabindex:"-2"},on:{click:function(e){return t.showEditor()}}}),s("IconCloud",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Backup / restore cloud config"),expression:"tooltip('Backup / restore cloud config')"}],attrs:{tabindex:"-2"},on:{click:function(e){return t.showCloudModal()}}})],1),s("modal",{attrs:{name:t.modalNames.CONF_EDITOR,resizable:!0,width:"60%",height:"80%"},on:{closed:function(e){return t.$emit("modalChanged",!1)}}},[s("ConfigContainer",{attrs:{config:t.combineConfig()}})],1),s("modal",{attrs:{name:t.modalNames.CLOUD_BACKUP,resizable:!0,width:"65%",height:"60%"},on:{closed:function(e){return t.$emit("modalChanged",!1)}}},[s("CloudBackupRestore",{attrs:{config:t.combineConfig()}})],1)],1)},pt=[],ht=s("35c3"),mt=s.n(ht),ft=s("6780"),gt=s.n(ft),vt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("Tabs",{ref:"tabView",attrs:{navAuto:!0,name:"Add Item"}},[s("TabItem",{staticClass:"main-tab",attrs:{name:"Config"}},[s("div",{staticClass:"main-options-container"},[s("h2",[t._v("Configuration Options")]),s("a",{staticClass:"hyperlink-wrapper",attrs:{href:"/conf.yml",download:""}},[s("button",{staticClass:"config-button center"},[s("DownloadIcon",{staticClass:"button-icon"}),t._v(" Download Config ")],1)]),s("button",{staticClass:"config-button center",on:{click:function(e){return t.goToEdit()}}},[s("EditIcon",{staticClass:"button-icon"}),t._v(" Edit Sections ")],1),s("button",{staticClass:"config-button center",on:{click:function(e){return t.goToMetaEdit()}}},[s("MetaDataIcon",{staticClass:"button-icon"}),t._v(" Edit Meta Data ")],1),s("button",{staticClass:"config-button center",on:{click:function(e){return t.goToCustomCss()}}},[s("CustomCssIcon",{staticClass:"button-icon"}),t._v(" Edit Custom CSS ")],1),s("button",{staticClass:"config-button center",on:{click:function(e){return t.openCloudSync()}}},[s("CloudIcon",{staticClass:"button-icon"}),t._v(" "+t._s(t.backupId?"Edit Cloud Sync":"Enable Cloud Sync")+" ")],1),s("button",{staticClass:"config-button center",on:{click:function(e){return t.resetLocalSettings()}}},[s("DeleteIcon",{staticClass:"button-icon"}),t._v(" Reset Local Settings ")],1),s("p",{staticClass:"small-screen-note",staticStyle:{display:"none"}},[t._v(" You are using a very small screen, and some screens in this menu may not be optimal ")]),s("div",{staticClass:"config-note"},[s("p",{staticClass:"sub-title"},[t._v("Note:")]),s("span",[t._v(" All changes made here are stored locally. To apply globally, either export your config into your conf.yml file, or use the cloud backup/ restore feature. ")])])])]),s("TabItem",{staticClass:"code-container",attrs:{name:"Backup Config"}},[s("pre",{attrs:{id:"conf-yaml"}},[t._v(t._s(this.jsonParser(this.config)))]),s("div",{staticClass:"yaml-action-buttons"},[s("h2",[t._v("Actions")]),s("a",{staticClass:"yaml-button download",attrs:{href:"/conf.yml",download:""}},[t._v("Download Config")]),s("a",{staticClass:"yaml-button copy",on:{click:function(e){return t.copyConfigToClipboard()}}},[t._v("Copy Config")]),s("a",{staticClass:"yaml-button reset",on:{click:function(e){return t.resetLocalSettings()}}},[t._v("Reset Config")])])]),s("TabItem",{attrs:{name:"Edit Sections"}},[s("JsonEditor",{attrs:{config:t.config}})],1),s("TabItem",{attrs:{name:"Edit Site Meta"}},[s("EditSiteMeta",{attrs:{config:t.config}})],1),s("TabItem",{attrs:{name:"Custom Styles"}},[s("CustomCssEditor",{attrs:{config:t.config,initialCss:"hello"}})],1)],1)},yt=[],bt=s("1020"),St=s.n(bt),Ct=s("2e7b"),wt=s.n(Ct),It=(s("1d89"),s("d97e"));const _t=t=>t.split("\n").map(t=>t.trimRight()).join("\n"),kt=t=>{throw new Error("Error in Json to YAML conversion: "+t)},xt=t=>{let e="";const s={undefined(){return"null"},null(){return"null"},number(t){return t},boolean(t){return t?"true":"false"},string(t){return JSON.stringify(t)},array(t){let a="";return 0===t.length?(a+="[]",a):(e=e.replace(/$/," "),t.forEach(t=>{const o=s[Object(It["typeOf"])(t)];o||kt(Object(It["typeOf"])(t)),a+=`\n${e}- ${o(t,!0)}`}),e=e.replace(/ {2}/,""),a)},object(t,a,o){let n="";return 0===Object.keys(t).length?(n+="{}",n):(o||(e=e.replace(/$/," ")),Object.keys(t).forEach((o,i)=>{const r=t[o],c=s[Object(It["typeOf"])(r)];"undefined"!==typeof r&&(c||kt(Object(It["typeOf"])(r)),a&&0===i||(n+="\n"+e),n+=`${o}: ${c(r)}`)}),e=e.replace(/ {2}/,""),n)},function(){return"[object Function]"}};return _t(s[Object(It["typeOf"])(t)](t,!0,!0)+"\n")};var Et=xt,Ot=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"site-meta-container"},[s("h2",[t._v("Edit Site Meta")]),s("div",{staticClass:"form"},[s("div",{staticClass:"row"},[s("span",[t._v("Title")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.formElements.title,expression:"formElements.title"}],domProps:{value:t.formElements.title},on:{input:function(e){e.target.composing||t.$set(t.formElements,"title",e.target.value)}}})]),s("div",{staticClass:"row"},[s("span",[t._v("Description")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.formElements.description,expression:"formElements.description"}],domProps:{value:t.formElements.description},on:{input:function(e){e.target.composing||t.$set(t.formElements,"description",e.target.value)}}})]),s("div",{staticClass:"row"},[s("span",[t._v("Footer Text")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.formElements.footerText,expression:"formElements.footerText"}],domProps:{value:t.formElements.footerText},on:{input:function(e){e.target.composing||t.$set(t.formElements,"footerText",e.target.value)}}})])]),s("div",{staticClass:"form"},[s("h2",[t._v("Nav Bar Links")]),t._l(t.formElements.navLinks,(function(e,a){return s("div",{key:a,staticClass:"add-nav-bar-link"},[s("div",{staticClass:"row"},[s("span",[t._v("Link Text")]),s("input",{directives:[{name:"model",rawName:"v-model",value:e.title,expression:"link.title"}],domProps:{value:e.title},on:{input:function(s){s.target.composing||t.$set(e,"title",s.target.value)}}})]),s("div",{staticClass:"row"},[s("span",[t._v("Link URL")]),s("input",{directives:[{name:"model",rawName:"v-model",value:e.path,expression:"link.path"}],domProps:{value:e.path},on:{input:function(s){s.target.composing||t.$set(e,"path",s.target.value)}}})])])})),s("button",{staticClass:"add-new-link",on:{click:function(e){return t.addNavLinkRow()}}},[s("AddNewIcon"),t._v(" Add New Link ")],1)],2),s("button",{staticClass:"save-button",on:{click:function(e){return t.save()}}},[s("SaveConfigIcon"),t._v(" Save Changes ")],1)])},Tt=[],Lt=s("7152"),zt=s.n(Lt),Nt=s("90ff"),Mt=s.n(Nt),Ht={name:"EditSiteMeta",props:{config:Object},components:{AddNewIcon:zt.a,SaveConfigIcon:Mt.a},methods:{save(){const t={...this.config.pageInfo};t.title=this.formElements.title,t.description=this.formElements.description,t.footerText=this.formElements.footerText,this.formElements.navLinks&&(t.navLinks=this.formElements.navLinks.filter(t=>""!==t.title)),localStorage.setItem(p["localStorageKeys"].PAGE_INFO,JSON.stringify(t)),this.$toasted.show("Changes saved succesfully"),setTimeout(()=>{location.reload()},1500)},addNavLinkRow(){this.formElements.navLinks.push({title:"",path:""})}},data(){return{formElements:{title:this.config.pageInfo.title,description:this.config.pageInfo.description,footerText:this.config.pageInfo.footerText,navLinks:this.config.pageInfo.navLinks||[]}}}},At=Ht,Pt=(s("51b7"),Object(w["a"])(At,Ot,Tt,!1,null,"772067bb",null)),jt=Pt.exports,Bt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"json-editor-outer"},[s("v-jsoneditor",{attrs:{options:t.options,height:"580px"},model:{value:t.jsonData,callback:function(e){t.jsonData=e},expression:"jsonData"}}),s("button",{class:"save-button "+(t.isValid?"":"err"),on:{click:function(e){return t.save()}}},[t._v("Save Changes")]),s("p",{staticClass:"errors"},[s("ul",[t._l(t.errorMessages,(function(e,a){return s("li",{key:a,class:"type-"+e.type},[t._v(" "+t._s(e.msg)+" ")])})),t.errorMessages.length<1?s("li",{staticClass:"type-valid"},[t._v(" Config is Valid ")]):t._e()],2)]),t._m(0)],1)},$t=[function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("p",{staticClass:"note"},[t._v(" It is recommend to backup your existing confiruration before making any changes. "),s("br"),t._v(" Remember that these changes are only applied locally, and will need to be exported to your conf.yml ")])}],Vt=s("bcb2"),Dt=s.n(Vt),Kt=s("831b"),Ut={name:"JsonEditor",props:{config:Object},components:{VJsoneditor:Dt.a},data(){return{jsonData:this.config,errorMessages:[],options:{schema:Kt,mode:"tree",modes:["tree","code","preview"],name:"config",onValidationError:this.validationErrors}}},computed:{isValid(){return this.errorMessages.length<1}},methods:{save(){const t=this.jsonData;t.sections&&localStorage.setItem(p["localStorageKeys"].CONF_SECTIONS,JSON.stringify(t.sections)),t.pageInfo&&localStorage.setItem(p["localStorageKeys"].PAGE_INFO,JSON.stringify(t.pageInfo)),t.appConfig&&localStorage.setItem(p["localStorageKeys"].APP_CONFIG,JSON.stringify(t.appConfig)),t.appConfig.theme&&localStorage.setItem(p["localStorageKeys"].THEME,t.appConfig.theme),this.$toasted.show("Changes saved succesfully")},validationErrors(t){const e=[];t.forEach(t=>{switch(t.type){case"validation":e.push({type:"validation",msg:`Validatation Warning: ${t.error.keyword} ${t.error.message}`});break;case"error":e.push({type:"parse",msg:t.message});break;default:e.push({type:"editor",msg:"Error in JSON"});break}}),this.errorMessages=e}}},Ft=Ut,Rt=(s("80a7"),Object(w["a"])(Ft,Bt,$t,!1,null,null,null)),Jt=Rt.exports,Gt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"json-editor-outer"},[s("prism-editor",{staticClass:"my-editor",attrs:{highlight:t.highlighter,"line-numbers":""},model:{value:t.customCss,callback:function(e){t.customCss=e},expression:"customCss"}}),s("button",{staticClass:"save-button",on:{click:function(e){return t.save()}}},[t._v("Save Changes")]),t._m(0)],1)},qt=[function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("p",{staticClass:"quick-note"},[s("b",[t._v("Note")]),t._v(": You will need to refresh the page for your changes to take effect. Styles overides are only stored locally, so it is reccomended to make a copy of your CSS. To remove all custom styles, delete the contents and hit Save Changes ")])}],Yt=s("e57a"),Wt=s("8c7a"),Zt=(s("6605"),s("dff1"),s("cabf"),{name:"JsonEditor",props:{config:Object},components:{PrismEditor:Yt["a"]},data(){return{customCss:this.config.appConfig.customCss||"\n\n\n\n\n"}},methods:{validate(t){return""===t||t.match(/((?:^\s*)([\w#.@*,:\-.:>,*\s]+)\s*{(?:[\s]*)((?:[A-Za-z\- \s]+[:]\s*['"0-9\w .,/()\-!%]+;?)*)*\s*}(?:\s*))/gim)},save(){let t="";if(this.validate(this.customCss)){const e={...this.config.appConfig};e.customCss=this.customCss,localStorage.setItem(p["localStorageKeys"].APP_CONFIG,JSON.stringify(e)),t="Changes saved succesfully",this.inject(this.customCss),""===this.customCss&&setTimeout(()=>{location.reload()},1500)}else t="Error - Invalid CSS";this.$toasted.show(t)},inject(t){const e=t.replace(/<\/?[^>]+(>|$)/g,""),s=document.createElement("style");s.textContent=e,document.head.append(s)},highlighter(t){return Object(Wt["highlight"])(t,Wt["languages"].css)}}}),Xt=Zt,Qt=(s("9e50"),Object(w["a"])(Xt,Gt,qt,!1,null,null,null)),te=Qt.exports,ee=s("cbd9"),se=s.n(ee),ae=s("0278"),oe=s.n(ae),ne=s("e7fa"),ie=s.n(ne),re=s("9350"),ce=s.n(re),le=s("7da9"),ue=s.n(le),de={name:"ConfigContainer",data(){return{jsonParser:Et,backupId:localStorage[p["localStorageKeys"].BACKUP_ID]||""}},props:{config:Object},computed:{sections:function(){return this.config.sections}},components:{EditSiteMeta:jt,JsonEditor:Jt,CustomCssEditor:te,DownloadIcon:se.a,DeleteIcon:oe.a,EditIcon:ie.a,CloudIcon:gt.a,MetaDataIcon:ce.a,CustomCssIcon:ue.a},methods:{goToEdit(){const t=this.$refs.tabView.navItems[2];this.$refs.tabView.activeTabItem({tabItem:t,byUser:!0})},goToMetaEdit(){const t=this.$refs.tabView.navItems[3];this.$refs.tabView.activeTabItem({tabItem:t,byUser:!0})},goToCustomCss(){const t=this.$refs.tabView.navItems[4];this.$refs.tabView.activeTabItem({tabItem:t,byUser:!0})},openCloudSync(){this.$modal.show(p["modalNames"].CLOUD_BACKUP)},copyConfigToClipboard(){navigator.clipboard.writeText(this.jsonParser(this.config))},resetLocalSettings(){const t="This will remove all user settings from local storage, but won't effect your 'conf.yml' file. It is recommend to make a backup of your modified YAML settings first.\n\nAre you sure you want to proceed?",e=confirm(t);e&&(localStorage.clear(),this.$toasted.show("Data cleared succesfully"),setTimeout(()=>{location.reload()},1900))}},mounted(){St.a.registerLanguage("yaml",wt.a);const t=St.a.highlight(this.jsonParser(this.config),{language:"yaml"}).value;document.getElementById("conf-yaml").innerHTML=t}},pe=de,he=(s("eb32"),s("1d47"),Object(w["a"])(pe,vt,yt,!1,null,"00f0c6a7",null)),me=he.exports,fe=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"cloud-backup-restore-wrapper"},[t._m(0),s("div",{staticClass:"section backup-section"},[t.backupId?s("h3",[t._v("Update Backup")]):s("h3",[t._v("Make a Backup")]),s("Input",{attrs:{name:"backup-password",label:t.backupId?"Enter your Password":"Choose a Password",layout:"vertical",type:"password"},model:{value:t.backupPassword,callback:function(e){t.backupPassword=e},expression:"backupPassword"}}),s("Button",{attrs:{click:t.checkPass},scopedSlots:t._u([{key:"text",fn:function(){return[t._v(t._s(t.backupId?"Update Backup":"Backup"))]},proxy:!0},{key:"icon",fn:function(){return[s("IconBackup")]},proxy:!0}])}),t.backupId?s("div",{staticClass:"results-view"},[s("span",{staticClass:"backup-id-label"},[t._v("Your Backup ID: ")]),s("pre",{staticClass:"backup-id-value"},[t._v(t._s(t.backupId))]),s("span",{staticClass:"backup-id-note"},[t._v(" This is used to restore from backups later. So keep it, along with your password somewhere safe. ")])]):t._e()],1),s("div",{staticClass:"section restore-section"},[s("h3",[t._v("Restore a Backup")]),s("Input",{attrs:{name:"restore-code",label:"Restore ID"},model:{value:t.restoreCode,callback:function(e){t.restoreCode=e},expression:"restoreCode"}}),s("Input",{attrs:{name:"restore-password",label:"Password",type:"password"},model:{value:t.restorePassword,callback:function(e){t.restorePassword=e},expression:"restorePassword"}}),s("Button",{attrs:{click:t.restoreBackup},scopedSlots:t._u([{key:"text",fn:function(){return[t._v("Restore")]},proxy:!0},{key:"icon",fn:function(){return[s("IconRestore")]},proxy:!0}])})],1)])},ge=[function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"section intro"},[s("h2",[t._v("Cloud Backup & Restore")]),s("p",{staticClass:"intro"},[t._v(" Cloud backup and restore is an optional feature, that enables you to upload your config to the internet, and then restore it on any other device or instance of Dashy. "),s("br"),s("br"),t._v(" All data is fully end-to-end encrypted with AES, using your password as the key. "),s("br"),t._v(" For more info, please see the "),s("a",{attrs:{href:"https://github.com/Lissy93/dashy/blob/master/docs/backup-restore.md"}},[t._v("docs")])])])}],ve=s("94f8"),ye=s.n(ve),be=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("button",{on:{click:function(e){return t.click()}}},[t._t("default"),t._t("text"),t._t("icon")],2)},Se=[],Ce={name:"Button",props:{text:String,click:Function}},we=Ce,Ie=(s("c8c0"),Object(w["a"])(we,be,Se,!1,null,"4bb44f8e",null)),_e=Ie.exports,ke=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{class:"input-container "+t.layout},[t.label?s("label",{attrs:{for:"name"}},[t._v(t._s(t.label))]):t._e(),s("input",{attrs:{type:t.type,name:t.name,id:t.name,placeholder:t.placeholder},domProps:{value:t.value},on:{input:function(e){return t.updateValue(e.target.value)}}})])},xe=[],Ee={name:"Input",props:{value:String,label:String,name:String,placeholder:String,type:{default:"text",type:String},layout:{validator:t=>-1!==["horizontal","vertical"].indexOf(t),type:String,default:"vertical"}},methods:{updateValue(t){this.$emit("input",t)}}},Oe=Ee,Te=(s("2d25"),Object(w["a"])(Oe,ke,xe,!1,null,"5df13ed2",null)),Le=Te.exports,ze=s("3a1e"),Ne=s.n(ze),Me=s("e6a4"),He=s.n(Me),Ae=s("c198"),Pe=s.n(Ae),je=s("f8d5"),Be=s.n(je),$e=s("bc3a"),Ve=s.n($e);const De=p["backupEndpoint"],Ke=(t,e)=>{const s=JSON.stringify(t),a=Pe.a.encrypt(s,e);return a.toString()},Ue=(t,e)=>Pe.a.decrypt(t,e).toString(Be.a),Fe=t=>ye()(t).toString().slice(0,14),Re=(t,e)=>Ve.a.post(De,{userData:Ke(t,e),subHash:Fe(e)}),Je=(t,e,s)=>Ve.a.put(De,{backupId:s,userData:Ke(t,e),subHash:Fe(e)}),Ge=t=>Object.entries(t).map(t=>t.map(encodeURIComponent).join("=")).join("&"),qe=(t,e)=>{const s=Ge({backupId:t,subHash:Fe(e)}),a=`${De}/?${s}`;return new Promise((t,s)=>{Ve.a.get(a).then(a=>{if(!a.data||a.data.errorMsg)s(a.data.errorMsg||"Error");else{const n=Ue(a.data.userData.userData,e);try{t(JSON.parse(n))}catch(o){s(o)}}})})};var Ye={name:"CloudBackupRestore",props:{config:Object},data(){return{backupPassword:"",restorePassword:"",restoreCode:"",backupId:localStorage[p["localStorageKeys"].BACKUP_ID]||""}},components:{Button:_e,Input:Le,IconBackup:Ne.a,IconRestore:He.a},methods:{restoreBackup(){qe(this.restoreCode,this.restorePassword).then(t=>{this.restoreFromBackup(t,this.restoreCode)}).catch(t=>{this.showErrorMsg(t)})},checkPass(){const t=localStorage[p["localStorageKeys"].BACKUP_HASH]||void 0;t?t===this.makeHash(this.backupPassword)?this.makeUpdate():this.showErrorMsg("Incorrect password. Please enter your current password."):this.makeBackup()},makeBackup(){Re(this.config,this.backupPassword).then(t=>{t.data&&!t.data.errorMsg&&t.data.backupId?this.updateUiAfterBackup(t.data.backupId,!1):this.showErrorMsg(t.data.errorMsg||"Error")}).catch(()=>{this.showErrorMsg("Unable to process request")})},makeUpdate(){Je(this.config,this.backupPassword,this.backupId).then(t=>{t.data&&!t.data.errorMsg&&t.data.backupId?this.updateUiAfterBackup(t.data.backupId,!0):this.showErrorMsg(t.data.errorMsg||"Error")}).catch(()=>{this.showErrorMsg("Unable to process request")})},restoreFromBackup(t,e){localStorage.setItem(p["localStorageKeys"].CONF_SECTIONS,JSON.stringify(t.sections)),localStorage.setItem(p["localStorageKeys"].APP_CONFIG,JSON.stringify(t.appConfig)),localStorage.setItem(p["localStorageKeys"].PAGE_INFO,JSON.stringify(t.pageInfo)),t.appConfig.theme&&localStorage.setItem(p["localStorageKeys"].THEME,t.appConfig.theme),this.setBackupIdLocally(e,this.restorePassword),this.showSuccessMsg("Config Restored Succesfully"),setTimeout(()=>{location.reload()},1500)},updateUiAfterBackup(t,e=!1){this.setBackupIdLocally(t,this.backupPassword),this.showSuccessMsg((e?"Update":"Backup")+" Completed Succesfully"),this.backupPassword=""},showErrorMsg(t){this.$toasted.show(t,{className:"toast-error"})},showSuccessMsg(t){this.$toasted.show(t,{className:"toast-success"})},makeHash(t){return ye()(t).toString()},setBackupIdLocally(t,e){this.backupId=t;const s=this.makeHash(e);localStorage.setItem(p["localStorageKeys"].BACKUP_ID,t),localStorage.setItem(p["localStorageKeys"].BACKUP_HASH,s)}}},We=Ye,Ze=(s("baed"),Object(w["a"])(We,fe,ge,!1,null,"763657f4",null)),Xe=Ze.exports,Qe={name:"ConfigLauncher",data(){return{modalNames:p["modalNames"]}},components:{IconSpanner:mt.a,IconCloud:gt.a,ConfigContainer:me,CloudBackupRestore:Xe},props:{sections:Array,pageInfo:Object,appConfig:Object},methods:{showEditor:function(){this.$modal.show(p["modalNames"].CONF_EDITOR),this.$emit("modalChanged",!0)},showCloudModal:function(){this.$modal.show(p["modalNames"].CLOUD_BACKUP),this.$emit("modalChanged",!0)},combineConfig(){const t={};return t[p["topLevelConfKeys"].APP_CONFIG]=this.appConfig,t[p["topLevelConfKeys"].PAGE_INFO]=this.pageInfo,t[p["topLevelConfKeys"].SECTIONS]=this.sections,t[p["topLevelConfKeys"].APP_CONFIG].theme=localStorage[p["localStorageKeys"].THEME]||t[p["topLevelConfKeys"].APP_CONFIG].theme,t},tooltip(t){return{content:t,trigger:"hover focus",delay:250}}}},ts=Qe,es=(s("2f87"),s("192d"),Object(w["a"])(ts,dt,pt,!1,null,"437d8549",null)),ss=es.exports,as=function(){var t=this,e=t.$createElement,s=t._self._c||e;return t.themes?s("div",{staticClass:"theme-selector-section"},[s("span",{staticClass:"theme-label"},[t._v("Theme")]),s("v-select",{staticClass:"theme-dropdown",attrs:{options:t.themeNames,tabindex:-2},model:{value:t.selectedTheme,callback:function(e){t.selectedTheme=e},expression:"selectedTheme"}})],1):t._e()},os=[];const ns=function(){const t=t=>{const e=document.createElement("link");return e.rel="stylesheet",e.href=t,document.head.appendChild(e),new Promise((t,s)=>{e.onload=e=>{const{sheet:s}=e.target;s.disabled=!0,t(s)},e.onerror=s})},e=(t,e)=>{const s=t;if(e&&!t[e])throw new Error(`Theme: '${e}' does not exist.`);Object.keys(t).forEach(t=>{s[t].disabled=t!==e})},s={};return{add(e,a){return t(a).then(t=>{s[e]=t})},set theme(t){e(s,t)},get theme(){return Object.keys(s).find(t=>!s[t].disabled)}}};var is=ns,rs={name:"ThemeSelector",props:{themes:Object,confTheme:String,userThemes:Array},watch:{selectedTheme(t){this.updateTheme(t)}},data(){return{selectedTheme:this.getInitialTheme(),themeHelper:new is,loading:!0,builtInThemes:this.userThemes.concat(h.a.builtInThemes)}},computed:{themeNames:function(){const t=Object.keys(this.themes);return t.concat(this.builtInThemes)}},created(){const t=Object.keys(this.themes).map(t=>this.themeHelper.add(t,this.themes[t]));this.isThemeLocal(this.selectedTheme)?this.updateTheme(this.selectedTheme):this.selectedTheme!==h.a.theme&&Promise.all(t).then(()=>{this.updateTheme(this.selectedTheme)})},methods:{setLocalTheme(t){const e=document.getElementsByTagName("html")[0];e.hasAttribute("data-theme")&&e.removeAttribute("data-theme"),e.setAttribute("data-theme",t)},getInitialTheme(){return localStorage[p["localStorageKeys"].THEME]||this.confTheme||h.a.theme},isThemeLocal(t){return this.builtInThemes.includes(t)},updateTheme(t){"Deafault"===t?(this.resetToDefault(),this.themeHelper.theme="Deafault"):this.isThemeLocal(t)?this.setLocalTheme(t):this.themeHelper.theme=t,localStorage.setItem(p["localStorageKeys"].THEME,t)},resetToDefault(){document.getElementsByTagName("html")[0].removeAttribute("data-theme")}}},cs=rs,ls=(s("4ade"),Object(w["a"])(cs,as,os,!1,null,null,null)),us=ls.exports,ds=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",[s("span",{staticClass:"options-label"},[t._v("Layout")]),s("div",{staticClass:"display-options"},[s("IconDeafault",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Auto"),expression:"tooltip('Auto')"}],class:"layout-icon "+("auto"===t.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateDisplayLayout("auto")}}}),s("IconHorizontal",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Horizontal"),expression:"tooltip('Horizontal')"}],class:"layout-icon "+("horizontal"===t.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateDisplayLayout("horizontal")}}}),s("IconVertical",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Vertical"),expression:"tooltip('Vertical')"}],class:"layout-icon "+("vertical"===t.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateDisplayLayout("vertical")}}})],1)])},ps=[],hs=s("c715"),ms=s.n(hs),fs=s("570d"),gs=s.n(fs),vs=s("f9d7"),ys=s.n(vs),bs={name:"LayoutSelector",data(){return{input:""}},props:{displayLayout:String},components:{IconDeafault:ms.a,IconHorizontal:gs.a,IconVertical:ys.a},methods:{updateDisplayLayout(t){this.$emit("layoutUpdated",t)},tooltip(t){return{content:t,trigger:"hover focus",delay:250}}}},Ss=bs,Cs=(s("7dc7"),Object(w["a"])(Ss,ds,ps,!1,null,"c819d738",null)),ws=Cs.exports,Is=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",[s("span",{staticClass:"options-label"},[t._v("Icon Size")]),s("div",{staticClass:"display-options"},[s("IconSmall",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Small"),expression:"tooltip('Small')"}],class:"layout-icon "+("small"===t.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateIconSize("small")}}}),s("IconMedium",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Medium"),expression:"tooltip('Medium')"}],class:"layout-icon "+("medium"===t.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateIconSize("medium")}}}),s("IconLarge",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Large"),expression:"tooltip('Large')"}],class:"layout-icon "+("large"===t.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateIconSize("large")}}})],1)])},_s=[],ks=s("d8e8"),xs=s.n(ks),Es=s("7075"),Os=s.n(Es),Ts=s("922c"),Ls=s.n(Ts),zs={name:"IconSizeSelector",data(){return{input:""}},props:{iconSize:String},components:{IconSmall:xs.a,IconMedium:Os.a,IconLarge:Ls.a},methods:{updateIconSize(t){this.$emit("iconSizeUpdated",t)},tooltip(t){return{content:t,trigger:"hover focus",delay:250}}}},Ns=zs,Ms=(s("47d9"),Object(w["a"])(Ns,Is,_s,!1,null,"58966274",null)),Hs=Ms.exports,As=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("transition",{attrs:{name:"slide-fade"}},[t.shouldHide?t._e():s("div",{staticClass:"kb-sc-info"},[s("h5",[t._v("There are keyboard shortcuts! ⌨️🙌")]),s("div",{staticClass:"close",attrs:{title:"Hide forever [Esc]"},on:{click:function(e){return t.hideWelcomeHelper()}}},[t._v("x")]),s("p",{attrs:{title:"Press [Esc] to hide this tip forever. See there's even a shortcut for that! 🚀"}},[t._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 🥳 ")])])])},Ps=[],js={name:"KeyboardShortcutInfo",data(){return{shouldHide:!0,timeDelay:3e3}},methods:{shouldHideWelcomeMessage(){return!!localStorage[p["localStorageKeys"].HIDE_WELCOME_BANNER]},hideWelcomeHelper(){this.shouldHide=!0,localStorage.setItem(p["localStorageKeys"].HIDE_WELCOME_BANNER,!0),window.removeEventListener("keyup",this.keyPressEvent)},keyPressEvent(t){27===t.keyCode&&this.hideWelcomeHelper()}},mounted(){const t=this.shouldHideWelcomeMessage();t?this.$destroy():(window.setTimeout(()=>{this.shouldHide=t},this.timeDelay),window.addEventListener("keyup",this.keyPressEvent))}},Bs=js,$s=(s("9517"),Object(w["a"])(Bs,As,Ps,!1,null,"c5f17d9a",null)),Vs=$s.exports;const Ds=t=>ye()(t.toString()).toString().toLowerCase(),Ks=t=>{const e=t.map(t=>Ds(t));let s=!1;return document.cookie.split(";").forEach(t=>{if(t&&t.split("=").length>1){const a=t.split("=")[0].trim(),o=t.split("=")[1].trim();a===p["cookieKeys"].AUTH_TOKEN&&e.includes(o)&&(s=!0)}}),s},Us=(t,e,s)=>{let a;return t?e?s.forEach(s=>{s.user===t&&(a=s.hash.toLowerCase()===ye()(e).toString().toLowerCase()?{correct:!0,msg:"Logging in..."}:{correct:!1,msg:"Incorrect Password"})}):a={correct:!1,msg:"Missing Password"}:a={correct:!1,msg:"Missing Username"},a||{correct:!1,msg:"User not found"}},Fs=(t,e)=>{const s={user:t,hash:ye()(e).toString().toLowerCase()};document.cookie=`authenticationToken=${Ds(s)}; max-age=600`,localStorage.setItem(p["localStorageKeys"].USERNAME,t)},Rs=()=>{document.cookie="authenticationToken=null",localStorage.removeItem(p["localStorageKeys"].USERNAME)};var Js=s("0123"),Gs=s.n(Js),qs=s("5703"),Ys=s.n(qs),Ws=s("5f32"),Zs=s.n(Ws),Xs={name:"SettingsContainer",props:{displayLayout:String,iconSize:String,availableThemes:Object,appConfig:Object,pageInfo:Object,sections:Array,modalOpen:Boolean},components:{SearchBar:ut,ConfigLauncher:ss,ThemeSelector:us,LayoutSelector:ws,ItemSizeSelector:Hs,KeyboardShortcutInfo:Vs,IconLogout:Gs.a,IconOpen:Ys.a,IconClose:Zs.a},methods:{userIsTypingSomething(t){this.$emit("user-is-searchin",t)},clearFilterInput(){this.$refs.SearchBar.clearFilterInput()},updateDisplayLayout(t){this.$emit("change-display-layout",t)},updateIconSize(t){this.$emit("change-icon-size",t)},modalChanged(t){this.$emit("change-modal-visibility",t)},getInitialTheme(){return this.appConfig.theme||""},logout(){Rs(),this.$toasted.show("Logged Out"),setTimeout(()=>{location.reload()},100)},isUserLoggedIn(){return!!localStorage[p["localStorageKeys"].USERNAME]},getUserThemes(){const t=this.appConfig.cssThemes||[];return"string"===typeof t?[t]:t},toggleSettingsVisibility(){this.settingsVisible=!this.settingsVisible,localStorage.setItem(p["localStorageKeys"].HIDE_SETTINGS,this.settingsVisible)},getSettingsVisibility(){return JSON.parse(localStorage[p["localStorageKeys"].HIDE_SETTINGS]||h.a.visibleComponents.settings)}},data(){return{searchVisible:h.a.visibleComponents.searchBar,settingsVisible:this.getSettingsVisibility()}}},Qs=Xs,ta=(s("b4ba"),Object(w["a"])(Qs,st,at,!1,null,"0a85c63b",null)),ea=ta.exports,sa=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("Collapsable",{attrs:{title:t.title,icon:t.icon,uniqueKey:t.groupId,collapsed:t.displayData.collapsed,cols:t.displayData.cols,rows:t.displayData.rows,color:t.displayData.color,customStyles:t.displayData.customStyles}},[!t.items||t.items.length<1?s("div",{staticClass:"no-items"},[t._v(" No Items to Show Yet ")]):s("div",{class:"there-are-items "+(t.isGridLayout?"item-group-grid":""),style:t.gridStyle},[t._l(t.items,(function(e,a){return s("Item",{key:a+"_"+t.makeId(e.title),attrs:{id:a+"_"+t.makeId(e.title),url:e.url,title:e.title,description:e.description,icon:e.icon,target:e.target,color:e.color,backgroundColor:e.backgroundColor,itemSize:t.newItemSize},on:{itemClicked:function(e){return t.$emit("itemClicked")},triggerModal:t.triggerModal}})})),s("div",{ref:"modalContainer"})],2),s("IframeModal",{ref:"iframeModal-"+t.groupId,attrs:{name:"iframeModal-"+t.groupId},on:{closed:function(e){return t.$emit("itemClicked")},modalChanged:t.modalChanged}})],1)},aa=[],oa=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("a",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.getTooltipOptions(),expression:"getTooltipOptions()"}],class:"item "+(t.icon?"":"short")+" size-"+t.itemSize,style:"--open-icon: "+t.getUnicodeOpeningIcon()+"; "+t.customStyles,attrs:{href:"iframe"!==t.target?t.url:"#",target:"newtab"===t.target?"_blank":"",rel:"noopener noreferrer",tabindex:"0",id:"link-"+t.id},on:{click:t.itemOpened}},[s("div",{class:"tile-title "+(t.icon?"":"bounce"),attrs:{id:"tile-"+t.id}},[s("span",{staticClass:"text"},[t._v(t._s(t.title))]),s("div",{staticClass:"overflow-dots"},[t._v("...")]),s("p",{staticClass:"description"},[t._v(t._s(t.description))])]),s("Icon",{staticClass:"bounce",style:t.customStyles,attrs:{icon:t.icon,url:t.url,size:t.itemSize,color:t.color}}),s("ItemOpenMethodIcon",{staticClass:"opening-method-icon",attrs:{isSmall:!t.icon,openingMethod:t.target,position:"medium"===t.itemSize?"bottom right":"top right"}})],1)},na=[],ia=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",["font-awesome"===t.iconType?s("i",{class:t.icon+" "+t.size}):t.icon?s("img",{class:"tile-icon "+t.size+" "+(t.broken?"broken":""),attrs:{src:t.iconPath},on:{error:t.imageNotFound}}):t._e(),t.broken?s("BrokenImage",{staticClass:"missing-image"}):t._e()],1)},ra=[],ca=s("9635"),la=s.n(ca);const ua=function(t){console.warn(t)};var da=ua,pa={name:"Icon",props:{icon:String,url:String,size:String},components:{BrokenImage:la.a},computed:{iconType:function(){return this.determineImageType(this.icon)},iconPath:function(){return this.getIconPath(this.icon,this.url)}},data(){return{broken:!1}},methods:{isUrl(t){const e=new RegExp(/(http|https):\/\/(\w+:{0,1}\w*)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%!\-/]))?/);return e.test(t)},isImage(t){const e=/(?:\.([^.]+))?$/,s=["png","jpg"],a=e.exec(t);return a.length>=1&&s.includes(a[1])},getFavicon(t){const e=/(127\.)|(192\.168\.)|(10\.)|(172\.1[6-9]\.)|(172\.2[0-9]\.)|(172\.3[0-1]\.)|(::1$)|([fF][cCdD])|(localhost)/;if(e.test(t)){const e=t.split("/");if(e.length>=2)return`${e[0]}/${e[1]}/${e[2]}/favicon.ico`}else if(t.includes("http"))return"https://s2.googleusercontent.com/s2/favicons?domain="+t;return""},getLocalImagePath(t){return"/item-icons/"+t},getIconPath(t,e){switch(this.determineImageType(t)){case"url":return t;case"img":return this.getLocalImagePath(t);case"favicon":return this.getFavicon(e);case"svg":return t;default:return""}},determineImageType(t){let e="";return e=t?t.endsWith(".svg")?"svg":this.isUrl(t)?"url":this.isImage(t)?"img":t.includes("fa-")?"font-awesome":"favicon"===t?"favicon":"none":"none",e},imageNotFound(){this.broken=!0,da(`The path to '${this.icon}' could not be resolved`)}}},ha=pa,ma=(s("de40"),Object(w["a"])(ha,ia,ra,!1,null,null,null)),fa=ma.exports,ga=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{class:t.makeClass(t.position,t.isSmall,t.isTransparent)},["newtab"===t.openingMethod?s("NewTabOpenIcon"):"sametab"===t.openingMethod?s("SameTabOpenIcon"):"iframe"===t.openingMethod?s("IframeOpenIcon"):t._e()],1)},va=[],ya=s("237e"),ba=s.n(ya),Sa=s("2352"),Ca=s.n(Sa),wa=s("1946"),Ia=s.n(wa),_a={name:"ItemOpenMethodIcon",props:{openingMethod:String,isSmall:Boolean,position:String,isTransparent:Boolean},methods:{makeClass(t="top right",e=!1,s=!1){return`opening-method-icon\n ${t||"top right"}\n ${e?"short":""}\n ${s?"transparent":""}`}},components:{NewTabOpenIcon:ba.a,SameTabOpenIcon:Ca.a,IframeOpenIcon:Ia.a}},ka=_a,xa=(s("699c"),Object(w["a"])(ka,ga,va,!1,null,"17201835",null)),Ea=xa.exports,Oa={name:"Item",props:{id:String,title:String,subtitle:String,description:String,icon:String,color:String,backgroundColor:String,url:String,target:{type:String,default:"newtab",validator:t=>-1!==["newtab","sametab","iframe"].indexOf(t)},itemSize:String},data(){return{getId:this.id,customStyles:{color:this.color,background:this.backgroundColor}}},components:{Icon:fa,ItemOpenMethodIcon:Ea},methods:{itemOpened(t){t.altKey||"iframe"===this.target?(t.preventDefault(),this.$emit("triggerModal",this.url)):this.$emit("itemClicked")},manageTitleEllipse(){const t=document.getElementById("tile-"+this.getId);if(t){const e=(t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth)&&this.title.length>12;e&&(t.className+=" is-overflowing")}},getTooltipOptions(){return{disabled:!this.description,content:this.description,trigger:"hover focus",hideOnTargetClick:!0,html:!1,delay:{show:600,hide:200}}},getUnicodeOpeningIcon(){switch(this.target){case"newtab":return'"\\f360"';case"sametab":return'"\\f24d"';case"iframe":return'"\\f2d0"';default:return'"\\f054"'}}},mounted(){this.manageTitleEllipse()}},Ta=Oa,La=(s("826e"),s("f719"),Object(w["a"])(Ta,oa,na,!1,null,null,null)),za=La.exports,Na=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{class:"collapsable "+t.checkSpanNum(t.cols,"col")+" "+t.checkSpanNum(t.rows,"row"),style:(t.color?"background: "+t.color:"")+"; "+t.sanitizeCustomStyles(t.customStyles)+";"},[s("input",{staticClass:"toggle",attrs:{id:"collapsible-"+t.uniqueKey,type:"checkbox",tabIndex:"-1"},domProps:{checked:t.getCollapseState()},on:{change:t.collapseChanged}}),s("label",{staticClass:"lbl-toggle",attrs:{for:"collapsible-"+t.uniqueKey,tabindex:"-1"}},[t.icon?s("Icon",{staticClass:"section-icon",attrs:{icon:t.icon,size:"small"}}):t._e(),s("h3",[t._v(t._s(t.title))])],1),s("div",{staticClass:"collapsible-content"},[s("div",{staticClass:"content-inner"},[t._t("default")],2)])])},Ma=[],Ha={name:"CollapsableContainer",props:{uniqueKey:String,title:String,icon:String,collapsed:Boolean,cols:Number,rows:Number,color:String,customStyles:String},components:{Icon:fa},data(){return{isOpen:!this.collapsed}},methods:{checkSpanNum(t,e){const s=4;let a=/^\d*$/.test(t)?parseInt(t,10):1;return a=a>s?s:a,`${e}-${a}`},sanitizeCustomStyles(t){return t?t.replace(/[^a-zA-Z0-9- :;.]/g,""):""},initialiseStorage(){const t=()=>localStorage.setItem(p["localStorageKeys"].COLLAPSE_STATE,JSON.stringify({}));localStorage[p["localStorageKeys"].COLLAPSE_STATE]||t();try{JSON.parse(localStorage[p["localStorageKeys"].COLLAPSE_STATE])}catch{t()}return JSON.parse(localStorage[p["localStorageKeys"].COLLAPSE_STATE])},getCollapseState(){const t=this.initialiseStorage();let e=!this.collapsed;return void 0!==t[this.uniqueKey]&&(e=t[this.uniqueKey]),e},setCollapseState(t,e){const s=JSON.parse(localStorage[p["localStorageKeys"].COLLAPSE_STATE]);s[t]=e,localStorage.setItem(p["localStorageKeys"].COLLAPSE_STATE,JSON.stringify(s))},collapseChanged(t){this.initialiseStorage(),this.setCollapseState(this.uniqueKey.toString(),t.srcElement.checked)}}},Aa=Ha,Pa=(s("ce3f"),Object(w["a"])(Aa,Na,Ma,!1,null,"3f92488c",null)),ja=Pa.exports,Ba=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("modal",{attrs:{name:t.name,resizable:!0,width:"80%",height:"80%"},on:{closed:function(e){return t.modalClosed()}}},[s("div",{attrs:{slot:"top-right"},on:{click:function(e){return t.hide()}},slot:"top-right"},[t._v("Close")]),s("a",{staticClass:"close-button",attrs:{title:"Close"},on:{click:function(e){return t.hide()}}},[t._v("x")]),t.url?s("iframe",{staticClass:"frame",attrs:{src:t.url},on:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.close.apply(null,arguments)}}}):s("div",{staticClass:"no-url"},[t._v("No URL Specified")])])},$a=[],Va={name:"IframeModal",props:{name:String},data:()=>({url:"#"}),methods:{show:function(t){this.url=t,this.$modal.show(this.name),this.$emit("modalChanged",!0)},hide:function(){this.$modal.hide(this.name)},modalClosed(){this.$emit("modalChanged",!1)}}},Da=Va,Ka=(s("eda6"),Object(w["a"])(Da,Ba,$a,!1,null,null,null)),Ua=Ka.exports,Fa={name:"ItemGroup",props:{groupId:String,title:String,icon:String,displayData:Object,items:Array,itemSize:String,modalOpen:Boolean},components:{Collapsable:ja,Item:za,IframeModal:Ua},computed:{newItemSize(){return this.displayData.itemSize||this.itemSize},isGridLayout(){return"grid"===this.displayData.layout||!(!this.displayData.itemCountX&&!this.displayData.itemCountY)},gridStyle(){let t="";return t+=this.displayData.itemCountX?`grid-template-columns: repeat(${this.displayData.itemCountX}, 1fr);`:"",t+=this.displayData.itemCountY?`grid-template-rows: repeat(${this.displayData.itemCountY}, 1fr);`:"",t}},methods:{makeId(t){return t.replace(/\s+/g,"-").replace(/[^a-zA-Z ]/g,"").toLowerCase()},triggerModal(t){this.$refs["iframeModal-"+this.groupId].show(t)},modalChanged(t){this.$emit("change-modal-visibility",t)}}},Ra=Fa,Ja=(s("bde7"),Object(w["a"])(Ra,sa,aa,!1,null,"32dc7ad3",null)),Ga=Ja.exports,qa={name:"home",props:{sections:Array,appConfig:Object,pageInfo:Object},components:{SettingsContainer:ea,ItemGroup:Ga},data:()=>({searchValue:"",layout:"",itemSizeBound:"",modalOpen:!1}),computed:{layoutOrientation:{get:()=>localStorage[p["localStorageKeys"].LAYOUT_ORIENTATION]||h.a.layout,set:function(t){localStorage.setItem(p["localStorageKeys"].LAYOUT_ORIENTATION,t),this.layout=t}},iconSize:{get:()=>localStorage[p["localStorageKeys"].ICON_SIZE]||h.a.iconSize,set:function(t){localStorage.setItem(p["localStorageKeys"].ICON_SIZE,t),this.itemSizeBound=t}}},methods:{checkTheresData(t){const e=localStorage[p["localStorageKeys"].CONF_SECTIONS];return t&&t.length>=1||e&&e.length>=1},getSections(t){const e=localStorage[p["localStorageKeys"].CONF_SECTIONS];if(e){const t=JSON.parse(e);if(t.length>=1)return t}return t},searching(t){this.searchValue=t||""},finishedSearching(){this.$refs.filterComp.clearFilterInput()},getDomainFromUrl(t){if(!t)return"";const e=/^(?:https?:\/\/)?(?:w{3}\.)?([a-z\d.-]+)\.(?:[a-z.]{2,10})(?:[/\w.-]*)*/,s=t.match(e);return s?s[1]:""},filterTiles(t){return t?t.filter(t=>{const{title:e,description:s,provider:a,url:o}=t,n=this.searchValue.toLowerCase();return e&&e.toLowerCase().includes(n)||a&&a.toLowerCase().includes(n)||s&&s.toLowerCase().includes(n)||this.getDomainFromUrl(o).includes(n)}):[]},getDisplayData(t){return t.displayData?t.displayData:{}},setLayoutOrientation(t){this.layoutOrientation=t},setItemSize(t){this.iconSize=t},updateModalVisibility(t){this.modalOpen=t},getExternalCSSLinks(){const t={};if(this.appConfig&&this.appConfig.externalStyleSheet){const e=this.appConfig.externalStyleSheet;Array.isArray(e)?e.forEach((e,s)=>{t["External Stylesheet "+(s+1)]=e}):t["External Stylesheet"]=this.appConfig.externalStyleSheet}return t.Deafault="#",t},checkIfFontAwesomeNeeded(){let t=!1;return this.sections.forEach(e=>{e.items.forEach(e=>{e.icon&&e.icon.includes("fa-")&&(t=!0)})}),t},initiateFontAwesome(){if(this.appConfig.enableFontAwesome||this.checkIfFontAwesomeNeeded()){const t=document.createElement("script"),e=this.appConfig.fontAwesomeKey||h.a.fontAwesomeKey;t.setAttribute("src",`https://kit.fontawesome.com/${e}.js`),document.head.appendChild(t)}},checkIfResults(){if(this.sections){let t=!0;return this.sections.forEach(e=>{this.filterTiles(e.items).length>0&&(t=!1)}),t}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}},Ya=qa,Wa=(s("78c5"),Object(w["a"])(Ya,tt,et,!1,null,"14317bc9",null)),Za=Wa.exports,Xa=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"login-page"},[s("form",{staticClass:"login-form"},[s("h2",{staticClass:"login-title"},[t._v("Dashy")]),s("Input",{staticClass:"login-field username",attrs:{label:"Username",type:"text"},model:{value:t.username,callback:function(e){t.username=e},expression:"username"}}),s("Input",{staticClass:"login-field password",attrs:{label:"Password",type:"password"},model:{value:t.password,callback:function(e){t.password=e},expression:"password"}}),s("Button",{staticClass:"login-button",attrs:{click:t.submitLogin}},[t._v("Login")]),s("transition",{attrs:{name:"bounce"}},[s("p",{directives:[{name:"show",rawName:"v-show",value:t.message,expression:"message"}],class:"login-error-message "+t.status},[t._v(t._s(t.message))])])],1)])},Qa=[],to={name:"login",props:{appConfig:Object},data(){return{username:"",password:"",message:"",status:"waiting"}},components:{Button:_e,Input:Le},methods:{submitLogin(){const t=Us(this.username,this.password,this.appConfig.auth||[]);this.message=t.msg,this.status=t.correct?"success":"error",t.correct&&(Fs(this.username,this.password),setTimeout(()=>{mo.push({path:"/"})},250))},setTheme(){const t=localStorage[p["localStorageKeys"].THEME]||h.a.theme;document.getElementsByTagName("html")[0].setAttribute("data-theme",t)}},created(){this.setTheme()}},eo=to,so=(s("206d6"),Object(w["a"])(eo,Xa,Qa,!1,null,null,null)),ao=so.exports;a["a"].use(Q["a"]);const{sections:oo,pageInfo:no,appConfig:io}=q.a;let ro,co;try{ro=JSON.parse(localStorage[p["localStorageKeys"].PAGE_INFO])}catch(go){ro=void 0}try{co=JSON.parse(localStorage[p["localStorageKeys"].APP_CONFIG])}catch(go){co=void 0}const lo={sections:oo||[],pageInfo:ro||no||p["pageInfo"],appConfig:co||io||{}},uo=()=>{const t=lo.appConfig.auth;return!t||Ks(t)},po=new Q["a"]({routes:[{path:"/",name:"home",component:Za,props:lo,meta:{title:no.title||"Home Page",metaTags:[{name:"description",content:"A simple static homepage for you're server"}]}},{path:"/login",name:"login",component:ao,props:{appConfig:lo.appConfig},beforeEnter:(t,e,s)=>{uo()&&po.push({path:"/"}),s()}},{path:"/about",name:"about",component:()=>s.e("about").then(s.bind(null,"f820"))}]});po.beforeEach((t,e,s)=>{"login"===t.name||uo()?s():s({name:"login"})});const ho="Dashy";po.afterEach(t=>{a["a"].nextTick(()=>{document.title=t.meta.title||ho})});var mo=po,fo=s("9483");Object(fo["a"])("/service-worker.js",{ready(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered(){console.log("Service worker has been registered.")},cached(){console.log("Content has been cached for offline use.")},updatefound(){console.log("New content is downloading.")},updated(){console.log("New content is available; please refresh.")},offline(){console.log("No internet connection found. App is running in offline mode.")},error(t){console.error("Error during service worker registration:",t)}}),a["a"].use(o["a"]),a["a"].use(i.a),a["a"].use(l["a"]),a["a"].use(d.a,p["toastedOptions"]),a["a"].component("v-select",c.a),a["a"].config.productionTip=!1,new a["a"]({router:mo,render:t=>t(X)}).$mount("#app")},5703:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-sliders-h fa-w-16",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},"570d":function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-grip-horizontal fa-w-14",i,r],style:[c,l],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"grip-horizontal",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},u),...d},n.concat([s("path",{attrs:{fill:"currentColor",d:"M96 288H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM96 96H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z"}})]))}}},"58c1":function(t,e,s){},"5c0b":function(t,e,s){"use strict";s("9c0c")},"5cc6":function(t,e){t.exports={pageInfo:{title:"Dashy",description:"",navLinks:[{title:"Home",path:"/"},{title:"Source",path:"https://github.com/Lissy93/dashy"}],footerText:""},appConfig:{},iconSize:"medium",layout:"auto",theme:"default",fontAwesomeKey:"0821c65656",builtInThemes:["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","high-contrast-dark","high-contrast-light"],visibleComponents:{pageTitle:!0,navigation:!0,searchBar:!0,settings:!0,footer:!0},localStorageKeys:{HIDE_WELCOME_BANNER:"hideWelcomeHelpers",LAYOUT_ORIENTATION:"layoutOrientation",COLLAPSE_STATE:"collapseState",ICON_SIZE:"iconSize",THEME:"theme",CONF_SECTIONS:"confSections",PAGE_INFO:"pageInfo",APP_CONFIG:"appConfig",BACKUP_ID:"backupId",BACKUP_HASH:"backupHash",HIDE_SETTINGS:"hideSettings",USERNAME:"username"},cookieKeys:{AUTH_TOKEN:"authenticationToken"},modalNames:{CONF_EDITOR:"CONF_EDITOR",CLOUD_BACKUP:"CLOUD_BACKUP"},topLevelConfKeys:{PAGE_INFO:"pageInfo",APP_CONFIG:"appConfig",SECTIONS:"sections"},toastedOptions:{position:"bottom-center",duration:2500,keepOnHover:!0,className:"toast-message",iconPack:"fontawesome"},backupEndpoint:"https://dashy-sync-service.as93.net",splashScreenTime:1900}},"5f32":function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-times-circle fa-w-16",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},6:function(t,e){},6401:function(t,e,s){},6780:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-cloud-upload-alt fa-w-20",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},"699c":function(t,e,s){"use strict";s("806e")},"6e63":function(t,e,s){},7:function(t,e){},7075:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-expand fa-w-14",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},7152:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-plus-circle fa-w-16",i,r],style:[c,l],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"plus-circle",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},n.concat([s("path",{attrs:{fill:"currentColor",d:"M384 240v32c0 6.6-5.4 12-12 12h-88v88c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-88h-88c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h88v-88c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v88h88c6.6 0 12 5.4 12 12zm120 16c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-48 0c0-110.5-89.5-200-200-200S56 145.5 56 256s89.5 200 200 200 200-89.5 200-200z"}})]))}}},"78c5":function(t,e,s){"use strict";s("a0ff")},7941:function(t,e,s){},"7da9":function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-css3-alt fa-w-12",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},"7dc7":function(t,e,s){"use strict";s("1e5e")},"7eb0":function(t,e,s){},"7f59":function(t,e,s){},8:function(t,e){},"806e":function(t,e,s){},"80a7":function(t,e,s){"use strict";s("7eb0")},"826e":function(t,e,s){"use strict";s("939b")},"831b":function(t){t.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"}},"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"},"theme":{"type":"string","default":"Callisto","description":"A theme to be applied by default on first load"},"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"},"cssThemes":{"type":"array","description":"Theme names to be added to the dropdown","items":{"type":"string"}},"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"},"showSplashScreen":{"type":"boolean","default":false,"description":"Display a loading screen when the app is launched"},"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"}}}}},"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"},"layout":{"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 auto-fetched favicon"},"url":{"type":"string","description":"The destination to navigate to when item is clicked"},"target":{"enum":["newtab","sametab","iframe"],"default":"newtab","description":"Opening method, when item is clicked"},"color":{"type":"string","description":"A custom fill color of the item"},"provider":{"type":"string","description":"Provider name, e.g. Microsoft"}}}}}}}}}')},"861a":function(t,e,s){},"8b35":function(t,e,s){},"8b8e":function(t,e){t.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"}]}]}},"8e4e":function(t,e,s){},9:function(t,e){},"90ff":function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-save fa-w-14",i,r],style:[c,l],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},n.concat([s("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(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-expand-arrows-alt fa-w-14",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},9350:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-digital-tachograph fa-w-20",i,r],style:[c,l],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fal","data-icon":"digital-tachograph",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 640 512"},u),...d},n.concat([s("path",{attrs:{fill:"currentColor",d:"M608 96H32c-17.67 0-32 14.33-32 32v256c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V128c0-17.67-14.33-32-32-32zm0 288H32V128h576v256zM80 272h208c8.84 0 16-7.16 16-16v-80c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16v80c0 8.84 7.16 16 16 16zm8-88h192v64H88v-64zM72 360h224c4.42 0 8-3.58 8-8v-8c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v8c0 4.42 3.58 8 8 8zm272 0h224c4.42 0 8-3.58 8-8v-8c0-4.42-3.58-8-8-8H344c-4.42 0-8 3.58-8 8v8c0 4.42 3.58 8 8 8zM80 288c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H80zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16z"}})]))}}},"939b":function(t,e,s){},9517:function(t,e,s){"use strict";s("a8d0")},9635:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:[i,r],style:[c,l],attrs:Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},n.concat([s("path",{attrs:{d:"M132.893 310.534l-30.082 10.911L91.9 291.364l30.081-10.911z"}}),s("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"}}),s("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"}}),s("path",{attrs:{d:"M96.656 243.686L85.721 213.63l30.07-10.94 10.935 30.055z"}})]))}}},"97fb":function(t,e,s){},"9c0c":function(t,e,s){},"9e50":function(t,e,s){"use strict";s("3323")},a0ff:function(t,e,s){},a8d0:function(t,e,s){},b4ba:function(t,e,s){"use strict";s("d9ca")},baed:function(t,e,s){"use strict";s("7941")},bd96:function(t,e,s){"use strict";s("d6b0")},bde7:function(t,e,s){"use strict";s("861a")},c715:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-th fa-w-16",i,r],style:[c,l],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"th",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},n.concat([s("path",{attrs:{fill:"currentColor",d:"M149.333 56v80c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V56c0-13.255 10.745-24 24-24h101.333c13.255 0 24 10.745 24 24zm181.334 240v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm32-240v80c0 13.255 10.745 24 24 24H488c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24zm-32 80V56c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm-205.334 56H24c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-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 24zm386.667-56H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zm0 160H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zM181.333 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24z"}})]))}}},c8c0:function(t,e,s){"use strict";s("d430")},cbd9:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-file-download fa-w-12",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},ce3f:function(t,e,s){"use strict";s("6401")},d16d:function(t,e,s){"use strict";s("18dd")},d430:function(t,e,s){},d6b0:function(t,e,s){},d8c4:function(t,e,s){"use strict";s("2f3c")},d8e8:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-compress-arrows-alt fa-w-16",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},d9ca:function(t,e,s){},de40:function(t,e,s){"use strict";s("7f59")},e6a4:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-download fa-w-16",i,r],style:[c,l],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},n.concat([s("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(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-edit fa-w-18",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},eb32:function(t,e,s){"use strict";s("0c02")},eda6:function(t,e,s){"use strict";s("1864")},ef83:function(t,e,s){},f719:function(t,e,s){"use strict";s("27c1")},f9d7:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-grip-vertical fa-w-10",i,r],style:[c,l],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"grip-vertical",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 320 512"},u),...d},n.concat([s("path",{attrs:{fill:"currentColor",d:"M96 32H32C14.33 32 0 46.33 0 64v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM288 32h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z"}})]))}}}});
-//# sourceMappingURL=app.1b280214.js.map
\ No newline at end of file
diff --git a/js/app.1b280214.js.map b/js/app.1b280214.js.map
deleted file mode 100644
index 6dbe122c..00000000
--- a/js/app.1b280214.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"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?0b05","webpack:///./src/assets/interface-icons/open-iframe.svg","webpack:///./src/components/Configuration/ConfigContainer.vue?09fd","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/components/PageStrcture/LoadingScreen.vue?ea0c","webpack:///./src/components/FormElements/Input.vue?fb76","webpack:///./src/components/Settings/ConfigLauncher.vue?2c1c","webpack:///./src/assets/interface-icons/config-editor.svg","webpack:///./src/assets/interface-icons/config-backup.svg","webpack:///./src/components/PageStrcture/Footer.vue?df0c","webpack:///./src/components/PageStrcture/Header.vue?cea7","webpack:///./src/components/Settings/ItemSizeSelector.vue?6445","webpack:///./src/components/Settings/ThemeSelector.vue?89f8","webpack:///./src/components/Configuration/EditSiteMeta.vue?a806","webpack:///./src/App.vue?9576","webpack:///./src/components/PageStrcture/Header.vue?4051","webpack:///./src/components/PageStrcture/PageTitle.vue?b0cf","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?8770","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?860d","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?4d00","webpack:///src/components/PageStrcture/LoadingScreen.vue","webpack:///./src/components/PageStrcture/LoadingScreen.vue?96ea","webpack:///./src/components/PageStrcture/LoadingScreen.vue","webpack:///src/App.vue","webpack:///./src/App.vue?382d","webpack:///./src/App.vue","webpack:///./src/views/Home.vue?2230","webpack:///./src/components/Settings/SettingsContainer.vue?94a5","webpack:///./src/components/Settings/SearchBar.vue?b3ed","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?0504","webpack:///./src/components/Configuration/ConfigContainer.vue?54a0","webpack:///./src/utils/JsonToYaml.js","webpack:///./src/components/Configuration/EditSiteMeta.vue?e0e2","webpack:///src/components/Configuration/EditSiteMeta.vue","webpack:///./src/components/Configuration/EditSiteMeta.vue?2188","webpack:///./src/components/Configuration/EditSiteMeta.vue","webpack:///./src/components/Configuration/JsonEditor.vue?6827","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?08f6","webpack:///src/components/Configuration/CustomCss.vue","webpack:///./src/components/Configuration/CustomCss.vue?3340","webpack:///./src/components/Configuration/CustomCss.vue","webpack:///src/components/Configuration/ConfigContainer.vue","webpack:///./src/components/Configuration/ConfigContainer.vue?d8c3","webpack:///./src/components/Configuration/ConfigContainer.vue","webpack:///./src/components/Configuration/CloudBackupRestore.vue?eed3","webpack:///./src/components/FormElements/Button.vue?8481","webpack:///src/components/FormElements/Button.vue","webpack:///./src/components/FormElements/Button.vue?52f8","webpack:///./src/components/FormElements/Button.vue","webpack:///./src/components/FormElements/Input.vue?422b","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/Settings/ConfigLauncher.vue","webpack:///./src/components/Settings/ConfigLauncher.vue?5a66","webpack:///./src/components/Settings/ConfigLauncher.vue","webpack:///./src/components/Settings/ThemeSelector.vue?5552","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?8275","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?7603","webpack:///src/components/Settings/ItemSizeSelector.vue","webpack:///./src/components/Settings/ItemSizeSelector.vue?7880","webpack:///./src/components/Settings/ItemSizeSelector.vue","webpack:///./src/components/Settings/KeyboardShortcutInfo.vue?ce26","webpack:///src/components/Settings/KeyboardShortcutInfo.vue","webpack:///./src/components/Settings/KeyboardShortcutInfo.vue?6297","webpack:///./src/components/Settings/KeyboardShortcutInfo.vue","webpack:///./src/utils/Auth.js","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?aa98","webpack:///./src/components/LinkItems/Item.vue?499a","webpack:///./src/components/LinkItems/ItemIcon.vue?39bf","webpack:///./src/utils/ErrorHandler.js","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?1c12","webpack:///src/components/LinkItems/ItemOpenMethodIcon.vue","webpack:///./src/components/LinkItems/ItemOpenMethodIcon.vue?b230","webpack:///./src/components/LinkItems/ItemOpenMethodIcon.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?1455","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?d49b","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?4194","webpack:///src/views/Login.vue","webpack:///./src/views/Login.vue?8434","webpack:///./src/views/Login.vue","webpack:///./src/router.js","webpack:///./src/registerServiceWorker.js","webpack:///./src/main.js","webpack:///./src/assets/interface-icons/config-open-settings.svg","webpack:///./src/assets/interface-icons/layout-horizontal.svg","webpack:///./src/App.vue?595f","webpack:///./src/utils/defaults.js","webpack:///./src/assets/interface-icons/config-close.svg","webpack:///./src/assets/interface-icons/cloud-backup-restore.svg","webpack:///./src/components/LinkItems/ItemOpenMethodIcon.vue?c798","webpack:///./src/assets/interface-icons/icon-size-medium.svg","webpack:///./src/assets/interface-icons/add-new.svg","webpack:///./src/views/Home.vue?71f3","webpack:///./src/assets/interface-icons/config-custom-css.svg","webpack:///./src/components/Settings/LayoutSelector.vue?02de","webpack:///./src/components/Configuration/JsonEditor.vue?5179","webpack:///./src/components/LinkItems/Item.vue?b4f3","webpack:///./public/conf.yml","webpack:///./src/assets/interface-icons/save-config.svg","webpack:///./src/assets/interface-icons/icon-size-large.svg","webpack:///./src/assets/interface-icons/config-meta-data.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/SettingsContainer.vue?7692","webpack:///./src/components/Configuration/CloudBackupRestore.vue?5526","webpack:///./src/components/PageStrcture/PageTitle.vue?9727","webpack:///./src/components/LinkItems/ItemGroup.vue?3410","webpack:///./src/assets/interface-icons/layout-default.svg","webpack:///./src/components/FormElements/Button.vue?c1d1","webpack:///./src/assets/interface-icons/config-download-file.svg","webpack:///./src/components/LinkItems/Collapsable.vue?18cf","webpack:///./src/components/PageStrcture/Nav.vue?efdc","webpack:///./src/components/Settings/SearchBar.vue?b1ee","webpack:///./src/assets/interface-icons/icon-size-small.svg","webpack:///./src/components/LinkItems/ItemIcon.vue?e410","webpack:///./src/assets/interface-icons/config-restore.svg","webpack:///./src/assets/interface-icons/config-edit-json.svg","webpack:///./src/components/Configuration/ConfigContainer.vue?8ea8","webpack:///./src/components/LinkItems/IframeModal.vue?f46c","webpack:///./src/components/LinkItems/Item.vue?d111","webpack:///./src/assets/interface-icons/layout-vertical.svg"],"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","jsonpScriptSrc","p","exports","module","l","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","document","createElement","charset","timeout","nc","setAttribute","src","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","undefined","setTimeout","head","appendChild","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","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","getFooterText","staticRenderFns","title","description","navLinks","_s","props","String","component","_l","link","index","path","isUrl","links","Array","methods","components","PageTitle","Nav","hiddenComponents","titleVisible","navVisible","text","domProps","authorUrl","authorName","licenseUrl","license","showCopyright","date","repoUrl","on","$event","Header","Footer","LoadingScreen","showFooter","computed","getPageInfo","localStorage","JSON","parse","defaults","localPageInfo","footerText","usersCss","textContent","append","appConfig","showSplashScreen","hideSplash","customCss","cleanedCss","replace","injectCustomStyles","getBackgroundImage","ref","layout","itemSizeBound","getExternalCSSLinks","getSections","sections","modalOpen","searching","setLayoutOrientation","setItemSize","updateModalVisibility","checkTheresData","section","filterTiles","items","searchValue","icon","getDisplayData","finishedSearching","checkIfResults","userIsTypingSomething","settingsVisible","availableThemes","getInitialTheme","getUserThemes","displayLayout","updateDisplayLayout","iconSize","updateIconSize","modalChanged","isUserLoggedIn","directives","rawName","expression","logout","toggleSettingsVisibility","composing","input","indexOf","_k","keyCode","clearFilterInput","arguments","ArrowKeyNavigation","constructor","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","filter","$emit","blur","tooltip","showEditor","showCloudModal","modalNames","CONF_EDITOR","combineConfig","CLOUD_BACKUP","goToEdit","goToMetaEdit","goToCustomCss","openCloudSync","backupId","resetLocalSettings","jsonParser","config","copyConfigToClipboard","trimWhitespace","split","map","x","trimRight","join","throwError","msg","stringify","indentLevel","handlers","null","number","boolean","string","array","output","forEach","y","handler","typeOf","inArray","rootNode","keys","k","val","function","formElements","$set","addNavLinkRow","save","AddNewIcon","SaveConfigIcon","setItem","$toasted","show","options","model","callback","$$v","jsonData","isValid","errorMessages","_m","VJsoneditor","schema","modes","onValidationError","validationErrors","theme","errors","keyword","highlighter","PrismEditor","css","match","validate","inject","userStyles","code","JsonToYaml","EditSiteMeta","JsonEditor","CustomCssEditor","DownloadIcon","DeleteIcon","EditIcon","CloudIcon","MetaDataIcon","CustomCssIcon","itemToSelect","tabView","navItems","activeTabItem","$modal","navigator","clipboard","writeText","isTheUserSure","confirm","clear","location","reload","highlighted","getElementById","innerHTML","backupPassword","checkPass","scopedSlots","_u","fn","proxy","restoreCode","restorePassword","restoreBackup","click","_t","Function","label","placeholder","updateValue","default","validator","ENDPOINT","backupEndpoint","encryptData","password","stringifiedData","encryptedData","aes","encrypt","toString","decryptData","decrypt","Utf8","makeSubHash","pass","sha256","backup","axios","post","userData","subHash","update","put","encodeGetParams","entries","kv","encodeURIComponent","restore","params","url","then","response","errorMsg","decryptedData","Button","Input","IconBackup","IconRestore","savedHash","makeUpdate","showErrorMsg","makeBackup","setBackupIdLocally","showSuccessMsg","isUpdate","hash","makeHash","IconSpanner","IconCloud","ConfigContainer","CloudBackupRestore","conf","content","themeNames","selectedTheme","ThemeHelper","preloadTheme","href","rel","sheet","disabled","selectTheme","themes","add","find","confTheme","userThemes","watch","newTheme","themeHelper","loading","builtInThemes","externalThemeNames","added","isThemeLocal","updateTheme","htmlTag","getElementsByTagName","hasAttribute","removeAttribute","themeToCheck","includes","resetToDefault","setLocalTheme","IconDeafault","IconHorizontal","IconVertical","IconSmall","IconMedium","IconLarge","shouldHide","hideWelcomeHelper","timeDelay","removeEventListener","keyPressEvent","shouldHideWelcomeMessage","$destroy","generateUserToken","user","toLowerCase","isLoggedIn","users","validTokens","userAuthenticated","cookie","cookieKey","trim","cookieValue","cookieKeys","AUTH_TOKEN","checkCredentials","username","correct","login","userObject","localStorageKeys","USERNAME","removeItem","SearchBar","ConfigLauncher","ThemeSelector","LayoutSelector","ItemSizeSelector","KeyboardShortcutInfo","IconLogout","IconOpen","IconClose","something","changedTo","cssThemes","searchVisible","getSettingsVisibility","groupId","displayData","collapsed","cols","rows","color","customStyles","isGridLayout","item","makeId","backgroundColor","newItemSize","triggerModal","getTooltipOptions","itemSize","getUnicodeOpeningIcon","itemOpened","iconType","size","broken","iconPath","imageNotFound","ErrorHandler","warn","BrokenImage","determineImageType","getIconPath","str","pattern","RegExp","img","fileExtRegex","validImgExtensions","splitPath","exec","fullUrl","isLocalIP","urlParts","imgType","makeClass","isSmall","isTransparent","openingMethod","transparent","NewTabOpenIcon","SameTabOpenIcon","IframeOpenIcon","subtitle","getId","background","Icon","ItemOpenMethodIcon","altKey","preventDefault","tileElem","isOverflowing","scrollHeight","clientHeight","className","trigger","hideOnTargetClick","html","delay","manageTitleEllipse","checkSpanNum","sanitizeCustomStyles","uniqueKey","getCollapseState","collapseChanged","Number","isOpen","span","classPrefix","maxSpan","numSpan","parseInt","userCss","initStorage","collapseStateObject","initialiseStorage","collapseState","newState","whatChanged","setCollapseState","srcElement","checked","modalClosed","hide","slot","close","Collapsable","Item","IframeModal","styles","itemCountX","itemCountY","SettingsContainer","ItemGroup","layoutOrientation","set","localSections","json","filterComp","urlPattern","domainPattern","allTiles","searchTerm","modalState","availibleThemes","externalStyleSheet","externals","isArray","ext","Deafault","isFound","enableFontAwesome","checkIfFontAwesomeNeeded","fontAwesomeScript","faKey","fontAwesomeKey","itemsFound","backgroundImg","initiateFontAwesome","submitLogin","status","auth","setTheme","Vue","use","Router","localAppConfig","PAGE_INFO","APP_CONFIG","defaultPageInfo","isAuthenticated","router","routes","Home","meta","metaTags","Login","beforeEnter","to","from","next","beforeEach","defaultTitle","afterEach","nextTick","register","ready","log","registered","cached","updatefound","updated","offline","VTooltip","VModal","VTabs","Toasted","toastedOptions","VSelect","productionTip","awesome","App","$mount","visibleComponents","pageTitle","navigation","searchBar","settings","footer","HIDE_WELCOME_BANNER","LAYOUT_ORIENTATION","COLLAPSE_STATE","ICON_SIZE","THEME","CONF_SECTIONS","BACKUP_ID","BACKUP_HASH","HIDE_SETTINGS","topLevelConfKeys","SECTIONS","duration","keepOnHover","iconPack","splashScreenTime"],"mappings":"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","file":"js/app.1b280214.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 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\"app\": 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\":\"5b7dd0f3\"}[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// 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=1&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!./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!./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 ","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&\"","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=437d8549&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 ","\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 ","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!./Footer.vue?vue&type=style&index=0&id=7bd89e4f&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!./Header.vue?vue&type=style&index=0&id=70a33270&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!./ItemSizeSelector.vue?vue&type=style&index=0&id=58966274&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!./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!./EditSiteMeta.vue?vue&type=style&index=0&id=772067bb&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.showFooter)?_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}}):_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('div',{staticClass:\"page-titles\"},[_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
{{ title }}
\n {{ description }}\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!./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=290d21a8&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=290d21a8&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 \"290d21a8\",\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\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\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=70a33270&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=70a33270&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 \"70a33270\",\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\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=7bd89e4f&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=7bd89e4f&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 \"7bd89e4f\",\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
Dashy
\n
\n
Loading
\n
\n \n \n \n \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!./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 \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!./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=35a0a396&\"\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:\"filter-container\",attrs:{\"displayLayout\":_vm.layout,\"iconSize\":_vm.itemSizeBound,\"availableThemes\":_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 ? 'No Search Results' : 'No Data Configured')+\" \")]):_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:{\"themes\":_vm.availableThemes,\"confTheme\":_vm.getInitialTheme(),\"userThemes\":_vm.getUserThemes()}}),_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('IconLogout',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:('Logout'),expression:\"'Logout'\"}],staticClass:\"logout-icon\",on:{\"click\":function($event){return _vm.logout()}}}):_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')],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(\"Search\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.input),expression:\"input\"}],ref:\"filter\",attrs:{\"id\":\"filter-tiles\",\"placeholder\":\"Start typing to filter...\"},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\":\"Clear search\"},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\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=4039a28b&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=4039a28b&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 \"4039a28b\",\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(\"Config\")]),_c('div',{staticClass:\"config-buttons\"},[_c('IconSpanner',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip('Update configuration locally')),expression:\"tooltip('Update configuration locally')\"}],attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.showEditor()}}}),_c('IconCloud',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip('Backup / restore cloud config')),expression:\"tooltip('Backup / restore cloud config')\"}],attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.showCloudModal()}}})],1),_c('modal',{attrs:{\"name\":_vm.modalNames.CONF_EDITOR,\"resizable\":true,\"width\":\"60%\",\"height\":\"80%\"},on:{\"closed\":function($event){return _vm.$emit('modalChanged', false)}}},[_c('ConfigContainer',{attrs:{\"config\":_vm.combineConfig()}})],1),_c('modal',{attrs:{\"name\":_vm.modalNames.CLOUD_BACKUP,\"resizable\":true,\"width\":\"65%\",\"height\":\"60%\"},on:{\"closed\":function($event){return _vm.$emit('modalChanged', false)}}},[_c('CloudBackupRestore',{attrs:{\"config\":_vm.combineConfig()}})],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\":\"Config\"}},[_c('div',{staticClass:\"main-options-container\"},[_c('h2',[_vm._v(\"Configuration Options\")]),_c('a',{staticClass:\"hyperlink-wrapper\",attrs:{\"href\":\"/conf.yml\",\"download\":\"\"}},[_c('button',{staticClass:\"config-button center\"},[_c('DownloadIcon',{staticClass:\"button-icon\"}),_vm._v(\" Download Config \")],1)]),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.goToEdit()}}},[_c('EditIcon',{staticClass:\"button-icon\"}),_vm._v(\" Edit Sections \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.goToMetaEdit()}}},[_c('MetaDataIcon',{staticClass:\"button-icon\"}),_vm._v(\" Edit Meta Data \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.goToCustomCss()}}},[_c('CustomCssIcon',{staticClass:\"button-icon\"}),_vm._v(\" Edit Custom CSS \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.openCloudSync()}}},[_c('CloudIcon',{staticClass:\"button-icon\"}),_vm._v(\" \"+_vm._s(_vm.backupId ? 'Edit Cloud Sync' : 'Enable Cloud Sync')+\" \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.resetLocalSettings()}}},[_c('DeleteIcon',{staticClass:\"button-icon\"}),_vm._v(\" Reset Local Settings \")],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('div',{staticClass:\"config-note\"},[_c('p',{staticClass:\"sub-title\"},[_vm._v(\"Note:\")]),_c('span',[_vm._v(\" All changes made here are stored locally. To apply globally, either export your config into your conf.yml file, or use the cloud backup/ restore feature. \")])])])]),_c('TabItem',{staticClass:\"code-container\",attrs:{\"name\":\"Backup Config\"}},[_c('pre',{attrs:{\"id\":\"conf-yaml\"}},[_vm._v(_vm._s(this.jsonParser(this.config)))]),_c('div',{staticClass:\"yaml-action-buttons\"},[_c('h2',[_vm._v(\"Actions\")]),_c('a',{staticClass:\"yaml-button download\",attrs:{\"href\":\"/conf.yml\",\"download\":\"\"}},[_vm._v(\"Download Config\")]),_c('a',{staticClass:\"yaml-button copy\",on:{\"click\":function($event){return _vm.copyConfigToClipboard()}}},[_vm._v(\"Copy Config\")]),_c('a',{staticClass:\"yaml-button reset\",on:{\"click\":function($event){return _vm.resetLocalSettings()}}},[_vm._v(\"Reset Config\")])])]),_c('TabItem',{attrs:{\"name\":\"Edit Sections\"}},[_c('JsonEditor',{attrs:{\"config\":_vm.config}})],1),_c('TabItem',{attrs:{\"name\":\"Edit Site Meta\"}},[_c('EditSiteMeta',{attrs:{\"config\":_vm.config}})],1),_c('TabItem',{attrs:{\"name\":\"Custom Styles\"}},[_c('CustomCssEditor',{attrs:{\"config\":_vm.config,\"initialCss\":\"hello\"}})],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:\"site-meta-container\"},[_c('h2',[_vm._v(\"Edit Site Meta\")]),_c('div',{staticClass:\"form\"},[_c('div',{staticClass:\"row\"},[_c('span',[_vm._v(\"Title\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formElements.title),expression:\"formElements.title\"}],domProps:{\"value\":(_vm.formElements.title)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.formElements, \"title\", $event.target.value)}}})]),_c('div',{staticClass:\"row\"},[_c('span',[_vm._v(\"Description\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formElements.description),expression:\"formElements.description\"}],domProps:{\"value\":(_vm.formElements.description)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.formElements, \"description\", $event.target.value)}}})]),_c('div',{staticClass:\"row\"},[_c('span',[_vm._v(\"Footer Text\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formElements.footerText),expression:\"formElements.footerText\"}],domProps:{\"value\":(_vm.formElements.footerText)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.formElements, \"footerText\", $event.target.value)}}})])]),_c('div',{staticClass:\"form\"},[_c('h2',[_vm._v(\"Nav Bar Links\")]),_vm._l((_vm.formElements.navLinks),function(link,index){return _c('div',{key:index,staticClass:\"add-nav-bar-link\"},[_c('div',{staticClass:\"row\"},[_c('span',[_vm._v(\"Link Text\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(link.title),expression:\"link.title\"}],domProps:{\"value\":(link.title)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(link, \"title\", $event.target.value)}}})]),_c('div',{staticClass:\"row\"},[_c('span',[_vm._v(\"Link URL\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(link.path),expression:\"link.path\"}],domProps:{\"value\":(link.path)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(link, \"path\", $event.target.value)}}})])])}),_c('button',{staticClass:\"add-new-link\",on:{\"click\":function($event){return _vm.addNavLinkRow()}}},[_c('AddNewIcon'),_vm._v(\" Add New Link \")],1)],2),_c('button',{staticClass:\"save-button\",on:{\"click\":function($event){return _vm.save()}}},[_c('SaveConfigIcon'),_vm._v(\" Save Changes \")],1)])}\nvar staticRenderFns = []\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!./EditSiteMeta.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!./EditSiteMeta.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditSiteMeta.vue?vue&type=template&id=772067bb&scoped=true&\"\nimport script from \"./EditSiteMeta.vue?vue&type=script&lang=js&\"\nexport * from \"./EditSiteMeta.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditSiteMeta.vue?vue&type=style&index=0&id=772067bb&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 \"772067bb\",\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:\"json-editor-outer\"},[_c('v-jsoneditor',{attrs:{\"options\":_vm.options,\"height\":\"580px\"},model:{value:(_vm.jsonData),callback:function ($$v) {_vm.jsonData=$$v},expression:\"jsonData\"}}),_c('button',{class:(\"save-button \" + (!_vm.isValid ? 'err' : '')),on:{\"click\":function($event){return _vm.save()}}},[_vm._v(\"Save Changes\")]),_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(\" Config is Valid \")]):_vm._e()],2)]),_vm._m(0)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"note\"},[_vm._v(\" It is recommend to backup your existing confiruration before making any changes. \"),_c('br'),_vm._v(\" Remember that these changes are only applied locally, and will need to be exported to your conf.yml \")])}]\n\nexport { render, staticRenderFns }","\n \n
\n
\n
\n
\n - \n {{error.msg}}\n
\n - \n Config is Valid\n
\n
\n \n
\n It is recommend to backup your existing confiruration before making any changes.\n
\n Remember that these changes are only applied locally,\n and will need to be exported to your conf.yml\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!./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=9771d03c&\"\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:\"json-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(\"Save Changes\")]),_vm._m(0)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"quick-note\"},[_c('b',[_vm._v(\"Note\")]),_vm._v(\": You will need to refresh the page for your changes to take effect. Styles overides are only stored locally, so it is reccomended to make a copy of your CSS. To remove all custom styles, delete the contents and hit Save Changes \")])}]\n\nexport { render, staticRenderFns }","\n \n
\n
\n
\n Note: You will need to refresh the page for your changes to take effect.\n Styles overides are only stored locally, so it is reccomended to make a copy of your CSS.\n To remove all custom styles, delete the contents and hit Save Changes\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!./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=816a95e4&\"\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","\n \n \n \n
Configuration Options
\n
\n \n \n
\n
\n
\n
\n
\n
\n You are using a very small screen, and some screens in this menu may not be optimal\n
\n
\n
Note:
\n
\n All changes made here are stored locally. To apply globally, either export your config\n into your conf.yml file, or use the cloud backup/ restore feature.\n \n
\n
\n \n \n {{this.jsonParser(this.config)}}
\n \n \n \n \n \n \n \n \n \n \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!./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=00f0c6a7&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=00f0c6a7&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 \"00f0c6a7\",\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\"},[_vm._m(0),_c('div',{staticClass:\"section backup-section\"},[(_vm.backupId)?_c('h3',[_vm._v(\"Update Backup\")]):_c('h3',[_vm._v(\"Make a Backup\")]),_c('Input',{attrs:{\"name\":\"backup-password\",\"label\":_vm.backupId ? 'Enter your Password' : 'Choose a Password',\"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 ? 'Update Backup' : 'Backup'))]},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(\"Your Backup ID: \")]),_c('pre',{staticClass:\"backup-id-value\"},[_vm._v(_vm._s(_vm.backupId))]),_c('span',{staticClass:\"backup-id-note\"},[_vm._v(\" This is used to restore from backups later. So keep it, along with your password somewhere safe. \")])]):_vm._e()],1),_c('div',{staticClass:\"section restore-section\"},[_c('h3',[_vm._v(\"Restore a Backup\")]),_c('Input',{attrs:{\"name\":\"restore-code\",\"label\":\"Restore ID\"},model:{value:(_vm.restoreCode),callback:function ($$v) {_vm.restoreCode=$$v},expression:\"restoreCode\"}}),_c('Input',{attrs:{\"name\":\"restore-password\",\"label\":\"Password\",\"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(\"Restore\")]},proxy:true},{key:\"icon\",fn:function(){return [_c('IconRestore')]},proxy:true}])})],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"section intro\"},[_c('h2',[_vm._v(\"Cloud Backup & Restore\")]),_c('p',{staticClass:\"intro\"},[_vm._v(\" Cloud backup and restore is an optional feature, that enables you to upload your config to the internet, and then restore it on any other device or instance of Dashy. \"),_c('br'),_c('br'),_vm._v(\" All data is fully end-to-end encrypted with AES, using your password as the key. \"),_c('br'),_vm._v(\" For more info, please see the \"),_c('a',{attrs:{\"href\":\"https://github.com/Lissy93/dashy/blob/master/docs/backup-restore.md\"}},[_vm._v(\"docs\")])])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{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\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=4bb44f8e&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=4bb44f8e&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 \"4bb44f8e\",\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:(\"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\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
Cloud Backup & Restore
\n
\n Cloud backup and restore is an optional feature, that enables you to upload your\n config to the internet, and then restore it on any other device or instance of Dashy.\n
\n All data is fully end-to-end encrypted with AES, using your password as the key.\n
\n For more info, please see the\n docs\n
\n
\n
\n
Update Backup
\n
Make a Backup
\n
\n
\n
\n
Your Backup ID: \n
{{ backupId }}
\n
\n This is used to restore from backups later.\n So keep it, along with your password somewhere safe.\n \n
\n
\n
\n
Restore a Backup
\n \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=763657f4&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=763657f4&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 \"763657f4\",\n null\n \n)\n\nexport default component.exports","\n \n \n
Config\n
\n \n \n
\n\n \n
\n \n \n\n \n
\n \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!./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=437d8549&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=437d8549&scoped=true&lang=scss&\"\nimport style1 from \"./ConfigLauncher.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 \"437d8549\",\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.themes)?_c('div',{staticClass:\"theme-selector-section\"},[_c('span',{staticClass:\"theme-label\"},[_vm._v(\"Theme\")]),_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):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * A function for pre-loading, and easy switching of external stylesheets\n * External CSS is preloaded to avoid FOUC\n */\nconst ThemeHelper = function th() {\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 const selectTheme = (themes, name) => {\n const t = themes; // To avoid ESLint complaining about mutating a param\n if (name && !themes[name]) throw new Error(`Theme: '${name}' does not exist.`);\n Object.keys(themes).forEach(n => { t[n].disabled = (n !== name); });\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\nexport default ThemeHelper;\n","\n \n Theme\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=2fa10d1a&\"\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(\"Layout\")]),_c('div',{staticClass:\"display-options\"},[_c('IconDeafault',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip('Auto')),expression:\"tooltip('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('Horizontal')),expression:\"tooltip('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('Vertical')),expression:\"tooltip('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
Layout\n
\n \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!./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=c819d738&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=c819d738&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 \"c819d738\",\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(\"Icon Size\")]),_c('div',{staticClass:\"display-options\"},[_c('IconSmall',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip('Small')),expression:\"tooltip('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('Medium')),expression:\"tooltip('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('Large')),expression:\"tooltip('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
Icon Size\n
\n \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!./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=58966274&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=58966274&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 \"58966274\",\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
There are keyboard shortcuts! ⌨️🙌
\n
x
\n
\n Just start typing to filter. Then use the tab key to cycle through results,\n and press enter to launch the selected item, or alt + enter to open in a modal.\n You can hit Esc at anytime to clear the search. Easy 🥳\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!./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","import sha256 from 'crypto-js/sha256';\nimport { cookieKeys, localStorageKeys } from './defaults';\n\nconst generateUserToken = (user) => sha256(user.toString()).toString().toLowerCase();\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\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 === username) {\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\nexport const login = (username, pass) => {\n const userObject = { user: username, hash: sha256(pass).toString().toLowerCase() };\n document.cookie = `authenticationToken=${generateUserToken(userObject)}; max-age=600`;\n localStorage.setItem(localStorageKeys.USERNAME, username);\n};\n\nexport const logout = () => {\n document.cookie = 'authenticationToken=null';\n localStorage.removeItem(localStorageKeys.USERNAME);\n};\n","\n \n \n \n
\n \n \n \n \n \n
\n
\n \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!./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=0a85c63b&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=0a85c63b&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 \"0a85c63b\",\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,\"itemSize\":_vm.newItemSize},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('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 !== 'iframe' ? _vm.url : '#',\"target\":_vm.target === 'newtab' ? '_blank' : '',\"rel\":\"noopener noreferrer\",\"tabindex\":\"0\",\"id\":(\"link-\" + _vm.id)},on:{\"click\":_vm.itemOpened}},[_c('div',{class:(\"tile-title \" + (!_vm.icon? 'bounce': '')),attrs:{\"id\":(\"tile-\" + _vm.id)}},[_c('span',{staticClass:\"text\"},[_vm._v(_vm._s(_vm.title))]),_c('div',{staticClass:\"overflow-dots\"},[_vm._v(\"...\")]),_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,\"openingMethod\":_vm.target,\"position\":_vm.itemSize === 'medium'? 'bottom right' : 'top right'}})],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',[(_vm.iconType === 'font-awesome')?_c('i',{class:(_vm.icon + \" \" + _vm.size)}):(_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 }","/* eslint no-console: [\"error\", { allow: [\"warn\", \"error\"] }] */\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 console.warn(msg);\n};\n\nexport default ErrorHandler;\n","\n \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!./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=3d8a077b&\"\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',{class:_vm.makeClass(_vm.position, _vm.isSmall, _vm.isTransparent)},[(_vm.openingMethod === 'newtab')?_c('NewTabOpenIcon'):(_vm.openingMethod === 'sametab')?_c('SameTabOpenIcon'):(_vm.openingMethod === 'iframe')?_c('IframeOpenIcon'):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \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!./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=17201835&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=17201835&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 \"17201835\",\n null\n \n)\n\nexport default component.exports","\n \n \n \n
{{ title }}\n
...
\n
{{ description }}
\n
\n \n \n \n \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!./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=26855448&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\"}}):_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
\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!./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=3f92488c&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=3f92488c&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 \"3f92488c\",\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%\"},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 }","\n \n Close
\n x\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!./IframeModal.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!./IframeModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./IframeModal.vue?vue&type=template&id=c8906bde&\"\nimport script from \"./IframeModal.vue?vue&type=script&lang=js&\"\nexport * from \"./IframeModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./IframeModal.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 No Items to Show Yet\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!./ItemGroup.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!./ItemGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ItemGroup.vue?vue&type=template&id=32dc7ad3&scoped=true&\"\nimport script from \"./ItemGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemGroup.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ItemGroup.vue?vue&type=style&index=0&id=32dc7ad3&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 \"32dc7ad3\",\n null\n \n)\n\nexport default component.exports","\n \n \n
\n \n
\n \n
\n \n
\n {{searchValue ? 'No Search Results' : 'No Data Configured'}}\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!./Home.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!./Home.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=14317bc9&scoped=true&\"\nimport script from \"./Home.vue?vue&type=script&lang=js&\"\nexport * from \"./Home.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Home.vue?vue&type=style&index=0&id=14317bc9&lang=scss&scoped=true&\"\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 \"14317bc9\",\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:\"login-page\"},[_c('form',{staticClass:\"login-form\"},[_c('h2',{staticClass:\"login-title\"},[_vm._v(\"Dashy\")]),_c('Input',{staticClass:\"login-field username\",attrs:{\"label\":\"Username\",\"type\":\"text\"},model:{value:(_vm.username),callback:function ($$v) {_vm.username=$$v},expression:\"username\"}}),_c('Input',{staticClass:\"login-field password\",attrs:{\"label\":\"Password\",\"type\":\"password\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}),_c('Button',{staticClass:\"login-button\",attrs:{\"click\":_vm.submitLogin}},[_vm._v(\"Login\")]),_c('transition',{attrs:{\"name\":\"bounce\"}},[_c('p',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.message),expression:\"message\"}],class:(\"login-error-message \" + _vm.status)},[_vm._v(_vm._s(_vm.message))])])],1)])}\nvar staticRenderFns = []\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!./Login.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!./Login.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=b188f480&\"\nimport script from \"./Login.vue?vue&type=script&lang=js&\"\nexport * from \"./Login.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Login.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","import Vue from 'vue';\nimport Router from 'vue-router';\nimport Home from './views/Home.vue';\nimport Login from './views/Login.vue';\nimport conf from '../public/conf.yml'; // Main site configuration\nimport { pageInfo as defaultPageInfo, localStorageKeys } from './utils/defaults';\nimport { isLoggedIn } from './utils/Auth';\n\nVue.use(Router);\n\nconst { sections, pageInfo, appConfig } = conf;\nlet localPageInfo;\ntry {\n localPageInfo = JSON.parse(localStorage[localStorageKeys.PAGE_INFO]);\n} catch (e) {\n localPageInfo = undefined;\n}\n\nlet localAppConfig;\ntry {\n localAppConfig = JSON.parse(localStorage[localStorageKeys.APP_CONFIG]);\n} catch (e) {\n localAppConfig = undefined;\n}\n\nconst config = {\n sections: sections || [],\n pageInfo: localPageInfo || pageInfo || defaultPageInfo,\n appConfig: localAppConfig || appConfig || {},\n};\n\nconst isAuthenticated = () => {\n const users = config.appConfig.auth;\n return (!users || isLoggedIn(users));\n};\n\nconst router = new Router({\n routes: [\n {\n path: '/',\n name: 'home',\n component: Home,\n props: config,\n meta: {\n title: pageInfo.title || 'Home Page',\n metaTags: [\n {\n name: 'description',\n content: 'A simple static homepage for you\\'re server',\n },\n ],\n },\n },\n {\n path: '/login',\n name: 'login',\n component: Login,\n props: {\n appConfig: config.appConfig,\n },\n beforeEnter: (to, from, next) => {\n if (isAuthenticated()) router.push({ path: '/' });\n next();\n },\n },\n {\n path: '/about',\n name: 'about',\n component: () => import(/* webpackChunkName: \"about\" */ './views/About.vue'),\n },\n ],\n});\n\nrouter.beforeEach((to, from, next) => {\n if (to.name !== 'login' && !isAuthenticated()) next({ name: 'login' });\n else next();\n});\n\nconst defaultTitle = 'Dashy';\nrouter.afterEach((to) => {\n Vue.nextTick(() => {\n document.title = to.meta.title || defaultTitle;\n });\n});\n\nexport default router;\n","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker';\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready() {\n console.log(\n 'App is being served from cache by a service worker.\\n'\n + 'For more details, visit https://goo.gl/AFskqB',\n );\n },\n registered() {\n console.log('Service worker has been registered.');\n },\n cached() {\n console.log('Content has been cached for offline use.');\n },\n updatefound() {\n console.log('New content is downloading.');\n },\n updated() {\n console.log('New content is available; please refresh.');\n },\n offline() {\n console.log('No internet connection found. App is running in offline mode.');\n },\n error(error) {\n console.error('Error during service worker registration:', error);\n },\n });\n}\n","import Vue from 'vue';\n\nimport VTooltip from 'v-tooltip'; // A Vue directive for Popper.js, tooltip component\nimport VModal from 'vue-js-modal'; // Modal component\nimport VSelect from 'vue-select'; // Select dropdown component\nimport VTabs from 'vue-material-tabs'; // Tab view component, used on the config page\nimport Toasted from 'vue-toasted'; // Toast component, used to show confirmation notifications\nimport { toastedOptions } from './utils/defaults';\nimport App from './App.vue';\nimport router from './router';\nimport './registerServiceWorker';\n\nVue.use(VTooltip);\nVue.use(VModal);\nVue.use(VTabs);\nVue.use(Toasted, toastedOptions);\nVue.component('v-select', VSelect);\n\nVue.config.productionTip = false;\n\nnew Vue({\n router,\n render: (awesome) => awesome(App),\n}).$mount('#app');\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-sliders-h fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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-grip-horizontal fa-w-14\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"grip-horizontal\",\"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\":\"M96 288H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM96 96H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-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!./App.vue?vue&type=style&index=0&lang=scss&\"","module.exports = {\n pageInfo: {\n title: 'Dashy',\n description: '',\n navLinks: [\n { title: 'Home', path: '/' },\n { title: 'Source', path: 'https://github.com/Lissy93/dashy' },\n ],\n footerText: '',\n },\n appConfig: {},\n iconSize: 'medium',\n layout: 'auto',\n theme: 'default',\n fontAwesomeKey: '0821c65656',\n builtInThemes: [\n 'callisto',\n 'thebe',\n 'dracula',\n 'material',\n 'material-dark',\n 'colorful',\n 'nord',\n 'nord-frost',\n 'minimal-dark',\n 'minimal-light',\n 'matrix',\n 'matrix-red',\n 'hacker-girl',\n 'raspberry-jam',\n 'bee',\n 'tiger',\n 'material-original',\n 'material-dark-original',\n 'high-contrast-dark',\n 'high-contrast-light',\n ],\n visibleComponents: {\n pageTitle: true,\n navigation: true,\n searchBar: true,\n settings: true,\n footer: true,\n },\n localStorageKeys: {\n HIDE_WELCOME_BANNER: 'hideWelcomeHelpers',\n LAYOUT_ORIENTATION: 'layoutOrientation',\n COLLAPSE_STATE: 'collapseState',\n ICON_SIZE: 'iconSize',\n THEME: 'theme',\n CONF_SECTIONS: 'confSections',\n PAGE_INFO: 'pageInfo',\n APP_CONFIG: 'appConfig',\n BACKUP_ID: 'backupId',\n BACKUP_HASH: 'backupHash',\n HIDE_SETTINGS: 'hideSettings',\n USERNAME: 'username',\n },\n cookieKeys: {\n AUTH_TOKEN: 'authenticationToken',\n },\n modalNames: {\n CONF_EDITOR: 'CONF_EDITOR',\n CLOUD_BACKUP: 'CLOUD_BACKUP',\n },\n topLevelConfKeys: {\n PAGE_INFO: 'pageInfo',\n APP_CONFIG: 'appConfig',\n SECTIONS: 'sections',\n },\n toastedOptions: {\n position: 'bottom-center',\n duration: 2500,\n keepOnHover: true,\n className: 'toast-message',\n iconPack: 'fontawesome',\n },\n backupEndpoint: 'https://dashy-sync-service.as93.net',\n splashScreenTime: 1900,\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-times-circle fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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-cloud-upload-alt fa-w-20\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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!./ItemOpenMethodIcon.vue?vue&type=style&index=0&id=17201835&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-expand fa-w-14\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"expand\",\"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\":\"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\"}})])\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-plus-circle fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"plus-circle\",\"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\":\"M384 240v32c0 6.6-5.4 12-12 12h-88v88c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-88h-88c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h88v-88c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v88h88c6.6 0 12 5.4 12 12zm120 16c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-48 0c0-110.5-89.5-200-200-200S56 145.5 56 256s89.5 200 200 200 200-89.5 200-200z\"}})])\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!./Home.vue?vue&type=style&index=0&id=14317bc9&lang=scss&scoped=true&\"","\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-css3-alt fa-w-12\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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!./LayoutSelector.vue?vue&type=style&index=0&id=c819d738&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!./JsonEditor.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!./Item.vue?vue&type=style&index=0&lang=scss&\"","module.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\"}]}]}","\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-save fa-w-14\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"save\",\"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\":\"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\"}})])\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-expand-arrows-alt fa-w-14\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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-digital-tachograph fa-w-20\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fal\",\"data-icon\":\"digital-tachograph\",\"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\":\"M608 96H32c-17.67 0-32 14.33-32 32v256c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V128c0-17.67-14.33-32-32-32zm0 288H32V128h576v256zM80 272h208c8.84 0 16-7.16 16-16v-80c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16v80c0 8.84 7.16 16 16 16zm8-88h192v64H88v-64zM72 360h224c4.42 0 8-3.58 8-8v-8c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v8c0 4.42 3.58 8 8 8zm272 0h224c4.42 0 8-3.58 8-8v-8c0-4.42-3.58-8-8-8H344c-4.42 0-8 3.58-8 8v8c0 4.42 3.58 8 8 8zM80 288c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H80zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16z\"}})])\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!./KeyboardShortcutInfo.vue?vue&type=style&index=0&id=c5f17d9a&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: [classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"d\":\"M132.893 310.534l-30.082 10.911L91.9 291.364l30.081-10.911z\"}}),_c('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\"}}),_c('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\"}}),_c('path',{attrs:{\"d\":\"M96.656 243.686L85.721 213.63l30.07-10.94 10.935 30.055z\"}})])\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!./CustomCss.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!./SettingsContainer.vue?vue&type=style&index=0&id=0a85c63b&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!./CloudBackupRestore.vue?vue&type=style&index=0&id=763657f4&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!./PageTitle.vue?vue&type=style&index=0&id=290d21a8&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!./ItemGroup.vue?vue&type=style&index=0&id=32dc7ad3&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-th fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"th\",\"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\":\"M149.333 56v80c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V56c0-13.255 10.745-24 24-24h101.333c13.255 0 24 10.745 24 24zm181.334 240v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm32-240v80c0 13.255 10.745 24 24 24H488c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24zm-32 80V56c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm-205.334 56H24c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-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 24zm386.667-56H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zm0 160H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zM181.333 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-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!./Button.vue?vue&type=style&index=0&id=4bb44f8e&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-file-download fa-w-12\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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!./Collapsable.vue?vue&type=style&index=0&id=3f92488c&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!./Nav.vue?vue&type=style&index=0&id=68c1bd5c&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!./SearchBar.vue?vue&type=style&index=0&id=4039a28b&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-compress-arrows-alt fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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!./ItemIcon.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-download fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fal\",\"data-icon\":\"download\",\"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-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\"}})])\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-edit fa-w-18\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"edit\",\"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\":\"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\"}})])\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!./ConfigContainer.vue?vue&type=style&index=0&id=00f0c6a7&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!./IframeModal.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!./Item.vue?vue&type=style&index=1&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-grip-vertical fa-w-10\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"grip-vertical\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 320 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M96 32H32C14.33 32 0 46.33 0 64v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM288 32h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z\"}})])\n )\n }\n }\n "],"sourceRoot":""}
\ No newline at end of file
diff --git a/js/app.4f1b29c1.js b/js/app.4f1b29c1.js
new file mode 100644
index 00000000..f7227b7d
--- /dev/null
+++ b/js/app.4f1b29c1.js
@@ -0,0 +1,2 @@
+(function(t){function e(e){for(var a,i,r=e[0],c=e[1],l=e[2],u=0,p=[];unew RegExp(/(http|https):\/\/(\S+)(:[0-9]+)?/).test(t)}},T=E,O=(s("d16d"),Object(w["a"])(T,k,x,!1,null,"68c1bd5c",null)),L=O.exports,z={name:"Header",components:{PageTitle:_,Nav:L},props:{pageInfo:Object},data(){return{hiddenComponents:this.pageInfo.hiddenComponents||{},titleVisible:p["visibleComponents"].pageTitle,navVisible:p["visibleComponents"].navigation}}},N=z,M=(s("4239"),Object(w["a"])(N,g,v,!1,null,"70a33270",null)),H=M.exports,A=function(){var t=this,e=t.$createElement,s=t._self._c||e;return t.text&&""!==t.text?s("footer",{domProps:{innerHTML:t._s(t.text)}}):s("footer",[t._v(" Developed by "),s("a",{attrs:{href:t.authorUrl}},[t._v(t._s(t.authorName))]),t._v(". Licensed under "),s("a",{attrs:{href:t.licenseUrl}},[t._v(t._s(t.license))]),t._v(" "+t._s(t.showCopyright?"©":"")+" "+t._s(t.date)+". Get the "),s("a",{attrs:{href:t.repoUrl}},[t._v("Source Code")]),t._v(". ")])},j=[],P={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"}}},B=P,$=(s("41e6"),Object(w["a"])(B,A,j,!1,null,"7bd89e4f",null)),V=$.exports,D=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("transition",{attrs:{name:"slide-fade"}},[t.isLoading?s("div",{class:t.c,attrs:{id:"loading"},on:{click:function(e){t.c="hide"}}},[s("h2",[t._v("Dashy")]),s("div",{staticClass:"inner-container"},[s("p",[t._v("Loading")]),s("span",{staticClass:"dots-cont"},[s("span",{staticClass:"dot dot-1"}),s("span",{staticClass:"dot dot-2"}),s("span",{staticClass:"dot dot-3"}),s("span",{staticClass:"dot dot-4"})])])]):t._e()])},K=[],U={name:"LoadingScreen",props:{isLoading:{type:Boolean,default:!1}},data:()=>({c:""})},F=U,R=(s("2bb3"),Object(w["a"])(F,D,K,!1,null,"a7bc1de6",null)),J=R.exports,G=s("8b8e"),q=s.n(G);const W=(()=>localStorage[p["localStorageKeys"].APP_CONFIG]?JSON.parse(localStorage[p["localStorageKeys"].APP_CONFIG]):q.a.appConfig?q.a.appConfig:h.a.appConfig)(),Y=(()=>{const t=h.a.pageInfo;let e;try{e=JSON.parse(localStorage[p["localStorageKeys"].PAGE_INFO])}catch(a){e={}}const s=q.a.pageInfo||t;return s.title=e.title||q.a.pageInfo.title||t.title,s.description=e.description||q.a.pageInfo.description||t.description,s.navLinks=e.navLinks||q.a.pageInfo.navLinks||t.navLinks,s.footerText=e.footerText||q.a.pageInfo.footerText||t.footerText,s})(),Z=(()=>{const t=localStorage[p["localStorageKeys"].CONF_SECTIONS];if(t)try{const e=JSON.parse(t);if(e.length>=1)return e}catch(e){}return q.a.sections})(),X=(()=>{const t={appConfig:W,pageInfo:Y,sections:Z};return t})();var Q={name:"app",components:{Header:H,Footer:V,LoadingScreen:J},provide:{config:X},data(){return{showFooter:h.a.visibleComponents.footer,isLoading:!0,appConfig:W,pageInfo:Y}},methods:{getFooterText(){return this.pageInfo&&this.pageInfo.footerText?this.pageInfo.footerText:""},injectCustomStyles(t){const e=document.createElement("style");e.textContent=t,document.head.append(e)},shouldShowSplash(){return this.appConfig.showSplashScreen||!localStorage[p["localStorageKeys"].HIDE_WELCOME_BANNER]},hideSplash(){this.shouldShowSplash()?setTimeout(()=>{this.isLoading=!1},p["splashScreenTime"]||2e3):this.isLoading=!1}},mounted(){if(this.hideSplash(),this.appConfig.customCss){const t=this.appConfig.customCss.replace(/<\/?[^>]+(>|$)/g,"");this.injectCustomStyles(t)}}},tt=Q,et=(s("5c0b"),Object(w["a"])(tt,m,f,!1,null,null,null)),st=et.exports,at=s("8c4f"),ot=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"home",style:t.getBackgroundImage()},[s("SettingsContainer",{ref:"filterComp",staticClass:"filter-container",attrs:{displayLayout:t.layout,iconSize:t.itemSizeBound,availableThemes:t.getExternalCSSLinks(),sections:t.getSections(t.sections),appConfig:t.appConfig,pageInfo:t.pageInfo,modalOpen:t.modalOpen},on:{"user-is-searchin":t.searching,"change-display-layout":t.setLayoutOrientation,"change-icon-size":t.setItemSize,"change-modal-visibility":t.updateModalVisibility}}),t.checkTheresData(t.sections)?s("div",{class:"item-group-container orientation-"+t.layout+" item-size-"+t.itemSizeBound},t._l(t.getSections(t.sections),(function(e,a){return s("ItemGroup",{key:a,class:0===t.filterTiles(e.items).length&&t.searchValue?"no-results":"",attrs:{title:e.name,icon:e.icon||void 0,displayData:t.getDisplayData(e),groupId:"section-"+a,items:t.filterTiles(e.items),itemSize:t.itemSizeBound},on:{itemClicked:function(e){return t.finishedSearching()},"change-modal-visibility":t.updateModalVisibility}})})),1):t._e(),t.checkIfResults()?s("div",{staticClass:"no-data"},[t._v(" "+t._s(t.searchValue?"No Search Results":"No Data Configured")+" ")]):t._e()],1)},nt=[],it=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("section",[t.searchVisible?s("SearchBar",{ref:"SearchBar",attrs:{active:!t.modalOpen},on:{"user-is-searchin":t.userIsTypingSomething}}):t._e(),s("div",{staticClass:"options-outer"},[s("div",{class:"options-container "+(t.settingsVisible?"":"hide")},[s("ThemeSelector",{attrs:{themes:t.availableThemes,confTheme:t.getInitialTheme(),userThemes:t.getUserThemes()}}),s("LayoutSelector",{attrs:{displayLayout:t.displayLayout},on:{layoutUpdated:t.updateDisplayLayout}}),s("ItemSizeSelector",{attrs:{iconSize:t.iconSize},on:{iconSizeUpdated:t.updateIconSize}}),s("ConfigLauncher",{attrs:{sections:t.sections,pageInfo:t.pageInfo,appConfig:t.appConfig},on:{modalChanged:t.modalChanged}}),t.isUserLoggedIn()?s("IconLogout",{directives:[{name:"tooltip",rawName:"v-tooltip",value:"Logout",expression:"'Logout'"}],staticClass:"logout-icon",on:{click:function(e){return t.logout()}}}):t._e()],1),s("div",{class:"show-hide-container "+(t.settingsVisible?"hide-btn":"show-btn")},[s("button",{directives:[{name:"tooltip",rawName:"v-tooltip",value:(t.settingsVisible?"Hide":"Open")+" Settings Menu",expression:"`${settingsVisible? 'Hide' : 'Open'} Settings Menu`"}],attrs:{tabindex:"-2"},on:{click:function(e){return t.toggleSettingsVisibility()}}},[t.settingsVisible?s("IconClose"):s("IconOpen")],1)])]),s("KeyboardShortcutInfo")],1)},rt=[],ct=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("form",[s("label",{attrs:{for:"filter-tiles"}},[t._v("Search")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.input,expression:"input"}],ref:"filter",attrs:{id:"filter-tiles",placeholder:"Start typing to filter..."},domProps:{value:t.input},on:{input:[function(e){e.target.composing||(t.input=e.target.value)},t.userIsTypingSomething],keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.clearFilterInput.apply(null,arguments)}}}),t.input.length>0?s("i",{staticClass:"clear-search",attrs:{title:"Clear search"},on:{click:t.clearFilterInput}},[t._v("x")]):t._e()])},lt=[];class ut{constructor(t){this.index=t}resetIndex(){this.index=0}arrowNavigation(t){void 0===this.index?this.index=0:37===t?this.index-=1:38===t?this.index=ut.goToPrevious(this.index):39===t?this.index+=1:40===t&&(this.index=ut.goToNext(this.index)),this.index=ut.getSafeElementIndex(this.index),ut.selectItemByIndex(this.index).focus()}static getNumResults(){return document.getElementsByClassName("item").length}static getSafeElementIndex(t){const e=ut.getNumResults();return t<0?e-1:t>=e?0:t}static selectItemByIndex(t){return t>=0&&t<=ut.getNumResults()?document.getElementsByClassName("item")[t]:[document.getElementsByClassName("item")]}static findPreviousRow(t){const e=(t,e)=>ut.selectItemByIndex(t).offsetTop===e,s=(t,a)=>t>=ut.getNumResults()?s(0,a):e(t,a)?s(t-1,a):t,a=ut.selectItemByIndex(t).offsetTop;return s(t,a)}static goToPrevious(t){const e=(t,e)=>ut.selectItemByIndex(t).offsetToput.selectItemByIndex(t).offsetTop===e,s=(t,a)=>t>=ut.getNumResults()?s(0,a):e(t,a)?s(t+1,a):t,a=ut.selectItemByIndex(t).offsetTop;return s(t,a)}static goToNext(t){const e=(t,e)=>ut.selectItemByIndex(t).offsetTop>ut.selectItemByIndex(e).offsetTop,s=ut.findNextRow(t),a=s-t,o=s-ut.findPreviousRow(t)-1,n=e(t,s)?0:o-a;return s+n}}var dt={name:"FilterTile",props:{active:Boolean},data(){return{input:"",akn:new ut}},mounted(){window.addEventListener("keydown",t=>{const e=document.activeElement.id,{key:s,keyCode:a}=t;this.active&&(/^[a-zA-Z]$/.test(s)&&"filter-tiles"!==e?(this.$refs.filter.focus(),this.userIsTypingSomething()):a>=37&&a<=40?this.akn.arrowNavigation(a):27===a&&this.clearFilterInput())})},methods:{userIsTypingSomething(){this.$emit("user-is-searchin",this.input)},clearFilterInput(){this.input="",this.userIsTypingSomething(),document.activeElement.blur(),this.akn.resetIndex()}}},pt=dt,ht=(s("d8c4"),Object(w["a"])(pt,ct,lt,!1,null,"4039a28b",null)),mt=ht.exports,ft=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"config-options"},[s("span",[t._v("Config")]),s("div",{staticClass:"config-buttons"},[s("IconSpanner",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Update configuration locally"),expression:"tooltip('Update configuration locally')"}],attrs:{tabindex:"-2"},on:{click:function(e){return t.showEditor()}}}),s("IconCloud",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Backup / restore cloud config"),expression:"tooltip('Backup / restore cloud config')"}],attrs:{tabindex:"-2"},on:{click:function(e){return t.showCloudModal()}}})],1),s("modal",{attrs:{name:t.modalNames.CONF_EDITOR,resizable:!0,width:"60%",height:"80%"},on:{closed:function(e){return t.$emit("modalChanged",!1)}}},[s("ConfigContainer",{attrs:{config:t.combineConfig()}})],1),s("modal",{attrs:{name:t.modalNames.CLOUD_BACKUP,resizable:!0,width:"65%",height:"60%"},on:{closed:function(e){return t.$emit("modalChanged",!1)}}},[s("CloudBackupRestore",{attrs:{config:t.combineConfig()}})],1)],1)},gt=[],vt=s("35c3"),yt=s.n(vt),bt=s("6780"),St=s.n(bt),Ct=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("Tabs",{ref:"tabView",attrs:{navAuto:!0,name:"Add Item"}},[s("TabItem",{staticClass:"main-tab",attrs:{name:"Config"}},[s("div",{staticClass:"main-options-container"},[s("h2",[t._v("Configuration Options")]),s("a",{staticClass:"hyperlink-wrapper",attrs:{href:"/conf.yml",download:""}},[s("button",{staticClass:"config-button center"},[s("DownloadIcon",{staticClass:"button-icon"}),t._v(" Download Config ")],1)]),s("button",{staticClass:"config-button center",on:{click:function(e){return t.goToEdit()}}},[s("EditIcon",{staticClass:"button-icon"}),t._v(" Edit Sections ")],1),s("button",{staticClass:"config-button center",on:{click:function(e){return t.goToMetaEdit()}}},[s("MetaDataIcon",{staticClass:"button-icon"}),t._v(" Edit Meta Data ")],1),s("button",{staticClass:"config-button center",on:{click:function(e){return t.goToCustomCss()}}},[s("CustomCssIcon",{staticClass:"button-icon"}),t._v(" Edit Custom CSS ")],1),s("button",{staticClass:"config-button center",on:{click:function(e){return t.openCloudSync()}}},[s("CloudIcon",{staticClass:"button-icon"}),t._v(" "+t._s(t.backupId?"Edit Cloud Sync":"Enable Cloud Sync")+" ")],1),s("button",{staticClass:"config-button center",on:{click:function(e){return t.resetLocalSettings()}}},[s("DeleteIcon",{staticClass:"button-icon"}),t._v(" Reset Local Settings ")],1),s("p",{staticClass:"small-screen-note",staticStyle:{display:"none"}},[t._v(" You are using a very small screen, and some screens in this menu may not be optimal ")]),s("div",{staticClass:"config-note"},[s("p",{staticClass:"sub-title"},[t._v("Note:")]),s("span",[t._v(" All changes made here are stored locally. To apply globally, either export your config into your conf.yml file, or use the cloud backup/ restore feature. ")])])])]),s("TabItem",{staticClass:"code-container",attrs:{name:"Backup Config"}},[s("pre",{attrs:{id:"conf-yaml"}},[t._v(t._s(this.jsonParser(this.config)))]),s("div",{staticClass:"yaml-action-buttons"},[s("h2",[t._v("Actions")]),s("a",{staticClass:"yaml-button download",attrs:{href:"/conf.yml",download:""}},[t._v("Download Config")]),s("a",{staticClass:"yaml-button copy",on:{click:function(e){return t.copyConfigToClipboard()}}},[t._v("Copy Config")]),s("a",{staticClass:"yaml-button reset",on:{click:function(e){return t.resetLocalSettings()}}},[t._v("Reset Config")])])]),s("TabItem",{attrs:{name:"Edit Sections"}},[s("JsonEditor",{attrs:{config:t.config}})],1),s("TabItem",{attrs:{name:"Edit Site Meta"}},[s("EditSiteMeta",{attrs:{config:t.config}})],1),s("TabItem",{attrs:{name:"Custom Styles"}},[s("CustomCssEditor",{attrs:{config:t.config,initialCss:"hello"}})],1)],1)},wt=[],It=s("1020"),_t=s.n(It),kt=s("2e7b"),xt=s.n(kt),Et=(s("1d89"),s("d97e"));const Tt=t=>t.split("\n").map(t=>t.trimRight()).join("\n"),Ot=t=>{throw new Error("Error in Json to YAML conversion: "+t)},Lt=t=>{let e="";const s={undefined(){return"null"},null(){return"null"},number(t){return t},boolean(t){return t?"true":"false"},string(t){return JSON.stringify(t)},array(t){let a="";return 0===t.length?(a+="[]",a):(e=e.replace(/$/," "),t.forEach(t=>{const o=s[Object(Et["typeOf"])(t)];o||Ot(Object(Et["typeOf"])(t)),a+=`\n${e}- ${o(t,!0)}`}),e=e.replace(/ {2}/,""),a)},object(t,a,o){let n="";return 0===Object.keys(t).length?(n+="{}",n):(o||(e=e.replace(/$/," ")),Object.keys(t).forEach((o,i)=>{const r=t[o],c=s[Object(Et["typeOf"])(r)];"undefined"!==typeof r&&(c||Ot(Object(Et["typeOf"])(r)),a&&0===i||(n+="\n"+e),n+=`${o}: ${c(r)}`)}),e=e.replace(/ {2}/,""),n)},function(){return"[object Function]"}};return Tt(s[Object(Et["typeOf"])(t)](t,!0,!0)+"\n")};var zt=Lt,Nt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"site-meta-container"},[s("h2",[t._v("Edit Site Meta")]),s("div",{staticClass:"form"},[s("div",{staticClass:"row"},[s("span",[t._v("Title")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.formElements.title,expression:"formElements.title"}],domProps:{value:t.formElements.title},on:{input:function(e){e.target.composing||t.$set(t.formElements,"title",e.target.value)}}})]),s("div",{staticClass:"row"},[s("span",[t._v("Description")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.formElements.description,expression:"formElements.description"}],domProps:{value:t.formElements.description},on:{input:function(e){e.target.composing||t.$set(t.formElements,"description",e.target.value)}}})]),s("div",{staticClass:"row"},[s("span",[t._v("Footer Text")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.formElements.footerText,expression:"formElements.footerText"}],domProps:{value:t.formElements.footerText},on:{input:function(e){e.target.composing||t.$set(t.formElements,"footerText",e.target.value)}}})])]),s("div",{staticClass:"form"},[s("h2",[t._v("Nav Bar Links")]),t._l(t.formElements.navLinks,(function(e,a){return s("div",{key:a,staticClass:"add-nav-bar-link"},[s("div",{staticClass:"row"},[s("span",[t._v("Link Text")]),s("input",{directives:[{name:"model",rawName:"v-model",value:e.title,expression:"link.title"}],domProps:{value:e.title},on:{input:function(s){s.target.composing||t.$set(e,"title",s.target.value)}}})]),s("div",{staticClass:"row"},[s("span",[t._v("Link URL")]),s("input",{directives:[{name:"model",rawName:"v-model",value:e.path,expression:"link.path"}],domProps:{value:e.path},on:{input:function(s){s.target.composing||t.$set(e,"path",s.target.value)}}})])])})),s("button",{staticClass:"add-new-link",on:{click:function(e){return t.addNavLinkRow()}}},[s("AddNewIcon"),t._v(" Add New Link ")],1)],2),s("button",{staticClass:"save-button",on:{click:function(e){return t.save()}}},[s("SaveConfigIcon"),t._v(" Save Changes ")],1)])},Mt=[],Ht=s("7152"),At=s.n(Ht),jt=s("90ff"),Pt=s.n(jt),Bt={name:"EditSiteMeta",props:{config:Object},components:{AddNewIcon:At.a,SaveConfigIcon:Pt.a},methods:{save(){const t={...this.config.pageInfo};t.title=this.formElements.title,t.description=this.formElements.description,t.footerText=this.formElements.footerText,this.formElements.navLinks&&(t.navLinks=this.formElements.navLinks.filter(t=>""!==t.title)),localStorage.setItem(p["localStorageKeys"].PAGE_INFO,JSON.stringify(t)),this.$toasted.show("Changes saved succesfully"),setTimeout(()=>{location.reload()},1500)},addNavLinkRow(){this.formElements.navLinks.push({title:"",path:""})}},data(){return{formElements:{title:this.config.pageInfo.title,description:this.config.pageInfo.description,footerText:this.config.pageInfo.footerText,navLinks:this.config.pageInfo.navLinks||[]}}}},$t=Bt,Vt=(s("51b7"),Object(w["a"])($t,Nt,Mt,!1,null,"772067bb",null)),Dt=Vt.exports,Kt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"json-editor-outer"},[s("v-jsoneditor",{attrs:{options:t.options,height:"580px"},model:{value:t.jsonData,callback:function(e){t.jsonData=e},expression:"jsonData"}}),s("button",{class:"save-button "+(t.isValid?"":"err"),on:{click:function(e){return t.save()}}},[t._v("Save Changes")]),s("p",{staticClass:"errors"},[s("ul",[t._l(t.errorMessages,(function(e,a){return s("li",{key:a,class:"type-"+e.type},[t._v(" "+t._s(e.msg)+" ")])})),t.errorMessages.length<1?s("li",{staticClass:"type-valid"},[t._v(" Config is Valid ")]):t._e()],2)]),t._m(0)],1)},Ut=[function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("p",{staticClass:"note"},[t._v(" It is recommend to backup your existing confiruration before making any changes. "),s("br"),t._v(" Remember that these changes are only applied locally, and will need to be exported to your conf.yml ")])}],Ft=s("bcb2"),Rt=s.n(Ft),Jt=s("831b"),Gt={name:"JsonEditor",props:{config:Object},components:{VJsoneditor:Rt.a},data(){return{jsonData:this.config,errorMessages:[],options:{schema:Jt,mode:"tree",modes:["tree","code","preview"],name:"config",onValidationError:this.validationErrors}}},computed:{isValid(){return this.errorMessages.length<1}},methods:{save(){const t=this.jsonData;t.sections&&localStorage.setItem(p["localStorageKeys"].CONF_SECTIONS,JSON.stringify(t.sections)),t.pageInfo&&localStorage.setItem(p["localStorageKeys"].PAGE_INFO,JSON.stringify(t.pageInfo)),t.appConfig&&localStorage.setItem(p["localStorageKeys"].APP_CONFIG,JSON.stringify(t.appConfig)),t.appConfig.theme&&localStorage.setItem(p["localStorageKeys"].THEME,t.appConfig.theme),this.$toasted.show("Changes saved succesfully")},validationErrors(t){const e=[];t.forEach(t=>{switch(t.type){case"validation":e.push({type:"validation",msg:`Validatation Warning: ${t.error.keyword} ${t.error.message}`});break;case"error":e.push({type:"parse",msg:t.message});break;default:e.push({type:"editor",msg:"Error in JSON"});break}}),this.errorMessages=e}}},qt=Gt,Wt=(s("80a7"),Object(w["a"])(qt,Kt,Ut,!1,null,null,null)),Yt=Wt.exports,Zt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"json-editor-outer"},[s("prism-editor",{staticClass:"my-editor",attrs:{highlight:t.highlighter,"line-numbers":""},model:{value:t.customCss,callback:function(e){t.customCss=e},expression:"customCss"}}),s("button",{staticClass:"save-button",on:{click:function(e){return t.save()}}},[t._v("Save Changes")]),t._m(0)],1)},Xt=[function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("p",{staticClass:"quick-note"},[s("b",[t._v("Note")]),t._v(": You will need to refresh the page for your changes to take effect. Styles overides are only stored locally, so it is reccomended to make a copy of your CSS. To remove all custom styles, delete the contents and hit Save Changes ")])}],Qt=s("e57a"),te=s("8c7a"),ee=(s("6605"),s("dff1"),s("cabf"),{name:"JsonEditor",props:{config:Object},components:{PrismEditor:Qt["a"]},data(){return{customCss:this.config.appConfig.customCss||"\n\n\n\n\n"}},methods:{validate(t){return""===t||t.match(/((?:^\s*)([\w#.@*,:\-.:>,*\s]+)\s*{(?:[\s]*)((?:[A-Za-z\- \s]+[:]\s*['"0-9\w .,/()\-!%]+;?)*)*\s*}(?:\s*))/gim)},save(){let t="";if(this.validate(this.customCss)){const e={...this.config.appConfig};e.customCss=this.customCss,localStorage.setItem(p["localStorageKeys"].APP_CONFIG,JSON.stringify(e)),t="Changes saved succesfully",this.inject(this.customCss),""===this.customCss&&setTimeout(()=>{location.reload()},1500)}else t="Error - Invalid CSS";this.$toasted.show(t)},inject(t){const e=t.replace(/<\/?[^>]+(>|$)/g,""),s=document.createElement("style");s.textContent=e,document.head.append(s)},highlighter(t){return Object(te["highlight"])(t,te["languages"].css)}}}),se=ee,ae=(s("9e50"),Object(w["a"])(se,Zt,Xt,!1,null,null,null)),oe=ae.exports,ne=s("cbd9"),ie=s.n(ne),re=s("0278"),ce=s.n(re),le=s("e7fa"),ue=s.n(le),de=s("9350"),pe=s.n(de),he=s("7da9"),me=s.n(he),fe={name:"ConfigContainer",data(){return{jsonParser:zt,backupId:localStorage[p["localStorageKeys"].BACKUP_ID]||""}},props:{config:Object},computed:{sections:function(){return this.config.sections}},components:{EditSiteMeta:Dt,JsonEditor:Yt,CustomCssEditor:oe,DownloadIcon:ie.a,DeleteIcon:ce.a,EditIcon:ue.a,CloudIcon:St.a,MetaDataIcon:pe.a,CustomCssIcon:me.a},methods:{goToEdit(){const t=this.$refs.tabView.navItems[2];this.$refs.tabView.activeTabItem({tabItem:t,byUser:!0})},goToMetaEdit(){const t=this.$refs.tabView.navItems[3];this.$refs.tabView.activeTabItem({tabItem:t,byUser:!0})},goToCustomCss(){const t=this.$refs.tabView.navItems[4];this.$refs.tabView.activeTabItem({tabItem:t,byUser:!0})},openCloudSync(){this.$modal.show(p["modalNames"].CLOUD_BACKUP)},copyConfigToClipboard(){navigator.clipboard.writeText(this.jsonParser(this.config))},resetLocalSettings(){const t="This will remove all user settings from local storage, but won't effect your 'conf.yml' file. It is recommend to make a backup of your modified YAML settings first.\n\nAre you sure you want to proceed?",e=confirm(t);e&&(localStorage.clear(),this.$toasted.show("Data cleared succesfully"),setTimeout(()=>{location.reload()},1900))}},mounted(){_t.a.registerLanguage("yaml",xt.a);const t=_t.a.highlight(this.jsonParser(this.config),{language:"yaml"}).value;document.getElementById("conf-yaml").innerHTML=t}},ge=fe,ve=(s("eb32"),s("1d47"),Object(w["a"])(ge,Ct,wt,!1,null,"00f0c6a7",null)),ye=ve.exports,be=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"cloud-backup-restore-wrapper"},[t._m(0),s("div",{staticClass:"section backup-section"},[t.backupId?s("h3",[t._v("Update Backup")]):s("h3",[t._v("Make a Backup")]),s("Input",{attrs:{name:"backup-password",label:t.backupId?"Enter your Password":"Choose a Password",layout:"vertical",type:"password"},model:{value:t.backupPassword,callback:function(e){t.backupPassword=e},expression:"backupPassword"}}),s("Button",{attrs:{click:t.checkPass},scopedSlots:t._u([{key:"text",fn:function(){return[t._v(t._s(t.backupId?"Update Backup":"Backup"))]},proxy:!0},{key:"icon",fn:function(){return[s("IconBackup")]},proxy:!0}])}),t.backupId?s("div",{staticClass:"results-view"},[s("span",{staticClass:"backup-id-label"},[t._v("Your Backup ID: ")]),s("pre",{staticClass:"backup-id-value"},[t._v(t._s(t.backupId))]),s("span",{staticClass:"backup-id-note"},[t._v(" This is used to restore from backups later. So keep it, along with your password somewhere safe. ")])]):t._e()],1),s("div",{staticClass:"section restore-section"},[s("h3",[t._v("Restore a Backup")]),s("Input",{attrs:{name:"restore-code",label:"Restore ID"},model:{value:t.restoreCode,callback:function(e){t.restoreCode=e},expression:"restoreCode"}}),s("Input",{attrs:{name:"restore-password",label:"Password",type:"password"},model:{value:t.restorePassword,callback:function(e){t.restorePassword=e},expression:"restorePassword"}}),s("Button",{attrs:{click:t.restoreBackup},scopedSlots:t._u([{key:"text",fn:function(){return[t._v("Restore")]},proxy:!0},{key:"icon",fn:function(){return[s("IconRestore")]},proxy:!0}])})],1)])},Se=[function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"section intro"},[s("h2",[t._v("Cloud Backup & Restore")]),s("p",{staticClass:"intro"},[t._v(" Cloud backup and restore is an optional feature, that enables you to upload your config to the internet, and then restore it on any other device or instance of Dashy. "),s("br"),s("br"),t._v(" All data is fully end-to-end encrypted with AES, using your password as the key. "),s("br"),t._v(" For more info, please see the "),s("a",{attrs:{href:"https://github.com/Lissy93/dashy/blob/master/docs/backup-restore.md"}},[t._v("docs")])])])}],Ce=s("94f8"),we=s.n(Ce),Ie=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("button",{on:{click:function(e){return t.click()}}},[t._t("default"),t._t("text"),t._t("icon")],2)},_e=[],ke={name:"Button",props:{text:String,click:Function}},xe=ke,Ee=(s("c8c0"),Object(w["a"])(xe,Ie,_e,!1,null,"4bb44f8e",null)),Te=Ee.exports,Oe=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{class:"input-container "+t.layout},[t.label?s("label",{attrs:{for:"name"}},[t._v(t._s(t.label))]):t._e(),s("input",{attrs:{type:t.type,name:t.name,id:t.name,placeholder:t.placeholder},domProps:{value:t.value},on:{input:function(e){return t.updateValue(e.target.value)}}})])},Le=[],ze={name:"Input",props:{value:String,label:String,name:String,placeholder:String,type:{default:"text",type:String},layout:{validator:t=>-1!==["horizontal","vertical"].indexOf(t),type:String,default:"vertical"}},methods:{updateValue(t){this.$emit("input",t)}}},Ne=ze,Me=(s("2d25"),Object(w["a"])(Ne,Oe,Le,!1,null,"5df13ed2",null)),He=Me.exports,Ae=s("3a1e"),je=s.n(Ae),Pe=s("e6a4"),Be=s.n(Pe),$e=s("c198"),Ve=s.n($e),De=s("f8d5"),Ke=s.n(De),Ue=s("bc3a"),Fe=s.n(Ue);const Re=p["backupEndpoint"],Je=(t,e)=>{const s=JSON.stringify(t),a=Ve.a.encrypt(s,e);return a.toString()},Ge=(t,e)=>Ve.a.decrypt(t,e).toString(Ke.a),qe=t=>we()(t).toString().slice(0,14),We=(t,e)=>Fe.a.post(Re,{userData:Je(t,e),subHash:qe(e)}),Ye=(t,e,s)=>Fe.a.put(Re,{backupId:s,userData:Je(t,e),subHash:qe(e)}),Ze=t=>Object.entries(t).map(t=>t.map(encodeURIComponent).join("=")).join("&"),Xe=(t,e)=>{const s=Ze({backupId:t,subHash:qe(e)}),a=`${Re}/?${s}`;return new Promise((t,s)=>{Fe.a.get(a).then(a=>{if(!a.data||a.data.errorMsg)s(a.data.errorMsg||"Error");else{const n=Ge(a.data.userData.userData,e);try{t(JSON.parse(n))}catch(o){s(o)}}})})};var Qe={name:"CloudBackupRestore",props:{config:Object},data(){return{backupPassword:"",restorePassword:"",restoreCode:"",backupId:localStorage[p["localStorageKeys"].BACKUP_ID]||""}},components:{Button:Te,Input:He,IconBackup:je.a,IconRestore:Be.a},methods:{restoreBackup(){Xe(this.restoreCode,this.restorePassword).then(t=>{this.restoreFromBackup(t,this.restoreCode)}).catch(t=>{this.showErrorMsg(t)})},checkPass(){const t=localStorage[p["localStorageKeys"].BACKUP_HASH]||void 0;t?t===this.makeHash(this.backupPassword)?this.makeUpdate():this.showErrorMsg("Incorrect password. Please enter your current password."):this.makeBackup()},makeBackup(){We(this.config,this.backupPassword).then(t=>{t.data&&!t.data.errorMsg&&t.data.backupId?this.updateUiAfterBackup(t.data.backupId,!1):this.showErrorMsg(t.data.errorMsg||"Error")}).catch(()=>{this.showErrorMsg("Unable to process request")})},makeUpdate(){Ye(this.config,this.backupPassword,this.backupId).then(t=>{t.data&&!t.data.errorMsg&&t.data.backupId?this.updateUiAfterBackup(t.data.backupId,!0):this.showErrorMsg(t.data.errorMsg||"Error")}).catch(()=>{this.showErrorMsg("Unable to process request")})},restoreFromBackup(t,e){localStorage.setItem(p["localStorageKeys"].CONF_SECTIONS,JSON.stringify(t.sections)),localStorage.setItem(p["localStorageKeys"].APP_CONFIG,JSON.stringify(t.appConfig)),localStorage.setItem(p["localStorageKeys"].PAGE_INFO,JSON.stringify(t.pageInfo)),t.appConfig.theme&&localStorage.setItem(p["localStorageKeys"].THEME,t.appConfig.theme),this.setBackupIdLocally(e,this.restorePassword),this.showSuccessMsg("Config Restored Succesfully"),setTimeout(()=>{location.reload()},1500)},updateUiAfterBackup(t,e=!1){this.setBackupIdLocally(t,this.backupPassword),this.showSuccessMsg((e?"Update":"Backup")+" Completed Succesfully"),this.backupPassword=""},showErrorMsg(t){this.$toasted.show(t,{className:"toast-error"})},showSuccessMsg(t){this.$toasted.show(t,{className:"toast-success"})},makeHash(t){return we()(t).toString()},setBackupIdLocally(t,e){this.backupId=t;const s=this.makeHash(e);localStorage.setItem(p["localStorageKeys"].BACKUP_ID,t),localStorage.setItem(p["localStorageKeys"].BACKUP_HASH,s)}}},ts=Qe,es=(s("baed"),Object(w["a"])(ts,be,Se,!1,null,"763657f4",null)),ss=es.exports,as={name:"ConfigLauncher",data(){return{modalNames:p["modalNames"]}},components:{IconSpanner:yt.a,IconCloud:St.a,ConfigContainer:ye,CloudBackupRestore:ss},props:{sections:Array,pageInfo:Object,appConfig:Object},methods:{showEditor:function(){this.$modal.show(p["modalNames"].CONF_EDITOR),this.$emit("modalChanged",!0)},showCloudModal:function(){this.$modal.show(p["modalNames"].CLOUD_BACKUP),this.$emit("modalChanged",!0)},combineConfig(){const t={};return t[p["topLevelConfKeys"].APP_CONFIG]=this.appConfig,t[p["topLevelConfKeys"].PAGE_INFO]=this.pageInfo,t[p["topLevelConfKeys"].SECTIONS]=this.sections,t[p["topLevelConfKeys"].APP_CONFIG].theme=localStorage[p["localStorageKeys"].THEME]||t[p["topLevelConfKeys"].APP_CONFIG].theme,t},tooltip(t){return{content:t,trigger:"hover focus",delay:250}}}},os=as,ns=(s("2f87"),s("192d"),Object(w["a"])(os,ft,gt,!1,null,"437d8549",null)),is=ns.exports,rs=function(){var t=this,e=t.$createElement,s=t._self._c||e;return t.themes?s("div",{staticClass:"theme-selector-section"},[s("span",{staticClass:"theme-label"},[t._v("Theme")]),s("v-select",{staticClass:"theme-dropdown",attrs:{options:t.themeNames,tabindex:-2},model:{value:t.selectedTheme,callback:function(e){t.selectedTheme=e},expression:"selectedTheme"}})],1):t._e()},cs=[];const ls=function(){const t=t=>{const e=document.createElement("link");return e.rel="stylesheet",e.href=t,document.head.appendChild(e),new Promise((t,s)=>{e.onload=e=>{const{sheet:s}=e.target;s.disabled=!0,t(s)},e.onerror=s})},e=(t,e)=>{const s=t;if(e&&!t[e])throw new Error(`Theme: '${e}' does not exist.`);Object.keys(t).forEach(t=>{s[t].disabled=t!==e})},s={};return{add(e,a){return t(a).then(t=>{s[e]=t})},set theme(t){e(s,t)},get theme(){return Object.keys(s).find(t=>!s[t].disabled)}}};var us=ls,ds={name:"ThemeSelector",props:{themes:Object,confTheme:String,userThemes:Array},watch:{selectedTheme(t){this.updateTheme(t)}},data(){return{selectedTheme:this.getInitialTheme(),themeHelper:new us,loading:!0,builtInThemes:this.userThemes.concat(h.a.builtInThemes)}},computed:{themeNames:function(){const t=Object.keys(this.themes);return t.concat(this.builtInThemes)}},created(){const t=Object.keys(this.themes).map(t=>this.themeHelper.add(t,this.themes[t]));this.isThemeLocal(this.selectedTheme)?this.updateTheme(this.selectedTheme):this.selectedTheme!==h.a.theme&&Promise.all(t).then(()=>{this.updateTheme(this.selectedTheme)})},methods:{setLocalTheme(t){const e=document.getElementsByTagName("html")[0];e.hasAttribute("data-theme")&&e.removeAttribute("data-theme"),e.setAttribute("data-theme",t)},getInitialTheme(){return localStorage[p["localStorageKeys"].THEME]||this.confTheme||h.a.theme},isThemeLocal(t){return this.builtInThemes.includes(t)},updateTheme(t){"Deafault"===t?(this.resetToDefault(),this.themeHelper.theme="Deafault"):this.isThemeLocal(t)?this.setLocalTheme(t):this.themeHelper.theme=t,localStorage.setItem(p["localStorageKeys"].THEME,t)},resetToDefault(){document.getElementsByTagName("html")[0].removeAttribute("data-theme")}}},ps=ds,hs=(s("4ade"),Object(w["a"])(ps,rs,cs,!1,null,null,null)),ms=hs.exports,fs=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",[s("span",{staticClass:"options-label"},[t._v("Layout")]),s("div",{staticClass:"display-options"},[s("IconDeafault",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Auto"),expression:"tooltip('Auto')"}],class:"layout-icon "+("auto"===t.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateDisplayLayout("auto")}}}),s("IconHorizontal",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Horizontal"),expression:"tooltip('Horizontal')"}],class:"layout-icon "+("horizontal"===t.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateDisplayLayout("horizontal")}}}),s("IconVertical",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Vertical"),expression:"tooltip('Vertical')"}],class:"layout-icon "+("vertical"===t.displayLayout?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateDisplayLayout("vertical")}}})],1)])},gs=[],vs=s("c715"),ys=s.n(vs),bs=s("570d"),Ss=s.n(bs),Cs=s("f9d7"),ws=s.n(Cs),Is={name:"LayoutSelector",data(){return{input:""}},props:{displayLayout:String},components:{IconDeafault:ys.a,IconHorizontal:Ss.a,IconVertical:ws.a},methods:{updateDisplayLayout(t){this.$emit("layoutUpdated",t)},tooltip(t){return{content:t,trigger:"hover focus",delay:250}}}},_s=Is,ks=(s("7dc7"),Object(w["a"])(_s,fs,gs,!1,null,"c819d738",null)),xs=ks.exports,Es=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",[s("span",{staticClass:"options-label"},[t._v("Icon Size")]),s("div",{staticClass:"display-options"},[s("IconSmall",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Small"),expression:"tooltip('Small')"}],class:"layout-icon "+("small"===t.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateIconSize("small")}}}),s("IconMedium",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Medium"),expression:"tooltip('Medium')"}],class:"layout-icon "+("medium"===t.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateIconSize("medium")}}}),s("IconLarge",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip("Large"),expression:"tooltip('Large')"}],class:"layout-icon "+("large"===t.iconSize?"selected":""),attrs:{tabindex:"-2"},on:{click:function(e){return t.updateIconSize("large")}}})],1)])},Ts=[],Os=s("d8e8"),Ls=s.n(Os),zs=s("7075"),Ns=s.n(zs),Ms=s("922c"),Hs=s.n(Ms),As={name:"IconSizeSelector",data(){return{input:""}},props:{iconSize:String},components:{IconSmall:Ls.a,IconMedium:Ns.a,IconLarge:Hs.a},methods:{updateIconSize(t){this.$emit("iconSizeUpdated",t)},tooltip(t){return{content:t,trigger:"hover focus",delay:250}}}},js=As,Ps=(s("47d9"),Object(w["a"])(js,Es,Ts,!1,null,"58966274",null)),Bs=Ps.exports,$s=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("transition",{attrs:{name:"slide-fade"}},[t.shouldHide?t._e():s("div",{staticClass:"kb-sc-info"},[s("h5",[t._v("There are keyboard shortcuts! ⌨️🙌")]),s("div",{staticClass:"close",attrs:{title:"Hide forever [Esc]"},on:{click:function(e){return t.hideWelcomeHelper()}}},[t._v("x")]),s("p",{attrs:{title:"Press [Esc] to hide this tip forever. See there's even a shortcut for that! 🚀"}},[t._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 🥳 ")])])])},Vs=[],Ds={name:"KeyboardShortcutInfo",data(){return{shouldHide:!0,timeDelay:3e3}},methods:{shouldHideWelcomeMessage(){return!!localStorage[p["localStorageKeys"].HIDE_WELCOME_BANNER]},hideWelcomeHelper(){this.shouldHide=!0,localStorage.setItem(p["localStorageKeys"].HIDE_WELCOME_BANNER,!0),window.removeEventListener("keyup",this.keyPressEvent)},keyPressEvent(t){27===t.keyCode&&this.hideWelcomeHelper()}},mounted(){const t=this.shouldHideWelcomeMessage();t?this.$destroy():(window.setTimeout(()=>{this.shouldHide=t},this.timeDelay),window.addEventListener("keyup",this.keyPressEvent))}},Ks=Ds,Us=(s("9517"),Object(w["a"])(Ks,$s,Vs,!1,null,"c5f17d9a",null)),Fs=Us.exports;const Rs=t=>we()(t.toString()).toString().toLowerCase(),Js=t=>{const e=t.map(t=>Rs(t));let s=!1;return document.cookie.split(";").forEach(t=>{if(t&&t.split("=").length>1){const a=t.split("=")[0].trim(),o=t.split("=")[1].trim();a===p["cookieKeys"].AUTH_TOKEN&&e.includes(o)&&(s=!0)}}),s},Gs=(t,e,s)=>{let a;return t?e?s.forEach(s=>{s.user===t&&(a=s.hash.toLowerCase()===we()(e).toString().toLowerCase()?{correct:!0,msg:"Logging in..."}:{correct:!1,msg:"Incorrect Password"})}):a={correct:!1,msg:"Missing Password"}:a={correct:!1,msg:"Missing Username"},a||{correct:!1,msg:"User not found"}},qs=(t,e)=>{const s={user:t,hash:we()(e).toString().toLowerCase()};document.cookie=`authenticationToken=${Rs(s)}; max-age=600`,localStorage.setItem(p["localStorageKeys"].USERNAME,t)},Ws=()=>{document.cookie="authenticationToken=null",localStorage.removeItem(p["localStorageKeys"].USERNAME)};var Ys=s("0123"),Zs=s.n(Ys),Xs=s("5703"),Qs=s.n(Xs),ta=s("5f32"),ea=s.n(ta),sa={name:"SettingsContainer",props:{displayLayout:String,iconSize:String,availableThemes:Object,appConfig:Object,pageInfo:Object,sections:Array,modalOpen:Boolean},components:{SearchBar:mt,ConfigLauncher:is,ThemeSelector:ms,LayoutSelector:xs,ItemSizeSelector:Bs,KeyboardShortcutInfo:Fs,IconLogout:Zs.a,IconOpen:Qs.a,IconClose:ea.a},methods:{userIsTypingSomething(t){this.$emit("user-is-searchin",t)},clearFilterInput(){this.$refs.SearchBar.clearFilterInput()},updateDisplayLayout(t){this.$emit("change-display-layout",t)},updateIconSize(t){this.$emit("change-icon-size",t)},modalChanged(t){this.$emit("change-modal-visibility",t)},getInitialTheme(){return this.appConfig.theme||""},logout(){Ws(),this.$toasted.show("Logged Out"),setTimeout(()=>{location.reload()},100)},isUserLoggedIn(){return!!localStorage[p["localStorageKeys"].USERNAME]},getUserThemes(){const t=this.appConfig.cssThemes||[];return"string"===typeof t?[t]:t},toggleSettingsVisibility(){this.settingsVisible=!this.settingsVisible,localStorage.setItem(p["localStorageKeys"].HIDE_SETTINGS,this.settingsVisible)},getSettingsVisibility(){return JSON.parse(localStorage[p["localStorageKeys"].HIDE_SETTINGS]||h.a.visibleComponents.settings)}},data(){return{searchVisible:h.a.visibleComponents.searchBar,settingsVisible:this.getSettingsVisibility()}}},aa=sa,oa=(s("b4ba"),Object(w["a"])(aa,it,rt,!1,null,"0a85c63b",null)),na=oa.exports,ia=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("Collapsable",{attrs:{title:t.title,icon:t.icon,uniqueKey:t.groupId,collapsed:t.displayData.collapsed,cols:t.displayData.cols,rows:t.displayData.rows,color:t.displayData.color,customStyles:t.displayData.customStyles}},[!t.items||t.items.length<1?s("div",{staticClass:"no-items"},[t._v(" No Items to Show Yet ")]):s("div",{class:"there-are-items "+(t.isGridLayout?"item-group-grid":""),style:t.gridStyle},[t._l(t.items,(function(e,a){return s("Item",{key:a+"_"+t.makeId(e.title),attrs:{id:a+"_"+t.makeId(e.title),url:e.url,title:e.title,description:e.description,icon:e.icon,target:e.target,color:e.color,backgroundColor:e.backgroundColor,itemSize:t.newItemSize,enableStatusCheck:t.shouldEnableStatusCheck(e.statusCheck)},on:{itemClicked:function(e){return t.$emit("itemClicked")},triggerModal:t.triggerModal}})})),s("div",{ref:"modalContainer"})],2),s("IframeModal",{ref:"iframeModal-"+t.groupId,attrs:{name:"iframeModal-"+t.groupId},on:{closed:function(e){return t.$emit("itemClicked")},modalChanged:t.modalChanged}})],1)},ra=[],ca=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("a",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.getTooltipOptions(),expression:"getTooltipOptions()"}],class:"item "+(t.icon?"":"short")+" size-"+t.itemSize,style:"--open-icon: "+t.getUnicodeOpeningIcon()+"; "+t.customStyles,attrs:{href:"iframe"!==t.target?t.url:"#",target:"newtab"===t.target?"_blank":"",rel:"noopener noreferrer",tabindex:"0",id:"link-"+t.id},on:{click:t.itemOpened}},[s("div",{class:"tile-title "+(t.icon?"":"bounce"),attrs:{id:"tile-"+t.id}},[s("span",{staticClass:"text"},[t._v(t._s(t.title))]),s("div",{staticClass:"overflow-dots"},[t._v("...")]),s("p",{staticClass:"description"},[t._v(t._s(t.description))])]),s("Icon",{staticClass:"bounce",style:t.customStyles,attrs:{icon:t.icon,url:t.url,size:t.itemSize,color:t.color}}),s("ItemOpenMethodIcon",{staticClass:"opening-method-icon",attrs:{isSmall:!t.icon,openingMethod:t.target,position:"medium"===t.itemSize?"bottom right":"top right"}}),t.enableStatusCheck?s("StatusIndicator",{staticClass:"status-indicator",attrs:{statusSuccess:t.statusResponse?t.statusResponse.successStatus:void 0,statusText:t.statusResponse?t.statusResponse.message:void 0}}):t._e()],1)},la=[],ua=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",["font-awesome"===t.iconType?s("i",{class:t.icon+" "+t.size}):t.icon?s("img",{class:"tile-icon "+t.size+" "+(t.broken?"broken":""),attrs:{src:t.iconPath},on:{error:t.imageNotFound}}):t._e(),t.broken?s("BrokenImage",{staticClass:"missing-image"}):t._e()],1)},da=[],pa=s("9635"),ha=s.n(pa);const ma=function(t){console.warn(t)};var fa=ma,ga={name:"Icon",props:{icon:String,url:String,size:String},components:{BrokenImage:ha.a},computed:{iconType:function(){return this.determineImageType(this.icon)},iconPath:function(){return this.getIconPath(this.icon,this.url)}},data(){return{broken:!1}},methods:{isUrl(t){const e=new RegExp(/(http|https):\/\/(\w+:{0,1}\w*)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%!\-/]))?/);return e.test(t)},isImage(t){const e=/(?:\.([^.]+))?$/,s=["png","jpg"],a=e.exec(t);return a.length>=1&&s.includes(a[1])},getFavicon(t){const e=/(127\.)|(192\.168\.)|(10\.)|(172\.1[6-9]\.)|(172\.2[0-9]\.)|(172\.3[0-1]\.)|(::1$)|([fF][cCdD])|(localhost)/;if(e.test(t)){const e=t.split("/");if(e.length>=2)return`${e[0]}/${e[1]}/${e[2]}/favicon.ico`}else if(t.includes("http"))return"https://s2.googleusercontent.com/s2/favicons?domain="+t;return""},getLocalImagePath(t){return"/item-icons/"+t},getIconPath(t,e){switch(this.determineImageType(t)){case"url":return t;case"img":return this.getLocalImagePath(t);case"favicon":return this.getFavicon(e);case"svg":return t;default:return""}},determineImageType(t){let e="";return e=t?t.endsWith(".svg")?"svg":this.isUrl(t)?"url":this.isImage(t)?"img":t.includes("fa-")?"font-awesome":"favicon"===t?"favicon":"none":"none",e},imageNotFound(){this.broken=!0,fa(`The path to '${this.icon}' could not be resolved`)}}},va=ga,ya=(s("de40"),Object(w["a"])(va,ua,da,!1,null,null,null)),ba=ya.exports,Sa=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{class:t.makeClass(t.position,t.isSmall,t.isTransparent)},["newtab"===t.openingMethod?s("NewTabOpenIcon"):"sametab"===t.openingMethod?s("SameTabOpenIcon"):"iframe"===t.openingMethod?s("IframeOpenIcon"):t._e()],1)},Ca=[],wa=s("237e"),Ia=s.n(wa),_a=s("2352"),ka=s.n(_a),xa=s("1946"),Ea=s.n(xa),Ta={name:"ItemOpenMethodIcon",props:{openingMethod:String,isSmall:Boolean,position:String,isTransparent:Boolean},methods:{makeClass(t="top right",e=!1,s=!1){return`opening-method-icon\n ${t||"top right"}\n ${e?"short":""}\n ${s?"transparent":""}`}},components:{NewTabOpenIcon:Ia.a,SameTabOpenIcon:ka.a,IframeOpenIcon:Ea.a}},Oa=Ta,La=(s("699c"),Object(w["a"])(Oa,Sa,Ca,!1,null,"17201835",null)),za=La.exports,Na=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{directives:[{name:"tooltip",rawName:"v-tooltip",value:{content:t.statusText||t.otherStatusText,classes:["status-tooltip","tip-"+t.color()]},expression:"{\n content: statusText || otherStatusText, classes: ['status-tooltip', `tip-${color()}`] }"}],staticClass:"indicator",on:{click:function(e){return t.showToast()}}},[s("div",{class:"dot dot-"+t.color()},[t._m(0)])])},Ma=[function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("span",[s("span")])}],Ha={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)}},Aa=Ha,ja=(s("f66c"),s("45d4"),Object(w["a"])(Aa,Na,Ma,!1,null,"4076b7e0",null)),Pa=ja.exports,Ba={name:"Item",props:{id:String,title:String,subtitle:String,description:String,icon:String,color:String,backgroundColor:String,url:String,target:{type:String,default:"newtab",validator:t=>-1!==["newtab","sametab","iframe"].indexOf(t)},itemSize:String,enableStatusCheck:Boolean},data(){return{getId:this.id,customStyles:{color:this.color,background:this.backgroundColor},statusResponse:void 0}},components:{Icon:ba,ItemOpenMethodIcon:za,StatusIndicator:Pa},methods:{itemOpened(t){t.altKey||"iframe"===this.target?(t.preventDefault(),this.$emit("triggerModal",this.url)):this.$emit("itemClicked")},manageTitleEllipse(){const t=document.getElementById("tile-"+this.getId);if(t){const e=(t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth)&&this.title.length>12;e&&(t.className+=" is-overflowing")}},getTooltipOptions(){return{disabled:!this.description,content:this.description,trigger:"hover focus",hideOnTargetClick:!0,html:!1,placement:this.statusResponse?"left":"auto",delay:{show:600,hide:200}}},getUnicodeOpeningIcon(){switch(this.target){case"newtab":return'"\\f360"';case"sametab":return'"\\f24d"';case"iframe":return'"\\f2d0"';default:return'"\\f054"'}},checkWebsiteStatus(){const t=Object({NODE_ENV:"production",BASE_URL:"/"}).VUE_APP_DOMAIN||window.location.origin,e=`${t}/ping?url=${this.url}`;Fe.a.get(e).then(t=>{t.data&&(this.statusResponse=t.data)}).catch(()=>{this.statusResponse={statusText:"Failed to make request",statusSuccess:!1}})}},mounted(){this.manageTitleEllipse(),this.enableStatusCheck&&this.checkWebsiteStatus()}},$a=Ba,Va=(s("826e"),s("f719"),Object(w["a"])($a,ca,la,!1,null,null,null)),Da=Va.exports,Ka=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{class:"collapsable "+t.checkSpanNum(t.cols,"col")+" "+t.checkSpanNum(t.rows,"row"),style:(t.color?"background: "+t.color:"")+"; "+t.sanitizeCustomStyles(t.customStyles)+";"},[s("input",{staticClass:"toggle",attrs:{id:"collapsible-"+t.uniqueKey,type:"checkbox",tabIndex:"-1"},domProps:{checked:t.getCollapseState()},on:{change:t.collapseChanged}}),s("label",{staticClass:"lbl-toggle",attrs:{for:"collapsible-"+t.uniqueKey,tabindex:"-1"}},[t.icon?s("Icon",{staticClass:"section-icon",attrs:{icon:t.icon,size:"small"}}):t._e(),s("h3",[t._v(t._s(t.title))])],1),s("div",{staticClass:"collapsible-content"},[s("div",{staticClass:"content-inner"},[t._t("default")],2)])])},Ua=[],Fa={name:"CollapsableContainer",props:{uniqueKey:String,title:String,icon:String,collapsed:Boolean,cols:Number,rows:Number,color:String,customStyles:String},components:{Icon:ba},data(){return{isOpen:!this.collapsed}},methods:{checkSpanNum(t,e){const s=4;let a=/^\d*$/.test(t)?parseInt(t,10):1;return a=a>s?s:a,`${e}-${a}`},sanitizeCustomStyles(t){return t?t.replace(/[^a-zA-Z0-9- :;.]/g,""):""},initialiseStorage(){const t=()=>localStorage.setItem(p["localStorageKeys"].COLLAPSE_STATE,JSON.stringify({}));localStorage[p["localStorageKeys"].COLLAPSE_STATE]||t();try{JSON.parse(localStorage[p["localStorageKeys"].COLLAPSE_STATE])}catch{t()}return JSON.parse(localStorage[p["localStorageKeys"].COLLAPSE_STATE])},getCollapseState(){const t=this.initialiseStorage();let e=!this.collapsed;return void 0!==t[this.uniqueKey]&&(e=t[this.uniqueKey]),e},setCollapseState(t,e){const s=JSON.parse(localStorage[p["localStorageKeys"].COLLAPSE_STATE]);s[t]=e,localStorage.setItem(p["localStorageKeys"].COLLAPSE_STATE,JSON.stringify(s))},collapseChanged(t){this.initialiseStorage(),this.setCollapseState(this.uniqueKey.toString(),t.srcElement.checked)}}},Ra=Fa,Ja=(s("ce3f"),Object(w["a"])(Ra,Ka,Ua,!1,null,"3f92488c",null)),Ga=Ja.exports,qa=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("modal",{attrs:{name:t.name,resizable:!0,width:"80%",height:"80%"},on:{closed:function(e){return t.modalClosed()}}},[s("div",{attrs:{slot:"top-right"},on:{click:function(e){return t.hide()}},slot:"top-right"},[t._v("Close")]),s("a",{staticClass:"close-button",attrs:{title:"Close"},on:{click:function(e){return t.hide()}}},[t._v("x")]),t.url?s("iframe",{staticClass:"frame",attrs:{src:t.url},on:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.close.apply(null,arguments)}}}):s("div",{staticClass:"no-url"},[t._v("No URL Specified")])])},Wa=[],Ya={name:"IframeModal",props:{name:String},data:()=>({url:"#"}),methods:{show:function(t){this.url=t,this.$modal.show(this.name),this.$emit("modalChanged",!0)},hide:function(){this.$modal.hide(this.name)},modalClosed(){this.$emit("modalChanged",!1)}}},Za=Ya,Xa=(s("eda6"),Object(w["a"])(Za,qa,Wa,!1,null,null,null)),Qa=Xa.exports,to={name:"ItemGroup",inject:["config"],props:{groupId:String,title:String,icon:String,displayData:Object,items:Array,itemSize:String,modalOpen:Boolean},components:{Collapsable:Ga,Item:Da,IframeModal:Qa},computed:{newItemSize(){return this.displayData.itemSize||this.itemSize},isGridLayout(){return"grid"===this.displayData.layout||!(!this.displayData.itemCountX&&!this.displayData.itemCountY)},gridStyle(){let t="";return t+=this.displayData.itemCountX?`grid-template-columns: repeat(${this.displayData.itemCountX}, 1fr);`:"",t+=this.displayData.itemCountY?`grid-template-rows: repeat(${this.displayData.itemCountY}, 1fr);`:"",t}},methods:{makeId(t){return t.replace(/\s+/g,"-").replace(/[^a-zA-Z ]/g,"").toLowerCase()},triggerModal(t){this.$refs["iframeModal-"+this.groupId].show(t)},modalChanged(t){this.$emit("change-modal-visibility",t)},shouldEnableStatusCheck(t){const e=this.config.appConfig.statusCheck||!1;return void 0!==t?t:e}}},eo=to,so=(s("a815"),Object(w["a"])(eo,ia,ra,!1,null,"0ae71c1f",null)),ao=so.exports,oo={name:"home",props:{sections:Array,appConfig:Object,pageInfo:Object},components:{SettingsContainer:na,ItemGroup:ao},data:()=>({searchValue:"",layout:"",itemSizeBound:"",modalOpen:!1}),computed:{layoutOrientation:{get:()=>localStorage[p["localStorageKeys"].LAYOUT_ORIENTATION]||h.a.layout,set:function(t){localStorage.setItem(p["localStorageKeys"].LAYOUT_ORIENTATION,t),this.layout=t}},iconSize:{get:()=>localStorage[p["localStorageKeys"].ICON_SIZE]||h.a.iconSize,set:function(t){localStorage.setItem(p["localStorageKeys"].ICON_SIZE,t),this.itemSizeBound=t}}},methods:{checkTheresData(t){const e=localStorage[p["localStorageKeys"].CONF_SECTIONS];return t&&t.length>=1||e&&e.length>=1},getSections(t){const e=localStorage[p["localStorageKeys"].CONF_SECTIONS];if(e){const t=JSON.parse(e);if(t.length>=1)return t}return t},searching(t){this.searchValue=t||""},finishedSearching(){this.$refs.filterComp.clearFilterInput()},getDomainFromUrl(t){if(!t)return"";const e=/^(?:https?:\/\/)?(?:w{3}\.)?([a-z\d.-]+)\.(?:[a-z.]{2,10})(?:[/\w.-]*)*/,s=t.match(e);return s?s[1]:""},filterTiles(t){return t?t.filter(t=>{const{title:e,description:s,provider:a,url:o}=t,n=this.searchValue.toLowerCase();return e&&e.toLowerCase().includes(n)||a&&a.toLowerCase().includes(n)||s&&s.toLowerCase().includes(n)||this.getDomainFromUrl(o).includes(n)}):[]},getDisplayData(t){return t.displayData?t.displayData:{}},setLayoutOrientation(t){this.layoutOrientation=t},setItemSize(t){this.iconSize=t},updateModalVisibility(t){this.modalOpen=t},getExternalCSSLinks(){const t={};if(this.appConfig&&this.appConfig.externalStyleSheet){const e=this.appConfig.externalStyleSheet;Array.isArray(e)?e.forEach((e,s)=>{t["External Stylesheet "+(s+1)]=e}):t["External Stylesheet"]=this.appConfig.externalStyleSheet}return t.Deafault="#",t},checkIfFontAwesomeNeeded(){let t=!1;return this.sections.forEach(e=>{e.items.forEach(e=>{e.icon&&e.icon.includes("fa-")&&(t=!0)})}),t},initiateFontAwesome(){if(this.appConfig.enableFontAwesome||this.checkIfFontAwesomeNeeded()){const t=document.createElement("script"),e=this.appConfig.fontAwesomeKey||h.a.fontAwesomeKey;t.setAttribute("src",`https://kit.fontawesome.com/${e}.js`),document.head.appendChild(t)}},checkIfResults(){if(this.sections){let t=!0;return this.sections.forEach(e=>{this.filterTiles(e.items).length>0&&(t=!1)}),t}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}},no=oo,io=(s("78c5"),Object(w["a"])(no,ot,nt,!1,null,"14317bc9",null)),ro=io.exports,co=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"login-page"},[s("form",{staticClass:"login-form"},[s("h2",{staticClass:"login-title"},[t._v("Dashy")]),s("Input",{staticClass:"login-field username",attrs:{label:"Username",type:"text"},model:{value:t.username,callback:function(e){t.username=e},expression:"username"}}),s("Input",{staticClass:"login-field password",attrs:{label:"Password",type:"password"},model:{value:t.password,callback:function(e){t.password=e},expression:"password"}}),s("Button",{staticClass:"login-button",attrs:{click:t.submitLogin}},[t._v("Login")]),s("transition",{attrs:{name:"bounce"}},[s("p",{directives:[{name:"show",rawName:"v-show",value:t.message,expression:"message"}],class:"login-error-message "+t.status},[t._v(t._s(t.message))])])],1)])},lo=[],uo={name:"login",props:{appConfig:Object},data(){return{username:"",password:"",message:"",status:"waiting"}},components:{Button:Te,Input:He},methods:{submitLogin(){const t=Gs(this.username,this.password,this.appConfig.auth||[]);this.message=t.msg,this.status=t.correct?"success":"error",t.correct&&(qs(this.username,this.password),setTimeout(()=>{yo.push({path:"/"})},250))},setTheme(){const t=localStorage[p["localStorageKeys"].THEME]||h.a.theme;document.getElementsByTagName("html")[0].setAttribute("data-theme",t)}},created(){this.setTheme()}},po=uo,ho=(s("206d6"),Object(w["a"])(po,co,lo,!1,null,null,null)),mo=ho.exports;a["a"].use(at["a"]);const fo=()=>{const t=W.auth;return!t||Js(t)},go=new at["a"]({routes:[{path:"/",name:"home",component:ro,props:{appConfig:W,pageInfo:Y,sections:Z},meta:{title:Y.title||"Home Page",metaTags:[{name:"description",content:"A simple static homepage for you're server"}]}},{path:"/login",name:"login",component:mo,props:{appConfig:W},beforeEnter:(t,e,s)=>{fo()&&go.push({path:"/"}),s()}},{path:"/about",name:"about",component:()=>s.e("about").then(s.bind(null,"f820"))}]});go.beforeEach((t,e,s)=>{"login"===t.name||fo()?s():s({name:"login"})});const vo="Dashy";go.afterEach(t=>{a["a"].nextTick(()=>{document.title=t.meta.title||vo})});var yo=go,bo=s("9483");Object(bo["a"])("/service-worker.js",{ready(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered(){console.log("Service worker has been registered.")},cached(){console.log("Content has been cached for offline use.")},updatefound(){console.log("New content is downloading.")},updated(){console.log("New content is available; please refresh.")},offline(){console.log("No internet connection found. App is running in offline mode.")},error(t){console.error("Error during service worker registration:",t)}}),a["a"].use(o["a"]),a["a"].use(i.a),a["a"].use(l["a"]),a["a"].use(d.a,p["toastedOptions"]),a["a"].component("v-select",c.a),a["a"].config.productionTip=!1,new a["a"]({router:yo,render:t=>t(st)}).$mount("#app")},5703:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-sliders-h fa-w-16",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},"570d":function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-grip-horizontal fa-w-14",i,r],style:[c,l],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"grip-horizontal",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},u),...d},n.concat([s("path",{attrs:{fill:"currentColor",d:"M96 288H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM96 96H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z"}})]))}}},"58c1":function(t,e,s){},"5c0b":function(t,e,s){"use strict";s("9c0c")},"5cc6":function(t,e){t.exports={pageInfo:{title:"Dashy",description:"",navLinks:[{title:"Home",path:"/"},{title:"Source",path:"https://github.com/Lissy93/dashy"}],footerText:""},appConfig:{},iconSize:"medium",layout:"auto",theme:"default",fontAwesomeKey:"0821c65656",builtInThemes:["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","high-contrast-dark","high-contrast-light"],visibleComponents:{pageTitle:!0,navigation:!0,searchBar:!0,settings:!0,footer:!0},localStorageKeys:{HIDE_WELCOME_BANNER:"hideWelcomeHelpers",LAYOUT_ORIENTATION:"layoutOrientation",COLLAPSE_STATE:"collapseState",ICON_SIZE:"iconSize",THEME:"theme",CONF_SECTIONS:"confSections",PAGE_INFO:"pageInfo",APP_CONFIG:"appConfig",BACKUP_ID:"backupId",BACKUP_HASH:"backupHash",HIDE_SETTINGS:"hideSettings",USERNAME:"username"},cookieKeys:{AUTH_TOKEN:"authenticationToken"},modalNames:{CONF_EDITOR:"CONF_EDITOR",CLOUD_BACKUP:"CLOUD_BACKUP"},topLevelConfKeys:{PAGE_INFO:"pageInfo",APP_CONFIG:"appConfig",SECTIONS:"sections"},toastedOptions:{position:"bottom-center",duration:2500,keepOnHover:!0,className:"toast-message",iconPack:"fontawesome"},backupEndpoint:"https://dashy-sync-service.as93.net",splashScreenTime:1900}},"5f32":function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-times-circle fa-w-16",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},6:function(t,e){},6401:function(t,e,s){},6780:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-cloud-upload-alt fa-w-20",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},"699c":function(t,e,s){"use strict";s("806e")},"6e63":function(t,e,s){},7:function(t,e){},7075:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-expand fa-w-14",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},7152:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-plus-circle fa-w-16",i,r],style:[c,l],attrs:Object.assign({"aria-hidden":"true","data-prefix":"far","data-icon":"plus-circle",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},n.concat([s("path",{attrs:{fill:"currentColor",d:"M384 240v32c0 6.6-5.4 12-12 12h-88v88c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-88h-88c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h88v-88c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v88h88c6.6 0 12 5.4 12 12zm120 16c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-48 0c0-110.5-89.5-200-200-200S56 145.5 56 256s89.5 200 200 200 200-89.5 200-200z"}})]))}}},"78c5":function(t,e,s){"use strict";s("a0ff")},7941:function(t,e,s){},"7da9":function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-css3-alt fa-w-12",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},"7dc7":function(t,e,s){"use strict";s("1e5e")},"7eb0":function(t,e,s){},"7f59":function(t,e,s){},8:function(t,e){},"806e":function(t,e,s){},"80a7":function(t,e,s){"use strict";s("7eb0")},"826e":function(t,e,s){"use strict";s("939b")},"831b":function(t){t.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"}},"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"},"theme":{"type":"string","default":"Callisto","description":"A theme to be applied by default on first load"},"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"},"cssThemes":{"type":"array","description":"Theme names to be added to the dropdown","items":{"type":"string"}},"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"},"showSplashScreen":{"type":"boolean","default":false,"description":"Display a loading screen when the app is launched"},"statusCheck":{"type":"boolean","default":false,"description":"Displays an online/ offline status for each of your services"},"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"}}}}},"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"},"layout":{"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 auto-fetched favicon"},"url":{"type":"string","description":"The destination to navigate to when item is clicked"},"target":{"enum":["newtab","sametab","iframe"],"default":"newtab","description":"Opening method, when item is clicked"},"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"}}}}}}}}}')},"8b35":function(t,e,s){},"8b8e":function(t,e){t.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"}]}]}},"8e4e":function(t,e,s){},9:function(t,e){},"90ff":function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-save fa-w-14",i,r],style:[c,l],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},n.concat([s("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(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-expand-arrows-alt fa-w-14",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},9350:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-digital-tachograph fa-w-20",i,r],style:[c,l],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fal","data-icon":"digital-tachograph",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 640 512"},u),...d},n.concat([s("path",{attrs:{fill:"currentColor",d:"M608 96H32c-17.67 0-32 14.33-32 32v256c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V128c0-17.67-14.33-32-32-32zm0 288H32V128h576v256zM80 272h208c8.84 0 16-7.16 16-16v-80c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16v80c0 8.84 7.16 16 16 16zm8-88h192v64H88v-64zM72 360h224c4.42 0 8-3.58 8-8v-8c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v8c0 4.42 3.58 8 8 8zm272 0h224c4.42 0 8-3.58 8-8v-8c0-4.42-3.58-8-8-8H344c-4.42 0-8 3.58-8 8v8c0 4.42 3.58 8 8 8zM80 288c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H80zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16z"}})]))}}},"939b":function(t,e,s){},9517:function(t,e,s){"use strict";s("a8d0")},9635:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:[i,r],style:[c,l],attrs:Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},n.concat([s("path",{attrs:{d:"M132.893 310.534l-30.082 10.911L91.9 291.364l30.081-10.911z"}}),s("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"}}),s("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"}}),s("path",{attrs:{d:"M96.656 243.686L85.721 213.63l30.07-10.94 10.935 30.055z"}})]))}}},"97fb":function(t,e,s){},"9c0c":function(t,e,s){},"9e50":function(t,e,s){"use strict";s("3323")},a0ff:function(t,e,s){},a815:function(t,e,s){"use strict";s("c0d2")},a8d0:function(t,e,s){},b4ba:function(t,e,s){"use strict";s("d9ca")},baed:function(t,e,s){"use strict";s("7941")},bd96:function(t,e,s){"use strict";s("d6b0")},c0d2:function(t,e,s){},c715:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-th fa-w-16",i,r],style:[c,l],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"th",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u),...d},n.concat([s("path",{attrs:{fill:"currentColor",d:"M149.333 56v80c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V56c0-13.255 10.745-24 24-24h101.333c13.255 0 24 10.745 24 24zm181.334 240v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm32-240v80c0 13.255 10.745 24 24 24H488c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24zm-32 80V56c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm-205.334 56H24c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-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 24zm386.667-56H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zm0 160H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zM181.333 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24z"}})]))}}},c8c0:function(t,e,s){"use strict";s("d430")},cbd9:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-file-download fa-w-12",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},ce3f:function(t,e,s){"use strict";s("6401")},d16d:function(t,e,s){"use strict";s("18dd")},d430:function(t,e,s){},d6b0:function(t,e,s){},d8c4:function(t,e,s){"use strict";s("2f3c")},d8e8:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-compress-arrows-alt fa-w-16",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},d9ca:function(t,e,s){},de40:function(t,e,s){"use strict";s("7f59")},e6a4:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-download fa-w-16",i,r],style:[c,l],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},n.concat([s("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(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-edit fa-w-18",i,r],style:[c,l],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},n.concat([s("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"}})]))}}},eb32:function(t,e,s){"use strict";s("0c02")},eda6:function(t,e,s){"use strict";s("1864")},ef83:function(t,e,s){},f66c:function(t,e,s){"use strict";s("f72a")},f719:function(t,e,s){"use strict";s("27c1")},f72a:function(t,e,s){},f9d7:function(t,e){t.exports={functional:!0,render(t,e){const{_c:s,_v:a,data:o,children:n=[]}=e,{class:i,staticClass:r,style:c,staticStyle:l,attrs:u={},...d}=o;return s("svg",{class:["svg-inline--fa fa-grip-vertical fa-w-10",i,r],style:[c,l],attrs:Object.assign({"aria-hidden":"true","data-prefix":"fas","data-icon":"grip-vertical",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 320 512"},u),...d},n.concat([s("path",{attrs:{fill:"currentColor",d:"M96 32H32C14.33 32 0 46.33 0 64v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM288 32h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z"}})]))}}}});
+//# sourceMappingURL=app.4f1b29c1.js.map
\ No newline at end of file
diff --git a/js/app.4f1b29c1.js.map b/js/app.4f1b29c1.js.map
new file mode 100644
index 00000000..56987218
--- /dev/null
+++ b/js/app.4f1b29c1.js.map
@@ -0,0 +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?0b05","webpack:///./src/assets/interface-icons/open-iframe.svg","webpack:///./src/components/Configuration/ConfigContainer.vue?09fd","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/components/PageStrcture/LoadingScreen.vue?ea0c","webpack:///./src/components/FormElements/Input.vue?fb76","webpack:///./src/components/Settings/ConfigLauncher.vue?2c1c","webpack:///./src/assets/interface-icons/config-editor.svg","webpack:///./src/assets/interface-icons/config-backup.svg","webpack:///./src/components/PageStrcture/Footer.vue?df0c","webpack:///./src/components/PageStrcture/Header.vue?cea7","webpack:///./src/components/LinkItems/StatusIndicator.vue?dc21","webpack:///./src/components/Settings/ItemSizeSelector.vue?6445","webpack:///./src/components/Settings/ThemeSelector.vue?89f8","webpack:///./src/components/Configuration/EditSiteMeta.vue?a806","webpack:///./src/App.vue?66f8","webpack:///./src/components/PageStrcture/Header.vue?398c","webpack:///./src/components/PageStrcture/PageTitle.vue?6071","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?4b46","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?a06d","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?d3ee","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/App.vue","webpack:///./src/App.vue?382d","webpack:///./src/App.vue","webpack:///./src/views/Home.vue?1b2e","webpack:///./src/components/Settings/SettingsContainer.vue?fee1","webpack:///./src/components/Settings/SearchBar.vue?6aa3","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?05fc","webpack:///./src/components/Configuration/ConfigContainer.vue?b307","webpack:///./src/utils/JsonToYaml.js","webpack:///./src/components/Configuration/EditSiteMeta.vue?4a90","webpack:///src/components/Configuration/EditSiteMeta.vue","webpack:///./src/components/Configuration/EditSiteMeta.vue?2188","webpack:///./src/components/Configuration/EditSiteMeta.vue","webpack:///./src/components/Configuration/JsonEditor.vue?6ec0","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?e2be","webpack:///src/components/Configuration/CustomCss.vue","webpack:///./src/components/Configuration/CustomCss.vue?3340","webpack:///./src/components/Configuration/CustomCss.vue","webpack:///src/components/Configuration/ConfigContainer.vue","webpack:///./src/components/Configuration/ConfigContainer.vue?d8c3","webpack:///./src/components/Configuration/ConfigContainer.vue","webpack:///./src/components/Configuration/CloudBackupRestore.vue?b640","webpack:///./src/components/FormElements/Button.vue?3aed","webpack:///src/components/FormElements/Button.vue","webpack:///./src/components/FormElements/Button.vue?52f8","webpack:///./src/components/FormElements/Button.vue","webpack:///./src/components/FormElements/Input.vue?10cd","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/Settings/ConfigLauncher.vue","webpack:///./src/components/Settings/ConfigLauncher.vue?5a66","webpack:///./src/components/Settings/ConfigLauncher.vue","webpack:///./src/components/Settings/ThemeSelector.vue?24cc","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?b353","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?7ccf","webpack:///src/components/Settings/ItemSizeSelector.vue","webpack:///./src/components/Settings/ItemSizeSelector.vue?7880","webpack:///./src/components/Settings/ItemSizeSelector.vue","webpack:///./src/components/Settings/KeyboardShortcutInfo.vue?27f1","webpack:///src/components/Settings/KeyboardShortcutInfo.vue","webpack:///./src/components/Settings/KeyboardShortcutInfo.vue?6297","webpack:///./src/components/Settings/KeyboardShortcutInfo.vue","webpack:///./src/utils/Auth.js","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?3d5c","webpack:///./src/components/LinkItems/Item.vue?6308","webpack:///./src/components/LinkItems/ItemIcon.vue?db19","webpack:///./src/utils/ErrorHandler.js","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?f9d7","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?a076","webpack:///src/components/LinkItems/StatusIndicator.vue","webpack:///./src/components/LinkItems/StatusIndicator.vue?9938","webpack:///./src/components/LinkItems/StatusIndicator.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?59ae","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?03a5","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?7093","webpack:///src/views/Login.vue","webpack:///./src/views/Login.vue?8434","webpack:///./src/views/Login.vue","webpack:///./src/router.js","webpack:///./src/registerServiceWorker.js","webpack:///./src/main.js","webpack:///./src/assets/interface-icons/config-open-settings.svg","webpack:///./src/assets/interface-icons/layout-horizontal.svg","webpack:///./src/App.vue?595f","webpack:///./src/utils/defaults.js","webpack:///./src/assets/interface-icons/config-close.svg","webpack:///./src/assets/interface-icons/cloud-backup-restore.svg","webpack:///./src/components/LinkItems/ItemOpenMethodIcon.vue?c798","webpack:///./src/assets/interface-icons/icon-size-medium.svg","webpack:///./src/assets/interface-icons/add-new.svg","webpack:///./src/views/Home.vue?71f3","webpack:///./src/assets/interface-icons/config-custom-css.svg","webpack:///./src/components/Settings/LayoutSelector.vue?02de","webpack:///./src/components/Configuration/JsonEditor.vue?5179","webpack:///./src/components/LinkItems/Item.vue?b4f3","webpack:///./public/conf.yml","webpack:///./src/assets/interface-icons/save-config.svg","webpack:///./src/assets/interface-icons/icon-size-large.svg","webpack:///./src/assets/interface-icons/config-meta-data.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/LinkItems/ItemGroup.vue?0449","webpack:///./src/components/Settings/SettingsContainer.vue?7692","webpack:///./src/components/Configuration/CloudBackupRestore.vue?5526","webpack:///./src/components/PageStrcture/PageTitle.vue?9727","webpack:///./src/assets/interface-icons/layout-default.svg","webpack:///./src/components/FormElements/Button.vue?c1d1","webpack:///./src/assets/interface-icons/config-download-file.svg","webpack:///./src/components/LinkItems/Collapsable.vue?18cf","webpack:///./src/components/PageStrcture/Nav.vue?efdc","webpack:///./src/components/Settings/SearchBar.vue?b1ee","webpack:///./src/assets/interface-icons/icon-size-small.svg","webpack:///./src/components/LinkItems/ItemIcon.vue?e410","webpack:///./src/assets/interface-icons/config-restore.svg","webpack:///./src/assets/interface-icons/config-edit-json.svg","webpack:///./src/components/Configuration/ConfigContainer.vue?8ea8","webpack:///./src/components/LinkItems/IframeModal.vue?f46c","webpack:///./src/components/LinkItems/StatusIndicator.vue?88cc","webpack:///./src/components/LinkItems/Item.vue?d111","webpack:///./src/assets/interface-icons/layout-vertical.svg"],"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","jsonpScriptSrc","p","exports","module","l","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","document","createElement","charset","timeout","nc","setAttribute","src","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","undefined","setTimeout","head","appendChild","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","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","getFooterText","staticRenderFns","title","description","navLinks","_s","props","String","component","_l","link","index","path","isUrl","links","Array","methods","components","PageTitle","Nav","hiddenComponents","titleVisible","navVisible","text","domProps","authorUrl","authorName","licenseUrl","license","showCopyright","date","repoUrl","on","$event","appConfig","localStorage","localStorageKeys","APP_CONFIG","JSON","parse","conf","Defaults","defaults","localPageInfo","PAGE_INFO","pi","footerText","sections","localSections","CONF_SECTIONS","json","config","Header","Footer","LoadingScreen","provide","showFooter","usersCss","textContent","append","showSplashScreen","hideSplash","customCss","cleanedCss","replace","injectCustomStyles","getBackgroundImage","ref","layout","itemSizeBound","getExternalCSSLinks","getSections","modalOpen","searching","setLayoutOrientation","setItemSize","updateModalVisibility","checkTheresData","section","filterTiles","items","searchValue","icon","getDisplayData","finishedSearching","checkIfResults","userIsTypingSomething","settingsVisible","availableThemes","getInitialTheme","getUserThemes","displayLayout","updateDisplayLayout","iconSize","updateIconSize","modalChanged","isUserLoggedIn","directives","rawName","expression","logout","toggleSettingsVisibility","composing","input","indexOf","_k","keyCode","clearFilterInput","arguments","ArrowKeyNavigation","constructor","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","filter","$emit","blur","tooltip","showEditor","showCloudModal","modalNames","CONF_EDITOR","combineConfig","CLOUD_BACKUP","goToEdit","goToMetaEdit","goToCustomCss","openCloudSync","backupId","resetLocalSettings","jsonParser","copyConfigToClipboard","trimWhitespace","split","map","x","trimRight","join","throwError","msg","stringify","indentLevel","handlers","null","number","boolean","string","array","output","forEach","y","handler","typeOf","inArray","rootNode","keys","k","val","function","formElements","$set","addNavLinkRow","save","AddNewIcon","SaveConfigIcon","setItem","$toasted","show","options","model","callback","$$v","jsonData","isValid","errorMessages","_m","VJsoneditor","schema","modes","onValidationError","validationErrors","computed","theme","errors","keyword","highlighter","PrismEditor","css","match","validate","inject","userStyles","code","JsonToYaml","EditSiteMeta","JsonEditor","CustomCssEditor","DownloadIcon","DeleteIcon","EditIcon","CloudIcon","MetaDataIcon","CustomCssIcon","itemToSelect","tabView","navItems","activeTabItem","$modal","navigator","clipboard","writeText","isTheUserSure","confirm","clear","location","reload","highlighted","getElementById","innerHTML","backupPassword","checkPass","scopedSlots","_u","fn","proxy","restoreCode","restorePassword","restoreBackup","click","_t","Function","label","placeholder","updateValue","default","validator","ENDPOINT","backupEndpoint","encryptData","password","stringifiedData","encryptedData","aes","encrypt","toString","decryptData","decrypt","Utf8","makeSubHash","pass","sha256","backup","axios","post","userData","subHash","update","put","encodeGetParams","entries","kv","encodeURIComponent","restore","params","url","then","response","errorMsg","decryptedData","Button","Input","IconBackup","IconRestore","savedHash","makeUpdate","showErrorMsg","makeBackup","setBackupIdLocally","showSuccessMsg","isUpdate","hash","makeHash","IconSpanner","IconCloud","ConfigContainer","CloudBackupRestore","content","themeNames","selectedTheme","ThemeHelper","preloadTheme","href","rel","sheet","disabled","selectTheme","themes","add","find","confTheme","userThemes","watch","newTheme","themeHelper","loading","builtInThemes","externalThemeNames","added","isThemeLocal","updateTheme","htmlTag","getElementsByTagName","hasAttribute","removeAttribute","themeToCheck","includes","resetToDefault","setLocalTheme","IconDeafault","IconHorizontal","IconVertical","IconSmall","IconMedium","IconLarge","shouldHide","hideWelcomeHelper","timeDelay","removeEventListener","keyPressEvent","shouldHideWelcomeMessage","$destroy","generateUserToken","user","toLowerCase","isLoggedIn","users","validTokens","userAuthenticated","cookie","cookieKey","trim","cookieValue","cookieKeys","AUTH_TOKEN","checkCredentials","username","correct","login","userObject","USERNAME","removeItem","SearchBar","ConfigLauncher","ThemeSelector","LayoutSelector","ItemSizeSelector","KeyboardShortcutInfo","IconLogout","IconOpen","IconClose","something","changedTo","cssThemes","searchVisible","getSettingsVisibility","groupId","displayData","collapsed","cols","rows","color","customStyles","isGridLayout","item","makeId","backgroundColor","newItemSize","shouldEnableStatusCheck","statusCheck","triggerModal","getTooltipOptions","itemSize","getUnicodeOpeningIcon","itemOpened","statusResponse","successStatus","iconType","size","broken","iconPath","imageNotFound","ErrorHandler","warn","BrokenImage","determineImageType","getIconPath","str","pattern","RegExp","img","fileExtRegex","validImgExtensions","splitPath","exec","fullUrl","isLocalIP","urlParts","imgType","makeClass","isSmall","isTransparent","openingMethod","transparent","NewTabOpenIcon","SameTabOpenIcon","IframeOpenIcon","statusText","otherStatusText","classes","showToast","statusSuccess","startTime","Date","subtitle","enableStatusCheck","getId","background","Icon","ItemOpenMethodIcon","StatusIndicator","altKey","preventDefault","tileElem","isOverflowing","scrollHeight","clientHeight","className","trigger","hideOnTargetClick","html","placement","delay","baseUrl","endpoint","manageTitleEllipse","checkWebsiteStatus","checkSpanNum","sanitizeCustomStyles","uniqueKey","getCollapseState","collapseChanged","Number","isOpen","span","classPrefix","maxSpan","numSpan","parseInt","userCss","initStorage","collapseStateObject","initialiseStorage","collapseState","newState","whatChanged","setCollapseState","srcElement","checked","modalClosed","hide","slot","close","Collapsable","Item","IframeModal","styles","itemCountX","itemCountY","itemPreference","globalPreference","SettingsContainer","ItemGroup","layoutOrientation","set","filterComp","urlPattern","domainPattern","allTiles","searchTerm","modalState","availibleThemes","externalStyleSheet","externals","isArray","ext","Deafault","isFound","enableFontAwesome","checkIfFontAwesomeNeeded","fontAwesomeScript","faKey","fontAwesomeKey","itemsFound","backgroundImg","initiateFontAwesome","submitLogin","status","auth","setTheme","Vue","use","Router","isAuthenticated","router","routes","Home","meta","metaTags","Login","beforeEnter","to","from","next","beforeEach","defaultTitle","afterEach","nextTick","register","ready","log","registered","cached","updatefound","updated","offline","VTooltip","VModal","VTabs","Toasted","toastedOptions","VSelect","productionTip","awesome","Dashy","$mount","visibleComponents","pageTitle","navigation","searchBar","settings","footer","HIDE_WELCOME_BANNER","LAYOUT_ORIENTATION","COLLAPSE_STATE","ICON_SIZE","THEME","BACKUP_ID","BACKUP_HASH","HIDE_SETTINGS","topLevelConfKeys","SECTIONS","duration","keepOnHover","iconPack","splashScreenTime"],"mappings":"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","file":"js/app.4f1b29c1.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 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\"app\": 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\":\"295c2a00\"}[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// 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=1&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!./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!./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 ","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&\"","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=437d8549&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 ","\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 ","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!./Footer.vue?vue&type=style&index=0&id=7bd89e4f&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!./Header.vue?vue&type=style&index=0&id=70a33270&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!./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!./ItemSizeSelector.vue?vue&type=style&index=0&id=58966274&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!./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!./EditSiteMeta.vue?vue&type=style&index=0&id=772067bb&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.showFooter)?_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}}):_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('div',{staticClass:\"page-titles\"},[_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
{{ title }}
\n {{ description }}\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!./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=290d21a8&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=290d21a8&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 \"290d21a8\",\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\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\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=70a33270&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=70a33270&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 \"70a33270\",\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\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=7bd89e4f&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=7bd89e4f&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 \"7bd89e4f\",\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
Dashy
\n
\n
Loading
\n
\n \n \n \n \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!./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 make up of three parts: appConfig, pageInfo and sections\n */\nimport Defaults, { localStorageKeys } from '@/utils/defaults';\nimport conf from '../../public/conf.yml';\n\nexport const appConfig = (() => {\n if (localStorage[localStorageKeys.APP_CONFIG]) {\n return JSON.parse(localStorage[localStorageKeys.APP_CONFIG]);\n } else if (conf.appConfig) {\n return conf.appConfig;\n } else {\n return Defaults.appConfig;\n }\n})();\n\nexport const pageInfo = (() => {\n const defaults = Defaults.pageInfo;\n let localPageInfo;\n try {\n localPageInfo = JSON.parse(localStorage[localStorageKeys.PAGE_INFO]);\n } catch (e) {\n localPageInfo = {};\n }\n const pi = conf.pageInfo || defaults; // The page info object to return\n pi.title = localPageInfo.title || conf.pageInfo.title || defaults.title;\n pi.description = localPageInfo.description || conf.pageInfo.description || defaults.description;\n pi.navLinks = localPageInfo.navLinks || conf.pageInfo.navLinks || defaults.navLinks;\n pi.footerText = localPageInfo.footerText || conf.pageInfo.footerText || defaults.footerText;\n return pi;\n})();\n\nexport const 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 return conf.sections;\n})();\n\nexport const config = (() => {\n const result = {\n appConfig,\n pageInfo,\n sections,\n };\n return result;\n})();\n","\n \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!./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=e4bb08ba&\"\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:\"filter-container\",attrs:{\"displayLayout\":_vm.layout,\"iconSize\":_vm.itemSizeBound,\"availableThemes\":_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 ? 'No Search Results' : 'No Data Configured')+\" \")]):_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:{\"themes\":_vm.availableThemes,\"confTheme\":_vm.getInitialTheme(),\"userThemes\":_vm.getUserThemes()}}),_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('IconLogout',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:('Logout'),expression:\"'Logout'\"}],staticClass:\"logout-icon\",on:{\"click\":function($event){return _vm.logout()}}}):_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')],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(\"Search\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.input),expression:\"input\"}],ref:\"filter\",attrs:{\"id\":\"filter-tiles\",\"placeholder\":\"Start typing to filter...\"},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\":\"Clear search\"},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\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=4039a28b&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=4039a28b&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 \"4039a28b\",\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(\"Config\")]),_c('div',{staticClass:\"config-buttons\"},[_c('IconSpanner',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip('Update configuration locally')),expression:\"tooltip('Update configuration locally')\"}],attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.showEditor()}}}),_c('IconCloud',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip('Backup / restore cloud config')),expression:\"tooltip('Backup / restore cloud config')\"}],attrs:{\"tabindex\":\"-2\"},on:{\"click\":function($event){return _vm.showCloudModal()}}})],1),_c('modal',{attrs:{\"name\":_vm.modalNames.CONF_EDITOR,\"resizable\":true,\"width\":\"60%\",\"height\":\"80%\"},on:{\"closed\":function($event){return _vm.$emit('modalChanged', false)}}},[_c('ConfigContainer',{attrs:{\"config\":_vm.combineConfig()}})],1),_c('modal',{attrs:{\"name\":_vm.modalNames.CLOUD_BACKUP,\"resizable\":true,\"width\":\"65%\",\"height\":\"60%\"},on:{\"closed\":function($event){return _vm.$emit('modalChanged', false)}}},[_c('CloudBackupRestore',{attrs:{\"config\":_vm.combineConfig()}})],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\":\"Config\"}},[_c('div',{staticClass:\"main-options-container\"},[_c('h2',[_vm._v(\"Configuration Options\")]),_c('a',{staticClass:\"hyperlink-wrapper\",attrs:{\"href\":\"/conf.yml\",\"download\":\"\"}},[_c('button',{staticClass:\"config-button center\"},[_c('DownloadIcon',{staticClass:\"button-icon\"}),_vm._v(\" Download Config \")],1)]),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.goToEdit()}}},[_c('EditIcon',{staticClass:\"button-icon\"}),_vm._v(\" Edit Sections \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.goToMetaEdit()}}},[_c('MetaDataIcon',{staticClass:\"button-icon\"}),_vm._v(\" Edit Meta Data \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.goToCustomCss()}}},[_c('CustomCssIcon',{staticClass:\"button-icon\"}),_vm._v(\" Edit Custom CSS \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.openCloudSync()}}},[_c('CloudIcon',{staticClass:\"button-icon\"}),_vm._v(\" \"+_vm._s(_vm.backupId ? 'Edit Cloud Sync' : 'Enable Cloud Sync')+\" \")],1),_c('button',{staticClass:\"config-button center\",on:{\"click\":function($event){return _vm.resetLocalSettings()}}},[_c('DeleteIcon',{staticClass:\"button-icon\"}),_vm._v(\" Reset Local Settings \")],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('div',{staticClass:\"config-note\"},[_c('p',{staticClass:\"sub-title\"},[_vm._v(\"Note:\")]),_c('span',[_vm._v(\" All changes made here are stored locally. To apply globally, either export your config into your conf.yml file, or use the cloud backup/ restore feature. \")])])])]),_c('TabItem',{staticClass:\"code-container\",attrs:{\"name\":\"Backup Config\"}},[_c('pre',{attrs:{\"id\":\"conf-yaml\"}},[_vm._v(_vm._s(this.jsonParser(this.config)))]),_c('div',{staticClass:\"yaml-action-buttons\"},[_c('h2',[_vm._v(\"Actions\")]),_c('a',{staticClass:\"yaml-button download\",attrs:{\"href\":\"/conf.yml\",\"download\":\"\"}},[_vm._v(\"Download Config\")]),_c('a',{staticClass:\"yaml-button copy\",on:{\"click\":function($event){return _vm.copyConfigToClipboard()}}},[_vm._v(\"Copy Config\")]),_c('a',{staticClass:\"yaml-button reset\",on:{\"click\":function($event){return _vm.resetLocalSettings()}}},[_vm._v(\"Reset Config\")])])]),_c('TabItem',{attrs:{\"name\":\"Edit Sections\"}},[_c('JsonEditor',{attrs:{\"config\":_vm.config}})],1),_c('TabItem',{attrs:{\"name\":\"Edit Site Meta\"}},[_c('EditSiteMeta',{attrs:{\"config\":_vm.config}})],1),_c('TabItem',{attrs:{\"name\":\"Custom Styles\"}},[_c('CustomCssEditor',{attrs:{\"config\":_vm.config,\"initialCss\":\"hello\"}})],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:\"site-meta-container\"},[_c('h2',[_vm._v(\"Edit Site Meta\")]),_c('div',{staticClass:\"form\"},[_c('div',{staticClass:\"row\"},[_c('span',[_vm._v(\"Title\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formElements.title),expression:\"formElements.title\"}],domProps:{\"value\":(_vm.formElements.title)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.formElements, \"title\", $event.target.value)}}})]),_c('div',{staticClass:\"row\"},[_c('span',[_vm._v(\"Description\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formElements.description),expression:\"formElements.description\"}],domProps:{\"value\":(_vm.formElements.description)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.formElements, \"description\", $event.target.value)}}})]),_c('div',{staticClass:\"row\"},[_c('span',[_vm._v(\"Footer Text\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formElements.footerText),expression:\"formElements.footerText\"}],domProps:{\"value\":(_vm.formElements.footerText)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.formElements, \"footerText\", $event.target.value)}}})])]),_c('div',{staticClass:\"form\"},[_c('h2',[_vm._v(\"Nav Bar Links\")]),_vm._l((_vm.formElements.navLinks),function(link,index){return _c('div',{key:index,staticClass:\"add-nav-bar-link\"},[_c('div',{staticClass:\"row\"},[_c('span',[_vm._v(\"Link Text\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(link.title),expression:\"link.title\"}],domProps:{\"value\":(link.title)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(link, \"title\", $event.target.value)}}})]),_c('div',{staticClass:\"row\"},[_c('span',[_vm._v(\"Link URL\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(link.path),expression:\"link.path\"}],domProps:{\"value\":(link.path)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(link, \"path\", $event.target.value)}}})])])}),_c('button',{staticClass:\"add-new-link\",on:{\"click\":function($event){return _vm.addNavLinkRow()}}},[_c('AddNewIcon'),_vm._v(\" Add New Link \")],1)],2),_c('button',{staticClass:\"save-button\",on:{\"click\":function($event){return _vm.save()}}},[_c('SaveConfigIcon'),_vm._v(\" Save Changes \")],1)])}\nvar staticRenderFns = []\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!./EditSiteMeta.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!./EditSiteMeta.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditSiteMeta.vue?vue&type=template&id=772067bb&scoped=true&\"\nimport script from \"./EditSiteMeta.vue?vue&type=script&lang=js&\"\nexport * from \"./EditSiteMeta.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditSiteMeta.vue?vue&type=style&index=0&id=772067bb&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 \"772067bb\",\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:\"json-editor-outer\"},[_c('v-jsoneditor',{attrs:{\"options\":_vm.options,\"height\":\"580px\"},model:{value:(_vm.jsonData),callback:function ($$v) {_vm.jsonData=$$v},expression:\"jsonData\"}}),_c('button',{class:(\"save-button \" + (!_vm.isValid ? 'err' : '')),on:{\"click\":function($event){return _vm.save()}}},[_vm._v(\"Save Changes\")]),_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(\" Config is Valid \")]):_vm._e()],2)]),_vm._m(0)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"note\"},[_vm._v(\" It is recommend to backup your existing confiruration before making any changes. \"),_c('br'),_vm._v(\" Remember that these changes are only applied locally, and will need to be exported to your conf.yml \")])}]\n\nexport { render, staticRenderFns }","\n \n
\n
\n
\n
\n - \n {{error.msg}}\n
\n - \n Config is Valid\n
\n
\n \n
\n It is recommend to backup your existing confiruration before making any changes.\n
\n Remember that these changes are only applied locally,\n and will need to be exported to your conf.yml\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!./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=9771d03c&\"\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:\"json-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(\"Save Changes\")]),_vm._m(0)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"quick-note\"},[_c('b',[_vm._v(\"Note\")]),_vm._v(\": You will need to refresh the page for your changes to take effect. Styles overides are only stored locally, so it is reccomended to make a copy of your CSS. To remove all custom styles, delete the contents and hit Save Changes \")])}]\n\nexport { render, staticRenderFns }","\n \n
\n
\n
\n Note: You will need to refresh the page for your changes to take effect.\n Styles overides are only stored locally, so it is reccomended to make a copy of your CSS.\n To remove all custom styles, delete the contents and hit Save Changes\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!./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=816a95e4&\"\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","\n \n \n \n
Configuration Options
\n
\n \n \n
\n
\n
\n
\n
\n
\n You are using a very small screen, and some screens in this menu may not be optimal\n
\n
\n
Note:
\n
\n All changes made here are stored locally. To apply globally, either export your config\n into your conf.yml file, or use the cloud backup/ restore feature.\n \n
\n
\n \n \n {{this.jsonParser(this.config)}}
\n \n \n \n \n \n \n \n \n \n \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!./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=00f0c6a7&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=00f0c6a7&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 \"00f0c6a7\",\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\"},[_vm._m(0),_c('div',{staticClass:\"section backup-section\"},[(_vm.backupId)?_c('h3',[_vm._v(\"Update Backup\")]):_c('h3',[_vm._v(\"Make a Backup\")]),_c('Input',{attrs:{\"name\":\"backup-password\",\"label\":_vm.backupId ? 'Enter your Password' : 'Choose a Password',\"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 ? 'Update Backup' : 'Backup'))]},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(\"Your Backup ID: \")]),_c('pre',{staticClass:\"backup-id-value\"},[_vm._v(_vm._s(_vm.backupId))]),_c('span',{staticClass:\"backup-id-note\"},[_vm._v(\" This is used to restore from backups later. So keep it, along with your password somewhere safe. \")])]):_vm._e()],1),_c('div',{staticClass:\"section restore-section\"},[_c('h3',[_vm._v(\"Restore a Backup\")]),_c('Input',{attrs:{\"name\":\"restore-code\",\"label\":\"Restore ID\"},model:{value:(_vm.restoreCode),callback:function ($$v) {_vm.restoreCode=$$v},expression:\"restoreCode\"}}),_c('Input',{attrs:{\"name\":\"restore-password\",\"label\":\"Password\",\"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(\"Restore\")]},proxy:true},{key:\"icon\",fn:function(){return [_c('IconRestore')]},proxy:true}])})],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"section intro\"},[_c('h2',[_vm._v(\"Cloud Backup & Restore\")]),_c('p',{staticClass:\"intro\"},[_vm._v(\" Cloud backup and restore is an optional feature, that enables you to upload your config to the internet, and then restore it on any other device or instance of Dashy. \"),_c('br'),_c('br'),_vm._v(\" All data is fully end-to-end encrypted with AES, using your password as the key. \"),_c('br'),_vm._v(\" For more info, please see the \"),_c('a',{attrs:{\"href\":\"https://github.com/Lissy93/dashy/blob/master/docs/backup-restore.md\"}},[_vm._v(\"docs\")])])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{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\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=4bb44f8e&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=4bb44f8e&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 \"4bb44f8e\",\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:(\"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\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
Cloud Backup & Restore
\n
\n Cloud backup and restore is an optional feature, that enables you to upload your\n config to the internet, and then restore it on any other device or instance of Dashy.\n
\n All data is fully end-to-end encrypted with AES, using your password as the key.\n
\n For more info, please see the\n docs\n
\n
\n
\n
Update Backup
\n
Make a Backup
\n
\n
\n
\n
Your Backup ID: \n
{{ backupId }}
\n
\n This is used to restore from backups later.\n So keep it, along with your password somewhere safe.\n \n
\n
\n
\n
Restore a Backup
\n \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=763657f4&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=763657f4&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 \"763657f4\",\n null\n \n)\n\nexport default component.exports","\n \n \n
Config\n
\n \n \n
\n\n \n
\n \n \n\n \n
\n \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!./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=437d8549&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=437d8549&scoped=true&lang=scss&\"\nimport style1 from \"./ConfigLauncher.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 \"437d8549\",\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.themes)?_c('div',{staticClass:\"theme-selector-section\"},[_c('span',{staticClass:\"theme-label\"},[_vm._v(\"Theme\")]),_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):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * A function for pre-loading, and easy switching of external stylesheets\n * External CSS is preloaded to avoid FOUC\n */\nconst ThemeHelper = function th() {\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 const selectTheme = (themes, name) => {\n const t = themes; // To avoid ESLint complaining about mutating a param\n if (name && !themes[name]) throw new Error(`Theme: '${name}' does not exist.`);\n Object.keys(themes).forEach(n => { t[n].disabled = (n !== name); });\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\nexport default ThemeHelper;\n","\n \n Theme\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=2fa10d1a&\"\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(\"Layout\")]),_c('div',{staticClass:\"display-options\"},[_c('IconDeafault',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip('Auto')),expression:\"tooltip('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('Horizontal')),expression:\"tooltip('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('Vertical')),expression:\"tooltip('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
Layout\n
\n \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!./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=c819d738&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=c819d738&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 \"c819d738\",\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(\"Icon Size\")]),_c('div',{staticClass:\"display-options\"},[_c('IconSmall',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.tooltip('Small')),expression:\"tooltip('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('Medium')),expression:\"tooltip('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('Large')),expression:\"tooltip('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
Icon Size\n
\n \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!./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=58966274&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=58966274&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 \"58966274\",\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
There are keyboard shortcuts! ⌨️🙌
\n
x
\n
\n Just start typing to filter. Then use the tab key to cycle through results,\n and press enter to launch the selected item, or alt + enter to open in a modal.\n You can hit Esc at anytime to clear the search. Easy 🥳\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!./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","import sha256 from 'crypto-js/sha256';\nimport { cookieKeys, localStorageKeys } from './defaults';\n\nconst generateUserToken = (user) => sha256(user.toString()).toString().toLowerCase();\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\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 === username) {\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\nexport const login = (username, pass) => {\n const userObject = { user: username, hash: sha256(pass).toString().toLowerCase() };\n document.cookie = `authenticationToken=${generateUserToken(userObject)}; max-age=600`;\n localStorage.setItem(localStorageKeys.USERNAME, username);\n};\n\nexport const logout = () => {\n document.cookie = 'authenticationToken=null';\n localStorage.removeItem(localStorageKeys.USERNAME);\n};\n","\n \n \n \n
\n \n \n \n \n \n
\n
\n \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!./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=0a85c63b&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=0a85c63b&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 \"0a85c63b\",\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,\"itemSize\":_vm.newItemSize,\"enableStatusCheck\":_vm.shouldEnableStatusCheck(item.statusCheck)},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('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 !== 'iframe' ? _vm.url : '#',\"target\":_vm.target === 'newtab' ? '_blank' : '',\"rel\":\"noopener noreferrer\",\"tabindex\":\"0\",\"id\":(\"link-\" + _vm.id)},on:{\"click\":_vm.itemOpened}},[_c('div',{class:(\"tile-title \" + (!_vm.icon? 'bounce': '')),attrs:{\"id\":(\"tile-\" + _vm.id)}},[_c('span',{staticClass:\"text\"},[_vm._v(_vm._s(_vm.title))]),_c('div',{staticClass:\"overflow-dots\"},[_vm._v(\"...\")]),_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,\"openingMethod\":_vm.target,\"position\":_vm.itemSize === 'medium'? 'bottom right' : 'top right'}}),(_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)}\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',[(_vm.iconType === 'font-awesome')?_c('i',{class:(_vm.icon + \" \" + _vm.size)}):(_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 }","/* eslint no-console: [\"error\", { allow: [\"warn\", \"error\"] }] */\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 console.warn(msg);\n};\n\nexport default ErrorHandler;\n","\n \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!./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=3d8a077b&\"\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',{class:_vm.makeClass(_vm.position, _vm.isSmall, _vm.isTransparent)},[(_vm.openingMethod === 'newtab')?_c('NewTabOpenIcon'):(_vm.openingMethod === 'sametab')?_c('SameTabOpenIcon'):(_vm.openingMethod === 'iframe')?_c('IframeOpenIcon'):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \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!./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=17201835&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=17201835&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 \"17201835\",\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\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=4076b7e0&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=4076b7e0&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 \"4076b7e0\",\n null\n \n)\n\nexport default component.exports","\n \n \n \n
{{ title }}\n
...
\n
{{ description }}
\n
\n \n \n \n \n \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!./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=ec4e585c&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\"}}):_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
\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!./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=3f92488c&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=3f92488c&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 \"3f92488c\",\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%\"},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 }","\n \n Close
\n x\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!./IframeModal.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!./IframeModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./IframeModal.vue?vue&type=template&id=c8906bde&\"\nimport script from \"./IframeModal.vue?vue&type=script&lang=js&\"\nexport * from \"./IframeModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./IframeModal.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 No Items to Show Yet\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!./ItemGroup.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!./ItemGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ItemGroup.vue?vue&type=template&id=0ae71c1f&scoped=true&\"\nimport script from \"./ItemGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemGroup.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ItemGroup.vue?vue&type=style&index=0&id=0ae71c1f&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 \"0ae71c1f\",\n null\n \n)\n\nexport default component.exports","\n \n \n
\n \n
\n \n
\n \n
\n {{searchValue ? 'No Search Results' : 'No Data Configured'}}\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!./Home.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!./Home.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=14317bc9&scoped=true&\"\nimport script from \"./Home.vue?vue&type=script&lang=js&\"\nexport * from \"./Home.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Home.vue?vue&type=style&index=0&id=14317bc9&lang=scss&scoped=true&\"\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 \"14317bc9\",\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:\"login-page\"},[_c('form',{staticClass:\"login-form\"},[_c('h2',{staticClass:\"login-title\"},[_vm._v(\"Dashy\")]),_c('Input',{staticClass:\"login-field username\",attrs:{\"label\":\"Username\",\"type\":\"text\"},model:{value:(_vm.username),callback:function ($$v) {_vm.username=$$v},expression:\"username\"}}),_c('Input',{staticClass:\"login-field password\",attrs:{\"label\":\"Password\",\"type\":\"password\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}),_c('Button',{staticClass:\"login-button\",attrs:{\"click\":_vm.submitLogin}},[_vm._v(\"Login\")]),_c('transition',{attrs:{\"name\":\"bounce\"}},[_c('p',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.message),expression:\"message\"}],class:(\"login-error-message \" + _vm.status)},[_vm._v(_vm._s(_vm.message))])])],1)])}\nvar staticRenderFns = []\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!./Login.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!./Login.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=b188f480&\"\nimport script from \"./Login.vue?vue&type=script&lang=js&\"\nexport * from \"./Login.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Login.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","import Vue from 'vue';\nimport Router from 'vue-router';\n\nimport Home from '@/views/Home.vue';\nimport Login from '@/views/Login.vue';\nimport { isLoggedIn } from '@/utils/Auth';\nimport { appConfig, pageInfo, sections } from '@/utils/ConfigAccumalator';\n\nVue.use(Router);\n\nconst isAuthenticated = () => {\n const users = appConfig.auth;\n return (!users || isLoggedIn(users));\n};\n\nconst router = new Router({\n routes: [\n {\n path: '/',\n name: 'home',\n component: Home,\n props: {\n appConfig,\n pageInfo,\n sections,\n },\n meta: {\n title: pageInfo.title || 'Home Page',\n metaTags: [\n {\n name: 'description',\n content: 'A simple static homepage for you\\'re server',\n },\n ],\n },\n },\n {\n path: '/login',\n name: 'login',\n component: Login,\n props: {\n appConfig,\n },\n beforeEnter: (to, from, next) => {\n if (isAuthenticated()) router.push({ path: '/' });\n next();\n },\n },\n {\n path: '/about',\n name: 'about',\n component: () => import(/* webpackChunkName: \"about\" */ './views/About.vue'),\n },\n ],\n});\n\nrouter.beforeEach((to, from, next) => {\n if (to.name !== 'login' && !isAuthenticated()) next({ name: 'login' });\n else next();\n});\n\nconst defaultTitle = 'Dashy';\nrouter.afterEach((to) => {\n Vue.nextTick(() => {\n document.title = to.meta.title || defaultTitle;\n });\n});\n\nexport default router;\n","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker';\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready() {\n console.log(\n 'App is being served from cache by a service worker.\\n'\n + 'For more details, visit https://goo.gl/AFskqB',\n );\n },\n registered() {\n console.log('Service worker has been registered.');\n },\n cached() {\n console.log('Content has been cached for offline use.');\n },\n updatefound() {\n console.log('New content is downloading.');\n },\n updated() {\n console.log('New content is available; please refresh.');\n },\n offline() {\n console.log('No internet connection found. App is running in offline mode.');\n },\n error(error) {\n console.error('Error during service worker registration:', error);\n },\n });\n}\n","import Vue from 'vue';\n\n/* Import component Vue plugins, used throughout the app */\nimport VTooltip from 'v-tooltip'; // A Vue directive for Popper.js, tooltip component\nimport VModal from 'vue-js-modal'; // Modal component\nimport VSelect from 'vue-select'; // Select dropdown component\nimport VTabs from 'vue-material-tabs'; // Tab view component, used on the config page\nimport Toasted from 'vue-toasted'; // Toast component, used to show confirmation notifications\n\nimport { toastedOptions } from './utils/defaults';\nimport Dashy from './App.vue';\nimport router from './router';\nimport './registerServiceWorker';\n\nVue.use(VTooltip);\nVue.use(VModal);\nVue.use(VTabs);\nVue.use(Toasted, toastedOptions);\nVue.component('v-select', VSelect);\n\nVue.config.productionTip = false;\n\nnew Vue({\n router,\n render: (awesome) => awesome(Dashy),\n}).$mount('#app');\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-sliders-h fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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-grip-horizontal fa-w-14\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"grip-horizontal\",\"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\":\"M96 288H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM96 96H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-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!./App.vue?vue&type=style&index=0&lang=scss&\"","module.exports = {\n pageInfo: {\n title: 'Dashy',\n description: '',\n navLinks: [\n { title: 'Home', path: '/' },\n { title: 'Source', path: 'https://github.com/Lissy93/dashy' },\n ],\n footerText: '',\n },\n appConfig: {},\n iconSize: 'medium',\n layout: 'auto',\n theme: 'default',\n fontAwesomeKey: '0821c65656',\n builtInThemes: [\n 'callisto',\n 'thebe',\n 'dracula',\n 'material',\n 'material-dark',\n 'colorful',\n 'nord',\n 'nord-frost',\n 'minimal-dark',\n 'minimal-light',\n 'matrix',\n 'matrix-red',\n 'hacker-girl',\n 'raspberry-jam',\n 'bee',\n 'tiger',\n 'material-original',\n 'material-dark-original',\n 'high-contrast-dark',\n 'high-contrast-light',\n ],\n visibleComponents: {\n pageTitle: true,\n navigation: true,\n searchBar: true,\n settings: true,\n footer: true,\n },\n localStorageKeys: {\n HIDE_WELCOME_BANNER: 'hideWelcomeHelpers',\n LAYOUT_ORIENTATION: 'layoutOrientation',\n COLLAPSE_STATE: 'collapseState',\n ICON_SIZE: 'iconSize',\n THEME: 'theme',\n CONF_SECTIONS: 'confSections',\n PAGE_INFO: 'pageInfo',\n APP_CONFIG: 'appConfig',\n BACKUP_ID: 'backupId',\n BACKUP_HASH: 'backupHash',\n HIDE_SETTINGS: 'hideSettings',\n USERNAME: 'username',\n },\n cookieKeys: {\n AUTH_TOKEN: 'authenticationToken',\n },\n modalNames: {\n CONF_EDITOR: 'CONF_EDITOR',\n CLOUD_BACKUP: 'CLOUD_BACKUP',\n },\n topLevelConfKeys: {\n PAGE_INFO: 'pageInfo',\n APP_CONFIG: 'appConfig',\n SECTIONS: 'sections',\n },\n toastedOptions: {\n position: 'bottom-center',\n duration: 2500,\n keepOnHover: true,\n className: 'toast-message',\n iconPack: 'fontawesome',\n },\n backupEndpoint: 'https://dashy-sync-service.as93.net',\n splashScreenTime: 1900,\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-times-circle fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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-cloud-upload-alt fa-w-20\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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!./ItemOpenMethodIcon.vue?vue&type=style&index=0&id=17201835&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-expand fa-w-14\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"expand\",\"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\":\"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\"}})])\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-plus-circle fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"plus-circle\",\"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\":\"M384 240v32c0 6.6-5.4 12-12 12h-88v88c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-88h-88c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h88v-88c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v88h88c6.6 0 12 5.4 12 12zm120 16c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-48 0c0-110.5-89.5-200-200-200S56 145.5 56 256s89.5 200 200 200 200-89.5 200-200z\"}})])\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!./Home.vue?vue&type=style&index=0&id=14317bc9&lang=scss&scoped=true&\"","\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-css3-alt fa-w-12\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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!./LayoutSelector.vue?vue&type=style&index=0&id=c819d738&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!./JsonEditor.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!./Item.vue?vue&type=style&index=0&lang=scss&\"","module.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\"}]}]}","\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-save fa-w-14\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"save\",\"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\":\"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\"}})])\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-expand-arrows-alt fa-w-14\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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-digital-tachograph fa-w-20\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fal\",\"data-icon\":\"digital-tachograph\",\"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\":\"M608 96H32c-17.67 0-32 14.33-32 32v256c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V128c0-17.67-14.33-32-32-32zm0 288H32V128h576v256zM80 272h208c8.84 0 16-7.16 16-16v-80c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16v80c0 8.84 7.16 16 16 16zm8-88h192v64H88v-64zM72 360h224c4.42 0 8-3.58 8-8v-8c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v8c0 4.42 3.58 8 8 8zm272 0h224c4.42 0 8-3.58 8-8v-8c0-4.42-3.58-8-8-8H344c-4.42 0-8 3.58-8 8v8c0 4.42 3.58 8 8 8zM80 288c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H80zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16z\"}})])\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!./KeyboardShortcutInfo.vue?vue&type=style&index=0&id=c5f17d9a&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: [classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"d\":\"M132.893 310.534l-30.082 10.911L91.9 291.364l30.081-10.911z\"}}),_c('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\"}}),_c('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\"}}),_c('path',{attrs:{\"d\":\"M96.656 243.686L85.721 213.63l30.07-10.94 10.935 30.055z\"}})])\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!./CustomCss.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!./ItemGroup.vue?vue&type=style&index=0&id=0ae71c1f&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!./SettingsContainer.vue?vue&type=style&index=0&id=0a85c63b&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!./CloudBackupRestore.vue?vue&type=style&index=0&id=763657f4&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!./PageTitle.vue?vue&type=style&index=0&id=290d21a8&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-th fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"th\",\"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\":\"M149.333 56v80c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V56c0-13.255 10.745-24 24-24h101.333c13.255 0 24 10.745 24 24zm181.334 240v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm32-240v80c0 13.255 10.745 24 24 24H488c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24zm-32 80V56c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm-205.334 56H24c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-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 24zm386.667-56H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zm0 160H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zM181.333 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-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!./Button.vue?vue&type=style&index=0&id=4bb44f8e&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-file-download fa-w-12\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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!./Collapsable.vue?vue&type=style&index=0&id=3f92488c&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!./Nav.vue?vue&type=style&index=0&id=68c1bd5c&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!./SearchBar.vue?vue&type=style&index=0&id=4039a28b&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-compress-arrows-alt fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n 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\"}, attrs),\n ...rest,\n },\n children.concat([_c('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\"}})])\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!./ItemIcon.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-download fa-w-16\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fal\",\"data-icon\":\"download\",\"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-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\"}})])\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-edit fa-w-18\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"far\",\"data-icon\":\"edit\",\"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\":\"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\"}})])\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!./ConfigContainer.vue?vue&type=style&index=0&id=00f0c6a7&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!./IframeModal.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!./StatusIndicator.vue?vue&type=style&index=0&id=4076b7e0&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!./Item.vue?vue&type=style&index=1&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-grip-vertical fa-w-10\",classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"aria-hidden\":\"true\",\"data-prefix\":\"fas\",\"data-icon\":\"grip-vertical\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 320 512\"}, attrs),\n ...rest,\n },\n children.concat([_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M96 32H32C14.33 32 0 46.33 0 64v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM288 32h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z\"}})])\n )\n }\n }\n "],"sourceRoot":""}
\ No newline at end of file
diff --git a/precache-manifest.3565d032725c8234bf93bdb9cccfc8f7.js b/precache-manifest.5782444e3ce5526a1d44ba51b98b86fd.js
similarity index 98%
rename from precache-manifest.3565d032725c8234bf93bdb9cccfc8f7.js
rename to precache-manifest.5782444e3ce5526a1d44ba51b98b86fd.js
index 248d1e98..c9e76a4a 100644
--- a/precache-manifest.3565d032725c8234bf93bdb9cccfc8f7.js
+++ b/precache-manifest.5782444e3ce5526a1d44ba51b98b86fd.js
@@ -8,8 +8,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
"url": "/conf.yml"
},
{
- "revision": "4c9c75abad49ad18d1fa",
- "url": "/css/app.557608e8.css"
+ "revision": "6d2865901e50ba861c2e",
+ "url": "/css/app.3cbdd1b4.css"
},
{
"revision": "17716c450a2499f15aa2",
@@ -32,7 +32,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
"url": "/fonts/Raleway-Variable.3b5635ac.ttf"
},
{
- "revision": "31ace37f31b93085c9013425c38f0e43",
+ "revision": "aac9c8de101dc53453e48274c6bb9d0b",
"url": "/index.html"
},
{
@@ -40,12 +40,12 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
"url": "/item-icons/.gitignore"
},
{
- "revision": "b3cf67d8e3b3d9f13e33",
- "url": "/js/about.5b7dd0f3.js"
+ "revision": "6b08ef1f0e9a747ffeb0",
+ "url": "/js/about.295c2a00.js"
},
{
- "revision": "4c9c75abad49ad18d1fa",
- "url": "/js/app.1b280214.js"
+ "revision": "6d2865901e50ba861c2e",
+ "url": "/js/app.4f1b29c1.js"
},
{
"revision": "17716c450a2499f15aa2",
diff --git a/service-worker.js b/service-worker.js
index c44aedb4..70b9eeb5 100644
--- a/service-worker.js
+++ b/service-worker.js
@@ -14,7 +14,7 @@
importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js");
importScripts(
- "/precache-manifest.3565d032725c8234bf93bdb9cccfc8f7.js"
+ "/precache-manifest.5782444e3ce5526a1d44ba51b98b86fd.js"
);
workbox.core.setCacheNameDetails({prefix: "Dashy"});