From 4be6280aa90cbeffeb1d1961e26ec43beb3e19bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Thu, 18 Aug 2022 14:52:01 +0200 Subject: [PATCH 1/5] Add css variables for blurred background MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- apps/theming/lib/Themes/DefaultTheme.php | 2 ++ apps/theming/lib/Themes/HighContrastTheme.php | 3 +++ 2 files changed, 5 insertions(+) diff --git a/apps/theming/lib/Themes/DefaultTheme.php b/apps/theming/lib/Themes/DefaultTheme.php index d141a5d324129..6fd29132a5317 100644 --- a/apps/theming/lib/Themes/DefaultTheme.php +++ b/apps/theming/lib/Themes/DefaultTheme.php @@ -97,6 +97,8 @@ public function getCSSVariables(): array { '--color-main-background' => $colorMainBackground, '--color-main-background-rgb' => $colorMainBackgroundRGB, '--color-main-background-translucent' => 'rgba(var(--color-main-background-rgb), .97)', + '--color-main-background-blur' => 'rgba(var(--color-main-background-rgb), .8)', + '--filter-background-blur' => 'blur(25px)', // to use like this: background-image: linear-gradient(0, var('--gradient-main-background)); '--gradient-main-background' => 'var(--color-main-background) 0%, var(--color-main-background-translucent) 85%, transparent 100%', diff --git a/apps/theming/lib/Themes/HighContrastTheme.php b/apps/theming/lib/Themes/HighContrastTheme.php index 77239f2076c24..4f2f457bd5eca 100644 --- a/apps/theming/lib/Themes/HighContrastTheme.php +++ b/apps/theming/lib/Themes/HighContrastTheme.php @@ -59,6 +59,9 @@ public function getCSSVariables(): array { $variables['--color-background-dark'] = $this->util->darken($colorMainBackground, 30); $variables['--color-background-darker'] = $this->util->darken($colorMainBackground, 30); + $variables['--color-main-background-blur'] = $colorMainBackground; + $variables['--filter-background-blur'] = 'none'; + $variables['--color-placeholder-light'] = $this->util->darken($colorMainBackground, 30); $variables['--color-placeholder-dark'] = $this->util->darken($colorMainBackground, 45); From 49ddaaecbf2345673f871ca0225090b95521b3f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Thu, 18 Aug 2022 14:53:26 +0200 Subject: [PATCH 2/5] Move dashboard to new variables MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- apps/dashboard/src/DashboardApp.vue | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/apps/dashboard/src/DashboardApp.vue b/apps/dashboard/src/DashboardApp.vue index c9e73d9d14616..b99905660302d 100644 --- a/apps/dashboard/src/DashboardApp.vue +++ b/apps/dashboard/src/DashboardApp.vue @@ -426,8 +426,6 @@ export default { background-repeat: no-repeat; background-attachment: fixed; background-color: var(--color-primary); - --color-background-translucent: rgba(var(--color-main-background-rgb), 0.8); - --background-blur: blur(10px); > h2 { color: var(--color-primary-text); @@ -453,9 +451,9 @@ export default { width: 320px; max-width: 100%; margin: 16px; - background-color: var(--color-background-translucent); - -webkit-backdrop-filter: var(--background-blur); - backdrop-filter: var(--background-blur); + 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 & { @@ -556,9 +554,9 @@ export default { .edit-panels, .statuses ::v-deep .action-item .action-item__menutoggle, .statuses ::v-deep .action-item.action-item--open .action-item__menutoggle { - background-color: var(--color-background-translucent); - -webkit-backdrop-filter: var(--background-blur); - backdrop-filter: var(--background-blur); + background-color: var(--color-main-background-blur); + -webkit-backdrop-filter: var(--filter-background-blur); + backdrop-filter: var(--filter-background-blur); opacity: 1 !important; &:hover, From 57233fd99ac4cdc503c19d1738243271b54c8086 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Thu, 18 Aug 2022 15:32:08 +0200 Subject: [PATCH 3/5] Expose core background image MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- apps/dashboard/src/DashboardApp.vue | 3 ++- apps/theming/lib/Themes/DefaultTheme.php | 10 +++++++--- core/img/app-background.jpg | Bin 0 -> 190294 bytes 3 files changed, 9 insertions(+), 4 deletions(-) create mode 100644 core/img/app-background.jpg diff --git a/apps/dashboard/src/DashboardApp.vue b/apps/dashboard/src/DashboardApp.vue index b99905660302d..a7ec30fdb4d97 100644 --- a/apps/dashboard/src/DashboardApp.vue +++ b/apps/dashboard/src/DashboardApp.vue @@ -170,8 +170,9 @@ export default { || this.background.match(/#[0-9A-Fa-f]{6}/g)) { return null } + return { - backgroundImage: `url(${this.backgroundImage})`, + backgroundImage: this.background === 'default' ? 'var(--image-main-background)' : `url(${this.backgroundImage})`, } }, diff --git a/apps/theming/lib/Themes/DefaultTheme.php b/apps/theming/lib/Themes/DefaultTheme.php index 6fd29132a5317..82bfb000e9354 100644 --- a/apps/theming/lib/Themes/DefaultTheme.php +++ b/apps/theming/lib/Themes/DefaultTheme.php @@ -192,6 +192,8 @@ public function getCSSVariables(): array { '--primary-invert-if-bright' => $this->util->invertTextColor($this->primaryColor) ? 'invert(100%)' : 'no', '--background-invert-if-dark' => 'no', '--background-invert-if-bright' => 'invert(100%)', + + '--image-main-background' => "url('" . $this->urlGenerator->imagePath('core', 'app-background.jpg') . "')", ]; $backgroundDeleted = $this->config->getAppValue('theming', 'backgroundMime', '') === 'backgroundColor'; @@ -199,19 +201,21 @@ public function getCSSVariables(): array { // let's not define the background image if ($backgroundDeleted || $hasCustomPrimaryColour) { $variables["--image-background-plain"] = 'true'; - } + } // Register image variables only if custom-defined foreach(['logo', 'logoheader', 'favicon', 'background'] as $image) { if ($this->imageManager->hasImage($image)) { + $imageUrl = $this->imageManager->getImageUrl($image); if ($image === 'background') { // If background deleted is set, ignoring variable if ($backgroundDeleted) { continue; - } + } $variables['--image-background-size'] = 'cover'; + $variables['--image-main-background'] = "url('" . $imageUrl . "')"; } - $variables["--image-$image"] = "url('".$this->imageManager->getImageUrl($image)."')"; + $variables["--image-$image"] = "url('" . $imageUrl . "')"; } } diff --git a/core/img/app-background.jpg b/core/img/app-background.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b9cc2cc5cd15fc6c961221413a726fed1501bbfc GIT binary patch literal 190294 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 literal 0 HcmV?d00001 From 145c3be5a7a3431c09a87a5a0d5760cf1332072e Mon Sep 17 00:00:00 2001 From: nextcloud-command Date: Fri, 19 Aug 2022 10:24:35 +0000 Subject: [PATCH 4/5] Compile assets Signed-off-by: nextcloud-command --- dist/dashboard-main.js | 4 ++-- dist/dashboard-main.js.map | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/dashboard-main.js b/dist/dashboard-main.js index 82e68e184ab23..8133ea8a7c649 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={90422:function(n,e,a){var o=a(20144),r=a(79753),i=a(22200),s=a(16453),d=a(4820),l=a(1412),c=a.n(l),A=a(9980),u=a.n(A),b=a(47450),p=a.n(b),g=a(59466),C={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}}},h=function(t){return(0,r.generateFilePath)("dashboard","","img/")+t},v=function(t){var n,e,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=(null===(n=window.OCA)||void 0===n||null===(e=n.Theming)||void 0===e?void 0:e.enabledThemes)||[],s=0===i.length||"default"===i[0]?window.matchMedia("(prefers-color-scheme: dark)").matches:-1!==i.join("").indexOf("dark");return"default"===t?o&&"backgroundColor"!==o?(0,r.generateUrl)("/apps/theming/image/background")+"?v="+window.OCA.Theming.cacheBuster:h(s?"eduardo-neves-pedra-azul.jpg":"kamil-porembinski-clouds.jpg"):"custom"===t?(0,r.generateUrl)("/apps/dashboard/background")+"?v="+a:h(t)};function f(t,n,e,a,o,r,i){try{var s=t[r](i),d=s.value}catch(t){return void e(t)}s.done?n(d):Promise.resolve(d).then(a,o)}function m(t){return function(){var n=this,e=arguments;return new Promise((function(a,o){var r=t.apply(n,e);function i(t){f(r,a,o,i,s,"next",t)}function s(t){f(r,a,o,i,s,"throw",t)}i(void 0)}))}}var k=(0,s.loadState)("dashboard","shippedBackgrounds"),x={name:"BackgroundSettings",props:{background:{type:String,default:"default"},themingDefaultBackground:{type:String,default:""}},data:function(){return{backgroundImage:(0,r.generateUrl)("/apps/dashboard/background")+"?v="+Date.now(),loading:!1}},computed:{shippedBackgrounds:function(){return Object.keys(k).map((function(t){return{name:t,url:h(t),preview:h("previews/"+t),details:k[t]}}))}},methods:{update:function(t){var n=this;return m(regeneratorRuntime.mark((function e(){var a,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a="custom"===t.type||"default"===t.type?t.type:t.value,n.backgroundImage=v(a,t.version,n.themingDefaultBackground),"color"!==t.type&&("default"!==t.type||"backgroundColor"!==n.themingDefaultBackground)){e.next=6;break}return n.$emit("update:background",t),n.loading=!1,e.abrupt("return");case 6:(o=new Image).onload=function(){n.$emit("update:background",t),n.loading=!1},o.src=n.backgroundImage;case 9:case"end":return e.stop()}}),e)})))()},setDefault:function(){var t=this;return m(regeneratorRuntime.mark((function n(){var e;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t.loading="default",n.next=3,d.default.post((0,r.generateUrl)("/apps/dashboard/background/default"));case 3:e=n.sent,t.update(e.data);case 5:case"end":return n.stop()}}),n)})))()},setShipped:function(t){var n=this;return m(regeneratorRuntime.mark((function e(){var a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.loading=t,e.next=3,d.default.post((0,r.generateUrl)("/apps/dashboard/background/shipped"),{value:t});case 3:a=e.sent,n.update(a.data);case 5:case"end":return e.stop()}}),e)})))()},setFile:function(t){var n=this;return m(regeneratorRuntime.mark((function e(){var a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.loading="custom",e.next=3,d.default.post((0,r.generateUrl)("/apps/dashboard/background/custom"),{value:t});case 3:a=e.sent,n.update(a.data);case 5:case"end":return e.stop()}}),e)})))()},pickColor:function(){var t=this;return m(regeneratorRuntime.mark((function n(){var e,a;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t.loading="color",e=OCA&&OCA.Theming?OCA.Theming.color:"#0082c9",n.next=4,d.default.post((0,r.generateUrl)("/apps/dashboard/background/color"),{value:e});case 4:a=n.sent,t.update(a.data);case 6:case"end":return n.stop()}}),n)})))()},pickFile:function(){var n=this;window.OC.dialogs.filepicker(t("dashboard","Insert from {productName}",{productName:OC.theme.name}),(function(t,e){e===OC.dialogs.FILEPICKER_TYPE_CHOOSE&&n.setFile(t)}),!1,["image/png","image/gif","image/jpeg","image/svg"],!0,OC.dialogs.FILEPICKER_TYPE_CHOOSE)}}},w=x,y=a(93379),_=a.n(y),S=a(7795),B=a.n(S),D=a(90569),O=a.n(D),E=a(3565),F=a.n(E),G=a(19216),P=a.n(G),j=a(44589),T=a.n(j),I=a(32238),z={};z.styleTagTransform=T(),z.setAttributes=F(),z.insert=O().bind(null,"head"),z.domAPI=B(),z.insertStyleElement=P(),_()(I.Z,z),I.Z&&I.Z.locals&&I.Z.locals;var R=a(51900),U=(0,R.Z)(w,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"background-selector"},[e("button",{staticClass:"background filepicker",class:{active:"custom"===t.background},attrs:{tabindex:"0"},on:{click:t.pickFile}},[t._v("\n\t\t"+t._s(t.t("dashboard","Pick from Files"))+"\n\t")]),t._v(" "),e("button",{staticClass:"background default",class:{"icon-loading":"default"===t.loading,active:"default"===t.background},attrs:{tabindex:"0"},on:{click:t.setDefault}},[t._v("\n\t\t"+t._s(t.t("dashboard","Default image"))+"\n\t")]),t._v(" "),e("button",{staticClass:"background color",class:{active:"custom"===t.background},attrs:{tabindex:"0"},on:{click:t.pickColor}},[t._v("\n\t\t"+t._s(t.t("dashboard","Plain background"))+"\n\t")]),t._v(" "),t._l(t.shippedBackgrounds,(function(n){return e("button",{directives:[{name:"tooltip",rawName:"v-tooltip",value:n.details.attribution,expression:"shippedBackground.details.attribution"}],key:n.name,staticClass:"background",class:{"icon-loading":t.loading===n.name,active:t.background===n.name},style:{"background-image":"url("+n.preview+")"},attrs:{tabindex:"0"},on:{click:function(e){return t.setShipped(n.name)}}})}))],2)}),[],!1,null,"77b70ba2",null).exports,N=(0,s.loadState)("dashboard","panels"),W=(0,s.loadState)("dashboard","firstRun"),L=(0,s.loadState)("dashboard","background"),M=(0,s.loadState)("dashboard","themingDefaultBackground"),q=(0,s.loadState)("dashboard","version"),H=(0,s.loadState)("dashboard","shippedBackgrounds"),Z={weather:{text:t("dashboard","Weather"),icon:"icon-weather-status"},status:{text:t("dashboard","Status"),icon:"icon-user-status-online"}},K={name:"DashboardApp",components:{BackgroundSettings:U,Button:c(),Draggable:u(),Modal:p(),Pencil:g.default},mixins:[C],data:function(){var t,n;return{isAdmin:(0,i.getCurrentUser)().isAdmin,timer:new Date,registeredStatus:[],callbacks:{},callbacksStatus:{},allCallbacksStatus:{},statusInfo:Z,enabledStatuses:(0,s.loadState)("dashboard","statuses"),panels:N,firstRun:W,displayName:null===(t=(0,i.getCurrentUser)())||void 0===t?void 0:t.displayName,uid:null===(n=(0,i.getCurrentUser)())||void 0===n?void 0:n.uid,layout:(0,s.loadState)("dashboard","layout").filter((function(t){return N[t]})),modal:!1,appStoreUrl:(0,r.generateUrl)("/settings/apps/dashboard"),statuses:{},background:L,themingDefaultBackground:M,version:q}},computed:{backgroundImage:function(){return v(this.background,this.version,this.themingDefaultBackground)},backgroundStyle:function(){return"default"===this.background&&"backgroundColor"===this.themingDefaultBackground||this.background.match(/#[0-9A-Fa-f]{6}/g)?null:{backgroundImage:"url(".concat(this.backgroundImage,")")}},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.default.set(this.statuses,t,{mounted:!0})):console.error("Failed to register panel in the frontend as no backend data was provided for "+t))}}},mounted:function(){var t=this;this.updateGlobalStyles(),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.default.set(this.callbacks,t,n)},registerStatus:function(t,n){var e=this;o.default.set(this.allCallbacksStatus,t,n),this.isStatusActive(t)&&(this.registeredStatus.push(t),this.$nextTick((function(){o.default.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.default.set(this.panels[t],"mounted",!0)):console.error("Failed to register panel in the frontend as no backend data was provided for "+t)))}},saveLayout:function(){d.default.post((0,r.generateUrl)("/apps/dashboard/layout"),{layout:this.layout.join(",")})},saveStatuses:function(){d.default.post((0,r.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.default.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)},updateBackground:function(t){this.background="custom"===t.type||"default"===t.type?t.type:t.value,this.version=t.version,this.updateGlobalStyles()},updateGlobalStyles:function(){var t;"dark"===(null===(t=H[this.background])||void 0===t?void 0:t.theming)?(document.querySelector("#header").style.setProperty("--primary-invert-if-bright","invert(100%)"),document.querySelector("#header").style.setProperty("--color-primary-text","#000000")):(document.querySelector("#header").style.removeProperty("--primary-invert-if-bright"),document.querySelector("#header").style.removeProperty("--color-primary-text"))},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.default.set(this.statuses,t,{mounted:!1}),this.$nextTick((function(){o.default.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")}}},Y=a(372),$={};$.styleTagTransform=T(),$.setAttributes=F(),$.insert=O().bind(null,"head"),$.domAPI=B(),$.insertStyleElement=P(),_()(Y.Z,$),Y.Z&&Y.Z.locals&&Y.Z.locals;var Q=(0,R.Z)(K,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{style:t.backgroundStyle,attrs:{id:"app-dashboard"}},[e("h2",[t._v(t._s(t.greeting.text))]),t._v(" "),e("ul",{staticClass:"statuses"},t._l(t.sortedRegisteredStatus,(function(t){return e("div",{key:t,attrs:{id:"status-"+t}},[e("div",{ref:"status-"+t,refInFor:!0})])})),0),t._v(" "),e("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(n){return e("div",{key:t.panels[n].id,staticClass:"panel"},[e("div",{staticClass:"panel--header"},[e("h2",[e("div",{class:t.panels[n].iconClass,attrs:{role:"img"}}),t._v("\n\t\t\t\t\t"+t._s(t.panels[n].title)+"\n\t\t\t\t")])]),t._v(" "),e("div",{staticClass:"panel--content",class:{loading:!t.panels[n].mounted}},[e("div",{ref:t.panels[n].id,refInFor:!0,attrs:{"data-id":t.panels[n].id}})])])})),0),t._v(" "),e("div",{staticClass:"footer"},[e("Button",{on:{click:t.showModal},scopedSlots:t._u([{key:"icon",fn:function(){return[e("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?e("Modal",{attrs:{size:"large"},on:{close:t.closeModal}},[e("div",{staticClass:"modal__content"},[e("h3",[t._v(t._s(t.t("dashboard","Edit widgets")))]),t._v(" "),e("ol",{staticClass:"panels"},t._l(t.sortedAllStatuses,(function(n){return e("li",{key:n,class:"panel-"+n},[e("input",{staticClass:"checkbox",attrs:{id:"status-checkbox-"+n,type:"checkbox"},domProps:{checked:t.isStatusActive(n)},on:{input:function(e){return t.updateStatusCheckbox(n,e.target.checked)}}}),t._v(" "),e("label",{attrs:{for:"status-checkbox-"+n}},[e("div",{class:t.statusInfo[n].icon,attrs:{role:"img"}}),t._v("\n\t\t\t\t\t\t"+t._s(t.statusInfo[n].text)+"\n\t\t\t\t\t")])])})),0),t._v(" "),e("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(n){return e("li",{key:n.id,class:"panel-"+n.id},[e("input",{staticClass:"checkbox",attrs:{id:"panel-checkbox-"+n.id,type:"checkbox"},domProps:{checked:t.isActive(n)},on:{input:function(e){return t.updateCheckbox(n,e.target.checked)}}}),t._v(" "),e("label",{class:{draggable:t.isActive(n)},attrs:{for:"panel-checkbox-"+n.id}},[e("div",{class:n.iconClass,attrs:{role:"img"}}),t._v("\n\t\t\t\t\t\t"+t._s(n.title)+"\n\t\t\t\t\t")])])})),0),t._v(" "),t.isAdmin?e("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(" "),e("h3",[t._v(t._s(t.t("dashboard","Change background image")))]),t._v(" "),e("BackgroundSettings",{attrs:{background:t.background,"theming-default-background":t.themingDefaultBackground},on:{"update:background":t.updateBackground}}),t._v(" "),e("h3",[t._v(t._s(t.t("dashboard","Weather service")))]),t._v(" "),e("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(" "),e("p",{staticClass:"credits--end"},[e("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"),e("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"),e("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,"5d4b2fb6",null).exports,J=a(9944),V=a(15168),X=a.n(V);a.nc=btoa((0,i.getRequestToken)()),o.default.directive("Tooltip",X()),o.default.prototype.t=J.translate,window.OCA.Files||(window.OCA.Files={}),Object.assign(window.OCA.Files,{App:{fileList:{filesClient:OC.Files.getClient()}}},window.OCA.Files);var tt=new(o.default.extend(Q))({}).$mount("#app-content-vue");window.OCA.Dashboard={register:function(t,n){return tt.register(t,n)},registerStatus:function(t,n){return tt.registerStatus(t,n)}}},372:function(t,n,e){var a=e(87537),o=e.n(a),r=e(23645),i=e.n(r)()(o());i.push([t.id,"#app-dashboard[data-v-5d4b2fb6]{width:100%;min-height:100vh;background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed;background-color:var(--color-primary);--color-background-translucent: rgba(var(--color-main-background-rgb), 0.8);--background-blur: blur(10px)}#app-dashboard>h2[data-v-5d4b2fb6]{color:var(--color-primary-text);text-align:center;font-size:32px;line-height:130%;padding:10vh 16px 0px}.panels[data-v-5d4b2fb6]{width:auto;margin:auto;max-width:1500px;display:flex;justify-content:center;flex-direction:row;align-items:flex-start;flex-wrap:wrap}.panel[data-v-5d4b2fb6],.panels>div[data-v-5d4b2fb6]{width:320px;max-width:100%;margin:16px;background-color:var(--color-background-translucent);-webkit-backdrop-filter:var(--background-blur);backdrop-filter:var(--background-blur);border-radius:var(--border-radius-large)}#body-user.theme--highcontrast .panel[data-v-5d4b2fb6],#body-user.theme--highcontrast .panels>div[data-v-5d4b2fb6]{border:2px solid var(--color-border)}.panel.sortable-ghost[data-v-5d4b2fb6],.panels>div.sortable-ghost[data-v-5d4b2fb6]{opacity:.1}.panel>.panel--header[data-v-5d4b2fb6],.panels>div>.panel--header[data-v-5d4b2fb6]{display:flex;z-index:1;top:50px;padding:16px;cursor:grab}.panel>.panel--header[data-v-5d4b2fb6],.panel>.panel--header[data-v-5d4b2fb6] *,.panels>div>.panel--header[data-v-5d4b2fb6],.panels>div>.panel--header[data-v-5d4b2fb6] *{-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-5d4b2fb6]:active,.panels>div>.panel--header[data-v-5d4b2fb6]:active{cursor:grabbing}.panel>.panel--header a[data-v-5d4b2fb6],.panels>div>.panel--header a[data-v-5d4b2fb6]{flex-grow:1}.panel>.panel--header>h2[data-v-5d4b2fb6],.panels>div>.panel--header>h2[data-v-5d4b2fb6]{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-5d4b2fb6],.panels>div>.panel--header>h2 div[data-v-5d4b2fb6]{background-size:32px;width:32px;height:32px;margin-right:16px;background-position:center;float:left;filter:var(--background-invert-if-dark)}.panel>.panel--content[data-v-5d4b2fb6],.panels>div>.panel--content[data-v-5d4b2fb6]{margin:0 16px 16px 16px;height:424px;overflow:visible}@media only screen and (max-width: 709px){.panel>.panel--content[data-v-5d4b2fb6],.panels>div>.panel--content[data-v-5d4b2fb6]{height:auto}}.footer[data-v-5d4b2fb6]{display:flex;justify-content:center;transition:bottom var(--animation-slow) ease-in-out;bottom:0;padding:44px 0}.edit-panels[data-v-5d4b2fb6]{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-5d4b2fb6],.button-vue .edit-panels[data-v-5d4b2fb6],.statuses[data-v-5d4b2fb6] .action-item .action-item__menutoggle,.statuses[data-v-5d4b2fb6] .action-item.action-item--open .action-item__menutoggle{background-color:var(--color-background-translucent);-webkit-backdrop-filter:var(--background-blur);backdrop-filter:var(--background-blur);opacity:1 !important}.button[data-v-5d4b2fb6]:hover,.button[data-v-5d4b2fb6]:focus,.button[data-v-5d4b2fb6]:active,.button-vue .edit-panels[data-v-5d4b2fb6]:hover,.button-vue .edit-panels[data-v-5d4b2fb6]:focus,.button-vue .edit-panels[data-v-5d4b2fb6]:active,.statuses[data-v-5d4b2fb6] .action-item .action-item__menutoggle:hover,.statuses[data-v-5d4b2fb6] .action-item .action-item__menutoggle:focus,.statuses[data-v-5d4b2fb6] .action-item .action-item__menutoggle:active,.statuses[data-v-5d4b2fb6] .action-item.action-item--open .action-item__menutoggle:hover,.statuses[data-v-5d4b2fb6] .action-item.action-item--open .action-item__menutoggle:focus,.statuses[data-v-5d4b2fb6] .action-item.action-item--open .action-item__menutoggle:active{background-color:var(--color-background-hover) !important}.button[data-v-5d4b2fb6]:focus-visible,.button-vue .edit-panels[data-v-5d4b2fb6]:focus-visible,.statuses[data-v-5d4b2fb6] .action-item .action-item__menutoggle:focus-visible,.statuses[data-v-5d4b2fb6] .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-5d4b2fb6]{padding:32px 16px;text-align:center}.modal__content ol[data-v-5d4b2fb6]{display:flex;flex-direction:row;justify-content:center;list-style-type:none;padding-bottom:16px}.modal__content li label[data-v-5d4b2fb6]{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-5d4b2fb6]{position:absolute;top:16px;width:24px;height:24px;background-size:24px}.modal__content li label[data-v-5d4b2fb6]:hover{border-color:var(--color-primary)}.modal__content li:not(.panel-status) label div[data-v-5d4b2fb6]{filter:var(--background-invert-if-dark)}.modal__content li input[type=checkbox].checkbox+label[data-v-5d4b2fb6]:before{position:absolute;right:12px;top:16px}.modal__content li input:focus+label[data-v-5d4b2fb6]{border-color:var(--color-primary)}.modal__content h3[data-v-5d4b2fb6]{font-weight:bold}.modal__content h3[data-v-5d4b2fb6]:not(:first-of-type){margin-top:64px}.modal__content .button[data-v-5d4b2fb6]{display:inline-block;padding:10px 16px;margin:0}.modal__content p[data-v-5d4b2fb6]{max-width:650px;margin:0 auto}.modal__content p a[data-v-5d4b2fb6]:hover,.modal__content p a[data-v-5d4b2fb6]:focus{border-bottom:2px solid var(--color-border)}.modal__content .credits--end[data-v-5d4b2fb6]{padding-bottom:32px;color:var(--color-text-maxcontrast)}.modal__content .credits--end a[data-v-5d4b2fb6]{color:var(--color-text-maxcontrast)}.flip-list-move[data-v-5d4b2fb6]{transition:transform var(--animation-slow)}.statuses[data-v-5d4b2fb6]{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;margin-bottom:36px}.statuses>div[data-v-5d4b2fb6]{margin:8px}","",{version:3,sources:["webpack://./apps/dashboard/src/DashboardApp.vue"],names:[],mappings:"AAoaA,gCACC,UAAA,CACA,gBAAA,CACA,qBAAA,CACA,iCAAA,CACA,2BAAA,CACA,2BAAA,CACA,qCAAA,CACA,2EAAA,CACA,6BAAA,CAEA,mCACC,+BAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,qBAAA,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,oDAAA,CACA,8CAAA,CACA,sCAAA,CACA,wCAAA,CAEA,mHACC,oCAAA,CAGD,mFACE,UAAA,CAGF,mFACC,YAAA,CACA,SAAA,CACA,QAAA,CACA,YAAA,CACA,WAAA,CAEA,4KACC,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,CACA,uCAAA,CAKH,qFACC,uBAAA,CACA,YAAA,CAEA,gBAAA,CAID,0CACC,qFACC,WAAA,CAAA,CAKH,yBACC,YAAA,CACA,sBAAA,CACA,mDAAA,CACA,QAAA,CACA,cAAA,CAGD,8BACC,oBAAA,CACA,WAAA,CACA,+BAAA,CACA,iBAAA,CACA,iBAAA,CACA,uCAAA,CACA,eAAA,CACA,SAAA,CACA,iBAAA,CAGD,yNAKC,oDAAA,CACA,8CAAA,CACA,sCAAA,CACA,oBAAA,CAEA,utBAGC,yDAAA,CAED,iRACC,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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n#app-dashboard {\n\twidth: 100%;\n\tmin-height: 100vh;\n\tbackground-size: cover;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n\tbackground-attachment: fixed;\n\tbackground-color: var(--color-primary);\n\t--color-background-translucent: rgba(var(--color-main-background-rgb), 0.8);\n\t--background-blur: blur(10px);\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: 10vh 16px 0px;\n\t}\n}\n\n.panels {\n\twidth: auto;\n\tmargin: auto;\n\tmax-width: 1500px;\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\tbackground-color: var(--color-background-translucent);\n\t-webkit-backdrop-filter: var(--background-blur);\n\tbackdrop-filter: var(--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\tfilter: var(--background-invert-if-dark);\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\tbottom: 0;\n\tpadding: 44px 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-background-translucent);\n\t-webkit-backdrop-filter: var(--background-blur);\n\tbackdrop-filter: var(--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=i},32238:function(t,n,e){var a=e(87537),o=e.n(a),r=e(23645),i=e.n(r)()(o());i.push([t.id,'.background-selector[data-v-77b70ba2]{display:flex;flex-wrap:wrap;justify-content:center}.background-selector .background[data-v-77b70ba2]{width:176px;height:96px;margin:8px;background-size:cover;background-position:center center;text-align:center;border-radius:var(--border-radius-large);border:2px solid var(--color-main-background);overflow:hidden}.background-selector .background.current[data-v-77b70ba2]{background-image:var(--color-background-dark)}.background-selector .background.filepicker[data-v-77b70ba2],.background-selector .background.default[data-v-77b70ba2],.background-selector .background.color[data-v-77b70ba2]{border-color:var(--color-border)}.background-selector .background.color[data-v-77b70ba2]{background-color:var(--color-primary);color:var(--color-primary-text)}.background-selector .background.active[data-v-77b70ba2],.background-selector .background[data-v-77b70ba2]:hover,.background-selector .background[data-v-77b70ba2]:focus{border:2px solid var(--color-primary)}.background-selector .background.active[data-v-77b70ba2]:not(.icon-loading):after{background-image:var(--icon-checkmark-white);background-repeat:no-repeat;background-position:center;background-size:44px;content:"";display:block;height:100%}',"",{version:3,sources:["webpack://./apps/dashboard/src/components/BackgroundSettings.vue"],names:[],mappings:"AA4IA,sCACC,YAAA,CACA,cAAA,CACA,sBAAA,CAEA,kDACC,WAAA,CACA,WAAA,CACA,UAAA,CACA,qBAAA,CACA,iCAAA,CACA,iBAAA,CACA,wCAAA,CACA,6CAAA,CACA,eAAA,CAEA,0DACC,6CAAA,CAGD,+KACC,gCAAA,CAGD,wDACC,qCAAA,CACA,+BAAA,CAGD,yKAGC,qCAAA,CAGD,kFACC,4CAAA,CACA,2BAAA,CACA,0BAAA,CACA,oBAAA,CACA,UAAA,CACA,aAAA,CACA,WAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.background-selector {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tjustify-content: center;\n\n\t.background {\n\t\twidth: 176px;\n\t\theight: 96px;\n\t\tmargin: 8px;\n\t\tbackground-size: cover;\n\t\tbackground-position: center center;\n\t\ttext-align: center;\n\t\tborder-radius: var(--border-radius-large);\n\t\tborder: 2px solid var(--color-main-background);\n\t\toverflow: hidden;\n\n\t\t&.current {\n\t\t\tbackground-image: var(--color-background-dark);\n\t\t}\n\n\t\t&.filepicker, &.default, &.color {\n\t\t\tborder-color: var(--color-border);\n\t\t}\n\n\t\t&.color {\n\t\t\tbackground-color: var(--color-primary);\n\t\t\tcolor: var(--color-primary-text);\n\t\t}\n\n\t\t&.active,\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tborder: 2px solid var(--color-primary);\n\t\t}\n\n\t\t&.active:not(.icon-loading):after {\n\t\t\tbackground-image: var(--icon-checkmark-white);\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tbackground-size: 44px;\n\t\t\tcontent: '';\n\t\t\tdisplay: block;\n\t\t\theight: 100%;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]),n.Z=i}},a={};function o(t){var n=a[t];if(void 0!==n)return n.exports;var r=a[t]={id:t,loaded:!1,exports:{}};return e[t].call(r.exports,r,r.exports,o),r.loaded=!0,r.exports}o.m=e,o.amdD=function(){throw new Error("define cannot be used indirect")},o.amdO={},n=[],o.O=function(t,e,a,r){if(!e){var i=1/0;for(c=0;c=r)&&Object.keys(o.O).every((function(t){return o.O[t](e[d])}))?e.splice(d--,1):(s=!1,r0&&n[c-1][2]>r;c--)n[c]=n[c-1];n[c]=[e,a,r]},o.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(n,{a:n}),n},o.d=function(t,n){for(var e in n)o.o(n,e)&&!o.o(t,e)&&Object.defineProperty(t,e,{enumerable:!0,get:n[e]})},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),o.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t},o.j=4773,function(){o.b=document.baseURI||self.location.href;var t={4773:0};o.O.j=function(n){return 0===t[n]};var n=function(n,e){var a,r,i=e[0],s=e[1],d=e[2],l=0;if(i.some((function(n){return 0!==t[n]}))){for(a in s)o.o(s,a)&&(o.m[a]=s[a]);if(d)var c=d(o)}for(n&&n(e);l1&&void 0!==arguments[1]?arguments[1]:0,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=(null===(n=window.OCA)||void 0===n||null===(e=n.Theming)||void 0===e?void 0:e.enabledThemes)||[],s=0===i.length||"default"===i[0]?window.matchMedia("(prefers-color-scheme: dark)").matches:-1!==i.join("").indexOf("dark");return"default"===t?o&&"backgroundColor"!==o?(0,r.generateUrl)("/apps/theming/image/background")+"?v="+window.OCA.Theming.cacheBuster:h(s?"eduardo-neves-pedra-azul.jpg":"kamil-porembinski-clouds.jpg"):"custom"===t?(0,r.generateUrl)("/apps/dashboard/background")+"?v="+a:h(t)};function f(t,n,e,a,o,r,i){try{var s=t[r](i),d=s.value}catch(t){return void e(t)}s.done?n(d):Promise.resolve(d).then(a,o)}function m(t){return function(){var n=this,e=arguments;return new Promise((function(a,o){var r=t.apply(n,e);function i(t){f(r,a,o,i,s,"next",t)}function s(t){f(r,a,o,i,s,"throw",t)}i(void 0)}))}}var k=(0,s.loadState)("dashboard","shippedBackgrounds"),x={name:"BackgroundSettings",props:{background:{type:String,default:"default"},themingDefaultBackground:{type:String,default:""}},data:function(){return{backgroundImage:(0,r.generateUrl)("/apps/dashboard/background")+"?v="+Date.now(),loading:!1}},computed:{shippedBackgrounds:function(){return Object.keys(k).map((function(t){return{name:t,url:h(t),preview:h("previews/"+t),details:k[t]}}))}},methods:{update:function(t){var n=this;return m(regeneratorRuntime.mark((function e(){var a,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a="custom"===t.type||"default"===t.type?t.type:t.value,n.backgroundImage=v(a,t.version,n.themingDefaultBackground),"color"!==t.type&&("default"!==t.type||"backgroundColor"!==n.themingDefaultBackground)){e.next=6;break}return n.$emit("update:background",t),n.loading=!1,e.abrupt("return");case 6:(o=new Image).onload=function(){n.$emit("update:background",t),n.loading=!1},o.src=n.backgroundImage;case 9:case"end":return e.stop()}}),e)})))()},setDefault:function(){var t=this;return m(regeneratorRuntime.mark((function n(){var e;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t.loading="default",n.next=3,d.default.post((0,r.generateUrl)("/apps/dashboard/background/default"));case 3:e=n.sent,t.update(e.data);case 5:case"end":return n.stop()}}),n)})))()},setShipped:function(t){var n=this;return m(regeneratorRuntime.mark((function e(){var a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.loading=t,e.next=3,d.default.post((0,r.generateUrl)("/apps/dashboard/background/shipped"),{value:t});case 3:a=e.sent,n.update(a.data);case 5:case"end":return e.stop()}}),e)})))()},setFile:function(t){var n=this;return m(regeneratorRuntime.mark((function e(){var a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.loading="custom",e.next=3,d.default.post((0,r.generateUrl)("/apps/dashboard/background/custom"),{value:t});case 3:a=e.sent,n.update(a.data);case 5:case"end":return e.stop()}}),e)})))()},pickColor:function(){var t=this;return m(regeneratorRuntime.mark((function n(){var e,a;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return t.loading="color",e=OCA&&OCA.Theming?OCA.Theming.color:"#0082c9",n.next=4,d.default.post((0,r.generateUrl)("/apps/dashboard/background/color"),{value:e});case 4:a=n.sent,t.update(a.data);case 6:case"end":return n.stop()}}),n)})))()},pickFile:function(){var n=this;window.OC.dialogs.filepicker(t("dashboard","Insert from {productName}",{productName:OC.theme.name}),(function(t,e){e===OC.dialogs.FILEPICKER_TYPE_CHOOSE&&n.setFile(t)}),!1,["image/png","image/gif","image/jpeg","image/svg"],!0,OC.dialogs.FILEPICKER_TYPE_CHOOSE)}}},w=x,y=a(93379),_=a.n(y),S=a(7795),B=a.n(S),D=a(90569),O=a.n(D),E=a(3565),F=a.n(E),G=a(19216),P=a.n(G),j=a(44589),T=a.n(j),I=a(32238),z={};z.styleTagTransform=T(),z.setAttributes=F(),z.insert=O().bind(null,"head"),z.domAPI=B(),z.insertStyleElement=P(),_()(I.Z,z),I.Z&&I.Z.locals&&I.Z.locals;var R=a(51900),U=(0,R.Z)(w,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{staticClass:"background-selector"},[e("button",{staticClass:"background filepicker",class:{active:"custom"===t.background},attrs:{tabindex:"0"},on:{click:t.pickFile}},[t._v("\n\t\t"+t._s(t.t("dashboard","Pick from Files"))+"\n\t")]),t._v(" "),e("button",{staticClass:"background default",class:{"icon-loading":"default"===t.loading,active:"default"===t.background},attrs:{tabindex:"0"},on:{click:t.setDefault}},[t._v("\n\t\t"+t._s(t.t("dashboard","Default image"))+"\n\t")]),t._v(" "),e("button",{staticClass:"background color",class:{active:"custom"===t.background},attrs:{tabindex:"0"},on:{click:t.pickColor}},[t._v("\n\t\t"+t._s(t.t("dashboard","Plain background"))+"\n\t")]),t._v(" "),t._l(t.shippedBackgrounds,(function(n){return e("button",{directives:[{name:"tooltip",rawName:"v-tooltip",value:n.details.attribution,expression:"shippedBackground.details.attribution"}],key:n.name,staticClass:"background",class:{"icon-loading":t.loading===n.name,active:t.background===n.name},style:{"background-image":"url("+n.preview+")"},attrs:{tabindex:"0"},on:{click:function(e){return t.setShipped(n.name)}}})}))],2)}),[],!1,null,"77b70ba2",null).exports,N=(0,s.loadState)("dashboard","panels"),W=(0,s.loadState)("dashboard","firstRun"),q=(0,s.loadState)("dashboard","background"),L=(0,s.loadState)("dashboard","themingDefaultBackground"),M=(0,s.loadState)("dashboard","version"),H=(0,s.loadState)("dashboard","shippedBackgrounds"),Z={weather:{text:t("dashboard","Weather"),icon:"icon-weather-status"},status:{text:t("dashboard","Status"),icon:"icon-user-status-online"}},K={name:"DashboardApp",components:{BackgroundSettings:U,Button:c(),Draggable:u(),Modal:b(),Pencil:g.default},mixins:[C],data:function(){var t,n;return{isAdmin:(0,i.getCurrentUser)().isAdmin,timer:new Date,registeredStatus:[],callbacks:{},callbacksStatus:{},allCallbacksStatus:{},statusInfo:Z,enabledStatuses:(0,s.loadState)("dashboard","statuses"),panels:N,firstRun:W,displayName:null===(t=(0,i.getCurrentUser)())||void 0===t?void 0:t.displayName,uid:null===(n=(0,i.getCurrentUser)())||void 0===n?void 0:n.uid,layout:(0,s.loadState)("dashboard","layout").filter((function(t){return N[t]})),modal:!1,appStoreUrl:(0,r.generateUrl)("/settings/apps/dashboard"),statuses:{},background:q,themingDefaultBackground:L,version:M}},computed:{backgroundImage:function(){return v(this.background,this.version,this.themingDefaultBackground)},backgroundStyle:function(){return"default"===this.background&&"backgroundColor"===this.themingDefaultBackground||this.background.match(/#[0-9A-Fa-f]{6}/g)?null:{backgroundImage:"default"===this.background?"var(--image-main-background)":"url(".concat(this.backgroundImage,")")}},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.default.set(this.statuses,t,{mounted:!0})):console.error("Failed to register panel in the frontend as no backend data was provided for "+t))}}},mounted:function(){var t=this;this.updateGlobalStyles(),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.default.set(this.callbacks,t,n)},registerStatus:function(t,n){var e=this;o.default.set(this.allCallbacksStatus,t,n),this.isStatusActive(t)&&(this.registeredStatus.push(t),this.$nextTick((function(){o.default.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.default.set(this.panels[t],"mounted",!0)):console.error("Failed to register panel in the frontend as no backend data was provided for "+t)))}},saveLayout:function(){d.default.post((0,r.generateUrl)("/apps/dashboard/layout"),{layout:this.layout.join(",")})},saveStatuses:function(){d.default.post((0,r.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.default.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)},updateBackground:function(t){this.background="custom"===t.type||"default"===t.type?t.type:t.value,this.version=t.version,this.updateGlobalStyles()},updateGlobalStyles:function(){var t;"dark"===(null===(t=H[this.background])||void 0===t?void 0:t.theming)?(document.querySelector("#header").style.setProperty("--primary-invert-if-bright","invert(100%)"),document.querySelector("#header").style.setProperty("--color-primary-text","#000000")):(document.querySelector("#header").style.removeProperty("--primary-invert-if-bright"),document.querySelector("#header").style.removeProperty("--color-primary-text"))},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.default.set(this.statuses,t,{mounted:!1}),this.$nextTick((function(){o.default.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")}}},Y=a(23019),$={};$.styleTagTransform=T(),$.setAttributes=F(),$.insert=O().bind(null,"head"),$.domAPI=B(),$.insertStyleElement=P(),_()(Y.Z,$),Y.Z&&Y.Z.locals&&Y.Z.locals;var Q=(0,R.Z)(K,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e("div",{style:t.backgroundStyle,attrs:{id:"app-dashboard"}},[e("h2",[t._v(t._s(t.greeting.text))]),t._v(" "),e("ul",{staticClass:"statuses"},t._l(t.sortedRegisteredStatus,(function(t){return e("div",{key:t,attrs:{id:"status-"+t}},[e("div",{ref:"status-"+t,refInFor:!0})])})),0),t._v(" "),e("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(n){return e("div",{key:t.panels[n].id,staticClass:"panel"},[e("div",{staticClass:"panel--header"},[e("h2",[e("div",{class:t.panels[n].iconClass,attrs:{role:"img"}}),t._v("\n\t\t\t\t\t"+t._s(t.panels[n].title)+"\n\t\t\t\t")])]),t._v(" "),e("div",{staticClass:"panel--content",class:{loading:!t.panels[n].mounted}},[e("div",{ref:t.panels[n].id,refInFor:!0,attrs:{"data-id":t.panels[n].id}})])])})),0),t._v(" "),e("div",{staticClass:"footer"},[e("Button",{on:{click:t.showModal},scopedSlots:t._u([{key:"icon",fn:function(){return[e("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?e("Modal",{attrs:{size:"large"},on:{close:t.closeModal}},[e("div",{staticClass:"modal__content"},[e("h3",[t._v(t._s(t.t("dashboard","Edit widgets")))]),t._v(" "),e("ol",{staticClass:"panels"},t._l(t.sortedAllStatuses,(function(n){return e("li",{key:n,class:"panel-"+n},[e("input",{staticClass:"checkbox",attrs:{id:"status-checkbox-"+n,type:"checkbox"},domProps:{checked:t.isStatusActive(n)},on:{input:function(e){return t.updateStatusCheckbox(n,e.target.checked)}}}),t._v(" "),e("label",{attrs:{for:"status-checkbox-"+n}},[e("div",{class:t.statusInfo[n].icon,attrs:{role:"img"}}),t._v("\n\t\t\t\t\t\t"+t._s(t.statusInfo[n].text)+"\n\t\t\t\t\t")])])})),0),t._v(" "),e("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(n){return e("li",{key:n.id,class:"panel-"+n.id},[e("input",{staticClass:"checkbox",attrs:{id:"panel-checkbox-"+n.id,type:"checkbox"},domProps:{checked:t.isActive(n)},on:{input:function(e){return t.updateCheckbox(n,e.target.checked)}}}),t._v(" "),e("label",{class:{draggable:t.isActive(n)},attrs:{for:"panel-checkbox-"+n.id}},[e("div",{class:n.iconClass,attrs:{role:"img"}}),t._v("\n\t\t\t\t\t\t"+t._s(n.title)+"\n\t\t\t\t\t")])])})),0),t._v(" "),t.isAdmin?e("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(" "),e("h3",[t._v(t._s(t.t("dashboard","Change background image")))]),t._v(" "),e("BackgroundSettings",{attrs:{background:t.background,"theming-default-background":t.themingDefaultBackground},on:{"update:background":t.updateBackground}}),t._v(" "),e("h3",[t._v(t._s(t.t("dashboard","Weather service")))]),t._v(" "),e("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(" "),e("p",{staticClass:"credits--end"},[e("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"),e("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"),e("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,"7837b781",null).exports,J=a(9944),V=a(15168),X=a.n(V);a.nc=btoa((0,i.getRequestToken)()),o.default.directive("Tooltip",X()),o.default.prototype.t=J.translate,window.OCA.Files||(window.OCA.Files={}),Object.assign(window.OCA.Files,{App:{fileList:{filesClient:OC.Files.getClient()}}},window.OCA.Files);var tt=new(o.default.extend(Q))({}).$mount("#app-content-vue");window.OCA.Dashboard={register:function(t,n){return tt.register(t,n)},registerStatus:function(t,n){return tt.registerStatus(t,n)}}},23019:function(t,n,e){var a=e(87537),o=e.n(a),r=e(23645),i=e.n(r)()(o());i.push([t.id,"#app-dashboard[data-v-7837b781]{width:100%;min-height:100vh;background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed;background-color:var(--color-primary)}#app-dashboard>h2[data-v-7837b781]{color:var(--color-primary-text);text-align:center;font-size:32px;line-height:130%;padding:10vh 16px 0px}.panels[data-v-7837b781]{width:auto;margin:auto;max-width:1500px;display:flex;justify-content:center;flex-direction:row;align-items:flex-start;flex-wrap:wrap}.panel[data-v-7837b781],.panels>div[data-v-7837b781]{width:320px;max-width:100%;margin:16px;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-7837b781],#body-user.theme--highcontrast .panels>div[data-v-7837b781]{border:2px solid var(--color-border)}.panel.sortable-ghost[data-v-7837b781],.panels>div.sortable-ghost[data-v-7837b781]{opacity:.1}.panel>.panel--header[data-v-7837b781],.panels>div>.panel--header[data-v-7837b781]{display:flex;z-index:1;top:50px;padding:16px;cursor:grab}.panel>.panel--header[data-v-7837b781],.panel>.panel--header[data-v-7837b781] *,.panels>div>.panel--header[data-v-7837b781],.panels>div>.panel--header[data-v-7837b781] *{-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-7837b781]:active,.panels>div>.panel--header[data-v-7837b781]:active{cursor:grabbing}.panel>.panel--header a[data-v-7837b781],.panels>div>.panel--header a[data-v-7837b781]{flex-grow:1}.panel>.panel--header>h2[data-v-7837b781],.panels>div>.panel--header>h2[data-v-7837b781]{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-7837b781],.panels>div>.panel--header>h2 div[data-v-7837b781]{background-size:32px;width:32px;height:32px;margin-right:16px;background-position:center;float:left;filter:var(--background-invert-if-dark)}.panel>.panel--content[data-v-7837b781],.panels>div>.panel--content[data-v-7837b781]{margin:0 16px 16px 16px;height:424px;overflow:visible}@media only screen and (max-width: 709px){.panel>.panel--content[data-v-7837b781],.panels>div>.panel--content[data-v-7837b781]{height:auto}}.footer[data-v-7837b781]{display:flex;justify-content:center;transition:bottom var(--animation-slow) ease-in-out;bottom:0;padding:44px 0}.edit-panels[data-v-7837b781]{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-7837b781],.button-vue .edit-panels[data-v-7837b781],.statuses[data-v-7837b781] .action-item .action-item__menutoggle,.statuses[data-v-7837b781] .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-7837b781]:hover,.button[data-v-7837b781]:focus,.button[data-v-7837b781]:active,.button-vue .edit-panels[data-v-7837b781]:hover,.button-vue .edit-panels[data-v-7837b781]:focus,.button-vue .edit-panels[data-v-7837b781]:active,.statuses[data-v-7837b781] .action-item .action-item__menutoggle:hover,.statuses[data-v-7837b781] .action-item .action-item__menutoggle:focus,.statuses[data-v-7837b781] .action-item .action-item__menutoggle:active,.statuses[data-v-7837b781] .action-item.action-item--open .action-item__menutoggle:hover,.statuses[data-v-7837b781] .action-item.action-item--open .action-item__menutoggle:focus,.statuses[data-v-7837b781] .action-item.action-item--open .action-item__menutoggle:active{background-color:var(--color-background-hover) !important}.button[data-v-7837b781]:focus-visible,.button-vue .edit-panels[data-v-7837b781]:focus-visible,.statuses[data-v-7837b781] .action-item .action-item__menutoggle:focus-visible,.statuses[data-v-7837b781] .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-7837b781]{padding:32px 16px;text-align:center}.modal__content ol[data-v-7837b781]{display:flex;flex-direction:row;justify-content:center;list-style-type:none;padding-bottom:16px}.modal__content li label[data-v-7837b781]{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-7837b781]{position:absolute;top:16px;width:24px;height:24px;background-size:24px}.modal__content li label[data-v-7837b781]:hover{border-color:var(--color-primary)}.modal__content li:not(.panel-status) label div[data-v-7837b781]{filter:var(--background-invert-if-dark)}.modal__content li input[type=checkbox].checkbox+label[data-v-7837b781]:before{position:absolute;right:12px;top:16px}.modal__content li input:focus+label[data-v-7837b781]{border-color:var(--color-primary)}.modal__content h3[data-v-7837b781]{font-weight:bold}.modal__content h3[data-v-7837b781]:not(:first-of-type){margin-top:64px}.modal__content .button[data-v-7837b781]{display:inline-block;padding:10px 16px;margin:0}.modal__content p[data-v-7837b781]{max-width:650px;margin:0 auto}.modal__content p a[data-v-7837b781]:hover,.modal__content p a[data-v-7837b781]:focus{border-bottom:2px solid var(--color-border)}.modal__content .credits--end[data-v-7837b781]{padding-bottom:32px;color:var(--color-text-maxcontrast)}.modal__content .credits--end a[data-v-7837b781]{color:var(--color-text-maxcontrast)}.flip-list-move[data-v-7837b781]{transition:transform var(--animation-slow)}.statuses[data-v-7837b781]{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;margin-bottom:36px}.statuses>div[data-v-7837b781]{margin:8px}","",{version:3,sources:["webpack://./apps/dashboard/src/DashboardApp.vue"],names:[],mappings:"AAqaA,gCACC,UAAA,CACA,gBAAA,CACA,qBAAA,CACA,iCAAA,CACA,2BAAA,CACA,2BAAA,CACA,qCAAA,CAEA,mCACC,+BAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,qBAAA,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,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,4KACC,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,CACA,uCAAA,CAKH,qFACC,uBAAA,CACA,YAAA,CAEA,gBAAA,CAID,0CACC,qFACC,WAAA,CAAA,CAKH,yBACC,YAAA,CACA,sBAAA,CACA,mDAAA,CACA,QAAA,CACA,cAAA,CAGD,8BACC,oBAAA,CACA,WAAA,CACA,+BAAA,CACA,iBAAA,CACA,iBAAA,CACA,uCAAA,CACA,eAAA,CACA,SAAA,CACA,iBAAA,CAGD,yNAKC,kDAAA,CACA,qDAAA,CACA,6CAAA,CACA,oBAAA,CAEA,utBAGC,yDAAA,CAED,iRACC,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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n#app-dashboard {\n\twidth: 100%;\n\tmin-height: 100vh;\n\tbackground-size: cover;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n\tbackground-attachment: fixed;\n\tbackground-color: var(--color-primary);\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: 10vh 16px 0px;\n\t}\n}\n\n.panels {\n\twidth: auto;\n\tmargin: auto;\n\tmax-width: 1500px;\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\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\tfilter: var(--background-invert-if-dark);\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\tbottom: 0;\n\tpadding: 44px 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=i},32238:function(t,n,e){var a=e(87537),o=e.n(a),r=e(23645),i=e.n(r)()(o());i.push([t.id,'.background-selector[data-v-77b70ba2]{display:flex;flex-wrap:wrap;justify-content:center}.background-selector .background[data-v-77b70ba2]{width:176px;height:96px;margin:8px;background-size:cover;background-position:center center;text-align:center;border-radius:var(--border-radius-large);border:2px solid var(--color-main-background);overflow:hidden}.background-selector .background.current[data-v-77b70ba2]{background-image:var(--color-background-dark)}.background-selector .background.filepicker[data-v-77b70ba2],.background-selector .background.default[data-v-77b70ba2],.background-selector .background.color[data-v-77b70ba2]{border-color:var(--color-border)}.background-selector .background.color[data-v-77b70ba2]{background-color:var(--color-primary);color:var(--color-primary-text)}.background-selector .background.active[data-v-77b70ba2],.background-selector .background[data-v-77b70ba2]:hover,.background-selector .background[data-v-77b70ba2]:focus{border:2px solid var(--color-primary)}.background-selector .background.active[data-v-77b70ba2]:not(.icon-loading):after{background-image:var(--icon-checkmark-white);background-repeat:no-repeat;background-position:center;background-size:44px;content:"";display:block;height:100%}',"",{version:3,sources:["webpack://./apps/dashboard/src/components/BackgroundSettings.vue"],names:[],mappings:"AA4IA,sCACC,YAAA,CACA,cAAA,CACA,sBAAA,CAEA,kDACC,WAAA,CACA,WAAA,CACA,UAAA,CACA,qBAAA,CACA,iCAAA,CACA,iBAAA,CACA,wCAAA,CACA,6CAAA,CACA,eAAA,CAEA,0DACC,6CAAA,CAGD,+KACC,gCAAA,CAGD,wDACC,qCAAA,CACA,+BAAA,CAGD,yKAGC,qCAAA,CAGD,kFACC,4CAAA,CACA,2BAAA,CACA,0BAAA,CACA,oBAAA,CACA,UAAA,CACA,aAAA,CACA,WAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.background-selector {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tjustify-content: center;\n\n\t.background {\n\t\twidth: 176px;\n\t\theight: 96px;\n\t\tmargin: 8px;\n\t\tbackground-size: cover;\n\t\tbackground-position: center center;\n\t\ttext-align: center;\n\t\tborder-radius: var(--border-radius-large);\n\t\tborder: 2px solid var(--color-main-background);\n\t\toverflow: hidden;\n\n\t\t&.current {\n\t\t\tbackground-image: var(--color-background-dark);\n\t\t}\n\n\t\t&.filepicker, &.default, &.color {\n\t\t\tborder-color: var(--color-border);\n\t\t}\n\n\t\t&.color {\n\t\t\tbackground-color: var(--color-primary);\n\t\t\tcolor: var(--color-primary-text);\n\t\t}\n\n\t\t&.active,\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tborder: 2px solid var(--color-primary);\n\t\t}\n\n\t\t&.active:not(.icon-loading):after {\n\t\t\tbackground-image: var(--icon-checkmark-white);\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tbackground-size: 44px;\n\t\t\tcontent: '';\n\t\t\tdisplay: block;\n\t\t\theight: 100%;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]),n.Z=i}},a={};function o(t){var n=a[t];if(void 0!==n)return n.exports;var r=a[t]={id:t,loaded:!1,exports:{}};return e[t].call(r.exports,r,r.exports,o),r.loaded=!0,r.exports}o.m=e,o.amdD=function(){throw new Error("define cannot be used indirect")},o.amdO={},n=[],o.O=function(t,e,a,r){if(!e){var i=1/0;for(c=0;c=r)&&Object.keys(o.O).every((function(t){return o.O[t](e[d])}))?e.splice(d--,1):(s=!1,r0&&n[c-1][2]>r;c--)n[c]=n[c-1];n[c]=[e,a,r]},o.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(n,{a:n}),n},o.d=function(t,n){for(var e in n)o.o(n,e)&&!o.o(t,e)&&Object.defineProperty(t,e,{enumerable:!0,get:n[e]})},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),o.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t},o.j=4773,function(){o.b=document.baseURI||self.location.href;var t={4773:0};o.O.j=function(n){return 0===t[n]};var n=function(n,e){var a,r,i=e[0],s=e[1],d=e[2],l=0;if(i.some((function(n){return 0!==t[n]}))){for(a in s)o.o(s,a)&&(o.m[a]=s[a]);if(d)var c=d(o)}for(n&&n(e);l 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 * @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\nimport { generateFilePath } from '@nextcloud/router'\n\nexport default (url) => generateFilePath('dashboard', '', 'img/') + url\n","/**\n * @copyright Copyright (c) 2020 Julius Härtl \n *\n * @author Avior \n * @author Julien Veyssier \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 { generateUrl } from '@nextcloud/router'\nimport prefixWithBaseUrl from './prefixWithBaseUrl'\n\nexport default (background, time = 0, themingDefaultBackground = '') => {\n\tconst enabledThemes = window.OCA?.Theming?.enabledThemes || []\n\tconst isDarkTheme = (enabledThemes.length === 0 || enabledThemes[0] === 'default')\n\t\t? window.matchMedia('(prefers-color-scheme: dark)').matches\n\t\t: enabledThemes.join('').indexOf('dark') !== -1\n\n\tif (background === 'default') {\n\t\tif (themingDefaultBackground && themingDefaultBackground !== 'backgroundColor') {\n\t\t\treturn generateUrl('/apps/theming/image/background') + '?v=' + window.OCA.Theming.cacheBuster\n\t\t}\n\n\t\tif (isDarkTheme) {\n\t\t\treturn prefixWithBaseUrl('eduardo-neves-pedra-azul.jpg')\n\t\t}\n\n\t\treturn prefixWithBaseUrl('kamil-porembinski-clouds.jpg')\n\t} else if (background === 'custom') {\n\t\treturn generateUrl('/apps/dashboard/background') + '?v=' + time\n\t}\n\n\treturn prefixWithBaseUrl(background)\n}\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!./BackgroundSettings.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!./BackgroundSettings.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!./BackgroundSettings.vue?vue&type=style&index=0&id=77b70ba2&scoped=true&lang=scss&\";\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!./BackgroundSettings.vue?vue&type=style&index=0&id=77b70ba2&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./BackgroundSettings.vue?vue&type=template&id=77b70ba2&scoped=true&\"\nimport script from \"./BackgroundSettings.vue?vue&type=script&lang=js&\"\nexport * from \"./BackgroundSettings.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BackgroundSettings.vue?vue&type=style&index=0&id=77b70ba2&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"77b70ba2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"background-selector\"},[_c('button',{staticClass:\"background filepicker\",class:{ active: _vm.background === 'custom' },attrs:{\"tabindex\":\"0\"},on:{\"click\":_vm.pickFile}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('dashboard', 'Pick from Files'))+\"\\n\\t\")]),_vm._v(\" \"),_c('button',{staticClass:\"background default\",class:{ 'icon-loading': _vm.loading === 'default', active: _vm.background === 'default' },attrs:{\"tabindex\":\"0\"},on:{\"click\":_vm.setDefault}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('dashboard', 'Default image'))+\"\\n\\t\")]),_vm._v(\" \"),_c('button',{staticClass:\"background color\",class:{ active: _vm.background === 'custom' },attrs:{\"tabindex\":\"0\"},on:{\"click\":_vm.pickColor}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('dashboard', 'Plain background'))+\"\\n\\t\")]),_vm._v(\" \"),_vm._l((_vm.shippedBackgrounds),function(shippedBackground){return _c('button',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(shippedBackground.details.attribution),expression:\"shippedBackground.details.attribution\"}],key:shippedBackground.name,staticClass:\"background\",class:{ 'icon-loading': _vm.loading === shippedBackground.name, active: _vm.background === shippedBackground.name },style:({ 'background-image': 'url(' + shippedBackground.preview + ')' }),attrs:{\"tabindex\":\"0\"},on:{\"click\":function($event){return _vm.setShipped(shippedBackground.name)}}})})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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=5d4b2fb6&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=5d4b2fb6&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DashboardApp.vue?vue&type=template&id=5d4b2fb6&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=5d4b2fb6&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5d4b2fb6\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{style:(_vm.backgroundStyle),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:{\"role\":\"img\"}}),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.panels[panelId].title)+\"\\n\\t\\t\\t\\t\")])]),_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('Button',{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('Modal',{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', 'Change background image')))]),_vm._v(\" \"),_c('BackgroundSettings',{attrs:{\"background\":_vm.background,\"theming-default-background\":_vm.themingDefaultBackground},on:{\"update:background\":_vm.updateBackground}}),_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)}\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-5d4b2fb6]{width:100%;min-height:100vh;background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed;background-color:var(--color-primary);--color-background-translucent: rgba(var(--color-main-background-rgb), 0.8);--background-blur: blur(10px)}#app-dashboard>h2[data-v-5d4b2fb6]{color:var(--color-primary-text);text-align:center;font-size:32px;line-height:130%;padding:10vh 16px 0px}.panels[data-v-5d4b2fb6]{width:auto;margin:auto;max-width:1500px;display:flex;justify-content:center;flex-direction:row;align-items:flex-start;flex-wrap:wrap}.panel[data-v-5d4b2fb6],.panels>div[data-v-5d4b2fb6]{width:320px;max-width:100%;margin:16px;background-color:var(--color-background-translucent);-webkit-backdrop-filter:var(--background-blur);backdrop-filter:var(--background-blur);border-radius:var(--border-radius-large)}#body-user.theme--highcontrast .panel[data-v-5d4b2fb6],#body-user.theme--highcontrast .panels>div[data-v-5d4b2fb6]{border:2px solid var(--color-border)}.panel.sortable-ghost[data-v-5d4b2fb6],.panels>div.sortable-ghost[data-v-5d4b2fb6]{opacity:.1}.panel>.panel--header[data-v-5d4b2fb6],.panels>div>.panel--header[data-v-5d4b2fb6]{display:flex;z-index:1;top:50px;padding:16px;cursor:grab}.panel>.panel--header[data-v-5d4b2fb6],.panel>.panel--header[data-v-5d4b2fb6] *,.panels>div>.panel--header[data-v-5d4b2fb6],.panels>div>.panel--header[data-v-5d4b2fb6] *{-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-5d4b2fb6]:active,.panels>div>.panel--header[data-v-5d4b2fb6]:active{cursor:grabbing}.panel>.panel--header a[data-v-5d4b2fb6],.panels>div>.panel--header a[data-v-5d4b2fb6]{flex-grow:1}.panel>.panel--header>h2[data-v-5d4b2fb6],.panels>div>.panel--header>h2[data-v-5d4b2fb6]{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-5d4b2fb6],.panels>div>.panel--header>h2 div[data-v-5d4b2fb6]{background-size:32px;width:32px;height:32px;margin-right:16px;background-position:center;float:left;filter:var(--background-invert-if-dark)}.panel>.panel--content[data-v-5d4b2fb6],.panels>div>.panel--content[data-v-5d4b2fb6]{margin:0 16px 16px 16px;height:424px;overflow:visible}@media only screen and (max-width: 709px){.panel>.panel--content[data-v-5d4b2fb6],.panels>div>.panel--content[data-v-5d4b2fb6]{height:auto}}.footer[data-v-5d4b2fb6]{display:flex;justify-content:center;transition:bottom var(--animation-slow) ease-in-out;bottom:0;padding:44px 0}.edit-panels[data-v-5d4b2fb6]{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-5d4b2fb6],.button-vue .edit-panels[data-v-5d4b2fb6],.statuses[data-v-5d4b2fb6] .action-item .action-item__menutoggle,.statuses[data-v-5d4b2fb6] .action-item.action-item--open .action-item__menutoggle{background-color:var(--color-background-translucent);-webkit-backdrop-filter:var(--background-blur);backdrop-filter:var(--background-blur);opacity:1 !important}.button[data-v-5d4b2fb6]:hover,.button[data-v-5d4b2fb6]:focus,.button[data-v-5d4b2fb6]:active,.button-vue .edit-panels[data-v-5d4b2fb6]:hover,.button-vue .edit-panels[data-v-5d4b2fb6]:focus,.button-vue .edit-panels[data-v-5d4b2fb6]:active,.statuses[data-v-5d4b2fb6] .action-item .action-item__menutoggle:hover,.statuses[data-v-5d4b2fb6] .action-item .action-item__menutoggle:focus,.statuses[data-v-5d4b2fb6] .action-item .action-item__menutoggle:active,.statuses[data-v-5d4b2fb6] .action-item.action-item--open .action-item__menutoggle:hover,.statuses[data-v-5d4b2fb6] .action-item.action-item--open .action-item__menutoggle:focus,.statuses[data-v-5d4b2fb6] .action-item.action-item--open .action-item__menutoggle:active{background-color:var(--color-background-hover) !important}.button[data-v-5d4b2fb6]:focus-visible,.button-vue .edit-panels[data-v-5d4b2fb6]:focus-visible,.statuses[data-v-5d4b2fb6] .action-item .action-item__menutoggle:focus-visible,.statuses[data-v-5d4b2fb6] .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-5d4b2fb6]{padding:32px 16px;text-align:center}.modal__content ol[data-v-5d4b2fb6]{display:flex;flex-direction:row;justify-content:center;list-style-type:none;padding-bottom:16px}.modal__content li label[data-v-5d4b2fb6]{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-5d4b2fb6]{position:absolute;top:16px;width:24px;height:24px;background-size:24px}.modal__content li label[data-v-5d4b2fb6]:hover{border-color:var(--color-primary)}.modal__content li:not(.panel-status) label div[data-v-5d4b2fb6]{filter:var(--background-invert-if-dark)}.modal__content li input[type=checkbox].checkbox+label[data-v-5d4b2fb6]:before{position:absolute;right:12px;top:16px}.modal__content li input:focus+label[data-v-5d4b2fb6]{border-color:var(--color-primary)}.modal__content h3[data-v-5d4b2fb6]{font-weight:bold}.modal__content h3[data-v-5d4b2fb6]:not(:first-of-type){margin-top:64px}.modal__content .button[data-v-5d4b2fb6]{display:inline-block;padding:10px 16px;margin:0}.modal__content p[data-v-5d4b2fb6]{max-width:650px;margin:0 auto}.modal__content p a[data-v-5d4b2fb6]:hover,.modal__content p a[data-v-5d4b2fb6]:focus{border-bottom:2px solid var(--color-border)}.modal__content .credits--end[data-v-5d4b2fb6]{padding-bottom:32px;color:var(--color-text-maxcontrast)}.modal__content .credits--end a[data-v-5d4b2fb6]{color:var(--color-text-maxcontrast)}.flip-list-move[data-v-5d4b2fb6]{transition:transform var(--animation-slow)}.statuses[data-v-5d4b2fb6]{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;margin-bottom:36px}.statuses>div[data-v-5d4b2fb6]{margin:8px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/dashboard/src/DashboardApp.vue\"],\"names\":[],\"mappings\":\"AAoaA,gCACC,UAAA,CACA,gBAAA,CACA,qBAAA,CACA,iCAAA,CACA,2BAAA,CACA,2BAAA,CACA,qCAAA,CACA,2EAAA,CACA,6BAAA,CAEA,mCACC,+BAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,qBAAA,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,oDAAA,CACA,8CAAA,CACA,sCAAA,CACA,wCAAA,CAEA,mHACC,oCAAA,CAGD,mFACE,UAAA,CAGF,mFACC,YAAA,CACA,SAAA,CACA,QAAA,CACA,YAAA,CACA,WAAA,CAEA,4KACC,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,CACA,uCAAA,CAKH,qFACC,uBAAA,CACA,YAAA,CAEA,gBAAA,CAID,0CACC,qFACC,WAAA,CAAA,CAKH,yBACC,YAAA,CACA,sBAAA,CACA,mDAAA,CACA,QAAA,CACA,cAAA,CAGD,8BACC,oBAAA,CACA,WAAA,CACA,+BAAA,CACA,iBAAA,CACA,iBAAA,CACA,uCAAA,CACA,eAAA,CACA,SAAA,CACA,iBAAA,CAGD,yNAKC,oDAAA,CACA,8CAAA,CACA,sCAAA,CACA,oBAAA,CAEA,utBAGC,yDAAA,CAED,iRACC,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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n#app-dashboard {\\n\\twidth: 100%;\\n\\tmin-height: 100vh;\\n\\tbackground-size: cover;\\n\\tbackground-position: center center;\\n\\tbackground-repeat: no-repeat;\\n\\tbackground-attachment: fixed;\\n\\tbackground-color: var(--color-primary);\\n\\t--color-background-translucent: rgba(var(--color-main-background-rgb), 0.8);\\n\\t--background-blur: blur(10px);\\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: 10vh 16px 0px;\\n\\t}\\n}\\n\\n.panels {\\n\\twidth: auto;\\n\\tmargin: auto;\\n\\tmax-width: 1500px;\\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\\tbackground-color: var(--color-background-translucent);\\n\\t-webkit-backdrop-filter: var(--background-blur);\\n\\tbackdrop-filter: var(--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\\tfilter: var(--background-invert-if-dark);\\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\\tbottom: 0;\\n\\tpadding: 44px 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-background-translucent);\\n\\t-webkit-backdrop-filter: var(--background-blur);\\n\\tbackdrop-filter: var(--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, \".background-selector[data-v-77b70ba2]{display:flex;flex-wrap:wrap;justify-content:center}.background-selector .background[data-v-77b70ba2]{width:176px;height:96px;margin:8px;background-size:cover;background-position:center center;text-align:center;border-radius:var(--border-radius-large);border:2px solid var(--color-main-background);overflow:hidden}.background-selector .background.current[data-v-77b70ba2]{background-image:var(--color-background-dark)}.background-selector .background.filepicker[data-v-77b70ba2],.background-selector .background.default[data-v-77b70ba2],.background-selector .background.color[data-v-77b70ba2]{border-color:var(--color-border)}.background-selector .background.color[data-v-77b70ba2]{background-color:var(--color-primary);color:var(--color-primary-text)}.background-selector .background.active[data-v-77b70ba2],.background-selector .background[data-v-77b70ba2]:hover,.background-selector .background[data-v-77b70ba2]:focus{border:2px solid var(--color-primary)}.background-selector .background.active[data-v-77b70ba2]:not(.icon-loading):after{background-image:var(--icon-checkmark-white);background-repeat:no-repeat;background-position:center;background-size:44px;content:\\\"\\\";display:block;height:100%}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/dashboard/src/components/BackgroundSettings.vue\"],\"names\":[],\"mappings\":\"AA4IA,sCACC,YAAA,CACA,cAAA,CACA,sBAAA,CAEA,kDACC,WAAA,CACA,WAAA,CACA,UAAA,CACA,qBAAA,CACA,iCAAA,CACA,iBAAA,CACA,wCAAA,CACA,6CAAA,CACA,eAAA,CAEA,0DACC,6CAAA,CAGD,+KACC,gCAAA,CAGD,wDACC,qCAAA,CACA,+BAAA,CAGD,yKAGC,qCAAA,CAGD,kFACC,4CAAA,CACA,2BAAA,CACA,0BAAA,CACA,oBAAA,CACA,UAAA,CACA,aAAA,CACA,WAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.background-selector {\\n\\tdisplay: flex;\\n\\tflex-wrap: wrap;\\n\\tjustify-content: center;\\n\\n\\t.background {\\n\\t\\twidth: 176px;\\n\\t\\theight: 96px;\\n\\t\\tmargin: 8px;\\n\\t\\tbackground-size: cover;\\n\\t\\tbackground-position: center center;\\n\\t\\ttext-align: center;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\tborder: 2px solid var(--color-main-background);\\n\\t\\toverflow: hidden;\\n\\n\\t\\t&.current {\\n\\t\\t\\tbackground-image: var(--color-background-dark);\\n\\t\\t}\\n\\n\\t\\t&.filepicker, &.default, &.color {\\n\\t\\t\\tborder-color: var(--color-border);\\n\\t\\t}\\n\\n\\t\\t&.color {\\n\\t\\t\\tbackground-color: var(--color-primary);\\n\\t\\t\\tcolor: var(--color-primary-text);\\n\\t\\t}\\n\\n\\t\\t&.active,\\n\\t\\t&:hover,\\n\\t\\t&:focus {\\n\\t\\t\\tborder: 2px solid var(--color-primary);\\n\\t\\t}\\n\\n\\t\\t&.active:not(.icon-loading):after {\\n\\t\\t\\tbackground-image: var(--icon-checkmark-white);\\n\\t\\t\\tbackground-repeat: no-repeat;\\n\\t\\t\\tbackground-position: center;\\n\\t\\t\\tbackground-size: 44px;\\n\\t\\t\\tcontent: '';\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\theight: 100%;\\n\\t\\t}\\n\\t}\\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","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// 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__(90422); })\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","url","generateFilePath","background","time","themingDefaultBackground","enabledThemes","OCA","Theming","isDarkTheme","length","matchMedia","matches","join","indexOf","generateUrl","cacheBuster","prefixWithBaseUrl","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","_h","$createElement","_c","_self","staticClass","class","active","attrs","on","pickFile","_v","_s","t","loading","setDefault","pickColor","_l","shippedBackground","directives","name","rawName","value","details","expression","key","style","preview","$event","setShipped","greeting","text","status","ref","refInFor","_b","saveLayout","model","callback","$$v","layout","swapThreshold","delay","delayOnTouchOnly","touchStartThreshold","panelId","panels","id","iconClass","title","mounted","showModal","scopedSlots","_u","fn","proxy","closeModal","domProps","isStatusActive","updateStatusCheckbox","target","checked","statusInfo","icon","panel","isActive","updateCheckbox","draggable","appStoreUrl","_e","updateBackground","__webpack_nonce__","btoa","getRequestToken","Vue","VTooltip","Files","Object","assign","App","fileList","filesClient","OC","getClient","Instance","DashboardApp","$mount","Dashboard","register","app","registerStatus","___CSS_LOADER_EXPORT___","push","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","call","m","amdD","Error","amdO","O","result","chunkIds","priority","notFulfilled","Infinity","i","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=71b0e6601827409249ae","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/helpers/prefixWithBaseUrl.js","webpack:///nextcloud/apps/dashboard/src/helpers/getBackgroundUrl.js","webpack:///nextcloud/apps/dashboard/src/components/BackgroundSettings.vue","webpack:///nextcloud/apps/dashboard/src/components/BackgroundSettings.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/dashboard/src/components/BackgroundSettings.vue?fc0a","webpack://nextcloud/./apps/dashboard/src/components/BackgroundSettings.vue?20a7","webpack:///nextcloud/apps/dashboard/src/components/BackgroundSettings.vue?vue&type=template&id=77b70ba2&scoped=true&","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?4632","webpack://nextcloud/./apps/dashboard/src/DashboardApp.vue?5685","webpack:///nextcloud/apps/dashboard/src/DashboardApp.vue?vue&type=template&id=7837b781&scoped=true&","webpack:///nextcloud/apps/dashboard/src/main.js","webpack:///nextcloud/apps/dashboard/src/DashboardApp.vue?vue&type=style&index=0&id=7837b781&lang=scss&scoped=true&","webpack:///nextcloud/apps/dashboard/src/components/BackgroundSettings.vue?vue&type=style&index=0&id=77b70ba2&scoped=true&lang=scss&","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/amd define","webpack:///nextcloud/webpack/runtime/amd options","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 * @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\nimport { generateFilePath } from '@nextcloud/router'\n\nexport default (url) => generateFilePath('dashboard', '', 'img/') + url\n","/**\n * @copyright Copyright (c) 2020 Julius Härtl \n *\n * @author Avior \n * @author Julien Veyssier \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 { generateUrl } from '@nextcloud/router'\nimport prefixWithBaseUrl from './prefixWithBaseUrl'\n\nexport default (background, time = 0, themingDefaultBackground = '') => {\n\tconst enabledThemes = window.OCA?.Theming?.enabledThemes || []\n\tconst isDarkTheme = (enabledThemes.length === 0 || enabledThemes[0] === 'default')\n\t\t? window.matchMedia('(prefers-color-scheme: dark)').matches\n\t\t: enabledThemes.join('').indexOf('dark') !== -1\n\n\tif (background === 'default') {\n\t\tif (themingDefaultBackground && themingDefaultBackground !== 'backgroundColor') {\n\t\t\treturn generateUrl('/apps/theming/image/background') + '?v=' + window.OCA.Theming.cacheBuster\n\t\t}\n\n\t\tif (isDarkTheme) {\n\t\t\treturn prefixWithBaseUrl('eduardo-neves-pedra-azul.jpg')\n\t\t}\n\n\t\treturn prefixWithBaseUrl('kamil-porembinski-clouds.jpg')\n\t} else if (background === 'custom') {\n\t\treturn generateUrl('/apps/dashboard/background') + '?v=' + time\n\t}\n\n\treturn prefixWithBaseUrl(background)\n}\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!./BackgroundSettings.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!./BackgroundSettings.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!./BackgroundSettings.vue?vue&type=style&index=0&id=77b70ba2&scoped=true&lang=scss&\";\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!./BackgroundSettings.vue?vue&type=style&index=0&id=77b70ba2&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./BackgroundSettings.vue?vue&type=template&id=77b70ba2&scoped=true&\"\nimport script from \"./BackgroundSettings.vue?vue&type=script&lang=js&\"\nexport * from \"./BackgroundSettings.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BackgroundSettings.vue?vue&type=style&index=0&id=77b70ba2&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"77b70ba2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"background-selector\"},[_c('button',{staticClass:\"background filepicker\",class:{ active: _vm.background === 'custom' },attrs:{\"tabindex\":\"0\"},on:{\"click\":_vm.pickFile}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('dashboard', 'Pick from Files'))+\"\\n\\t\")]),_vm._v(\" \"),_c('button',{staticClass:\"background default\",class:{ 'icon-loading': _vm.loading === 'default', active: _vm.background === 'default' },attrs:{\"tabindex\":\"0\"},on:{\"click\":_vm.setDefault}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('dashboard', 'Default image'))+\"\\n\\t\")]),_vm._v(\" \"),_c('button',{staticClass:\"background color\",class:{ active: _vm.background === 'custom' },attrs:{\"tabindex\":\"0\"},on:{\"click\":_vm.pickColor}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('dashboard', 'Plain background'))+\"\\n\\t\")]),_vm._v(\" \"),_vm._l((_vm.shippedBackgrounds),function(shippedBackground){return _c('button',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(shippedBackground.details.attribution),expression:\"shippedBackground.details.attribution\"}],key:shippedBackground.name,staticClass:\"background\",class:{ 'icon-loading': _vm.loading === shippedBackground.name, active: _vm.background === shippedBackground.name },style:({ 'background-image': 'url(' + shippedBackground.preview + ')' }),attrs:{\"tabindex\":\"0\"},on:{\"click\":function($event){return _vm.setShipped(shippedBackground.name)}}})})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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=7837b781&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=7837b781&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DashboardApp.vue?vue&type=template&id=7837b781&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=7837b781&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7837b781\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{style:(_vm.backgroundStyle),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:{\"role\":\"img\"}}),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.panels[panelId].title)+\"\\n\\t\\t\\t\\t\")])]),_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('Button',{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('Modal',{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', 'Change background image')))]),_vm._v(\" \"),_c('BackgroundSettings',{attrs:{\"background\":_vm.background,\"theming-default-background\":_vm.themingDefaultBackground},on:{\"update:background\":_vm.updateBackground}}),_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)}\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-7837b781]{width:100%;min-height:100vh;background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed;background-color:var(--color-primary)}#app-dashboard>h2[data-v-7837b781]{color:var(--color-primary-text);text-align:center;font-size:32px;line-height:130%;padding:10vh 16px 0px}.panels[data-v-7837b781]{width:auto;margin:auto;max-width:1500px;display:flex;justify-content:center;flex-direction:row;align-items:flex-start;flex-wrap:wrap}.panel[data-v-7837b781],.panels>div[data-v-7837b781]{width:320px;max-width:100%;margin:16px;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-7837b781],#body-user.theme--highcontrast .panels>div[data-v-7837b781]{border:2px solid var(--color-border)}.panel.sortable-ghost[data-v-7837b781],.panels>div.sortable-ghost[data-v-7837b781]{opacity:.1}.panel>.panel--header[data-v-7837b781],.panels>div>.panel--header[data-v-7837b781]{display:flex;z-index:1;top:50px;padding:16px;cursor:grab}.panel>.panel--header[data-v-7837b781],.panel>.panel--header[data-v-7837b781] *,.panels>div>.panel--header[data-v-7837b781],.panels>div>.panel--header[data-v-7837b781] *{-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-7837b781]:active,.panels>div>.panel--header[data-v-7837b781]:active{cursor:grabbing}.panel>.panel--header a[data-v-7837b781],.panels>div>.panel--header a[data-v-7837b781]{flex-grow:1}.panel>.panel--header>h2[data-v-7837b781],.panels>div>.panel--header>h2[data-v-7837b781]{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-7837b781],.panels>div>.panel--header>h2 div[data-v-7837b781]{background-size:32px;width:32px;height:32px;margin-right:16px;background-position:center;float:left;filter:var(--background-invert-if-dark)}.panel>.panel--content[data-v-7837b781],.panels>div>.panel--content[data-v-7837b781]{margin:0 16px 16px 16px;height:424px;overflow:visible}@media only screen and (max-width: 709px){.panel>.panel--content[data-v-7837b781],.panels>div>.panel--content[data-v-7837b781]{height:auto}}.footer[data-v-7837b781]{display:flex;justify-content:center;transition:bottom var(--animation-slow) ease-in-out;bottom:0;padding:44px 0}.edit-panels[data-v-7837b781]{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-7837b781],.button-vue .edit-panels[data-v-7837b781],.statuses[data-v-7837b781] .action-item .action-item__menutoggle,.statuses[data-v-7837b781] .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-7837b781]:hover,.button[data-v-7837b781]:focus,.button[data-v-7837b781]:active,.button-vue .edit-panels[data-v-7837b781]:hover,.button-vue .edit-panels[data-v-7837b781]:focus,.button-vue .edit-panels[data-v-7837b781]:active,.statuses[data-v-7837b781] .action-item .action-item__menutoggle:hover,.statuses[data-v-7837b781] .action-item .action-item__menutoggle:focus,.statuses[data-v-7837b781] .action-item .action-item__menutoggle:active,.statuses[data-v-7837b781] .action-item.action-item--open .action-item__menutoggle:hover,.statuses[data-v-7837b781] .action-item.action-item--open .action-item__menutoggle:focus,.statuses[data-v-7837b781] .action-item.action-item--open .action-item__menutoggle:active{background-color:var(--color-background-hover) !important}.button[data-v-7837b781]:focus-visible,.button-vue .edit-panels[data-v-7837b781]:focus-visible,.statuses[data-v-7837b781] .action-item .action-item__menutoggle:focus-visible,.statuses[data-v-7837b781] .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-7837b781]{padding:32px 16px;text-align:center}.modal__content ol[data-v-7837b781]{display:flex;flex-direction:row;justify-content:center;list-style-type:none;padding-bottom:16px}.modal__content li label[data-v-7837b781]{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-7837b781]{position:absolute;top:16px;width:24px;height:24px;background-size:24px}.modal__content li label[data-v-7837b781]:hover{border-color:var(--color-primary)}.modal__content li:not(.panel-status) label div[data-v-7837b781]{filter:var(--background-invert-if-dark)}.modal__content li input[type=checkbox].checkbox+label[data-v-7837b781]:before{position:absolute;right:12px;top:16px}.modal__content li input:focus+label[data-v-7837b781]{border-color:var(--color-primary)}.modal__content h3[data-v-7837b781]{font-weight:bold}.modal__content h3[data-v-7837b781]:not(:first-of-type){margin-top:64px}.modal__content .button[data-v-7837b781]{display:inline-block;padding:10px 16px;margin:0}.modal__content p[data-v-7837b781]{max-width:650px;margin:0 auto}.modal__content p a[data-v-7837b781]:hover,.modal__content p a[data-v-7837b781]:focus{border-bottom:2px solid var(--color-border)}.modal__content .credits--end[data-v-7837b781]{padding-bottom:32px;color:var(--color-text-maxcontrast)}.modal__content .credits--end a[data-v-7837b781]{color:var(--color-text-maxcontrast)}.flip-list-move[data-v-7837b781]{transition:transform var(--animation-slow)}.statuses[data-v-7837b781]{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;margin-bottom:36px}.statuses>div[data-v-7837b781]{margin:8px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/dashboard/src/DashboardApp.vue\"],\"names\":[],\"mappings\":\"AAqaA,gCACC,UAAA,CACA,gBAAA,CACA,qBAAA,CACA,iCAAA,CACA,2BAAA,CACA,2BAAA,CACA,qCAAA,CAEA,mCACC,+BAAA,CACA,iBAAA,CACA,cAAA,CACA,gBAAA,CACA,qBAAA,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,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,4KACC,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,CACA,uCAAA,CAKH,qFACC,uBAAA,CACA,YAAA,CAEA,gBAAA,CAID,0CACC,qFACC,WAAA,CAAA,CAKH,yBACC,YAAA,CACA,sBAAA,CACA,mDAAA,CACA,QAAA,CACA,cAAA,CAGD,8BACC,oBAAA,CACA,WAAA,CACA,+BAAA,CACA,iBAAA,CACA,iBAAA,CACA,uCAAA,CACA,eAAA,CACA,SAAA,CACA,iBAAA,CAGD,yNAKC,kDAAA,CACA,qDAAA,CACA,6CAAA,CACA,oBAAA,CAEA,utBAGC,yDAAA,CAED,iRACC,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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n#app-dashboard {\\n\\twidth: 100%;\\n\\tmin-height: 100vh;\\n\\tbackground-size: cover;\\n\\tbackground-position: center center;\\n\\tbackground-repeat: no-repeat;\\n\\tbackground-attachment: fixed;\\n\\tbackground-color: var(--color-primary);\\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: 10vh 16px 0px;\\n\\t}\\n}\\n\\n.panels {\\n\\twidth: auto;\\n\\tmargin: auto;\\n\\tmax-width: 1500px;\\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\\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\\tfilter: var(--background-invert-if-dark);\\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\\tbottom: 0;\\n\\tpadding: 44px 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, \".background-selector[data-v-77b70ba2]{display:flex;flex-wrap:wrap;justify-content:center}.background-selector .background[data-v-77b70ba2]{width:176px;height:96px;margin:8px;background-size:cover;background-position:center center;text-align:center;border-radius:var(--border-radius-large);border:2px solid var(--color-main-background);overflow:hidden}.background-selector .background.current[data-v-77b70ba2]{background-image:var(--color-background-dark)}.background-selector .background.filepicker[data-v-77b70ba2],.background-selector .background.default[data-v-77b70ba2],.background-selector .background.color[data-v-77b70ba2]{border-color:var(--color-border)}.background-selector .background.color[data-v-77b70ba2]{background-color:var(--color-primary);color:var(--color-primary-text)}.background-selector .background.active[data-v-77b70ba2],.background-selector .background[data-v-77b70ba2]:hover,.background-selector .background[data-v-77b70ba2]:focus{border:2px solid var(--color-primary)}.background-selector .background.active[data-v-77b70ba2]:not(.icon-loading):after{background-image:var(--icon-checkmark-white);background-repeat:no-repeat;background-position:center;background-size:44px;content:\\\"\\\";display:block;height:100%}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/dashboard/src/components/BackgroundSettings.vue\"],\"names\":[],\"mappings\":\"AA4IA,sCACC,YAAA,CACA,cAAA,CACA,sBAAA,CAEA,kDACC,WAAA,CACA,WAAA,CACA,UAAA,CACA,qBAAA,CACA,iCAAA,CACA,iBAAA,CACA,wCAAA,CACA,6CAAA,CACA,eAAA,CAEA,0DACC,6CAAA,CAGD,+KACC,gCAAA,CAGD,wDACC,qCAAA,CACA,+BAAA,CAGD,yKAGC,qCAAA,CAGD,kFACC,4CAAA,CACA,2BAAA,CACA,0BAAA,CACA,oBAAA,CACA,UAAA,CACA,aAAA,CACA,WAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.background-selector {\\n\\tdisplay: flex;\\n\\tflex-wrap: wrap;\\n\\tjustify-content: center;\\n\\n\\t.background {\\n\\t\\twidth: 176px;\\n\\t\\theight: 96px;\\n\\t\\tmargin: 8px;\\n\\t\\tbackground-size: cover;\\n\\t\\tbackground-position: center center;\\n\\t\\ttext-align: center;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\tborder: 2px solid var(--color-main-background);\\n\\t\\toverflow: hidden;\\n\\n\\t\\t&.current {\\n\\t\\t\\tbackground-image: var(--color-background-dark);\\n\\t\\t}\\n\\n\\t\\t&.filepicker, &.default, &.color {\\n\\t\\t\\tborder-color: var(--color-border);\\n\\t\\t}\\n\\n\\t\\t&.color {\\n\\t\\t\\tbackground-color: var(--color-primary);\\n\\t\\t\\tcolor: var(--color-primary-text);\\n\\t\\t}\\n\\n\\t\\t&.active,\\n\\t\\t&:hover,\\n\\t\\t&:focus {\\n\\t\\t\\tborder: 2px solid var(--color-primary);\\n\\t\\t}\\n\\n\\t\\t&.active:not(.icon-loading):after {\\n\\t\\t\\tbackground-image: var(--icon-checkmark-white);\\n\\t\\t\\tbackground-repeat: no-repeat;\\n\\t\\t\\tbackground-position: center;\\n\\t\\t\\tbackground-size: 44px;\\n\\t\\t\\tcontent: '';\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\theight: 100%;\\n\\t\\t}\\n\\t}\\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","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// 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__(53785); })\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","url","generateFilePath","background","time","themingDefaultBackground","enabledThemes","OCA","Theming","isDarkTheme","length","matchMedia","matches","join","indexOf","generateUrl","cacheBuster","prefixWithBaseUrl","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","_h","$createElement","_c","_self","staticClass","class","active","attrs","on","pickFile","_v","_s","t","loading","setDefault","pickColor","_l","shippedBackground","directives","name","rawName","value","details","expression","key","style","preview","$event","setShipped","greeting","text","status","ref","refInFor","_b","saveLayout","model","callback","$$v","layout","swapThreshold","delay","delayOnTouchOnly","touchStartThreshold","panelId","panels","id","iconClass","title","mounted","showModal","scopedSlots","_u","fn","proxy","closeModal","domProps","isStatusActive","updateStatusCheckbox","target","checked","statusInfo","icon","panel","isActive","updateCheckbox","draggable","appStoreUrl","_e","updateBackground","__webpack_nonce__","btoa","getRequestToken","Vue","VTooltip","Files","Object","assign","App","fileList","filesClient","OC","getClient","Instance","DashboardApp","$mount","Dashboard","register","app","registerStatus","___CSS_LOADER_EXPORT___","push","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","call","m","amdD","Error","amdO","O","result","chunkIds","priority","notFulfilled","Infinity","i","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 From 5e550829c539c4ff13ffef4ca2ece18200faa2ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6?= Date: Fri, 19 Aug 2022 14:35:00 +0200 Subject: [PATCH 5/5] Fix theming tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ --- apps/theming/css/default.css | 3 +++ apps/theming/tests/Themes/DefaultThemeTest.php | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/apps/theming/css/default.css b/apps/theming/css/default.css index fb541b7aca97f..41a1167a4a5da 100644 --- a/apps/theming/css/default.css +++ b/apps/theming/css/default.css @@ -2,6 +2,8 @@ --color-main-background: #ffffff; --color-main-background-rgb: 255,255,255; --color-main-background-translucent: rgba(var(--color-main-background-rgb), .97); + --color-main-background-blur: rgba(var(--color-main-background-rgb), .8); + --filter-background-blur: blur(25px); --gradient-main-background: var(--color-main-background) 0%, var(--color-main-background-translucent) 85%, transparent 100%; --color-background-hover: #f5f5f5; --color-background-dark: #ededed; @@ -59,4 +61,5 @@ --primary-invert-if-bright: no; --background-invert-if-dark: no; --background-invert-if-bright: invert(100%); + --image-main-background: url('/core/img/app-background.jpg'); } diff --git a/apps/theming/tests/Themes/DefaultThemeTest.php b/apps/theming/tests/Themes/DefaultThemeTest.php index 160efdba1426e..84430360897ab 100644 --- a/apps/theming/tests/Themes/DefaultThemeTest.php +++ b/apps/theming/tests/Themes/DefaultThemeTest.php @@ -75,6 +75,13 @@ protected function setUp(): void { return vsprintf($text, $parameters); }); + $this->urlGenerator + ->expects($this->any()) + ->method('imagePath') + ->willReturnCallback(function ($app = 'core', $filename = '') { + return "/$app/img/$filename"; + }); + $this->defaultTheme = new DefaultTheme( $util, $this->themingDefaults,