From 863a8b79bb5ab79af5ad9c882e00a5bb44e5e601 Mon Sep 17 00:00:00 2001 From: "julia.kirschenheuter" Date: Tue, 28 Mar 2023 14:57:35 +0200 Subject: [PATCH] Fix list structure Signed-off-by: julia.kirschenheuter --- apps/dashboard/src/DashboardApp.vue | 6 +++--- dist/dashboard-main.js | 4 ++-- dist/dashboard-main.js.map | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/dashboard/src/DashboardApp.vue b/apps/dashboard/src/DashboardApp.vue index 8d4785f1b69..c5ae5c9d8e0 100644 --- a/apps/dashboard/src/DashboardApp.vue +++ b/apps/dashboard/src/DashboardApp.vue @@ -2,11 +2,11 @@

{{ greeting.text }}

    -
    -
    +
div { + & > li { margin: 8px; } } diff --git a/dist/dashboard-main.js b/dist/dashboard-main.js index b8618d40cb7..9e75ddc29d6 100644 --- a/dist/dashboard-main.js +++ b/dist/dashboard-main.js @@ -1,3 +1,3 @@ /*! For license information please see dashboard-main.js.LICENSE.txt */ -!function(){"use strict";var n,e={78828:function(n,e,a){var o=a(20144),i=a(79753),s=a(45994),r=a(79954),l=a(4820),d=a(10861),c=a.n(d),p=a(9980),u=a.n(p),A=a(70110),h=a.n(A),b=a(73229),v={data:function(){return{isMobile:this._isMobile()}},beforeMount:function(){window.addEventListener("resize",this._onResize)},beforeDestroy:function(){window.removeEventListener("resize",this._onResize)},methods:{_onResize:function(){this.isMobile=this._isMobile()},_isMobile:function(){return document.documentElement.clientWidth<768}}},g=a(25108),m=(0,r.j)("dashboard","panels"),f=(0,r.j)("dashboard","firstRun"),C={weather:{text:t("dashboard","Weather"),icon:"icon-weather-status"},status:{text:t("dashboard","Status"),icon:"icon-user-status-online"}},x={name:"DashboardApp",components:{NcButton:c(),Draggable:u(),NcModal:h(),Pencil:b.default},mixins:[v],data:function(){var t,n;return{isAdmin:(0,s.ts)().isAdmin,timer:new Date,registeredStatus:[],callbacks:{},callbacksStatus:{},allCallbacksStatus:{},statusInfo:C,enabledStatuses:(0,r.j)("dashboard","statuses"),panels:m,firstRun:f,displayName:null===(t=(0,s.ts)())||void 0===t?void 0:t.displayName,uid:null===(n=(0,s.ts)())||void 0===n?void 0:n.uid,layout:(0,r.j)("dashboard","layout").filter((function(t){return m[t]})),modal:!1,appStoreUrl:(0,i.generateUrl)("/settings/apps/dashboard"),statuses:{}}},computed:{greeting:function(){var n,e=this.timer.getHours();n=e>=22||e<5?"night":e>=18?"evening":e>=12?"afternoon":"morning";var a={morning:{generic:t("dashboard","Good morning"),withName:t("dashboard","Good morning, {name}",{name:this.displayName},void 0,{escape:!1})},afternoon:{generic:t("dashboard","Good afternoon"),withName:t("dashboard","Good afternoon, {name}",{name:this.displayName},void 0,{escape:!1})},evening:{generic:t("dashboard","Good evening"),withName:t("dashboard","Good evening, {name}",{name:this.displayName},void 0,{escape:!1})},night:{generic:t("dashboard","Hello"),withName:t("dashboard","Hello, {name}",{name:this.displayName},void 0,{escape:!1})}};return{text:this.displayName&&this.uid!==this.displayName?a[n].withName:a[n].generic}},isActive:function(){var t=this;return function(n){return t.layout.indexOf(n.id)>-1}},isStatusActive:function(){var t=this;return function(n){return!(n in t.enabledStatuses)||t.enabledStatuses[n]}},sortedAllStatuses:function(){return Object.keys(this.allCallbacksStatus).slice().sort(this.sortStatuses)},sortedPanels:function(){var t=this;return Object.values(this.panels).sort((function(n,e){var a=t.layout.indexOf(n.id),o=t.layout.indexOf(e.id);return-1===a||-1===o?o-a||n.id-e.id:a-o||n.id-e.id}))},sortedRegisteredStatus:function(){return this.registeredStatus.slice().sort(this.sortStatuses)}},watch:{callbacks:function(){this.rerenderPanels()},callbacksStatus:function(){for(var t in this.callbacksStatus){var n=this.$refs["status-"+t];this.statuses[t]&&this.statuses[t].mounted||(n?(this.callbacksStatus[t](n[0]),o.ZP.set(this.statuses,t,{mounted:!0})):g.error("Failed to register panel in the frontend as no backend data was provided for "+t))}}},mounted:function(){var t=this;this.updateSkipLink(),window.addEventListener("scroll",this.handleScroll),setInterval((function(){t.timer=new Date}),3e4),this.firstRun&&window.addEventListener("scroll",this.disableFirstrunHint)},destroyed:function(){window.removeEventListener("scroll",this.handleScroll)},methods:{register:function(t,n){o.ZP.set(this.callbacks,t,n)},registerStatus:function(t,n){var e=this;o.ZP.set(this.allCallbacksStatus,t,n),this.isStatusActive(t)&&(this.registeredStatus.push(t),this.$nextTick((function(){o.ZP.set(e.callbacksStatus,t,n)})))},rerenderPanels:function(){for(var t in this.callbacks){var n=this.$refs[t];-1!==this.layout.indexOf(t)&&(this.panels[t]&&this.panels[t].mounted||(n?(this.callbacks[t](n[0],{widget:this.panels[t]}),o.ZP.set(this.panels[t],"mounted",!0)):g.error("Failed to register panel in the frontend as no backend data was provided for "+t)))}},saveLayout:function(){l.default.post((0,i.generateUrl)("/apps/dashboard/layout"),{layout:this.layout.join(",")})},saveStatuses:function(){l.default.post((0,i.generateUrl)("/apps/dashboard/statuses"),{statuses:JSON.stringify(this.enabledStatuses)})},showModal:function(){this.modal=!0,this.firstRun=!1},closeModal:function(){this.modal=!1},updateCheckbox:function(t,n){var e=this,a=this.layout.indexOf(t.id);!n&&a>-1?this.layout.splice(a,1):this.layout.push(t.id),o.ZP.set(this.panels[t.id],"mounted",!1),this.saveLayout(),this.$nextTick((function(){return e.rerenderPanels()}))},disableFirstrunHint:function(){var t=this;window.removeEventListener("scroll",this.disableFirstrunHint),setTimeout((function(){t.firstRun=!1}),1e3)},updateSkipLink:function(){document.getElementsByClassName("skip-navigation")[0].setAttribute("href","#app-dashboard")},updateStatusCheckbox:function(t,n){n?this.enableStatus(t):this.disableStatus(t)},enableStatus:function(t){this.enabledStatuses[t]=!0,this.registerStatus(t,this.allCallbacksStatus[t]),this.saveStatuses()},disableStatus:function(t){var n=this;this.enabledStatuses[t]=!1;var e=this.registeredStatus.findIndex((function(n){return n===t}));-1!==e&&(this.registeredStatus.splice(e,1),o.ZP.set(this.statuses,t,{mounted:!1}),this.$nextTick((function(){o.ZP.delete(n.callbacksStatus,t)}))),this.saveStatuses()},sortStatuses:function(t,n){var e=t.toLowerCase(),a=n.toLowerCase();return e>a?1:e70?document.body.classList.add("dashboard--scrolled"):document.body.classList.remove("dashboard--scrolled")}}},k=a(93379),w=a.n(k),y=a(7795),_=a.n(y),S=a(90569),B=a.n(S),D=a(3565),O=a.n(D),N=a(19216),P=a.n(N),E=a(44589),F=a.n(E),j=a(74613),T={};T.styleTagTransform=F(),T.setAttributes=O(),T.insert=B().bind(null,"head"),T.domAPI=_(),T.insertStyleElement=P(),w()(j.Z,T),j.Z&&j.Z.locals&&j.Z.locals;var G=a(50025),I={};I.styleTagTransform=F(),I.setAttributes=O(),I.insert=B().bind(null,"head"),I.domAPI=_(),I.insertStyleElement=P(),w()(G.Z,I),G.Z&&G.Z.locals&&G.Z.locals;var z=(0,a(51900).Z)(x,(function(){var t=this,n=t._self._c;return n("div",{attrs:{id:"app-dashboard"}},[n("h2",[t._v(t._s(t.greeting.text))]),t._v(" "),n("ul",{staticClass:"statuses"},t._l(t.sortedRegisteredStatus,(function(t){return n("div",{key:t,attrs:{id:"status-"+t}},[n("div",{ref:"status-"+t,refInFor:!0})])})),0),t._v(" "),n("Draggable",t._b({staticClass:"panels",attrs:{handle:".panel--header"},on:{end:t.saveLayout},model:{value:t.layout,callback:function(n){t.layout=n},expression:"layout"}},"Draggable",{swapThreshold:.3,delay:500,delayOnTouchOnly:!0,touchStartThreshold:3},!1),t._l(t.layout,(function(e){return n("div",{key:t.panels[e].id,staticClass:"panel"},[n("div",{staticClass:"panel--header"},[n("h2",[n("div",{class:t.panels[e].iconClass,attrs:{"aria-labelledby":"panel--header--icon--description","aria-hidden":"true",role:"img"}}),t._v("\n\t\t\t\t\t"+t._s(t.panels[e].title)+"\n\t\t\t\t")]),t._v(" "),n("span",{staticClass:"hidden-visually",attrs:{id:"panel--header--icon--description"}},[t._v(" "+t._s(t.t("dashboard",'"{title} icon"',{title:t.panels[e].title}))+" ")])]),t._v(" "),n("div",{staticClass:"panel--content",class:{loading:!t.panels[e].mounted}},[n("div",{ref:t.panels[e].id,refInFor:!0,attrs:{"data-id":t.panels[e].id}})])])})),0),t._v(" "),n("div",{staticClass:"footer"},[n("NcButton",{on:{click:t.showModal},scopedSlots:t._u([{key:"icon",fn:function(){return[n("Pencil",{attrs:{size:20}})]},proxy:!0}])},[t._v("\n\t\t\t"+t._s(t.t("dashboard","Customize"))+"\n\t\t")])],1),t._v(" "),t.modal?n("NcModal",{attrs:{size:"large"},on:{close:t.closeModal}},[n("div",{staticClass:"modal__content"},[n("h3",[t._v(t._s(t.t("dashboard","Edit widgets")))]),t._v(" "),n("ol",{staticClass:"panels"},t._l(t.sortedAllStatuses,(function(e){return n("li",{key:e,class:"panel-"+e},[n("input",{staticClass:"checkbox",attrs:{id:"status-checkbox-"+e,type:"checkbox"},domProps:{checked:t.isStatusActive(e)},on:{input:function(n){return t.updateStatusCheckbox(e,n.target.checked)}}}),t._v(" "),n("label",{attrs:{for:"status-checkbox-"+e}},[n("div",{class:t.statusInfo[e].icon,attrs:{role:"img"}}),t._v("\n\t\t\t\t\t\t"+t._s(t.statusInfo[e].text)+"\n\t\t\t\t\t")])])})),0),t._v(" "),n("Draggable",t._b({staticClass:"panels",attrs:{tag:"ol",handle:".draggable"},on:{end:t.saveLayout},model:{value:t.layout,callback:function(n){t.layout=n},expression:"layout"}},"Draggable",{swapThreshold:.3,delay:500,delayOnTouchOnly:!0,touchStartThreshold:3},!1),t._l(t.sortedPanels,(function(e){return n("li",{key:e.id,class:"panel-"+e.id},[n("input",{staticClass:"checkbox",attrs:{id:"panel-checkbox-"+e.id,type:"checkbox"},domProps:{checked:t.isActive(e)},on:{input:function(n){return t.updateCheckbox(e,n.target.checked)}}}),t._v(" "),n("label",{class:{draggable:t.isActive(e)},attrs:{for:"panel-checkbox-"+e.id}},[n("div",{class:e.iconClass,attrs:{role:"img"}}),t._v("\n\t\t\t\t\t\t"+t._s(e.title)+"\n\t\t\t\t\t")])])})),0),t._v(" "),t.isAdmin?n("a",{staticClass:"button",attrs:{href:t.appStoreUrl}},[t._v(t._s(t.t("dashboard","Get more widgets from the App Store")))]):t._e(),t._v(" "),n("h3",[t._v(t._s(t.t("dashboard","Weather service")))]),t._v(" "),n("p",[t._v("\n\t\t\t\t"+t._s(t.t("dashboard","For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information."))+"\n\t\t\t")]),t._v(" "),n("p",{staticClass:"credits--end"},[n("a",{attrs:{href:"https://api.met.no/doc/TermsOfService",target:"_blank",rel:"noopener"}},[t._v(t._s(t.t("dashboard","Weather data from Met.no")))]),t._v(",\n\t\t\t\t"),n("a",{attrs:{href:"https://wiki.osmfoundation.org/wiki/Privacy_Policy",target:"_blank",rel:"noopener"}},[t._v(t._s(t.t("dashboard","geocoding with Nominatim")))]),t._v(",\n\t\t\t\t"),n("a",{attrs:{href:"https://www.opentopodata.org/#public-api",target:"_blank",rel:"noopener"}},[t._v(t._s(t.t("dashboard","elevation data from OpenTopoData")))]),t._v(".\n\t\t\t")])],1)]):t._e()],1)}),[],!1,null,"1593666a",null).exports,M=a(31352),L=a(15168),U=a.n(L);a.nc=btoa((0,s.IH)()),o.ZP.directive("Tooltip",U()),o.ZP.prototype.t=M.Iu,window.OCA.Files||(window.OCA.Files={}),Object.assign(window.OCA.Files,{App:{fileList:{filesClient:OC.Files.getClient()}}},window.OCA.Files);var W=new(o.ZP.extend(z))({}).$mount("#app-content-vue");window.OCA.Dashboard={register:function(t,n){return W.register(t,n)},registerStatus:function(t,n){return W.registerStatus(t,n)}}},74613:function(t,n,e){var a=e(87537),o=e.n(a),i=e(23645),s=e.n(i)()(o());s.push([t.id,"#app-dashboard[data-v-1593666a]{width:100%;min-height:100%;background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed}#app-dashboard>h2[data-v-1593666a]{color:var(--color-primary-text);text-align:center;font-size:32px;line-height:130%;padding:1rem 0}.panels[data-v-1593666a]{width:auto;margin:auto;max-width:1800px;display:flex;justify-content:center;flex-direction:row;align-items:flex-start;flex-wrap:wrap}.panel[data-v-1593666a],.panels>div[data-v-1593666a]{width:320px;max-width:100%;margin:16px;align-self:stretch;background-color:var(--color-main-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);border-radius:var(--border-radius-large)}#body-user.theme--highcontrast .panel[data-v-1593666a],#body-user.theme--highcontrast .panels>div[data-v-1593666a]{border:2px solid var(--color-border)}.panel.sortable-ghost[data-v-1593666a],.panels>div.sortable-ghost[data-v-1593666a]{opacity:.1}.panel>.panel--header[data-v-1593666a],.panels>div>.panel--header[data-v-1593666a]{display:flex;z-index:1;top:50px;padding:16px;cursor:grab}.panel>.panel--header[data-v-1593666a],.panel>.panel--header[data-v-1593666a] *,.panels>div>.panel--header[data-v-1593666a],.panels>div>.panel--header[data-v-1593666a] *{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.panel>.panel--header[data-v-1593666a]:active,.panels>div>.panel--header[data-v-1593666a]:active{cursor:grabbing}.panel>.panel--header a[data-v-1593666a],.panels>div>.panel--header a[data-v-1593666a]{flex-grow:1}.panel>.panel--header>h2[data-v-1593666a],.panels>div>.panel--header>h2[data-v-1593666a]{display:block;align-items:center;flex-grow:1;margin:0;font-size:20px;line-height:24px;font-weight:bold;padding:16px 8px;height:56px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:grab}.panel>.panel--header>h2 div[data-v-1593666a],.panels>div>.panel--header>h2 div[data-v-1593666a]{background-size:32px;width:32px;height:32px;margin-right:16px;background-position:center;float:left}.panel>.panel--content[data-v-1593666a],.panels>div>.panel--content[data-v-1593666a]{margin:0 16px 16px 16px;height:424px;overflow:visible}@media only screen and (max-width: 709px){.panel>.panel--content[data-v-1593666a],.panels>div>.panel--content[data-v-1593666a]{height:auto}}.footer[data-v-1593666a]{display:flex;justify-content:center;transition:bottom var(--animation-slow) ease-in-out;padding:1rem 0}.edit-panels[data-v-1593666a]{display:inline-block;margin:auto;background-position:16px center;padding:12px 16px;padding-left:36px;border-radius:var(--border-radius-pill);max-width:200px;opacity:1;text-align:center}.button[data-v-1593666a],.button-vue[data-v-1593666a],.edit-panels[data-v-1593666a],.statuses[data-v-1593666a] .action-item .action-item__menutoggle,.statuses[data-v-1593666a] .action-item.action-item--open .action-item__menutoggle{background-color:var(--color-main-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);opacity:1 !important}.button[data-v-1593666a]:hover,.button[data-v-1593666a]:focus,.button[data-v-1593666a]:active,.button-vue[data-v-1593666a]:hover,.button-vue[data-v-1593666a]:focus,.button-vue[data-v-1593666a]:active,.edit-panels[data-v-1593666a]:hover,.edit-panels[data-v-1593666a]:focus,.edit-panels[data-v-1593666a]:active,.statuses[data-v-1593666a] .action-item .action-item__menutoggle:hover,.statuses[data-v-1593666a] .action-item .action-item__menutoggle:focus,.statuses[data-v-1593666a] .action-item .action-item__menutoggle:active,.statuses[data-v-1593666a] .action-item.action-item--open .action-item__menutoggle:hover,.statuses[data-v-1593666a] .action-item.action-item--open .action-item__menutoggle:focus,.statuses[data-v-1593666a] .action-item.action-item--open .action-item__menutoggle:active{background-color:var(--color-background-hover) !important}.button[data-v-1593666a]:focus-visible,.button-vue[data-v-1593666a]:focus-visible,.edit-panels[data-v-1593666a]:focus-visible,.statuses[data-v-1593666a] .action-item .action-item__menutoggle:focus-visible,.statuses[data-v-1593666a] .action-item.action-item--open .action-item__menutoggle:focus-visible{box-shadow:0 0 0 2px var(--color-main-text) !important}.modal__content[data-v-1593666a]{padding:32px 16px;text-align:center}.modal__content ol[data-v-1593666a]{display:flex;flex-direction:row;justify-content:center;list-style-type:none;padding-bottom:16px}.modal__content li label[data-v-1593666a]{position:relative;display:block;padding:48px 16px 14px 16px;margin:8px;width:140px;background-color:var(--color-background-hover);border:2px solid var(--color-main-background);border-radius:var(--border-radius-large);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal__content li label div[data-v-1593666a]{position:absolute;top:16px;width:24px;height:24px;background-size:24px}.modal__content li label[data-v-1593666a]:hover{border-color:var(--color-primary)}.modal__content li:not(.panel-status) label div[data-v-1593666a]{filter:var(--background-invert-if-dark)}.modal__content li input[type=checkbox].checkbox+label[data-v-1593666a]:before{position:absolute;right:12px;top:16px}.modal__content li input:focus+label[data-v-1593666a]{border-color:var(--color-primary)}.modal__content h3[data-v-1593666a]{font-weight:bold}.modal__content h3[data-v-1593666a]:not(:first-of-type){margin-top:64px}.modal__content .button[data-v-1593666a]{display:inline-block;padding:10px 16px;margin:0}.modal__content p[data-v-1593666a]{max-width:650px;margin:0 auto}.modal__content p a[data-v-1593666a]:hover,.modal__content p a[data-v-1593666a]:focus{border-bottom:2px solid var(--color-border)}.modal__content .credits--end[data-v-1593666a]{padding-bottom:32px;color:var(--color-text-maxcontrast)}.modal__content .credits--end a[data-v-1593666a]{color:var(--color-text-maxcontrast)}.flip-list-move[data-v-1593666a]{transition:transform var(--animation-slow)}.statuses[data-v-1593666a]{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;margin-bottom:36px}.statuses>div[data-v-1593666a]{margin:8px}","",{version:3,sources:["webpack://./apps/dashboard/src/DashboardApp.vue"],names:[],mappings:"AACA,gCACC,UAAA,CACA,eAAA,CACA,qBAAA,CACA,iCAAA,CACA,2BAAA,CACA,2BAAA,CAEA,mCACC,+BAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,cAAA,CAIF,yBACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,YAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CACA,cAAA,CAGD,qDACC,WAAA,CACA,cAAA,CACA,WAAA,CACA,kBAAA,CACA,kDAAA,CACA,qDAAA,CACA,6CAAA,CACA,wCAAA,CAEA,mHACC,oCAAA,CAGD,mFACE,UAAA,CAGF,mFACC,YAAA,CACA,SAAA,CACA,QAAA,CACA,YAAA,CACA,WAAA,CAEA,0KACC,0BAAA,CACA,wBAAA,CACA,uBAAA,CACA,qBAAA,CACA,oBAAA,CACA,gBAAA,CAGD,iGACC,eAAA,CAGD,uFACC,WAAA,CAGD,yFACC,aAAA,CACA,kBAAA,CACA,WAAA,CACA,QAAA,CACA,cAAA,CACA,gBAAA,CACA,gBAAA,CACA,gBAAA,CACA,WAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CACA,WAAA,CACA,iGACC,oBAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,0BAAA,CACA,UAAA,CAKH,qFACC,uBAAA,CACA,YAAA,CAEA,gBAAA,CAID,0CACC,qFACC,WAAA,CAAA,CAKH,yBACC,YAAA,CACA,sBAAA,CACA,mDAAA,CACA,cAAA,CAGD,8BACC,oBAAA,CACA,WAAA,CACA,+BAAA,CACA,iBAAA,CACA,iBAAA,CACA,uCAAA,CACA,eAAA,CACA,SAAA,CACA,iBAAA,CAGD,wOAKC,kDAAA,CACA,qDAAA,CACA,6CAAA,CACA,oBAAA,CAEA,uxBAGC,yDAAA,CAED,8SACC,sDAAA,CAIF,iCACC,iBAAA,CACA,iBAAA,CAEA,oCACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,oBAAA,CACA,mBAAA,CAGA,0CACC,iBAAA,CACA,aAAA,CACA,2BAAA,CACA,UAAA,CACA,WAAA,CACA,8CAAA,CACA,6CAAA,CACA,wCAAA,CACA,eAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAAA,CAEA,8CACC,iBAAA,CACA,QAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CAGD,gDACC,iCAAA,CAKF,iEACC,uCAAA,CAGD,+EACC,iBAAA,CACA,UAAA,CACA,QAAA,CAGD,sDACC,iCAAA,CAIF,oCACC,gBAAA,CAEA,wDACC,eAAA,CAKF,yCACC,oBAAA,CACA,iBAAA,CACA,QAAA,CAGD,mCACC,eAAA,CACA,aAAA,CAEA,sFAEC,2CAAA,CAIF,+CACC,mBAAA,CACA,mCAAA,CAEA,iDACC,mCAAA,CAKH,iCACC,0CAAA,CAGD,2BACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,cAAA,CACA,kBAAA,CAEA,+BACC,UAAA",sourcesContent:["\n#app-dashboard {\n\twidth: 100%;\n\tmin-height: 100%;\n\tbackground-size: cover;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n\tbackground-attachment: fixed;\n\n\t> h2 {\n\t\tcolor: var(--color-primary-text);\n\t\ttext-align: center;\n\t\tfont-size: 32px;\n\t\tline-height: 130%;\n\t\tpadding: 1rem 0;\n\t}\n}\n\n.panels {\n\twidth: auto;\n\tmargin: auto;\n\tmax-width: 1800px;\n\tdisplay: flex;\n\tjustify-content: center;\n\tflex-direction: row;\n\talign-items: flex-start;\n\tflex-wrap: wrap;\n}\n\n.panel, .panels > div {\n\twidth: 320px;\n\tmax-width: 100%;\n\tmargin: 16px;\n\talign-self: stretch;\n\tbackground-color: var(--color-main-background-blur);\n\t-webkit-backdrop-filter: var(--filter-background-blur);\n\tbackdrop-filter: var(--filter-background-blur);\n\tborder-radius: var(--border-radius-large);\n\n\t#body-user.theme--highcontrast & {\n\t\tborder: 2px solid var(--color-border);\n\t}\n\n\t&.sortable-ghost {\n\t\t opacity: 0.1;\n\t}\n\n\t& > .panel--header {\n\t\tdisplay: flex;\n\t\tz-index: 1;\n\t\ttop: 50px;\n\t\tpadding: 16px;\n\t\tcursor: grab;\n\n\t\t&, ::v-deep * {\n\t\t\t-webkit-touch-callout: none;\n\t\t\t-webkit-user-select: none;\n\t\t\t-khtml-user-select: none;\n\t\t\t-moz-user-select: none;\n\t\t\t-ms-user-select: none;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&:active {\n\t\t\tcursor: grabbing;\n\t\t}\n\n\t\ta {\n\t\t\tflex-grow: 1;\n\t\t}\n\n\t\t> h2 {\n\t\t\tdisplay: block;\n\t\t\talign-items: center;\n\t\t\tflex-grow: 1;\n\t\t\tmargin: 0;\n\t\t\tfont-size: 20px;\n\t\t\tline-height: 24px;\n\t\t\tfont-weight: bold;\n\t\t\tpadding: 16px 8px;\n\t\t\theight: 56px;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\tcursor: grab;\n\t\t\tdiv {\n\t\t\t\tbackground-size: 32px;\n\t\t\t\twidth: 32px;\n\t\t\t\theight: 32px;\n\t\t\t\tmargin-right: 16px;\n\t\t\t\tbackground-position: center;\n\t\t\t\tfloat: left;\n\t\t\t}\n\t\t}\n\t}\n\n\t& > .panel--content {\n\t\tmargin: 0 16px 16px 16px;\n\t\theight: 424px;\n\t\t// We specifically do not want scrollbars inside widgets\n\t\toverflow: visible;\n\t}\n\n\t// No need to extend height of widgets if only one column is shown\n\t@media only screen and (max-width: 709px) {\n\t\t& > .panel--content {\n\t\t\theight: auto;\n\t\t}\n\t}\n}\n\n.footer {\n\tdisplay: flex;\n\tjustify-content: center;\n\ttransition: bottom var(--animation-slow) ease-in-out;\n\tpadding: 1rem 0;\n}\n\n.edit-panels {\n\tdisplay: inline-block;\n\tmargin:auto;\n\tbackground-position: 16px center;\n\tpadding: 12px 16px;\n\tpadding-left: 36px;\n\tborder-radius: var(--border-radius-pill);\n\tmax-width: 200px;\n\topacity: 1;\n\ttext-align: center;\n}\n\n.button,\n.button-vue,\n.edit-panels,\n.statuses ::v-deep .action-item .action-item__menutoggle,\n.statuses ::v-deep .action-item.action-item--open .action-item__menutoggle {\n\tbackground-color: var(--color-main-background-blur);\n\t-webkit-backdrop-filter: var(--filter-background-blur);\n\tbackdrop-filter: var(--filter-background-blur);\n\topacity: 1 !important;\n\n\t&:hover,\n\t&:focus,\n\t&:active {\n\t\tbackground-color: var(--color-background-hover)!important;\n\t}\n\t&:focus-visible {\n\t\tbox-shadow: 0 0 0 2px var(--color-main-text) !important;\n\t}\n}\n\n.modal__content {\n\tpadding: 32px 16px;\n\ttext-align: center;\n\n\tol {\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\tjustify-content: center;\n\t\tlist-style-type: none;\n\t\tpadding-bottom: 16px;\n\t}\n\tli {\n\t\tlabel {\n\t\t\tposition: relative;\n\t\t\tdisplay: block;\n\t\t\tpadding: 48px 16px 14px 16px;\n\t\t\tmargin: 8px;\n\t\t\twidth: 140px;\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t\tborder: 2px solid var(--color-main-background);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t\ttext-align: left;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\n\t\t\tdiv {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 16px;\n\t\t\t\twidth: 24px;\n\t\t\t\theight: 24px;\n\t\t\t\tbackground-size: 24px;\n\t\t\t}\n\n\t\t\t&:hover {\n\t\t\t\tborder-color: var(--color-primary);\n\t\t\t}\n\t\t}\n\n\t\t// Do not invert status icons\n\t\t&:not(.panel-status) label div {\n\t\t\tfilter: var(--background-invert-if-dark);\n\t\t}\n\n\t\tinput[type='checkbox'].checkbox + label:before {\n\t\t\tposition: absolute;\n\t\t\tright: 12px;\n\t\t\ttop: 16px;\n\t\t}\n\n\t\tinput:focus + label {\n\t\t\tborder-color: var(--color-primary);\n\t\t}\n\t}\n\n\th3 {\n\t\tfont-weight: bold;\n\n\t\t&:not(:first-of-type) {\n\t\t\tmargin-top: 64px;\n\t\t}\n\t}\n\n\t// Adjust design of 'Get more widgets' button\n\t.button {\n\t\tdisplay: inline-block;\n\t\tpadding: 10px 16px;\n\t\tmargin: 0;\n\t}\n\n\tp {\n\t\tmax-width: 650px;\n\t\tmargin: 0 auto;\n\n\t\ta:hover,\n\t\ta:focus {\n\t\t\tborder-bottom: 2px solid var(--color-border);\n\t\t}\n\t}\n\n\t.credits--end {\n\t\tpadding-bottom: 32px;\n\t\tcolor: var(--color-text-maxcontrast);\n\n\t\ta {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n}\n\n.flip-list-move {\n\ttransition: transform var(--animation-slow);\n}\n\n.statuses {\n\tdisplay: flex;\n\tflex-direction: row;\n\tjustify-content: center;\n\tflex-wrap: wrap;\n\tmargin-bottom: 36px;\n\n\t& > div {\n\t\tmargin: 8px;\n\t}\n}\n"],sourceRoot:""}]),n.Z=s},50025:function(t,n,e){var a=e(87537),o=e.n(a),i=e(23645),s=e.n(i)()(o());s.push([t.id,"\nhtml, body {\n\tbackground-attachment: fixed;\n}\n#body-user #header {\n\tposition: fixed;\n}\n#content {\n\toverflow: auto;\n}\n","",{version:3,sources:["webpack://./apps/dashboard/src/DashboardApp.vue"],names:[],mappings:";AA2nBA;CACA,4BAAA;AACA;AAEA;CACA,eAAA;AACA;AAEA;CACA,cAAA;AACA",sourcesContent:["\n\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=style&index=0&id=1593666a&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=style&index=0&id=1593666a&prod&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=style&index=1&id=1593666a&prod&lang=css&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=style&index=1&id=1593666a&prod&lang=css&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DashboardApp.vue?vue&type=template&id=1593666a&scoped=true&\"\nimport script from \"./DashboardApp.vue?vue&type=script&lang=js&\"\nexport * from \"./DashboardApp.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DashboardApp.vue?vue&type=style&index=0&id=1593666a&prod&lang=scss&scoped=true&\"\nimport style1 from \"./DashboardApp.vue?vue&type=style&index=1&id=1593666a&prod&lang=css&\"\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 \"1593666a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"app-dashboard\"}},[_c('h2',[_vm._v(_vm._s(_vm.greeting.text))]),_vm._v(\" \"),_c('ul',{staticClass:\"statuses\"},_vm._l((_vm.sortedRegisteredStatus),function(status){return _c('div',{key:status,attrs:{\"id\":'status-' + status}},[_c('div',{ref:'status-' + status,refInFor:true})])}),0),_vm._v(\" \"),_c('Draggable',_vm._b({staticClass:\"panels\",attrs:{\"handle\":\".panel--header\"},on:{\"end\":_vm.saveLayout},model:{value:(_vm.layout),callback:function ($$v) {_vm.layout=$$v},expression:\"layout\"}},'Draggable',{swapThreshold: 0.30, delay: 500, delayOnTouchOnly: true, touchStartThreshold: 3},false),_vm._l((_vm.layout),function(panelId){return _c('div',{key:_vm.panels[panelId].id,staticClass:\"panel\"},[_c('div',{staticClass:\"panel--header\"},[_c('h2',[_c('div',{class:_vm.panels[panelId].iconClass,attrs:{\"aria-labelledby\":\"panel--header--icon--description\",\"aria-hidden\":\"true\",\"role\":\"img\"}}),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.panels[panelId].title)+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('span',{staticClass:\"hidden-visually\",attrs:{\"id\":\"panel--header--icon--description\"}},[_vm._v(\" \"+_vm._s(_vm.t('dashboard', '\"{title} icon\"', { title: _vm.panels[panelId].title }))+\" \")])]),_vm._v(\" \"),_c('div',{staticClass:\"panel--content\",class:{ loading: !_vm.panels[panelId].mounted }},[_c('div',{ref:_vm.panels[panelId].id,refInFor:true,attrs:{\"data-id\":_vm.panels[panelId].id}})])])}),0),_vm._v(\" \"),_c('div',{staticClass:\"footer\"},[_c('NcButton',{on:{\"click\":_vm.showModal},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Pencil',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('dashboard', 'Customize'))+\"\\n\\t\\t\")])],1),_vm._v(\" \"),(_vm.modal)?_c('NcModal',{attrs:{\"size\":\"large\"},on:{\"close\":_vm.closeModal}},[_c('div',{staticClass:\"modal__content\"},[_c('h3',[_vm._v(_vm._s(_vm.t('dashboard', 'Edit widgets')))]),_vm._v(\" \"),_c('ol',{staticClass:\"panels\"},_vm._l((_vm.sortedAllStatuses),function(status){return _c('li',{key:status,class:'panel-' + status},[_c('input',{staticClass:\"checkbox\",attrs:{\"id\":'status-checkbox-' + status,\"type\":\"checkbox\"},domProps:{\"checked\":_vm.isStatusActive(status)},on:{\"input\":function($event){return _vm.updateStatusCheckbox(status, $event.target.checked)}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":'status-checkbox-' + status}},[_c('div',{class:_vm.statusInfo[status].icon,attrs:{\"role\":\"img\"}}),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.statusInfo[status].text)+\"\\n\\t\\t\\t\\t\\t\")])])}),0),_vm._v(\" \"),_c('Draggable',_vm._b({staticClass:\"panels\",attrs:{\"tag\":\"ol\",\"handle\":\".draggable\"},on:{\"end\":_vm.saveLayout},model:{value:(_vm.layout),callback:function ($$v) {_vm.layout=$$v},expression:\"layout\"}},'Draggable',{swapThreshold: 0.30, delay: 500, delayOnTouchOnly: true, touchStartThreshold: 3},false),_vm._l((_vm.sortedPanels),function(panel){return _c('li',{key:panel.id,class:'panel-' + panel.id},[_c('input',{staticClass:\"checkbox\",attrs:{\"id\":'panel-checkbox-' + panel.id,\"type\":\"checkbox\"},domProps:{\"checked\":_vm.isActive(panel)},on:{\"input\":function($event){return _vm.updateCheckbox(panel, $event.target.checked)}}}),_vm._v(\" \"),_c('label',{class:{ draggable: _vm.isActive(panel) },attrs:{\"for\":'panel-checkbox-' + panel.id}},[_c('div',{class:panel.iconClass,attrs:{\"role\":\"img\"}}),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(panel.title)+\"\\n\\t\\t\\t\\t\\t\")])])}),0),_vm._v(\" \"),(_vm.isAdmin)?_c('a',{staticClass:\"button\",attrs:{\"href\":_vm.appStoreUrl}},[_vm._v(_vm._s(_vm.t('dashboard', 'Get more widgets from the App Store')))]):_vm._e(),_vm._v(\" \"),_c('h3',[_vm._v(_vm._s(_vm.t('dashboard', 'Weather service')))]),_vm._v(\" \"),_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('dashboard', 'For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information.'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('p',{staticClass:\"credits--end\"},[_c('a',{attrs:{\"href\":\"https://api.met.no/doc/TermsOfService\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(_vm._s(_vm.t('dashboard', 'Weather data from Met.no')))]),_vm._v(\",\\n\\t\\t\\t\\t\"),_c('a',{attrs:{\"href\":\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(_vm._s(_vm.t('dashboard', 'geocoding with Nominatim')))]),_vm._v(\",\\n\\t\\t\\t\\t\"),_c('a',{attrs:{\"href\":\"https://www.opentopodata.org/#public-api\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(_vm._s(_vm.t('dashboard', 'elevation data from OpenTopoData')))]),_vm._v(\".\\n\\t\\t\\t\")])],1)]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2016 Julius Härtl \n *\n * @author Julius Härtl \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport Vue from 'vue'\nimport DashboardApp from './DashboardApp.vue'\nimport { translate as t } from '@nextcloud/l10n'\nimport VTooltip from '@nextcloud/vue/dist/Directives/Tooltip'\nimport { getRequestToken } from '@nextcloud/auth'\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(getRequestToken())\n\nVue.directive('Tooltip', VTooltip)\n\nVue.prototype.t = t\n\n// FIXME workaround to make the sidebar work\nif (!window.OCA.Files) {\n\twindow.OCA.Files = {}\n}\n\nObject.assign(window.OCA.Files, { App: { fileList: { filesClient: OC.Files.getClient() } } }, window.OCA.Files)\n\nconst Dashboard = Vue.extend(DashboardApp)\nconst Instance = new Dashboard({}).$mount('#app-content-vue')\n\nwindow.OCA.Dashboard = {\n\tregister: (app, callback) => Instance.register(app, callback),\n\tregisterStatus: (app, callback) => Instance.registerStatus(app, callback),\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"#app-dashboard[data-v-1593666a]{width:100%;min-height:100%;background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed}#app-dashboard>h2[data-v-1593666a]{color:var(--color-primary-text);text-align:center;font-size:32px;line-height:130%;padding:1rem 0}.panels[data-v-1593666a]{width:auto;margin:auto;max-width:1800px;display:flex;justify-content:center;flex-direction:row;align-items:flex-start;flex-wrap:wrap}.panel[data-v-1593666a],.panels>div[data-v-1593666a]{width:320px;max-width:100%;margin:16px;align-self:stretch;background-color:var(--color-main-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);border-radius:var(--border-radius-large)}#body-user.theme--highcontrast .panel[data-v-1593666a],#body-user.theme--highcontrast .panels>div[data-v-1593666a]{border:2px solid var(--color-border)}.panel.sortable-ghost[data-v-1593666a],.panels>div.sortable-ghost[data-v-1593666a]{opacity:.1}.panel>.panel--header[data-v-1593666a],.panels>div>.panel--header[data-v-1593666a]{display:flex;z-index:1;top:50px;padding:16px;cursor:grab}.panel>.panel--header[data-v-1593666a],.panel>.panel--header[data-v-1593666a] *,.panels>div>.panel--header[data-v-1593666a],.panels>div>.panel--header[data-v-1593666a] *{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.panel>.panel--header[data-v-1593666a]:active,.panels>div>.panel--header[data-v-1593666a]:active{cursor:grabbing}.panel>.panel--header a[data-v-1593666a],.panels>div>.panel--header a[data-v-1593666a]{flex-grow:1}.panel>.panel--header>h2[data-v-1593666a],.panels>div>.panel--header>h2[data-v-1593666a]{display:block;align-items:center;flex-grow:1;margin:0;font-size:20px;line-height:24px;font-weight:bold;padding:16px 8px;height:56px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:grab}.panel>.panel--header>h2 div[data-v-1593666a],.panels>div>.panel--header>h2 div[data-v-1593666a]{background-size:32px;width:32px;height:32px;margin-right:16px;background-position:center;float:left}.panel>.panel--content[data-v-1593666a],.panels>div>.panel--content[data-v-1593666a]{margin:0 16px 16px 16px;height:424px;overflow:visible}@media only screen and (max-width: 709px){.panel>.panel--content[data-v-1593666a],.panels>div>.panel--content[data-v-1593666a]{height:auto}}.footer[data-v-1593666a]{display:flex;justify-content:center;transition:bottom var(--animation-slow) ease-in-out;padding:1rem 0}.edit-panels[data-v-1593666a]{display:inline-block;margin:auto;background-position:16px center;padding:12px 16px;padding-left:36px;border-radius:var(--border-radius-pill);max-width:200px;opacity:1;text-align:center}.button[data-v-1593666a],.button-vue[data-v-1593666a],.edit-panels[data-v-1593666a],.statuses[data-v-1593666a] .action-item .action-item__menutoggle,.statuses[data-v-1593666a] .action-item.action-item--open .action-item__menutoggle{background-color:var(--color-main-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);opacity:1 !important}.button[data-v-1593666a]:hover,.button[data-v-1593666a]:focus,.button[data-v-1593666a]:active,.button-vue[data-v-1593666a]:hover,.button-vue[data-v-1593666a]:focus,.button-vue[data-v-1593666a]:active,.edit-panels[data-v-1593666a]:hover,.edit-panels[data-v-1593666a]:focus,.edit-panels[data-v-1593666a]:active,.statuses[data-v-1593666a] .action-item .action-item__menutoggle:hover,.statuses[data-v-1593666a] .action-item .action-item__menutoggle:focus,.statuses[data-v-1593666a] .action-item .action-item__menutoggle:active,.statuses[data-v-1593666a] .action-item.action-item--open .action-item__menutoggle:hover,.statuses[data-v-1593666a] .action-item.action-item--open .action-item__menutoggle:focus,.statuses[data-v-1593666a] .action-item.action-item--open .action-item__menutoggle:active{background-color:var(--color-background-hover) !important}.button[data-v-1593666a]:focus-visible,.button-vue[data-v-1593666a]:focus-visible,.edit-panels[data-v-1593666a]:focus-visible,.statuses[data-v-1593666a] .action-item .action-item__menutoggle:focus-visible,.statuses[data-v-1593666a] .action-item.action-item--open .action-item__menutoggle:focus-visible{box-shadow:0 0 0 2px var(--color-main-text) !important}.modal__content[data-v-1593666a]{padding:32px 16px;text-align:center}.modal__content ol[data-v-1593666a]{display:flex;flex-direction:row;justify-content:center;list-style-type:none;padding-bottom:16px}.modal__content li label[data-v-1593666a]{position:relative;display:block;padding:48px 16px 14px 16px;margin:8px;width:140px;background-color:var(--color-background-hover);border:2px solid var(--color-main-background);border-radius:var(--border-radius-large);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal__content li label div[data-v-1593666a]{position:absolute;top:16px;width:24px;height:24px;background-size:24px}.modal__content li label[data-v-1593666a]:hover{border-color:var(--color-primary)}.modal__content li:not(.panel-status) label div[data-v-1593666a]{filter:var(--background-invert-if-dark)}.modal__content li input[type=checkbox].checkbox+label[data-v-1593666a]:before{position:absolute;right:12px;top:16px}.modal__content li input:focus+label[data-v-1593666a]{border-color:var(--color-primary)}.modal__content h3[data-v-1593666a]{font-weight:bold}.modal__content h3[data-v-1593666a]:not(:first-of-type){margin-top:64px}.modal__content .button[data-v-1593666a]{display:inline-block;padding:10px 16px;margin:0}.modal__content p[data-v-1593666a]{max-width:650px;margin:0 auto}.modal__content p a[data-v-1593666a]:hover,.modal__content p a[data-v-1593666a]:focus{border-bottom:2px solid var(--color-border)}.modal__content .credits--end[data-v-1593666a]{padding-bottom:32px;color:var(--color-text-maxcontrast)}.modal__content .credits--end a[data-v-1593666a]{color:var(--color-text-maxcontrast)}.flip-list-move[data-v-1593666a]{transition:transform var(--animation-slow)}.statuses[data-v-1593666a]{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;margin-bottom:36px}.statuses>div[data-v-1593666a]{margin:8px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/dashboard/src/DashboardApp.vue\"],\"names\":[],\"mappings\":\"AACA,gCACC,UAAA,CACA,eAAA,CACA,qBAAA,CACA,iCAAA,CACA,2BAAA,CACA,2BAAA,CAEA,mCACC,+BAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,cAAA,CAIF,yBACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,YAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CACA,cAAA,CAGD,qDACC,WAAA,CACA,cAAA,CACA,WAAA,CACA,kBAAA,CACA,kDAAA,CACA,qDAAA,CACA,6CAAA,CACA,wCAAA,CAEA,mHACC,oCAAA,CAGD,mFACE,UAAA,CAGF,mFACC,YAAA,CACA,SAAA,CACA,QAAA,CACA,YAAA,CACA,WAAA,CAEA,0KACC,0BAAA,CACA,wBAAA,CACA,uBAAA,CACA,qBAAA,CACA,oBAAA,CACA,gBAAA,CAGD,iGACC,eAAA,CAGD,uFACC,WAAA,CAGD,yFACC,aAAA,CACA,kBAAA,CACA,WAAA,CACA,QAAA,CACA,cAAA,CACA,gBAAA,CACA,gBAAA,CACA,gBAAA,CACA,WAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CACA,WAAA,CACA,iGACC,oBAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,0BAAA,CACA,UAAA,CAKH,qFACC,uBAAA,CACA,YAAA,CAEA,gBAAA,CAID,0CACC,qFACC,WAAA,CAAA,CAKH,yBACC,YAAA,CACA,sBAAA,CACA,mDAAA,CACA,cAAA,CAGD,8BACC,oBAAA,CACA,WAAA,CACA,+BAAA,CACA,iBAAA,CACA,iBAAA,CACA,uCAAA,CACA,eAAA,CACA,SAAA,CACA,iBAAA,CAGD,wOAKC,kDAAA,CACA,qDAAA,CACA,6CAAA,CACA,oBAAA,CAEA,uxBAGC,yDAAA,CAED,8SACC,sDAAA,CAIF,iCACC,iBAAA,CACA,iBAAA,CAEA,oCACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,oBAAA,CACA,mBAAA,CAGA,0CACC,iBAAA,CACA,aAAA,CACA,2BAAA,CACA,UAAA,CACA,WAAA,CACA,8CAAA,CACA,6CAAA,CACA,wCAAA,CACA,eAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAAA,CAEA,8CACC,iBAAA,CACA,QAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CAGD,gDACC,iCAAA,CAKF,iEACC,uCAAA,CAGD,+EACC,iBAAA,CACA,UAAA,CACA,QAAA,CAGD,sDACC,iCAAA,CAIF,oCACC,gBAAA,CAEA,wDACC,eAAA,CAKF,yCACC,oBAAA,CACA,iBAAA,CACA,QAAA,CAGD,mCACC,eAAA,CACA,aAAA,CAEA,sFAEC,2CAAA,CAIF,+CACC,mBAAA,CACA,mCAAA,CAEA,iDACC,mCAAA,CAKH,iCACC,0CAAA,CAGD,2BACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,cAAA,CACA,kBAAA,CAEA,+BACC,UAAA\",\"sourcesContent\":[\"\\n#app-dashboard {\\n\\twidth: 100%;\\n\\tmin-height: 100%;\\n\\tbackground-size: cover;\\n\\tbackground-position: center center;\\n\\tbackground-repeat: no-repeat;\\n\\tbackground-attachment: fixed;\\n\\n\\t> h2 {\\n\\t\\tcolor: var(--color-primary-text);\\n\\t\\ttext-align: center;\\n\\t\\tfont-size: 32px;\\n\\t\\tline-height: 130%;\\n\\t\\tpadding: 1rem 0;\\n\\t}\\n}\\n\\n.panels {\\n\\twidth: auto;\\n\\tmargin: auto;\\n\\tmax-width: 1800px;\\n\\tdisplay: flex;\\n\\tjustify-content: center;\\n\\tflex-direction: row;\\n\\talign-items: flex-start;\\n\\tflex-wrap: wrap;\\n}\\n\\n.panel, .panels > div {\\n\\twidth: 320px;\\n\\tmax-width: 100%;\\n\\tmargin: 16px;\\n\\talign-self: stretch;\\n\\tbackground-color: var(--color-main-background-blur);\\n\\t-webkit-backdrop-filter: var(--filter-background-blur);\\n\\tbackdrop-filter: var(--filter-background-blur);\\n\\tborder-radius: var(--border-radius-large);\\n\\n\\t#body-user.theme--highcontrast & {\\n\\t\\tborder: 2px solid var(--color-border);\\n\\t}\\n\\n\\t&.sortable-ghost {\\n\\t\\t opacity: 0.1;\\n\\t}\\n\\n\\t& > .panel--header {\\n\\t\\tdisplay: flex;\\n\\t\\tz-index: 1;\\n\\t\\ttop: 50px;\\n\\t\\tpadding: 16px;\\n\\t\\tcursor: grab;\\n\\n\\t\\t&, ::v-deep * {\\n\\t\\t\\t-webkit-touch-callout: none;\\n\\t\\t\\t-webkit-user-select: none;\\n\\t\\t\\t-khtml-user-select: none;\\n\\t\\t\\t-moz-user-select: none;\\n\\t\\t\\t-ms-user-select: none;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&:active {\\n\\t\\t\\tcursor: grabbing;\\n\\t\\t}\\n\\n\\t\\ta {\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t}\\n\\n\\t\\t> h2 {\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t\\tline-height: 24px;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tpadding: 16px 8px;\\n\\t\\t\\theight: 56px;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\tcursor: grab;\\n\\t\\t\\tdiv {\\n\\t\\t\\t\\tbackground-size: 32px;\\n\\t\\t\\t\\twidth: 32px;\\n\\t\\t\\t\\theight: 32px;\\n\\t\\t\\t\\tmargin-right: 16px;\\n\\t\\t\\t\\tbackground-position: center;\\n\\t\\t\\t\\tfloat: left;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t& > .panel--content {\\n\\t\\tmargin: 0 16px 16px 16px;\\n\\t\\theight: 424px;\\n\\t\\t// We specifically do not want scrollbars inside widgets\\n\\t\\toverflow: visible;\\n\\t}\\n\\n\\t// No need to extend height of widgets if only one column is shown\\n\\t@media only screen and (max-width: 709px) {\\n\\t\\t& > .panel--content {\\n\\t\\t\\theight: auto;\\n\\t\\t}\\n\\t}\\n}\\n\\n.footer {\\n\\tdisplay: flex;\\n\\tjustify-content: center;\\n\\ttransition: bottom var(--animation-slow) ease-in-out;\\n\\tpadding: 1rem 0;\\n}\\n\\n.edit-panels {\\n\\tdisplay: inline-block;\\n\\tmargin:auto;\\n\\tbackground-position: 16px center;\\n\\tpadding: 12px 16px;\\n\\tpadding-left: 36px;\\n\\tborder-radius: var(--border-radius-pill);\\n\\tmax-width: 200px;\\n\\topacity: 1;\\n\\ttext-align: center;\\n}\\n\\n.button,\\n.button-vue,\\n.edit-panels,\\n.statuses ::v-deep .action-item .action-item__menutoggle,\\n.statuses ::v-deep .action-item.action-item--open .action-item__menutoggle {\\n\\tbackground-color: var(--color-main-background-blur);\\n\\t-webkit-backdrop-filter: var(--filter-background-blur);\\n\\tbackdrop-filter: var(--filter-background-blur);\\n\\topacity: 1 !important;\\n\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\tbackground-color: var(--color-background-hover)!important;\\n\\t}\\n\\t&:focus-visible {\\n\\t\\tbox-shadow: 0 0 0 2px var(--color-main-text) !important;\\n\\t}\\n}\\n\\n.modal__content {\\n\\tpadding: 32px 16px;\\n\\ttext-align: center;\\n\\n\\tol {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: row;\\n\\t\\tjustify-content: center;\\n\\t\\tlist-style-type: none;\\n\\t\\tpadding-bottom: 16px;\\n\\t}\\n\\tli {\\n\\t\\tlabel {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\tpadding: 48px 16px 14px 16px;\\n\\t\\t\\tmargin: 8px;\\n\\t\\t\\twidth: 140px;\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\tborder: 2px solid var(--color-main-background);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t\\ttext-align: left;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\n\\n\\t\\t\\tdiv {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 16px;\\n\\t\\t\\t\\twidth: 24px;\\n\\t\\t\\t\\theight: 24px;\\n\\t\\t\\t\\tbackground-size: 24px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\tborder-color: var(--color-primary);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Do not invert status icons\\n\\t\\t&:not(.panel-status) label div {\\n\\t\\t\\tfilter: var(--background-invert-if-dark);\\n\\t\\t}\\n\\n\\t\\tinput[type='checkbox'].checkbox + label:before {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tright: 12px;\\n\\t\\t\\ttop: 16px;\\n\\t\\t}\\n\\n\\t\\tinput:focus + label {\\n\\t\\t\\tborder-color: var(--color-primary);\\n\\t\\t}\\n\\t}\\n\\n\\th3 {\\n\\t\\tfont-weight: bold;\\n\\n\\t\\t&:not(:first-of-type) {\\n\\t\\t\\tmargin-top: 64px;\\n\\t\\t}\\n\\t}\\n\\n\\t// Adjust design of 'Get more widgets' button\\n\\t.button {\\n\\t\\tdisplay: inline-block;\\n\\t\\tpadding: 10px 16px;\\n\\t\\tmargin: 0;\\n\\t}\\n\\n\\tp {\\n\\t\\tmax-width: 650px;\\n\\t\\tmargin: 0 auto;\\n\\n\\t\\ta:hover,\\n\\t\\ta:focus {\\n\\t\\t\\tborder-bottom: 2px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t.credits--end {\\n\\t\\tpadding-bottom: 32px;\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\n\\t\\ta {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t}\\n}\\n\\n.flip-list-move {\\n\\ttransition: transform var(--animation-slow);\\n}\\n\\n.statuses {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\tjustify-content: center;\\n\\tflex-wrap: wrap;\\n\\tmargin-bottom: 36px;\\n\\n\\t& > div {\\n\\t\\tmargin: 8px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\nhtml, body {\\n\\tbackground-attachment: fixed;\\n}\\n#body-user #header {\\n\\tposition: fixed;\\n}\\n#content {\\n\\toverflow: auto;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/dashboard/src/DashboardApp.vue\"],\"names\":[],\"mappings\":\";AA2nBA;CACA,4BAAA;AACA;AAEA;CACA,eAAA;AACA;AAEA;CACA,cAAA;AACA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 4773;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t4773: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(78828); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","data","isMobile","this","_isMobile","beforeMount","window","addEventListener","_onResize","beforeDestroy","removeEventListener","methods","document","documentElement","clientWidth","weather","text","icon","status","name","components","NcButton","Draggable","NcModal","Pencil","mixins","isAdmin","timer","registeredStatus","callbacks","callbacksStatus","allCallbacksStatus","statusInfo","enabledStatuses","panels","firstRun","displayName","uid","layout","modal","appStoreUrl","statuses","computed","greeting","partOfDay","morning","generic","withName","escape","afternoon","evening","night","isActive","isStatusActive","sortedAllStatuses","sortedPanels","sortedRegisteredStatus","watch","Vue","mounted","console","setInterval","destroyed","register","registerStatus","rerenderPanels","widget","saveLayout","axios","saveStatuses","showModal","closeModal","updateCheckbox","disableFirstrunHint","setTimeout","updateSkipLink","updateStatusCheckbox","enableStatus","disableStatus","sortStatuses","al","handleScroll","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","_c","_self","attrs","_v","_s","staticClass","_l","key","ref","refInFor","_b","on","model","value","callback","$$v","expression","swapThreshold","delay","delayOnTouchOnly","touchStartThreshold","panelId","id","class","iconClass","title","t","loading","scopedSlots","_u","fn","proxy","domProps","$event","target","checked","panel","draggable","_e","__webpack_nonce__","btoa","getRequestToken","VTooltip","OCA","Files","Object","assign","App","fileList","filesClient","OC","getClient","Instance","DashboardApp","$mount","Dashboard","app","___CSS_LOADER_EXPORT___","push","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","call","m","O","result","chunkIds","priority","notFulfilled","Infinity","i","length","fulfilled","j","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","g","globalThis","Function","e","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","b","baseURI","self","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"dashboard-main.js?v=7d2fd8b6da9cef72b60a","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/apps/dashboard/src/mixins/isMobile.js","webpack:///nextcloud/apps/dashboard/src/DashboardApp.vue","webpack:///nextcloud/apps/dashboard/src/DashboardApp.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/dashboard/src/DashboardApp.vue?504f","webpack://nextcloud/./apps/dashboard/src/DashboardApp.vue?65e4","webpack://nextcloud/./apps/dashboard/src/DashboardApp.vue?5685","webpack://nextcloud/./apps/dashboard/src/DashboardApp.vue?1477","webpack:///nextcloud/apps/dashboard/src/main.js","webpack:///nextcloud/apps/dashboard/src/DashboardApp.vue?vue&type=style&index=0&id=05d5e1fa&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/dashboard/src/DashboardApp.vue?vue&type=style&index=1&id=05d5e1fa&prod&lang=css&","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * @copyright Copyright (c) 2020 Julius Härtl \n *\n * @author Julius Härtl \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tisMobile: this._isMobile(),\n\t\t}\n\t},\n\tbeforeMount() {\n\t\twindow.addEventListener('resize', this._onResize)\n\t},\n\tbeforeDestroy() {\n\t\twindow.removeEventListener('resize', this._onResize)\n\t},\n\tmethods: {\n\t\t_onResize() {\n\t\t\t// Update mobile mode\n\t\t\tthis.isMobile = this._isMobile()\n\t\t},\n\t\t_isMobile() {\n\t\t\t// check if content width is under 768px\n\t\t\treturn document.documentElement.clientWidth < 768\n\t\t},\n\t},\n}\n","\n\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=style&index=0&id=05d5e1fa&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=style&index=0&id=05d5e1fa&prod&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=style&index=1&id=05d5e1fa&prod&lang=css&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DashboardApp.vue?vue&type=style&index=1&id=05d5e1fa&prod&lang=css&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DashboardApp.vue?vue&type=template&id=05d5e1fa&scoped=true&\"\nimport script from \"./DashboardApp.vue?vue&type=script&lang=js&\"\nexport * from \"./DashboardApp.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DashboardApp.vue?vue&type=style&index=0&id=05d5e1fa&prod&lang=scss&scoped=true&\"\nimport style1 from \"./DashboardApp.vue?vue&type=style&index=1&id=05d5e1fa&prod&lang=css&\"\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 \"05d5e1fa\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"app-dashboard\"}},[_c('h2',[_vm._v(_vm._s(_vm.greeting.text))]),_vm._v(\" \"),_c('ul',{staticClass:\"statuses\"},_vm._l((_vm.sortedRegisteredStatus),function(status){return _c('li',{key:status,attrs:{\"id\":'status-' + status}},[_c('div',{ref:'status-' + status,refInFor:true})])}),0),_vm._v(\" \"),_c('Draggable',_vm._b({staticClass:\"panels\",attrs:{\"handle\":\".panel--header\"},on:{\"end\":_vm.saveLayout},model:{value:(_vm.layout),callback:function ($$v) {_vm.layout=$$v},expression:\"layout\"}},'Draggable',{swapThreshold: 0.30, delay: 500, delayOnTouchOnly: true, touchStartThreshold: 3},false),_vm._l((_vm.layout),function(panelId){return _c('div',{key:_vm.panels[panelId].id,staticClass:\"panel\"},[_c('div',{staticClass:\"panel--header\"},[_c('h2',[_c('div',{class:_vm.panels[panelId].iconClass,attrs:{\"aria-labelledby\":\"panel--header--icon--description\",\"aria-hidden\":\"true\",\"role\":\"img\"}}),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.panels[panelId].title)+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('span',{staticClass:\"hidden-visually\",attrs:{\"id\":\"panel--header--icon--description\"}},[_vm._v(\" \"+_vm._s(_vm.t('dashboard', '\"{title} icon\"', { title: _vm.panels[panelId].title }))+\" \")])]),_vm._v(\" \"),_c('div',{staticClass:\"panel--content\",class:{ loading: !_vm.panels[panelId].mounted }},[_c('div',{ref:_vm.panels[panelId].id,refInFor:true,attrs:{\"data-id\":_vm.panels[panelId].id}})])])}),0),_vm._v(\" \"),_c('div',{staticClass:\"footer\"},[_c('NcButton',{on:{\"click\":_vm.showModal},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Pencil',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('dashboard', 'Customize'))+\"\\n\\t\\t\")])],1),_vm._v(\" \"),(_vm.modal)?_c('NcModal',{attrs:{\"size\":\"large\"},on:{\"close\":_vm.closeModal}},[_c('div',{staticClass:\"modal__content\"},[_c('h3',[_vm._v(_vm._s(_vm.t('dashboard', 'Edit widgets')))]),_vm._v(\" \"),_c('ol',{staticClass:\"panels\"},_vm._l((_vm.sortedAllStatuses),function(status){return _c('li',{key:status,class:'panel-' + status},[_c('input',{staticClass:\"checkbox\",attrs:{\"id\":'status-checkbox-' + status,\"type\":\"checkbox\"},domProps:{\"checked\":_vm.isStatusActive(status)},on:{\"input\":function($event){return _vm.updateStatusCheckbox(status, $event.target.checked)}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":'status-checkbox-' + status}},[_c('div',{class:_vm.statusInfo[status].icon,attrs:{\"role\":\"img\"}}),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.statusInfo[status].text)+\"\\n\\t\\t\\t\\t\\t\")])])}),0),_vm._v(\" \"),_c('Draggable',_vm._b({staticClass:\"panels\",attrs:{\"tag\":\"ol\",\"handle\":\".draggable\"},on:{\"end\":_vm.saveLayout},model:{value:(_vm.layout),callback:function ($$v) {_vm.layout=$$v},expression:\"layout\"}},'Draggable',{swapThreshold: 0.30, delay: 500, delayOnTouchOnly: true, touchStartThreshold: 3},false),_vm._l((_vm.sortedPanels),function(panel){return _c('li',{key:panel.id,class:'panel-' + panel.id},[_c('input',{staticClass:\"checkbox\",attrs:{\"id\":'panel-checkbox-' + panel.id,\"type\":\"checkbox\"},domProps:{\"checked\":_vm.isActive(panel)},on:{\"input\":function($event){return _vm.updateCheckbox(panel, $event.target.checked)}}}),_vm._v(\" \"),_c('label',{class:{ draggable: _vm.isActive(panel) },attrs:{\"for\":'panel-checkbox-' + panel.id}},[_c('div',{class:panel.iconClass,attrs:{\"role\":\"img\"}}),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(panel.title)+\"\\n\\t\\t\\t\\t\\t\")])])}),0),_vm._v(\" \"),(_vm.isAdmin)?_c('a',{staticClass:\"button\",attrs:{\"href\":_vm.appStoreUrl}},[_vm._v(_vm._s(_vm.t('dashboard', 'Get more widgets from the App Store')))]):_vm._e(),_vm._v(\" \"),_c('h3',[_vm._v(_vm._s(_vm.t('dashboard', 'Weather service')))]),_vm._v(\" \"),_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('dashboard', 'For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information.'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('p',{staticClass:\"credits--end\"},[_c('a',{attrs:{\"href\":\"https://api.met.no/doc/TermsOfService\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(_vm._s(_vm.t('dashboard', 'Weather data from Met.no')))]),_vm._v(\",\\n\\t\\t\\t\\t\"),_c('a',{attrs:{\"href\":\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(_vm._s(_vm.t('dashboard', 'geocoding with Nominatim')))]),_vm._v(\",\\n\\t\\t\\t\\t\"),_c('a',{attrs:{\"href\":\"https://www.opentopodata.org/#public-api\",\"target\":\"_blank\",\"rel\":\"noopener\"}},[_vm._v(_vm._s(_vm.t('dashboard', 'elevation data from OpenTopoData')))]),_vm._v(\".\\n\\t\\t\\t\")])],1)]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2016 Julius Härtl \n *\n * @author Julius Härtl \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport Vue from 'vue'\nimport DashboardApp from './DashboardApp.vue'\nimport { translate as t } from '@nextcloud/l10n'\nimport VTooltip from '@nextcloud/vue/dist/Directives/Tooltip'\nimport { getRequestToken } from '@nextcloud/auth'\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(getRequestToken())\n\nVue.directive('Tooltip', VTooltip)\n\nVue.prototype.t = t\n\n// FIXME workaround to make the sidebar work\nif (!window.OCA.Files) {\n\twindow.OCA.Files = {}\n}\n\nObject.assign(window.OCA.Files, { App: { fileList: { filesClient: OC.Files.getClient() } } }, window.OCA.Files)\n\nconst Dashboard = Vue.extend(DashboardApp)\nconst Instance = new Dashboard({}).$mount('#app-content-vue')\n\nwindow.OCA.Dashboard = {\n\tregister: (app, callback) => Instance.register(app, callback),\n\tregisterStatus: (app, callback) => Instance.registerStatus(app, callback),\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"#app-dashboard[data-v-05d5e1fa]{width:100%;min-height:100%;background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed}#app-dashboard>h2[data-v-05d5e1fa]{color:var(--color-primary-text);text-align:center;font-size:32px;line-height:130%;padding:1rem 0}.panels[data-v-05d5e1fa]{width:auto;margin:auto;max-width:1800px;display:flex;justify-content:center;flex-direction:row;align-items:flex-start;flex-wrap:wrap}.panel[data-v-05d5e1fa],.panels>div[data-v-05d5e1fa]{width:320px;max-width:100%;margin:16px;align-self:stretch;background-color:var(--color-main-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);border-radius:var(--border-radius-large)}#body-user.theme--highcontrast .panel[data-v-05d5e1fa],#body-user.theme--highcontrast .panels>div[data-v-05d5e1fa]{border:2px solid var(--color-border)}.panel.sortable-ghost[data-v-05d5e1fa],.panels>div.sortable-ghost[data-v-05d5e1fa]{opacity:.1}.panel>.panel--header[data-v-05d5e1fa],.panels>div>.panel--header[data-v-05d5e1fa]{display:flex;z-index:1;top:50px;padding:16px;cursor:grab}.panel>.panel--header[data-v-05d5e1fa],.panel>.panel--header[data-v-05d5e1fa] *,.panels>div>.panel--header[data-v-05d5e1fa],.panels>div>.panel--header[data-v-05d5e1fa] *{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.panel>.panel--header[data-v-05d5e1fa]:active,.panels>div>.panel--header[data-v-05d5e1fa]:active{cursor:grabbing}.panel>.panel--header a[data-v-05d5e1fa],.panels>div>.panel--header a[data-v-05d5e1fa]{flex-grow:1}.panel>.panel--header>h2[data-v-05d5e1fa],.panels>div>.panel--header>h2[data-v-05d5e1fa]{display:block;align-items:center;flex-grow:1;margin:0;font-size:20px;line-height:24px;font-weight:bold;padding:16px 8px;height:56px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:grab}.panel>.panel--header>h2 div[data-v-05d5e1fa],.panels>div>.panel--header>h2 div[data-v-05d5e1fa]{background-size:32px;width:32px;height:32px;margin-right:16px;background-position:center;float:left}.panel>.panel--content[data-v-05d5e1fa],.panels>div>.panel--content[data-v-05d5e1fa]{margin:0 16px 16px 16px;height:424px;overflow:visible}@media only screen and (max-width: 709px){.panel>.panel--content[data-v-05d5e1fa],.panels>div>.panel--content[data-v-05d5e1fa]{height:auto}}.footer[data-v-05d5e1fa]{display:flex;justify-content:center;transition:bottom var(--animation-slow) ease-in-out;padding:1rem 0}.edit-panels[data-v-05d5e1fa]{display:inline-block;margin:auto;background-position:16px center;padding:12px 16px;padding-left:36px;border-radius:var(--border-radius-pill);max-width:200px;opacity:1;text-align:center}.button[data-v-05d5e1fa],.button-vue[data-v-05d5e1fa],.edit-panels[data-v-05d5e1fa],.statuses[data-v-05d5e1fa] .action-item .action-item__menutoggle,.statuses[data-v-05d5e1fa] .action-item.action-item--open .action-item__menutoggle{background-color:var(--color-main-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);backdrop-filter:var(--filter-background-blur);opacity:1 !important}.button[data-v-05d5e1fa]:hover,.button[data-v-05d5e1fa]:focus,.button[data-v-05d5e1fa]:active,.button-vue[data-v-05d5e1fa]:hover,.button-vue[data-v-05d5e1fa]:focus,.button-vue[data-v-05d5e1fa]:active,.edit-panels[data-v-05d5e1fa]:hover,.edit-panels[data-v-05d5e1fa]:focus,.edit-panels[data-v-05d5e1fa]:active,.statuses[data-v-05d5e1fa] .action-item .action-item__menutoggle:hover,.statuses[data-v-05d5e1fa] .action-item .action-item__menutoggle:focus,.statuses[data-v-05d5e1fa] .action-item .action-item__menutoggle:active,.statuses[data-v-05d5e1fa] .action-item.action-item--open .action-item__menutoggle:hover,.statuses[data-v-05d5e1fa] .action-item.action-item--open .action-item__menutoggle:focus,.statuses[data-v-05d5e1fa] .action-item.action-item--open .action-item__menutoggle:active{background-color:var(--color-background-hover) !important}.button[data-v-05d5e1fa]:focus-visible,.button-vue[data-v-05d5e1fa]:focus-visible,.edit-panels[data-v-05d5e1fa]:focus-visible,.statuses[data-v-05d5e1fa] .action-item .action-item__menutoggle:focus-visible,.statuses[data-v-05d5e1fa] .action-item.action-item--open .action-item__menutoggle:focus-visible{box-shadow:0 0 0 2px var(--color-main-text) !important}.modal__content[data-v-05d5e1fa]{padding:32px 16px;text-align:center}.modal__content ol[data-v-05d5e1fa]{display:flex;flex-direction:row;justify-content:center;list-style-type:none;padding-bottom:16px}.modal__content li label[data-v-05d5e1fa]{position:relative;display:block;padding:48px 16px 14px 16px;margin:8px;width:140px;background-color:var(--color-background-hover);border:2px solid var(--color-main-background);border-radius:var(--border-radius-large);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal__content li label div[data-v-05d5e1fa]{position:absolute;top:16px;width:24px;height:24px;background-size:24px}.modal__content li label[data-v-05d5e1fa]:hover{border-color:var(--color-primary)}.modal__content li:not(.panel-status) label div[data-v-05d5e1fa]{filter:var(--background-invert-if-dark)}.modal__content li input[type=checkbox].checkbox+label[data-v-05d5e1fa]:before{position:absolute;right:12px;top:16px}.modal__content li input:focus+label[data-v-05d5e1fa]{border-color:var(--color-primary)}.modal__content h3[data-v-05d5e1fa]{font-weight:bold}.modal__content h3[data-v-05d5e1fa]:not(:first-of-type){margin-top:64px}.modal__content .button[data-v-05d5e1fa]{display:inline-block;padding:10px 16px;margin:0}.modal__content p[data-v-05d5e1fa]{max-width:650px;margin:0 auto}.modal__content p a[data-v-05d5e1fa]:hover,.modal__content p a[data-v-05d5e1fa]:focus{border-bottom:2px solid var(--color-border)}.modal__content .credits--end[data-v-05d5e1fa]{padding-bottom:32px;color:var(--color-text-maxcontrast)}.modal__content .credits--end a[data-v-05d5e1fa]{color:var(--color-text-maxcontrast)}.flip-list-move[data-v-05d5e1fa]{transition:transform var(--animation-slow)}.statuses[data-v-05d5e1fa]{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;margin-bottom:36px}.statuses>li[data-v-05d5e1fa]{margin:8px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/dashboard/src/DashboardApp.vue\"],\"names\":[],\"mappings\":\"AACA,gCACC,UAAA,CACA,eAAA,CACA,qBAAA,CACA,iCAAA,CACA,2BAAA,CACA,2BAAA,CAEA,mCACC,+BAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,cAAA,CAIF,yBACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,YAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CACA,cAAA,CAGD,qDACC,WAAA,CACA,cAAA,CACA,WAAA,CACA,kBAAA,CACA,kDAAA,CACA,qDAAA,CACA,6CAAA,CACA,wCAAA,CAEA,mHACC,oCAAA,CAGD,mFACE,UAAA,CAGF,mFACC,YAAA,CACA,SAAA,CACA,QAAA,CACA,YAAA,CACA,WAAA,CAEA,0KACC,0BAAA,CACA,wBAAA,CACA,uBAAA,CACA,qBAAA,CACA,oBAAA,CACA,gBAAA,CAGD,iGACC,eAAA,CAGD,uFACC,WAAA,CAGD,yFACC,aAAA,CACA,kBAAA,CACA,WAAA,CACA,QAAA,CACA,cAAA,CACA,gBAAA,CACA,gBAAA,CACA,gBAAA,CACA,WAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CACA,WAAA,CACA,iGACC,oBAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,0BAAA,CACA,UAAA,CAKH,qFACC,uBAAA,CACA,YAAA,CAEA,gBAAA,CAID,0CACC,qFACC,WAAA,CAAA,CAKH,yBACC,YAAA,CACA,sBAAA,CACA,mDAAA,CACA,cAAA,CAGD,8BACC,oBAAA,CACA,WAAA,CACA,+BAAA,CACA,iBAAA,CACA,iBAAA,CACA,uCAAA,CACA,eAAA,CACA,SAAA,CACA,iBAAA,CAGD,wOAKC,kDAAA,CACA,qDAAA,CACA,6CAAA,CACA,oBAAA,CAEA,uxBAGC,yDAAA,CAED,8SACC,sDAAA,CAIF,iCACC,iBAAA,CACA,iBAAA,CAEA,oCACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,oBAAA,CACA,mBAAA,CAGA,0CACC,iBAAA,CACA,aAAA,CACA,2BAAA,CACA,UAAA,CACA,WAAA,CACA,8CAAA,CACA,6CAAA,CACA,wCAAA,CACA,eAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAAA,CAEA,8CACC,iBAAA,CACA,QAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CAGD,gDACC,iCAAA,CAKF,iEACC,uCAAA,CAGD,+EACC,iBAAA,CACA,UAAA,CACA,QAAA,CAGD,sDACC,iCAAA,CAIF,oCACC,gBAAA,CAEA,wDACC,eAAA,CAKF,yCACC,oBAAA,CACA,iBAAA,CACA,QAAA,CAGD,mCACC,eAAA,CACA,aAAA,CAEA,sFAEC,2CAAA,CAIF,+CACC,mBAAA,CACA,mCAAA,CAEA,iDACC,mCAAA,CAKH,iCACC,0CAAA,CAGD,2BACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,cAAA,CACA,kBAAA,CAEA,8BACC,UAAA\",\"sourcesContent\":[\"\\n#app-dashboard {\\n\\twidth: 100%;\\n\\tmin-height: 100%;\\n\\tbackground-size: cover;\\n\\tbackground-position: center center;\\n\\tbackground-repeat: no-repeat;\\n\\tbackground-attachment: fixed;\\n\\n\\t> h2 {\\n\\t\\tcolor: var(--color-primary-text);\\n\\t\\ttext-align: center;\\n\\t\\tfont-size: 32px;\\n\\t\\tline-height: 130%;\\n\\t\\tpadding: 1rem 0;\\n\\t}\\n}\\n\\n.panels {\\n\\twidth: auto;\\n\\tmargin: auto;\\n\\tmax-width: 1800px;\\n\\tdisplay: flex;\\n\\tjustify-content: center;\\n\\tflex-direction: row;\\n\\talign-items: flex-start;\\n\\tflex-wrap: wrap;\\n}\\n\\n.panel, .panels > div {\\n\\twidth: 320px;\\n\\tmax-width: 100%;\\n\\tmargin: 16px;\\n\\talign-self: stretch;\\n\\tbackground-color: var(--color-main-background-blur);\\n\\t-webkit-backdrop-filter: var(--filter-background-blur);\\n\\tbackdrop-filter: var(--filter-background-blur);\\n\\tborder-radius: var(--border-radius-large);\\n\\n\\t#body-user.theme--highcontrast & {\\n\\t\\tborder: 2px solid var(--color-border);\\n\\t}\\n\\n\\t&.sortable-ghost {\\n\\t\\t opacity: 0.1;\\n\\t}\\n\\n\\t& > .panel--header {\\n\\t\\tdisplay: flex;\\n\\t\\tz-index: 1;\\n\\t\\ttop: 50px;\\n\\t\\tpadding: 16px;\\n\\t\\tcursor: grab;\\n\\n\\t\\t&, ::v-deep * {\\n\\t\\t\\t-webkit-touch-callout: none;\\n\\t\\t\\t-webkit-user-select: none;\\n\\t\\t\\t-khtml-user-select: none;\\n\\t\\t\\t-moz-user-select: none;\\n\\t\\t\\t-ms-user-select: none;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&:active {\\n\\t\\t\\tcursor: grabbing;\\n\\t\\t}\\n\\n\\t\\ta {\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t}\\n\\n\\t\\t> h2 {\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t\\tline-height: 24px;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tpadding: 16px 8px;\\n\\t\\t\\theight: 56px;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\tcursor: grab;\\n\\t\\t\\tdiv {\\n\\t\\t\\t\\tbackground-size: 32px;\\n\\t\\t\\t\\twidth: 32px;\\n\\t\\t\\t\\theight: 32px;\\n\\t\\t\\t\\tmargin-right: 16px;\\n\\t\\t\\t\\tbackground-position: center;\\n\\t\\t\\t\\tfloat: left;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t& > .panel--content {\\n\\t\\tmargin: 0 16px 16px 16px;\\n\\t\\theight: 424px;\\n\\t\\t// We specifically do not want scrollbars inside widgets\\n\\t\\toverflow: visible;\\n\\t}\\n\\n\\t// No need to extend height of widgets if only one column is shown\\n\\t@media only screen and (max-width: 709px) {\\n\\t\\t& > .panel--content {\\n\\t\\t\\theight: auto;\\n\\t\\t}\\n\\t}\\n}\\n\\n.footer {\\n\\tdisplay: flex;\\n\\tjustify-content: center;\\n\\ttransition: bottom var(--animation-slow) ease-in-out;\\n\\tpadding: 1rem 0;\\n}\\n\\n.edit-panels {\\n\\tdisplay: inline-block;\\n\\tmargin:auto;\\n\\tbackground-position: 16px center;\\n\\tpadding: 12px 16px;\\n\\tpadding-left: 36px;\\n\\tborder-radius: var(--border-radius-pill);\\n\\tmax-width: 200px;\\n\\topacity: 1;\\n\\ttext-align: center;\\n}\\n\\n.button,\\n.button-vue,\\n.edit-panels,\\n.statuses ::v-deep .action-item .action-item__menutoggle,\\n.statuses ::v-deep .action-item.action-item--open .action-item__menutoggle {\\n\\tbackground-color: var(--color-main-background-blur);\\n\\t-webkit-backdrop-filter: var(--filter-background-blur);\\n\\tbackdrop-filter: var(--filter-background-blur);\\n\\topacity: 1 !important;\\n\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\tbackground-color: var(--color-background-hover)!important;\\n\\t}\\n\\t&:focus-visible {\\n\\t\\tbox-shadow: 0 0 0 2px var(--color-main-text) !important;\\n\\t}\\n}\\n\\n.modal__content {\\n\\tpadding: 32px 16px;\\n\\ttext-align: center;\\n\\n\\tol {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: row;\\n\\t\\tjustify-content: center;\\n\\t\\tlist-style-type: none;\\n\\t\\tpadding-bottom: 16px;\\n\\t}\\n\\tli {\\n\\t\\tlabel {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\tpadding: 48px 16px 14px 16px;\\n\\t\\t\\tmargin: 8px;\\n\\t\\t\\twidth: 140px;\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\tborder: 2px solid var(--color-main-background);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t\\ttext-align: left;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\n\\n\\t\\t\\tdiv {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 16px;\\n\\t\\t\\t\\twidth: 24px;\\n\\t\\t\\t\\theight: 24px;\\n\\t\\t\\t\\tbackground-size: 24px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\tborder-color: var(--color-primary);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Do not invert status icons\\n\\t\\t&:not(.panel-status) label div {\\n\\t\\t\\tfilter: var(--background-invert-if-dark);\\n\\t\\t}\\n\\n\\t\\tinput[type='checkbox'].checkbox + label:before {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tright: 12px;\\n\\t\\t\\ttop: 16px;\\n\\t\\t}\\n\\n\\t\\tinput:focus + label {\\n\\t\\t\\tborder-color: var(--color-primary);\\n\\t\\t}\\n\\t}\\n\\n\\th3 {\\n\\t\\tfont-weight: bold;\\n\\n\\t\\t&:not(:first-of-type) {\\n\\t\\t\\tmargin-top: 64px;\\n\\t\\t}\\n\\t}\\n\\n\\t// Adjust design of 'Get more widgets' button\\n\\t.button {\\n\\t\\tdisplay: inline-block;\\n\\t\\tpadding: 10px 16px;\\n\\t\\tmargin: 0;\\n\\t}\\n\\n\\tp {\\n\\t\\tmax-width: 650px;\\n\\t\\tmargin: 0 auto;\\n\\n\\t\\ta:hover,\\n\\t\\ta:focus {\\n\\t\\t\\tborder-bottom: 2px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t.credits--end {\\n\\t\\tpadding-bottom: 32px;\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\n\\t\\ta {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t}\\n}\\n\\n.flip-list-move {\\n\\ttransition: transform var(--animation-slow);\\n}\\n\\n.statuses {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\tjustify-content: center;\\n\\tflex-wrap: wrap;\\n\\tmargin-bottom: 36px;\\n\\n\\t& > li {\\n\\t\\tmargin: 8px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\nhtml, body {\\n\\tbackground-attachment: fixed;\\n}\\n#body-user #header {\\n\\tposition: fixed;\\n}\\n#content {\\n\\toverflow: auto;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/dashboard/src/DashboardApp.vue\"],\"names\":[],\"mappings\":\";AA2nBA;CACA,4BAAA;AACA;AAEA;CACA,eAAA;AACA;AAEA;CACA,cAAA;AACA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 4773;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t4773: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(65217); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","data","isMobile","this","_isMobile","beforeMount","window","addEventListener","_onResize","beforeDestroy","removeEventListener","methods","document","documentElement","clientWidth","weather","text","icon","status","name","components","NcButton","Draggable","NcModal","Pencil","mixins","isAdmin","timer","registeredStatus","callbacks","callbacksStatus","allCallbacksStatus","statusInfo","enabledStatuses","panels","firstRun","displayName","uid","layout","modal","appStoreUrl","statuses","computed","greeting","partOfDay","morning","generic","withName","escape","afternoon","evening","night","isActive","isStatusActive","sortedAllStatuses","sortedPanels","sortedRegisteredStatus","watch","Vue","mounted","console","setInterval","destroyed","register","registerStatus","rerenderPanels","widget","saveLayout","axios","saveStatuses","showModal","closeModal","updateCheckbox","disableFirstrunHint","setTimeout","updateSkipLink","updateStatusCheckbox","enableStatus","disableStatus","sortStatuses","al","handleScroll","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","_c","_self","attrs","_v","_s","staticClass","_l","key","ref","refInFor","_b","on","model","value","callback","$$v","expression","swapThreshold","delay","delayOnTouchOnly","touchStartThreshold","panelId","id","class","iconClass","title","t","loading","scopedSlots","_u","fn","proxy","domProps","$event","target","checked","panel","draggable","_e","__webpack_nonce__","btoa","getRequestToken","VTooltip","OCA","Files","Object","assign","App","fileList","filesClient","OC","getClient","Instance","DashboardApp","$mount","Dashboard","app","___CSS_LOADER_EXPORT___","push","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","call","m","O","result","chunkIds","priority","notFulfilled","Infinity","i","length","fulfilled","j","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","g","globalThis","Function","e","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","b","baseURI","self","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file -- 2.39.5