aboutsummaryrefslogtreecommitdiffstats
path: root/dist/files-main.js
diff options
context:
space:
mode:
authorJohn Molakvoæ <skjnldsv@protonmail.com>2023-08-18 16:41:56 +0200
committerJohn Molakvoæ <skjnldsv@protonmail.com>2023-08-23 14:03:51 +0200
commit3e271d89f42d2400b6f81cbb984aba419f503b54 (patch)
treeb73933abe8a4ea4b44a2b3da229ef6e970fc7fb1 /dist/files-main.js
parent2c9acd5d5d9b99a586ab35d86780cdaf0e94df5e (diff)
downloadnextcloud-server-3e271d89f42d2400b6f81cbb984aba419f503b54.tar.gz
nextcloud-server-3e271d89f42d2400b6f81cbb984aba419f503b54.zip
chore: upgrade to `@nextcloud/files@3.0.0-beta.18`
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
Diffstat (limited to 'dist/files-main.js')
-rw-r--r--dist/files-main.js32486
1 files changed, 32483 insertions, 3 deletions
diff --git a/dist/files-main.js b/dist/files-main.js
index 47ee7e7683f..b3715b01374 100644
--- a/dist/files-main.js
+++ b/dist/files-main.js
@@ -1,3 +1,32483 @@
-/*! For license information please see files-main.js.LICENSE.txt */
-!function(){var e,n={65358:function(t,e,n){"use strict";e.Ec=function(t){return t?t.split("/").map(encodeURIComponent).join("/"):t},n(21249),n(74916),n(23123),n(15306),n(57327),n(85827),n(92222)},68988:function(t,e,n){var r=n(25108);!function(e,n){t.exports=n()}(self,(()=>(()=>{var t={8250:(t,e,n)=>{"use strict";n.d(e,{default:()=>T});var r=n(4462),o=n(2297),i=n(1205),a=n(932),s=n(2734),l=n.n(s),c=n(1441),u=n.n(c);const d=".focusable",p={name:"NcActions",components:{NcButton:r.default,DotsHorizontal:u(),NcPopover:o.default},props:{open:{type:Boolean,default:!1},manualOpen:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},forceName:{type:Boolean,default:!1},menuName:{type:String,default:null},primary:{type:Boolean,default:!1},type:{type:String,validator:t=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(t),default:null},defaultIcon:{type:String,default:""},ariaLabel:{type:String,default:(0,a.t)("Actions")},ariaHidden:{type:Boolean,default:null},placement:{type:String,default:"bottom"},boundariesElement:{type:Element,default:()=>document.querySelector("body")},container:{type:[String,Object,Element,Boolean],default:"body"},disabled:{type:Boolean,default:!1},inline:{type:Number,default:0}},emits:["open","update:open","close","focus","blur"],data(){return{opened:this.open,focusIndex:0,randomId:"menu-".concat((0,i.Z)())}},computed:{triggerBtnType(){return this.type||(this.primary?"primary":this.menuName?"secondary":"tertiary")}},watch:{open(t){t!==this.opened&&(this.opened=t)}},methods:{isValidSingleAction(t){var e,n,r,o,i;const a=null!==(e=null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.Ctor)||void 0===r||null===(o=r.extendOptions)||void 0===o?void 0:o.name)&&void 0!==e?e:null==t||null===(i=t.componentOptions)||void 0===i?void 0:i.tag;return["NcActionButton","NcActionLink","NcActionRouter"].includes(a)},openMenu(t){this.opened||(this.opened=!0,this.$emit("update:open",!0),this.$emit("open"))},closeMenu(){let t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.opened&&(this.opened=!1,this.$refs.popover.clearFocusTrap({returnFocus:t}),this.$emit("update:open",!1),this.$emit("close"),this.focusIndex=0,this.$refs.menuButton.$el.focus())},onOpen(t){this.$nextTick((()=>{this.focusFirstAction(t)}))},onMouseFocusAction(t){if(document.activeElement===t.target)return;const e=t.target.closest("li");if(e){const t=e.querySelector(d);if(t){const e=[...this.$refs.menu.querySelectorAll(d)].indexOf(t);e>-1&&(this.focusIndex=e,this.focusAction())}}},onKeydown(t){(38===t.keyCode||9===t.keyCode&&t.shiftKey)&&this.focusPreviousAction(t),(40===t.keyCode||9===t.keyCode&&!t.shiftKey)&&this.focusNextAction(t),33===t.keyCode&&this.focusFirstAction(t),34===t.keyCode&&this.focusLastAction(t),27===t.keyCode&&(this.closeMenu(),t.preventDefault())},removeCurrentActive(){const t=this.$refs.menu.querySelector("li.active");t&&t.classList.remove("active")},focusAction(){const t=this.$refs.menu.querySelectorAll(d)[this.focusIndex];if(t){this.removeCurrentActive();const e=t.closest("li.action");t.focus(),e&&e.classList.add("active")}},focusPreviousAction(t){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction(t){if(this.opened){const e=this.$refs.menu.querySelectorAll(d).length-1;this.focusIndex===e?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=0,this.focusAction())},focusLastAction(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=this.$refs.menu.querySelectorAll(d).length-1,this.focusAction())},preventIfEvent(t){t&&(t.preventDefault(),t.stopPropagation())},onFocus(t){this.$emit("focus",t)},onBlur(t){this.$emit("blur",t)}},render(t){const e=(this.$slots.default||[]).filter((t=>{var e,n,r,o;return(null==t||null===(e=t.componentOptions)||void 0===e?void 0:e.tag)||(null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.Ctor)||void 0===r||null===(o=r.extendOptions)||void 0===o?void 0:o.name)})),n=e.every((t=>{var e,n,r,o,i,a,s,l;return"NcActionLink"===(null!==(e=null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.Ctor)||void 0===r||null===(o=r.extendOptions)||void 0===o?void 0:o.name)&&void 0!==e?e:null==t||null===(i=t.componentOptions)||void 0===i?void 0:i.tag)&&(null==t||null===(a=t.componentOptions)||void 0===a||null===(s=a.propsData)||void 0===s||null===(l=s.href)||void 0===l?void 0:l.startsWith(window.location.origin))}));let r=e.filter(this.isValidSingleAction);if(this.forceMenu&&r.length>0&&this.inline>0&&(l().util.warn("Specifying forceMenu will ignore any inline actions rendering."),r=[]),0===e.length)return;const o=e=>{var n,r,o,i,a,s,l,c,u,d,p,h,f,m,v,g,A,y,b,C,w,k;const x=(null==e||null===(n=e.data)||void 0===n||null===(r=n.scopedSlots)||void 0===r||null===(o=r.icon())||void 0===o?void 0:o[0])||t("span",{class:["icon",null==e||null===(i=e.componentOptions)||void 0===i||null===(a=i.propsData)||void 0===a?void 0:a.icon]}),S=null==e||null===(s=e.componentOptions)||void 0===s||null===(l=s.listeners)||void 0===l?void 0:l.click,j=null==e||null===(c=e.componentOptions)||void 0===c||null===(u=c.children)||void 0===u||null===(d=u[0])||void 0===d||null===(p=d.text)||void 0===p||null===(h=p.trim)||void 0===h?void 0:h.call(p),_=(null==e||null===(f=e.componentOptions)||void 0===f||null===(m=f.propsData)||void 0===m?void 0:m.ariaLabel)||j,E=this.forceName?j:"";let P=null==e||null===(v=e.componentOptions)||void 0===v||null===(g=v.propsData)||void 0===g?void 0:g.title;return this.forceName||P||(P=j),t("NcButton",{class:["action-item action-item--single",null==e||null===(A=e.data)||void 0===A?void 0:A.staticClass,null==e||null===(y=e.data)||void 0===y?void 0:y.class],attrs:{"aria-label":_,title:P},ref:null==e||null===(b=e.data)||void 0===b?void 0:b.ref,props:{type:this.type||(E?"secondary":"tertiary"),disabled:this.disabled||(null==e||null===(C=e.componentOptions)||void 0===C||null===(w=C.propsData)||void 0===w?void 0:w.disabled),ariaHidden:this.ariaHidden,...null==e||null===(k=e.componentOptions)||void 0===k?void 0:k.propsData},on:{focus:this.onFocus,blur:this.onBlur,...!!S&&{click:t=>{S&&S(t)}}}},[t("template",{slot:"icon"},[x]),E])},i=e=>{var r,o;const i=(null===(r=this.$slots.icon)||void 0===r?void 0:r[0])||(this.defaultIcon?t("span",{class:["icon",this.defaultIcon]}):t("DotsHorizontal",{props:{size:20}}));return t("NcPopover",{ref:"popover",props:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,popoverBaseClass:"action-item__popper",setReturnFocus:null===(o=this.$refs.menuButton)||void 0===o?void 0:o.$el},attrs:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,...this.manualOpen&&{triggers:[]},popoverBaseClass:"action-item__popper"},on:{show:this.openMenu,"after-show":this.onOpen,hide:this.closeMenu}},[t("NcButton",{class:"action-item__menutoggle",props:{type:this.triggerBtnType,disabled:this.disabled,ariaHidden:this.ariaHidden},slot:"trigger",ref:"menuButton",attrs:{"aria-haspopup":n?null:"menu","aria-label":this.ariaLabel,"aria-controls":this.opened?this.randomId:null,"aria-expanded":this.opened.toString()},on:{focus:this.onFocus,blur:this.onBlur}},[t("template",{slot:"icon"},[i]),this.menuName]),t("div",{class:{open:this.opened},attrs:{tabindex:"-1"},on:{keydown:this.onKeydown,mousemove:this.onMouseFocusAction},ref:"menu"},[t("ul",{attrs:{id:this.randomId,tabindex:"-1",role:n?null:"menu"}},[e])])])};if(1===e.length&&1===r.length&&!this.forceMenu)return o(r[0]);if(r.length>0&&this.inline>0){const n=r.slice(0,this.inline),a=e.filter((t=>!n.includes(t)));return t("div",{class:["action-items","action-item--".concat(this.triggerBtnType)]},[...n.map(o),a.length>0?t("div",{class:["action-item",{"action-item--open":this.opened}]},[i(a)]):null])}return t("div",{class:["action-item action-item--default-popover","action-item--".concat(this.triggerBtnType),{"action-item--open":this.opened}]},[i(e)])}};var h=n(3379),f=n.n(h),m=n(7795),v=n.n(m),g=n(569),A=n.n(g),y=n(3565),b=n.n(y),C=n(9216),w=n.n(C),k=n(4589),x=n.n(k),S=n(4825),j={};j.styleTagTransform=x(),j.setAttributes=b(),j.insert=A().bind(null,"head"),j.domAPI=v(),j.insertStyleElement=w(),f()(S.Z,j),S.Z&&S.Z.locals&&S.Z.locals;var _=n(4946),E={};E.styleTagTransform=x(),E.setAttributes=b(),E.insert=A().bind(null,"head"),E.domAPI=v(),E.insertStyleElement=w(),f()(_.Z,E),_.Z&&_.Z.locals&&_.Z.locals;var P=n(1900),N=n(5727),O=n.n(N),z=(0,P.Z)(p,void 0,void 0,!1,null,"29452b76",null);"function"==typeof O()&&O()(z);const T=z.exports},4462:(t,e,n)=>{"use strict";n.d(e,{default:()=>k});const o={name:"NcButton",props:{disabled:{type:Boolean,default:!1},type:{type:String,validator:t=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(t),default:"secondary"},nativeType:{type:String,validator:t=>-1!==["submit","reset","button"].indexOf(t),default:"button"},wide:{type:Boolean,default:!1},ariaLabel:{type:String,default:null},href:{type:String,default:null},to:{type:[String,Object],default:null},exact:{type:Boolean,default:!1},ariaHidden:{type:Boolean,default:null}},render(t){var e,n,o,i,a,s=this;const l=null===(e=this.$slots.default)||void 0===e||null===(n=e[0])||void 0===n||null===(o=n.text)||void 0===o||null===(i=o.trim)||void 0===i?void 0:i.call(o),c=!!l,u=null===(a=this.$slots)||void 0===a?void 0:a.icon;l||this.ariaLabel||r.warn("You need to fill either the text or the ariaLabel props in the button component.",{text:l,ariaLabel:this.ariaLabel},this);const d=function(){let{navigate:e,isActive:n,isExactActive:r}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t(s.to||!s.href?"button":"a",{class:["button-vue",{"button-vue--icon-only":u&&!c,"button-vue--text-only":c&&!u,"button-vue--icon-and-text":u&&c,["button-vue--vue-".concat(s.type)]:s.type,"button-vue--wide":s.wide,active:n,"router-link-exact-active":r}],attrs:{"aria-label":s.ariaLabel,disabled:s.disabled,type:s.href?null:s.nativeType,role:s.href?"button":null,href:!s.to&&s.href?s.href:null,...s.$attrs},on:{...s.$listeners,click:t=>{var n,r;null===(n=s.$listeners)||void 0===n||null===(r=n.click)||void 0===r||r.call(n,t),null==e||e(t)}}},[t("span",{class:"button-vue__wrapper"},[u?t("span",{class:"button-vue__icon",attrs:{"aria-hidden":s.ariaHidden}},[s.$slots.icon]):null,c?t("span",{class:"button-vue__text"},[l]):null])])};return this.to?t("router-link",{props:{custom:!0,to:this.to,exact:this.exact},scopedSlots:{default:d}}):d()}};var i=n(3379),a=n.n(i),s=n(7795),l=n.n(s),c=n(569),u=n.n(c),d=n(3565),p=n.n(d),h=n(9216),f=n.n(h),m=n(4589),v=n.n(m),g=n(7196),A={};A.styleTagTransform=v(),A.setAttributes=p(),A.insert=u().bind(null,"head"),A.domAPI=l(),A.insertStyleElement=f(),a()(g.Z,A),g.Z&&g.Z.locals&&g.Z.locals;var y=n(1900),b=n(2102),C=n.n(b),w=(0,y.Z)(o,void 0,void 0,!1,null,"4d05be2c",null);"function"==typeof C()&&C()(w);const k=w.exports},1929:(t,e,r)=>{"use strict";r.d(e,{default:()=>q});var o=r(7645),i=r(1206),a=r(932),s=r(1205),l=r(3648),c=r(8250),u=r(4462);function d(t,e){let n,r,o,i=e;this.start=function(){o=!0,r=new Date,n=setTimeout(t,i)},this.pause=function(){o=!1,clearTimeout(n),i-=new Date-r},this.clear=function(){o=!1,clearTimeout(n),i=0},this.getTimeLeft=function(){return o&&(this.pause(),this.start()),i},this.getStateRunning=function(){return o},this.start()}var p=r(336);const h=n(32964);var f=r.n(h),m=r(9044),v=r.n(m),g=r(8618),A=r.n(g);const y=n(81857);var b=r.n(y);const C=n(53071);var w=r.n(C),k=r(4505),x=r(1804);const S={name:"NcModal",components:{NcActions:c.default,ChevronLeft:f(),ChevronRight:v(),Close:A(),Pause:b(),Play:w(),NcButton:u.default},directives:{tooltip:p.default},mixins:[l.Z],props:{name:{type:String,default:""},hasPrevious:{type:Boolean,default:!1},hasNext:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},enableSlideshow:{type:Boolean,default:!1},slideshowDelay:{type:Number,default:5e3},slideshowPaused:{type:Boolean,default:!1},enableSwipe:{type:Boolean,default:!0},spreadNavigation:{type:Boolean,default:!1},size:{type:String,default:"normal",validator:t=>["small","normal","large","full"].includes(t)},canClose:{type:Boolean,default:!0},dark:{type:Boolean,default:!1},container:{type:[String,null],default:"body"},closeButtonContained:{type:Boolean,default:!0},additionalTrapElements:{type:Array,default:()=>[]},inlineActions:{type:Number,default:0},show:{type:Boolean,default:void 0}},emits:["previous","next","close","update:show"],data:()=>({mc:null,playing:!1,slideshowTimeout:null,iconSize:24,focusTrap:null,randId:(0,s.Z)(),internalShow:!0}),computed:{showModal(){return void 0===this.show?this.internalShow:this.show},modalTransitionName(){return"modal-".concat(this.outTransition?"out":"in")},playPauseName(){return this.playing?(0,a.t)("Pause slideshow"):(0,a.t)("Start slideshow")},cssVariables(){return{"--slideshow-duration":this.slideshowDelay+"ms","--icon-size":this.iconSize+"px"}},closeButtonAriaLabel:()=>(0,a.t)("Close modal"),prevButtonAriaLabel:()=>(0,a.t)("Previous"),nextButtonAriaLabel:()=>(0,a.t)("Next")},watch:{slideshowPaused(t){this.slideshowTimeout&&(t?this.slideshowTimeout.pause():this.slideshowTimeout.start())},additionalTrapElements(t){if(this.focusTrap){const e=this.$refs.mask;this.focusTrap.updateContainerElements([e,...t])}}},beforeMount(){window.addEventListener("keydown",this.handleKeydown)},beforeDestroy(){window.removeEventListener("keydown",this.handleKeydown),this.mc.stop()},mounted(){this.useFocusTrap(),this.mc=(0,x.useSwipe)(this.$refs.mask,{onSwipeEnd:this.handleSwipe}),this.container&&("body"===this.container?document.body.insertBefore(this.$el,document.body.lastChild):document.querySelector(this.container).appendChild(this.$el))},destroyed(){this.clearFocusTrap(),this.$el.remove()},methods:{previous(t){this.hasPrevious&&(t&&this.resetSlideshow(),this.$emit("previous",t))},next(t){this.hasNext&&(t&&this.resetSlideshow(),this.$emit("next",t))},close(t){this.canClose&&(this.internalShow=!1,this.$emit("update:show",!1),setTimeout((()=>{this.$emit("close",t)}),300))},handleKeydown(t){switch(t.keyCode){case 37:this.previous(t);break;case 39:this.next(t);break;case 27:this.close(t)}},handleSwipe(t,e){this.enableSwipe&&("left"===e?this.next(t):"right"===e&&this.previous(t))},togglePlayPause(){this.playing=!this.playing,this.playing?this.handleSlideshow():this.clearSlideshowTimeout()},resetSlideshow(){this.playing=!this.playing,this.clearSlideshowTimeout(),this.$nextTick((function(){this.togglePlayPause()}))},handleSlideshow(){this.playing=!0,this.hasNext?this.slideshowTimeout=new d((()=>{this.next(),this.handleSlideshow()}),this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout(){this.slideshowTimeout&&this.slideshowTimeout.clear()},async useFocusTrap(){if(!this.showModal||this.focusTrap)return;const t=this.$refs.mask;await this.$nextTick();const e={allowOutsideClick:!0,fallbackFocus:t,trapStack:(0,i.L)()};this.focusTrap=(0,k.createFocusTrap)(t,e),this.focusTrap.activate()},clearFocusTrap(){var t;this.focusTrap&&(null===(t=this.focusTrap)||void 0===t||t.deactivate(),this.focusTrap=null)}}},j=S;var _=r(3379),E=r.n(_),P=r(7795),N=r.n(P),O=r(569),z=r.n(O),T=r(3565),L=r.n(T),B=r(9216),F=r.n(B),I=r(4589),D=r.n(I),G=r(2482),$={};$.styleTagTransform=D(),$.setAttributes=L(),$.insert=z().bind(null,"head"),$.domAPI=N(),$.insertStyleElement=F(),E()(G.Z,$),G.Z&&G.Z.locals&&G.Z.locals;var M=r(1900),R=r(9989),U=r.n(R),V=(0,M.Z)(j,(function(){var t=this,e=t._self._c;return e("transition",{attrs:{name:"fade",appear:""},on:{"after-enter":t.useFocusTrap,"before-leave":t.clearFocusTrap}},[e("div",{directives:[{name:"show",rawName:"v-show",value:t.showModal,expression:"showModal"}],ref:"mask",staticClass:"modal-mask",class:{"modal-mask--dark":t.dark},style:t.cssVariables,attrs:{role:"dialog","aria-modal":"true","aria-labelledby":"modal-name-"+t.randId,"aria-describedby":"modal-description-"+t.randId,tabindex:"-1"}},[e("transition",{attrs:{name:"fade-visibility",appear:""}},[e("div",{staticClass:"modal-header"},[""!==t.name.trim()?e("h2",{staticClass:"modal-name",attrs:{id:"modal-name-"+t.randId}},[t._v("\n\t\t\t\t\t"+t._s(t.name)+"\n\t\t\t\t")]):t._e(),t._v(" "),e("div",{staticClass:"icons-menu"},[t.hasNext&&t.enableSlideshow?e("button",{directives:[{name:"tooltip",rawName:"v-tooltip.auto",value:t.playPauseName,expression:"playPauseName",modifiers:{auto:!0}}],staticClass:"play-pause-icons",class:{"play-pause-icons--paused":t.slideshowPaused},attrs:{type:"button"},on:{click:t.togglePlayPause}},[t.playing?e("Pause",{staticClass:"play-pause-icons__pause",attrs:{size:t.iconSize}}):e("Play",{staticClass:"play-pause-icons__play",attrs:{size:t.iconSize}}),t._v(" "),e("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t\t\t\t"+t._s(t.playPauseName)+"\n\t\t\t\t\t\t")]),t._v(" "),t.playing?e("svg",{staticClass:"progress-ring",attrs:{height:"50",width:"50"}},[e("circle",{staticClass:"progress-ring__circle",attrs:{stroke:"white","stroke-width":"2",fill:"transparent",r:"15",cx:"25",cy:"25"}})]):t._e()],1):t._e(),t._v(" "),e("NcActions",{staticClass:"header-actions",attrs:{inline:t.inlineActions}},[t._t("actions")],2),t._v(" "),t.canClose&&!t.closeButtonContained?e("NcButton",{staticClass:"header-close",attrs:{"aria-label":t.closeButtonAriaLabel,type:"tertiary"},on:{click:t.close},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Close",{attrs:{size:t.iconSize}})]},proxy:!0}],null,!1,1841713362)}):t._e()],1)])]),t._v(" "),e("transition",{attrs:{name:t.modalTransitionName,appear:""}},[e("div",{directives:[{name:"show",rawName:"v-show",value:t.showModal,expression:"showModal"}],staticClass:"modal-wrapper",class:["modal-wrapper--".concat(t.size),t.spreadNavigation?"modal-wrapper--spread-navigation":""],on:{mousedown:function(e){return e.target!==e.currentTarget?null:t.close.apply(null,arguments)}}},[e("transition",{attrs:{name:"fade-visibility",appear:""}},[e("NcButton",{directives:[{name:"show",rawName:"v-show",value:t.hasPrevious,expression:"hasPrevious"}],staticClass:"prev",class:{invisible:!t.hasPrevious},attrs:{type:"tertiary-no-background","aria-label":t.prevButtonAriaLabel},on:{click:t.previous},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ChevronLeft",{attrs:{size:40}})]},proxy:!0}])})],1),t._v(" "),e("div",{staticClass:"modal-container",attrs:{id:"modal-description-"+t.randId}},[t._t("default"),t._v(" "),t.canClose&&t.closeButtonContained?e("NcButton",{staticClass:"modal-container__close",attrs:{type:"tertiary","aria-label":t.closeButtonAriaLabel},on:{click:t.close},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Close",{attrs:{size:20}})]},proxy:!0}],null,!1,2121748766)}):t._e()],2),t._v(" "),e("transition",{attrs:{name:"fade-visibility",appear:""}},[e("NcButton",{directives:[{name:"show",rawName:"v-show",value:t.hasNext,expression:"hasNext"}],staticClass:"next",class:{invisible:!t.hasNext},attrs:{type:"tertiary-no-background","aria-label":t.nextButtonAriaLabel},on:{click:t.next},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ChevronRight",{attrs:{size:40}})]},proxy:!0}])})],1)],1)])],1)])}),[],!1,null,"234c4d21",null);"function"==typeof U()&&U()(V);const Z=V.exports;(0,o.Z)(Z);const q=Z},2297:(t,e,n)=>{"use strict";n.d(e,{default:()=>_});var o=n(9454),i=n(4505),a=n(1206);const s={name:"NcPopover",components:{Dropdown:o.Dropdown},inheritAttrs:!1,props:{popoverBaseClass:{type:String,default:""},focusTrap:{type:Boolean,default:!0},setReturnFocus:{default:void 0,type:[HTMLElement,SVGElement,String,Boolean]}},emits:["after-show","after-hide"],beforeDestroy(){this.clearFocusTrap()},methods:{async useFocusTrap(){var t,e;if(await this.$nextTick(),!this.focusTrap)return;const n=null===(t=this.$refs.popover)||void 0===t||null===(e=t.$refs.popperContent)||void 0===e?void 0:e.$el;n&&(this.$focusTrap=(0,i.createFocusTrap)(n,{escapeDeactivates:!1,allowOutsideClick:!0,setReturnFocus:this.setReturnFocus,trapStack:(0,a.L)()}),this.$focusTrap.activate())},clearFocusTrap(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{var e;null===(e=this.$focusTrap)||void 0===e||e.deactivate(t),this.$focusTrap=null}catch(t){r.warn(t)}},afterShow(){this.$nextTick((()=>{this.$emit("after-show"),this.useFocusTrap()}))},afterHide(){this.$emit("after-hide"),this.clearFocusTrap()}}},l=s;var c=n(3379),u=n.n(c),d=n(7795),p=n.n(d),h=n(569),f=n.n(h),m=n(3565),v=n.n(m),g=n(9216),A=n.n(g),y=n(4589),b=n.n(y),C=n(1625),w={};w.styleTagTransform=b(),w.setAttributes=v(),w.insert=f().bind(null,"head"),w.domAPI=p(),w.insertStyleElement=A(),u()(C.Z,w),C.Z&&C.Z.locals&&C.Z.locals;var k=n(1900),x=n(2405),S=n.n(x),j=(0,k.Z)(l,(function(){var t=this;return(0,t._self._c)("Dropdown",t._g(t._b({ref:"popover",attrs:{distance:10,"arrow-padding":10,"no-auto-focus":!0,"popper-class":t.popoverBaseClass},on:{"apply-show":t.afterShow,"apply-hide":t.afterHide},scopedSlots:t._u([{key:"popper",fn:function(){return[t._t("default")]},proxy:!0}],null,!0)},"Dropdown",t.$attrs,!1),t.$listeners),[t._t("trigger")],2)}),[],!1,null,null,null);"function"==typeof S()&&S()(j);const _=j.exports},336:(t,e,n)=>{"use strict";n.d(e,{default:()=>A});var r=n(9454),o=n(3379),i=n.n(o),a=n(7795),s=n.n(a),l=n(569),c=n.n(l),u=n(3565),d=n.n(u),p=n(9216),h=n.n(p),f=n(4589),m=n.n(f),v=n(8384),g={};g.styleTagTransform=m(),g.setAttributes=d(),g.insert=c().bind(null,"head"),g.domAPI=s(),g.insertStyleElement=h(),i()(v.Z,g),v.Z&&v.Z.locals&&v.Z.locals,r.options.themes.tooltip.html=!1,r.options.themes.tooltip.delay={show:500,hide:200},r.options.themes.tooltip.distance=10,r.options.themes.tooltip["arrow-padding"]=3;const A=r.VTooltip},932:(t,e,n)=>{"use strict";n.d(e,{n:()=>i,t:()=>a});const r=(0,n(7931).getGettextBuilder)().detectLocale();[{locale:"ar",translations:{"{tag} (invisible)":"{tag} (غير مرئي)","{tag} (restricted)":"{tag} (مقيد)",Actions:"الإجراءات",Activities:"النشاطات","Animals & Nature":"الحيوانات والطبيعة","Anything shared with the same group of people will show up here":"أي مادة تمت مشاركتها مع نفس المجموعة من الأشخاص سيتم عرضها هنا","Avatar of {displayName}":"صورة {displayName} الرمزية","Avatar of {displayName}, {status}":"صورة {displayName} الرمزية، {status}","Cancel changes":"إلغاء التغييرات","Change title":"تغيير العنوان",Choose:"إختيار","Clear text":"مسح النص",Close:"أغلق","Close modal":"قفل الشرط","Close navigation":"إغلاق المتصفح","Close sidebar":"قفل الشريط الجانبي","Confirm changes":"تأكيد التغييرات",Custom:"مخصص","Edit item":"تعديل عنصر","Error getting related resources":"خطأ في تحصيل مصادر ذات صلة","External documentation for {title}":"الوثائق الخارجية لـ{title}",Favorite:"مفضلة",Flags:"الأعلام","Food & Drink":"الطعام والشراب","Frequently used":"كثيرا ما تستخدم",Global:"عالمي","Go back to the list":"العودة إلى القائمة","Hide password":"إخفاء كلمة السر","Message limit of {count} characters reached":"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف","More items …":"عناصر أخرى ...",Next:"التالي","No emoji found":"لم يتم العثور على أي رمز تعبيري","No results":"ليس هناك أية نتيجة",Objects:"الأشياء",Open:"فتح",'Open link to "{resourceTitle}"':'فتح رابط إلى "{resourceTitle}"',"Open navigation":"فتح المتصفح","Password is secure":"كلمة السر مُؤمّنة","Pause slideshow":"إيقاف العرض مؤقتًا","People & Body":"الناس والجسم","Pick an emoji":"اختر رمزًا تعبيريًا","Please select a time zone:":"الرجاء تحديد المنطقة الزمنية:",Previous:"السابق","Related resources":"مصادر ذات صلة",Search:"بحث","Search results":"نتائج البحث","Select a tag":"اختر علامة",Settings:"الإعدادات","Settings navigation":"إعدادات المتصفح","Show password":"أعرض كلمة السر","Smileys & Emotion":"الوجوه و الرموز التعبيرية","Start slideshow":"بدء العرض",Submit:"إرسال",Symbols:"الرموز","Travel & Places":"السفر والأماكن","Type to search time zone":"اكتب للبحث عن منطقة زمنية","Unable to search the group":"تعذر البحث في المجموعة","Undo changes":"التراجع عن التغييرات","Write message, @ to mention someone, : for emoji autocompletion …":"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ..."}},{locale:"br",translations:{"{tag} (invisible)":"{tag} (diwelus)","{tag} (restricted)":"{tag} (bevennet)",Actions:"Oberioù",Activities:"Oberiantizoù","Animals & Nature":"Loened & Natur",Choose:"Dibab",Close:"Serriñ",Custom:"Personelañ",Flags:"Bannieloù","Food & Drink":"Boued & Evajoù","Frequently used":"Implijet alies",Next:"Da heul","No emoji found":"Emoji ebet kavet","No results":"Disoc'h ebet",Objects:"Traoù","Pause slideshow":"Arsav an diaporama","People & Body":"Tud & Korf","Pick an emoji":"Choaz un emoji",Previous:"A-raok",Search:"Klask","Search results":"Disoc'hoù an enklask","Select a tag":"Choaz ur c'hlav",Settings:"Arventennoù","Smileys & Emotion":"Smileyioù & Fromoù","Start slideshow":"Kregiñ an diaporama",Symbols:"Arouezioù","Travel & Places":"Beaj & Lec'hioù","Unable to search the group":"Dibosupl eo klask ar strollad"}},{locale:"ca",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringit)",Actions:"Accions",Activities:"Activitats","Animals & Nature":"Animals i natura","Anything shared with the same group of people will show up here":"Qualsevol cosa compartida amb el mateix grup de persones es mostrarà aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancel·la els canvis","Change title":"Canviar títol",Choose:"Tria","Clear text":"Netejar text",Close:"Tanca","Close modal":"Tancar el mode","Close navigation":"Tanca la navegació","Close sidebar":"Tancar la barra lateral","Confirm changes":"Confirmeu els canvis",Custom:"Personalitzat","Edit item":"Edita l'element","Error getting related resources":"Error obtenint els recursos relacionats","Error parsing svg":"Error en l'anàlisi del svg","External documentation for {title}":"Documentació externa per a {title}",Favorite:"Preferit",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment",Global:"Global","Go back to the list":"Torna a la llista","Hide password":"Amagar contrasenya","Message limit of {count} characters reached":"S'ha arribat al límit de {count} caràcters per missatge","More items …":"Més artícles...",Next:"Següent","No emoji found":"No s'ha trobat cap emoji","No results":"Sense resultats",Objects:"Objectes",Open:"Obrir",'Open link to "{resourceTitle}"':'Obrir enllaç a "{resourceTitle}"',"Open navigation":"Obre la navegació","Password is secure":"Contrasenya segura<br>","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji","Please select a time zone:":"Seleccioneu una zona horària:",Previous:"Anterior","Related resources":"Recursos relacionats",Search:"Cerca","Search results":"Resultats de cerca","Select a tag":"Seleccioneu una etiqueta",Settings:"Paràmetres","Settings navigation":"Navegació d'opcions","Show password":"Mostrar contrasenya","Smileys & Emotion":"Cares i emocions","Start slideshow":"Inicia la presentació",Submit:"Envia",Symbols:"Símbols","Travel & Places":"Viatges i llocs","Type to search time zone":"Escriviu per cercar la zona horària","Unable to search the group":"No es pot cercar el grup","Undo changes":"Desfés els canvis",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escriu missatge, fes servir "@" per esmentar algú, fes servir ":" per autocompletar emojis...'}},{locale:"cs_CZ",translations:{"{tag} (invisible)":"{tag} (neviditelné)","{tag} (restricted)":"{tag} (omezené)",Actions:"Akce",Activities:"Aktivity","Animals & Nature":"Zvířata a příroda","Anything shared with the same group of people will show up here":"Cokoli nasdíleného stejné skupině lidí se zobrazí zde","Avatar of {displayName}":"Zástupný obrázek uživatele {displayName}","Avatar of {displayName}, {status}":"Zástupný obrázek uživatele {displayName}, {status}","Cancel changes":"Zrušit změny","Change title":"Změnit nadpis",Choose:"Zvolit","Clear text":"Čitelný text",Close:"Zavřít","Close modal":"Zavřít dialogové okno","Close navigation":"Zavřít navigaci","Close sidebar":"Zavřít postranní panel","Confirm changes":"Potvrdit změny",Custom:"Uživatelsky určené","Edit item":"Upravit položku","Error getting related resources":"Chyba při získávání souvisejících prostředků","Error parsing svg":"Chyba při zpracovávání svg","External documentation for {title}":"Externí dokumentace k {title}",Favorite:"Oblíbené",Flags:"Příznaky","Food & Drink":"Jídlo a pití","Frequently used":"Často používané",Global:"Globální","Go back to the list":"Jít zpět na seznam","Hide password":"Skrýt heslo","Message limit of {count} characters reached":"Dosaženo limitu počtu ({count}) znaků zprávy","More items …":"Další položky…",Next:"Následující","No emoji found":"Nenalezeno žádné emoji","No results":"Nic nenalezeno",Objects:"Objekty",Open:"Otevřít",'Open link to "{resourceTitle}"':"Otevřít odkaz na „{resourceTitle}“","Open navigation":"Otevřít navigaci","Password is secure":"Heslo je bezpečné","Pause slideshow":"Pozastavit prezentaci","People & Body":"Lidé a tělo","Pick an emoji":"Vybrat emoji","Please select a time zone:":"Vyberte časovou zónu:",Previous:"Předchozí","Related resources":"Související prostředky",Search:"Hledat","Search results":"Výsledky hledání","Select a tag":"Vybrat štítek",Settings:"Nastavení","Settings navigation":"Pohyb po nastavení","Show password":"Zobrazit heslo","Smileys & Emotion":"Úsměvy a emoce","Start slideshow":"Spustit prezentaci",Submit:"Odeslat",Symbols:"Symboly","Travel & Places":"Cestování a místa","Type to search time zone":"Psaním vyhledejte časovou zónu","Unable to search the group":"Nedaří se hledat skupinu","Undo changes":"Vzít změny zpět",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem „@“ (zavináč); automatické doplňování emotikonů zahájíte napsáním „:“ (dvojtečky)…"}},{locale:"da",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (begrænset)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr & Natur","Anything shared with the same group of people will show up here":"Alt der deles med samme gruppe af personer vil vises her","Avatar of {displayName}":"Avatar af {displayName}","Avatar of {displayName}, {status}":"Avatar af {displayName}, {status}","Cancel changes":"Annuller ændringer","Change title":"Ret titel",Choose:"Vælg","Clear text":"Ryd tekst",Close:"Luk","Close modal":"Luk vindue","Close navigation":"Luk navigation","Close sidebar":"Luk sidepanel","Confirm changes":"Bekræft ændringer",Custom:"Brugerdefineret","Edit item":"Rediger emne","Error getting related resources":"Kunne ikke hente tilknyttede data","Error parsing svg":"Fejl ved analysering af svg","External documentation for {title}":"Ekstern dokumentation for {title}",Favorite:"Favorit",Flags:"Flag","Food & Drink":"Mad & Drikke","Frequently used":"Ofte brugt",Global:"Global","Go back to the list":"Tilbage til listen","Hide password":"Skjul kodeord","Message limit of {count} characters reached":"Begrænsning på {count} tegn er nået","More items …":"Mere ...",Next:"Videre","No emoji found":"Ingen emoji fundet","No results":"Ingen resultater",Objects:"Objekter",Open:"Åbn",'Open link to "{resourceTitle}"':'Åbn link til "{resourceTitle}"',"Open navigation":"Åbn navigation","Password is secure":"Kodeordet er sikkert","Pause slideshow":"Suspender fremvisning","People & Body":"Mennesker & Menneskekroppen","Pick an emoji":"Vælg en emoji","Please select a time zone:":"Vælg venligst en tidszone:",Previous:"Forrige","Related resources":"Relaterede emner",Search:"Søg","Search results":"Søgeresultater","Select a tag":"Vælg et mærke",Settings:"Indstillinger","Settings navigation":"Naviger i indstillinger","Show password":"Vis kodeord","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start fremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Rejser & Rejsemål","Type to search time zone":"Indtast for at søge efter tidszone","Unable to search the group":"Kan ikke søge på denne gruppe","Undo changes":"Fortryd ændringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv besked, brug "@" for at nævne nogen, brug ":" til emoji-autofuldførelse ...'}},{locale:"de",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Gegenstände",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte wählen Sie eine Zeitzone:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um Zeitzone zu suchen","Unable to search the group":"Die Gruppe konnte nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"de_DE",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Objekte",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte eine Zeitzone auswählen:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um eine Zeitzone zu suchen","Unable to search the group":"Die Gruppe kann nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"el",translations:{"{tag} (invisible)":"{tag} (αόρατο)","{tag} (restricted)":"{tag} (περιορισμένο)",Actions:"Ενέργειες",Activities:"Δραστηριότητες","Animals & Nature":"Ζώα & Φύση","Anything shared with the same group of people will show up here":"Οτιδήποτε μοιράζεται με την ίδια ομάδα ατόμων θα εμφανίζεται εδώ","Avatar of {displayName}":"Άβαταρ του {displayName}","Avatar of {displayName}, {status}":"Άβαταρ του {displayName}, {status}","Cancel changes":"Ακύρωση αλλαγών","Change title":"Αλλαγή τίτλου",Choose:"Επιλογή","Clear text":"Εκκαθάριση κειμένου",Close:"Κλείσιμο","Close modal":"Βοηθητικό κλείσιμο","Close navigation":"Κλείσιμο πλοήγησης","Close sidebar":"Κλείσιμο πλευρικής μπάρας","Confirm changes":"Επιβεβαίωση αλλαγών",Custom:"Προσαρμογή","Edit item":"Επεξεργασία","Error getting related resources":"Σφάλμα λήψης σχετικών πόρων","Error parsing svg":"Σφάλμα ανάλυσης svg","External documentation for {title}":"Εξωτερική τεκμηρίωση για {title}",Favorite:"Αγαπημένα",Flags:"Σημαίες","Food & Drink":"Φαγητό & Ποτό","Frequently used":"Συχνά χρησιμοποιούμενο",Global:"Καθολικό","Go back to the list":"Επιστροφή στην αρχική λίστα ","Hide password":"Απόκρυψη κωδικού πρόσβασης","Message limit of {count} characters reached":"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος","More items …":"Περισσότερα στοιχεία …",Next:"Επόμενο","No emoji found":"Δεν βρέθηκε emoji","No results":"Κανένα αποτέλεσμα",Objects:"Αντικείμενα",Open:"Άνοιγμα",'Open link to "{resourceTitle}"':'Άνοιγμα συνδέσμου στο "{resourceTitle}"',"Open navigation":"Άνοιγμα πλοήγησης","Password is secure":"Ο κωδικός πρόσβασης είναι ασφαλής","Pause slideshow":"Παύση προβολής διαφανειών","People & Body":"Άνθρωποι & Σώμα","Pick an emoji":"Επιλέξτε ένα emoji","Please select a time zone:":"Παρακαλούμε επιλέξτε μια ζώνη ώρας:",Previous:"Προηγούμενο","Related resources":"Σχετικοί πόροι",Search:"Αναζήτηση","Search results":"Αποτελέσματα αναζήτησης","Select a tag":"Επιλογή ετικέτας",Settings:"Ρυθμίσεις","Settings navigation":"Πλοήγηση ρυθμίσεων","Show password":"Εμφάνιση κωδικού πρόσβασης","Smileys & Emotion":"Φατσούλες & Συναίσθημα","Start slideshow":"Έναρξη προβολής διαφανειών",Submit:"Υποβολή",Symbols:"Σύμβολα","Travel & Places":"Ταξίδια & Τοποθεσίες","Type to search time zone":"Πληκτρολογήστε για αναζήτηση ζώνης ώρας","Unable to search the group":"Δεν είναι δυνατή η αναζήτηση της ομάδας","Undo changes":"Αναίρεση Αλλαγών",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Γράψτε μήνυμα, χρησιμοποιείστε "@" για να αναφέρετε κάποιον, χρησιμοποιείστε ":" για αυτόματη συμπλήρωση emoji …'}},{locale:"en_GB",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restricted)",Actions:"Actions",Activities:"Activities","Animals & Nature":"Animals & Nature","Anything shared with the same group of people will show up here":"Anything shared with the same group of people will show up here","Avatar of {displayName}":"Avatar of {displayName}","Avatar of {displayName}, {status}":"Avatar of {displayName}, {status}","Cancel changes":"Cancel changes","Change title":"Change title",Choose:"Choose","Clear text":"Clear text",Close:"Close","Close modal":"Close modal","Close navigation":"Close navigation","Close sidebar":"Close sidebar","Confirm changes":"Confirm changes",Custom:"Custom","Edit item":"Edit item","Error getting related resources":"Error getting related resources","Error parsing svg":"Error parsing svg","External documentation for {title}":"External documentation for {title}",Favorite:"Favourite",Flags:"Flags","Food & Drink":"Food & Drink","Frequently used":"Frequently used",Global:"Global","Go back to the list":"Go back to the list","Hide password":"Hide password","Message limit of {count} characters reached":"Message limit of {count} characters reached","More items …":"More items …",Next:"Next","No emoji found":"No emoji found","No results":"No results",Objects:"Objects",Open:"Open",'Open link to "{resourceTitle}"':'Open link to "{resourceTitle}"',"Open navigation":"Open navigation","Password is secure":"Password is secure","Pause slideshow":"Pause slideshow","People & Body":"People & Body","Pick an emoji":"Pick an emoji","Please select a time zone:":"Please select a time zone:",Previous:"Previous","Related resources":"Related resources",Search:"Search","Search results":"Search results","Select a tag":"Select a tag",Settings:"Settings","Settings navigation":"Settings navigation","Show password":"Show password","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start slideshow",Submit:"Submit",Symbols:"Symbols","Travel & Places":"Travel & Places","Type to search time zone":"Type to search time zone","Unable to search the group":"Unable to search the group","Undo changes":"Undo changes",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Write message, use "@" to mention someone, use ":" for emoji autocompletion …'}},{locale:"eo",translations:{"{tag} (invisible)":"{tag} (kaŝita)","{tag} (restricted)":"{tag} (limigita)",Actions:"Agoj",Activities:"Aktiveco","Animals & Nature":"Bestoj & Naturo",Choose:"Elektu",Close:"Fermu",Custom:"Propra",Flags:"Flagoj","Food & Drink":"Manĝaĵo & Trinkaĵo","Frequently used":"Ofte uzataj","Message limit of {count} characters reached":"La limo je {count} da literoj atingita",Next:"Sekva","No emoji found":"La emoĝio forestas","No results":"La rezulto forestas",Objects:"Objektoj","Pause slideshow":"Payzi bildprezenton","People & Body":"Homoj & Korpo","Pick an emoji":"Elekti emoĝion ",Previous:"Antaŭa",Search:"Serĉi","Search results":"Serĉrezultoj","Select a tag":"Elektu etikedon",Settings:"Agordo","Settings navigation":"Agorda navigado","Smileys & Emotion":"Ridoj kaj Emocioj","Start slideshow":"Komenci bildprezenton",Symbols:"Signoj","Travel & Places":"Vojaĵoj & Lokoj","Unable to search the group":"Ne eblas serĉi en la grupo","Write message, @ to mention someone …":"Mesaĝi, uzu @ por mencii iun ..."}},{locale:"es",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringido)",Actions:"Acciones",Activities:"Actividades","Animals & Nature":"Animales y naturaleza","Anything shared with the same group of people will show up here":"Cualquier cosa que sea compartida con el mismo grupo de personas se mostrará aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar cambios","Change title":"Cambiar título",Choose:"Elegir","Clear text":"Limpiar texto",Close:"Cerrar","Close modal":"Cerrar modal","Close navigation":"Cerrar navegación","Close sidebar":"Cerrar barra lateral","Confirm changes":"Confirmar cambios",Custom:"Personalizado","Edit item":"Editar elemento","Error getting related resources":"Se encontró un error al obtener los recursos relacionados","Error parsing svg":"Error procesando svg","External documentation for {title}":"Documentacion externa de {title}",Favorite:"Favorito",Flags:"Banderas","Food & Drink":"Comida y bebida","Frequently used":"Usado con frecuenca",Global:"Global","Go back to the list":"Volver a la lista","Hide password":"Ocultar contraseña","Message limit of {count} characters reached":"El mensaje ha alcanzado el límite de {count} caracteres","More items …":"Más ítems...",Next:"Siguiente","No emoji found":"No hay ningún emoji","No results":" Ningún resultado",Objects:"Objetos",Open:"Abrir",'Open link to "{resourceTitle}"':'Abrir enlace a "{resourceTitle}"',"Open navigation":"Abrir navegación","Password is secure":"La contraseña es segura","Pause slideshow":"Pausar la presentación ","People & Body":"Personas y cuerpos","Pick an emoji":"Elegir un emoji","Please select a time zone:":"Por favor elige un huso de horario:",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Buscar","Search results":"Resultados de la búsqueda","Select a tag":"Seleccione una etiqueta",Settings:"Ajustes","Settings navigation":"Navegación por ajustes","Show password":"Mostrar contraseña","Smileys & Emotion":"Smileys y emoticonos","Start slideshow":"Iniciar la presentación",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viajes y lugares","Type to search time zone":"Escribe para buscar un huso de horario","Unable to search the group":"No es posible buscar en el grupo","Undo changes":"Deshacer cambios",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escribir mensaje, utilice "@" para mencionar a alguien, utilice ":" para autocompletado de emojis ...'}},{locale:"eu",translations:{"{tag} (invisible)":"{tag} (ikusezina)","{tag} (restricted)":"{tag} (mugatua)",Actions:"Ekintzak",Activities:"Jarduerak","Animals & Nature":"Animaliak eta Natura","Anything shared with the same group of people will show up here":"Pertsona-talde berarekin partekatutako edozer agertuko da hemen","Avatar of {displayName}":"{displayName}-(e)n irudia","Avatar of {displayName}, {status}":"{displayName} -(e)n irudia, {status}","Cancel changes":"Ezeztatu aldaketak","Change title":"Aldatu titulua",Choose:"Aukeratu","Clear text":"Garbitu testua",Close:"Itxi","Close modal":"Itxi modala","Close navigation":"Itxi nabigazioa","Close sidebar":"Itxi albo-barra","Confirm changes":"Baieztatu aldaketak",Custom:"Pertsonalizatua","Edit item":"Editatu elementua","Error getting related resources":"Errorea erlazionatutako baliabideak lortzerakoan","Error parsing svg":"Errore bat gertatu da svg-a analizatzean","External documentation for {title}":"Kanpoko dokumentazioa {title}(r)entzat",Favorite:"Gogokoa",Flags:"Banderak","Food & Drink":"Janaria eta edariak","Frequently used":"Askotan erabilia",Global:"Globala","Go back to the list":"Bueltatu zerrendara","Hide password":"Ezkutatu pasahitza","Message limit of {count} characters reached":"Mezuaren {count} karaketere-limitera heldu zara","More items …":"Elementu gehiago …",Next:"Hurrengoa","No emoji found":"Ez da emojirik aurkitu","No results":"Emaitzarik ez",Objects:"Objektuak",Open:"Ireki",'Open link to "{resourceTitle}"':'Ireki esteka: "{resourceTitle}"',"Open navigation":"Ireki nabigazioa","Password is secure":"Pasahitza segurua da","Pause slideshow":"Pausatu diaporama","People & Body":"Jendea eta gorputza","Pick an emoji":"Hautatu emoji bat","Please select a time zone:":"Mesedez hautatu ordu-zona bat:",Previous:"Aurrekoa","Related resources":"Erlazionatutako baliabideak",Search:"Bilatu","Search results":"Bilaketa emaitzak","Select a tag":"Hautatu etiketa bat",Settings:"Ezarpenak","Settings navigation":"Nabigazio ezarpenak","Show password":"Erakutsi pasahitza","Smileys & Emotion":"Smileyak eta emozioa","Start slideshow":"Hasi diaporama",Submit:"Bidali",Symbols:"Sinboloak","Travel & Places":"Bidaiak eta lekuak","Type to search time zone":"Idatzi ordu-zona bat bilatzeko","Unable to search the group":"Ezin izan da taldea bilatu","Undo changes":"Aldaketak desegin",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Idatzi mezua, erabili "@" norbait aipatzeko, erabili ":" emojiak automatikoki osatzeko...'}},{locale:"fi_FI",translations:{"{tag} (invisible)":"{tag} (näkymätön)","{tag} (restricted)":"{tag} (rajoitettu)",Actions:"Toiminnot",Activities:"Aktiviteetit","Animals & Nature":"Eläimet & luonto","Avatar of {displayName}":"Käyttäjän {displayName} avatar","Avatar of {displayName}, {status}":"Käyttäjän {displayName} avatar, {status}","Cancel changes":"Peruuta muutokset",Choose:"Valitse",Close:"Sulje","Close navigation":"Sulje navigaatio","Confirm changes":"Vahvista muutokset",Custom:"Mukautettu","Edit item":"Muokkaa kohdetta","External documentation for {title}":"Ulkoinen dokumentaatio kohteelle {title}",Flags:"Liput","Food & Drink":"Ruoka & juoma","Frequently used":"Usein käytetyt",Global:"Yleinen","Go back to the list":"Siirry takaisin listaan","Message limit of {count} characters reached":"Viestin merkken enimmäisimäärä {count} täynnä ",Next:"Seuraava","No emoji found":"Emojia ei löytynyt","No results":"Ei tuloksia",Objects:"Esineet & asiat","Open navigation":"Avaa navigaatio","Pause slideshow":"Keskeytä diaesitys","People & Body":"Ihmiset & keho","Pick an emoji":"Valitse emoji","Please select a time zone:":"Valitse aikavyöhyke:",Previous:"Edellinen",Search:"Etsi","Search results":"Hakutulokset","Select a tag":"Valitse tagi",Settings:"Asetukset","Settings navigation":"Asetusnavigaatio","Smileys & Emotion":"Hymiöt & tunteet","Start slideshow":"Aloita diaesitys",Submit:"Lähetä",Symbols:"Symbolit","Travel & Places":"Matkustus & kohteet","Type to search time zone":"Kirjoita etsiäksesi aikavyöhyke","Unable to search the group":"Ryhmää ei voi hakea","Undo changes":"Kumoa muutokset","Write message, @ to mention someone, : for emoji autocompletion …":"Kirjoita viesti, @ mainitaksesi käyttäjän, : emojin automaattitäydennykseen…"}},{locale:"fr",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restreint)",Actions:"Actions",Activities:"Activités","Animals & Nature":"Animaux & Nature","Anything shared with the same group of people will show up here":"Tout ce qui est partagé avec le même groupe de personnes apparaîtra ici","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Annuler les modifications","Change title":"Modifier le titre",Choose:"Choisir","Clear text":"Effacer le texte",Close:"Fermer","Close modal":"Fermer la fenêtre","Close navigation":"Fermer la navigation","Close sidebar":"Fermer la barre latérale","Confirm changes":"Confirmer les modifications",Custom:"Personnalisé","Edit item":"Éditer l'élément","Error getting related resources":"Erreur à la récupération des ressources liées","Error parsing svg":"Erreur d'analyse SVG","External documentation for {title}":"Documentation externe pour {title}",Favorite:"Favori",Flags:"Drapeaux","Food & Drink":"Nourriture & Boissons","Frequently used":"Utilisés fréquemment",Global:"Global","Go back to the list":"Retourner à la liste","Hide password":"Cacher le mot de passe","Message limit of {count} characters reached":"Limite de messages de {count} caractères atteinte","More items …":"Plus d'éléments...",Next:"Suivant","No emoji found":"Pas d’émoji trouvé","No results":"Aucun résultat",Objects:"Objets",Open:"Ouvrir",'Open link to "{resourceTitle}"':'Ouvrir le lien vers "{resourceTitle}"',"Open navigation":"Ouvrir la navigation","Password is secure":"Le mot de passe est sécurisé","Pause slideshow":"Mettre le diaporama en pause","People & Body":"Personnes & Corps","Pick an emoji":"Choisissez un émoji","Please select a time zone:":"Sélectionnez un fuseau horaire : ",Previous:"Précédent","Related resources":"Ressources liées",Search:"Chercher","Search results":"Résultats de recherche","Select a tag":"Sélectionnez une balise",Settings:"Paramètres","Settings navigation":"Navigation dans les paramètres","Show password":"Afficher le mot de passe","Smileys & Emotion":"Smileys & Émotions","Start slideshow":"Démarrer le diaporama",Submit:"Valider",Symbols:"Symboles","Travel & Places":"Voyage & Lieux","Type to search time zone":"Saisissez les premiers lettres pour rechercher un fuseau horaire","Unable to search the group":"Impossible de chercher le groupe","Undo changes":"Annuler les changements",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Écrire un message, utiliser "@" pour mentionner une personne, ":" pour l\'autocomplétion des émojis...'}},{locale:"gl",translations:{"{tag} (invisible)":"{tag} (invisíbel)","{tag} (restricted)":"{tag} (restrinxido)",Actions:"Accións",Activities:"Actividades","Animals & Nature":"Animais e natureza","Cancel changes":"Cancelar os cambios",Choose:"Escoller",Close:"Pechar","Confirm changes":"Confirma os cambios",Custom:"Personalizado","External documentation for {title}":"Documentación externa para {title}",Flags:"Bandeiras","Food & Drink":"Comida e bebida","Frequently used":"Usado con frecuencia","Message limit of {count} characters reached":"Acadouse o límite de {count} caracteres por mensaxe",Next:"Seguinte","No emoji found":"Non se atopou ningún «emoji»","No results":"Sen resultados",Objects:"Obxectos","Pause slideshow":"Pausar o diaporama","People & Body":"Persoas e corpo","Pick an emoji":"Escolla un «emoji»",Previous:"Anterir",Search:"Buscar","Search results":"Resultados da busca","Select a tag":"Seleccione unha etiqueta",Settings:"Axustes","Settings navigation":"Navegación polos axustes","Smileys & Emotion":"Sorrisos e emocións","Start slideshow":"Iniciar o diaporama",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viaxes e lugares","Unable to search the group":"Non foi posíbel buscar o grupo","Write message, @ to mention someone …":"Escriba a mensaxe, @ para mencionar a alguén…"}},{locale:"he",translations:{"{tag} (invisible)":"{tag} (נסתר)","{tag} (restricted)":"{tag} (מוגבל)",Actions:"פעולות",Activities:"פעילויות","Animals & Nature":"חיות וטבע",Choose:"בחירה",Close:"סגירה",Custom:"בהתאמה אישית",Flags:"דגלים","Food & Drink":"מזון ומשקאות","Frequently used":"בשימוש תדיר",Next:"הבא","No emoji found":"לא נמצא אמוג׳י","No results":"אין תוצאות",Objects:"חפצים","Pause slideshow":"השהיית מצגת","People & Body":"אנשים וגוף","Pick an emoji":"נא לבחור אמוג׳י",Previous:"הקודם",Search:"חיפוש","Search results":"תוצאות חיפוש","Select a tag":"בחירת תגית",Settings:"הגדרות","Smileys & Emotion":"חייכנים ורגשונים","Start slideshow":"התחלת המצגת",Symbols:"סמלים","Travel & Places":"טיולים ומקומות","Unable to search the group":"לא ניתן לחפש בקבוצה"}},{locale:"hu_HU",translations:{"{tag} (invisible)":"{tag} (láthatatlan)","{tag} (restricted)":"{tag} (korlátozott)",Actions:"Műveletek",Activities:"Tevékenységek","Animals & Nature":"Állatok és természet","Anything shared with the same group of people will show up here":"Minden, amit ugyanazzal a csoporttal oszt meg, itt fog megjelenni","Avatar of {displayName}":"{displayName} profilképe","Avatar of {displayName}, {status}":"{displayName} profilképe, {status}","Cancel changes":"Változtatások elvetése","Change title":"Cím megváltoztatása",Choose:"Válassszon","Clear text":"Szöveg törlése",Close:"Bezárás","Close modal":"Ablak bezárása","Close navigation":"Navigáció bezárása","Close sidebar":"Oldalsáv bezárása","Confirm changes":"Változtatások megerősítése",Custom:"Egyéni","Edit item":"Elem szerkesztése","Error getting related resources":"Hiba a kapcsolódó erőforrások lekérésekor","Error parsing svg":"Hiba az SVG feldolgozásakor","External documentation for {title}":"Külső dokumentáció ehhez: {title}",Favorite:"Kedvenc",Flags:"Zászlók","Food & Drink":"Étel és ital","Frequently used":"Gyakran használt",Global:"Globális","Go back to the list":"Ugrás vissza a listához","Hide password":"Jelszó elrejtése","Message limit of {count} characters reached":"{count} karakteres üzenetkorlát elérve","More items …":"További elemek...",Next:"Következő","No emoji found":"Nem található emodzsi","No results":"Nincs találat",Objects:"Tárgyak",Open:"Megnyitás",'Open link to "{resourceTitle}"':"A(z) „{resourceTitle}” hivatkozásának megnyitása","Open navigation":"Navigáció megnyitása","Password is secure":"A jelszó biztonságos","Pause slideshow":"Diavetítés szüneteltetése","People & Body":"Emberek és test","Pick an emoji":"Válasszon egy emodzsit","Please select a time zone:":"Válasszon időzónát:",Previous:"Előző","Related resources":"Kapcsolódó erőforrások",Search:"Keresés","Search results":"Találatok","Select a tag":"Válasszon címkét",Settings:"Beállítások","Settings navigation":"Navigáció a beállításokban","Show password":"Jelszó megjelenítése","Smileys & Emotion":"Mosolyok és érzelmek","Start slideshow":"Diavetítés indítása",Submit:"Beküldés",Symbols:"Szimbólumok","Travel & Places":"Utazás és helyek","Type to search time zone":"Gépeljen az időzóna kereséséhez","Unable to search the group":"A csoport nem kereshető","Undo changes":"Változtatások visszavonása",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Írjon egy üzenetet, használja a „@”-ot valaki megemlítéséhet, illetve a „:”-ot az emodzsik automatikus kiegészítéséhez…"}},{locale:"is",translations:{"{tag} (invisible)":"{tag} (ósýnilegt)","{tag} (restricted)":"{tag} (takmarkað)",Actions:"Aðgerðir",Activities:"Aðgerðir","Animals & Nature":"Dýr og náttúra",Choose:"Velja",Close:"Loka",Custom:"Sérsniðið",Flags:"Flögg","Food & Drink":"Matur og drykkur","Frequently used":"Oftast notað",Next:"Næsta","No emoji found":"Ekkert tjáningartákn fannst","No results":"Engar niðurstöður",Objects:"Hlutir","Pause slideshow":"Gera hlé á skyggnusýningu","People & Body":"Fólk og líkami","Pick an emoji":"Veldu tjáningartákn",Previous:"Fyrri",Search:"Leita","Search results":"Leitarniðurstöður","Select a tag":"Veldu merki",Settings:"Stillingar","Smileys & Emotion":"Broskallar og tilfinningar","Start slideshow":"Byrja skyggnusýningu",Symbols:"Tákn","Travel & Places":"Staðir og ferðalög","Unable to search the group":"Get ekki leitað í hópnum"}},{locale:"it",translations:{"{tag} (invisible)":"{tag} (invisibile)","{tag} (restricted)":"{tag} (limitato)",Actions:"Azioni",Activities:"Attività","Animals & Nature":"Animali e natura","Anything shared with the same group of people will show up here":"Tutto ciò che è stato condiviso con lo stesso gruppo di persone viene visualizzato qui","Avatar of {displayName}":"Avatar di {displayName}","Avatar of {displayName}, {status}":"Avatar di {displayName}, {status}","Cancel changes":"Annulla modifiche","Change title":"Modifica il titolo",Choose:"Scegli","Clear text":"Cancella il testo",Close:"Chiudi","Close modal":"Chiudi il messaggio modale","Close navigation":"Chiudi la navigazione","Close sidebar":"Chiudi la barra laterale","Confirm changes":"Conferma modifiche",Custom:"Personalizzato","Edit item":"Modifica l'elemento","Error getting related resources":"Errore nell'ottenere risorse correlate","Error parsing svg":"Errore nell'analizzare l'svg","External documentation for {title}":"Documentazione esterna per {title}",Favorite:"Preferito",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente",Global:"Globale","Go back to the list":"Torna all'elenco","Hide password":"Nascondi la password","Message limit of {count} characters reached":"Limite dei messaggi di {count} caratteri raggiunto","More items …":"Più elementi ...",Next:"Successivo","No emoji found":"Nessun emoji trovato","No results":"Nessun risultato",Objects:"Oggetti",Open:"Apri",'Open link to "{resourceTitle}"':'Apri il link a "{resourceTitle}"',"Open navigation":"Apri la navigazione","Password is secure":"La password è sicura","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji","Please select a time zone:":"Si prega di selezionare un fuso orario:",Previous:"Precedente","Related resources":"Risorse correlate",Search:"Cerca","Search results":"Risultati di ricerca","Select a tag":"Seleziona un'etichetta",Settings:"Impostazioni","Settings navigation":"Navigazione delle impostazioni","Show password":"Mostra la password","Smileys & Emotion":"Faccine ed emozioni","Start slideshow":"Avvia presentazione",Submit:"Invia",Symbols:"Simboli","Travel & Places":"Viaggi e luoghi","Type to search time zone":"Digita per cercare un fuso orario","Unable to search the group":"Impossibile cercare il gruppo","Undo changes":"Cancella i cambiamenti",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrivi un messaggio, "@" per menzionare qualcuno, ":" per il completamento automatico delle emoji ...'}},{locale:"ja_JP",translations:{"{tag} (invisible)":"{タグ} (不可視)","{tag} (restricted)":"{タグ} (制限付)",Actions:"操作",Activities:"アクティビティ","Animals & Nature":"動物と自然","Anything shared with the same group of people will show up here":"同じグループで共有しているものは、全てここに表示されます","Avatar of {displayName}":"{displayName} のアバター","Avatar of {displayName}, {status}":"{displayName}, {status} のアバター","Cancel changes":"変更をキャンセル","Change title":"タイトルを変更",Choose:"選択","Clear text":"テキストをクリア",Close:"閉じる","Close modal":"モーダルを閉じる","Close navigation":"ナビゲーションを閉じる","Close sidebar":"サイドバーを閉じる","Confirm changes":"変更を承認",Custom:"カスタム","Edit item":"編集","Error getting related resources":"関連リソースの取得エラー","Error parsing svg":"svgの解析エラー","External documentation for {title}":"{title} のための添付文書",Favorite:"お気に入り",Flags:"国旗","Food & Drink":"食べ物と飲み物","Frequently used":"よく使うもの",Global:"全体","Go back to the list":"リストに戻る","Hide password":"パスワードを非表示","Message limit of {count} characters reached":"{count} 文字のメッセージ上限に達しています","More items …":"他のアイテム",Next:"次","No emoji found":"絵文字が見つかりません","No results":"なし",Objects:"物",Open:"開く",'Open link to "{resourceTitle}"':'"{resourceTitle}"のリンクを開く',"Open navigation":"ナビゲーションを開く","Password is secure":"パスワードは保護されています","Pause slideshow":"スライドショーを一時停止","People & Body":"様々な人と体の部位","Pick an emoji":"絵文字を選択","Please select a time zone:":"タイムゾーンを選んで下さい:",Previous:"前","Related resources":"関連リソース",Search:"検索","Search results":"検索結果","Select a tag":"タグを選択",Settings:"設定","Settings navigation":"ナビゲーション設定","Show password":"パスワードを表示","Smileys & Emotion":"感情表現","Start slideshow":"スライドショーを開始",Submit:"提出",Symbols:"記号","Travel & Places":"旅行と場所","Type to search time zone":"タイムゾーン検索のため入力してください","Unable to search the group":"グループを検索できません","Undo changes":"変更を取り消し",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'メッセージを記入、"@"でメンション、":"で絵文字の自動補完 ...'}},{locale:"lt_LT",translations:{"{tag} (invisible)":"{tag} (nematoma)","{tag} (restricted)":"{tag} (apribota)",Actions:"Veiksmai",Activities:"Veiklos","Animals & Nature":"Gyvūnai ir gamta",Choose:"Pasirinkti",Close:"Užverti",Custom:"Tinkinti","External documentation for {title}":"Išorinė {title} dokumentacija",Flags:"Vėliavos","Food & Drink":"Maistas ir gėrimai","Frequently used":"Dažniausiai naudoti","Message limit of {count} characters reached":"Pasiekta {count} simbolių žinutės riba",Next:"Kitas","No emoji found":"Nerasta jaustukų","No results":"Nėra rezultatų",Objects:"Objektai","Pause slideshow":"Pristabdyti skaidrių rodymą","People & Body":"Žmonės ir kūnas","Pick an emoji":"Pasirinkti jaustuką",Previous:"Ankstesnis",Search:"Ieškoti","Search results":"Paieškos rezultatai","Select a tag":"Pasirinkti žymę",Settings:"Nustatymai","Settings navigation":"Naršymas nustatymuose","Smileys & Emotion":"Šypsenos ir emocijos","Start slideshow":"Pradėti skaidrių rodymą",Submit:"Pateikti",Symbols:"Simboliai","Travel & Places":"Kelionės ir vietos","Unable to search the group":"Nepavyko atlikti paiešką grupėje","Write message, @ to mention someone …":"Rašykite žinutę, naudokite @ norėdami kažką paminėti…"}},{locale:"lv",translations:{"{tag} (invisible)":"{tag} (neredzams)","{tag} (restricted)":"{tag} (ierobežots)",Choose:"Izvēlēties",Close:"Aizvērt",Next:"Nākamais","No results":"Nav rezultātu","Pause slideshow":"Pauzēt slaidrādi",Previous:"Iepriekšējais","Select a tag":"Izvēlēties birku",Settings:"Iestatījumi","Start slideshow":"Sākt slaidrādi"}},{locale:"mk",translations:{"{tag} (invisible)":"{tag} (невидливо)","{tag} (restricted)":"{tag} (ограничено)",Actions:"Акции",Activities:"Активности","Animals & Nature":"Животни & Природа","Avatar of {displayName}":"Аватар на {displayName}","Avatar of {displayName}, {status}":"Аватар на {displayName}, {status}","Cancel changes":"Откажи ги промените","Change title":"Промени наслов",Choose:"Избери",Close:"Затвори","Close modal":"Затвори модал","Close navigation":"Затвори навигација","Confirm changes":"Потврди ги промените",Custom:"Прилагодени","Edit item":"Уреди","External documentation for {title}":"Надворешна документација за {title}",Favorite:"Фаворити",Flags:"Знамиња","Food & Drink":"Храна & Пијалоци","Frequently used":"Најчесто користени",Global:"Глобално","Go back to the list":"Врати се на листата",items:"ставки","Message limit of {count} characters reached":"Ограничувањето на должината на пораката од {count} карактери е надминато","More {dashboardItemType} …":"Повеќе {dashboardItemType} …",Next:"Следно","No emoji found":"Не се пронајдени емотикони","No results":"Нема резултати",Objects:"Објекти",Open:"Отвори","Open navigation":"Отвори навигација","Pause slideshow":"Пузирај слајдшоу","People & Body":"Луѓе & Тело","Pick an emoji":"Избери емотикон","Please select a time zone:":"Изберете временска зона:",Previous:"Предходно",Search:"Барај","Search results":"Резултати од барувањето","Select a tag":"Избери ознака",Settings:"Параметри","Settings navigation":"Параметри за навигација","Smileys & Emotion":"Смешковци & Емотикони","Start slideshow":"Стартувај слајдшоу",Submit:"Испрати",Symbols:"Симболи","Travel & Places":"Патувања & Места","Type to search time zone":"Напишете за да пребарате временска зона","Unable to search the group":"Неможе да се принајде групата","Undo changes":"Врати ги промените","Write message, @ to mention someone, : for emoji autocompletion …":"Напиши порака, @ за да спомнете некого, : за емотинони автоатско комплетирање ..."}},{locale:"my",translations:{"{tag} (invisible)":"{tag} (ကွယ်ဝှက်ထား)","{tag} (restricted)":"{tag} (ကန့်သတ်)",Actions:"လုပ်ဆောင်ချက်များ",Activities:"ပြုလုပ်ဆောင်တာများ","Animals & Nature":"တိရစ္ဆာန်များနှင့် သဘာဝ","Avatar of {displayName}":"{displayName} ၏ ကိုယ်ပွား","Cancel changes":"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်",Choose:"ရွေးချယ်ရန်",Close:"ပိတ်ရန်","Confirm changes":"ပြောင်းလဲမှုများ အတည်ပြုရန်",Custom:"အလိုကျချိန်ညှိမှု","External documentation for {title}":"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း",Flags:"အလံများ","Food & Drink":"အစားအသောက်","Frequently used":"မကြာခဏအသုံးပြုသော",Global:"ကမ္ဘာလုံးဆိုင်ရာ","Message limit of {count} characters reached":"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ",Next:"နောက်သို့ဆက်ရန်","No emoji found":"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ","No results":"ရလဒ်မရှိပါ",Objects:"အရာဝတ္ထုများ","Pause slideshow":"စလိုက်ရှိုး ခေတ္တရပ်ရန်","People & Body":"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်","Pick an emoji":"အီမိုဂျီရွေးရန်","Please select a time zone:":"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ",Previous:"ယခင်",Search:"ရှာဖွေရန်","Search results":"ရှာဖွေမှု ရလဒ်များ","Select a tag":"tag ရွေးချယ်ရန်",Settings:"ချိန်ညှိချက်များ","Settings navigation":"ချိန်ညှိချက်အညွှန်း","Smileys & Emotion":"စမိုင်လီများနှင့် အီမိုရှင်း","Start slideshow":"စလိုက်ရှိုးအား စတင်ရန်",Submit:"တင်သွင်းရန်",Symbols:"သင်္ကေတများ","Travel & Places":"ခရီးသွားလာခြင်းနှင့် နေရာများ","Type to search time zone":"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ","Unable to search the group":"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ","Write message, @ to mention someone …":"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်..."}},{locale:"nb_NO",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (beskyttet)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr og natur","Anything shared with the same group of people will show up here":"Alt som er delt med den samme gruppen vil vises her","Avatar of {displayName}":"Avataren til {displayName}","Avatar of {displayName}, {status}":"{displayName}'s avatar, {status}","Cancel changes":"Avbryt endringer","Change title":"Endre tittel",Choose:"Velg","Clear text":"Fjern tekst",Close:"Lukk","Close modal":"Lukk modal","Close navigation":"Lukk navigasjon","Close sidebar":"Lukk sidepanel","Confirm changes":"Bekreft endringer",Custom:"Tilpasset","Edit item":"Rediger","Error getting related resources":"Feil ved henting av relaterte ressurser","Error parsing svg":"Feil ved parsing av svg","External documentation for {title}":"Ekstern dokumentasjon for {title}",Favorite:"Favoritt",Flags:"Flagg","Food & Drink":"Mat og drikke","Frequently used":"Ofte brukt",Global:"Global","Go back to the list":"Gå tilbake til listen","Hide password":"Skjul passord","Message limit of {count} characters reached":"Karakter begrensing {count} nådd i melding","More items …":"Flere gjenstander...",Next:"Neste","No emoji found":"Fant ingen emoji","No results":"Ingen resultater",Objects:"Objekter",Open:"Åpne",'Open link to "{resourceTitle}"':'Åpne link til "{resourceTitle}"',"Open navigation":"Åpne navigasjon","Password is secure":"Passordet er sikkert","Pause slideshow":"Pause lysbildefremvisning","People & Body":"Mennesker og kropp","Pick an emoji":"Velg en emoji","Please select a time zone:":"Vennligst velg tidssone",Previous:"Forrige","Related resources":"Relaterte ressurser",Search:"Søk","Search results":"Søkeresultater","Select a tag":"Velg en merkelapp",Settings:"Innstillinger","Settings navigation":"Navigasjonsinstillinger","Show password":"Vis passord","Smileys & Emotion":"Smilefjes og følelser","Start slideshow":"Start lysbildefremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Reise og steder","Type to search time zone":"Tast for å søke etter tidssone","Unable to search the group":"Kunne ikke søke i gruppen","Undo changes":"Tilbakestill endringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv melding, bruk "@" for å nevne noen, bruk ":" for autofullføring av emoji...'}},{locale:"nl",translations:{"{tag} (invisible)":"{tag} (onzichtbaar)","{tag} (restricted)":"{tag} (beperkt)",Actions:"Acties",Activities:"Activiteiten","Animals & Nature":"Dieren & Natuur","Avatar of {displayName}":"Avatar van {displayName}","Avatar of {displayName}, {status}":"Avatar van {displayName}, {status}","Cancel changes":"Wijzigingen annuleren",Choose:"Kies",Close:"Sluiten","Close navigation":"Navigatie sluiten","Confirm changes":"Wijzigingen bevestigen",Custom:"Aangepast","Edit item":"Item bewerken","External documentation for {title}":"Externe documentatie voor {title}",Flags:"Vlaggen","Food & Drink":"Eten & Drinken","Frequently used":"Vaak gebruikt",Global:"Globaal","Go back to the list":"Ga terug naar de lijst","Message limit of {count} characters reached":"Berichtlimiet van {count} karakters bereikt",Next:"Volgende","No emoji found":"Geen emoji gevonden","No results":"Geen resultaten",Objects:"Objecten","Open navigation":"Navigatie openen","Pause slideshow":"Pauzeer diavoorstelling","People & Body":"Mensen & Lichaam","Pick an emoji":"Kies een emoji","Please select a time zone:":"Selecteer een tijdzone:",Previous:"Vorige",Search:"Zoeken","Search results":"Zoekresultaten","Select a tag":"Selecteer een label",Settings:"Instellingen","Settings navigation":"Instellingen navigatie","Smileys & Emotion":"Smileys & Emotie","Start slideshow":"Start diavoorstelling",Submit:"Verwerken",Symbols:"Symbolen","Travel & Places":"Reizen & Plaatsen","Type to search time zone":"Type om de tijdzone te zoeken","Unable to search the group":"Kan niet in de groep zoeken","Undo changes":"Wijzigingen ongedaan maken","Write message, @ to mention someone, : for emoji autocompletion …":"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ..."}},{locale:"oc",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (limit)",Actions:"Accions",Choose:"Causir",Close:"Tampar",Next:"Seguent","No results":"Cap de resultat","Pause slideshow":"Metre en pausa lo diaporama",Previous:"Precedent","Select a tag":"Seleccionar una etiqueta",Settings:"Paramètres","Start slideshow":"Lançar lo diaporama"}},{locale:"pl",translations:{"{tag} (invisible)":"{tag} (niewidoczna)","{tag} (restricted)":"{tag} (ograniczona)",Actions:"Działania",Activities:"Aktywność","Animals & Nature":"Zwierzęta i natura","Anything shared with the same group of people will show up here":"Tutaj pojawi się wszystko, co zostało udostępnione tej samej grupie osób","Avatar of {displayName}":"Awatar {displayName}","Avatar of {displayName}, {status}":"Awatar {displayName}, {status}","Cancel changes":"Anuluj zmiany","Change title":"Zmień tytuł",Choose:"Wybierz","Clear text":"Wyczyść tekst",Close:"Zamknij","Close modal":"Zamknij modal","Close navigation":"Zamknij nawigację","Close sidebar":"Zamknij pasek boczny","Confirm changes":"Potwierdź zmiany",Custom:"Zwyczajne","Edit item":"Edytuj element","Error getting related resources":"Błąd podczas pobierania powiązanych zasobów","Error parsing svg":"Błąd podczas analizowania svg","External documentation for {title}":"Dokumentacja zewnętrzna dla {title}",Favorite:"Ulubiony",Flags:"Flagi","Food & Drink":"Jedzenie i picie","Frequently used":"Często używane",Global:"Globalnie","Go back to the list":"Powrót do listy","Hide password":"Ukryj hasło","Message limit of {count} characters reached":"Przekroczono limit wiadomości wynoszący {count} znaków","More items …":"Więcej pozycji…",Next:"Następny","No emoji found":"Nie znaleziono emoji","No results":"Brak wyników",Objects:"Obiekty",Open:"Otwórz",'Open link to "{resourceTitle}"':'Otwórz link do "{resourceTitle}"',"Open navigation":"Otwórz nawigację","Password is secure":"Hasło jest bezpieczne","Pause slideshow":"Wstrzymaj pokaz slajdów","People & Body":"Ludzie i ciało","Pick an emoji":"Wybierz emoji","Please select a time zone:":"Wybierz strefę czasową:",Previous:"Poprzedni","Related resources":"Powiązane zasoby",Search:"Szukaj","Search results":"Wyniki wyszukiwania","Select a tag":"Wybierz etykietę",Settings:"Ustawienia","Settings navigation":"Ustawienia nawigacji","Show password":"Pokaż hasło","Smileys & Emotion":"Buźki i emotikony","Start slideshow":"Rozpocznij pokaz slajdów",Submit:"Wyślij",Symbols:"Symbole","Travel & Places":"Podróże i miejsca","Type to search time zone":"Wpisz, aby wyszukać strefę czasową","Unable to search the group":"Nie można przeszukać grupy","Undo changes":"Cofnij zmiany",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Napisz wiadomość, "@" aby o kimś wspomnieć, ":" dla autouzupełniania emoji…'}},{locale:"pt_BR",translations:{"{tag} (invisible)":"{tag} (invisível)","{tag} (restricted)":"{tag} (restrito) ",Actions:"Ações",Activities:"Atividades","Animals & Nature":"Animais & Natureza","Anything shared with the same group of people will show up here":"Qualquer coisa compartilhada com o mesmo grupo de pessoas aparecerá aqui","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar alterações","Change title":"Alterar título",Choose:"Escolher","Clear text":"Limpar texto",Close:"Fechar","Close modal":"Fechar modal","Close navigation":"Fechar navegação","Close sidebar":"Fechar barra lateral","Confirm changes":"Confirmar alterações",Custom:"Personalizado","Edit item":"Editar item","Error getting related resources":"Erro ao obter recursos relacionados","Error parsing svg":"Erro ao analisar svg","External documentation for {title}":"Documentação externa para {title}",Favorite:"Favorito",Flags:"Bandeiras","Food & Drink":"Comida & Bebida","Frequently used":"Mais usados",Global:"Global","Go back to the list":"Volte para a lista","Hide password":"Ocultar a senha","Message limit of {count} characters reached":"Limite de mensagem de {count} caracteres atingido","More items …":"Mais itens …",Next:"Próximo","No emoji found":"Nenhum emoji encontrado","No results":"Sem resultados",Objects:"Objetos",Open:"Aberto",'Open link to "{resourceTitle}"':'Abrir link para "{resourceTitle}"',"Open navigation":"Abrir navegação","Password is secure":"A senha é segura","Pause slideshow":"Pausar apresentação de slides","People & Body":"Pessoas & Corpo","Pick an emoji":"Escolha um emoji","Please select a time zone:":"Selecione um fuso horário: ",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Pesquisar","Search results":"Resultados da pesquisa","Select a tag":"Selecionar uma tag",Settings:"Configurações","Settings navigation":"Navegação de configurações","Show password":"Mostrar senha","Smileys & Emotion":"Smiles & Emoções","Start slideshow":"Iniciar apresentação de slides",Submit:"Enviar",Symbols:"Símbolo","Travel & Places":"Viagem & Lugares","Type to search time zone":"Digite para pesquisar o fuso horário ","Unable to search the group":"Não foi possível pesquisar o grupo","Undo changes":"Desfazer modificações",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escreva mensagens, use "@" para mencionar algum, use ":" for autocompletar emoji …'}},{locale:"pt_PT",translations:{"{tag} (invisible)":"{tag} (invisivel)","{tag} (restricted)":"{tag} (restrito)",Actions:"Ações",Choose:"Escolher",Close:"Fechar",Next:"Seguinte","No results":"Sem resultados","Pause slideshow":"Pausar diaporama",Previous:"Anterior","Select a tag":"Selecionar uma etiqueta",Settings:"Definições","Start slideshow":"Iniciar diaporama","Unable to search the group":"Não é possível pesquisar o grupo"}},{locale:"ro",translations:{"{tag} (invisible)":"{tag} (invizibil)","{tag} (restricted)":"{tag} (restricționat)",Actions:"Acțiuni",Activities:"Activități","Animals & Nature":"Animale și natură","Anything shared with the same group of people will show up here":"Tot ceea ce este partajat cu același grup de persoane va fi afișat aici","Avatar of {displayName}":"Avatarul lui {displayName}","Avatar of {displayName}, {status}":"Avatarul lui {displayName}, {status}","Cancel changes":"Anulează modificările","Change title":"Modificați titlul",Choose:"Alegeți","Clear text":"Șterge textul",Close:"Închideți","Close modal":"Închideți modulul","Close navigation":"Închideți navigarea","Close sidebar":"Închide bara laterală","Confirm changes":"Confirmați modificările",Custom:"Personalizat","Edit item":"Editați elementul","Error getting related resources":" Eroare la returnarea resurselor legate","Error parsing svg":"Eroare de analizare a svg","External documentation for {title}":"Documentație externă pentru {title}",Favorite:"Favorit",Flags:"Marcaje","Food & Drink":"Alimente și băuturi","Frequently used":"Utilizate frecvent",Global:"Global","Go back to the list":"Întoarceți-vă la listă","Hide password":"Ascunde parola","Message limit of {count} characters reached":"Limita mesajului de {count} caractere a fost atinsă","More items …":"Mai multe articole ...",Next:"Următorul","No emoji found":"Nu s-a găsit niciun emoji","No results":"Nu există rezultate",Objects:"Obiecte",Open:"Deschideți",'Open link to "{resourceTitle}"':'Deschide legătura la "{resourceTitle}"',"Open navigation":"Deschideți navigația","Password is secure":"Parola este sigură","Pause slideshow":"Pauză prezentare de diapozitive","People & Body":"Oameni și corp","Pick an emoji":"Alege un emoji","Please select a time zone:":"Vă rugăm să selectați un fus orar:",Previous:"Anterior","Related resources":"Resurse legate",Search:"Căutare","Search results":"Rezultatele căutării","Select a tag":"Selectați o etichetă",Settings:"Setări","Settings navigation":"Navigare setări","Show password":"Arată parola","Smileys & Emotion":"Zâmbete și emoții","Start slideshow":"Începeți prezentarea de diapozitive",Submit:"Trimiteți",Symbols:"Simboluri","Travel & Places":"Călătorii și locuri","Type to search time zone":"Tastați pentru a căuta fusul orar","Unable to search the group":"Imposibilitatea de a căuta în grup","Undo changes":"Anularea modificărilor",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrie un mesaj, folosește "@" pentru a menționa pe cineva, folosește ":" pentru autocompletarea cu emoji ...'}},{locale:"ru",translations:{"{tag} (invisible)":"{tag} (невидимое)","{tag} (restricted)":"{tag} (ограниченное)",Actions:"Действия ",Activities:"События","Animals & Nature":"Животные и природа ","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Фотография {displayName}, {status}","Cancel changes":"Отменить изменения",Choose:"Выберите",Close:"Закрыть","Close modal":"Закрыть модальное окно","Close navigation":"Закрыть навигацию","Confirm changes":"Подтвердить изменения",Custom:"Пользовательское","Edit item":"Изменить элемент","External documentation for {title}":"Внешняя документация для {title}",Flags:"Флаги","Food & Drink":"Еда, напиток","Frequently used":"Часто используемый",Global:"Глобальный","Go back to the list":"Вернуться к списку",items:"элементов","Message limit of {count} characters reached":"Достигнуто ограничение на количество символов в {count}","More {dashboardItemType} …":"Больше {dashboardItemType} …",Next:"Следующее","No emoji found":"Эмодзи не найдено","No results":"Результаты отсуствуют",Objects:"Объекты",Open:"Открыть","Open navigation":"Открыть навигацию","Pause slideshow":"Приостановить показ слйдов","People & Body":"Люди и тело","Pick an emoji":"Выберите эмодзи","Please select a time zone:":"Пожалуйста, выберите часовой пояс:",Previous:"Предыдущее",Search:"Поиск","Search results":"Результаты поиска","Select a tag":"Выберите метку",Settings:"Параметры","Settings navigation":"Навигация по настройкам","Smileys & Emotion":"Смайлики и эмоции","Start slideshow":"Начать показ слайдов",Submit:"Утвердить",Symbols:"Символы","Travel & Places":"Путешествия и места","Type to search time zone":"Введите для поиска часового пояса","Unable to search the group":"Невозможно найти группу","Undo changes":"Отменить изменения","Write message, @ to mention someone, : for emoji autocompletion …":"Напишите сообщение, @ - чтобы упомянуть кого-то, : - для автозаполнения эмодзи …"}},{locale:"sk_SK",translations:{"{tag} (invisible)":"{tag} (neviditeľný)","{tag} (restricted)":"{tag} (obmedzený)",Actions:"Akcie",Activities:"Aktivity","Animals & Nature":"Zvieratá a príroda","Avatar of {displayName}":"Avatar {displayName}","Avatar of {displayName}, {status}":"Avatar {displayName}, {status}","Cancel changes":"Zrušiť zmeny",Choose:"Vybrať",Close:"Zatvoriť","Close navigation":"Zavrieť navigáciu","Confirm changes":"Potvrdiť zmeny",Custom:"Zvyk","Edit item":"Upraviť položku","External documentation for {title}":"Externá dokumentácia pre {title}",Flags:"Vlajky","Food & Drink":"Jedlo a nápoje","Frequently used":"Často používané",Global:"Globálne","Go back to the list":"Naspäť na zoznam","Message limit of {count} characters reached":"Limit správy na {count} znakov dosiahnutý",Next:"Ďalší","No emoji found":"Nenašli sa žiadne emodži","No results":"Žiadne výsledky",Objects:"Objekty","Open navigation":"Otvoriť navigáciu","Pause slideshow":"Pozastaviť prezentáciu","People & Body":"Ľudia a telo","Pick an emoji":"Vyberte si emodži","Please select a time zone:":"Prosím vyberte časovú zónu:",Previous:"Predchádzajúci",Search:"Hľadať","Search results":"Výsledky vyhľadávania","Select a tag":"Vybrať štítok",Settings:"Nastavenia","Settings navigation":"Navigácia v nastaveniach","Smileys & Emotion":"Smajlíky a emócie","Start slideshow":"Začať prezentáciu",Submit:"Odoslať",Symbols:"Symboly","Travel & Places":"Cestovanie a miesta","Type to search time zone":"Začníte písať pre vyhľadávanie časovej zóny","Unable to search the group":"Skupinu sa nepodarilo nájsť","Undo changes":"Vrátiť zmeny","Write message, @ to mention someone, : for emoji autocompletion …":"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…"}},{locale:"sl",translations:{"{tag} (invisible)":"{tag} (nevidno)","{tag} (restricted)":"{tag} (omejeno)",Actions:"Dejanja",Activities:"Dejavnosti","Animals & Nature":"Živali in Narava","Avatar of {displayName}":"Podoba {displayName}","Avatar of {displayName}, {status}":"Prikazna slika {displayName}, {status}","Cancel changes":"Prekliči spremembe","Change title":"Spremeni naziv",Choose:"Izbor","Clear text":"Počisti besedilo",Close:"Zapri","Close modal":"Zapri pojavno okno","Close navigation":"Zapri krmarjenje","Close sidebar":"Zapri stransko vrstico","Confirm changes":"Potrdi spremembe",Custom:"Po meri","Edit item":"Uredi predmet","Error getting related resources":"Napaka pridobivanja povezanih virov","External documentation for {title}":"Zunanja dokumentacija za {title}",Favorite:"Priljubljeno",Flags:"Zastavice","Food & Drink":"Hrana in Pijača","Frequently used":"Pogostost uporabe",Global:"Splošno","Go back to the list":"Vrni se na seznam","Hide password":"Skrij geslo","Message limit of {count} characters reached":"Dosežena omejitev {count} znakov na sporočilo.","More items …":"Več predmetov ...",Next:"Naslednji","No emoji found":"Ni najdenih izraznih ikon","No results":"Ni zadetkov",Objects:"Predmeti",Open:"Odpri",'Open link to "{resourceTitle}"':"Odpri povezavo do »{resourceTitle}«","Open navigation":"Odpri krmarjenje","Password is secure":"Geslo je varno","Pause slideshow":"Ustavi predstavitev","People & Body":"Ljudje in Telo","Pick a date":"Izbor datuma","Pick a date and a time":"Izbor datuma in časa","Pick a month":"Izbor meseca","Pick a time":"Izbor časa","Pick a week":"Izbor tedna","Pick a year":"Izbor leta","Pick an emoji":"Izbor izrazne ikone","Please select a time zone:":"Izbor časovnega pasu:",Previous:"Predhodni","Related resources":"Povezani viri",Search:"Iskanje","Search results":"Zadetki iskanja","Select a tag":"Izbor oznake",Settings:"Nastavitve","Settings navigation":"Krmarjenje nastavitev","Show password":"Pokaži geslo","Smileys & Emotion":"Izrazne ikone","Start slideshow":"Začni predstavitev",Submit:"Pošlji",Symbols:"Simboli","Travel & Places":"Potovanja in Kraji","Type to search time zone":"Vpišite niz za iskanje časovnega pasu","Unable to search the group":"Ni mogoče iskati po skupini","Undo changes":"Razveljavi spremembe","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite sporočilo, za omembo pred ime postavite@, začnite z : za vstavljanje izraznih ikon …"}},{locale:"sr",translations:{"{tag} (invisible)":"{tag} (nevidljivo)","{tag} (restricted)":"{tag} (ograničeno)",Actions:"Radnje",Activities:"Aktivnosti","Animals & Nature":"Životinje i Priroda","Avatar of {displayName}":"Avatar za {displayName}","Avatar of {displayName}, {status}":"Avatar za {displayName}, {status}","Cancel changes":"Otkaži izmene","Change title":"Izmeni naziv",Choose:"Изаберите",Close:"Затвори","Close modal":"Zatvori modal","Close navigation":"Zatvori navigaciju","Close sidebar":"Zatvori bočnu traku","Confirm changes":"Potvrdite promene",Custom:"Po meri","Edit item":"Uredi stavku","External documentation for {title}":"Eksterna dokumentacija za {title}",Favorite:"Omiljeni",Flags:"Zastave","Food & Drink":"Hrana i Piće","Frequently used":"Često korišćeno",Global:"Globalno","Go back to the list":"Natrag na listu",items:"stavke","Message limit of {count} characters reached":"Dostignuto je ograničenje za poruke od {count} znakova","More {dashboardItemType} …":"Više {dashboardItemType} …",Next:"Следеће","No emoji found":"Nije pronađen nijedan emodži","No results":"Нема резултата",Objects:"Objekti",Open:"Otvori","Open navigation":"Otvori navigaciju","Pause slideshow":"Паузирај слајд шоу","People & Body":"Ljudi i Telo","Pick an emoji":"Izaberi emodži","Please select a time zone:":"Molimo izaberite vremensku zonu:",Previous:"Претходно",Search:"Pretraži","Search results":"Rezultati pretrage","Select a tag":"Изаберите ознаку",Settings:"Поставке","Settings navigation":"Navigacija u podešavanjima","Smileys & Emotion":"Smajli i Emocije","Start slideshow":"Покрени слајд шоу",Submit:"Prihvati",Symbols:"Simboli","Travel & Places":"Putovanja i Mesta","Type to search time zone":"Ukucaj da pretražiš vremenske zone","Unable to search the group":"Nije moguće pretražiti grupu","Undo changes":"Poništi promene","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite poruku, @ da pomenete nekoga, : za automatsko dovršavanje emodžija…"}},{locale:"sv",translations:{"{tag} (invisible)":"{tag} (osynlig)","{tag} (restricted)":"{tag} (begränsad)",Actions:"Åtgärder",Activities:"Aktiviteter","Animals & Nature":"Djur & Natur","Anything shared with the same group of people will show up here":"Något som delats med samma grupp av personer kommer att visas här","Avatar of {displayName}":"{displayName}s avatar","Avatar of {displayName}, {status}":"{displayName}s avatar, {status}","Cancel changes":"Avbryt ändringar","Change title":"Ändra titel",Choose:"Välj","Clear text":"Ta bort text",Close:"Stäng","Close modal":"Stäng modal","Close navigation":"Stäng navigering","Close sidebar":"Stäng sidopanel","Confirm changes":"Bekräfta ändringar",Custom:"Anpassad","Edit item":"Ändra","Error getting related resources":"Problem att hämta relaterade resurser","Error parsing svg":"Fel vid inläsning av svg","External documentation for {title}":"Extern dokumentation för {title}",Favorite:"Favorit",Flags:"Flaggor","Food & Drink":"Mat & Dryck","Frequently used":"Används ofta",Global:"Global","Go back to the list":"Gå tillbaka till listan","Hide password":"Göm lössenordet","Message limit of {count} characters reached":"Meddelandegräns {count} tecken används","More items …":"Fler objekt",Next:"Nästa","No emoji found":"Hittade inga emojis","No results":"Inga resultat",Objects:"Objekt",Open:"Öppna",'Open link to "{resourceTitle}"':'Öppna länk till "{resourceTitle}"',"Open navigation":"Öppna navigering","Password is secure":"Lössenordet är säkert","Pause slideshow":"Pausa bildspelet","People & Body":"Kropp & Själ","Pick an emoji":"Välj en emoji","Please select a time zone:":"Välj tidszon:",Previous:"Föregående","Related resources":"Relaterade resurser",Search:"Sök","Search results":"Sökresultat","Select a tag":"Välj en tag",Settings:"Inställningar","Settings navigation":"Inställningsmeny","Show password":"Visa lössenordet","Smileys & Emotion":"Selfies & Känslor","Start slideshow":"Starta bildspelet",Submit:"Skicka",Symbols:"Symboler","Travel & Places":"Resor & Sevärdigheter","Type to search time zone":"Skriv för att välja tidszon","Unable to search the group":"Kunde inte söka i gruppen","Undo changes":"Ångra ändringar",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv meddelande, använd "@" för att nämna någon, använd ":" för automatiska emojiförslag ...'}},{locale:"tr",translations:{"{tag} (invisible)":"{tag} (görünmez)","{tag} (restricted)":"{tag} (kısıtlı)",Actions:"İşlemler",Activities:"Etkinlikler","Animals & Nature":"Hayvanlar ve Doğa","Anything shared with the same group of people will show up here":"Aynı kişi grubu ile paylaşılan herşey burada görüntülenir","Avatar of {displayName}":"{displayName} avatarı","Avatar of {displayName}, {status}":"{displayName}, {status} avatarı","Cancel changes":"Değişiklikleri iptal et","Change title":"Başlığı değiştir",Choose:"Seçin","Clear text":"Metni temizle",Close:"Kapat","Close modal":"Üste açılan pencereyi kapat","Close navigation":"Gezinmeyi kapat","Close sidebar":"Yan çubuğu kapat","Confirm changes":"Değişiklikleri onayla",Custom:"Özel","Edit item":"Ögeyi düzenle","Error getting related resources":"İlgili kaynaklar alınırken sorun çıktı","Error parsing svg":"svg işlenirken sorun çıktı","External documentation for {title}":"{title} için dış belgeler",Favorite:"Sık kullanılanlara ekle",Flags:"Bayraklar","Food & Drink":"Yeme ve İçme","Frequently used":"Sık kullanılanlar",Global:"Evrensel","Go back to the list":"Listeye dön","Hide password":"Parolayı gizle","Message limit of {count} characters reached":"{count} karakter ileti sınırına ulaşıldı","More items …":"Diğer ögeler…",Next:"Sonraki","No emoji found":"Herhangi bir emoji bulunamadı","No results":"Herhangi bir sonuç bulunamadı",Objects:"Nesneler",Open:"Aç",'Open link to "{resourceTitle}"':'"{resourceTitle}" bağlantısını aç',"Open navigation":"Gezinmeyi aç","Password is secure":"Parola güvenli","Pause slideshow":"Slayt sunumunu duraklat","People & Body":"İnsanlar ve Beden","Pick an emoji":"Bir emoji seçin","Please select a time zone:":"Lütfen bir saat dilimi seçin:",Previous:"Önceki","Related resources":"İlgili kaynaklar",Search:"Arama","Search results":"Arama sonuçları","Select a tag":"Bir etiket seçin",Settings:"Ayarlar","Settings navigation":"Gezinme ayarları","Show password":"Parolayı görüntüle","Smileys & Emotion":"İfadeler ve Duygular","Start slideshow":"Slayt sunumunu başlat",Submit:"Gönder",Symbols:"Simgeler","Travel & Places":"Gezi ve Yerler","Type to search time zone":"Saat dilimi aramak için yazmaya başlayın","Unable to search the group":"Grupta arama yapılamadı","Undo changes":"Değişiklikleri geri al",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'İleti yazın, birini anmak için @, otomatik emoji tamamlamak için ":" kullanın…'}},{locale:"uk",translations:{"{tag} (invisible)":"{tag} (невидимий)","{tag} (restricted)":"{tag} (обмежений)",Actions:"Дії",Activities:"Діяльність","Animals & Nature":"Тварини та природа","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Аватар {displayName}, {status}","Cancel changes":"Скасувати зміни","Change title":"Змінити назву",Choose:"ВиберітьВиберіть","Clear text":"Очистити текст",Close:"Закрити","Close modal":"Закрити модаль","Close navigation":"Закрити навігацію","Close sidebar":"Закрити бічну панель","Confirm changes":"Підтвердити зміни",Custom:"Власне","Edit item":"Редагувати елемент","External documentation for {title}":"Зовнішня документація для {title}",Favorite:"Улюблений",Flags:"Прапори","Food & Drink":"Їжа та напої","Frequently used":"Найчастіші",Global:"Глобальний","Go back to the list":"Повернутися до списку","Hide password":"Приховати пароль",items:"елементи","Message limit of {count} characters reached":"Вичерпано ліміт у {count} символів для повідомлення","More {dashboardItemType} …":"Більше {dashboardItemType}…",Next:"Вперед","No emoji found":"Емоційки відсутні","No results":"Відсутні результати",Objects:"Об'єкти",Open:"Відкрити","Open navigation":"Відкрити навігацію","Password is secure":"Пароль безпечний","Pause slideshow":"Пауза у показі слайдів","People & Body":"Люди та жести","Pick an emoji":"Виберіть емоційку","Please select a time zone:":"Виберіть часовий пояс:",Previous:"Назад",Search:"Пошук","Search results":"Результати пошуку","Select a tag":"Виберіть позначку",Settings:"Налаштування","Settings navigation":"Навігація у налаштуваннях","Show password":"Показати пароль","Smileys & Emotion":"Смайли та емоції","Start slideshow":"Почати показ слайдів",Submit:"Надіслати",Symbols:"Символи","Travel & Places":"Поїздки та місця","Type to search time zone":"Введіть для пошуку часовий пояс","Unable to search the group":"Неможливо шукати в групі","Undo changes":"Скасувати зміни","Write message, @ to mention someone, : for emoji autocompletion …":"Напишіть повідомлення, @, щоб згадати когось, : для автозаповнення емодзі…"}},{locale:"zh_CN",translations:{"{tag} (invisible)":"{tag} (不可见)","{tag} (restricted)":"{tag} (受限)",Actions:"行为",Activities:"活动","Animals & Nature":"动物 & 自然","Anything shared with the same group of people will show up here":"与同组用户分享的所有内容都会显示于此","Avatar of {displayName}":"{displayName}的头像","Avatar of {displayName}, {status}":"{displayName}的头像,{status}","Cancel changes":"取消更改","Change title":"更改标题",Choose:"选择","Clear text":"清除文本",Close:"关闭","Close modal":"关闭窗口","Close navigation":"关闭导航","Close sidebar":"关闭侧边栏","Confirm changes":"确认更改",Custom:"自定义","Edit item":"编辑项目","Error getting related resources":"获取相关资源时出错","Error parsing svg":"解析 svg 时出错","External documentation for {title}":"{title}的外部文档",Favorite:"喜爱",Flags:"旗帜","Food & Drink":"食物 & 饮品","Frequently used":"经常使用",Global:"全局","Go back to the list":"返回至列表","Hide password":"隐藏密码","Message limit of {count} characters reached":"已达到 {count} 个字符的消息限制","More items …":"更多项目…",Next:"下一个","No emoji found":"表情未找到","No results":"无结果",Objects:"物体",Open:"打开",'Open link to "{resourceTitle}"':'打开"{resourceTitle}"的连接',"Open navigation":"开启导航","Password is secure":"密码安全","Pause slideshow":"暂停幻灯片","People & Body":"人 & 身体","Pick an emoji":"选择一个表情","Please select a time zone:":"请选择一个时区:",Previous:"上一个","Related resources":"相关资源",Search:"搜索","Search results":"搜索结果","Select a tag":"选择一个标签",Settings:"设置","Settings navigation":"设置向导","Show password":"显示密码","Smileys & Emotion":"笑脸 & 情感","Start slideshow":"开始幻灯片",Submit:"提交",Symbols:"符号","Travel & Places":"旅游 & 地点","Type to search time zone":"打字以搜索时区","Unable to search the group":"无法搜索分组","Undo changes":"撤销更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'写信息,使用"@"来提及某人,使用":"进行表情符号自动完成 ...'}},{locale:"zh_HK",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然","Anything shared with the same group of people will show up here":"與同一組人共享的任何內容都會顯示在此處","Avatar of {displayName}":"{displayName} 的頭像","Avatar of {displayName}, {status}":"{displayName} 的頭像,{status}","Cancel changes":"取消更改","Change title":"更改標題",Choose:"選擇","Clear text":"清除文本",Close:"關閉","Close modal":"關閉模態","Close navigation":"關閉導航","Close sidebar":"關閉側邊欄","Confirm changes":"確認更改",Custom:"自定義","Edit item":"編輯項目","Error getting related resources":"獲取相關資源出錯","Error parsing svg":"解析 svg 時出錯","External documentation for {title}":"{title} 的外部文檔",Favorite:"喜愛",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"經常使用",Global:"全球的","Go back to the list":"返回清單","Hide password":"隱藏密碼","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制","More items …":"更多項目 …",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件",Open:"打開",'Open link to "{resourceTitle}"':"打開指向 “{resourceTitle}” 的鏈結","Open navigation":"開啟導航","Password is secure":"密碼是安全的","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號","Please select a time zone:":"請選擇時區:",Previous:"上一個","Related resources":"相關資源",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Show password":"顯示密碼","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Submit:"提交",Symbols:"標誌","Travel & Places":"旅遊與景點","Type to search time zone":"鍵入以搜索時區","Unable to search the group":"無法搜尋群組","Undo changes":"取消更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'寫訊息,使用 "@" 來指代某人,使用 ":" 用於表情符號自動填充 ...'}},{locale:"zh_TW",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然",Choose:"選擇",Close:"關閉",Custom:"自定義",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"最近使用","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Symbols:"標誌","Travel & Places":"旅遊與景點","Unable to search the group":"無法搜尋群組","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}}].forEach((t=>{const e={};for(const n in t.translations)t.translations[n].pluralId?e[n]={msgid:n,msgid_plural:t.translations[n].pluralId,msgstr:t.translations[n].msgstr}:e[n]={msgid:n,msgstr:[t.translations[n]]};r.addTranslation(t.locale,{translations:{"":e}})}));const o=r.build(),i=o.ngettext.bind(o),a=o.gettext.bind(o)},334:(t,e,n)=>{"use strict";n.d(e,{default:()=>i});var r=n(2734);const o=new(n.n(r)())({data:()=>({isMobile:!1}),watch:{isMobile(t){this.$emit("changed",t)}},created(){window.addEventListener("resize",this.handleWindowResize),this.handleWindowResize()},beforeDestroy(){window.removeEventListener("resize",this.handleWindowResize)},methods:{handleWindowResize(){this.isMobile=document.documentElement.clientWidth<1024}}}),i={data:()=>({isMobile:!1}),mounted(){o.$on("changed",this.onIsMobileChanged),this.isMobile=o.isMobile},beforeDestroy(){o.$off("changed",this.onIsMobileChanged)},methods:{onIsMobileChanged(t){this.isMobile=t}}}},3648:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var r=n(932);const o={methods:{n:r.n,t:r.t}}},1205:(t,e,n)=>{"use strict";n.d(e,{Z:()=>r});const r=t=>Math.random().toString(36).replace(/[^a-z]+/g,"").slice(0,t||5)},7645:(t,e,n)=>{"use strict";n.d(e,{Z:()=>r});const r=t=>{t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push((function(){this.$el.setAttribute("data-v-".concat("f7c85e6"),"")}))}},1206:(t,e,n)=>{"use strict";n.d(e,{L:()=>r}),n(4505);const r=function(){return Object.assign(window,{_nc_focus_trap:window._nc_focus_trap||[]}),window._nc_focus_trap}},8384:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.v-popper--theme-tooltip.v-popper__popper{position:absolute;z-index:100000;top:0;right:auto;left:auto;display:block;margin:0;padding:0;text-align:left;text-align:start;opacity:0;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{right:100%;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{left:100%;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity .15s,visibility .15s;opacity:0}.v-popper--theme-tooltip.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity .15s;opacity:1}.v-popper--theme-tooltip .v-popper__inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.v-popper--theme-tooltip .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/directives/Tooltip/index.scss"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCSA,0CACC,iBAAA,CACA,cAAA,CACA,KAAA,CACA,UAAA,CACA,SAAA,CACA,aAAA,CACA,QAAA,CACA,SAAA,CACA,eAAA,CACA,gBAAA,CACA,SAAA,CACA,eAAA,CAEA,eAAA,CACA,sDAAA,CAGA,iGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAID,oGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAID,mGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAID,kGACC,SAAA,CACA,oBAAA,CACA,8CAAA,CAID,4DACC,iBAAA,CACA,uCAAA,CACA,SAAA,CAED,6DACC,kBAAA,CACA,uBAAA,CACA,SAAA,CAKF,0CACC,eAAA,CACA,eAAA,CACA,iBAAA,CACA,4BAAA,CACA,kCAAA,CACA,6CAAA,CAID,oDACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBAhFY",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n/**\n* @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\n* @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\n* @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\n* @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\n* @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\n*\n* Bootstrap (http://getbootstrap.com)\n* SCSS copied from version 3.3.5\n* Copyright 2011-2015 Twitter, Inc.\n* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n*/\n\n$arrow-width: 10px;\n\n.v-popper--theme-tooltip {\n\t&.v-popper__popper {\n\t\tposition: absolute;\n\t\tz-index: 100000;\n\t\ttop: 0;\n\t\tright: auto;\n\t\tleft: auto;\n\t\tdisplay: block;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\ttext-align: left;\n\t\ttext-align: start;\n\t\topacity: 0;\n\t\tline-height: 1.6;\n\n\t\tline-break: auto;\n\t\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t\t// TOP\n\t\t&[data-popper-placement^='top'] .v-popper__arrow-container {\n\t\t\tbottom: -$arrow-width;\n\t\t\tborder-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\n\t\t}\n\n\t\t// BOTTOM\n\t\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\n\t\t\ttop: -$arrow-width;\n\t\t\tborder-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\n\t\t}\n\n\t\t// RIGHT\n\t\t&[data-popper-placement^='right'] .v-popper__arrow-container {\n\t\t\tright: 100%;\n\t\t\tborder-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\n\t\t}\n\n\t\t// LEFT\n\t\t&[data-popper-placement^='left'] .v-popper__arrow-container {\n\t\t\tleft: 100%;\n\t\t\tborder-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\n\t\t}\n\n\t\t// HIDDEN / SHOWN\n\t\t&[aria-hidden='true'] {\n\t\t\tvisibility: hidden;\n\t\t\ttransition: opacity .15s, visibility .15s;\n\t\t\topacity: 0;\n\t\t}\n\t\t&[aria-hidden='false'] {\n\t\t\tvisibility: visible;\n\t\t\ttransition: opacity .15s;\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t// CONTENT\n\t.v-popper__inner {\n\t\tmax-width: 350px;\n\t\tpadding: 5px 8px;\n\t\ttext-align: center;\n\t\tcolor: var(--color-main-text);\n\t\tborder-radius: var(--border-radius);\n\t\tbackground-color: var(--color-main-background);\n\t}\n\n\t// ARROW\n\t.v-popper__arrow-container {\n\t\tposition: absolute;\n\t\tz-index: 1;\n\t\twidth: 0;\n\t\theight: 0;\n\t\tmargin: 0;\n\t\tborder-style: solid;\n\t\tborder-color: transparent;\n\t\tborder-width: $arrow-width;\n\t}\n}\n"],sourceRoot:""}]);const s=a},4825:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-29452b76]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-items[data-v-29452b76]{display:flex;align-items:center}.action-items>button[data-v-29452b76]{margin-right:7px}.action-item[data-v-29452b76]{--open-background-color: var(--color-background-hover, $action-background-hover);position:relative;display:inline-block}.action-item.action-item--primary[data-v-29452b76]{--open-background-color: var(--color-primary-element-hover)}.action-item.action-item--secondary[data-v-29452b76]{--open-background-color: var(--color-primary-element-light-hover)}.action-item.action-item--error[data-v-29452b76]{--open-background-color: var(--color-error-hover)}.action-item.action-item--warning[data-v-29452b76]{--open-background-color: var(--color-warning-hover)}.action-item.action-item--success[data-v-29452b76]{--open-background-color: var(--color-success-hover)}.action-item.action-item--tertiary-no-background[data-v-29452b76]{--open-background-color: transparent}.action-item.action-item--open .action-item__menutoggle[data-v-29452b76]{background-color:var(--open-background-color)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,+BACC,YAAA,CACA,kBAAA,CAGA,sCACC,gBAAA,CAIF,8BACC,gFAAA,CACA,iBAAA,CACA,oBAAA,CAEA,mDACC,2DAAA,CAGD,qDACC,iEAAA,CAGD,iDACC,iDAAA,CAGD,mDACC,mDAAA,CAGD,mDACC,mDAAA,CAGD,kEACC,oCAAA,CAGD,yEACC,6CAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// Inline buttons\n.action-items {\n\tdisplay: flex;\n\talign-items: center;\n\n\t// Spacing between buttons\n\t& > button {\n\t\tmargin-right: math.div($icon-margin, 2);\n\t}\n}\n\n.action-item {\n\t--open-background-color: var(--color-background-hover, $action-background-hover);\n\tposition: relative;\n\tdisplay: inline-block;\n\n\t&.action-item--primary {\n\t\t--open-background-color: var(--color-primary-element-hover);\n\t}\n\n\t&.action-item--secondary {\n\t\t--open-background-color: var(--color-primary-element-light-hover);\n\t}\n\n\t&.action-item--error {\n\t\t--open-background-color: var(--color-error-hover);\n\t}\n\n\t&.action-item--warning {\n\t\t--open-background-color: var(--color-warning-hover);\n\t}\n\n\t&.action-item--success {\n\t\t--open-background-color: var(--color-success-hover);\n\t}\n\n\t&.action-item--tertiary-no-background {\n\t\t--open-background-color: transparent;\n\t}\n\n\t&.action-item--open .action-item__menutoggle {\n\t\tbackground-color: var(--open-background-color);\n\t}\n}\n"],sourceRoot:""}]);const s=a},4946:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper{border-radius:var(--border-radius-large);overflow:hidden}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper .v-popper__inner{border-radius:var(--border-radius-large);padding:4px;max-height:calc(50vh - 16px);overflow:auto}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCJD,kFACC,wCAAA,CACA,eAAA,CAEA,mGACC,wCAAA,CACA,WAAA,CACA,4BAAA,CACA,aAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// We overwrote the popover base class, so we can style\n// the popover__inner for actions only.\n.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper {\n\tborder-radius: var(--border-radius-large);\n\toverflow:hidden;\n\n\t.v-popper__inner {\n\t\tborder-radius: var(--border-radius-large);\n\t\tpadding: 4px;\n\t\tmax-height: calc(50vh - 16px);\n\t\toverflow: auto;\n\t}\n}\n"],sourceRoot:""}]);const s=a},5218:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-c3f93c9a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-settings-modal[data-v-c3f93c9a] .modal-wrapper .modal-container{display:flex;overflow:hidden}.app-settings[data-v-c3f93c9a]{width:100%;display:flex;flex-direction:column;min-width:0}.app-settings__name[data-v-c3f93c9a]{min-height:44px;height:44px;line-height:44px;padding-top:4px;text-align:center}.app-settings__wrapper[data-v-c3f93c9a]{display:flex;width:100%;overflow:hidden;height:100%;position:relative}.app-settings__navigation[data-v-c3f93c9a]{min-width:200px;margin-right:20px;overflow-x:hidden;overflow-y:auto;position:relative;height:100%}.app-settings__content[data-v-c3f93c9a]{max-width:100vw;overflow-y:auto;overflow-x:hidden;padding:24px;width:100%}.navigation-list[data-v-c3f93c9a]{height:100%;box-sizing:border-box;overflow-y:auto;padding:12px}.navigation-list__link[data-v-c3f93c9a]{display:block;font-size:16px;height:44px;margin:4px 0;line-height:44px;border-radius:var(--border-radius-pill);font-weight:bold;padding:0 20px;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;background-color:rgba(0,0,0,0);border:none}.navigation-list__link[data-v-c3f93c9a]:hover,.navigation-list__link[data-v-c3f93c9a]:focus{background-color:var(--color-background-hover)}.navigation-list__link--active[data-v-c3f93c9a]{background-color:var(--color-primary-element-light) !important}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcAppSettingsDialog/NcAppSettingsDialog.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,qEACC,YAAA,CACA,eAAA,CAGD,+BACC,UAAA,CACA,YAAA,CACA,qBAAA,CACA,WAAA,CACA,qCACC,eCWe,CDVf,WCUe,CDTf,gBCSe,CDRf,eAAA,CACA,iBAAA,CAED,wCACC,YAAA,CACA,UAAA,CACA,eAAA,CACA,WAAA,CACA,iBAAA,CAED,2CACC,eAAA,CACA,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,iBAAA,CACA,WAAA,CAED,wCACC,eAAA,CACA,eAAA,CACA,iBAAA,CACA,YAAA,CACA,UAAA,CAIF,kCACC,WAAA,CACA,qBAAA,CACA,eAAA,CACA,YAAA,CACA,wCACC,aAAA,CACA,cAAA,CACA,WC3Be,CD4Bf,YAAA,CACA,gBC7Be,CD8Bf,uCAAA,CACA,gBAAA,CACA,cAAA,CACA,cAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,8BAAA,CACA,WAAA,CACA,4FAEC,8CAAA,CAED,gDACC,8DAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.app-settings-modal :deep(.modal-wrapper .modal-container) {\n\tdisplay: flex;\n\toverflow: hidden;\n}\n\n.app-settings {\n\twidth: 100%;\n\tdisplay: flex;\n\tflex-direction: column;\n\tmin-width: 0;\n\t&__name {\n\t\tmin-height: $clickable-area;\n\t\theight: $clickable-area;\n\t\tline-height: $clickable-area;\n\t\tpadding-top: 4px; // Same as the close button top spacing\n\t\ttext-align: center;\n\t}\n\t&__wrapper {\n\t\tdisplay: flex;\n\t\twidth: 100%;\n\t\toverflow: hidden;\n\t\theight: 100%;\n\t\tposition: relative;\n\t}\n\t&__navigation {\n\t\tmin-width: 200px;\n\t\tmargin-right: 20px;\n\t\toverflow-x: hidden;\n\t\toverflow-y: auto;\n\t\tposition: relative;\n\t\theight: 100%;\n\t}\n\t&__content {\n\t\tmax-width: 100vw;\n\t\toverflow-y: auto;\n\t\toverflow-x: hidden;\n\t\tpadding: 24px;\n\t\twidth: 100%;\n\t}\n}\n\n.navigation-list {\n\theight: 100%;\n\tbox-sizing: border-box;\n\toverflow-y: auto;\n\tpadding: 12px;\n\t&__link {\n\t\tdisplay: block;\n\t\tfont-size: 16px;\n\t\theight: $clickable-area;\n\t\tmargin: 4px 0;\n\t\tline-height: $clickable-area;\n\t\tborder-radius: var(--border-radius-pill);\n\t\tfont-weight: bold;\n\t\tpadding: 0 20px;\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t\t&--active {\n\t\t\tbackground-color: var(--color-primary-element-light) !important;\n\t\t}\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=a},7196:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-4d05be2c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue[data-v-4d05be2c]{position:relative;width:fit-content;overflow:hidden;border:0;padding:0;font-size:var(--default-font-size);font-weight:bold;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:22px;transition-property:color,border-color,background-color;transition-duration:.1s;transition-timing-function:linear;color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue *[data-v-4d05be2c],.button-vue span[data-v-4d05be2c]{cursor:pointer}.button-vue[data-v-4d05be2c]:focus{outline:none}.button-vue[data-v-4d05be2c]:disabled{cursor:default;opacity:.5;filter:saturate(0.7)}.button-vue:disabled *[data-v-4d05be2c]{cursor:default}.button-vue[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-light-hover)}.button-vue[data-v-4d05be2c]:active{background-color:var(--color-primary-element-light)}.button-vue__wrapper[data-v-4d05be2c]{display:inline-flex;align-items:center;justify-content:center;width:100%}.button-vue__icon[data-v-4d05be2c]{height:44px;width:44px;min-height:44px;min-width:44px;display:flex;justify-content:center;align-items:center}.button-vue__text[data-v-4d05be2c]{font-weight:bold;margin-bottom:1px;padding:2px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.button-vue--icon-only[data-v-4d05be2c]{width:44px !important}.button-vue--text-only[data-v-4d05be2c]{padding:0 12px}.button-vue--text-only .button-vue__text[data-v-4d05be2c]{margin-left:4px;margin-right:4px}.button-vue--icon-and-text[data-v-4d05be2c]{padding:0 16px 0 4px}.button-vue--wide[data-v-4d05be2c]{width:100%}.button-vue[data-v-4d05be2c]:focus-visible{outline:2px solid var(--color-main-text) !important}.button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{outline:2px solid var(--color-primary-element-text);border-radius:var(--border-radius);background-color:rgba(0,0,0,0)}.button-vue--vue-primary[data-v-4d05be2c]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.button-vue--vue-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-hover)}.button-vue--vue-primary[data-v-4d05be2c]:active{background-color:var(--color-primary-element)}.button-vue--vue-secondary[data-v-4d05be2c]{color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue--vue-secondary[data-v-4d05be2c]:hover:not(:disabled){color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light-hover)}.button-vue--vue-tertiary[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color);background-color:var(--color-background-hover)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{color:var(--color-primary-element-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-success[data-v-4d05be2c]{background-color:var(--color-success);color:#fff}.button-vue--vue-success[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-success-hover)}.button-vue--vue-success[data-v-4d05be2c]:active{background-color:var(--color-success)}.button-vue--vue-warning[data-v-4d05be2c]{background-color:var(--color-warning);color:#fff}.button-vue--vue-warning[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-warning-hover)}.button-vue--vue-warning[data-v-4d05be2c]:active{background-color:var(--color-warning)}.button-vue--vue-error[data-v-4d05be2c]{background-color:var(--color-error);color:#fff}.button-vue--vue-error[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-error-hover)}.button-vue--vue-error[data-v-4d05be2c]:active{background-color:var(--color-error)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcButton/NcButton.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,QAAA,CACA,SAAA,CACA,kCAAA,CACA,gBAAA,CACA,eCcgB,CDbhB,cCagB,CDZhB,YAAA,CACA,kBAAA,CACA,sBAAA,CAGA,cAAA,CAKA,kBAAA,CACA,uDAAA,CACA,uBAAA,CACA,iCAAA,CAkBA,6CAAA,CACA,mDAAA,CA1BA,iEAEC,cAAA,CAQD,mCACC,YAAA,CAGD,sCACC,cAAA,CAIA,UCIiB,CDFjB,oBAAA,CALA,wCACC,cAAA,CAUF,kDACC,yDAAA,CAKD,oCACC,mDAAA,CAGD,sCACC,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAGD,mCACC,WCvCe,CDwCf,UCxCe,CDyCf,eCzCe,CD0Cf,cC1Ce,CD2Cf,YAAA,CACA,sBAAA,CACA,kBAAA,CAGD,mCACC,gBAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CAID,wCACC,qBAAA,CAID,wCACC,cAAA,CACA,0DACC,eAAA,CACA,gBAAA,CAKF,4CACC,oBAAA,CAID,mCACC,UAAA,CAGD,2CACC,mDAAA,CACA,+EACC,mDAAA,CACA,kCAAA,CACA,8BAAA,CAOF,0CACC,6CAAA,CACA,uCAAA,CACA,+DACC,mDAAA,CAID,iDACC,6CAAA,CAKF,4CACC,6CAAA,CACA,mDAAA,CACA,iEACC,6CAAA,CACA,yDAAA,CAKF,2CACC,4BAAA,CACA,8BAAA,CACA,gEACC,6BAAA,CACA,8CAAA,CAKF,yDACC,4BAAA,CACA,8BAAA,CACA,8EACC,8BAAA,CAKF,sDACC,uCAAA,CACA,8BAAA,CAEA,2EACC,8BAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,wCACC,mCAAA,CACA,UAAA,CACA,6DACC,yCAAA,CAID,+CACC,mCAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.button-vue {\n\tposition: relative;\n\twidth: fit-content;\n\toverflow: hidden;\n\tborder: 0;\n\tpadding: 0;\n\tfont-size: var(--default-font-size);\n\tfont-weight: bold;\n\tmin-height: $clickable-area;\n\tmin-width: $clickable-area;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t// Cursor pointer on element and all children\n\tcursor: pointer;\n\t& *,\n\tspan {\n\t\tcursor: pointer;\n\t}\n\tborder-radius: math.div($clickable-area, 2);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: 0.1s;\n\ttransition-timing-function: linear;\n\n\t// No outline feedback for focus. Handled with a toggled class in js (see data)\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t\t& * {\n\t\t\tcursor: default;\n\t\t}\n\t\topacity: $opacity_disabled;\n\t\t// Gives a wash out effect\n\t\tfilter: saturate($opacity_normal);\n\t}\n\n\t// Default button type\n\tcolor: var(--color-primary-element-light-text);\n\tbackground-color: var(--color-primary-element-light);\n\t&:hover:not(:disabled) {\n\t\tbackground-color: var(--color-primary-element-light-hover);\n\t}\n\n\t// Back to the default color for this button when active\n\t// TODO: add ripple effect\n\t&:active {\n\t\tbackground-color: var(--color-primary-element-light);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t}\n\n\t&__icon {\n\t\theight: $clickable-area;\n\t\twidth: $clickable-area;\n\t\tmin-height: $clickable-area;\n\t\tmin-width: $clickable-area;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n\n\t&__text {\n\t\tfont-weight: bold;\n\t\tmargin-bottom: 1px;\n\t\tpadding: 2px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t// Icon-only button\n\t&--icon-only {\n\t\twidth: $clickable-area !important;\n\t}\n\n\t// Text-only button\n\t&--text-only {\n\t\tpadding: 0 12px;\n\t\t& .button-vue__text {\n\t\t\tmargin-left: 4px;\n\t\t\tmargin-right: 4px;\n\t\t}\n\t}\n\n\t// Icon and text button\n\t&--icon-and-text {\n\t\tpadding: 0 16px 0 4px;\n\t}\n\n\t// Wide button spans the whole width of the container\n\t&--wide {\n\t\twidth: 100%;\n\t}\n\n\t&:focus-visible {\n\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t&.button-vue--vue-tertiary-on-primary {\n\t\t\toutline: 2px solid var(--color-primary-element-text);\n\t\t\tborder-radius: var(--border-radius);\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Button types\n\n\t// Primary\n\t&--vue-primary {\n\t\tbackground-color: var(--color-primary-element);\n\t\tcolor: var(--color-primary-element-text);\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t}\n\t}\n\n\t// Secondary\n\t&--vue-secondary {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-light);\n\t\t&:hover:not(:disabled) {\n\t\t\tcolor: var(--color-primary-element-light-text);\n\t\t\tbackground-color: var(--color-primary-element-light-hover);\n\t\t}\n\t}\n\n\t// Tertiary\n\t&--vue-tertiary {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color);\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Tertiary, no background\n\t&--vue-tertiary-no-background {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Tertiary on primary color (like the header)\n\t&--vue-tertiary-on-primary {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: transparent;\n\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Success\n\t&--vue-success {\n\t\tbackground-color: var(--color-success);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-success-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// : add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t}\n\n\t// Warning\n\t&--vue-warning {\n\t\tbackground-color: var(--color-warning);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-warning-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-warning);\n\t\t}\n\t}\n\n\t// Error\n\t&--vue-error {\n\t\tbackground-color: var(--color-error);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-error-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=a},2482:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,'.material-design-icon[data-v-234c4d21]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.modal-mask[data-v-234c4d21]{position:fixed;z-index:9998;top:0;left:0;display:block;width:100%;height:100%;background-color:rgba(0,0,0,.5)}.modal-mask--dark[data-v-234c4d21]{background-color:rgba(0,0,0,.92)}.modal-header[data-v-234c4d21]{position:absolute;z-index:10001;top:0;right:0;left:0;display:flex !important;align-items:center;justify-content:center;width:100%;height:50px;overflow:hidden;transition:opacity 250ms,visibility 250ms}.modal-header.invisible[style*="display:none"][data-v-234c4d21],.modal-header.invisible[style*="display: none"][data-v-234c4d21]{visibility:hidden}.modal-header .modal-name[data-v-234c4d21]{overflow-x:hidden;box-sizing:border-box;width:100%;padding:0 132px 0 12px;transition:padding ease 100ms;white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:14px;margin-bottom:0}@media only screen and (min-width: 1024px){.modal-header .modal-name[data-v-234c4d21]{padding-left:132px;text-align:center}}.modal-header .icons-menu[data-v-234c4d21]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .header-close[data-v-234c4d21]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;margin:3px;padding:0}.modal-header .icons-menu .play-pause-icons[data-v-234c4d21]{position:relative;width:50px;height:50px;margin:0;padding:0;cursor:pointer;border:none;background-color:rgba(0,0,0,0)}.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__play[data-v-234c4d21],.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__pause[data-v-234c4d21],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__play[data-v-234c4d21],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__pause[data-v-234c4d21]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,.25)}.modal-header .icons-menu .play-pause-icons__play[data-v-234c4d21],.modal-header .icons-menu .play-pause-icons__pause[data-v-234c4d21]{box-sizing:border-box;width:44px;height:44px;margin:3px;cursor:pointer;opacity:.7}.modal-header .icons-menu .header-actions[data-v-234c4d21]{color:#fff}.modal-header .icons-menu[data-v-234c4d21] .action-item{margin:3px}.modal-header .icons-menu[data-v-234c4d21] .action-item--single{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-234c4d21] button{color:#fff}.modal-header .icons-menu[data-v-234c4d21] .action-item__menutoggle{padding:0}.modal-header .icons-menu[data-v-234c4d21] .action-item__menutoggle span,.modal-header .icons-menu[data-v-234c4d21] .action-item__menutoggle svg{width:var(--icon-size);height:var(--icon-size)}.modal-wrapper[data-v-234c4d21]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-234c4d21],.modal-wrapper .next[data-v-234c4d21]{z-index:10000;display:flex !important;height:35vw;position:absolute;transition:opacity 250ms,visibility 250ms;color:var(--color-primary-element-text)}.modal-wrapper .prev[data-v-234c4d21]:focus-visible,.modal-wrapper .next[data-v-234c4d21]:focus-visible{box-shadow:0 0 0 2px var(--color-primary-element-text);background-color:var(--color-box-shadow)}.modal-wrapper .prev.invisible[style*="display:none"][data-v-234c4d21],.modal-wrapper .prev.invisible[style*="display: none"][data-v-234c4d21],.modal-wrapper .next.invisible[style*="display:none"][data-v-234c4d21],.modal-wrapper .next.invisible[style*="display: none"][data-v-234c4d21]{visibility:hidden}.modal-wrapper .prev[data-v-234c4d21]{left:2px}.modal-wrapper .next[data-v-234c4d21]{right:2px}.modal-wrapper .modal-container[data-v-234c4d21]{position:relative;display:block;overflow:auto;padding:0;transition:transform 300ms ease;border-radius:var(--border-radius-large);background-color:var(--color-main-background);color:var(--color-main-text);box-shadow:0 0 40px rgba(0,0,0,.2)}.modal-wrapper .modal-container__close[data-v-234c4d21]{position:absolute;top:4px;right:4px}.modal-wrapper--small .modal-container[data-v-234c4d21]{width:400px;max-width:90%;max-height:90%}.modal-wrapper--normal .modal-container[data-v-234c4d21]{max-width:90%;width:600px;max-height:90%}.modal-wrapper--large .modal-container[data-v-234c4d21]{max-width:90%;width:900px;max-height:90%}.modal-wrapper--full .modal-container[data-v-234c4d21]{width:100%;height:calc(100% - var(--header-height));position:absolute;top:50px;border-radius:0}@media only screen and (max-width: 512px){.modal-wrapper .modal-container[data-v-234c4d21]{max-width:initial;width:100%;max-height:initial;height:calc(100% - var(--header-height));position:absolute;top:50px;border-radius:0}}.fade-enter-active[data-v-234c4d21],.fade-leave-active[data-v-234c4d21]{transition:opacity 250ms}.fade-enter[data-v-234c4d21],.fade-leave-to[data-v-234c4d21]{opacity:0}.fade-visibility-enter[data-v-234c4d21],.fade-visibility-leave-to[data-v-234c4d21]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-234c4d21],.modal-in-leave-active[data-v-234c4d21],.modal-out-enter-active[data-v-234c4d21],.modal-out-leave-active[data-v-234c4d21]{transition:opacity 250ms}.modal-in-enter[data-v-234c4d21],.modal-in-leave-to[data-v-234c4d21],.modal-out-enter[data-v-234c4d21],.modal-out-leave-to[data-v-234c4d21]{opacity:0}.modal-in-enter .modal-container[data-v-234c4d21],.modal-in-leave-to .modal-container[data-v-234c4d21]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-234c4d21],.modal-out-leave-to .modal-container[data-v-234c4d21]{transform:scale(1.1)}.modal-mask .play-pause-icons .progress-ring[data-v-234c4d21]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause-icons .progress-ring .progress-ring__circle[data-v-234c4d21]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-234c4d21 linear var(--slideshow-duration) infinite;stroke-linecap:round;stroke-dashoffset:94.2477796077;stroke-dasharray:94.2477796077}.modal-mask .play-pause-icons--paused .icon-pause[data-v-234c4d21]{animation:breath-234c4d21 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause-icons--paused .progress-ring__circle[data-v-234c4d21]{animation-play-state:paused !important}@keyframes progressring-234c4d21{from{stroke-dashoffset:94.2477796077}to{stroke-dashoffset:0}}@keyframes breath-234c4d21{0%{opacity:1}50%{opacity:0}100%{opacity:1}}',"",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcModal/NcModal.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,cAAA,CACA,YAAA,CACA,KAAA,CACA,MAAA,CACA,aAAA,CACA,UAAA,CACA,WAAA,CACA,+BAAA,CACA,mCACC,gCAAA,CAIF,+BACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,OAAA,CACA,MAAA,CAGA,uBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WCuBe,CDtBf,eAAA,CACA,yCAAA,CAIA,iIAEC,iBAAA,CAGD,2CACC,iBAAA,CACA,qBAAA,CACA,UAAA,CACA,sBAAA,CACA,6BAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,cChBY,CDiBZ,eAAA,CAID,2CACC,2CACC,kBAAA,CACA,iBAAA,CAAA,CAIF,2CACC,iBAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,wBAAA,CAEA,yDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,qBAAA,CACA,UAAA,CACA,SAAA,CAGD,6DACC,iBAAA,CACA,UC3Ba,CD4Bb,WC5Ba,CD6Bb,QAAA,CACA,SAAA,CACA,cAAA,CACA,WAAA,CACA,8BAAA,CAGC,8WAEC,SC9CU,CD+CV,kBAAA,CACA,sCCxDW,CD2Db,uIAEC,qBAAA,CACA,UCzEa,CD0Eb,WC1Ea,CD2Eb,UAAA,CACA,cAAA,CACA,UC3Da,CD+Df,2DACC,UAAA,CAGD,yDACC,UAAA,CAEA,iEACC,qBAAA,CACA,UC1Fa,CD2Fb,WC3Fa,CD4Fb,cAAA,CACA,0BAAA,CACA,oBAAA,CAIF,kDAEC,UAAA,CAID,oEACC,SAAA,CACA,iJACC,sBAAA,CACA,uBAAA,CAMJ,gCACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,qBAAA,CACA,UAAA,CACA,WAAA,CAGA,4EAEC,aAAA,CAEA,uBAAA,CACA,WAAA,CACA,iBAAA,CACA,yCAAA,CAEA,uCAAA,CAEA,wGAEC,sDAAA,CACA,wCAAA,CAOD,8RAEC,iBAAA,CAGF,sCACC,QAAA,CAED,sCACC,SAAA,CAID,iDACC,iBAAA,CACA,aAAA,CACA,aAAA,CACA,SAAA,CACA,+BAAA,CACA,wCAAA,CACA,6CAAA,CACA,4BAAA,CACA,kCAAA,CACA,wDACC,iBAAA,CACA,OAAA,CACA,SAAA,CAMD,wDACC,WAAA,CACA,aAAA,CACA,cAAA,CAID,yDACC,aAAA,CACA,WAAA,CACA,cAAA,CAID,wDACC,aAAA,CACA,WAAA,CACA,cAAA,CAID,uDACC,UAAA,CACA,wCAAA,CACA,iBAAA,CACA,QC9Ka,CD+Kb,eAAA,CAKF,0CACC,iDACC,iBAAA,CACA,UAAA,CACA,kBAAA,CACA,wCAAA,CACA,iBAAA,CACA,QC3La,CD4Lb,eAAA,CAAA,CAMH,wEAEC,wBAAA,CAGD,6DAEC,SAAA,CAGD,mFAEC,iBAAA,CACA,SAAA,CAGD,kKAIC,wBAAA,CAGD,4IAIC,SAAA,CAGD,uGAEC,oBAAA,CAGD,yGAEC,oBAAA,CAQA,8DACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CACA,qFACC,kCAAA,CACA,wBAAA,CACA,yEAAA,CAEA,oBAAA,CACA,+BAAA,CACA,8BAAA,CAID,mEACC,kEAAA,CAED,8EACC,sCAAA,CAMH,iCACC,KACC,+BAAA,CAED,GACC,mBAAA,CAAA,CAIF,2BACC,GACC,SAAA,CAED,IACC,SAAA,CAED,KACC,SAAA,CAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.modal-mask {\n\tposition: fixed;\n\tz-index: 9998;\n\ttop: 0;\n\tleft: 0;\n\tdisplay: block;\n\twidth: 100%;\n\theight: 100%;\n\tbackground-color: rgba(0, 0, 0, .5);\n\t&--dark {\n\t\tbackground-color: rgba(0, 0, 0, .92);\n\t}\n}\n\n.modal-header {\n\tposition: absolute;\n\tz-index: 10001;\n\ttop: 0;\n\tright: 0;\n\tleft: 0;\n\t// prevent vue show to use display:none and reseting\n\t// the circle animation loop\n\tdisplay: flex !important;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 100%;\n\theight: $header-height;\n\toverflow: hidden;\n\ttransition: opacity 250ms,\n\t\tvisibility 250ms;\n\n\t// replace display by visibility\n\t&.invisible[style*='display:none'],\n\t&.invisible[style*='display: none'] {\n\t\tvisibility: hidden;\n\t}\n\n\t.modal-name {\n\t\toverflow-x: hidden;\n\t\tbox-sizing: border-box;\n\t\twidth: 100%;\n\t\tpadding: 0 #{$clickable-area * 3} 0 12px; // maximum actions is 3\n\t\ttransition: padding ease 100ms;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: #fff;\n\t\tfont-size: $icon-margin;\n\t\tmargin-bottom: 0;\n\t}\n\n\t// On wider screens the name can be centered\n\t@media only screen and (min-width: $breakpoint-mobile) {\n\t\t.modal-name {\n\t\t\tpadding-left: #{$clickable-area * 3}; // maximum actions is 3\n\t\t\ttext-align: center;\n\t\t}\n\t}\n\n\t.icons-menu {\n\t\tposition: absolute;\n\t\tright: 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: flex-end;\n\n\t\t.header-close {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tbox-sizing: border-box;\n\t\t\tmargin: math.div($header-height - $clickable-area, 2);\n\t\t\tpadding: 0;\n\t\t}\n\n\t\t.play-pause-icons {\n\t\t\tposition: relative;\n\t\t\twidth: $header-height;\n\t\t\theight: $header-height;\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tcursor: pointer;\n\t\t\tborder: none;\n\t\t\tbackground-color: transparent;\n\t\t\t&:hover,\n\t\t\t&:focus {\n\t\t\t\t.play-pause-icons__play,\n\t\t\t\t.play-pause-icons__pause {\n\t\t\t\t\topacity: $opacity_full;\n\t\t\t\t\tborder-radius: math.div($clickable-area, 2);\n\t\t\t\t\tbackground-color: $icon-focus-bg;\n\t\t\t\t}\n\t\t\t}\n\t\t\t&__play,\n\t\t\t&__pause {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: $clickable-area;\n\t\t\t\theight: $clickable-area;\n\t\t\t\tmargin: math.div($header-height - $clickable-area, 2);\n\t\t\t\tcursor: pointer;\n\t\t\t\topacity: $opacity_normal;\n\t\t\t}\n\t\t}\n\n\t\t.header-actions {\n\t\t\tcolor: white;\n\t\t}\n\n\t\t&:deep() .action-item {\n\t\t\tmargin: math.div($header-height - $clickable-area, 2);\n\n\t\t\t&--single {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: $clickable-area;\n\t\t\t\theight: $clickable-area;\n\t\t\t\tcursor: pointer;\n\t\t\t\tbackground-position: center;\n\t\t\t\tbackground-size: 22px;\n\t\t\t}\n\t\t}\n\n\t\t:deep(button) {\n\t\t\t// force white instead of default main text\n\t\t\tcolor: #fff;\n\t\t}\n\n\t\t// Force the Actions menu icon to be the same size as other icons\n\t\t&:deep(.action-item__menutoggle) {\n\t\t\tpadding: 0;\n\t\t\tspan, svg {\n\t\t\t\twidth: var(--icon-size);\n\t\t\t\theight: var(--icon-size);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.modal-wrapper {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tbox-sizing: border-box;\n\twidth: 100%;\n\theight: 100%;\n\n\t/* Navigation buttons */\n\t.prev,\n\t.next {\n\t\tz-index: 10000;\n\t\t// ignore display: none\n\t\tdisplay: flex !important;\n\t\theight: 35vw;\n\t\tposition: absolute;\n\t\ttransition: opacity 250ms,\n\t\t\tvisibility 250ms;\n\t\tcolor: var(--color-primary-element-text);\n\n\t\t&:focus-visible {\n\t\t\t// Override NcButton focus styles\n\t\t\tbox-shadow: 0 0 0 2px var(--color-primary-element-text);\n\t\t\tbackground-color: var(--color-box-shadow);\n\t\t}\n\n\t\t// we want to keep the elements on page\n\t\t// even if hidden to avoid having a unbalanced\n\t\t// centered content\n\t\t// replace display by visibility\n\t\t&.invisible[style*='display:none'],\n\t\t&.invisible[style*='display: none'] {\n\t\t\tvisibility: hidden;\n\t\t}\n\t}\n\t.prev {\n\t\tleft: 2px;\n\t}\n\t.next {\n\t\tright: 2px;\n\t}\n\n\t/* Content */\n\t.modal-container {\n\t\tposition: relative;\n\t\tdisplay: block;\n\t\toverflow: auto; // avoids unecessary hacks if the content should be bigger than the modal\n\t\tpadding: 0;\n\t\ttransition: transform 300ms ease;\n\t\tborder-radius: var(--border-radius-large);\n\t\tbackground-color: var(--color-main-background);\n\t\tcolor: var(--color-main-text);\n\t\tbox-shadow: 0 0 40px rgba(0, 0, 0, .2);\n\t\t&__close {\n\t\t\tposition: absolute;\n\t\t\ttop: 4px;\n\t\t\tright: 4px;\n\t\t}\n\t}\n\n\t// Sizing\n\t&--small {\n\t\t.modal-container {\n\t\t\twidth: 400px;\n\t\t\tmax-width: 90%;\n\t\t\tmax-height: 90%;\n\t\t}\n\t}\n\t&--normal {\n\t\t.modal-container {\n\t\t\tmax-width: 90%;\n\t\t\twidth: 600px;\n\t\t\tmax-height: 90%;\n\t\t}\n\t}\n\t&--large {\n\t\t.modal-container {\n\t\t\tmax-width: 90%;\n\t\t\twidth: 900px;\n\t\t\tmax-height: 90%;\n\t\t}\n\t}\n\t&--full {\n\t\t.modal-container {\n\t\t\twidth: 100%;\n\t\t\theight: calc(100% - var(--header-height));\n\t\t\tposition: absolute;\n\t\t\ttop: $header-height;\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n\n\t// Make modal full screen on mobile\n\t@media only screen and (max-width: math.div($breakpoint-mobile, 2)) {\n\t\t.modal-container {\n\t\t\tmax-width: initial;\n\t\t\twidth: 100%;\n\t\t\tmax-height: initial;\n\t\t\theight: calc(100% - var(--header-height));\n\t\t\tposition: absolute;\n\t\t\ttop: $header-height;\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n}\n\n/* TRANSITIONS */\n.fade-enter-active,\n.fade-leave-active {\n\ttransition: opacity 250ms;\n}\n\n.fade-enter,\n.fade-leave-to {\n\topacity: 0;\n}\n\n.fade-visibility-enter,\n.fade-visibility-leave-to {\n\tvisibility: hidden;\n\topacity: 0;\n}\n\n.modal-in-enter-active,\n.modal-in-leave-active,\n.modal-out-enter-active,\n.modal-out-leave-active {\n\ttransition: opacity 250ms;\n}\n\n.modal-in-enter,\n.modal-in-leave-to,\n.modal-out-enter,\n.modal-out-leave-to {\n\topacity: 0;\n}\n\n.modal-in-enter .modal-container,\n.modal-in-leave-to .modal-container {\n\ttransform: scale(.9);\n}\n\n.modal-out-enter .modal-container,\n.modal-out-leave-to .modal-container {\n\ttransform: scale(1.1);\n}\n\n// animated circle\n$radius: 15;\n$pi: 3.14159265358979;\n\n.modal-mask .play-pause-icons {\n\t.progress-ring {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\ttransform: rotate(-90deg);\n\t\t.progress-ring__circle {\n\t\t\ttransition: 100ms stroke-dashoffset;\n\t\t\ttransform-origin: 50% 50%; // axis compensation\n\t\t\tanimation: progressring linear var(--slideshow-duration) infinite;\n\n\t\t\tstroke-linecap: round;\n\t\t\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\n\t\t\tstroke-dasharray: $radius * 2 * $pi; // radius * 2 * PI\n\t\t}\n\t}\n\t&--paused {\n\t\t.icon-pause {\n\t\t\tanimation: breath 2s cubic-bezier(.4, 0, .2, 1) infinite;\n\t\t}\n\t\t.progress-ring__circle {\n\t\t\tanimation-play-state: paused !important;\n\t\t}\n\t}\n}\n\n// keyframes get scoped too and break the animation name, we need them unscoped\n@keyframes progressring {\n\tfrom {\n\t\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\n\t}\n\tto {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes breath {\n\t0% {\n\t\topacity: 1;\n\t}\n\t50% {\n\t\topacity: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=a},1625:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.resize-observer{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:rgba(0,0,0,0);pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper--theme-dropdown.v-popper__popper{z-index:100000;top:0;left:0;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-dropdown.v-popper__popper .v-popper__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius-large);overflow:hidden;background:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{left:-10px;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity var(--animation-quick);opacity:1}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcPopover/NcPopover.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,iBACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,aAAA,CACA,eAAA,CACA,SAAA,CAGD,wBACC,aAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,mBAAA,CACA,UAAA,CAMA,2CACC,cAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CAEA,sDAAA,CAEA,4DACC,SAAA,CACA,4BAAA,CACA,wCAAA,CACA,eAAA,CACA,uCAAA,CAGD,sEACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBA1BW,CA6BZ,kGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAGD,qGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAGD,oGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAGD,mGACC,WAAA,CACA,oBAAA,CACA,8CAAA,CAGD,6DACC,iBAAA,CACA,2EAAA,CACA,SAAA,CAGD,8DACC,kBAAA,CACA,yCAAA,CACA,SAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.resize-observer {\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\tz-index:-1;\n\twidth:100%;\n\theight:100%;\n\tborder:none;\n\tbackground-color:transparent;\n\tpointer-events:none;\n\tdisplay:block;\n\toverflow:hidden;\n\topacity:0\n}\n\n.resize-observer object {\n\tdisplay:block;\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\theight:100%;\n\twidth:100%;\n\toverflow:hidden;\n\tpointer-events:none;\n\tz-index:-1\n}\n\n$arrow-width: 10px;\n\n.v-popper--theme-dropdown {\n\t&.v-popper__popper {\n\t\tz-index: 100000;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tdisplay: block !important;\n\n\t\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t\t.v-popper__inner {\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-main-text);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t\toverflow: hidden;\n\t\t\tbackground: var(--color-main-background);\n\t\t}\n\n\t\t.v-popper__arrow-container {\n\t\t\tposition: absolute;\n\t\t\tz-index: 1;\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\tborder-style: solid;\n\t\t\tborder-color: transparent;\n\t\t\tborder-width: $arrow-width;\n\t\t}\n\n\t\t&[data-popper-placement^='top'] .v-popper__arrow-container {\n\t\t\tbottom: -$arrow-width;\n\t\t\tborder-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\n\t\t\ttop: -$arrow-width;\n\t\t\tborder-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='right'] .v-popper__arrow-container {\n\t\t\tleft: -$arrow-width;\n\t\t\tborder-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='left'] .v-popper__arrow-container {\n\t\t\tright: -$arrow-width;\n\t\t\tborder-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\n\t\t}\n\n\t\t&[aria-hidden='true'] {\n\t\t\tvisibility: hidden;\n\t\t\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&[aria-hidden='false'] {\n\t\t\tvisibility: visible;\n\t\t\ttransition: opacity var(--animation-quick);\n\t\t\topacity: 1;\n\t\t}\n\t}\n}\n\n"],sourceRoot:""}]);const s=a},3645:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",r=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),r&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),r&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,r,o,i){"string"==typeof t&&(t=[[null,t,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var c=0;c<t.length;c++){var u=[].concat(t[c]);r&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),e.push(u))}},e}},7537:t=>{"use strict";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),i="/*# ".concat(o," */");return[e].concat([i]).join("\n")}return[e].join("\n")}},3379:t=>{"use strict";var e=[];function n(t){for(var n=-1,r=0;r<e.length;r++)if(e[r].identifier===t){n=r;break}return n}function r(t,r){for(var i={},a=[],s=0;s<t.length;s++){var l=t[s],c=r.base?l[0]+r.base:l[0],u=i[c]||0,d="".concat(c," ").concat(u);i[c]=u+1;var p=n(d),h={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)e[p].references++,e[p].updater(h);else{var f=o(h,r);r.byIndex=s,e.splice(s,0,{identifier:d,updater:f,references:1})}a.push(d)}return a}function o(t,e){var n=e.domAPI(e);return n.update(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,o){var i=r(t=t||[],o=o||{});return function(t){t=t||[];for(var a=0;a<i.length;a++){var s=n(i[a]);e[s].references--}for(var l=r(t,o),c=0;c<i.length;c++){var u=n(i[c]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}i=l}}},569:t=>{"use strict";var e={};t.exports=function(t,n){var r=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},9216:t=>{"use strict";t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},3565:(t,e,n)=>{"use strict";t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:t=>{"use strict";t.exports=function(t){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var i=n.sourceMap;i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleTagTransform(r,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:t=>{"use strict";t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},5727:()=>{},7984:()=>{},2102:()=>{},9989:()=>{},2405:()=>{},1900:(t,e,n)=>{"use strict";function r(t,e,n,r,o,i,a,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),i&&(c._scopeId="data-v-"+i),a?(l=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=l):o&&(l=s?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:t,options:c}}n.d(e,{Z:()=>r})},7931:t=>{"use strict";t.exports=n(23955)},1804:t=>{"use strict";t.exports=n(59797)},3465:t=>{"use strict";t.exports=n(20296)},9454:t=>{"use strict";t.exports=n(73045)},4505:t=>{"use strict";t.exports=n(15303)},2734:t=>{"use strict";t.exports=n(20144)},9044:t=>{"use strict";t.exports=n(11585)},8618:t=>{"use strict";t.exports=n(82675)},1441:t=>{"use strict";t.exports=n(89115)}},e={};function o(n){var r=e[n];if(void 0!==r)return r.exports;var i=e[n]={id:n,exports:{}};return t[n](i,i.exports,o),i.exports}o.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return o.d(e,{a:e}),e},o.d=(t,e)=>{for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),o.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.nc=void 0;var i={};return(()=>{"use strict";o.r(i),o.d(i,{default:()=>j});var t=o(1929),e=o(334),n=o(932),r=o(3465),a=o.n(r);const s={name:"NcAppSettingsDialog",components:{NcModal:t.default},mixins:[e.default],props:{open:{type:Boolean,required:!0},showNavigation:{type:Boolean,default:!1},container:{type:String,default:"body"},name:{type:String,default:""},additionalTrapElements:{type:Array,default:()=>[]}},emits:["update:open"],data:()=>({selectedSection:"",linkClicked:!1,addedScrollListener:!1,scroller:null}),computed:{hasNavigation(){return!(this.isMobile||!this.showNavigation)},settingsNavigationAriaLabel:()=>(0,n.t)("Settings navigation")},mounted(){this.selectedSection=this.$slots.default[0].componentOptions.propsData.id},updated(){this.$refs.settingsScroller&&(this.scroller=this.$refs.settingsScroller,this.addedScrollListener||(this.scroller.addEventListener("scroll",this.handleScroll),this.addedScrollListener=!0))},methods:{getSettingsNavigation(t){const e=t.filter((t=>t.componentOptions)).map((t=>{var e,n;return{id:null===(e=t.componentOptions.propsData)||void 0===e?void 0:e.id,name:null===(n=t.componentOptions.propsData)||void 0===n?void 0:n.name}})),n=t.map((t=>t.name)),r=t.map((t=>t.id));return e.forEach(((t,e)=>{const o=[...n],i=[...r];if(o.splice(e,1),i.splice(e,1),o.includes(t.name))throw new Error("Duplicate section name found: ".concat(t,". Settings navigation sections must have unique section names."));if(i.includes(t.id))throw new Error("Duplicate section id found: ".concat(t,". Settings navigation sections must have unique section ids."))})),e},handleSettingsNavigationClick(t){this.linkClicked=!0,document.getElementById("settings-section_"+t).scrollIntoView({behavior:"smooth",inline:"nearest"}),this.selectedSection=t,setTimeout((()=>{this.linkClicked=!1}),1e3)},handleCloseModal(){this.$emit("update:open",!1),this.scroller.removeEventListener("scroll",this.handleScroll),this.addedScrollListener=!1,this.scroller.scrollTop=0},handleScroll(){this.linkClicked||this.unfocusNavigationItem()},unfocusNavigationItem:a()((function(){this.selectedSection="",document.activeElement.className.includes("navigation-list__link")&&document.activeElement.blur()}),300),handleLinkKeydown(t,e){"Enter"===t.code&&this.handleSettingsNavigationClick(e)}},render(t){const e=e=>t("li",{},[t("a",{class:{"navigation-list__link":!0,"navigation-list__link--active":e.id===this.selectedSection},attrs:{role:"tab","aria-selected":e.id===this.selectedSection,tabindex:"0"},on:{click:()=>this.handleSettingsNavigationClick(e.id),keydown:()=>this.handleLinkKeydown(event,e.id)}},e.name)]);return this.open?t("NcModal",{class:["app-settings-modal"],attrs:{container:this.container,size:"large",additionalTrapElements:this.additionalTrapElements},on:{close:()=>{this.handleCloseModal()}}},[t("div",{attrs:{class:"app-settings"}},[t("h2",{attrs:{class:"app-settings__name"}},this.name),t("div",{attrs:{class:"app-settings__wrapper"}},[...(()=>this.hasNavigation?[t("div",{attrs:{class:"app-settings__navigation",role:"tablist","aria-label":this.settingsNavigationAriaLabel}},[t("ul",{attrs:{class:"navigation-list",role:"tablist"}},this.getSettingsNavigation(this.$slots.default).map((t=>e(t))))])]:[])(),t("div",{attrs:{class:"app-settings__content"},ref:"settingsScroller"},this.$slots.default)])])]):void 0}};var l=o(3379),c=o.n(l),u=o(7795),d=o.n(u),p=o(569),h=o.n(p),f=o(3565),m=o.n(f),v=o(9216),g=o.n(v),A=o(4589),y=o.n(A),b=o(5218),C={};C.styleTagTransform=y(),C.setAttributes=m(),C.insert=h().bind(null,"head"),C.domAPI=d(),C.insertStyleElement=g(),c()(b.Z,C),b.Z&&b.Z.locals&&b.Z.locals;var w=o(1900),k=o(7984),x=o.n(k),S=(0,w.Z)(s,void 0,void 0,!1,null,"c3f93c9a",null);"function"==typeof x()&&x()(S);const j=S.exports})(),i})()))},16809:function(t){!function(e,n){t.exports=n()}(self,(()=>(()=>{"use strict";var t={1024:(t,e,n)=>{n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-006b9071]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-settings-section[data-v-006b9071]{margin-bottom:80px}.app-settings-section__name[data-v-006b9071]{font-size:20px;margin:0;padding:20px 0;font-weight:bold;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcAppSettingsSection/NcAppSettingsSection.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,uCACC,kBAAA,CACA,6CACC,cAAA,CACA,QAAA,CACA,cAAA,CACA,gBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n.app-settings-section {\n\tmargin-bottom: 80px;\n\t&__name {\n\t\tfont-size: 20px;\n\t\tmargin: 0;\n\t\tpadding: 20px 0;\n\t\tfont-weight: bold;\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n"],sourceRoot:""}]);const s=a},3645:t=>{t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",r=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),r&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),r&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,r,o,i){"string"==typeof t&&(t=[[null,t,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var c=0;c<t.length;c++){var u=[].concat(t[c]);r&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),e.push(u))}},e}},7537:t=>{t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),i="/*# ".concat(o," */");return[e].concat([i]).join("\n")}return[e].join("\n")}},3379:t=>{var e=[];function n(t){for(var n=-1,r=0;r<e.length;r++)if(e[r].identifier===t){n=r;break}return n}function r(t,r){for(var i={},a=[],s=0;s<t.length;s++){var l=t[s],c=r.base?l[0]+r.base:l[0],u=i[c]||0,d="".concat(c," ").concat(u);i[c]=u+1;var p=n(d),h={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)e[p].references++,e[p].updater(h);else{var f=o(h,r);r.byIndex=s,e.splice(s,0,{identifier:d,updater:f,references:1})}a.push(d)}return a}function o(t,e){var n=e.domAPI(e);return n.update(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,o){var i=r(t=t||[],o=o||{});return function(t){t=t||[];for(var a=0;a<i.length;a++){var s=n(i[a]);e[s].references--}for(var l=r(t,o),c=0;c<i.length;c++){var u=n(i[c]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}i=l}}},569:t=>{var e={};t.exports=function(t,n){var r=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},9216:t=>{t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},3565:(t,e,n)=>{t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:t=>{t.exports=function(t){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var i=n.sourceMap;i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleTagTransform(r,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:t=>{t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},1900:(t,e,n)=>{function r(t,e,n,r,o,i,a,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),i&&(c._scopeId="data-v-"+i),a?(l=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=l):o&&(l=s?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:t,options:c}}n.d(e,{Z:()=>r})}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var i=e[r]={id:r,exports:{}};return t[r](i,i.exports,n),i.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.nc=void 0;var r={};return(()=>{n.r(r),n.d(r,{default:()=>g});const t={name:"NcAppSettingsSection",props:{name:{type:String,required:!0},id:{type:String,required:!0,validator:t=>/^[a-z0-9\-_]+$/.test(t)}},computed:{htmlId(){return"settings-section_"+this.id}}};var e=n(3379),o=n.n(e),i=n(7795),a=n.n(i),s=n(569),l=n.n(s),c=n(3565),u=n.n(c),d=n(9216),p=n.n(d),h=n(4589),f=n.n(h),m=n(1024),v={};v.styleTagTransform=f(),v.setAttributes=u(),v.insert=l().bind(null,"head"),v.domAPI=a(),v.insertStyleElement=p(),o()(m.Z,v),m.Z&&m.Z.locals&&m.Z.locals;const g=(0,n(1900).Z)(t,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"app-settings-section",attrs:{id:t.htmlId}},[e("h3",{staticClass:"app-settings-section__name"},[t._v("\n\t\t"+t._s(t.name)+"\n\t")]),t._v(" "),t._t("default")],2)}),[],!1,null,"006b9071",null).exports})(),r})()))},64412:function(t,e,n){var r=n(25108);!function(e,n){t.exports=n()}(self,(()=>(()=>{var t={8250:(t,e,n)=>{"use strict";n.d(e,{default:()=>T});var r=n(4462),o=n(2297),i=n(1205),a=n(932),s=n(2734),l=n.n(s),c=n(1441),u=n.n(c);const d=".focusable",p={name:"NcActions",components:{NcButton:r.default,DotsHorizontal:u(),NcPopover:o.default},props:{open:{type:Boolean,default:!1},manualOpen:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},forceName:{type:Boolean,default:!1},menuName:{type:String,default:null},primary:{type:Boolean,default:!1},type:{type:String,validator:t=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(t),default:null},defaultIcon:{type:String,default:""},ariaLabel:{type:String,default:(0,a.t)("Actions")},ariaHidden:{type:Boolean,default:null},placement:{type:String,default:"bottom"},boundariesElement:{type:Element,default:()=>document.querySelector("body")},container:{type:[String,Object,Element,Boolean],default:"body"},disabled:{type:Boolean,default:!1},inline:{type:Number,default:0}},emits:["open","update:open","close","focus","blur"],data(){return{opened:this.open,focusIndex:0,randomId:"menu-".concat((0,i.Z)())}},computed:{triggerBtnType(){return this.type||(this.primary?"primary":this.menuName?"secondary":"tertiary")}},watch:{open(t){t!==this.opened&&(this.opened=t)}},methods:{isValidSingleAction(t){var e,n,r,o,i;const a=null!==(e=null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.Ctor)||void 0===r||null===(o=r.extendOptions)||void 0===o?void 0:o.name)&&void 0!==e?e:null==t||null===(i=t.componentOptions)||void 0===i?void 0:i.tag;return["NcActionButton","NcActionLink","NcActionRouter"].includes(a)},openMenu(t){this.opened||(this.opened=!0,this.$emit("update:open",!0),this.$emit("open"))},closeMenu(){let t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.opened&&(this.opened=!1,this.$refs.popover.clearFocusTrap({returnFocus:t}),this.$emit("update:open",!1),this.$emit("close"),this.focusIndex=0,this.$refs.menuButton.$el.focus())},onOpen(t){this.$nextTick((()=>{this.focusFirstAction(t)}))},onMouseFocusAction(t){if(document.activeElement===t.target)return;const e=t.target.closest("li");if(e){const t=e.querySelector(d);if(t){const e=[...this.$refs.menu.querySelectorAll(d)].indexOf(t);e>-1&&(this.focusIndex=e,this.focusAction())}}},onKeydown(t){(38===t.keyCode||9===t.keyCode&&t.shiftKey)&&this.focusPreviousAction(t),(40===t.keyCode||9===t.keyCode&&!t.shiftKey)&&this.focusNextAction(t),33===t.keyCode&&this.focusFirstAction(t),34===t.keyCode&&this.focusLastAction(t),27===t.keyCode&&(this.closeMenu(),t.preventDefault())},removeCurrentActive(){const t=this.$refs.menu.querySelector("li.active");t&&t.classList.remove("active")},focusAction(){const t=this.$refs.menu.querySelectorAll(d)[this.focusIndex];if(t){this.removeCurrentActive();const e=t.closest("li.action");t.focus(),e&&e.classList.add("active")}},focusPreviousAction(t){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction(t){if(this.opened){const e=this.$refs.menu.querySelectorAll(d).length-1;this.focusIndex===e?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=0,this.focusAction())},focusLastAction(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=this.$refs.menu.querySelectorAll(d).length-1,this.focusAction())},preventIfEvent(t){t&&(t.preventDefault(),t.stopPropagation())},onFocus(t){this.$emit("focus",t)},onBlur(t){this.$emit("blur",t)}},render(t){const e=(this.$slots.default||[]).filter((t=>{var e,n,r,o;return(null==t||null===(e=t.componentOptions)||void 0===e?void 0:e.tag)||(null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.Ctor)||void 0===r||null===(o=r.extendOptions)||void 0===o?void 0:o.name)})),n=e.every((t=>{var e,n,r,o,i,a,s,l;return"NcActionLink"===(null!==(e=null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.Ctor)||void 0===r||null===(o=r.extendOptions)||void 0===o?void 0:o.name)&&void 0!==e?e:null==t||null===(i=t.componentOptions)||void 0===i?void 0:i.tag)&&(null==t||null===(a=t.componentOptions)||void 0===a||null===(s=a.propsData)||void 0===s||null===(l=s.href)||void 0===l?void 0:l.startsWith(window.location.origin))}));let r=e.filter(this.isValidSingleAction);if(this.forceMenu&&r.length>0&&this.inline>0&&(l().util.warn("Specifying forceMenu will ignore any inline actions rendering."),r=[]),0===e.length)return;const o=e=>{var n,r,o,i,a,s,l,c,u,d,p,h,f,m,v,g,A,y,b,C,w,k;const x=(null==e||null===(n=e.data)||void 0===n||null===(r=n.scopedSlots)||void 0===r||null===(o=r.icon())||void 0===o?void 0:o[0])||t("span",{class:["icon",null==e||null===(i=e.componentOptions)||void 0===i||null===(a=i.propsData)||void 0===a?void 0:a.icon]}),S=null==e||null===(s=e.componentOptions)||void 0===s||null===(l=s.listeners)||void 0===l?void 0:l.click,j=null==e||null===(c=e.componentOptions)||void 0===c||null===(u=c.children)||void 0===u||null===(d=u[0])||void 0===d||null===(p=d.text)||void 0===p||null===(h=p.trim)||void 0===h?void 0:h.call(p),_=(null==e||null===(f=e.componentOptions)||void 0===f||null===(m=f.propsData)||void 0===m?void 0:m.ariaLabel)||j,E=this.forceName?j:"";let P=null==e||null===(v=e.componentOptions)||void 0===v||null===(g=v.propsData)||void 0===g?void 0:g.title;return this.forceName||P||(P=j),t("NcButton",{class:["action-item action-item--single",null==e||null===(A=e.data)||void 0===A?void 0:A.staticClass,null==e||null===(y=e.data)||void 0===y?void 0:y.class],attrs:{"aria-label":_,title:P},ref:null==e||null===(b=e.data)||void 0===b?void 0:b.ref,props:{type:this.type||(E?"secondary":"tertiary"),disabled:this.disabled||(null==e||null===(C=e.componentOptions)||void 0===C||null===(w=C.propsData)||void 0===w?void 0:w.disabled),ariaHidden:this.ariaHidden,...null==e||null===(k=e.componentOptions)||void 0===k?void 0:k.propsData},on:{focus:this.onFocus,blur:this.onBlur,...!!S&&{click:t=>{S&&S(t)}}}},[t("template",{slot:"icon"},[x]),E])},i=e=>{var r,o;const i=(null===(r=this.$slots.icon)||void 0===r?void 0:r[0])||(this.defaultIcon?t("span",{class:["icon",this.defaultIcon]}):t("DotsHorizontal",{props:{size:20}}));return t("NcPopover",{ref:"popover",props:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,popoverBaseClass:"action-item__popper",setReturnFocus:null===(o=this.$refs.menuButton)||void 0===o?void 0:o.$el},attrs:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,...this.manualOpen&&{triggers:[]},popoverBaseClass:"action-item__popper"},on:{show:this.openMenu,"after-show":this.onOpen,hide:this.closeMenu}},[t("NcButton",{class:"action-item__menutoggle",props:{type:this.triggerBtnType,disabled:this.disabled,ariaHidden:this.ariaHidden},slot:"trigger",ref:"menuButton",attrs:{"aria-haspopup":n?null:"menu","aria-label":this.ariaLabel,"aria-controls":this.opened?this.randomId:null,"aria-expanded":this.opened.toString()},on:{focus:this.onFocus,blur:this.onBlur}},[t("template",{slot:"icon"},[i]),this.menuName]),t("div",{class:{open:this.opened},attrs:{tabindex:"-1"},on:{keydown:this.onKeydown,mousemove:this.onMouseFocusAction},ref:"menu"},[t("ul",{attrs:{id:this.randomId,tabindex:"-1",role:n?null:"menu"}},[e])])])};if(1===e.length&&1===r.length&&!this.forceMenu)return o(r[0]);if(r.length>0&&this.inline>0){const n=r.slice(0,this.inline),a=e.filter((t=>!n.includes(t)));return t("div",{class:["action-items","action-item--".concat(this.triggerBtnType)]},[...n.map(o),a.length>0?t("div",{class:["action-item",{"action-item--open":this.opened}]},[i(a)]):null])}return t("div",{class:["action-item action-item--default-popover","action-item--".concat(this.triggerBtnType),{"action-item--open":this.opened}]},[i(e)])}};var h=n(3379),f=n.n(h),m=n(7795),v=n.n(m),g=n(569),A=n.n(g),y=n(3565),b=n.n(y),C=n(9216),w=n.n(C),k=n(4589),x=n.n(k),S=n(4825),j={};j.styleTagTransform=x(),j.setAttributes=b(),j.insert=A().bind(null,"head"),j.domAPI=v(),j.insertStyleElement=w(),f()(S.Z,j),S.Z&&S.Z.locals&&S.Z.locals;var _=n(4946),E={};E.styleTagTransform=x(),E.setAttributes=b(),E.insert=A().bind(null,"head"),E.domAPI=v(),E.insertStyleElement=w(),f()(_.Z,E),_.Z&&_.Z.locals&&_.Z.locals;var P=n(1900),N=n(5727),O=n.n(N),z=(0,P.Z)(p,void 0,void 0,!1,null,"29452b76",null);"function"==typeof O()&&O()(z);const T=z.exports},4462:(t,e,n)=>{"use strict";n.d(e,{default:()=>k});const o={name:"NcButton",props:{disabled:{type:Boolean,default:!1},type:{type:String,validator:t=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(t),default:"secondary"},nativeType:{type:String,validator:t=>-1!==["submit","reset","button"].indexOf(t),default:"button"},wide:{type:Boolean,default:!1},ariaLabel:{type:String,default:null},href:{type:String,default:null},to:{type:[String,Object],default:null},exact:{type:Boolean,default:!1},ariaHidden:{type:Boolean,default:null}},render(t){var e,n,o,i,a,s=this;const l=null===(e=this.$slots.default)||void 0===e||null===(n=e[0])||void 0===n||null===(o=n.text)||void 0===o||null===(i=o.trim)||void 0===i?void 0:i.call(o),c=!!l,u=null===(a=this.$slots)||void 0===a?void 0:a.icon;l||this.ariaLabel||r.warn("You need to fill either the text or the ariaLabel props in the button component.",{text:l,ariaLabel:this.ariaLabel},this);const d=function(){let{navigate:e,isActive:n,isExactActive:r}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t(s.to||!s.href?"button":"a",{class:["button-vue",{"button-vue--icon-only":u&&!c,"button-vue--text-only":c&&!u,"button-vue--icon-and-text":u&&c,["button-vue--vue-".concat(s.type)]:s.type,"button-vue--wide":s.wide,active:n,"router-link-exact-active":r}],attrs:{"aria-label":s.ariaLabel,disabled:s.disabled,type:s.href?null:s.nativeType,role:s.href?"button":null,href:!s.to&&s.href?s.href:null,...s.$attrs},on:{...s.$listeners,click:t=>{var n,r;null===(n=s.$listeners)||void 0===n||null===(r=n.click)||void 0===r||r.call(n,t),null==e||e(t)}}},[t("span",{class:"button-vue__wrapper"},[u?t("span",{class:"button-vue__icon",attrs:{"aria-hidden":s.ariaHidden}},[s.$slots.icon]):null,c?t("span",{class:"button-vue__text"},[l]):null])])};return this.to?t("router-link",{props:{custom:!0,to:this.to,exact:this.exact},scopedSlots:{default:d}}):d()}};var i=n(3379),a=n.n(i),s=n(7795),l=n.n(s),c=n(569),u=n.n(c),d=n(3565),p=n.n(d),h=n(9216),f=n.n(h),m=n(4589),v=n.n(m),g=n(7196),A={};A.styleTagTransform=v(),A.setAttributes=p(),A.insert=u().bind(null,"head"),A.domAPI=l(),A.insertStyleElement=f(),a()(g.Z,A),g.Z&&g.Z.locals&&g.Z.locals;var y=n(1900),b=n(2102),C=n.n(b),w=(0,y.Z)(o,void 0,void 0,!1,null,"4d05be2c",null);"function"==typeof C()&&C()(w);const k=w.exports},2297:(t,e,n)=>{"use strict";n.d(e,{default:()=>_});var o=n(9454),i=n(4505),a=n(1206);const s={name:"NcPopover",components:{Dropdown:o.Dropdown},inheritAttrs:!1,props:{popoverBaseClass:{type:String,default:""},focusTrap:{type:Boolean,default:!0},setReturnFocus:{default:void 0,type:[HTMLElement,SVGElement,String,Boolean]}},emits:["after-show","after-hide"],beforeDestroy(){this.clearFocusTrap()},methods:{async useFocusTrap(){var t,e;if(await this.$nextTick(),!this.focusTrap)return;const n=null===(t=this.$refs.popover)||void 0===t||null===(e=t.$refs.popperContent)||void 0===e?void 0:e.$el;n&&(this.$focusTrap=(0,i.createFocusTrap)(n,{escapeDeactivates:!1,allowOutsideClick:!0,setReturnFocus:this.setReturnFocus,trapStack:(0,a.L)()}),this.$focusTrap.activate())},clearFocusTrap(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{var e;null===(e=this.$focusTrap)||void 0===e||e.deactivate(t),this.$focusTrap=null}catch(t){r.warn(t)}},afterShow(){this.$nextTick((()=>{this.$emit("after-show"),this.useFocusTrap()}))},afterHide(){this.$emit("after-hide"),this.clearFocusTrap()}}},l=s;var c=n(3379),u=n.n(c),d=n(7795),p=n.n(d),h=n(569),f=n.n(h),m=n(3565),v=n.n(m),g=n(9216),A=n.n(g),y=n(4589),b=n.n(y),C=n(1625),w={};w.styleTagTransform=b(),w.setAttributes=v(),w.insert=f().bind(null,"head"),w.domAPI=p(),w.insertStyleElement=A(),u()(C.Z,w),C.Z&&C.Z.locals&&C.Z.locals;var k=n(1900),x=n(2405),S=n.n(x),j=(0,k.Z)(l,(function(){var t=this;return(0,t._self._c)("Dropdown",t._g(t._b({ref:"popover",attrs:{distance:10,"arrow-padding":10,"no-auto-focus":!0,"popper-class":t.popoverBaseClass},on:{"apply-show":t.afterShow,"apply-hide":t.afterHide},scopedSlots:t._u([{key:"popper",fn:function(){return[t._t("default")]},proxy:!0}],null,!0)},"Dropdown",t.$attrs,!1),t.$listeners),[t._t("trigger")],2)}),[],!1,null,null,null);"function"==typeof S()&&S()(j);const _=j.exports},932:(t,e,n)=>{"use strict";n.d(e,{t:()=>i});const r=(0,n(7931).getGettextBuilder)().detectLocale();[{locale:"ar",translations:{"{tag} (invisible)":"{tag} (غير مرئي)","{tag} (restricted)":"{tag} (مقيد)",Actions:"الإجراءات",Activities:"النشاطات","Animals & Nature":"الحيوانات والطبيعة","Anything shared with the same group of people will show up here":"أي مادة تمت مشاركتها مع نفس المجموعة من الأشخاص سيتم عرضها هنا","Avatar of {displayName}":"صورة {displayName} الرمزية","Avatar of {displayName}, {status}":"صورة {displayName} الرمزية، {status}","Cancel changes":"إلغاء التغييرات","Change title":"تغيير العنوان",Choose:"إختيار","Clear text":"مسح النص",Close:"أغلق","Close modal":"قفل الشرط","Close navigation":"إغلاق المتصفح","Close sidebar":"قفل الشريط الجانبي","Confirm changes":"تأكيد التغييرات",Custom:"مخصص","Edit item":"تعديل عنصر","Error getting related resources":"خطأ في تحصيل مصادر ذات صلة","External documentation for {title}":"الوثائق الخارجية لـ{title}",Favorite:"مفضلة",Flags:"الأعلام","Food & Drink":"الطعام والشراب","Frequently used":"كثيرا ما تستخدم",Global:"عالمي","Go back to the list":"العودة إلى القائمة","Hide password":"إخفاء كلمة السر","Message limit of {count} characters reached":"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف","More items …":"عناصر أخرى ...",Next:"التالي","No emoji found":"لم يتم العثور على أي رمز تعبيري","No results":"ليس هناك أية نتيجة",Objects:"الأشياء",Open:"فتح",'Open link to "{resourceTitle}"':'فتح رابط إلى "{resourceTitle}"',"Open navigation":"فتح المتصفح","Password is secure":"كلمة السر مُؤمّنة","Pause slideshow":"إيقاف العرض مؤقتًا","People & Body":"الناس والجسم","Pick an emoji":"اختر رمزًا تعبيريًا","Please select a time zone:":"الرجاء تحديد المنطقة الزمنية:",Previous:"السابق","Related resources":"مصادر ذات صلة",Search:"بحث","Search results":"نتائج البحث","Select a tag":"اختر علامة",Settings:"الإعدادات","Settings navigation":"إعدادات المتصفح","Show password":"أعرض كلمة السر","Smileys & Emotion":"الوجوه و الرموز التعبيرية","Start slideshow":"بدء العرض",Submit:"إرسال",Symbols:"الرموز","Travel & Places":"السفر والأماكن","Type to search time zone":"اكتب للبحث عن منطقة زمنية","Unable to search the group":"تعذر البحث في المجموعة","Undo changes":"التراجع عن التغييرات","Write message, @ to mention someone, : for emoji autocompletion …":"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ..."}},{locale:"br",translations:{"{tag} (invisible)":"{tag} (diwelus)","{tag} (restricted)":"{tag} (bevennet)",Actions:"Oberioù",Activities:"Oberiantizoù","Animals & Nature":"Loened & Natur",Choose:"Dibab",Close:"Serriñ",Custom:"Personelañ",Flags:"Bannieloù","Food & Drink":"Boued & Evajoù","Frequently used":"Implijet alies",Next:"Da heul","No emoji found":"Emoji ebet kavet","No results":"Disoc'h ebet",Objects:"Traoù","Pause slideshow":"Arsav an diaporama","People & Body":"Tud & Korf","Pick an emoji":"Choaz un emoji",Previous:"A-raok",Search:"Klask","Search results":"Disoc'hoù an enklask","Select a tag":"Choaz ur c'hlav",Settings:"Arventennoù","Smileys & Emotion":"Smileyioù & Fromoù","Start slideshow":"Kregiñ an diaporama",Symbols:"Arouezioù","Travel & Places":"Beaj & Lec'hioù","Unable to search the group":"Dibosupl eo klask ar strollad"}},{locale:"ca",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringit)",Actions:"Accions",Activities:"Activitats","Animals & Nature":"Animals i natura","Anything shared with the same group of people will show up here":"Qualsevol cosa compartida amb el mateix grup de persones es mostrarà aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancel·la els canvis","Change title":"Canviar títol",Choose:"Tria","Clear text":"Netejar text",Close:"Tanca","Close modal":"Tancar el mode","Close navigation":"Tanca la navegació","Close sidebar":"Tancar la barra lateral","Confirm changes":"Confirmeu els canvis",Custom:"Personalitzat","Edit item":"Edita l'element","Error getting related resources":"Error obtenint els recursos relacionats","Error parsing svg":"Error en l'anàlisi del svg","External documentation for {title}":"Documentació externa per a {title}",Favorite:"Preferit",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment",Global:"Global","Go back to the list":"Torna a la llista","Hide password":"Amagar contrasenya","Message limit of {count} characters reached":"S'ha arribat al límit de {count} caràcters per missatge","More items …":"Més artícles...",Next:"Següent","No emoji found":"No s'ha trobat cap emoji","No results":"Sense resultats",Objects:"Objectes",Open:"Obrir",'Open link to "{resourceTitle}"':'Obrir enllaç a "{resourceTitle}"',"Open navigation":"Obre la navegació","Password is secure":"Contrasenya segura<br>","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji","Please select a time zone:":"Seleccioneu una zona horària:",Previous:"Anterior","Related resources":"Recursos relacionats",Search:"Cerca","Search results":"Resultats de cerca","Select a tag":"Seleccioneu una etiqueta",Settings:"Paràmetres","Settings navigation":"Navegació d'opcions","Show password":"Mostrar contrasenya","Smileys & Emotion":"Cares i emocions","Start slideshow":"Inicia la presentació",Submit:"Envia",Symbols:"Símbols","Travel & Places":"Viatges i llocs","Type to search time zone":"Escriviu per cercar la zona horària","Unable to search the group":"No es pot cercar el grup","Undo changes":"Desfés els canvis",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escriu missatge, fes servir "@" per esmentar algú, fes servir ":" per autocompletar emojis...'}},{locale:"cs_CZ",translations:{"{tag} (invisible)":"{tag} (neviditelné)","{tag} (restricted)":"{tag} (omezené)",Actions:"Akce",Activities:"Aktivity","Animals & Nature":"Zvířata a příroda","Anything shared with the same group of people will show up here":"Cokoli nasdíleného stejné skupině lidí se zobrazí zde","Avatar of {displayName}":"Zástupný obrázek uživatele {displayName}","Avatar of {displayName}, {status}":"Zástupný obrázek uživatele {displayName}, {status}","Cancel changes":"Zrušit změny","Change title":"Změnit nadpis",Choose:"Zvolit","Clear text":"Čitelný text",Close:"Zavřít","Close modal":"Zavřít dialogové okno","Close navigation":"Zavřít navigaci","Close sidebar":"Zavřít postranní panel","Confirm changes":"Potvrdit změny",Custom:"Uživatelsky určené","Edit item":"Upravit položku","Error getting related resources":"Chyba při získávání souvisejících prostředků","Error parsing svg":"Chyba při zpracovávání svg","External documentation for {title}":"Externí dokumentace k {title}",Favorite:"Oblíbené",Flags:"Příznaky","Food & Drink":"Jídlo a pití","Frequently used":"Často používané",Global:"Globální","Go back to the list":"Jít zpět na seznam","Hide password":"Skrýt heslo","Message limit of {count} characters reached":"Dosaženo limitu počtu ({count}) znaků zprávy","More items …":"Další položky…",Next:"Následující","No emoji found":"Nenalezeno žádné emoji","No results":"Nic nenalezeno",Objects:"Objekty",Open:"Otevřít",'Open link to "{resourceTitle}"':"Otevřít odkaz na „{resourceTitle}“","Open navigation":"Otevřít navigaci","Password is secure":"Heslo je bezpečné","Pause slideshow":"Pozastavit prezentaci","People & Body":"Lidé a tělo","Pick an emoji":"Vybrat emoji","Please select a time zone:":"Vyberte časovou zónu:",Previous:"Předchozí","Related resources":"Související prostředky",Search:"Hledat","Search results":"Výsledky hledání","Select a tag":"Vybrat štítek",Settings:"Nastavení","Settings navigation":"Pohyb po nastavení","Show password":"Zobrazit heslo","Smileys & Emotion":"Úsměvy a emoce","Start slideshow":"Spustit prezentaci",Submit:"Odeslat",Symbols:"Symboly","Travel & Places":"Cestování a místa","Type to search time zone":"Psaním vyhledejte časovou zónu","Unable to search the group":"Nedaří se hledat skupinu","Undo changes":"Vzít změny zpět",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem „@“ (zavináč); automatické doplňování emotikonů zahájíte napsáním „:“ (dvojtečky)…"}},{locale:"da",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (begrænset)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr & Natur","Anything shared with the same group of people will show up here":"Alt der deles med samme gruppe af personer vil vises her","Avatar of {displayName}":"Avatar af {displayName}","Avatar of {displayName}, {status}":"Avatar af {displayName}, {status}","Cancel changes":"Annuller ændringer","Change title":"Ret titel",Choose:"Vælg","Clear text":"Ryd tekst",Close:"Luk","Close modal":"Luk vindue","Close navigation":"Luk navigation","Close sidebar":"Luk sidepanel","Confirm changes":"Bekræft ændringer",Custom:"Brugerdefineret","Edit item":"Rediger emne","Error getting related resources":"Kunne ikke hente tilknyttede data","Error parsing svg":"Fejl ved analysering af svg","External documentation for {title}":"Ekstern dokumentation for {title}",Favorite:"Favorit",Flags:"Flag","Food & Drink":"Mad & Drikke","Frequently used":"Ofte brugt",Global:"Global","Go back to the list":"Tilbage til listen","Hide password":"Skjul kodeord","Message limit of {count} characters reached":"Begrænsning på {count} tegn er nået","More items …":"Mere ...",Next:"Videre","No emoji found":"Ingen emoji fundet","No results":"Ingen resultater",Objects:"Objekter",Open:"Åbn",'Open link to "{resourceTitle}"':'Åbn link til "{resourceTitle}"',"Open navigation":"Åbn navigation","Password is secure":"Kodeordet er sikkert","Pause slideshow":"Suspender fremvisning","People & Body":"Mennesker & Menneskekroppen","Pick an emoji":"Vælg en emoji","Please select a time zone:":"Vælg venligst en tidszone:",Previous:"Forrige","Related resources":"Relaterede emner",Search:"Søg","Search results":"Søgeresultater","Select a tag":"Vælg et mærke",Settings:"Indstillinger","Settings navigation":"Naviger i indstillinger","Show password":"Vis kodeord","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start fremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Rejser & Rejsemål","Type to search time zone":"Indtast for at søge efter tidszone","Unable to search the group":"Kan ikke søge på denne gruppe","Undo changes":"Fortryd ændringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv besked, brug "@" for at nævne nogen, brug ":" til emoji-autofuldførelse ...'}},{locale:"de",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Gegenstände",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte wählen Sie eine Zeitzone:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um Zeitzone zu suchen","Unable to search the group":"Die Gruppe konnte nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"de_DE",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Objekte",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte eine Zeitzone auswählen:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um eine Zeitzone zu suchen","Unable to search the group":"Die Gruppe kann nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"el",translations:{"{tag} (invisible)":"{tag} (αόρατο)","{tag} (restricted)":"{tag} (περιορισμένο)",Actions:"Ενέργειες",Activities:"Δραστηριότητες","Animals & Nature":"Ζώα & Φύση","Anything shared with the same group of people will show up here":"Οτιδήποτε μοιράζεται με την ίδια ομάδα ατόμων θα εμφανίζεται εδώ","Avatar of {displayName}":"Άβαταρ του {displayName}","Avatar of {displayName}, {status}":"Άβαταρ του {displayName}, {status}","Cancel changes":"Ακύρωση αλλαγών","Change title":"Αλλαγή τίτλου",Choose:"Επιλογή","Clear text":"Εκκαθάριση κειμένου",Close:"Κλείσιμο","Close modal":"Βοηθητικό κλείσιμο","Close navigation":"Κλείσιμο πλοήγησης","Close sidebar":"Κλείσιμο πλευρικής μπάρας","Confirm changes":"Επιβεβαίωση αλλαγών",Custom:"Προσαρμογή","Edit item":"Επεξεργασία","Error getting related resources":"Σφάλμα λήψης σχετικών πόρων","Error parsing svg":"Σφάλμα ανάλυσης svg","External documentation for {title}":"Εξωτερική τεκμηρίωση για {title}",Favorite:"Αγαπημένα",Flags:"Σημαίες","Food & Drink":"Φαγητό & Ποτό","Frequently used":"Συχνά χρησιμοποιούμενο",Global:"Καθολικό","Go back to the list":"Επιστροφή στην αρχική λίστα ","Hide password":"Απόκρυψη κωδικού πρόσβασης","Message limit of {count} characters reached":"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος","More items …":"Περισσότερα στοιχεία …",Next:"Επόμενο","No emoji found":"Δεν βρέθηκε emoji","No results":"Κανένα αποτέλεσμα",Objects:"Αντικείμενα",Open:"Άνοιγμα",'Open link to "{resourceTitle}"':'Άνοιγμα συνδέσμου στο "{resourceTitle}"',"Open navigation":"Άνοιγμα πλοήγησης","Password is secure":"Ο κωδικός πρόσβασης είναι ασφαλής","Pause slideshow":"Παύση προβολής διαφανειών","People & Body":"Άνθρωποι & Σώμα","Pick an emoji":"Επιλέξτε ένα emoji","Please select a time zone:":"Παρακαλούμε επιλέξτε μια ζώνη ώρας:",Previous:"Προηγούμενο","Related resources":"Σχετικοί πόροι",Search:"Αναζήτηση","Search results":"Αποτελέσματα αναζήτησης","Select a tag":"Επιλογή ετικέτας",Settings:"Ρυθμίσεις","Settings navigation":"Πλοήγηση ρυθμίσεων","Show password":"Εμφάνιση κωδικού πρόσβασης","Smileys & Emotion":"Φατσούλες & Συναίσθημα","Start slideshow":"Έναρξη προβολής διαφανειών",Submit:"Υποβολή",Symbols:"Σύμβολα","Travel & Places":"Ταξίδια & Τοποθεσίες","Type to search time zone":"Πληκτρολογήστε για αναζήτηση ζώνης ώρας","Unable to search the group":"Δεν είναι δυνατή η αναζήτηση της ομάδας","Undo changes":"Αναίρεση Αλλαγών",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Γράψτε μήνυμα, χρησιμοποιείστε "@" για να αναφέρετε κάποιον, χρησιμοποιείστε ":" για αυτόματη συμπλήρωση emoji …'}},{locale:"en_GB",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restricted)",Actions:"Actions",Activities:"Activities","Animals & Nature":"Animals & Nature","Anything shared with the same group of people will show up here":"Anything shared with the same group of people will show up here","Avatar of {displayName}":"Avatar of {displayName}","Avatar of {displayName}, {status}":"Avatar of {displayName}, {status}","Cancel changes":"Cancel changes","Change title":"Change title",Choose:"Choose","Clear text":"Clear text",Close:"Close","Close modal":"Close modal","Close navigation":"Close navigation","Close sidebar":"Close sidebar","Confirm changes":"Confirm changes",Custom:"Custom","Edit item":"Edit item","Error getting related resources":"Error getting related resources","Error parsing svg":"Error parsing svg","External documentation for {title}":"External documentation for {title}",Favorite:"Favourite",Flags:"Flags","Food & Drink":"Food & Drink","Frequently used":"Frequently used",Global:"Global","Go back to the list":"Go back to the list","Hide password":"Hide password","Message limit of {count} characters reached":"Message limit of {count} characters reached","More items …":"More items …",Next:"Next","No emoji found":"No emoji found","No results":"No results",Objects:"Objects",Open:"Open",'Open link to "{resourceTitle}"':'Open link to "{resourceTitle}"',"Open navigation":"Open navigation","Password is secure":"Password is secure","Pause slideshow":"Pause slideshow","People & Body":"People & Body","Pick an emoji":"Pick an emoji","Please select a time zone:":"Please select a time zone:",Previous:"Previous","Related resources":"Related resources",Search:"Search","Search results":"Search results","Select a tag":"Select a tag",Settings:"Settings","Settings navigation":"Settings navigation","Show password":"Show password","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start slideshow",Submit:"Submit",Symbols:"Symbols","Travel & Places":"Travel & Places","Type to search time zone":"Type to search time zone","Unable to search the group":"Unable to search the group","Undo changes":"Undo changes",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Write message, use "@" to mention someone, use ":" for emoji autocompletion …'}},{locale:"eo",translations:{"{tag} (invisible)":"{tag} (kaŝita)","{tag} (restricted)":"{tag} (limigita)",Actions:"Agoj",Activities:"Aktiveco","Animals & Nature":"Bestoj & Naturo",Choose:"Elektu",Close:"Fermu",Custom:"Propra",Flags:"Flagoj","Food & Drink":"Manĝaĵo & Trinkaĵo","Frequently used":"Ofte uzataj","Message limit of {count} characters reached":"La limo je {count} da literoj atingita",Next:"Sekva","No emoji found":"La emoĝio forestas","No results":"La rezulto forestas",Objects:"Objektoj","Pause slideshow":"Payzi bildprezenton","People & Body":"Homoj & Korpo","Pick an emoji":"Elekti emoĝion ",Previous:"Antaŭa",Search:"Serĉi","Search results":"Serĉrezultoj","Select a tag":"Elektu etikedon",Settings:"Agordo","Settings navigation":"Agorda navigado","Smileys & Emotion":"Ridoj kaj Emocioj","Start slideshow":"Komenci bildprezenton",Symbols:"Signoj","Travel & Places":"Vojaĵoj & Lokoj","Unable to search the group":"Ne eblas serĉi en la grupo","Write message, @ to mention someone …":"Mesaĝi, uzu @ por mencii iun ..."}},{locale:"es",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringido)",Actions:"Acciones",Activities:"Actividades","Animals & Nature":"Animales y naturaleza","Anything shared with the same group of people will show up here":"Cualquier cosa que sea compartida con el mismo grupo de personas se mostrará aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar cambios","Change title":"Cambiar título",Choose:"Elegir","Clear text":"Limpiar texto",Close:"Cerrar","Close modal":"Cerrar modal","Close navigation":"Cerrar navegación","Close sidebar":"Cerrar barra lateral","Confirm changes":"Confirmar cambios",Custom:"Personalizado","Edit item":"Editar elemento","Error getting related resources":"Se encontró un error al obtener los recursos relacionados","Error parsing svg":"Error procesando svg","External documentation for {title}":"Documentacion externa de {title}",Favorite:"Favorito",Flags:"Banderas","Food & Drink":"Comida y bebida","Frequently used":"Usado con frecuenca",Global:"Global","Go back to the list":"Volver a la lista","Hide password":"Ocultar contraseña","Message limit of {count} characters reached":"El mensaje ha alcanzado el límite de {count} caracteres","More items …":"Más ítems...",Next:"Siguiente","No emoji found":"No hay ningún emoji","No results":" Ningún resultado",Objects:"Objetos",Open:"Abrir",'Open link to "{resourceTitle}"':'Abrir enlace a "{resourceTitle}"',"Open navigation":"Abrir navegación","Password is secure":"La contraseña es segura","Pause slideshow":"Pausar la presentación ","People & Body":"Personas y cuerpos","Pick an emoji":"Elegir un emoji","Please select a time zone:":"Por favor elige un huso de horario:",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Buscar","Search results":"Resultados de la búsqueda","Select a tag":"Seleccione una etiqueta",Settings:"Ajustes","Settings navigation":"Navegación por ajustes","Show password":"Mostrar contraseña","Smileys & Emotion":"Smileys y emoticonos","Start slideshow":"Iniciar la presentación",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viajes y lugares","Type to search time zone":"Escribe para buscar un huso de horario","Unable to search the group":"No es posible buscar en el grupo","Undo changes":"Deshacer cambios",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escribir mensaje, utilice "@" para mencionar a alguien, utilice ":" para autocompletado de emojis ...'}},{locale:"eu",translations:{"{tag} (invisible)":"{tag} (ikusezina)","{tag} (restricted)":"{tag} (mugatua)",Actions:"Ekintzak",Activities:"Jarduerak","Animals & Nature":"Animaliak eta Natura","Anything shared with the same group of people will show up here":"Pertsona-talde berarekin partekatutako edozer agertuko da hemen","Avatar of {displayName}":"{displayName}-(e)n irudia","Avatar of {displayName}, {status}":"{displayName} -(e)n irudia, {status}","Cancel changes":"Ezeztatu aldaketak","Change title":"Aldatu titulua",Choose:"Aukeratu","Clear text":"Garbitu testua",Close:"Itxi","Close modal":"Itxi modala","Close navigation":"Itxi nabigazioa","Close sidebar":"Itxi albo-barra","Confirm changes":"Baieztatu aldaketak",Custom:"Pertsonalizatua","Edit item":"Editatu elementua","Error getting related resources":"Errorea erlazionatutako baliabideak lortzerakoan","Error parsing svg":"Errore bat gertatu da svg-a analizatzean","External documentation for {title}":"Kanpoko dokumentazioa {title}(r)entzat",Favorite:"Gogokoa",Flags:"Banderak","Food & Drink":"Janaria eta edariak","Frequently used":"Askotan erabilia",Global:"Globala","Go back to the list":"Bueltatu zerrendara","Hide password":"Ezkutatu pasahitza","Message limit of {count} characters reached":"Mezuaren {count} karaketere-limitera heldu zara","More items …":"Elementu gehiago …",Next:"Hurrengoa","No emoji found":"Ez da emojirik aurkitu","No results":"Emaitzarik ez",Objects:"Objektuak",Open:"Ireki",'Open link to "{resourceTitle}"':'Ireki esteka: "{resourceTitle}"',"Open navigation":"Ireki nabigazioa","Password is secure":"Pasahitza segurua da","Pause slideshow":"Pausatu diaporama","People & Body":"Jendea eta gorputza","Pick an emoji":"Hautatu emoji bat","Please select a time zone:":"Mesedez hautatu ordu-zona bat:",Previous:"Aurrekoa","Related resources":"Erlazionatutako baliabideak",Search:"Bilatu","Search results":"Bilaketa emaitzak","Select a tag":"Hautatu etiketa bat",Settings:"Ezarpenak","Settings navigation":"Nabigazio ezarpenak","Show password":"Erakutsi pasahitza","Smileys & Emotion":"Smileyak eta emozioa","Start slideshow":"Hasi diaporama",Submit:"Bidali",Symbols:"Sinboloak","Travel & Places":"Bidaiak eta lekuak","Type to search time zone":"Idatzi ordu-zona bat bilatzeko","Unable to search the group":"Ezin izan da taldea bilatu","Undo changes":"Aldaketak desegin",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Idatzi mezua, erabili "@" norbait aipatzeko, erabili ":" emojiak automatikoki osatzeko...'}},{locale:"fi_FI",translations:{"{tag} (invisible)":"{tag} (näkymätön)","{tag} (restricted)":"{tag} (rajoitettu)",Actions:"Toiminnot",Activities:"Aktiviteetit","Animals & Nature":"Eläimet & luonto","Avatar of {displayName}":"Käyttäjän {displayName} avatar","Avatar of {displayName}, {status}":"Käyttäjän {displayName} avatar, {status}","Cancel changes":"Peruuta muutokset",Choose:"Valitse",Close:"Sulje","Close navigation":"Sulje navigaatio","Confirm changes":"Vahvista muutokset",Custom:"Mukautettu","Edit item":"Muokkaa kohdetta","External documentation for {title}":"Ulkoinen dokumentaatio kohteelle {title}",Flags:"Liput","Food & Drink":"Ruoka & juoma","Frequently used":"Usein käytetyt",Global:"Yleinen","Go back to the list":"Siirry takaisin listaan","Message limit of {count} characters reached":"Viestin merkken enimmäisimäärä {count} täynnä ",Next:"Seuraava","No emoji found":"Emojia ei löytynyt","No results":"Ei tuloksia",Objects:"Esineet & asiat","Open navigation":"Avaa navigaatio","Pause slideshow":"Keskeytä diaesitys","People & Body":"Ihmiset & keho","Pick an emoji":"Valitse emoji","Please select a time zone:":"Valitse aikavyöhyke:",Previous:"Edellinen",Search:"Etsi","Search results":"Hakutulokset","Select a tag":"Valitse tagi",Settings:"Asetukset","Settings navigation":"Asetusnavigaatio","Smileys & Emotion":"Hymiöt & tunteet","Start slideshow":"Aloita diaesitys",Submit:"Lähetä",Symbols:"Symbolit","Travel & Places":"Matkustus & kohteet","Type to search time zone":"Kirjoita etsiäksesi aikavyöhyke","Unable to search the group":"Ryhmää ei voi hakea","Undo changes":"Kumoa muutokset","Write message, @ to mention someone, : for emoji autocompletion …":"Kirjoita viesti, @ mainitaksesi käyttäjän, : emojin automaattitäydennykseen…"}},{locale:"fr",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restreint)",Actions:"Actions",Activities:"Activités","Animals & Nature":"Animaux & Nature","Anything shared with the same group of people will show up here":"Tout ce qui est partagé avec le même groupe de personnes apparaîtra ici","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Annuler les modifications","Change title":"Modifier le titre",Choose:"Choisir","Clear text":"Effacer le texte",Close:"Fermer","Close modal":"Fermer la fenêtre","Close navigation":"Fermer la navigation","Close sidebar":"Fermer la barre latérale","Confirm changes":"Confirmer les modifications",Custom:"Personnalisé","Edit item":"Éditer l'élément","Error getting related resources":"Erreur à la récupération des ressources liées","Error parsing svg":"Erreur d'analyse SVG","External documentation for {title}":"Documentation externe pour {title}",Favorite:"Favori",Flags:"Drapeaux","Food & Drink":"Nourriture & Boissons","Frequently used":"Utilisés fréquemment",Global:"Global","Go back to the list":"Retourner à la liste","Hide password":"Cacher le mot de passe","Message limit of {count} characters reached":"Limite de messages de {count} caractères atteinte","More items …":"Plus d'éléments...",Next:"Suivant","No emoji found":"Pas d’émoji trouvé","No results":"Aucun résultat",Objects:"Objets",Open:"Ouvrir",'Open link to "{resourceTitle}"':'Ouvrir le lien vers "{resourceTitle}"',"Open navigation":"Ouvrir la navigation","Password is secure":"Le mot de passe est sécurisé","Pause slideshow":"Mettre le diaporama en pause","People & Body":"Personnes & Corps","Pick an emoji":"Choisissez un émoji","Please select a time zone:":"Sélectionnez un fuseau horaire : ",Previous:"Précédent","Related resources":"Ressources liées",Search:"Chercher","Search results":"Résultats de recherche","Select a tag":"Sélectionnez une balise",Settings:"Paramètres","Settings navigation":"Navigation dans les paramètres","Show password":"Afficher le mot de passe","Smileys & Emotion":"Smileys & Émotions","Start slideshow":"Démarrer le diaporama",Submit:"Valider",Symbols:"Symboles","Travel & Places":"Voyage & Lieux","Type to search time zone":"Saisissez les premiers lettres pour rechercher un fuseau horaire","Unable to search the group":"Impossible de chercher le groupe","Undo changes":"Annuler les changements",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Écrire un message, utiliser "@" pour mentionner une personne, ":" pour l\'autocomplétion des émojis...'}},{locale:"gl",translations:{"{tag} (invisible)":"{tag} (invisíbel)","{tag} (restricted)":"{tag} (restrinxido)",Actions:"Accións",Activities:"Actividades","Animals & Nature":"Animais e natureza","Cancel changes":"Cancelar os cambios",Choose:"Escoller",Close:"Pechar","Confirm changes":"Confirma os cambios",Custom:"Personalizado","External documentation for {title}":"Documentación externa para {title}",Flags:"Bandeiras","Food & Drink":"Comida e bebida","Frequently used":"Usado con frecuencia","Message limit of {count} characters reached":"Acadouse o límite de {count} caracteres por mensaxe",Next:"Seguinte","No emoji found":"Non se atopou ningún «emoji»","No results":"Sen resultados",Objects:"Obxectos","Pause slideshow":"Pausar o diaporama","People & Body":"Persoas e corpo","Pick an emoji":"Escolla un «emoji»",Previous:"Anterir",Search:"Buscar","Search results":"Resultados da busca","Select a tag":"Seleccione unha etiqueta",Settings:"Axustes","Settings navigation":"Navegación polos axustes","Smileys & Emotion":"Sorrisos e emocións","Start slideshow":"Iniciar o diaporama",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viaxes e lugares","Unable to search the group":"Non foi posíbel buscar o grupo","Write message, @ to mention someone …":"Escriba a mensaxe, @ para mencionar a alguén…"}},{locale:"he",translations:{"{tag} (invisible)":"{tag} (נסתר)","{tag} (restricted)":"{tag} (מוגבל)",Actions:"פעולות",Activities:"פעילויות","Animals & Nature":"חיות וטבע",Choose:"בחירה",Close:"סגירה",Custom:"בהתאמה אישית",Flags:"דגלים","Food & Drink":"מזון ומשקאות","Frequently used":"בשימוש תדיר",Next:"הבא","No emoji found":"לא נמצא אמוג׳י","No results":"אין תוצאות",Objects:"חפצים","Pause slideshow":"השהיית מצגת","People & Body":"אנשים וגוף","Pick an emoji":"נא לבחור אמוג׳י",Previous:"הקודם",Search:"חיפוש","Search results":"תוצאות חיפוש","Select a tag":"בחירת תגית",Settings:"הגדרות","Smileys & Emotion":"חייכנים ורגשונים","Start slideshow":"התחלת המצגת",Symbols:"סמלים","Travel & Places":"טיולים ומקומות","Unable to search the group":"לא ניתן לחפש בקבוצה"}},{locale:"hu_HU",translations:{"{tag} (invisible)":"{tag} (láthatatlan)","{tag} (restricted)":"{tag} (korlátozott)",Actions:"Műveletek",Activities:"Tevékenységek","Animals & Nature":"Állatok és természet","Anything shared with the same group of people will show up here":"Minden, amit ugyanazzal a csoporttal oszt meg, itt fog megjelenni","Avatar of {displayName}":"{displayName} profilképe","Avatar of {displayName}, {status}":"{displayName} profilképe, {status}","Cancel changes":"Változtatások elvetése","Change title":"Cím megváltoztatása",Choose:"Válassszon","Clear text":"Szöveg törlése",Close:"Bezárás","Close modal":"Ablak bezárása","Close navigation":"Navigáció bezárása","Close sidebar":"Oldalsáv bezárása","Confirm changes":"Változtatások megerősítése",Custom:"Egyéni","Edit item":"Elem szerkesztése","Error getting related resources":"Hiba a kapcsolódó erőforrások lekérésekor","Error parsing svg":"Hiba az SVG feldolgozásakor","External documentation for {title}":"Külső dokumentáció ehhez: {title}",Favorite:"Kedvenc",Flags:"Zászlók","Food & Drink":"Étel és ital","Frequently used":"Gyakran használt",Global:"Globális","Go back to the list":"Ugrás vissza a listához","Hide password":"Jelszó elrejtése","Message limit of {count} characters reached":"{count} karakteres üzenetkorlát elérve","More items …":"További elemek...",Next:"Következő","No emoji found":"Nem található emodzsi","No results":"Nincs találat",Objects:"Tárgyak",Open:"Megnyitás",'Open link to "{resourceTitle}"':"A(z) „{resourceTitle}” hivatkozásának megnyitása","Open navigation":"Navigáció megnyitása","Password is secure":"A jelszó biztonságos","Pause slideshow":"Diavetítés szüneteltetése","People & Body":"Emberek és test","Pick an emoji":"Válasszon egy emodzsit","Please select a time zone:":"Válasszon időzónát:",Previous:"Előző","Related resources":"Kapcsolódó erőforrások",Search:"Keresés","Search results":"Találatok","Select a tag":"Válasszon címkét",Settings:"Beállítások","Settings navigation":"Navigáció a beállításokban","Show password":"Jelszó megjelenítése","Smileys & Emotion":"Mosolyok és érzelmek","Start slideshow":"Diavetítés indítása",Submit:"Beküldés",Symbols:"Szimbólumok","Travel & Places":"Utazás és helyek","Type to search time zone":"Gépeljen az időzóna kereséséhez","Unable to search the group":"A csoport nem kereshető","Undo changes":"Változtatások visszavonása",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Írjon egy üzenetet, használja a „@”-ot valaki megemlítéséhet, illetve a „:”-ot az emodzsik automatikus kiegészítéséhez…"}},{locale:"is",translations:{"{tag} (invisible)":"{tag} (ósýnilegt)","{tag} (restricted)":"{tag} (takmarkað)",Actions:"Aðgerðir",Activities:"Aðgerðir","Animals & Nature":"Dýr og náttúra",Choose:"Velja",Close:"Loka",Custom:"Sérsniðið",Flags:"Flögg","Food & Drink":"Matur og drykkur","Frequently used":"Oftast notað",Next:"Næsta","No emoji found":"Ekkert tjáningartákn fannst","No results":"Engar niðurstöður",Objects:"Hlutir","Pause slideshow":"Gera hlé á skyggnusýningu","People & Body":"Fólk og líkami","Pick an emoji":"Veldu tjáningartákn",Previous:"Fyrri",Search:"Leita","Search results":"Leitarniðurstöður","Select a tag":"Veldu merki",Settings:"Stillingar","Smileys & Emotion":"Broskallar og tilfinningar","Start slideshow":"Byrja skyggnusýningu",Symbols:"Tákn","Travel & Places":"Staðir og ferðalög","Unable to search the group":"Get ekki leitað í hópnum"}},{locale:"it",translations:{"{tag} (invisible)":"{tag} (invisibile)","{tag} (restricted)":"{tag} (limitato)",Actions:"Azioni",Activities:"Attività","Animals & Nature":"Animali e natura","Anything shared with the same group of people will show up here":"Tutto ciò che è stato condiviso con lo stesso gruppo di persone viene visualizzato qui","Avatar of {displayName}":"Avatar di {displayName}","Avatar of {displayName}, {status}":"Avatar di {displayName}, {status}","Cancel changes":"Annulla modifiche","Change title":"Modifica il titolo",Choose:"Scegli","Clear text":"Cancella il testo",Close:"Chiudi","Close modal":"Chiudi il messaggio modale","Close navigation":"Chiudi la navigazione","Close sidebar":"Chiudi la barra laterale","Confirm changes":"Conferma modifiche",Custom:"Personalizzato","Edit item":"Modifica l'elemento","Error getting related resources":"Errore nell'ottenere risorse correlate","Error parsing svg":"Errore nell'analizzare l'svg","External documentation for {title}":"Documentazione esterna per {title}",Favorite:"Preferito",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente",Global:"Globale","Go back to the list":"Torna all'elenco","Hide password":"Nascondi la password","Message limit of {count} characters reached":"Limite dei messaggi di {count} caratteri raggiunto","More items …":"Più elementi ...",Next:"Successivo","No emoji found":"Nessun emoji trovato","No results":"Nessun risultato",Objects:"Oggetti",Open:"Apri",'Open link to "{resourceTitle}"':'Apri il link a "{resourceTitle}"',"Open navigation":"Apri la navigazione","Password is secure":"La password è sicura","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji","Please select a time zone:":"Si prega di selezionare un fuso orario:",Previous:"Precedente","Related resources":"Risorse correlate",Search:"Cerca","Search results":"Risultati di ricerca","Select a tag":"Seleziona un'etichetta",Settings:"Impostazioni","Settings navigation":"Navigazione delle impostazioni","Show password":"Mostra la password","Smileys & Emotion":"Faccine ed emozioni","Start slideshow":"Avvia presentazione",Submit:"Invia",Symbols:"Simboli","Travel & Places":"Viaggi e luoghi","Type to search time zone":"Digita per cercare un fuso orario","Unable to search the group":"Impossibile cercare il gruppo","Undo changes":"Cancella i cambiamenti",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrivi un messaggio, "@" per menzionare qualcuno, ":" per il completamento automatico delle emoji ...'}},{locale:"ja_JP",translations:{"{tag} (invisible)":"{タグ} (不可視)","{tag} (restricted)":"{タグ} (制限付)",Actions:"操作",Activities:"アクティビティ","Animals & Nature":"動物と自然","Anything shared with the same group of people will show up here":"同じグループで共有しているものは、全てここに表示されます","Avatar of {displayName}":"{displayName} のアバター","Avatar of {displayName}, {status}":"{displayName}, {status} のアバター","Cancel changes":"変更をキャンセル","Change title":"タイトルを変更",Choose:"選択","Clear text":"テキストをクリア",Close:"閉じる","Close modal":"モーダルを閉じる","Close navigation":"ナビゲーションを閉じる","Close sidebar":"サイドバーを閉じる","Confirm changes":"変更を承認",Custom:"カスタム","Edit item":"編集","Error getting related resources":"関連リソースの取得エラー","Error parsing svg":"svgの解析エラー","External documentation for {title}":"{title} のための添付文書",Favorite:"お気に入り",Flags:"国旗","Food & Drink":"食べ物と飲み物","Frequently used":"よく使うもの",Global:"全体","Go back to the list":"リストに戻る","Hide password":"パスワードを非表示","Message limit of {count} characters reached":"{count} 文字のメッセージ上限に達しています","More items …":"他のアイテム",Next:"次","No emoji found":"絵文字が見つかりません","No results":"なし",Objects:"物",Open:"開く",'Open link to "{resourceTitle}"':'"{resourceTitle}"のリンクを開く',"Open navigation":"ナビゲーションを開く","Password is secure":"パスワードは保護されています","Pause slideshow":"スライドショーを一時停止","People & Body":"様々な人と体の部位","Pick an emoji":"絵文字を選択","Please select a time zone:":"タイムゾーンを選んで下さい:",Previous:"前","Related resources":"関連リソース",Search:"検索","Search results":"検索結果","Select a tag":"タグを選択",Settings:"設定","Settings navigation":"ナビゲーション設定","Show password":"パスワードを表示","Smileys & Emotion":"感情表現","Start slideshow":"スライドショーを開始",Submit:"提出",Symbols:"記号","Travel & Places":"旅行と場所","Type to search time zone":"タイムゾーン検索のため入力してください","Unable to search the group":"グループを検索できません","Undo changes":"変更を取り消し",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'メッセージを記入、"@"でメンション、":"で絵文字の自動補完 ...'}},{locale:"lt_LT",translations:{"{tag} (invisible)":"{tag} (nematoma)","{tag} (restricted)":"{tag} (apribota)",Actions:"Veiksmai",Activities:"Veiklos","Animals & Nature":"Gyvūnai ir gamta",Choose:"Pasirinkti",Close:"Užverti",Custom:"Tinkinti","External documentation for {title}":"Išorinė {title} dokumentacija",Flags:"Vėliavos","Food & Drink":"Maistas ir gėrimai","Frequently used":"Dažniausiai naudoti","Message limit of {count} characters reached":"Pasiekta {count} simbolių žinutės riba",Next:"Kitas","No emoji found":"Nerasta jaustukų","No results":"Nėra rezultatų",Objects:"Objektai","Pause slideshow":"Pristabdyti skaidrių rodymą","People & Body":"Žmonės ir kūnas","Pick an emoji":"Pasirinkti jaustuką",Previous:"Ankstesnis",Search:"Ieškoti","Search results":"Paieškos rezultatai","Select a tag":"Pasirinkti žymę",Settings:"Nustatymai","Settings navigation":"Naršymas nustatymuose","Smileys & Emotion":"Šypsenos ir emocijos","Start slideshow":"Pradėti skaidrių rodymą",Submit:"Pateikti",Symbols:"Simboliai","Travel & Places":"Kelionės ir vietos","Unable to search the group":"Nepavyko atlikti paiešką grupėje","Write message, @ to mention someone …":"Rašykite žinutę, naudokite @ norėdami kažką paminėti…"}},{locale:"lv",translations:{"{tag} (invisible)":"{tag} (neredzams)","{tag} (restricted)":"{tag} (ierobežots)",Choose:"Izvēlēties",Close:"Aizvērt",Next:"Nākamais","No results":"Nav rezultātu","Pause slideshow":"Pauzēt slaidrādi",Previous:"Iepriekšējais","Select a tag":"Izvēlēties birku",Settings:"Iestatījumi","Start slideshow":"Sākt slaidrādi"}},{locale:"mk",translations:{"{tag} (invisible)":"{tag} (невидливо)","{tag} (restricted)":"{tag} (ограничено)",Actions:"Акции",Activities:"Активности","Animals & Nature":"Животни & Природа","Avatar of {displayName}":"Аватар на {displayName}","Avatar of {displayName}, {status}":"Аватар на {displayName}, {status}","Cancel changes":"Откажи ги промените","Change title":"Промени наслов",Choose:"Избери",Close:"Затвори","Close modal":"Затвори модал","Close navigation":"Затвори навигација","Confirm changes":"Потврди ги промените",Custom:"Прилагодени","Edit item":"Уреди","External documentation for {title}":"Надворешна документација за {title}",Favorite:"Фаворити",Flags:"Знамиња","Food & Drink":"Храна & Пијалоци","Frequently used":"Најчесто користени",Global:"Глобално","Go back to the list":"Врати се на листата",items:"ставки","Message limit of {count} characters reached":"Ограничувањето на должината на пораката од {count} карактери е надминато","More {dashboardItemType} …":"Повеќе {dashboardItemType} …",Next:"Следно","No emoji found":"Не се пронајдени емотикони","No results":"Нема резултати",Objects:"Објекти",Open:"Отвори","Open navigation":"Отвори навигација","Pause slideshow":"Пузирај слајдшоу","People & Body":"Луѓе & Тело","Pick an emoji":"Избери емотикон","Please select a time zone:":"Изберете временска зона:",Previous:"Предходно",Search:"Барај","Search results":"Резултати од барувањето","Select a tag":"Избери ознака",Settings:"Параметри","Settings navigation":"Параметри за навигација","Smileys & Emotion":"Смешковци & Емотикони","Start slideshow":"Стартувај слајдшоу",Submit:"Испрати",Symbols:"Симболи","Travel & Places":"Патувања & Места","Type to search time zone":"Напишете за да пребарате временска зона","Unable to search the group":"Неможе да се принајде групата","Undo changes":"Врати ги промените","Write message, @ to mention someone, : for emoji autocompletion …":"Напиши порака, @ за да спомнете некого, : за емотинони автоатско комплетирање ..."}},{locale:"my",translations:{"{tag} (invisible)":"{tag} (ကွယ်ဝှက်ထား)","{tag} (restricted)":"{tag} (ကန့်သတ်)",Actions:"လုပ်ဆောင်ချက်များ",Activities:"ပြုလုပ်ဆောင်တာများ","Animals & Nature":"တိရစ္ဆာန်များနှင့် သဘာဝ","Avatar of {displayName}":"{displayName} ၏ ကိုယ်ပွား","Cancel changes":"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်",Choose:"ရွေးချယ်ရန်",Close:"ပိတ်ရန်","Confirm changes":"ပြောင်းလဲမှုများ အတည်ပြုရန်",Custom:"အလိုကျချိန်ညှိမှု","External documentation for {title}":"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း",Flags:"အလံများ","Food & Drink":"အစားအသောက်","Frequently used":"မကြာခဏအသုံးပြုသော",Global:"ကမ္ဘာလုံးဆိုင်ရာ","Message limit of {count} characters reached":"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ",Next:"နောက်သို့ဆက်ရန်","No emoji found":"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ","No results":"ရလဒ်မရှိပါ",Objects:"အရာဝတ္ထုများ","Pause slideshow":"စလိုက်ရှိုး ခေတ္တရပ်ရန်","People & Body":"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်","Pick an emoji":"အီမိုဂျီရွေးရန်","Please select a time zone:":"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ",Previous:"ယခင်",Search:"ရှာဖွေရန်","Search results":"ရှာဖွေမှု ရလဒ်များ","Select a tag":"tag ရွေးချယ်ရန်",Settings:"ချိန်ညှိချက်များ","Settings navigation":"ချိန်ညှိချက်အညွှန်း","Smileys & Emotion":"စမိုင်လီများနှင့် အီမိုရှင်း","Start slideshow":"စလိုက်ရှိုးအား စတင်ရန်",Submit:"တင်သွင်းရန်",Symbols:"သင်္ကေတများ","Travel & Places":"ခရီးသွားလာခြင်းနှင့် နေရာများ","Type to search time zone":"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ","Unable to search the group":"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ","Write message, @ to mention someone …":"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်..."}},{locale:"nb_NO",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (beskyttet)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr og natur","Anything shared with the same group of people will show up here":"Alt som er delt med den samme gruppen vil vises her","Avatar of {displayName}":"Avataren til {displayName}","Avatar of {displayName}, {status}":"{displayName}'s avatar, {status}","Cancel changes":"Avbryt endringer","Change title":"Endre tittel",Choose:"Velg","Clear text":"Fjern tekst",Close:"Lukk","Close modal":"Lukk modal","Close navigation":"Lukk navigasjon","Close sidebar":"Lukk sidepanel","Confirm changes":"Bekreft endringer",Custom:"Tilpasset","Edit item":"Rediger","Error getting related resources":"Feil ved henting av relaterte ressurser","Error parsing svg":"Feil ved parsing av svg","External documentation for {title}":"Ekstern dokumentasjon for {title}",Favorite:"Favoritt",Flags:"Flagg","Food & Drink":"Mat og drikke","Frequently used":"Ofte brukt",Global:"Global","Go back to the list":"Gå tilbake til listen","Hide password":"Skjul passord","Message limit of {count} characters reached":"Karakter begrensing {count} nådd i melding","More items …":"Flere gjenstander...",Next:"Neste","No emoji found":"Fant ingen emoji","No results":"Ingen resultater",Objects:"Objekter",Open:"Åpne",'Open link to "{resourceTitle}"':'Åpne link til "{resourceTitle}"',"Open navigation":"Åpne navigasjon","Password is secure":"Passordet er sikkert","Pause slideshow":"Pause lysbildefremvisning","People & Body":"Mennesker og kropp","Pick an emoji":"Velg en emoji","Please select a time zone:":"Vennligst velg tidssone",Previous:"Forrige","Related resources":"Relaterte ressurser",Search:"Søk","Search results":"Søkeresultater","Select a tag":"Velg en merkelapp",Settings:"Innstillinger","Settings navigation":"Navigasjonsinstillinger","Show password":"Vis passord","Smileys & Emotion":"Smilefjes og følelser","Start slideshow":"Start lysbildefremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Reise og steder","Type to search time zone":"Tast for å søke etter tidssone","Unable to search the group":"Kunne ikke søke i gruppen","Undo changes":"Tilbakestill endringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv melding, bruk "@" for å nevne noen, bruk ":" for autofullføring av emoji...'}},{locale:"nl",translations:{"{tag} (invisible)":"{tag} (onzichtbaar)","{tag} (restricted)":"{tag} (beperkt)",Actions:"Acties",Activities:"Activiteiten","Animals & Nature":"Dieren & Natuur","Avatar of {displayName}":"Avatar van {displayName}","Avatar of {displayName}, {status}":"Avatar van {displayName}, {status}","Cancel changes":"Wijzigingen annuleren",Choose:"Kies",Close:"Sluiten","Close navigation":"Navigatie sluiten","Confirm changes":"Wijzigingen bevestigen",Custom:"Aangepast","Edit item":"Item bewerken","External documentation for {title}":"Externe documentatie voor {title}",Flags:"Vlaggen","Food & Drink":"Eten & Drinken","Frequently used":"Vaak gebruikt",Global:"Globaal","Go back to the list":"Ga terug naar de lijst","Message limit of {count} characters reached":"Berichtlimiet van {count} karakters bereikt",Next:"Volgende","No emoji found":"Geen emoji gevonden","No results":"Geen resultaten",Objects:"Objecten","Open navigation":"Navigatie openen","Pause slideshow":"Pauzeer diavoorstelling","People & Body":"Mensen & Lichaam","Pick an emoji":"Kies een emoji","Please select a time zone:":"Selecteer een tijdzone:",Previous:"Vorige",Search:"Zoeken","Search results":"Zoekresultaten","Select a tag":"Selecteer een label",Settings:"Instellingen","Settings navigation":"Instellingen navigatie","Smileys & Emotion":"Smileys & Emotie","Start slideshow":"Start diavoorstelling",Submit:"Verwerken",Symbols:"Symbolen","Travel & Places":"Reizen & Plaatsen","Type to search time zone":"Type om de tijdzone te zoeken","Unable to search the group":"Kan niet in de groep zoeken","Undo changes":"Wijzigingen ongedaan maken","Write message, @ to mention someone, : for emoji autocompletion …":"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ..."}},{locale:"oc",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (limit)",Actions:"Accions",Choose:"Causir",Close:"Tampar",Next:"Seguent","No results":"Cap de resultat","Pause slideshow":"Metre en pausa lo diaporama",Previous:"Precedent","Select a tag":"Seleccionar una etiqueta",Settings:"Paramètres","Start slideshow":"Lançar lo diaporama"}},{locale:"pl",translations:{"{tag} (invisible)":"{tag} (niewidoczna)","{tag} (restricted)":"{tag} (ograniczona)",Actions:"Działania",Activities:"Aktywność","Animals & Nature":"Zwierzęta i natura","Anything shared with the same group of people will show up here":"Tutaj pojawi się wszystko, co zostało udostępnione tej samej grupie osób","Avatar of {displayName}":"Awatar {displayName}","Avatar of {displayName}, {status}":"Awatar {displayName}, {status}","Cancel changes":"Anuluj zmiany","Change title":"Zmień tytuł",Choose:"Wybierz","Clear text":"Wyczyść tekst",Close:"Zamknij","Close modal":"Zamknij modal","Close navigation":"Zamknij nawigację","Close sidebar":"Zamknij pasek boczny","Confirm changes":"Potwierdź zmiany",Custom:"Zwyczajne","Edit item":"Edytuj element","Error getting related resources":"Błąd podczas pobierania powiązanych zasobów","Error parsing svg":"Błąd podczas analizowania svg","External documentation for {title}":"Dokumentacja zewnętrzna dla {title}",Favorite:"Ulubiony",Flags:"Flagi","Food & Drink":"Jedzenie i picie","Frequently used":"Często używane",Global:"Globalnie","Go back to the list":"Powrót do listy","Hide password":"Ukryj hasło","Message limit of {count} characters reached":"Przekroczono limit wiadomości wynoszący {count} znaków","More items …":"Więcej pozycji…",Next:"Następny","No emoji found":"Nie znaleziono emoji","No results":"Brak wyników",Objects:"Obiekty",Open:"Otwórz",'Open link to "{resourceTitle}"':'Otwórz link do "{resourceTitle}"',"Open navigation":"Otwórz nawigację","Password is secure":"Hasło jest bezpieczne","Pause slideshow":"Wstrzymaj pokaz slajdów","People & Body":"Ludzie i ciało","Pick an emoji":"Wybierz emoji","Please select a time zone:":"Wybierz strefę czasową:",Previous:"Poprzedni","Related resources":"Powiązane zasoby",Search:"Szukaj","Search results":"Wyniki wyszukiwania","Select a tag":"Wybierz etykietę",Settings:"Ustawienia","Settings navigation":"Ustawienia nawigacji","Show password":"Pokaż hasło","Smileys & Emotion":"Buźki i emotikony","Start slideshow":"Rozpocznij pokaz slajdów",Submit:"Wyślij",Symbols:"Symbole","Travel & Places":"Podróże i miejsca","Type to search time zone":"Wpisz, aby wyszukać strefę czasową","Unable to search the group":"Nie można przeszukać grupy","Undo changes":"Cofnij zmiany",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Napisz wiadomość, "@" aby o kimś wspomnieć, ":" dla autouzupełniania emoji…'}},{locale:"pt_BR",translations:{"{tag} (invisible)":"{tag} (invisível)","{tag} (restricted)":"{tag} (restrito) ",Actions:"Ações",Activities:"Atividades","Animals & Nature":"Animais & Natureza","Anything shared with the same group of people will show up here":"Qualquer coisa compartilhada com o mesmo grupo de pessoas aparecerá aqui","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar alterações","Change title":"Alterar título",Choose:"Escolher","Clear text":"Limpar texto",Close:"Fechar","Close modal":"Fechar modal","Close navigation":"Fechar navegação","Close sidebar":"Fechar barra lateral","Confirm changes":"Confirmar alterações",Custom:"Personalizado","Edit item":"Editar item","Error getting related resources":"Erro ao obter recursos relacionados","Error parsing svg":"Erro ao analisar svg","External documentation for {title}":"Documentação externa para {title}",Favorite:"Favorito",Flags:"Bandeiras","Food & Drink":"Comida & Bebida","Frequently used":"Mais usados",Global:"Global","Go back to the list":"Volte para a lista","Hide password":"Ocultar a senha","Message limit of {count} characters reached":"Limite de mensagem de {count} caracteres atingido","More items …":"Mais itens …",Next:"Próximo","No emoji found":"Nenhum emoji encontrado","No results":"Sem resultados",Objects:"Objetos",Open:"Aberto",'Open link to "{resourceTitle}"':'Abrir link para "{resourceTitle}"',"Open navigation":"Abrir navegação","Password is secure":"A senha é segura","Pause slideshow":"Pausar apresentação de slides","People & Body":"Pessoas & Corpo","Pick an emoji":"Escolha um emoji","Please select a time zone:":"Selecione um fuso horário: ",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Pesquisar","Search results":"Resultados da pesquisa","Select a tag":"Selecionar uma tag",Settings:"Configurações","Settings navigation":"Navegação de configurações","Show password":"Mostrar senha","Smileys & Emotion":"Smiles & Emoções","Start slideshow":"Iniciar apresentação de slides",Submit:"Enviar",Symbols:"Símbolo","Travel & Places":"Viagem & Lugares","Type to search time zone":"Digite para pesquisar o fuso horário ","Unable to search the group":"Não foi possível pesquisar o grupo","Undo changes":"Desfazer modificações",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escreva mensagens, use "@" para mencionar algum, use ":" for autocompletar emoji …'}},{locale:"pt_PT",translations:{"{tag} (invisible)":"{tag} (invisivel)","{tag} (restricted)":"{tag} (restrito)",Actions:"Ações",Choose:"Escolher",Close:"Fechar",Next:"Seguinte","No results":"Sem resultados","Pause slideshow":"Pausar diaporama",Previous:"Anterior","Select a tag":"Selecionar uma etiqueta",Settings:"Definições","Start slideshow":"Iniciar diaporama","Unable to search the group":"Não é possível pesquisar o grupo"}},{locale:"ro",translations:{"{tag} (invisible)":"{tag} (invizibil)","{tag} (restricted)":"{tag} (restricționat)",Actions:"Acțiuni",Activities:"Activități","Animals & Nature":"Animale și natură","Anything shared with the same group of people will show up here":"Tot ceea ce este partajat cu același grup de persoane va fi afișat aici","Avatar of {displayName}":"Avatarul lui {displayName}","Avatar of {displayName}, {status}":"Avatarul lui {displayName}, {status}","Cancel changes":"Anulează modificările","Change title":"Modificați titlul",Choose:"Alegeți","Clear text":"Șterge textul",Close:"Închideți","Close modal":"Închideți modulul","Close navigation":"Închideți navigarea","Close sidebar":"Închide bara laterală","Confirm changes":"Confirmați modificările",Custom:"Personalizat","Edit item":"Editați elementul","Error getting related resources":" Eroare la returnarea resurselor legate","Error parsing svg":"Eroare de analizare a svg","External documentation for {title}":"Documentație externă pentru {title}",Favorite:"Favorit",Flags:"Marcaje","Food & Drink":"Alimente și băuturi","Frequently used":"Utilizate frecvent",Global:"Global","Go back to the list":"Întoarceți-vă la listă","Hide password":"Ascunde parola","Message limit of {count} characters reached":"Limita mesajului de {count} caractere a fost atinsă","More items …":"Mai multe articole ...",Next:"Următorul","No emoji found":"Nu s-a găsit niciun emoji","No results":"Nu există rezultate",Objects:"Obiecte",Open:"Deschideți",'Open link to "{resourceTitle}"':'Deschide legătura la "{resourceTitle}"',"Open navigation":"Deschideți navigația","Password is secure":"Parola este sigură","Pause slideshow":"Pauză prezentare de diapozitive","People & Body":"Oameni și corp","Pick an emoji":"Alege un emoji","Please select a time zone:":"Vă rugăm să selectați un fus orar:",Previous:"Anterior","Related resources":"Resurse legate",Search:"Căutare","Search results":"Rezultatele căutării","Select a tag":"Selectați o etichetă",Settings:"Setări","Settings navigation":"Navigare setări","Show password":"Arată parola","Smileys & Emotion":"Zâmbete și emoții","Start slideshow":"Începeți prezentarea de diapozitive",Submit:"Trimiteți",Symbols:"Simboluri","Travel & Places":"Călătorii și locuri","Type to search time zone":"Tastați pentru a căuta fusul orar","Unable to search the group":"Imposibilitatea de a căuta în grup","Undo changes":"Anularea modificărilor",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrie un mesaj, folosește "@" pentru a menționa pe cineva, folosește ":" pentru autocompletarea cu emoji ...'}},{locale:"ru",translations:{"{tag} (invisible)":"{tag} (невидимое)","{tag} (restricted)":"{tag} (ограниченное)",Actions:"Действия ",Activities:"События","Animals & Nature":"Животные и природа ","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Фотография {displayName}, {status}","Cancel changes":"Отменить изменения",Choose:"Выберите",Close:"Закрыть","Close modal":"Закрыть модальное окно","Close navigation":"Закрыть навигацию","Confirm changes":"Подтвердить изменения",Custom:"Пользовательское","Edit item":"Изменить элемент","External documentation for {title}":"Внешняя документация для {title}",Flags:"Флаги","Food & Drink":"Еда, напиток","Frequently used":"Часто используемый",Global:"Глобальный","Go back to the list":"Вернуться к списку",items:"элементов","Message limit of {count} characters reached":"Достигнуто ограничение на количество символов в {count}","More {dashboardItemType} …":"Больше {dashboardItemType} …",Next:"Следующее","No emoji found":"Эмодзи не найдено","No results":"Результаты отсуствуют",Objects:"Объекты",Open:"Открыть","Open navigation":"Открыть навигацию","Pause slideshow":"Приостановить показ слйдов","People & Body":"Люди и тело","Pick an emoji":"Выберите эмодзи","Please select a time zone:":"Пожалуйста, выберите часовой пояс:",Previous:"Предыдущее",Search:"Поиск","Search results":"Результаты поиска","Select a tag":"Выберите метку",Settings:"Параметры","Settings navigation":"Навигация по настройкам","Smileys & Emotion":"Смайлики и эмоции","Start slideshow":"Начать показ слайдов",Submit:"Утвердить",Symbols:"Символы","Travel & Places":"Путешествия и места","Type to search time zone":"Введите для поиска часового пояса","Unable to search the group":"Невозможно найти группу","Undo changes":"Отменить изменения","Write message, @ to mention someone, : for emoji autocompletion …":"Напишите сообщение, @ - чтобы упомянуть кого-то, : - для автозаполнения эмодзи …"}},{locale:"sk_SK",translations:{"{tag} (invisible)":"{tag} (neviditeľný)","{tag} (restricted)":"{tag} (obmedzený)",Actions:"Akcie",Activities:"Aktivity","Animals & Nature":"Zvieratá a príroda","Avatar of {displayName}":"Avatar {displayName}","Avatar of {displayName}, {status}":"Avatar {displayName}, {status}","Cancel changes":"Zrušiť zmeny",Choose:"Vybrať",Close:"Zatvoriť","Close navigation":"Zavrieť navigáciu","Confirm changes":"Potvrdiť zmeny",Custom:"Zvyk","Edit item":"Upraviť položku","External documentation for {title}":"Externá dokumentácia pre {title}",Flags:"Vlajky","Food & Drink":"Jedlo a nápoje","Frequently used":"Často používané",Global:"Globálne","Go back to the list":"Naspäť na zoznam","Message limit of {count} characters reached":"Limit správy na {count} znakov dosiahnutý",Next:"Ďalší","No emoji found":"Nenašli sa žiadne emodži","No results":"Žiadne výsledky",Objects:"Objekty","Open navigation":"Otvoriť navigáciu","Pause slideshow":"Pozastaviť prezentáciu","People & Body":"Ľudia a telo","Pick an emoji":"Vyberte si emodži","Please select a time zone:":"Prosím vyberte časovú zónu:",Previous:"Predchádzajúci",Search:"Hľadať","Search results":"Výsledky vyhľadávania","Select a tag":"Vybrať štítok",Settings:"Nastavenia","Settings navigation":"Navigácia v nastaveniach","Smileys & Emotion":"Smajlíky a emócie","Start slideshow":"Začať prezentáciu",Submit:"Odoslať",Symbols:"Symboly","Travel & Places":"Cestovanie a miesta","Type to search time zone":"Začníte písať pre vyhľadávanie časovej zóny","Unable to search the group":"Skupinu sa nepodarilo nájsť","Undo changes":"Vrátiť zmeny","Write message, @ to mention someone, : for emoji autocompletion …":"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…"}},{locale:"sl",translations:{"{tag} (invisible)":"{tag} (nevidno)","{tag} (restricted)":"{tag} (omejeno)",Actions:"Dejanja",Activities:"Dejavnosti","Animals & Nature":"Živali in Narava","Avatar of {displayName}":"Podoba {displayName}","Avatar of {displayName}, {status}":"Prikazna slika {displayName}, {status}","Cancel changes":"Prekliči spremembe","Change title":"Spremeni naziv",Choose:"Izbor","Clear text":"Počisti besedilo",Close:"Zapri","Close modal":"Zapri pojavno okno","Close navigation":"Zapri krmarjenje","Close sidebar":"Zapri stransko vrstico","Confirm changes":"Potrdi spremembe",Custom:"Po meri","Edit item":"Uredi predmet","Error getting related resources":"Napaka pridobivanja povezanih virov","External documentation for {title}":"Zunanja dokumentacija za {title}",Favorite:"Priljubljeno",Flags:"Zastavice","Food & Drink":"Hrana in Pijača","Frequently used":"Pogostost uporabe",Global:"Splošno","Go back to the list":"Vrni se na seznam","Hide password":"Skrij geslo","Message limit of {count} characters reached":"Dosežena omejitev {count} znakov na sporočilo.","More items …":"Več predmetov ...",Next:"Naslednji","No emoji found":"Ni najdenih izraznih ikon","No results":"Ni zadetkov",Objects:"Predmeti",Open:"Odpri",'Open link to "{resourceTitle}"':"Odpri povezavo do »{resourceTitle}«","Open navigation":"Odpri krmarjenje","Password is secure":"Geslo je varno","Pause slideshow":"Ustavi predstavitev","People & Body":"Ljudje in Telo","Pick a date":"Izbor datuma","Pick a date and a time":"Izbor datuma in časa","Pick a month":"Izbor meseca","Pick a time":"Izbor časa","Pick a week":"Izbor tedna","Pick a year":"Izbor leta","Pick an emoji":"Izbor izrazne ikone","Please select a time zone:":"Izbor časovnega pasu:",Previous:"Predhodni","Related resources":"Povezani viri",Search:"Iskanje","Search results":"Zadetki iskanja","Select a tag":"Izbor oznake",Settings:"Nastavitve","Settings navigation":"Krmarjenje nastavitev","Show password":"Pokaži geslo","Smileys & Emotion":"Izrazne ikone","Start slideshow":"Začni predstavitev",Submit:"Pošlji",Symbols:"Simboli","Travel & Places":"Potovanja in Kraji","Type to search time zone":"Vpišite niz za iskanje časovnega pasu","Unable to search the group":"Ni mogoče iskati po skupini","Undo changes":"Razveljavi spremembe","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite sporočilo, za omembo pred ime postavite@, začnite z : za vstavljanje izraznih ikon …"}},{locale:"sr",translations:{"{tag} (invisible)":"{tag} (nevidljivo)","{tag} (restricted)":"{tag} (ograničeno)",Actions:"Radnje",Activities:"Aktivnosti","Animals & Nature":"Životinje i Priroda","Avatar of {displayName}":"Avatar za {displayName}","Avatar of {displayName}, {status}":"Avatar za {displayName}, {status}","Cancel changes":"Otkaži izmene","Change title":"Izmeni naziv",Choose:"Изаберите",Close:"Затвори","Close modal":"Zatvori modal","Close navigation":"Zatvori navigaciju","Close sidebar":"Zatvori bočnu traku","Confirm changes":"Potvrdite promene",Custom:"Po meri","Edit item":"Uredi stavku","External documentation for {title}":"Eksterna dokumentacija za {title}",Favorite:"Omiljeni",Flags:"Zastave","Food & Drink":"Hrana i Piće","Frequently used":"Često korišćeno",Global:"Globalno","Go back to the list":"Natrag na listu",items:"stavke","Message limit of {count} characters reached":"Dostignuto je ograničenje za poruke od {count} znakova","More {dashboardItemType} …":"Više {dashboardItemType} …",Next:"Следеће","No emoji found":"Nije pronađen nijedan emodži","No results":"Нема резултата",Objects:"Objekti",Open:"Otvori","Open navigation":"Otvori navigaciju","Pause slideshow":"Паузирај слајд шоу","People & Body":"Ljudi i Telo","Pick an emoji":"Izaberi emodži","Please select a time zone:":"Molimo izaberite vremensku zonu:",Previous:"Претходно",Search:"Pretraži","Search results":"Rezultati pretrage","Select a tag":"Изаберите ознаку",Settings:"Поставке","Settings navigation":"Navigacija u podešavanjima","Smileys & Emotion":"Smajli i Emocije","Start slideshow":"Покрени слајд шоу",Submit:"Prihvati",Symbols:"Simboli","Travel & Places":"Putovanja i Mesta","Type to search time zone":"Ukucaj da pretražiš vremenske zone","Unable to search the group":"Nije moguće pretražiti grupu","Undo changes":"Poništi promene","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite poruku, @ da pomenete nekoga, : za automatsko dovršavanje emodžija…"}},{locale:"sv",translations:{"{tag} (invisible)":"{tag} (osynlig)","{tag} (restricted)":"{tag} (begränsad)",Actions:"Åtgärder",Activities:"Aktiviteter","Animals & Nature":"Djur & Natur","Anything shared with the same group of people will show up here":"Något som delats med samma grupp av personer kommer att visas här","Avatar of {displayName}":"{displayName}s avatar","Avatar of {displayName}, {status}":"{displayName}s avatar, {status}","Cancel changes":"Avbryt ändringar","Change title":"Ändra titel",Choose:"Välj","Clear text":"Ta bort text",Close:"Stäng","Close modal":"Stäng modal","Close navigation":"Stäng navigering","Close sidebar":"Stäng sidopanel","Confirm changes":"Bekräfta ändringar",Custom:"Anpassad","Edit item":"Ändra","Error getting related resources":"Problem att hämta relaterade resurser","Error parsing svg":"Fel vid inläsning av svg","External documentation for {title}":"Extern dokumentation för {title}",Favorite:"Favorit",Flags:"Flaggor","Food & Drink":"Mat & Dryck","Frequently used":"Används ofta",Global:"Global","Go back to the list":"Gå tillbaka till listan","Hide password":"Göm lössenordet","Message limit of {count} characters reached":"Meddelandegräns {count} tecken används","More items …":"Fler objekt",Next:"Nästa","No emoji found":"Hittade inga emojis","No results":"Inga resultat",Objects:"Objekt",Open:"Öppna",'Open link to "{resourceTitle}"':'Öppna länk till "{resourceTitle}"',"Open navigation":"Öppna navigering","Password is secure":"Lössenordet är säkert","Pause slideshow":"Pausa bildspelet","People & Body":"Kropp & Själ","Pick an emoji":"Välj en emoji","Please select a time zone:":"Välj tidszon:",Previous:"Föregående","Related resources":"Relaterade resurser",Search:"Sök","Search results":"Sökresultat","Select a tag":"Välj en tag",Settings:"Inställningar","Settings navigation":"Inställningsmeny","Show password":"Visa lössenordet","Smileys & Emotion":"Selfies & Känslor","Start slideshow":"Starta bildspelet",Submit:"Skicka",Symbols:"Symboler","Travel & Places":"Resor & Sevärdigheter","Type to search time zone":"Skriv för att välja tidszon","Unable to search the group":"Kunde inte söka i gruppen","Undo changes":"Ångra ändringar",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv meddelande, använd "@" för att nämna någon, använd ":" för automatiska emojiförslag ...'}},{locale:"tr",translations:{"{tag} (invisible)":"{tag} (görünmez)","{tag} (restricted)":"{tag} (kısıtlı)",Actions:"İşlemler",Activities:"Etkinlikler","Animals & Nature":"Hayvanlar ve Doğa","Anything shared with the same group of people will show up here":"Aynı kişi grubu ile paylaşılan herşey burada görüntülenir","Avatar of {displayName}":"{displayName} avatarı","Avatar of {displayName}, {status}":"{displayName}, {status} avatarı","Cancel changes":"Değişiklikleri iptal et","Change title":"Başlığı değiştir",Choose:"Seçin","Clear text":"Metni temizle",Close:"Kapat","Close modal":"Üste açılan pencereyi kapat","Close navigation":"Gezinmeyi kapat","Close sidebar":"Yan çubuğu kapat","Confirm changes":"Değişiklikleri onayla",Custom:"Özel","Edit item":"Ögeyi düzenle","Error getting related resources":"İlgili kaynaklar alınırken sorun çıktı","Error parsing svg":"svg işlenirken sorun çıktı","External documentation for {title}":"{title} için dış belgeler",Favorite:"Sık kullanılanlara ekle",Flags:"Bayraklar","Food & Drink":"Yeme ve İçme","Frequently used":"Sık kullanılanlar",Global:"Evrensel","Go back to the list":"Listeye dön","Hide password":"Parolayı gizle","Message limit of {count} characters reached":"{count} karakter ileti sınırına ulaşıldı","More items …":"Diğer ögeler…",Next:"Sonraki","No emoji found":"Herhangi bir emoji bulunamadı","No results":"Herhangi bir sonuç bulunamadı",Objects:"Nesneler",Open:"Aç",'Open link to "{resourceTitle}"':'"{resourceTitle}" bağlantısını aç',"Open navigation":"Gezinmeyi aç","Password is secure":"Parola güvenli","Pause slideshow":"Slayt sunumunu duraklat","People & Body":"İnsanlar ve Beden","Pick an emoji":"Bir emoji seçin","Please select a time zone:":"Lütfen bir saat dilimi seçin:",Previous:"Önceki","Related resources":"İlgili kaynaklar",Search:"Arama","Search results":"Arama sonuçları","Select a tag":"Bir etiket seçin",Settings:"Ayarlar","Settings navigation":"Gezinme ayarları","Show password":"Parolayı görüntüle","Smileys & Emotion":"İfadeler ve Duygular","Start slideshow":"Slayt sunumunu başlat",Submit:"Gönder",Symbols:"Simgeler","Travel & Places":"Gezi ve Yerler","Type to search time zone":"Saat dilimi aramak için yazmaya başlayın","Unable to search the group":"Grupta arama yapılamadı","Undo changes":"Değişiklikleri geri al",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'İleti yazın, birini anmak için @, otomatik emoji tamamlamak için ":" kullanın…'}},{locale:"uk",translations:{"{tag} (invisible)":"{tag} (невидимий)","{tag} (restricted)":"{tag} (обмежений)",Actions:"Дії",Activities:"Діяльність","Animals & Nature":"Тварини та природа","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Аватар {displayName}, {status}","Cancel changes":"Скасувати зміни","Change title":"Змінити назву",Choose:"ВиберітьВиберіть","Clear text":"Очистити текст",Close:"Закрити","Close modal":"Закрити модаль","Close navigation":"Закрити навігацію","Close sidebar":"Закрити бічну панель","Confirm changes":"Підтвердити зміни",Custom:"Власне","Edit item":"Редагувати елемент","External documentation for {title}":"Зовнішня документація для {title}",Favorite:"Улюблений",Flags:"Прапори","Food & Drink":"Їжа та напої","Frequently used":"Найчастіші",Global:"Глобальний","Go back to the list":"Повернутися до списку","Hide password":"Приховати пароль",items:"елементи","Message limit of {count} characters reached":"Вичерпано ліміт у {count} символів для повідомлення","More {dashboardItemType} …":"Більше {dashboardItemType}…",Next:"Вперед","No emoji found":"Емоційки відсутні","No results":"Відсутні результати",Objects:"Об'єкти",Open:"Відкрити","Open navigation":"Відкрити навігацію","Password is secure":"Пароль безпечний","Pause slideshow":"Пауза у показі слайдів","People & Body":"Люди та жести","Pick an emoji":"Виберіть емоційку","Please select a time zone:":"Виберіть часовий пояс:",Previous:"Назад",Search:"Пошук","Search results":"Результати пошуку","Select a tag":"Виберіть позначку",Settings:"Налаштування","Settings navigation":"Навігація у налаштуваннях","Show password":"Показати пароль","Smileys & Emotion":"Смайли та емоції","Start slideshow":"Почати показ слайдів",Submit:"Надіслати",Symbols:"Символи","Travel & Places":"Поїздки та місця","Type to search time zone":"Введіть для пошуку часовий пояс","Unable to search the group":"Неможливо шукати в групі","Undo changes":"Скасувати зміни","Write message, @ to mention someone, : for emoji autocompletion …":"Напишіть повідомлення, @, щоб згадати когось, : для автозаповнення емодзі…"}},{locale:"zh_CN",translations:{"{tag} (invisible)":"{tag} (不可见)","{tag} (restricted)":"{tag} (受限)",Actions:"行为",Activities:"活动","Animals & Nature":"动物 & 自然","Anything shared with the same group of people will show up here":"与同组用户分享的所有内容都会显示于此","Avatar of {displayName}":"{displayName}的头像","Avatar of {displayName}, {status}":"{displayName}的头像,{status}","Cancel changes":"取消更改","Change title":"更改标题",Choose:"选择","Clear text":"清除文本",Close:"关闭","Close modal":"关闭窗口","Close navigation":"关闭导航","Close sidebar":"关闭侧边栏","Confirm changes":"确认更改",Custom:"自定义","Edit item":"编辑项目","Error getting related resources":"获取相关资源时出错","Error parsing svg":"解析 svg 时出错","External documentation for {title}":"{title}的外部文档",Favorite:"喜爱",Flags:"旗帜","Food & Drink":"食物 & 饮品","Frequently used":"经常使用",Global:"全局","Go back to the list":"返回至列表","Hide password":"隐藏密码","Message limit of {count} characters reached":"已达到 {count} 个字符的消息限制","More items …":"更多项目…",Next:"下一个","No emoji found":"表情未找到","No results":"无结果",Objects:"物体",Open:"打开",'Open link to "{resourceTitle}"':'打开"{resourceTitle}"的连接',"Open navigation":"开启导航","Password is secure":"密码安全","Pause slideshow":"暂停幻灯片","People & Body":"人 & 身体","Pick an emoji":"选择一个表情","Please select a time zone:":"请选择一个时区:",Previous:"上一个","Related resources":"相关资源",Search:"搜索","Search results":"搜索结果","Select a tag":"选择一个标签",Settings:"设置","Settings navigation":"设置向导","Show password":"显示密码","Smileys & Emotion":"笑脸 & 情感","Start slideshow":"开始幻灯片",Submit:"提交",Symbols:"符号","Travel & Places":"旅游 & 地点","Type to search time zone":"打字以搜索时区","Unable to search the group":"无法搜索分组","Undo changes":"撤销更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'写信息,使用"@"来提及某人,使用":"进行表情符号自动完成 ...'}},{locale:"zh_HK",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然","Anything shared with the same group of people will show up here":"與同一組人共享的任何內容都會顯示在此處","Avatar of {displayName}":"{displayName} 的頭像","Avatar of {displayName}, {status}":"{displayName} 的頭像,{status}","Cancel changes":"取消更改","Change title":"更改標題",Choose:"選擇","Clear text":"清除文本",Close:"關閉","Close modal":"關閉模態","Close navigation":"關閉導航","Close sidebar":"關閉側邊欄","Confirm changes":"確認更改",Custom:"自定義","Edit item":"編輯項目","Error getting related resources":"獲取相關資源出錯","Error parsing svg":"解析 svg 時出錯","External documentation for {title}":"{title} 的外部文檔",Favorite:"喜愛",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"經常使用",Global:"全球的","Go back to the list":"返回清單","Hide password":"隱藏密碼","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制","More items …":"更多項目 …",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件",Open:"打開",'Open link to "{resourceTitle}"':"打開指向 “{resourceTitle}” 的鏈結","Open navigation":"開啟導航","Password is secure":"密碼是安全的","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號","Please select a time zone:":"請選擇時區:",Previous:"上一個","Related resources":"相關資源",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Show password":"顯示密碼","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Submit:"提交",Symbols:"標誌","Travel & Places":"旅遊與景點","Type to search time zone":"鍵入以搜索時區","Unable to search the group":"無法搜尋群組","Undo changes":"取消更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'寫訊息,使用 "@" 來指代某人,使用 ":" 用於表情符號自動填充 ...'}},{locale:"zh_TW",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然",Choose:"選擇",Close:"關閉",Custom:"自定義",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"最近使用","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Symbols:"標誌","Travel & Places":"旅遊與景點","Unable to search the group":"無法搜尋群組","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}}].forEach((t=>{const e={};for(const n in t.translations)t.translations[n].pluralId?e[n]={msgid:n,msgid_plural:t.translations[n].pluralId,msgstr:t.translations[n].msgstr}:e[n]={msgid:n,msgstr:[t.translations[n]]};r.addTranslation(t.locale,{translations:{"":e}})}));const o=r.build(),i=(o.ngettext.bind(o),o.gettext.bind(o))},1205:(t,e,n)=>{"use strict";n.d(e,{Z:()=>r});const r=t=>Math.random().toString(36).replace(/[^a-z]+/g,"").slice(0,t||5)},1206:(t,e,n)=>{"use strict";n.d(e,{L:()=>r}),n(4505);const r=function(){return Object.assign(window,{_nc_focus_trap:window._nc_focus_trap||[]}),window._nc_focus_trap}},4825:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-29452b76]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-items[data-v-29452b76]{display:flex;align-items:center}.action-items>button[data-v-29452b76]{margin-right:7px}.action-item[data-v-29452b76]{--open-background-color: var(--color-background-hover, $action-background-hover);position:relative;display:inline-block}.action-item.action-item--primary[data-v-29452b76]{--open-background-color: var(--color-primary-element-hover)}.action-item.action-item--secondary[data-v-29452b76]{--open-background-color: var(--color-primary-element-light-hover)}.action-item.action-item--error[data-v-29452b76]{--open-background-color: var(--color-error-hover)}.action-item.action-item--warning[data-v-29452b76]{--open-background-color: var(--color-warning-hover)}.action-item.action-item--success[data-v-29452b76]{--open-background-color: var(--color-success-hover)}.action-item.action-item--tertiary-no-background[data-v-29452b76]{--open-background-color: transparent}.action-item.action-item--open .action-item__menutoggle[data-v-29452b76]{background-color:var(--open-background-color)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,+BACC,YAAA,CACA,kBAAA,CAGA,sCACC,gBAAA,CAIF,8BACC,gFAAA,CACA,iBAAA,CACA,oBAAA,CAEA,mDACC,2DAAA,CAGD,qDACC,iEAAA,CAGD,iDACC,iDAAA,CAGD,mDACC,mDAAA,CAGD,mDACC,mDAAA,CAGD,kEACC,oCAAA,CAGD,yEACC,6CAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// Inline buttons\n.action-items {\n\tdisplay: flex;\n\talign-items: center;\n\n\t// Spacing between buttons\n\t& > button {\n\t\tmargin-right: math.div($icon-margin, 2);\n\t}\n}\n\n.action-item {\n\t--open-background-color: var(--color-background-hover, $action-background-hover);\n\tposition: relative;\n\tdisplay: inline-block;\n\n\t&.action-item--primary {\n\t\t--open-background-color: var(--color-primary-element-hover);\n\t}\n\n\t&.action-item--secondary {\n\t\t--open-background-color: var(--color-primary-element-light-hover);\n\t}\n\n\t&.action-item--error {\n\t\t--open-background-color: var(--color-error-hover);\n\t}\n\n\t&.action-item--warning {\n\t\t--open-background-color: var(--color-warning-hover);\n\t}\n\n\t&.action-item--success {\n\t\t--open-background-color: var(--color-success-hover);\n\t}\n\n\t&.action-item--tertiary-no-background {\n\t\t--open-background-color: transparent;\n\t}\n\n\t&.action-item--open .action-item__menutoggle {\n\t\tbackground-color: var(--open-background-color);\n\t}\n}\n"],sourceRoot:""}]);const s=a},4946:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper{border-radius:var(--border-radius-large);overflow:hidden}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper .v-popper__inner{border-radius:var(--border-radius-large);padding:4px;max-height:calc(50vh - 16px);overflow:auto}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCJD,kFACC,wCAAA,CACA,eAAA,CAEA,mGACC,wCAAA,CACA,WAAA,CACA,4BAAA,CACA,aAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// We overwrote the popover base class, so we can style\n// the popover__inner for actions only.\n.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper {\n\tborder-radius: var(--border-radius-large);\n\toverflow:hidden;\n\n\t.v-popper__inner {\n\t\tborder-radius: var(--border-radius-large);\n\t\tpadding: 4px;\n\t\tmax-height: calc(50vh - 16px);\n\t\toverflow: auto;\n\t}\n}\n"],sourceRoot:""}]);const s=a},8066:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-4daa022a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-crumb[data-v-4daa022a]{background-image:none;display:inline-flex;height:44px;padding:0}.vue-crumb[data-v-4daa022a]:last-child{max-width:210px;font-weight:bold}.vue-crumb:last-child .vue-crumb__separator[data-v-4daa022a]{display:none}.vue-crumb>a[data-v-4daa022a]:hover,.vue-crumb>a[data-v-4daa022a]:focus{background-color:var(--color-background-dark);color:var(--color-main-text)}.vue-crumb--hidden[data-v-4daa022a]{display:none}.vue-crumb.vue-crumb--hovered>a[data-v-4daa022a]{background-color:var(--color-background-dark);color:var(--color-main-text)}.vue-crumb__separator[data-v-4daa022a]{padding:0;color:var(--color-text-maxcontrast)}.vue-crumb>a[data-v-4daa022a]{overflow:hidden;color:var(--color-text-maxcontrast);padding:12px;min-width:44px;max-width:100%;border-radius:var(--border-radius-pill);align-items:center;display:inline-flex;justify-content:center}.vue-crumb>a>span[data-v-4daa022a]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item{max-width:100%}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item .button-vue{padding:0 4px 0 16px}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item .button-vue__wrapper{flex-direction:row-reverse}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item.action-item--open .action-item__menutoggle{background-color:var(--color-background-dark);color:var(--color-main-text)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcBreadcrumb/NcBreadcrumb.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,4BACC,qBAAA,CACA,mBAAA,CACA,WCmBgB,CDlBhB,SAAA,CAEA,uCACC,eAAA,CACA,gBAAA,CAGA,6DACC,YAAA,CAKF,wEAEC,6CAAA,CACA,4BAAA,CAGD,oCACC,YAAA,CAGD,iDACC,6CAAA,CACA,4BAAA,CAGD,uCACC,SAAA,CACA,mCAAA,CAGD,8BACC,eAAA,CACA,mCAAA,CACA,YAAA,CACA,cCnBe,CDoBf,cAAA,CACA,uCAAA,CACA,kBAAA,CACA,mBAAA,CACA,sBAAA,CAEA,mCACC,eAAA,CACA,sBAAA,CACA,kBAAA,CAMF,wDAEC,cAAA,CAEA,oEACC,oBAAA,CAEA,6EACC,0BAAA,CAKF,mGACC,6CAAA,CACA,4BAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.vue-crumb {\n\tbackground-image: none;\n\tdisplay: inline-flex;\n\theight: $clickable-area;\n\tpadding: 0;\n\n\t&:last-child {\n\t\tmax-width: 210px;\n\t\tfont-weight: bold;\n\n\t\t// Don't show breadcrumb separator for last crumb\n\t\t.vue-crumb__separator {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t// Hover and focus effect for crumbs\n\t& > a:hover,\n\t& > a:focus {\n\t\tbackground-color: var(--color-background-dark);\n\t\tcolor: var(--color-main-text);\n\t}\n\n\t&--hidden {\n\t\tdisplay: none;\n\t}\n\n\t&#{&}--hovered > a {\n\t\tbackground-color: var(--color-background-dark);\n\t\tcolor: var(--color-main-text);\n\t}\n\n\t&__separator {\n\t\tpadding: 0;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\t> a {\n\t\toverflow: hidden;\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tpadding: 12px;\n\t\tmin-width: $clickable-area;\n\t\tmax-width: 100%;\n\t\tborder-radius: var(--border-radius-pill);\n\t\talign-items: center;\n\t\tdisplay: inline-flex;\n\t\tjustify-content: center;\n\n\t\t> span {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n\n\t// Adjust action item appearance for crumbs with actions\n\t// to match other crumbs\n\t&:not(.dropdown) :deep(.action-item) {\n\t\t// Adjustments necessary to correctly shrink on small screens\n\t\tmax-width: 100%;\n\n\t\t.button-vue {\n\t\t\tpadding: 0 4px 0 16px;\n\n\t\t\t&__wrapper {\n\t\t\t\tflex-direction: row-reverse;\n\t\t\t}\n\t\t}\n\n\t\t// Adjust the background of the last crumb when the action is open\n\t\t&.action-item--open .action-item__menutoggle {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tcolor: var(--color-main-text);\n\t\t}\n\t}\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=a},7196:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-4d05be2c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue[data-v-4d05be2c]{position:relative;width:fit-content;overflow:hidden;border:0;padding:0;font-size:var(--default-font-size);font-weight:bold;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:22px;transition-property:color,border-color,background-color;transition-duration:.1s;transition-timing-function:linear;color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue *[data-v-4d05be2c],.button-vue span[data-v-4d05be2c]{cursor:pointer}.button-vue[data-v-4d05be2c]:focus{outline:none}.button-vue[data-v-4d05be2c]:disabled{cursor:default;opacity:.5;filter:saturate(0.7)}.button-vue:disabled *[data-v-4d05be2c]{cursor:default}.button-vue[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-light-hover)}.button-vue[data-v-4d05be2c]:active{background-color:var(--color-primary-element-light)}.button-vue__wrapper[data-v-4d05be2c]{display:inline-flex;align-items:center;justify-content:center;width:100%}.button-vue__icon[data-v-4d05be2c]{height:44px;width:44px;min-height:44px;min-width:44px;display:flex;justify-content:center;align-items:center}.button-vue__text[data-v-4d05be2c]{font-weight:bold;margin-bottom:1px;padding:2px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.button-vue--icon-only[data-v-4d05be2c]{width:44px !important}.button-vue--text-only[data-v-4d05be2c]{padding:0 12px}.button-vue--text-only .button-vue__text[data-v-4d05be2c]{margin-left:4px;margin-right:4px}.button-vue--icon-and-text[data-v-4d05be2c]{padding:0 16px 0 4px}.button-vue--wide[data-v-4d05be2c]{width:100%}.button-vue[data-v-4d05be2c]:focus-visible{outline:2px solid var(--color-main-text) !important}.button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{outline:2px solid var(--color-primary-element-text);border-radius:var(--border-radius);background-color:rgba(0,0,0,0)}.button-vue--vue-primary[data-v-4d05be2c]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.button-vue--vue-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-hover)}.button-vue--vue-primary[data-v-4d05be2c]:active{background-color:var(--color-primary-element)}.button-vue--vue-secondary[data-v-4d05be2c]{color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue--vue-secondary[data-v-4d05be2c]:hover:not(:disabled){color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light-hover)}.button-vue--vue-tertiary[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color);background-color:var(--color-background-hover)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{color:var(--color-primary-element-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-success[data-v-4d05be2c]{background-color:var(--color-success);color:#fff}.button-vue--vue-success[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-success-hover)}.button-vue--vue-success[data-v-4d05be2c]:active{background-color:var(--color-success)}.button-vue--vue-warning[data-v-4d05be2c]{background-color:var(--color-warning);color:#fff}.button-vue--vue-warning[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-warning-hover)}.button-vue--vue-warning[data-v-4d05be2c]:active{background-color:var(--color-warning)}.button-vue--vue-error[data-v-4d05be2c]{background-color:var(--color-error);color:#fff}.button-vue--vue-error[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-error-hover)}.button-vue--vue-error[data-v-4d05be2c]:active{background-color:var(--color-error)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcButton/NcButton.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,QAAA,CACA,SAAA,CACA,kCAAA,CACA,gBAAA,CACA,eCcgB,CDbhB,cCagB,CDZhB,YAAA,CACA,kBAAA,CACA,sBAAA,CAGA,cAAA,CAKA,kBAAA,CACA,uDAAA,CACA,uBAAA,CACA,iCAAA,CAkBA,6CAAA,CACA,mDAAA,CA1BA,iEAEC,cAAA,CAQD,mCACC,YAAA,CAGD,sCACC,cAAA,CAIA,UCIiB,CDFjB,oBAAA,CALA,wCACC,cAAA,CAUF,kDACC,yDAAA,CAKD,oCACC,mDAAA,CAGD,sCACC,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAGD,mCACC,WCvCe,CDwCf,UCxCe,CDyCf,eCzCe,CD0Cf,cC1Ce,CD2Cf,YAAA,CACA,sBAAA,CACA,kBAAA,CAGD,mCACC,gBAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CAID,wCACC,qBAAA,CAID,wCACC,cAAA,CACA,0DACC,eAAA,CACA,gBAAA,CAKF,4CACC,oBAAA,CAID,mCACC,UAAA,CAGD,2CACC,mDAAA,CACA,+EACC,mDAAA,CACA,kCAAA,CACA,8BAAA,CAOF,0CACC,6CAAA,CACA,uCAAA,CACA,+DACC,mDAAA,CAID,iDACC,6CAAA,CAKF,4CACC,6CAAA,CACA,mDAAA,CACA,iEACC,6CAAA,CACA,yDAAA,CAKF,2CACC,4BAAA,CACA,8BAAA,CACA,gEACC,6BAAA,CACA,8CAAA,CAKF,yDACC,4BAAA,CACA,8BAAA,CACA,8EACC,8BAAA,CAKF,sDACC,uCAAA,CACA,8BAAA,CAEA,2EACC,8BAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,wCACC,mCAAA,CACA,UAAA,CACA,6DACC,yCAAA,CAID,+CACC,mCAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.button-vue {\n\tposition: relative;\n\twidth: fit-content;\n\toverflow: hidden;\n\tborder: 0;\n\tpadding: 0;\n\tfont-size: var(--default-font-size);\n\tfont-weight: bold;\n\tmin-height: $clickable-area;\n\tmin-width: $clickable-area;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t// Cursor pointer on element and all children\n\tcursor: pointer;\n\t& *,\n\tspan {\n\t\tcursor: pointer;\n\t}\n\tborder-radius: math.div($clickable-area, 2);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: 0.1s;\n\ttransition-timing-function: linear;\n\n\t// No outline feedback for focus. Handled with a toggled class in js (see data)\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t\t& * {\n\t\t\tcursor: default;\n\t\t}\n\t\topacity: $opacity_disabled;\n\t\t// Gives a wash out effect\n\t\tfilter: saturate($opacity_normal);\n\t}\n\n\t// Default button type\n\tcolor: var(--color-primary-element-light-text);\n\tbackground-color: var(--color-primary-element-light);\n\t&:hover:not(:disabled) {\n\t\tbackground-color: var(--color-primary-element-light-hover);\n\t}\n\n\t// Back to the default color for this button when active\n\t// TODO: add ripple effect\n\t&:active {\n\t\tbackground-color: var(--color-primary-element-light);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t}\n\n\t&__icon {\n\t\theight: $clickable-area;\n\t\twidth: $clickable-area;\n\t\tmin-height: $clickable-area;\n\t\tmin-width: $clickable-area;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n\n\t&__text {\n\t\tfont-weight: bold;\n\t\tmargin-bottom: 1px;\n\t\tpadding: 2px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t// Icon-only button\n\t&--icon-only {\n\t\twidth: $clickable-area !important;\n\t}\n\n\t// Text-only button\n\t&--text-only {\n\t\tpadding: 0 12px;\n\t\t& .button-vue__text {\n\t\t\tmargin-left: 4px;\n\t\t\tmargin-right: 4px;\n\t\t}\n\t}\n\n\t// Icon and text button\n\t&--icon-and-text {\n\t\tpadding: 0 16px 0 4px;\n\t}\n\n\t// Wide button spans the whole width of the container\n\t&--wide {\n\t\twidth: 100%;\n\t}\n\n\t&:focus-visible {\n\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t&.button-vue--vue-tertiary-on-primary {\n\t\t\toutline: 2px solid var(--color-primary-element-text);\n\t\t\tborder-radius: var(--border-radius);\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Button types\n\n\t// Primary\n\t&--vue-primary {\n\t\tbackground-color: var(--color-primary-element);\n\t\tcolor: var(--color-primary-element-text);\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t}\n\t}\n\n\t// Secondary\n\t&--vue-secondary {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-light);\n\t\t&:hover:not(:disabled) {\n\t\t\tcolor: var(--color-primary-element-light-text);\n\t\t\tbackground-color: var(--color-primary-element-light-hover);\n\t\t}\n\t}\n\n\t// Tertiary\n\t&--vue-tertiary {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color);\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Tertiary, no background\n\t&--vue-tertiary-no-background {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Tertiary on primary color (like the header)\n\t&--vue-tertiary-on-primary {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: transparent;\n\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Success\n\t&--vue-success {\n\t\tbackground-color: var(--color-success);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-success-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// : add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t}\n\n\t// Warning\n\t&--vue-warning {\n\t\tbackground-color: var(--color-warning);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-warning-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-warning);\n\t\t}\n\t}\n\n\t// Error\n\t&--vue-error {\n\t\tbackground-color: var(--color-error);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-error-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=a},1625:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.resize-observer{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:rgba(0,0,0,0);pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper--theme-dropdown.v-popper__popper{z-index:100000;top:0;left:0;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-dropdown.v-popper__popper .v-popper__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius-large);overflow:hidden;background:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{left:-10px;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity var(--animation-quick);opacity:1}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcPopover/NcPopover.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,iBACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,aAAA,CACA,eAAA,CACA,SAAA,CAGD,wBACC,aAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,mBAAA,CACA,UAAA,CAMA,2CACC,cAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CAEA,sDAAA,CAEA,4DACC,SAAA,CACA,4BAAA,CACA,wCAAA,CACA,eAAA,CACA,uCAAA,CAGD,sEACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBA1BW,CA6BZ,kGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAGD,qGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAGD,oGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAGD,mGACC,WAAA,CACA,oBAAA,CACA,8CAAA,CAGD,6DACC,iBAAA,CACA,2EAAA,CACA,SAAA,CAGD,8DACC,kBAAA,CACA,yCAAA,CACA,SAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.resize-observer {\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\tz-index:-1;\n\twidth:100%;\n\theight:100%;\n\tborder:none;\n\tbackground-color:transparent;\n\tpointer-events:none;\n\tdisplay:block;\n\toverflow:hidden;\n\topacity:0\n}\n\n.resize-observer object {\n\tdisplay:block;\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\theight:100%;\n\twidth:100%;\n\toverflow:hidden;\n\tpointer-events:none;\n\tz-index:-1\n}\n\n$arrow-width: 10px;\n\n.v-popper--theme-dropdown {\n\t&.v-popper__popper {\n\t\tz-index: 100000;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tdisplay: block !important;\n\n\t\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t\t.v-popper__inner {\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-main-text);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t\toverflow: hidden;\n\t\t\tbackground: var(--color-main-background);\n\t\t}\n\n\t\t.v-popper__arrow-container {\n\t\t\tposition: absolute;\n\t\t\tz-index: 1;\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\tborder-style: solid;\n\t\t\tborder-color: transparent;\n\t\t\tborder-width: $arrow-width;\n\t\t}\n\n\t\t&[data-popper-placement^='top'] .v-popper__arrow-container {\n\t\t\tbottom: -$arrow-width;\n\t\t\tborder-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\n\t\t\ttop: -$arrow-width;\n\t\t\tborder-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='right'] .v-popper__arrow-container {\n\t\t\tleft: -$arrow-width;\n\t\t\tborder-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='left'] .v-popper__arrow-container {\n\t\t\tright: -$arrow-width;\n\t\t\tborder-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\n\t\t}\n\n\t\t&[aria-hidden='true'] {\n\t\t\tvisibility: hidden;\n\t\t\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&[aria-hidden='false'] {\n\t\t\tvisibility: visible;\n\t\t\ttransition: opacity var(--animation-quick);\n\t\t\topacity: 1;\n\t\t}\n\t}\n}\n\n"],sourceRoot:""}]);const s=a},3645:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",r=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),r&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),r&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,r,o,i){"string"==typeof t&&(t=[[null,t,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var c=0;c<t.length;c++){var u=[].concat(t[c]);r&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),e.push(u))}},e}},7537:t=>{"use strict";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),i="/*# ".concat(o," */");return[e].concat([i]).join("\n")}return[e].join("\n")}},3379:t=>{"use strict";var e=[];function n(t){for(var n=-1,r=0;r<e.length;r++)if(e[r].identifier===t){n=r;break}return n}function r(t,r){for(var i={},a=[],s=0;s<t.length;s++){var l=t[s],c=r.base?l[0]+r.base:l[0],u=i[c]||0,d="".concat(c," ").concat(u);i[c]=u+1;var p=n(d),h={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)e[p].references++,e[p].updater(h);else{var f=o(h,r);r.byIndex=s,e.splice(s,0,{identifier:d,updater:f,references:1})}a.push(d)}return a}function o(t,e){var n=e.domAPI(e);return n.update(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,o){var i=r(t=t||[],o=o||{});return function(t){t=t||[];for(var a=0;a<i.length;a++){var s=n(i[a]);e[s].references--}for(var l=r(t,o),c=0;c<i.length;c++){var u=n(i[c]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}i=l}}},569:t=>{"use strict";var e={};t.exports=function(t,n){var r=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},9216:t=>{"use strict";t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},3565:(t,e,n)=>{"use strict";t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:t=>{"use strict";t.exports=function(t){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var i=n.sourceMap;i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleTagTransform(r,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:t=>{"use strict";t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},5727:()=>{},6591:()=>{},2102:()=>{},2405:()=>{},1900:(t,e,n)=>{"use strict";function r(t,e,n,r,o,i,a,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),i&&(c._scopeId="data-v-"+i),a?(l=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=l):o&&(l=s?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:t,options:c}}n.d(e,{Z:()=>r})},7931:t=>{"use strict";t.exports=n(23955)},9454:t=>{"use strict";t.exports=n(73045)},4505:t=>{"use strict";t.exports=n(15303)},2734:t=>{"use strict";t.exports=n(20144)},9044:t=>{"use strict";t.exports=n(11585)},1441:t=>{"use strict";t.exports=n(89115)}},e={};function o(n){var r=e[n];if(void 0!==r)return r.exports;var i=e[n]={id:n,exports:{}};return t[n](i,i.exports,o),i.exports}o.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return o.d(e,{a:e}),e},o.d=(t,e)=>{for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),o.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.nc=void 0;var i={};return(()=>{"use strict";o.r(i),o.d(i,{default:()=>S});var t=o(8250),e=o(1205),n=o(9044),r=o.n(n);const a={name:"NcBreadcrumb",components:{NcActions:t.default,ChevronRight:r()},props:{name:{type:String,required:!0},title:{type:String,default:null},to:{type:[String,Object],default:void 0},exact:{type:Boolean,default:!1},href:{type:String,default:void 0},icon:{type:String,default:""},disableDrop:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},open:{type:Boolean,default:!1}},emits:["update:open","dropped"],data:()=>({hovering:!1,crumbId:"crumb-id-".concat((0,e.Z)())}),computed:{tag(){return this.to?"router-link":"a"},linkAttributes(){return this.to?{to:this.to,exact:this.exact,...this.$attrs}:{href:this.href,...this.$attrs}}},methods:{onOpenChange(t){this.$emit("update:open",t)},dropped(t){return this.disableDrop||(this.$emit("dropped",t,this.to||this.href),this.$parent.$emit("dropped",t,this.to||this.href),this.hovering=!1),!1},dragEnter(t){this.disableDrop||(this.hovering=!0)},dragLeave(t){this.disableDrop||t.target.contains(t.relatedTarget)||this.$refs.crumb.contains(t.relatedTarget)||(this.hovering=!1)}}};var s=o(3379),l=o.n(s),c=o(7795),u=o.n(c),d=o(569),p=o.n(d),h=o(3565),f=o.n(h),m=o(9216),v=o.n(m),g=o(4589),A=o.n(g),y=o(8066),b={};b.styleTagTransform=A(),b.setAttributes=f(),b.insert=p().bind(null,"head"),b.domAPI=u(),b.insertStyleElement=v(),l()(y.Z,b),y.Z&&y.Z.locals&&y.Z.locals;var C=o(1900),w=o(6591),k=o.n(w),x=(0,C.Z)(a,(function(){var t=this,e=t._self._c;return e("li",t._b({ref:"crumb",staticClass:"vue-crumb",class:{"vue-crumb--hovered":t.hovering},attrs:{draggable:"false"},on:{dragstart:function(t){return t.preventDefault(),(()=>{}).apply(null,arguments)},drop:function(e){return e.preventDefault(),t.dropped.apply(null,arguments)},dragover:function(t){return t.preventDefault(),(()=>{}).apply(null,arguments)},dragenter:t.dragEnter,dragleave:t.dragLeave}},"li",t._d({},[t.crumbId,""])),[!t.name&&!t.icon||t.$slots.default?t._e():e(t.tag,t._g(t._b({tag:"component",attrs:{title:t.title}},"component",t.linkAttributes,!1),t.$listeners),[t._t("icon",(function(){return[t.icon?e("span",{staticClass:"icon",class:t.icon}):e("span",[t._v(t._s(t.name))])]}))],2),t._v(" "),t.$slots.default?e("NcActions",{ref:"actions",attrs:{type:"tertiary","force-menu":t.forceMenu,open:t.open,"menu-name":t.name,title:t.title,"force-name":!0,container:".vue-crumb[".concat(t.crumbId,"]")},on:{"update:open":t.onOpenChange},scopedSlots:t._u([{key:"icon",fn:function(){return[t._t("menu-icon")]},proxy:!0}],null,!0)},[t._v(" "),t._t("default")],2):t._e(),t._v(" "),e("ChevronRight",{staticClass:"vue-crumb__separator",attrs:{size:20}})],1)}),[],!1,null,"4daa022a",null);"function"==typeof k()&&k()(x);const S=x.exports})(),i})()))},44706:function(t,e,n){var r=n(25108);!function(e,n){t.exports=n()}(self,(()=>(()=>{var t={6969:(t,e,n)=>{"use strict";n.d(e,{default:()=>w});const r={name:"NcActionLink",mixins:[n(1139).Z],props:{href:{type:String,default:"#",required:!0,validator:t=>{try{return new URL(t)}catch(e){return t.startsWith("#")||t.startsWith("/")}}},download:{type:String,default:null},target:{type:String,default:"_self",validator:t=>t&&(!t.startsWith("_")||["_blank","_self","_parent","_top"].indexOf(t)>-1)},title:{type:String,default:null},ariaHidden:{type:Boolean,default:null}}};var o=n(3379),i=n.n(o),a=n(7795),s=n.n(a),l=n(569),c=n.n(l),u=n(3565),d=n.n(u),p=n(9216),h=n.n(p),f=n(4589),m=n.n(f),v=n(3490),g={};g.styleTagTransform=m(),g.setAttributes=d(),g.insert=c().bind(null,"head"),g.domAPI=s(),g.insertStyleElement=h(),i()(v.Z,g),v.Z&&v.Z.locals&&v.Z.locals;var A=n(1900),y=n(9158),b=n.n(y),C=(0,A.Z)(r,(function(){var t=this,e=t._self._c;return e("li",{staticClass:"action"},[e("a",{staticClass:"action-link focusable",attrs:{download:t.download,href:t.href,"aria-label":t.ariaLabel,target:t.target,title:t.title,rel:"nofollow noreferrer noopener"},on:{click:t.onClick}},[t._t("icon",(function(){return[e("span",{staticClass:"action-link__icon",class:[t.isIconUrl?"action-link__icon--url":t.icon],style:{backgroundImage:t.isIconUrl?"url(".concat(t.icon,")"):null},attrs:{"aria-hidden":t.ariaHidden}})]})),t._v(" "),t.name?e("p",[e("strong",{staticClass:"action-link__name"},[t._v("\n\t\t\t\t"+t._s(t.name)+"\n\t\t\t")]),t._v(" "),e("br"),t._v(" "),e("span",{staticClass:"action-link__longtext",domProps:{textContent:t._s(t.text)}})]):t.isLongText?e("p",{staticClass:"action-link__longtext",domProps:{textContent:t._s(t.text)}}):e("span",{staticClass:"action-link__text"},[t._v(t._s(t.text))]),t._v(" "),t._e()],2)])}),[],!1,null,"63ee0e66",null);"function"==typeof b()&&b()(C);const w=C.exports},968:(t,e,n)=>{"use strict";n.d(e,{default:()=>A});const r={name:"NcActionRouter",mixins:[n(1139).Z],props:{to:{type:[String,Object],default:"",required:!0},exact:{type:Boolean,default:!1}}};var o=n(3379),i=n.n(o),a=n(7795),s=n.n(a),l=n(569),c=n.n(l),u=n(3565),d=n.n(u),p=n(9216),h=n.n(p),f=n(4589),m=n.n(f),v=n(8541),g={};g.styleTagTransform=m(),g.setAttributes=d(),g.insert=c().bind(null,"head"),g.domAPI=s(),g.insertStyleElement=h(),i()(v.Z,g),v.Z&&v.Z.locals&&v.Z.locals;const A=(0,n(1900).Z)(r,(function(){var t=this,e=t._self._c;return e("li",{staticClass:"action"},[e("router-link",{staticClass:"action-router focusable",attrs:{to:t.to,"aria-label":t.ariaLabel,exact:t.exact,title:t.title,rel:"nofollow noreferrer noopener"},nativeOn:{click:function(e){return t.onClick.apply(null,arguments)}}},[t._t("icon",(function(){return[e("span",{staticClass:"action-router__icon",class:[t.isIconUrl?"action-router__icon--url":t.icon],style:{backgroundImage:t.isIconUrl?"url(".concat(t.icon,")"):null}})]})),t._v(" "),t.name?e("p",[e("strong",{staticClass:"action-router__name"},[t._v("\n\t\t\t\t"+t._s(t.name)+"\n\t\t\t")]),t._v(" "),e("br"),t._v(" "),e("span",{staticClass:"action-router__longtext",domProps:{textContent:t._s(t.text)}})]):t.isLongText?e("p",{staticClass:"action-router__longtext",domProps:{textContent:t._s(t.text)}}):e("span",{staticClass:"action-router__text"},[t._v(t._s(t.text))]),t._v(" "),t._e()],2)],1)}),[],!1,null,"74ff8099",null).exports},8250:(t,e,n)=>{"use strict";n.d(e,{default:()=>T});var r=n(4462),o=n(2297),i=n(1205),a=n(932),s=n(2734),l=n.n(s),c=n(1441),u=n.n(c);const d=".focusable",p={name:"NcActions",components:{NcButton:r.default,DotsHorizontal:u(),NcPopover:o.default},props:{open:{type:Boolean,default:!1},manualOpen:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},forceName:{type:Boolean,default:!1},menuName:{type:String,default:null},primary:{type:Boolean,default:!1},type:{type:String,validator:t=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(t),default:null},defaultIcon:{type:String,default:""},ariaLabel:{type:String,default:(0,a.t)("Actions")},ariaHidden:{type:Boolean,default:null},placement:{type:String,default:"bottom"},boundariesElement:{type:Element,default:()=>document.querySelector("body")},container:{type:[String,Object,Element,Boolean],default:"body"},disabled:{type:Boolean,default:!1},inline:{type:Number,default:0}},emits:["open","update:open","close","focus","blur"],data(){return{opened:this.open,focusIndex:0,randomId:"menu-".concat((0,i.Z)())}},computed:{triggerBtnType(){return this.type||(this.primary?"primary":this.menuName?"secondary":"tertiary")}},watch:{open(t){t!==this.opened&&(this.opened=t)}},methods:{isValidSingleAction(t){var e,n,r,o,i;const a=null!==(e=null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.Ctor)||void 0===r||null===(o=r.extendOptions)||void 0===o?void 0:o.name)&&void 0!==e?e:null==t||null===(i=t.componentOptions)||void 0===i?void 0:i.tag;return["NcActionButton","NcActionLink","NcActionRouter"].includes(a)},openMenu(t){this.opened||(this.opened=!0,this.$emit("update:open",!0),this.$emit("open"))},closeMenu(){let t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.opened&&(this.opened=!1,this.$refs.popover.clearFocusTrap({returnFocus:t}),this.$emit("update:open",!1),this.$emit("close"),this.focusIndex=0,this.$refs.menuButton.$el.focus())},onOpen(t){this.$nextTick((()=>{this.focusFirstAction(t)}))},onMouseFocusAction(t){if(document.activeElement===t.target)return;const e=t.target.closest("li");if(e){const t=e.querySelector(d);if(t){const e=[...this.$refs.menu.querySelectorAll(d)].indexOf(t);e>-1&&(this.focusIndex=e,this.focusAction())}}},onKeydown(t){(38===t.keyCode||9===t.keyCode&&t.shiftKey)&&this.focusPreviousAction(t),(40===t.keyCode||9===t.keyCode&&!t.shiftKey)&&this.focusNextAction(t),33===t.keyCode&&this.focusFirstAction(t),34===t.keyCode&&this.focusLastAction(t),27===t.keyCode&&(this.closeMenu(),t.preventDefault())},removeCurrentActive(){const t=this.$refs.menu.querySelector("li.active");t&&t.classList.remove("active")},focusAction(){const t=this.$refs.menu.querySelectorAll(d)[this.focusIndex];if(t){this.removeCurrentActive();const e=t.closest("li.action");t.focus(),e&&e.classList.add("active")}},focusPreviousAction(t){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction(t){if(this.opened){const e=this.$refs.menu.querySelectorAll(d).length-1;this.focusIndex===e?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=0,this.focusAction())},focusLastAction(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=this.$refs.menu.querySelectorAll(d).length-1,this.focusAction())},preventIfEvent(t){t&&(t.preventDefault(),t.stopPropagation())},onFocus(t){this.$emit("focus",t)},onBlur(t){this.$emit("blur",t)}},render(t){const e=(this.$slots.default||[]).filter((t=>{var e,n,r,o;return(null==t||null===(e=t.componentOptions)||void 0===e?void 0:e.tag)||(null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.Ctor)||void 0===r||null===(o=r.extendOptions)||void 0===o?void 0:o.name)})),n=e.every((t=>{var e,n,r,o,i,a,s,l;return"NcActionLink"===(null!==(e=null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.Ctor)||void 0===r||null===(o=r.extendOptions)||void 0===o?void 0:o.name)&&void 0!==e?e:null==t||null===(i=t.componentOptions)||void 0===i?void 0:i.tag)&&(null==t||null===(a=t.componentOptions)||void 0===a||null===(s=a.propsData)||void 0===s||null===(l=s.href)||void 0===l?void 0:l.startsWith(window.location.origin))}));let r=e.filter(this.isValidSingleAction);if(this.forceMenu&&r.length>0&&this.inline>0&&(l().util.warn("Specifying forceMenu will ignore any inline actions rendering."),r=[]),0===e.length)return;const o=e=>{var n,r,o,i,a,s,l,c,u,d,p,h,f,m,v,g,A,y,b,C,w,k;const x=(null==e||null===(n=e.data)||void 0===n||null===(r=n.scopedSlots)||void 0===r||null===(o=r.icon())||void 0===o?void 0:o[0])||t("span",{class:["icon",null==e||null===(i=e.componentOptions)||void 0===i||null===(a=i.propsData)||void 0===a?void 0:a.icon]}),S=null==e||null===(s=e.componentOptions)||void 0===s||null===(l=s.listeners)||void 0===l?void 0:l.click,j=null==e||null===(c=e.componentOptions)||void 0===c||null===(u=c.children)||void 0===u||null===(d=u[0])||void 0===d||null===(p=d.text)||void 0===p||null===(h=p.trim)||void 0===h?void 0:h.call(p),_=(null==e||null===(f=e.componentOptions)||void 0===f||null===(m=f.propsData)||void 0===m?void 0:m.ariaLabel)||j,E=this.forceName?j:"";let P=null==e||null===(v=e.componentOptions)||void 0===v||null===(g=v.propsData)||void 0===g?void 0:g.title;return this.forceName||P||(P=j),t("NcButton",{class:["action-item action-item--single",null==e||null===(A=e.data)||void 0===A?void 0:A.staticClass,null==e||null===(y=e.data)||void 0===y?void 0:y.class],attrs:{"aria-label":_,title:P},ref:null==e||null===(b=e.data)||void 0===b?void 0:b.ref,props:{type:this.type||(E?"secondary":"tertiary"),disabled:this.disabled||(null==e||null===(C=e.componentOptions)||void 0===C||null===(w=C.propsData)||void 0===w?void 0:w.disabled),ariaHidden:this.ariaHidden,...null==e||null===(k=e.componentOptions)||void 0===k?void 0:k.propsData},on:{focus:this.onFocus,blur:this.onBlur,...!!S&&{click:t=>{S&&S(t)}}}},[t("template",{slot:"icon"},[x]),E])},i=e=>{var r,o;const i=(null===(r=this.$slots.icon)||void 0===r?void 0:r[0])||(this.defaultIcon?t("span",{class:["icon",this.defaultIcon]}):t("DotsHorizontal",{props:{size:20}}));return t("NcPopover",{ref:"popover",props:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,popoverBaseClass:"action-item__popper",setReturnFocus:null===(o=this.$refs.menuButton)||void 0===o?void 0:o.$el},attrs:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,...this.manualOpen&&{triggers:[]},popoverBaseClass:"action-item__popper"},on:{show:this.openMenu,"after-show":this.onOpen,hide:this.closeMenu}},[t("NcButton",{class:"action-item__menutoggle",props:{type:this.triggerBtnType,disabled:this.disabled,ariaHidden:this.ariaHidden},slot:"trigger",ref:"menuButton",attrs:{"aria-haspopup":n?null:"menu","aria-label":this.ariaLabel,"aria-controls":this.opened?this.randomId:null,"aria-expanded":this.opened.toString()},on:{focus:this.onFocus,blur:this.onBlur}},[t("template",{slot:"icon"},[i]),this.menuName]),t("div",{class:{open:this.opened},attrs:{tabindex:"-1"},on:{keydown:this.onKeydown,mousemove:this.onMouseFocusAction},ref:"menu"},[t("ul",{attrs:{id:this.randomId,tabindex:"-1",role:n?null:"menu"}},[e])])])};if(1===e.length&&1===r.length&&!this.forceMenu)return o(r[0]);if(r.length>0&&this.inline>0){const n=r.slice(0,this.inline),a=e.filter((t=>!n.includes(t)));return t("div",{class:["action-items","action-item--".concat(this.triggerBtnType)]},[...n.map(o),a.length>0?t("div",{class:["action-item",{"action-item--open":this.opened}]},[i(a)]):null])}return t("div",{class:["action-item action-item--default-popover","action-item--".concat(this.triggerBtnType),{"action-item--open":this.opened}]},[i(e)])}};var h=n(3379),f=n.n(h),m=n(7795),v=n.n(m),g=n(569),A=n.n(g),y=n(3565),b=n.n(y),C=n(9216),w=n.n(C),k=n(4589),x=n.n(k),S=n(4825),j={};j.styleTagTransform=x(),j.setAttributes=b(),j.insert=A().bind(null,"head"),j.domAPI=v(),j.insertStyleElement=w(),f()(S.Z,j),S.Z&&S.Z.locals&&S.Z.locals;var _=n(4946),E={};E.styleTagTransform=x(),E.setAttributes=b(),E.insert=A().bind(null,"head"),E.domAPI=v(),E.insertStyleElement=w(),f()(_.Z,E),_.Z&&_.Z.locals&&_.Z.locals;var P=n(1900),N=n(5727),O=n.n(N),z=(0,P.Z)(p,void 0,void 0,!1,null,"29452b76",null);"function"==typeof O()&&O()(z);const T=z.exports},8407:(t,e,n)=>{"use strict";n.d(e,{default:()=>j});var r=n(8250),o=n(1205),i=n(9044),a=n.n(i);const s={name:"NcBreadcrumb",components:{NcActions:r.default,ChevronRight:a()},props:{name:{type:String,required:!0},title:{type:String,default:null},to:{type:[String,Object],default:void 0},exact:{type:Boolean,default:!1},href:{type:String,default:void 0},icon:{type:String,default:""},disableDrop:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},open:{type:Boolean,default:!1}},emits:["update:open","dropped"],data:()=>({hovering:!1,crumbId:"crumb-id-".concat((0,o.Z)())}),computed:{tag(){return this.to?"router-link":"a"},linkAttributes(){return this.to?{to:this.to,exact:this.exact,...this.$attrs}:{href:this.href,...this.$attrs}}},methods:{onOpenChange(t){this.$emit("update:open",t)},dropped(t){return this.disableDrop||(this.$emit("dropped",t,this.to||this.href),this.$parent.$emit("dropped",t,this.to||this.href),this.hovering=!1),!1},dragEnter(t){this.disableDrop||(this.hovering=!0)},dragLeave(t){this.disableDrop||t.target.contains(t.relatedTarget)||this.$refs.crumb.contains(t.relatedTarget)||(this.hovering=!1)}}};var l=n(3379),c=n.n(l),u=n(7795),d=n.n(u),p=n(569),h=n.n(p),f=n(3565),m=n.n(f),v=n(9216),g=n.n(v),A=n(4589),y=n.n(A),b=n(8066),C={};C.styleTagTransform=y(),C.setAttributes=m(),C.insert=h().bind(null,"head"),C.domAPI=d(),C.insertStyleElement=g(),c()(b.Z,C),b.Z&&b.Z.locals&&b.Z.locals;var w=n(1900),k=n(6591),x=n.n(k),S=(0,w.Z)(s,(function(){var t=this,e=t._self._c;return e("li",t._b({ref:"crumb",staticClass:"vue-crumb",class:{"vue-crumb--hovered":t.hovering},attrs:{draggable:"false"},on:{dragstart:function(t){return t.preventDefault(),(()=>{}).apply(null,arguments)},drop:function(e){return e.preventDefault(),t.dropped.apply(null,arguments)},dragover:function(t){return t.preventDefault(),(()=>{}).apply(null,arguments)},dragenter:t.dragEnter,dragleave:t.dragLeave}},"li",t._d({},[t.crumbId,""])),[!t.name&&!t.icon||t.$slots.default?t._e():e(t.tag,t._g(t._b({tag:"component",attrs:{title:t.title}},"component",t.linkAttributes,!1),t.$listeners),[t._t("icon",(function(){return[t.icon?e("span",{staticClass:"icon",class:t.icon}):e("span",[t._v(t._s(t.name))])]}))],2),t._v(" "),t.$slots.default?e("NcActions",{ref:"actions",attrs:{type:"tertiary","force-menu":t.forceMenu,open:t.open,"menu-name":t.name,title:t.title,"force-name":!0,container:".vue-crumb[".concat(t.crumbId,"]")},on:{"update:open":t.onOpenChange},scopedSlots:t._u([{key:"icon",fn:function(){return[t._t("menu-icon")]},proxy:!0}],null,!0)},[t._v(" "),t._t("default")],2):t._e(),t._v(" "),e("ChevronRight",{staticClass:"vue-crumb__separator",attrs:{size:20}})],1)}),[],!1,null,"4daa022a",null);"function"==typeof x()&&x()(S);const j=S.exports},4462:(t,e,n)=>{"use strict";n.d(e,{default:()=>k});const o={name:"NcButton",props:{disabled:{type:Boolean,default:!1},type:{type:String,validator:t=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(t),default:"secondary"},nativeType:{type:String,validator:t=>-1!==["submit","reset","button"].indexOf(t),default:"button"},wide:{type:Boolean,default:!1},ariaLabel:{type:String,default:null},href:{type:String,default:null},to:{type:[String,Object],default:null},exact:{type:Boolean,default:!1},ariaHidden:{type:Boolean,default:null}},render(t){var e,n,o,i,a,s=this;const l=null===(e=this.$slots.default)||void 0===e||null===(n=e[0])||void 0===n||null===(o=n.text)||void 0===o||null===(i=o.trim)||void 0===i?void 0:i.call(o),c=!!l,u=null===(a=this.$slots)||void 0===a?void 0:a.icon;l||this.ariaLabel||r.warn("You need to fill either the text or the ariaLabel props in the button component.",{text:l,ariaLabel:this.ariaLabel},this);const d=function(){let{navigate:e,isActive:n,isExactActive:r}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t(s.to||!s.href?"button":"a",{class:["button-vue",{"button-vue--icon-only":u&&!c,"button-vue--text-only":c&&!u,"button-vue--icon-and-text":u&&c,["button-vue--vue-".concat(s.type)]:s.type,"button-vue--wide":s.wide,active:n,"router-link-exact-active":r}],attrs:{"aria-label":s.ariaLabel,disabled:s.disabled,type:s.href?null:s.nativeType,role:s.href?"button":null,href:!s.to&&s.href?s.href:null,...s.$attrs},on:{...s.$listeners,click:t=>{var n,r;null===(n=s.$listeners)||void 0===n||null===(r=n.click)||void 0===r||r.call(n,t),null==e||e(t)}}},[t("span",{class:"button-vue__wrapper"},[u?t("span",{class:"button-vue__icon",attrs:{"aria-hidden":s.ariaHidden}},[s.$slots.icon]):null,c?t("span",{class:"button-vue__text"},[l]):null])])};return this.to?t("router-link",{props:{custom:!0,to:this.to,exact:this.exact},scopedSlots:{default:d}}):d()}};var i=n(3379),a=n.n(i),s=n(7795),l=n.n(s),c=n(569),u=n.n(c),d=n(3565),p=n.n(d),h=n(9216),f=n.n(h),m=n(4589),v=n.n(m),g=n(7196),A={};A.styleTagTransform=v(),A.setAttributes=p(),A.insert=u().bind(null,"head"),A.domAPI=l(),A.insertStyleElement=f(),a()(g.Z,A),g.Z&&g.Z.locals&&g.Z.locals;var y=n(1900),b=n(2102),C=n.n(b),w=(0,y.Z)(o,void 0,void 0,!1,null,"4d05be2c",null);"function"==typeof C()&&C()(w);const k=w.exports},2297:(t,e,n)=>{"use strict";n.d(e,{default:()=>_});var o=n(9454),i=n(4505),a=n(1206);const s={name:"NcPopover",components:{Dropdown:o.Dropdown},inheritAttrs:!1,props:{popoverBaseClass:{type:String,default:""},focusTrap:{type:Boolean,default:!0},setReturnFocus:{default:void 0,type:[HTMLElement,SVGElement,String,Boolean]}},emits:["after-show","after-hide"],beforeDestroy(){this.clearFocusTrap()},methods:{async useFocusTrap(){var t,e;if(await this.$nextTick(),!this.focusTrap)return;const n=null===(t=this.$refs.popover)||void 0===t||null===(e=t.$refs.popperContent)||void 0===e?void 0:e.$el;n&&(this.$focusTrap=(0,i.createFocusTrap)(n,{escapeDeactivates:!1,allowOutsideClick:!0,setReturnFocus:this.setReturnFocus,trapStack:(0,a.L)()}),this.$focusTrap.activate())},clearFocusTrap(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{var e;null===(e=this.$focusTrap)||void 0===e||e.deactivate(t),this.$focusTrap=null}catch(t){r.warn(t)}},afterShow(){this.$nextTick((()=>{this.$emit("after-show"),this.useFocusTrap()}))},afterHide(){this.$emit("after-hide"),this.clearFocusTrap()}}},l=s;var c=n(3379),u=n.n(c),d=n(7795),p=n.n(d),h=n(569),f=n.n(h),m=n(3565),v=n.n(m),g=n(9216),A=n.n(g),y=n(4589),b=n.n(y),C=n(1625),w={};w.styleTagTransform=b(),w.setAttributes=v(),w.insert=f().bind(null,"head"),w.domAPI=p(),w.insertStyleElement=A(),u()(C.Z,w),C.Z&&C.Z.locals&&C.Z.locals;var k=n(1900),x=n(2405),S=n.n(x),j=(0,k.Z)(l,(function(){var t=this;return(0,t._self._c)("Dropdown",t._g(t._b({ref:"popover",attrs:{distance:10,"arrow-padding":10,"no-auto-focus":!0,"popper-class":t.popoverBaseClass},on:{"apply-show":t.afterShow,"apply-hide":t.afterHide},scopedSlots:t._u([{key:"popper",fn:function(){return[t._t("default")]},proxy:!0}],null,!0)},"Dropdown",t.$attrs,!1),t.$listeners),[t._t("trigger")],2)}),[],!1,null,null,null);"function"==typeof S()&&S()(j);const _=j.exports},932:(t,e,n)=>{"use strict";n.d(e,{t:()=>i});const r=(0,n(7931).getGettextBuilder)().detectLocale();[{locale:"ar",translations:{"{tag} (invisible)":"{tag} (غير مرئي)","{tag} (restricted)":"{tag} (مقيد)",Actions:"الإجراءات",Activities:"النشاطات","Animals & Nature":"الحيوانات والطبيعة","Anything shared with the same group of people will show up here":"أي مادة تمت مشاركتها مع نفس المجموعة من الأشخاص سيتم عرضها هنا","Avatar of {displayName}":"صورة {displayName} الرمزية","Avatar of {displayName}, {status}":"صورة {displayName} الرمزية، {status}","Cancel changes":"إلغاء التغييرات","Change title":"تغيير العنوان",Choose:"إختيار","Clear text":"مسح النص",Close:"أغلق","Close modal":"قفل الشرط","Close navigation":"إغلاق المتصفح","Close sidebar":"قفل الشريط الجانبي","Confirm changes":"تأكيد التغييرات",Custom:"مخصص","Edit item":"تعديل عنصر","Error getting related resources":"خطأ في تحصيل مصادر ذات صلة","External documentation for {title}":"الوثائق الخارجية لـ{title}",Favorite:"مفضلة",Flags:"الأعلام","Food & Drink":"الطعام والشراب","Frequently used":"كثيرا ما تستخدم",Global:"عالمي","Go back to the list":"العودة إلى القائمة","Hide password":"إخفاء كلمة السر","Message limit of {count} characters reached":"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف","More items …":"عناصر أخرى ...",Next:"التالي","No emoji found":"لم يتم العثور على أي رمز تعبيري","No results":"ليس هناك أية نتيجة",Objects:"الأشياء",Open:"فتح",'Open link to "{resourceTitle}"':'فتح رابط إلى "{resourceTitle}"',"Open navigation":"فتح المتصفح","Password is secure":"كلمة السر مُؤمّنة","Pause slideshow":"إيقاف العرض مؤقتًا","People & Body":"الناس والجسم","Pick an emoji":"اختر رمزًا تعبيريًا","Please select a time zone:":"الرجاء تحديد المنطقة الزمنية:",Previous:"السابق","Related resources":"مصادر ذات صلة",Search:"بحث","Search results":"نتائج البحث","Select a tag":"اختر علامة",Settings:"الإعدادات","Settings navigation":"إعدادات المتصفح","Show password":"أعرض كلمة السر","Smileys & Emotion":"الوجوه و الرموز التعبيرية","Start slideshow":"بدء العرض",Submit:"إرسال",Symbols:"الرموز","Travel & Places":"السفر والأماكن","Type to search time zone":"اكتب للبحث عن منطقة زمنية","Unable to search the group":"تعذر البحث في المجموعة","Undo changes":"التراجع عن التغييرات","Write message, @ to mention someone, : for emoji autocompletion …":"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ..."}},{locale:"br",translations:{"{tag} (invisible)":"{tag} (diwelus)","{tag} (restricted)":"{tag} (bevennet)",Actions:"Oberioù",Activities:"Oberiantizoù","Animals & Nature":"Loened & Natur",Choose:"Dibab",Close:"Serriñ",Custom:"Personelañ",Flags:"Bannieloù","Food & Drink":"Boued & Evajoù","Frequently used":"Implijet alies",Next:"Da heul","No emoji found":"Emoji ebet kavet","No results":"Disoc'h ebet",Objects:"Traoù","Pause slideshow":"Arsav an diaporama","People & Body":"Tud & Korf","Pick an emoji":"Choaz un emoji",Previous:"A-raok",Search:"Klask","Search results":"Disoc'hoù an enklask","Select a tag":"Choaz ur c'hlav",Settings:"Arventennoù","Smileys & Emotion":"Smileyioù & Fromoù","Start slideshow":"Kregiñ an diaporama",Symbols:"Arouezioù","Travel & Places":"Beaj & Lec'hioù","Unable to search the group":"Dibosupl eo klask ar strollad"}},{locale:"ca",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringit)",Actions:"Accions",Activities:"Activitats","Animals & Nature":"Animals i natura","Anything shared with the same group of people will show up here":"Qualsevol cosa compartida amb el mateix grup de persones es mostrarà aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancel·la els canvis","Change title":"Canviar títol",Choose:"Tria","Clear text":"Netejar text",Close:"Tanca","Close modal":"Tancar el mode","Close navigation":"Tanca la navegació","Close sidebar":"Tancar la barra lateral","Confirm changes":"Confirmeu els canvis",Custom:"Personalitzat","Edit item":"Edita l'element","Error getting related resources":"Error obtenint els recursos relacionats","Error parsing svg":"Error en l'anàlisi del svg","External documentation for {title}":"Documentació externa per a {title}",Favorite:"Preferit",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment",Global:"Global","Go back to the list":"Torna a la llista","Hide password":"Amagar contrasenya","Message limit of {count} characters reached":"S'ha arribat al límit de {count} caràcters per missatge","More items …":"Més artícles...",Next:"Següent","No emoji found":"No s'ha trobat cap emoji","No results":"Sense resultats",Objects:"Objectes",Open:"Obrir",'Open link to "{resourceTitle}"':'Obrir enllaç a "{resourceTitle}"',"Open navigation":"Obre la navegació","Password is secure":"Contrasenya segura<br>","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji","Please select a time zone:":"Seleccioneu una zona horària:",Previous:"Anterior","Related resources":"Recursos relacionats",Search:"Cerca","Search results":"Resultats de cerca","Select a tag":"Seleccioneu una etiqueta",Settings:"Paràmetres","Settings navigation":"Navegació d'opcions","Show password":"Mostrar contrasenya","Smileys & Emotion":"Cares i emocions","Start slideshow":"Inicia la presentació",Submit:"Envia",Symbols:"Símbols","Travel & Places":"Viatges i llocs","Type to search time zone":"Escriviu per cercar la zona horària","Unable to search the group":"No es pot cercar el grup","Undo changes":"Desfés els canvis",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escriu missatge, fes servir "@" per esmentar algú, fes servir ":" per autocompletar emojis...'}},{locale:"cs_CZ",translations:{"{tag} (invisible)":"{tag} (neviditelné)","{tag} (restricted)":"{tag} (omezené)",Actions:"Akce",Activities:"Aktivity","Animals & Nature":"Zvířata a příroda","Anything shared with the same group of people will show up here":"Cokoli nasdíleného stejné skupině lidí se zobrazí zde","Avatar of {displayName}":"Zástupný obrázek uživatele {displayName}","Avatar of {displayName}, {status}":"Zástupný obrázek uživatele {displayName}, {status}","Cancel changes":"Zrušit změny","Change title":"Změnit nadpis",Choose:"Zvolit","Clear text":"Čitelný text",Close:"Zavřít","Close modal":"Zavřít dialogové okno","Close navigation":"Zavřít navigaci","Close sidebar":"Zavřít postranní panel","Confirm changes":"Potvrdit změny",Custom:"Uživatelsky určené","Edit item":"Upravit položku","Error getting related resources":"Chyba při získávání souvisejících prostředků","Error parsing svg":"Chyba při zpracovávání svg","External documentation for {title}":"Externí dokumentace k {title}",Favorite:"Oblíbené",Flags:"Příznaky","Food & Drink":"Jídlo a pití","Frequently used":"Často používané",Global:"Globální","Go back to the list":"Jít zpět na seznam","Hide password":"Skrýt heslo","Message limit of {count} characters reached":"Dosaženo limitu počtu ({count}) znaků zprávy","More items …":"Další položky…",Next:"Následující","No emoji found":"Nenalezeno žádné emoji","No results":"Nic nenalezeno",Objects:"Objekty",Open:"Otevřít",'Open link to "{resourceTitle}"':"Otevřít odkaz na „{resourceTitle}“","Open navigation":"Otevřít navigaci","Password is secure":"Heslo je bezpečné","Pause slideshow":"Pozastavit prezentaci","People & Body":"Lidé a tělo","Pick an emoji":"Vybrat emoji","Please select a time zone:":"Vyberte časovou zónu:",Previous:"Předchozí","Related resources":"Související prostředky",Search:"Hledat","Search results":"Výsledky hledání","Select a tag":"Vybrat štítek",Settings:"Nastavení","Settings navigation":"Pohyb po nastavení","Show password":"Zobrazit heslo","Smileys & Emotion":"Úsměvy a emoce","Start slideshow":"Spustit prezentaci",Submit:"Odeslat",Symbols:"Symboly","Travel & Places":"Cestování a místa","Type to search time zone":"Psaním vyhledejte časovou zónu","Unable to search the group":"Nedaří se hledat skupinu","Undo changes":"Vzít změny zpět",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem „@“ (zavináč); automatické doplňování emotikonů zahájíte napsáním „:“ (dvojtečky)…"}},{locale:"da",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (begrænset)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr & Natur","Anything shared with the same group of people will show up here":"Alt der deles med samme gruppe af personer vil vises her","Avatar of {displayName}":"Avatar af {displayName}","Avatar of {displayName}, {status}":"Avatar af {displayName}, {status}","Cancel changes":"Annuller ændringer","Change title":"Ret titel",Choose:"Vælg","Clear text":"Ryd tekst",Close:"Luk","Close modal":"Luk vindue","Close navigation":"Luk navigation","Close sidebar":"Luk sidepanel","Confirm changes":"Bekræft ændringer",Custom:"Brugerdefineret","Edit item":"Rediger emne","Error getting related resources":"Kunne ikke hente tilknyttede data","Error parsing svg":"Fejl ved analysering af svg","External documentation for {title}":"Ekstern dokumentation for {title}",Favorite:"Favorit",Flags:"Flag","Food & Drink":"Mad & Drikke","Frequently used":"Ofte brugt",Global:"Global","Go back to the list":"Tilbage til listen","Hide password":"Skjul kodeord","Message limit of {count} characters reached":"Begrænsning på {count} tegn er nået","More items …":"Mere ...",Next:"Videre","No emoji found":"Ingen emoji fundet","No results":"Ingen resultater",Objects:"Objekter",Open:"Åbn",'Open link to "{resourceTitle}"':'Åbn link til "{resourceTitle}"',"Open navigation":"Åbn navigation","Password is secure":"Kodeordet er sikkert","Pause slideshow":"Suspender fremvisning","People & Body":"Mennesker & Menneskekroppen","Pick an emoji":"Vælg en emoji","Please select a time zone:":"Vælg venligst en tidszone:",Previous:"Forrige","Related resources":"Relaterede emner",Search:"Søg","Search results":"Søgeresultater","Select a tag":"Vælg et mærke",Settings:"Indstillinger","Settings navigation":"Naviger i indstillinger","Show password":"Vis kodeord","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start fremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Rejser & Rejsemål","Type to search time zone":"Indtast for at søge efter tidszone","Unable to search the group":"Kan ikke søge på denne gruppe","Undo changes":"Fortryd ændringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv besked, brug "@" for at nævne nogen, brug ":" til emoji-autofuldførelse ...'}},{locale:"de",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Gegenstände",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte wählen Sie eine Zeitzone:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um Zeitzone zu suchen","Unable to search the group":"Die Gruppe konnte nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"de_DE",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Objekte",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte eine Zeitzone auswählen:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um eine Zeitzone zu suchen","Unable to search the group":"Die Gruppe kann nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"el",translations:{"{tag} (invisible)":"{tag} (αόρατο)","{tag} (restricted)":"{tag} (περιορισμένο)",Actions:"Ενέργειες",Activities:"Δραστηριότητες","Animals & Nature":"Ζώα & Φύση","Anything shared with the same group of people will show up here":"Οτιδήποτε μοιράζεται με την ίδια ομάδα ατόμων θα εμφανίζεται εδώ","Avatar of {displayName}":"Άβαταρ του {displayName}","Avatar of {displayName}, {status}":"Άβαταρ του {displayName}, {status}","Cancel changes":"Ακύρωση αλλαγών","Change title":"Αλλαγή τίτλου",Choose:"Επιλογή","Clear text":"Εκκαθάριση κειμένου",Close:"Κλείσιμο","Close modal":"Βοηθητικό κλείσιμο","Close navigation":"Κλείσιμο πλοήγησης","Close sidebar":"Κλείσιμο πλευρικής μπάρας","Confirm changes":"Επιβεβαίωση αλλαγών",Custom:"Προσαρμογή","Edit item":"Επεξεργασία","Error getting related resources":"Σφάλμα λήψης σχετικών πόρων","Error parsing svg":"Σφάλμα ανάλυσης svg","External documentation for {title}":"Εξωτερική τεκμηρίωση για {title}",Favorite:"Αγαπημένα",Flags:"Σημαίες","Food & Drink":"Φαγητό & Ποτό","Frequently used":"Συχνά χρησιμοποιούμενο",Global:"Καθολικό","Go back to the list":"Επιστροφή στην αρχική λίστα ","Hide password":"Απόκρυψη κωδικού πρόσβασης","Message limit of {count} characters reached":"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος","More items …":"Περισσότερα στοιχεία …",Next:"Επόμενο","No emoji found":"Δεν βρέθηκε emoji","No results":"Κανένα αποτέλεσμα",Objects:"Αντικείμενα",Open:"Άνοιγμα",'Open link to "{resourceTitle}"':'Άνοιγμα συνδέσμου στο "{resourceTitle}"',"Open navigation":"Άνοιγμα πλοήγησης","Password is secure":"Ο κωδικός πρόσβασης είναι ασφαλής","Pause slideshow":"Παύση προβολής διαφανειών","People & Body":"Άνθρωποι & Σώμα","Pick an emoji":"Επιλέξτε ένα emoji","Please select a time zone:":"Παρακαλούμε επιλέξτε μια ζώνη ώρας:",Previous:"Προηγούμενο","Related resources":"Σχετικοί πόροι",Search:"Αναζήτηση","Search results":"Αποτελέσματα αναζήτησης","Select a tag":"Επιλογή ετικέτας",Settings:"Ρυθμίσεις","Settings navigation":"Πλοήγηση ρυθμίσεων","Show password":"Εμφάνιση κωδικού πρόσβασης","Smileys & Emotion":"Φατσούλες & Συναίσθημα","Start slideshow":"Έναρξη προβολής διαφανειών",Submit:"Υποβολή",Symbols:"Σύμβολα","Travel & Places":"Ταξίδια & Τοποθεσίες","Type to search time zone":"Πληκτρολογήστε για αναζήτηση ζώνης ώρας","Unable to search the group":"Δεν είναι δυνατή η αναζήτηση της ομάδας","Undo changes":"Αναίρεση Αλλαγών",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Γράψτε μήνυμα, χρησιμοποιείστε "@" για να αναφέρετε κάποιον, χρησιμοποιείστε ":" για αυτόματη συμπλήρωση emoji …'}},{locale:"en_GB",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restricted)",Actions:"Actions",Activities:"Activities","Animals & Nature":"Animals & Nature","Anything shared with the same group of people will show up here":"Anything shared with the same group of people will show up here","Avatar of {displayName}":"Avatar of {displayName}","Avatar of {displayName}, {status}":"Avatar of {displayName}, {status}","Cancel changes":"Cancel changes","Change title":"Change title",Choose:"Choose","Clear text":"Clear text",Close:"Close","Close modal":"Close modal","Close navigation":"Close navigation","Close sidebar":"Close sidebar","Confirm changes":"Confirm changes",Custom:"Custom","Edit item":"Edit item","Error getting related resources":"Error getting related resources","Error parsing svg":"Error parsing svg","External documentation for {title}":"External documentation for {title}",Favorite:"Favourite",Flags:"Flags","Food & Drink":"Food & Drink","Frequently used":"Frequently used",Global:"Global","Go back to the list":"Go back to the list","Hide password":"Hide password","Message limit of {count} characters reached":"Message limit of {count} characters reached","More items …":"More items …",Next:"Next","No emoji found":"No emoji found","No results":"No results",Objects:"Objects",Open:"Open",'Open link to "{resourceTitle}"':'Open link to "{resourceTitle}"',"Open navigation":"Open navigation","Password is secure":"Password is secure","Pause slideshow":"Pause slideshow","People & Body":"People & Body","Pick an emoji":"Pick an emoji","Please select a time zone:":"Please select a time zone:",Previous:"Previous","Related resources":"Related resources",Search:"Search","Search results":"Search results","Select a tag":"Select a tag",Settings:"Settings","Settings navigation":"Settings navigation","Show password":"Show password","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start slideshow",Submit:"Submit",Symbols:"Symbols","Travel & Places":"Travel & Places","Type to search time zone":"Type to search time zone","Unable to search the group":"Unable to search the group","Undo changes":"Undo changes",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Write message, use "@" to mention someone, use ":" for emoji autocompletion …'}},{locale:"eo",translations:{"{tag} (invisible)":"{tag} (kaŝita)","{tag} (restricted)":"{tag} (limigita)",Actions:"Agoj",Activities:"Aktiveco","Animals & Nature":"Bestoj & Naturo",Choose:"Elektu",Close:"Fermu",Custom:"Propra",Flags:"Flagoj","Food & Drink":"Manĝaĵo & Trinkaĵo","Frequently used":"Ofte uzataj","Message limit of {count} characters reached":"La limo je {count} da literoj atingita",Next:"Sekva","No emoji found":"La emoĝio forestas","No results":"La rezulto forestas",Objects:"Objektoj","Pause slideshow":"Payzi bildprezenton","People & Body":"Homoj & Korpo","Pick an emoji":"Elekti emoĝion ",Previous:"Antaŭa",Search:"Serĉi","Search results":"Serĉrezultoj","Select a tag":"Elektu etikedon",Settings:"Agordo","Settings navigation":"Agorda navigado","Smileys & Emotion":"Ridoj kaj Emocioj","Start slideshow":"Komenci bildprezenton",Symbols:"Signoj","Travel & Places":"Vojaĵoj & Lokoj","Unable to search the group":"Ne eblas serĉi en la grupo","Write message, @ to mention someone …":"Mesaĝi, uzu @ por mencii iun ..."}},{locale:"es",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringido)",Actions:"Acciones",Activities:"Actividades","Animals & Nature":"Animales y naturaleza","Anything shared with the same group of people will show up here":"Cualquier cosa que sea compartida con el mismo grupo de personas se mostrará aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar cambios","Change title":"Cambiar título",Choose:"Elegir","Clear text":"Limpiar texto",Close:"Cerrar","Close modal":"Cerrar modal","Close navigation":"Cerrar navegación","Close sidebar":"Cerrar barra lateral","Confirm changes":"Confirmar cambios",Custom:"Personalizado","Edit item":"Editar elemento","Error getting related resources":"Se encontró un error al obtener los recursos relacionados","Error parsing svg":"Error procesando svg","External documentation for {title}":"Documentacion externa de {title}",Favorite:"Favorito",Flags:"Banderas","Food & Drink":"Comida y bebida","Frequently used":"Usado con frecuenca",Global:"Global","Go back to the list":"Volver a la lista","Hide password":"Ocultar contraseña","Message limit of {count} characters reached":"El mensaje ha alcanzado el límite de {count} caracteres","More items …":"Más ítems...",Next:"Siguiente","No emoji found":"No hay ningún emoji","No results":" Ningún resultado",Objects:"Objetos",Open:"Abrir",'Open link to "{resourceTitle}"':'Abrir enlace a "{resourceTitle}"',"Open navigation":"Abrir navegación","Password is secure":"La contraseña es segura","Pause slideshow":"Pausar la presentación ","People & Body":"Personas y cuerpos","Pick an emoji":"Elegir un emoji","Please select a time zone:":"Por favor elige un huso de horario:",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Buscar","Search results":"Resultados de la búsqueda","Select a tag":"Seleccione una etiqueta",Settings:"Ajustes","Settings navigation":"Navegación por ajustes","Show password":"Mostrar contraseña","Smileys & Emotion":"Smileys y emoticonos","Start slideshow":"Iniciar la presentación",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viajes y lugares","Type to search time zone":"Escribe para buscar un huso de horario","Unable to search the group":"No es posible buscar en el grupo","Undo changes":"Deshacer cambios",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escribir mensaje, utilice "@" para mencionar a alguien, utilice ":" para autocompletado de emojis ...'}},{locale:"eu",translations:{"{tag} (invisible)":"{tag} (ikusezina)","{tag} (restricted)":"{tag} (mugatua)",Actions:"Ekintzak",Activities:"Jarduerak","Animals & Nature":"Animaliak eta Natura","Anything shared with the same group of people will show up here":"Pertsona-talde berarekin partekatutako edozer agertuko da hemen","Avatar of {displayName}":"{displayName}-(e)n irudia","Avatar of {displayName}, {status}":"{displayName} -(e)n irudia, {status}","Cancel changes":"Ezeztatu aldaketak","Change title":"Aldatu titulua",Choose:"Aukeratu","Clear text":"Garbitu testua",Close:"Itxi","Close modal":"Itxi modala","Close navigation":"Itxi nabigazioa","Close sidebar":"Itxi albo-barra","Confirm changes":"Baieztatu aldaketak",Custom:"Pertsonalizatua","Edit item":"Editatu elementua","Error getting related resources":"Errorea erlazionatutako baliabideak lortzerakoan","Error parsing svg":"Errore bat gertatu da svg-a analizatzean","External documentation for {title}":"Kanpoko dokumentazioa {title}(r)entzat",Favorite:"Gogokoa",Flags:"Banderak","Food & Drink":"Janaria eta edariak","Frequently used":"Askotan erabilia",Global:"Globala","Go back to the list":"Bueltatu zerrendara","Hide password":"Ezkutatu pasahitza","Message limit of {count} characters reached":"Mezuaren {count} karaketere-limitera heldu zara","More items …":"Elementu gehiago …",Next:"Hurrengoa","No emoji found":"Ez da emojirik aurkitu","No results":"Emaitzarik ez",Objects:"Objektuak",Open:"Ireki",'Open link to "{resourceTitle}"':'Ireki esteka: "{resourceTitle}"',"Open navigation":"Ireki nabigazioa","Password is secure":"Pasahitza segurua da","Pause slideshow":"Pausatu diaporama","People & Body":"Jendea eta gorputza","Pick an emoji":"Hautatu emoji bat","Please select a time zone:":"Mesedez hautatu ordu-zona bat:",Previous:"Aurrekoa","Related resources":"Erlazionatutako baliabideak",Search:"Bilatu","Search results":"Bilaketa emaitzak","Select a tag":"Hautatu etiketa bat",Settings:"Ezarpenak","Settings navigation":"Nabigazio ezarpenak","Show password":"Erakutsi pasahitza","Smileys & Emotion":"Smileyak eta emozioa","Start slideshow":"Hasi diaporama",Submit:"Bidali",Symbols:"Sinboloak","Travel & Places":"Bidaiak eta lekuak","Type to search time zone":"Idatzi ordu-zona bat bilatzeko","Unable to search the group":"Ezin izan da taldea bilatu","Undo changes":"Aldaketak desegin",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Idatzi mezua, erabili "@" norbait aipatzeko, erabili ":" emojiak automatikoki osatzeko...'}},{locale:"fi_FI",translations:{"{tag} (invisible)":"{tag} (näkymätön)","{tag} (restricted)":"{tag} (rajoitettu)",Actions:"Toiminnot",Activities:"Aktiviteetit","Animals & Nature":"Eläimet & luonto","Avatar of {displayName}":"Käyttäjän {displayName} avatar","Avatar of {displayName}, {status}":"Käyttäjän {displayName} avatar, {status}","Cancel changes":"Peruuta muutokset",Choose:"Valitse",Close:"Sulje","Close navigation":"Sulje navigaatio","Confirm changes":"Vahvista muutokset",Custom:"Mukautettu","Edit item":"Muokkaa kohdetta","External documentation for {title}":"Ulkoinen dokumentaatio kohteelle {title}",Flags:"Liput","Food & Drink":"Ruoka & juoma","Frequently used":"Usein käytetyt",Global:"Yleinen","Go back to the list":"Siirry takaisin listaan","Message limit of {count} characters reached":"Viestin merkken enimmäisimäärä {count} täynnä ",Next:"Seuraava","No emoji found":"Emojia ei löytynyt","No results":"Ei tuloksia",Objects:"Esineet & asiat","Open navigation":"Avaa navigaatio","Pause slideshow":"Keskeytä diaesitys","People & Body":"Ihmiset & keho","Pick an emoji":"Valitse emoji","Please select a time zone:":"Valitse aikavyöhyke:",Previous:"Edellinen",Search:"Etsi","Search results":"Hakutulokset","Select a tag":"Valitse tagi",Settings:"Asetukset","Settings navigation":"Asetusnavigaatio","Smileys & Emotion":"Hymiöt & tunteet","Start slideshow":"Aloita diaesitys",Submit:"Lähetä",Symbols:"Symbolit","Travel & Places":"Matkustus & kohteet","Type to search time zone":"Kirjoita etsiäksesi aikavyöhyke","Unable to search the group":"Ryhmää ei voi hakea","Undo changes":"Kumoa muutokset","Write message, @ to mention someone, : for emoji autocompletion …":"Kirjoita viesti, @ mainitaksesi käyttäjän, : emojin automaattitäydennykseen…"}},{locale:"fr",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restreint)",Actions:"Actions",Activities:"Activités","Animals & Nature":"Animaux & Nature","Anything shared with the same group of people will show up here":"Tout ce qui est partagé avec le même groupe de personnes apparaîtra ici","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Annuler les modifications","Change title":"Modifier le titre",Choose:"Choisir","Clear text":"Effacer le texte",Close:"Fermer","Close modal":"Fermer la fenêtre","Close navigation":"Fermer la navigation","Close sidebar":"Fermer la barre latérale","Confirm changes":"Confirmer les modifications",Custom:"Personnalisé","Edit item":"Éditer l'élément","Error getting related resources":"Erreur à la récupération des ressources liées","Error parsing svg":"Erreur d'analyse SVG","External documentation for {title}":"Documentation externe pour {title}",Favorite:"Favori",Flags:"Drapeaux","Food & Drink":"Nourriture & Boissons","Frequently used":"Utilisés fréquemment",Global:"Global","Go back to the list":"Retourner à la liste","Hide password":"Cacher le mot de passe","Message limit of {count} characters reached":"Limite de messages de {count} caractères atteinte","More items …":"Plus d'éléments...",Next:"Suivant","No emoji found":"Pas d’émoji trouvé","No results":"Aucun résultat",Objects:"Objets",Open:"Ouvrir",'Open link to "{resourceTitle}"':'Ouvrir le lien vers "{resourceTitle}"',"Open navigation":"Ouvrir la navigation","Password is secure":"Le mot de passe est sécurisé","Pause slideshow":"Mettre le diaporama en pause","People & Body":"Personnes & Corps","Pick an emoji":"Choisissez un émoji","Please select a time zone:":"Sélectionnez un fuseau horaire : ",Previous:"Précédent","Related resources":"Ressources liées",Search:"Chercher","Search results":"Résultats de recherche","Select a tag":"Sélectionnez une balise",Settings:"Paramètres","Settings navigation":"Navigation dans les paramètres","Show password":"Afficher le mot de passe","Smileys & Emotion":"Smileys & Émotions","Start slideshow":"Démarrer le diaporama",Submit:"Valider",Symbols:"Symboles","Travel & Places":"Voyage & Lieux","Type to search time zone":"Saisissez les premiers lettres pour rechercher un fuseau horaire","Unable to search the group":"Impossible de chercher le groupe","Undo changes":"Annuler les changements",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Écrire un message, utiliser "@" pour mentionner une personne, ":" pour l\'autocomplétion des émojis...'}},{locale:"gl",translations:{"{tag} (invisible)":"{tag} (invisíbel)","{tag} (restricted)":"{tag} (restrinxido)",Actions:"Accións",Activities:"Actividades","Animals & Nature":"Animais e natureza","Cancel changes":"Cancelar os cambios",Choose:"Escoller",Close:"Pechar","Confirm changes":"Confirma os cambios",Custom:"Personalizado","External documentation for {title}":"Documentación externa para {title}",Flags:"Bandeiras","Food & Drink":"Comida e bebida","Frequently used":"Usado con frecuencia","Message limit of {count} characters reached":"Acadouse o límite de {count} caracteres por mensaxe",Next:"Seguinte","No emoji found":"Non se atopou ningún «emoji»","No results":"Sen resultados",Objects:"Obxectos","Pause slideshow":"Pausar o diaporama","People & Body":"Persoas e corpo","Pick an emoji":"Escolla un «emoji»",Previous:"Anterir",Search:"Buscar","Search results":"Resultados da busca","Select a tag":"Seleccione unha etiqueta",Settings:"Axustes","Settings navigation":"Navegación polos axustes","Smileys & Emotion":"Sorrisos e emocións","Start slideshow":"Iniciar o diaporama",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viaxes e lugares","Unable to search the group":"Non foi posíbel buscar o grupo","Write message, @ to mention someone …":"Escriba a mensaxe, @ para mencionar a alguén…"}},{locale:"he",translations:{"{tag} (invisible)":"{tag} (נסתר)","{tag} (restricted)":"{tag} (מוגבל)",Actions:"פעולות",Activities:"פעילויות","Animals & Nature":"חיות וטבע",Choose:"בחירה",Close:"סגירה",Custom:"בהתאמה אישית",Flags:"דגלים","Food & Drink":"מזון ומשקאות","Frequently used":"בשימוש תדיר",Next:"הבא","No emoji found":"לא נמצא אמוג׳י","No results":"אין תוצאות",Objects:"חפצים","Pause slideshow":"השהיית מצגת","People & Body":"אנשים וגוף","Pick an emoji":"נא לבחור אמוג׳י",Previous:"הקודם",Search:"חיפוש","Search results":"תוצאות חיפוש","Select a tag":"בחירת תגית",Settings:"הגדרות","Smileys & Emotion":"חייכנים ורגשונים","Start slideshow":"התחלת המצגת",Symbols:"סמלים","Travel & Places":"טיולים ומקומות","Unable to search the group":"לא ניתן לחפש בקבוצה"}},{locale:"hu_HU",translations:{"{tag} (invisible)":"{tag} (láthatatlan)","{tag} (restricted)":"{tag} (korlátozott)",Actions:"Műveletek",Activities:"Tevékenységek","Animals & Nature":"Állatok és természet","Anything shared with the same group of people will show up here":"Minden, amit ugyanazzal a csoporttal oszt meg, itt fog megjelenni","Avatar of {displayName}":"{displayName} profilképe","Avatar of {displayName}, {status}":"{displayName} profilképe, {status}","Cancel changes":"Változtatások elvetése","Change title":"Cím megváltoztatása",Choose:"Válassszon","Clear text":"Szöveg törlése",Close:"Bezárás","Close modal":"Ablak bezárása","Close navigation":"Navigáció bezárása","Close sidebar":"Oldalsáv bezárása","Confirm changes":"Változtatások megerősítése",Custom:"Egyéni","Edit item":"Elem szerkesztése","Error getting related resources":"Hiba a kapcsolódó erőforrások lekérésekor","Error parsing svg":"Hiba az SVG feldolgozásakor","External documentation for {title}":"Külső dokumentáció ehhez: {title}",Favorite:"Kedvenc",Flags:"Zászlók","Food & Drink":"Étel és ital","Frequently used":"Gyakran használt",Global:"Globális","Go back to the list":"Ugrás vissza a listához","Hide password":"Jelszó elrejtése","Message limit of {count} characters reached":"{count} karakteres üzenetkorlát elérve","More items …":"További elemek...",Next:"Következő","No emoji found":"Nem található emodzsi","No results":"Nincs találat",Objects:"Tárgyak",Open:"Megnyitás",'Open link to "{resourceTitle}"':"A(z) „{resourceTitle}” hivatkozásának megnyitása","Open navigation":"Navigáció megnyitása","Password is secure":"A jelszó biztonságos","Pause slideshow":"Diavetítés szüneteltetése","People & Body":"Emberek és test","Pick an emoji":"Válasszon egy emodzsit","Please select a time zone:":"Válasszon időzónát:",Previous:"Előző","Related resources":"Kapcsolódó erőforrások",Search:"Keresés","Search results":"Találatok","Select a tag":"Válasszon címkét",Settings:"Beállítások","Settings navigation":"Navigáció a beállításokban","Show password":"Jelszó megjelenítése","Smileys & Emotion":"Mosolyok és érzelmek","Start slideshow":"Diavetítés indítása",Submit:"Beküldés",Symbols:"Szimbólumok","Travel & Places":"Utazás és helyek","Type to search time zone":"Gépeljen az időzóna kereséséhez","Unable to search the group":"A csoport nem kereshető","Undo changes":"Változtatások visszavonása",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Írjon egy üzenetet, használja a „@”-ot valaki megemlítéséhet, illetve a „:”-ot az emodzsik automatikus kiegészítéséhez…"}},{locale:"is",translations:{"{tag} (invisible)":"{tag} (ósýnilegt)","{tag} (restricted)":"{tag} (takmarkað)",Actions:"Aðgerðir",Activities:"Aðgerðir","Animals & Nature":"Dýr og náttúra",Choose:"Velja",Close:"Loka",Custom:"Sérsniðið",Flags:"Flögg","Food & Drink":"Matur og drykkur","Frequently used":"Oftast notað",Next:"Næsta","No emoji found":"Ekkert tjáningartákn fannst","No results":"Engar niðurstöður",Objects:"Hlutir","Pause slideshow":"Gera hlé á skyggnusýningu","People & Body":"Fólk og líkami","Pick an emoji":"Veldu tjáningartákn",Previous:"Fyrri",Search:"Leita","Search results":"Leitarniðurstöður","Select a tag":"Veldu merki",Settings:"Stillingar","Smileys & Emotion":"Broskallar og tilfinningar","Start slideshow":"Byrja skyggnusýningu",Symbols:"Tákn","Travel & Places":"Staðir og ferðalög","Unable to search the group":"Get ekki leitað í hópnum"}},{locale:"it",translations:{"{tag} (invisible)":"{tag} (invisibile)","{tag} (restricted)":"{tag} (limitato)",Actions:"Azioni",Activities:"Attività","Animals & Nature":"Animali e natura","Anything shared with the same group of people will show up here":"Tutto ciò che è stato condiviso con lo stesso gruppo di persone viene visualizzato qui","Avatar of {displayName}":"Avatar di {displayName}","Avatar of {displayName}, {status}":"Avatar di {displayName}, {status}","Cancel changes":"Annulla modifiche","Change title":"Modifica il titolo",Choose:"Scegli","Clear text":"Cancella il testo",Close:"Chiudi","Close modal":"Chiudi il messaggio modale","Close navigation":"Chiudi la navigazione","Close sidebar":"Chiudi la barra laterale","Confirm changes":"Conferma modifiche",Custom:"Personalizzato","Edit item":"Modifica l'elemento","Error getting related resources":"Errore nell'ottenere risorse correlate","Error parsing svg":"Errore nell'analizzare l'svg","External documentation for {title}":"Documentazione esterna per {title}",Favorite:"Preferito",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente",Global:"Globale","Go back to the list":"Torna all'elenco","Hide password":"Nascondi la password","Message limit of {count} characters reached":"Limite dei messaggi di {count} caratteri raggiunto","More items …":"Più elementi ...",Next:"Successivo","No emoji found":"Nessun emoji trovato","No results":"Nessun risultato",Objects:"Oggetti",Open:"Apri",'Open link to "{resourceTitle}"':'Apri il link a "{resourceTitle}"',"Open navigation":"Apri la navigazione","Password is secure":"La password è sicura","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji","Please select a time zone:":"Si prega di selezionare un fuso orario:",Previous:"Precedente","Related resources":"Risorse correlate",Search:"Cerca","Search results":"Risultati di ricerca","Select a tag":"Seleziona un'etichetta",Settings:"Impostazioni","Settings navigation":"Navigazione delle impostazioni","Show password":"Mostra la password","Smileys & Emotion":"Faccine ed emozioni","Start slideshow":"Avvia presentazione",Submit:"Invia",Symbols:"Simboli","Travel & Places":"Viaggi e luoghi","Type to search time zone":"Digita per cercare un fuso orario","Unable to search the group":"Impossibile cercare il gruppo","Undo changes":"Cancella i cambiamenti",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrivi un messaggio, "@" per menzionare qualcuno, ":" per il completamento automatico delle emoji ...'}},{locale:"ja_JP",translations:{"{tag} (invisible)":"{タグ} (不可視)","{tag} (restricted)":"{タグ} (制限付)",Actions:"操作",Activities:"アクティビティ","Animals & Nature":"動物と自然","Anything shared with the same group of people will show up here":"同じグループで共有しているものは、全てここに表示されます","Avatar of {displayName}":"{displayName} のアバター","Avatar of {displayName}, {status}":"{displayName}, {status} のアバター","Cancel changes":"変更をキャンセル","Change title":"タイトルを変更",Choose:"選択","Clear text":"テキストをクリア",Close:"閉じる","Close modal":"モーダルを閉じる","Close navigation":"ナビゲーションを閉じる","Close sidebar":"サイドバーを閉じる","Confirm changes":"変更を承認",Custom:"カスタム","Edit item":"編集","Error getting related resources":"関連リソースの取得エラー","Error parsing svg":"svgの解析エラー","External documentation for {title}":"{title} のための添付文書",Favorite:"お気に入り",Flags:"国旗","Food & Drink":"食べ物と飲み物","Frequently used":"よく使うもの",Global:"全体","Go back to the list":"リストに戻る","Hide password":"パスワードを非表示","Message limit of {count} characters reached":"{count} 文字のメッセージ上限に達しています","More items …":"他のアイテム",Next:"次","No emoji found":"絵文字が見つかりません","No results":"なし",Objects:"物",Open:"開く",'Open link to "{resourceTitle}"':'"{resourceTitle}"のリンクを開く',"Open navigation":"ナビゲーションを開く","Password is secure":"パスワードは保護されています","Pause slideshow":"スライドショーを一時停止","People & Body":"様々な人と体の部位","Pick an emoji":"絵文字を選択","Please select a time zone:":"タイムゾーンを選んで下さい:",Previous:"前","Related resources":"関連リソース",Search:"検索","Search results":"検索結果","Select a tag":"タグを選択",Settings:"設定","Settings navigation":"ナビゲーション設定","Show password":"パスワードを表示","Smileys & Emotion":"感情表現","Start slideshow":"スライドショーを開始",Submit:"提出",Symbols:"記号","Travel & Places":"旅行と場所","Type to search time zone":"タイムゾーン検索のため入力してください","Unable to search the group":"グループを検索できません","Undo changes":"変更を取り消し",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'メッセージを記入、"@"でメンション、":"で絵文字の自動補完 ...'}},{locale:"lt_LT",translations:{"{tag} (invisible)":"{tag} (nematoma)","{tag} (restricted)":"{tag} (apribota)",Actions:"Veiksmai",Activities:"Veiklos","Animals & Nature":"Gyvūnai ir gamta",Choose:"Pasirinkti",Close:"Užverti",Custom:"Tinkinti","External documentation for {title}":"Išorinė {title} dokumentacija",Flags:"Vėliavos","Food & Drink":"Maistas ir gėrimai","Frequently used":"Dažniausiai naudoti","Message limit of {count} characters reached":"Pasiekta {count} simbolių žinutės riba",Next:"Kitas","No emoji found":"Nerasta jaustukų","No results":"Nėra rezultatų",Objects:"Objektai","Pause slideshow":"Pristabdyti skaidrių rodymą","People & Body":"Žmonės ir kūnas","Pick an emoji":"Pasirinkti jaustuką",Previous:"Ankstesnis",Search:"Ieškoti","Search results":"Paieškos rezultatai","Select a tag":"Pasirinkti žymę",Settings:"Nustatymai","Settings navigation":"Naršymas nustatymuose","Smileys & Emotion":"Šypsenos ir emocijos","Start slideshow":"Pradėti skaidrių rodymą",Submit:"Pateikti",Symbols:"Simboliai","Travel & Places":"Kelionės ir vietos","Unable to search the group":"Nepavyko atlikti paiešką grupėje","Write message, @ to mention someone …":"Rašykite žinutę, naudokite @ norėdami kažką paminėti…"}},{locale:"lv",translations:{"{tag} (invisible)":"{tag} (neredzams)","{tag} (restricted)":"{tag} (ierobežots)",Choose:"Izvēlēties",Close:"Aizvērt",Next:"Nākamais","No results":"Nav rezultātu","Pause slideshow":"Pauzēt slaidrādi",Previous:"Iepriekšējais","Select a tag":"Izvēlēties birku",Settings:"Iestatījumi","Start slideshow":"Sākt slaidrādi"}},{locale:"mk",translations:{"{tag} (invisible)":"{tag} (невидливо)","{tag} (restricted)":"{tag} (ограничено)",Actions:"Акции",Activities:"Активности","Animals & Nature":"Животни & Природа","Avatar of {displayName}":"Аватар на {displayName}","Avatar of {displayName}, {status}":"Аватар на {displayName}, {status}","Cancel changes":"Откажи ги промените","Change title":"Промени наслов",Choose:"Избери",Close:"Затвори","Close modal":"Затвори модал","Close navigation":"Затвори навигација","Confirm changes":"Потврди ги промените",Custom:"Прилагодени","Edit item":"Уреди","External documentation for {title}":"Надворешна документација за {title}",Favorite:"Фаворити",Flags:"Знамиња","Food & Drink":"Храна & Пијалоци","Frequently used":"Најчесто користени",Global:"Глобално","Go back to the list":"Врати се на листата",items:"ставки","Message limit of {count} characters reached":"Ограничувањето на должината на пораката од {count} карактери е надминато","More {dashboardItemType} …":"Повеќе {dashboardItemType} …",Next:"Следно","No emoji found":"Не се пронајдени емотикони","No results":"Нема резултати",Objects:"Објекти",Open:"Отвори","Open navigation":"Отвори навигација","Pause slideshow":"Пузирај слајдшоу","People & Body":"Луѓе & Тело","Pick an emoji":"Избери емотикон","Please select a time zone:":"Изберете временска зона:",Previous:"Предходно",Search:"Барај","Search results":"Резултати од барувањето","Select a tag":"Избери ознака",Settings:"Параметри","Settings navigation":"Параметри за навигација","Smileys & Emotion":"Смешковци & Емотикони","Start slideshow":"Стартувај слајдшоу",Submit:"Испрати",Symbols:"Симболи","Travel & Places":"Патувања & Места","Type to search time zone":"Напишете за да пребарате временска зона","Unable to search the group":"Неможе да се принајде групата","Undo changes":"Врати ги промените","Write message, @ to mention someone, : for emoji autocompletion …":"Напиши порака, @ за да спомнете некого, : за емотинони автоатско комплетирање ..."}},{locale:"my",translations:{"{tag} (invisible)":"{tag} (ကွယ်ဝှက်ထား)","{tag} (restricted)":"{tag} (ကန့်သတ်)",Actions:"လုပ်ဆောင်ချက်များ",Activities:"ပြုလုပ်ဆောင်တာများ","Animals & Nature":"တိရစ္ဆာန်များနှင့် သဘာဝ","Avatar of {displayName}":"{displayName} ၏ ကိုယ်ပွား","Cancel changes":"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်",Choose:"ရွေးချယ်ရန်",Close:"ပိတ်ရန်","Confirm changes":"ပြောင်းလဲမှုများ အတည်ပြုရန်",Custom:"အလိုကျချိန်ညှိမှု","External documentation for {title}":"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း",Flags:"အလံများ","Food & Drink":"အစားအသောက်","Frequently used":"မကြာခဏအသုံးပြုသော",Global:"ကမ္ဘာလုံးဆိုင်ရာ","Message limit of {count} characters reached":"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ",Next:"နောက်သို့ဆက်ရန်","No emoji found":"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ","No results":"ရလဒ်မရှိပါ",Objects:"အရာဝတ္ထုများ","Pause slideshow":"စလိုက်ရှိုး ခေတ္တရပ်ရန်","People & Body":"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်","Pick an emoji":"အီမိုဂျီရွေးရန်","Please select a time zone:":"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ",Previous:"ယခင်",Search:"ရှာဖွေရန်","Search results":"ရှာဖွေမှု ရလဒ်များ","Select a tag":"tag ရွေးချယ်ရန်",Settings:"ချိန်ညှိချက်များ","Settings navigation":"ချိန်ညှိချက်အညွှန်း","Smileys & Emotion":"စမိုင်လီများနှင့် အီမိုရှင်း","Start slideshow":"စလိုက်ရှိုးအား စတင်ရန်",Submit:"တင်သွင်းရန်",Symbols:"သင်္ကေတများ","Travel & Places":"ခရီးသွားလာခြင်းနှင့် နေရာများ","Type to search time zone":"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ","Unable to search the group":"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ","Write message, @ to mention someone …":"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်..."}},{locale:"nb_NO",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (beskyttet)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr og natur","Anything shared with the same group of people will show up here":"Alt som er delt med den samme gruppen vil vises her","Avatar of {displayName}":"Avataren til {displayName}","Avatar of {displayName}, {status}":"{displayName}'s avatar, {status}","Cancel changes":"Avbryt endringer","Change title":"Endre tittel",Choose:"Velg","Clear text":"Fjern tekst",Close:"Lukk","Close modal":"Lukk modal","Close navigation":"Lukk navigasjon","Close sidebar":"Lukk sidepanel","Confirm changes":"Bekreft endringer",Custom:"Tilpasset","Edit item":"Rediger","Error getting related resources":"Feil ved henting av relaterte ressurser","Error parsing svg":"Feil ved parsing av svg","External documentation for {title}":"Ekstern dokumentasjon for {title}",Favorite:"Favoritt",Flags:"Flagg","Food & Drink":"Mat og drikke","Frequently used":"Ofte brukt",Global:"Global","Go back to the list":"Gå tilbake til listen","Hide password":"Skjul passord","Message limit of {count} characters reached":"Karakter begrensing {count} nådd i melding","More items …":"Flere gjenstander...",Next:"Neste","No emoji found":"Fant ingen emoji","No results":"Ingen resultater",Objects:"Objekter",Open:"Åpne",'Open link to "{resourceTitle}"':'Åpne link til "{resourceTitle}"',"Open navigation":"Åpne navigasjon","Password is secure":"Passordet er sikkert","Pause slideshow":"Pause lysbildefremvisning","People & Body":"Mennesker og kropp","Pick an emoji":"Velg en emoji","Please select a time zone:":"Vennligst velg tidssone",Previous:"Forrige","Related resources":"Relaterte ressurser",Search:"Søk","Search results":"Søkeresultater","Select a tag":"Velg en merkelapp",Settings:"Innstillinger","Settings navigation":"Navigasjonsinstillinger","Show password":"Vis passord","Smileys & Emotion":"Smilefjes og følelser","Start slideshow":"Start lysbildefremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Reise og steder","Type to search time zone":"Tast for å søke etter tidssone","Unable to search the group":"Kunne ikke søke i gruppen","Undo changes":"Tilbakestill endringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv melding, bruk "@" for å nevne noen, bruk ":" for autofullføring av emoji...'}},{locale:"nl",translations:{"{tag} (invisible)":"{tag} (onzichtbaar)","{tag} (restricted)":"{tag} (beperkt)",Actions:"Acties",Activities:"Activiteiten","Animals & Nature":"Dieren & Natuur","Avatar of {displayName}":"Avatar van {displayName}","Avatar of {displayName}, {status}":"Avatar van {displayName}, {status}","Cancel changes":"Wijzigingen annuleren",Choose:"Kies",Close:"Sluiten","Close navigation":"Navigatie sluiten","Confirm changes":"Wijzigingen bevestigen",Custom:"Aangepast","Edit item":"Item bewerken","External documentation for {title}":"Externe documentatie voor {title}",Flags:"Vlaggen","Food & Drink":"Eten & Drinken","Frequently used":"Vaak gebruikt",Global:"Globaal","Go back to the list":"Ga terug naar de lijst","Message limit of {count} characters reached":"Berichtlimiet van {count} karakters bereikt",Next:"Volgende","No emoji found":"Geen emoji gevonden","No results":"Geen resultaten",Objects:"Objecten","Open navigation":"Navigatie openen","Pause slideshow":"Pauzeer diavoorstelling","People & Body":"Mensen & Lichaam","Pick an emoji":"Kies een emoji","Please select a time zone:":"Selecteer een tijdzone:",Previous:"Vorige",Search:"Zoeken","Search results":"Zoekresultaten","Select a tag":"Selecteer een label",Settings:"Instellingen","Settings navigation":"Instellingen navigatie","Smileys & Emotion":"Smileys & Emotie","Start slideshow":"Start diavoorstelling",Submit:"Verwerken",Symbols:"Symbolen","Travel & Places":"Reizen & Plaatsen","Type to search time zone":"Type om de tijdzone te zoeken","Unable to search the group":"Kan niet in de groep zoeken","Undo changes":"Wijzigingen ongedaan maken","Write message, @ to mention someone, : for emoji autocompletion …":"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ..."}},{locale:"oc",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (limit)",Actions:"Accions",Choose:"Causir",Close:"Tampar",Next:"Seguent","No results":"Cap de resultat","Pause slideshow":"Metre en pausa lo diaporama",Previous:"Precedent","Select a tag":"Seleccionar una etiqueta",Settings:"Paramètres","Start slideshow":"Lançar lo diaporama"}},{locale:"pl",translations:{"{tag} (invisible)":"{tag} (niewidoczna)","{tag} (restricted)":"{tag} (ograniczona)",Actions:"Działania",Activities:"Aktywność","Animals & Nature":"Zwierzęta i natura","Anything shared with the same group of people will show up here":"Tutaj pojawi się wszystko, co zostało udostępnione tej samej grupie osób","Avatar of {displayName}":"Awatar {displayName}","Avatar of {displayName}, {status}":"Awatar {displayName}, {status}","Cancel changes":"Anuluj zmiany","Change title":"Zmień tytuł",Choose:"Wybierz","Clear text":"Wyczyść tekst",Close:"Zamknij","Close modal":"Zamknij modal","Close navigation":"Zamknij nawigację","Close sidebar":"Zamknij pasek boczny","Confirm changes":"Potwierdź zmiany",Custom:"Zwyczajne","Edit item":"Edytuj element","Error getting related resources":"Błąd podczas pobierania powiązanych zasobów","Error parsing svg":"Błąd podczas analizowania svg","External documentation for {title}":"Dokumentacja zewnętrzna dla {title}",Favorite:"Ulubiony",Flags:"Flagi","Food & Drink":"Jedzenie i picie","Frequently used":"Często używane",Global:"Globalnie","Go back to the list":"Powrót do listy","Hide password":"Ukryj hasło","Message limit of {count} characters reached":"Przekroczono limit wiadomości wynoszący {count} znaków","More items …":"Więcej pozycji…",Next:"Następny","No emoji found":"Nie znaleziono emoji","No results":"Brak wyników",Objects:"Obiekty",Open:"Otwórz",'Open link to "{resourceTitle}"':'Otwórz link do "{resourceTitle}"',"Open navigation":"Otwórz nawigację","Password is secure":"Hasło jest bezpieczne","Pause slideshow":"Wstrzymaj pokaz slajdów","People & Body":"Ludzie i ciało","Pick an emoji":"Wybierz emoji","Please select a time zone:":"Wybierz strefę czasową:",Previous:"Poprzedni","Related resources":"Powiązane zasoby",Search:"Szukaj","Search results":"Wyniki wyszukiwania","Select a tag":"Wybierz etykietę",Settings:"Ustawienia","Settings navigation":"Ustawienia nawigacji","Show password":"Pokaż hasło","Smileys & Emotion":"Buźki i emotikony","Start slideshow":"Rozpocznij pokaz slajdów",Submit:"Wyślij",Symbols:"Symbole","Travel & Places":"Podróże i miejsca","Type to search time zone":"Wpisz, aby wyszukać strefę czasową","Unable to search the group":"Nie można przeszukać grupy","Undo changes":"Cofnij zmiany",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Napisz wiadomość, "@" aby o kimś wspomnieć, ":" dla autouzupełniania emoji…'}},{locale:"pt_BR",translations:{"{tag} (invisible)":"{tag} (invisível)","{tag} (restricted)":"{tag} (restrito) ",Actions:"Ações",Activities:"Atividades","Animals & Nature":"Animais & Natureza","Anything shared with the same group of people will show up here":"Qualquer coisa compartilhada com o mesmo grupo de pessoas aparecerá aqui","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar alterações","Change title":"Alterar título",Choose:"Escolher","Clear text":"Limpar texto",Close:"Fechar","Close modal":"Fechar modal","Close navigation":"Fechar navegação","Close sidebar":"Fechar barra lateral","Confirm changes":"Confirmar alterações",Custom:"Personalizado","Edit item":"Editar item","Error getting related resources":"Erro ao obter recursos relacionados","Error parsing svg":"Erro ao analisar svg","External documentation for {title}":"Documentação externa para {title}",Favorite:"Favorito",Flags:"Bandeiras","Food & Drink":"Comida & Bebida","Frequently used":"Mais usados",Global:"Global","Go back to the list":"Volte para a lista","Hide password":"Ocultar a senha","Message limit of {count} characters reached":"Limite de mensagem de {count} caracteres atingido","More items …":"Mais itens …",Next:"Próximo","No emoji found":"Nenhum emoji encontrado","No results":"Sem resultados",Objects:"Objetos",Open:"Aberto",'Open link to "{resourceTitle}"':'Abrir link para "{resourceTitle}"',"Open navigation":"Abrir navegação","Password is secure":"A senha é segura","Pause slideshow":"Pausar apresentação de slides","People & Body":"Pessoas & Corpo","Pick an emoji":"Escolha um emoji","Please select a time zone:":"Selecione um fuso horário: ",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Pesquisar","Search results":"Resultados da pesquisa","Select a tag":"Selecionar uma tag",Settings:"Configurações","Settings navigation":"Navegação de configurações","Show password":"Mostrar senha","Smileys & Emotion":"Smiles & Emoções","Start slideshow":"Iniciar apresentação de slides",Submit:"Enviar",Symbols:"Símbolo","Travel & Places":"Viagem & Lugares","Type to search time zone":"Digite para pesquisar o fuso horário ","Unable to search the group":"Não foi possível pesquisar o grupo","Undo changes":"Desfazer modificações",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escreva mensagens, use "@" para mencionar algum, use ":" for autocompletar emoji …'}},{locale:"pt_PT",translations:{"{tag} (invisible)":"{tag} (invisivel)","{tag} (restricted)":"{tag} (restrito)",Actions:"Ações",Choose:"Escolher",Close:"Fechar",Next:"Seguinte","No results":"Sem resultados","Pause slideshow":"Pausar diaporama",Previous:"Anterior","Select a tag":"Selecionar uma etiqueta",Settings:"Definições","Start slideshow":"Iniciar diaporama","Unable to search the group":"Não é possível pesquisar o grupo"}},{locale:"ro",translations:{"{tag} (invisible)":"{tag} (invizibil)","{tag} (restricted)":"{tag} (restricționat)",Actions:"Acțiuni",Activities:"Activități","Animals & Nature":"Animale și natură","Anything shared with the same group of people will show up here":"Tot ceea ce este partajat cu același grup de persoane va fi afișat aici","Avatar of {displayName}":"Avatarul lui {displayName}","Avatar of {displayName}, {status}":"Avatarul lui {displayName}, {status}","Cancel changes":"Anulează modificările","Change title":"Modificați titlul",Choose:"Alegeți","Clear text":"Șterge textul",Close:"Închideți","Close modal":"Închideți modulul","Close navigation":"Închideți navigarea","Close sidebar":"Închide bara laterală","Confirm changes":"Confirmați modificările",Custom:"Personalizat","Edit item":"Editați elementul","Error getting related resources":" Eroare la returnarea resurselor legate","Error parsing svg":"Eroare de analizare a svg","External documentation for {title}":"Documentație externă pentru {title}",Favorite:"Favorit",Flags:"Marcaje","Food & Drink":"Alimente și băuturi","Frequently used":"Utilizate frecvent",Global:"Global","Go back to the list":"Întoarceți-vă la listă","Hide password":"Ascunde parola","Message limit of {count} characters reached":"Limita mesajului de {count} caractere a fost atinsă","More items …":"Mai multe articole ...",Next:"Următorul","No emoji found":"Nu s-a găsit niciun emoji","No results":"Nu există rezultate",Objects:"Obiecte",Open:"Deschideți",'Open link to "{resourceTitle}"':'Deschide legătura la "{resourceTitle}"',"Open navigation":"Deschideți navigația","Password is secure":"Parola este sigură","Pause slideshow":"Pauză prezentare de diapozitive","People & Body":"Oameni și corp","Pick an emoji":"Alege un emoji","Please select a time zone:":"Vă rugăm să selectați un fus orar:",Previous:"Anterior","Related resources":"Resurse legate",Search:"Căutare","Search results":"Rezultatele căutării","Select a tag":"Selectați o etichetă",Settings:"Setări","Settings navigation":"Navigare setări","Show password":"Arată parola","Smileys & Emotion":"Zâmbete și emoții","Start slideshow":"Începeți prezentarea de diapozitive",Submit:"Trimiteți",Symbols:"Simboluri","Travel & Places":"Călătorii și locuri","Type to search time zone":"Tastați pentru a căuta fusul orar","Unable to search the group":"Imposibilitatea de a căuta în grup","Undo changes":"Anularea modificărilor",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrie un mesaj, folosește "@" pentru a menționa pe cineva, folosește ":" pentru autocompletarea cu emoji ...'}},{locale:"ru",translations:{"{tag} (invisible)":"{tag} (невидимое)","{tag} (restricted)":"{tag} (ограниченное)",Actions:"Действия ",Activities:"События","Animals & Nature":"Животные и природа ","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Фотография {displayName}, {status}","Cancel changes":"Отменить изменения",Choose:"Выберите",Close:"Закрыть","Close modal":"Закрыть модальное окно","Close navigation":"Закрыть навигацию","Confirm changes":"Подтвердить изменения",Custom:"Пользовательское","Edit item":"Изменить элемент","External documentation for {title}":"Внешняя документация для {title}",Flags:"Флаги","Food & Drink":"Еда, напиток","Frequently used":"Часто используемый",Global:"Глобальный","Go back to the list":"Вернуться к списку",items:"элементов","Message limit of {count} characters reached":"Достигнуто ограничение на количество символов в {count}","More {dashboardItemType} …":"Больше {dashboardItemType} …",Next:"Следующее","No emoji found":"Эмодзи не найдено","No results":"Результаты отсуствуют",Objects:"Объекты",Open:"Открыть","Open navigation":"Открыть навигацию","Pause slideshow":"Приостановить показ слйдов","People & Body":"Люди и тело","Pick an emoji":"Выберите эмодзи","Please select a time zone:":"Пожалуйста, выберите часовой пояс:",Previous:"Предыдущее",Search:"Поиск","Search results":"Результаты поиска","Select a tag":"Выберите метку",Settings:"Параметры","Settings navigation":"Навигация по настройкам","Smileys & Emotion":"Смайлики и эмоции","Start slideshow":"Начать показ слайдов",Submit:"Утвердить",Symbols:"Символы","Travel & Places":"Путешествия и места","Type to search time zone":"Введите для поиска часового пояса","Unable to search the group":"Невозможно найти группу","Undo changes":"Отменить изменения","Write message, @ to mention someone, : for emoji autocompletion …":"Напишите сообщение, @ - чтобы упомянуть кого-то, : - для автозаполнения эмодзи …"}},{locale:"sk_SK",translations:{"{tag} (invisible)":"{tag} (neviditeľný)","{tag} (restricted)":"{tag} (obmedzený)",Actions:"Akcie",Activities:"Aktivity","Animals & Nature":"Zvieratá a príroda","Avatar of {displayName}":"Avatar {displayName}","Avatar of {displayName}, {status}":"Avatar {displayName}, {status}","Cancel changes":"Zrušiť zmeny",Choose:"Vybrať",Close:"Zatvoriť","Close navigation":"Zavrieť navigáciu","Confirm changes":"Potvrdiť zmeny",Custom:"Zvyk","Edit item":"Upraviť položku","External documentation for {title}":"Externá dokumentácia pre {title}",Flags:"Vlajky","Food & Drink":"Jedlo a nápoje","Frequently used":"Často používané",Global:"Globálne","Go back to the list":"Naspäť na zoznam","Message limit of {count} characters reached":"Limit správy na {count} znakov dosiahnutý",Next:"Ďalší","No emoji found":"Nenašli sa žiadne emodži","No results":"Žiadne výsledky",Objects:"Objekty","Open navigation":"Otvoriť navigáciu","Pause slideshow":"Pozastaviť prezentáciu","People & Body":"Ľudia a telo","Pick an emoji":"Vyberte si emodži","Please select a time zone:":"Prosím vyberte časovú zónu:",Previous:"Predchádzajúci",Search:"Hľadať","Search results":"Výsledky vyhľadávania","Select a tag":"Vybrať štítok",Settings:"Nastavenia","Settings navigation":"Navigácia v nastaveniach","Smileys & Emotion":"Smajlíky a emócie","Start slideshow":"Začať prezentáciu",Submit:"Odoslať",Symbols:"Symboly","Travel & Places":"Cestovanie a miesta","Type to search time zone":"Začníte písať pre vyhľadávanie časovej zóny","Unable to search the group":"Skupinu sa nepodarilo nájsť","Undo changes":"Vrátiť zmeny","Write message, @ to mention someone, : for emoji autocompletion …":"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…"}},{locale:"sl",translations:{"{tag} (invisible)":"{tag} (nevidno)","{tag} (restricted)":"{tag} (omejeno)",Actions:"Dejanja",Activities:"Dejavnosti","Animals & Nature":"Živali in Narava","Avatar of {displayName}":"Podoba {displayName}","Avatar of {displayName}, {status}":"Prikazna slika {displayName}, {status}","Cancel changes":"Prekliči spremembe","Change title":"Spremeni naziv",Choose:"Izbor","Clear text":"Počisti besedilo",Close:"Zapri","Close modal":"Zapri pojavno okno","Close navigation":"Zapri krmarjenje","Close sidebar":"Zapri stransko vrstico","Confirm changes":"Potrdi spremembe",Custom:"Po meri","Edit item":"Uredi predmet","Error getting related resources":"Napaka pridobivanja povezanih virov","External documentation for {title}":"Zunanja dokumentacija za {title}",Favorite:"Priljubljeno",Flags:"Zastavice","Food & Drink":"Hrana in Pijača","Frequently used":"Pogostost uporabe",Global:"Splošno","Go back to the list":"Vrni se na seznam","Hide password":"Skrij geslo","Message limit of {count} characters reached":"Dosežena omejitev {count} znakov na sporočilo.","More items …":"Več predmetov ...",Next:"Naslednji","No emoji found":"Ni najdenih izraznih ikon","No results":"Ni zadetkov",Objects:"Predmeti",Open:"Odpri",'Open link to "{resourceTitle}"':"Odpri povezavo do »{resourceTitle}«","Open navigation":"Odpri krmarjenje","Password is secure":"Geslo je varno","Pause slideshow":"Ustavi predstavitev","People & Body":"Ljudje in Telo","Pick a date":"Izbor datuma","Pick a date and a time":"Izbor datuma in časa","Pick a month":"Izbor meseca","Pick a time":"Izbor časa","Pick a week":"Izbor tedna","Pick a year":"Izbor leta","Pick an emoji":"Izbor izrazne ikone","Please select a time zone:":"Izbor časovnega pasu:",Previous:"Predhodni","Related resources":"Povezani viri",Search:"Iskanje","Search results":"Zadetki iskanja","Select a tag":"Izbor oznake",Settings:"Nastavitve","Settings navigation":"Krmarjenje nastavitev","Show password":"Pokaži geslo","Smileys & Emotion":"Izrazne ikone","Start slideshow":"Začni predstavitev",Submit:"Pošlji",Symbols:"Simboli","Travel & Places":"Potovanja in Kraji","Type to search time zone":"Vpišite niz za iskanje časovnega pasu","Unable to search the group":"Ni mogoče iskati po skupini","Undo changes":"Razveljavi spremembe","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite sporočilo, za omembo pred ime postavite@, začnite z : za vstavljanje izraznih ikon …"}},{locale:"sr",translations:{"{tag} (invisible)":"{tag} (nevidljivo)","{tag} (restricted)":"{tag} (ograničeno)",Actions:"Radnje",Activities:"Aktivnosti","Animals & Nature":"Životinje i Priroda","Avatar of {displayName}":"Avatar za {displayName}","Avatar of {displayName}, {status}":"Avatar za {displayName}, {status}","Cancel changes":"Otkaži izmene","Change title":"Izmeni naziv",Choose:"Изаберите",Close:"Затвори","Close modal":"Zatvori modal","Close navigation":"Zatvori navigaciju","Close sidebar":"Zatvori bočnu traku","Confirm changes":"Potvrdite promene",Custom:"Po meri","Edit item":"Uredi stavku","External documentation for {title}":"Eksterna dokumentacija za {title}",Favorite:"Omiljeni",Flags:"Zastave","Food & Drink":"Hrana i Piće","Frequently used":"Često korišćeno",Global:"Globalno","Go back to the list":"Natrag na listu",items:"stavke","Message limit of {count} characters reached":"Dostignuto je ograničenje za poruke od {count} znakova","More {dashboardItemType} …":"Više {dashboardItemType} …",Next:"Следеће","No emoji found":"Nije pronađen nijedan emodži","No results":"Нема резултата",Objects:"Objekti",Open:"Otvori","Open navigation":"Otvori navigaciju","Pause slideshow":"Паузирај слајд шоу","People & Body":"Ljudi i Telo","Pick an emoji":"Izaberi emodži","Please select a time zone:":"Molimo izaberite vremensku zonu:",Previous:"Претходно",Search:"Pretraži","Search results":"Rezultati pretrage","Select a tag":"Изаберите ознаку",Settings:"Поставке","Settings navigation":"Navigacija u podešavanjima","Smileys & Emotion":"Smajli i Emocije","Start slideshow":"Покрени слајд шоу",Submit:"Prihvati",Symbols:"Simboli","Travel & Places":"Putovanja i Mesta","Type to search time zone":"Ukucaj da pretražiš vremenske zone","Unable to search the group":"Nije moguće pretražiti grupu","Undo changes":"Poništi promene","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite poruku, @ da pomenete nekoga, : za automatsko dovršavanje emodžija…"}},{locale:"sv",translations:{"{tag} (invisible)":"{tag} (osynlig)","{tag} (restricted)":"{tag} (begränsad)",Actions:"Åtgärder",Activities:"Aktiviteter","Animals & Nature":"Djur & Natur","Anything shared with the same group of people will show up here":"Något som delats med samma grupp av personer kommer att visas här","Avatar of {displayName}":"{displayName}s avatar","Avatar of {displayName}, {status}":"{displayName}s avatar, {status}","Cancel changes":"Avbryt ändringar","Change title":"Ändra titel",Choose:"Välj","Clear text":"Ta bort text",Close:"Stäng","Close modal":"Stäng modal","Close navigation":"Stäng navigering","Close sidebar":"Stäng sidopanel","Confirm changes":"Bekräfta ändringar",Custom:"Anpassad","Edit item":"Ändra","Error getting related resources":"Problem att hämta relaterade resurser","Error parsing svg":"Fel vid inläsning av svg","External documentation for {title}":"Extern dokumentation för {title}",Favorite:"Favorit",Flags:"Flaggor","Food & Drink":"Mat & Dryck","Frequently used":"Används ofta",Global:"Global","Go back to the list":"Gå tillbaka till listan","Hide password":"Göm lössenordet","Message limit of {count} characters reached":"Meddelandegräns {count} tecken används","More items …":"Fler objekt",Next:"Nästa","No emoji found":"Hittade inga emojis","No results":"Inga resultat",Objects:"Objekt",Open:"Öppna",'Open link to "{resourceTitle}"':'Öppna länk till "{resourceTitle}"',"Open navigation":"Öppna navigering","Password is secure":"Lössenordet är säkert","Pause slideshow":"Pausa bildspelet","People & Body":"Kropp & Själ","Pick an emoji":"Välj en emoji","Please select a time zone:":"Välj tidszon:",Previous:"Föregående","Related resources":"Relaterade resurser",Search:"Sök","Search results":"Sökresultat","Select a tag":"Välj en tag",Settings:"Inställningar","Settings navigation":"Inställningsmeny","Show password":"Visa lössenordet","Smileys & Emotion":"Selfies & Känslor","Start slideshow":"Starta bildspelet",Submit:"Skicka",Symbols:"Symboler","Travel & Places":"Resor & Sevärdigheter","Type to search time zone":"Skriv för att välja tidszon","Unable to search the group":"Kunde inte söka i gruppen","Undo changes":"Ångra ändringar",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv meddelande, använd "@" för att nämna någon, använd ":" för automatiska emojiförslag ...'}},{locale:"tr",translations:{"{tag} (invisible)":"{tag} (görünmez)","{tag} (restricted)":"{tag} (kısıtlı)",Actions:"İşlemler",Activities:"Etkinlikler","Animals & Nature":"Hayvanlar ve Doğa","Anything shared with the same group of people will show up here":"Aynı kişi grubu ile paylaşılan herşey burada görüntülenir","Avatar of {displayName}":"{displayName} avatarı","Avatar of {displayName}, {status}":"{displayName}, {status} avatarı","Cancel changes":"Değişiklikleri iptal et","Change title":"Başlığı değiştir",Choose:"Seçin","Clear text":"Metni temizle",Close:"Kapat","Close modal":"Üste açılan pencereyi kapat","Close navigation":"Gezinmeyi kapat","Close sidebar":"Yan çubuğu kapat","Confirm changes":"Değişiklikleri onayla",Custom:"Özel","Edit item":"Ögeyi düzenle","Error getting related resources":"İlgili kaynaklar alınırken sorun çıktı","Error parsing svg":"svg işlenirken sorun çıktı","External documentation for {title}":"{title} için dış belgeler",Favorite:"Sık kullanılanlara ekle",Flags:"Bayraklar","Food & Drink":"Yeme ve İçme","Frequently used":"Sık kullanılanlar",Global:"Evrensel","Go back to the list":"Listeye dön","Hide password":"Parolayı gizle","Message limit of {count} characters reached":"{count} karakter ileti sınırına ulaşıldı","More items …":"Diğer ögeler…",Next:"Sonraki","No emoji found":"Herhangi bir emoji bulunamadı","No results":"Herhangi bir sonuç bulunamadı",Objects:"Nesneler",Open:"Aç",'Open link to "{resourceTitle}"':'"{resourceTitle}" bağlantısını aç',"Open navigation":"Gezinmeyi aç","Password is secure":"Parola güvenli","Pause slideshow":"Slayt sunumunu duraklat","People & Body":"İnsanlar ve Beden","Pick an emoji":"Bir emoji seçin","Please select a time zone:":"Lütfen bir saat dilimi seçin:",Previous:"Önceki","Related resources":"İlgili kaynaklar",Search:"Arama","Search results":"Arama sonuçları","Select a tag":"Bir etiket seçin",Settings:"Ayarlar","Settings navigation":"Gezinme ayarları","Show password":"Parolayı görüntüle","Smileys & Emotion":"İfadeler ve Duygular","Start slideshow":"Slayt sunumunu başlat",Submit:"Gönder",Symbols:"Simgeler","Travel & Places":"Gezi ve Yerler","Type to search time zone":"Saat dilimi aramak için yazmaya başlayın","Unable to search the group":"Grupta arama yapılamadı","Undo changes":"Değişiklikleri geri al",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'İleti yazın, birini anmak için @, otomatik emoji tamamlamak için ":" kullanın…'}},{locale:"uk",translations:{"{tag} (invisible)":"{tag} (невидимий)","{tag} (restricted)":"{tag} (обмежений)",Actions:"Дії",Activities:"Діяльність","Animals & Nature":"Тварини та природа","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Аватар {displayName}, {status}","Cancel changes":"Скасувати зміни","Change title":"Змінити назву",Choose:"ВиберітьВиберіть","Clear text":"Очистити текст",Close:"Закрити","Close modal":"Закрити модаль","Close navigation":"Закрити навігацію","Close sidebar":"Закрити бічну панель","Confirm changes":"Підтвердити зміни",Custom:"Власне","Edit item":"Редагувати елемент","External documentation for {title}":"Зовнішня документація для {title}",Favorite:"Улюблений",Flags:"Прапори","Food & Drink":"Їжа та напої","Frequently used":"Найчастіші",Global:"Глобальний","Go back to the list":"Повернутися до списку","Hide password":"Приховати пароль",items:"елементи","Message limit of {count} characters reached":"Вичерпано ліміт у {count} символів для повідомлення","More {dashboardItemType} …":"Більше {dashboardItemType}…",Next:"Вперед","No emoji found":"Емоційки відсутні","No results":"Відсутні результати",Objects:"Об'єкти",Open:"Відкрити","Open navigation":"Відкрити навігацію","Password is secure":"Пароль безпечний","Pause slideshow":"Пауза у показі слайдів","People & Body":"Люди та жести","Pick an emoji":"Виберіть емоційку","Please select a time zone:":"Виберіть часовий пояс:",Previous:"Назад",Search:"Пошук","Search results":"Результати пошуку","Select a tag":"Виберіть позначку",Settings:"Налаштування","Settings navigation":"Навігація у налаштуваннях","Show password":"Показати пароль","Smileys & Emotion":"Смайли та емоції","Start slideshow":"Почати показ слайдів",Submit:"Надіслати",Symbols:"Символи","Travel & Places":"Поїздки та місця","Type to search time zone":"Введіть для пошуку часовий пояс","Unable to search the group":"Неможливо шукати в групі","Undo changes":"Скасувати зміни","Write message, @ to mention someone, : for emoji autocompletion …":"Напишіть повідомлення, @, щоб згадати когось, : для автозаповнення емодзі…"}},{locale:"zh_CN",translations:{"{tag} (invisible)":"{tag} (不可见)","{tag} (restricted)":"{tag} (受限)",Actions:"行为",Activities:"活动","Animals & Nature":"动物 & 自然","Anything shared with the same group of people will show up here":"与同组用户分享的所有内容都会显示于此","Avatar of {displayName}":"{displayName}的头像","Avatar of {displayName}, {status}":"{displayName}的头像,{status}","Cancel changes":"取消更改","Change title":"更改标题",Choose:"选择","Clear text":"清除文本",Close:"关闭","Close modal":"关闭窗口","Close navigation":"关闭导航","Close sidebar":"关闭侧边栏","Confirm changes":"确认更改",Custom:"自定义","Edit item":"编辑项目","Error getting related resources":"获取相关资源时出错","Error parsing svg":"解析 svg 时出错","External documentation for {title}":"{title}的外部文档",Favorite:"喜爱",Flags:"旗帜","Food & Drink":"食物 & 饮品","Frequently used":"经常使用",Global:"全局","Go back to the list":"返回至列表","Hide password":"隐藏密码","Message limit of {count} characters reached":"已达到 {count} 个字符的消息限制","More items …":"更多项目…",Next:"下一个","No emoji found":"表情未找到","No results":"无结果",Objects:"物体",Open:"打开",'Open link to "{resourceTitle}"':'打开"{resourceTitle}"的连接',"Open navigation":"开启导航","Password is secure":"密码安全","Pause slideshow":"暂停幻灯片","People & Body":"人 & 身体","Pick an emoji":"选择一个表情","Please select a time zone:":"请选择一个时区:",Previous:"上一个","Related resources":"相关资源",Search:"搜索","Search results":"搜索结果","Select a tag":"选择一个标签",Settings:"设置","Settings navigation":"设置向导","Show password":"显示密码","Smileys & Emotion":"笑脸 & 情感","Start slideshow":"开始幻灯片",Submit:"提交",Symbols:"符号","Travel & Places":"旅游 & 地点","Type to search time zone":"打字以搜索时区","Unable to search the group":"无法搜索分组","Undo changes":"撤销更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'写信息,使用"@"来提及某人,使用":"进行表情符号自动完成 ...'}},{locale:"zh_HK",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然","Anything shared with the same group of people will show up here":"與同一組人共享的任何內容都會顯示在此處","Avatar of {displayName}":"{displayName} 的頭像","Avatar of {displayName}, {status}":"{displayName} 的頭像,{status}","Cancel changes":"取消更改","Change title":"更改標題",Choose:"選擇","Clear text":"清除文本",Close:"關閉","Close modal":"關閉模態","Close navigation":"關閉導航","Close sidebar":"關閉側邊欄","Confirm changes":"確認更改",Custom:"自定義","Edit item":"編輯項目","Error getting related resources":"獲取相關資源出錯","Error parsing svg":"解析 svg 時出錯","External documentation for {title}":"{title} 的外部文檔",Favorite:"喜愛",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"經常使用",Global:"全球的","Go back to the list":"返回清單","Hide password":"隱藏密碼","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制","More items …":"更多項目 …",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件",Open:"打開",'Open link to "{resourceTitle}"':"打開指向 “{resourceTitle}” 的鏈結","Open navigation":"開啟導航","Password is secure":"密碼是安全的","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號","Please select a time zone:":"請選擇時區:",Previous:"上一個","Related resources":"相關資源",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Show password":"顯示密碼","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Submit:"提交",Symbols:"標誌","Travel & Places":"旅遊與景點","Type to search time zone":"鍵入以搜索時區","Unable to search the group":"無法搜尋群組","Undo changes":"取消更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'寫訊息,使用 "@" 來指代某人,使用 ":" 用於表情符號自動填充 ...'}},{locale:"zh_TW",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然",Choose:"選擇",Close:"關閉",Custom:"自定義",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"最近使用","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Symbols:"標誌","Travel & Places":"旅遊與景點","Unable to search the group":"無法搜尋群組","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}}].forEach((t=>{const e={};for(const n in t.translations)t.translations[n].pluralId?e[n]={msgid:n,msgid_plural:t.translations[n].pluralId,msgstr:t.translations[n].msgstr}:e[n]={msgid:n,msgstr:[t.translations[n]]};r.addTranslation(t.locale,{translations:{"":e}})}));const o=r.build(),i=(o.ngettext.bind(o),o.gettext.bind(o))},723:(t,e,n)=>{"use strict";n.d(e,{Z:()=>i});var r=n(2734),o=n.n(r);const i={before(){this.$slots.default&&""!==this.text.trim()||(o().util.warn("".concat(this.$options.name," cannot be empty and requires a meaningful text content"),this),this.$destroy(),this.$el.remove())},beforeUpdate(){this.text=this.getText()},data(){return{text:this.getText()}},computed:{isLongText(){return this.text&&this.text.trim().length>20}},methods:{getText(){return this.$slots.default?this.$slots.default[0].text.trim():""}}}},1139:(t,e,n)=>{"use strict";n.d(e,{Z:()=>r});const r={mixins:[n(723).Z],props:{icon:{type:String,default:""},name:{type:String,default:""},title:{type:String,default:""},closeAfterClick:{type:Boolean,default:!1},ariaLabel:{type:String,default:""},ariaHidden:{type:Boolean,default:null}},emits:["click"],computed:{isIconUrl(){try{return new URL(this.icon)}catch(t){return!1}}},methods:{onClick(t){if(this.$emit("click",t),this.closeAfterClick){const t=function(t,e){let n=t.$parent;for(;n;){if("NcActions"===n.$options.name)return n;n=n.$parent}}(this);t&&t.closeMenu&&t.closeMenu(!1)}}}}},1205:(t,e,n)=>{"use strict";n.d(e,{Z:()=>r});const r=t=>Math.random().toString(36).replace(/[^a-z]+/g,"").slice(0,t||5)},1206:(t,e,n)=>{"use strict";n.d(e,{L:()=>r}),n(4505);const r=function(){return Object.assign(window,{_nc_focus_trap:window._nc_focus_trap||[]}),window._nc_focus_trap}},3490:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-63ee0e66]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.active[data-v-63ee0e66]{background-color:var(--color-background-hover);border-radius:6px;padding:0}.action-link[data-v-63ee0e66]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;box-sizing:border-box;cursor:pointer;white-space:nowrap;color:var(--color-main-text);border:0;border-radius:0;background-color:rgba(0,0,0,0);box-shadow:none;font-weight:normal;font-size:var(--default-font-size);line-height:44px}.action-link>span[data-v-63ee0e66]{cursor:pointer;white-space:nowrap}.action-link__icon[data-v-63ee0e66]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-link[data-v-63ee0e66] .material-design-icon{width:44px;height:44px;opacity:1}.action-link[data-v-63ee0e66] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-link p[data-v-63ee0e66]{max-width:220px;line-height:1.6em;padding:10.8px 0;cursor:pointer;text-align:left;overflow:hidden;text-overflow:ellipsis}.action-link__longtext[data-v-63ee0e66]{cursor:pointer;white-space:pre-wrap}.action-link__name[data-v-63ee0e66]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/assets/action.scss","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCiBC,2BACC,8CAAA,CACA,iBAAA,CACA,SAAA,CAqBF,8BACC,YAAA,CACA,sBAAA,CAEA,UAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,kBCxBY,CDyBZ,qBAAA,CAEA,cAAA,CACA,kBAAA,CAEA,4BAAA,CACA,QAAA,CACA,eAAA,CACA,8BAAA,CACA,eAAA,CAEA,kBAAA,CACA,kCAAA,CACA,gBC9Ce,CDgDf,mCACC,cAAA,CACA,kBAAA,CAGD,oCACC,UCtDc,CDuDd,WCvDc,CDwDd,SCrCY,CDsCZ,+BAAA,CACA,oBCtDS,CDuDT,2BAAA,CAGD,oDACC,UC/Dc,CDgEd,WChEc,CDiEd,SC9CY,CDgDZ,+EACC,qBAAA,CAKF,gCACC,eAAA,CACA,iBAAA,CAGA,gBAAA,CAEA,cAAA,CACA,eAAA,CAGA,eAAA,CACA,sBAAA,CAGD,wCACC,cAAA,CAEA,oBAAA,CAGD,oCACC,gBAAA,CACA,sBAAA,CACA,eAAA,CACA,kBAAA,CACA,cAAA,CACA,oBAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Marco Ambrosini <marcoambrosini@icloud.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n@mixin action-active {\n\tli {\n\t\t&.active {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t\tborder-radius: 6px;\n\t\t\tpadding: 0;\n\t\t}\n\t}\n}\n\n@mixin action--disabled {\n\t.action--disabled {\n\t\tpointer-events: none;\n\t\topacity: $opacity_disabled;\n\t\t&:hover, &:focus {\n\t\t\tcursor: default;\n\t\t\topacity: $opacity_disabled;\n\t\t}\n\t\t& * {\n\t\t\topacity: 1 !important;\n\t\t}\n\t}\n}\n\n\n@mixin action-item($name) {\n\t.action-#{$name} {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tpadding-right: $icon-margin;\n\t\tbox-sizing: border-box; // otherwise router-link overflows in Firefox\n\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\n\t\tcolor: var(--color-main-text);\n\t\tborder: 0;\n\t\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\t\tbackground-color: transparent;\n\t\tbox-shadow: none;\n\n\t\tfont-weight: normal;\n\t\tfont-size: var(--default-font-size);\n\t\tline-height: $clickable-area;\n\n\t\t& > span {\n\t\t\tcursor: pointer;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t&__icon {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\t\t\tbackground-position: $icon-margin center;\n\t\t\tbackground-size: $icon-size;\n\t\t\tbackground-repeat: no-repeat;\n\t\t}\n\n\t\t&:deep(.material-design-icon) {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\n\t\t\t.material-design-icon__svg {\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t}\n\n\t\t// long text area\n\t\tp {\n\t\t\tmax-width: 220px;\n\t\t\tline-height: 1.6em;\n\n\t\t\t// 14px are currently 1em line-height. Mixing units as '44px - 1.6em' does not work.\n\t\t\tpadding: #{math.div($clickable-area - 1.6 * 14px, 2)} 0;\n\n\t\t\tcursor: pointer;\n\t\t\ttext-align: left;\n\n\t\t\t// in case there are no spaces like long email addresses\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&__longtext {\n\t\t\tcursor: pointer;\n\t\t\t// allow the use of `\\n`\n\t\t\twhite-space: pre-wrap;\n\t\t}\n\n\t\t&__name {\n\t\t\tfont-weight: bold;\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\tmax-width: 100%;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=a},8541:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-74ff8099]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.active[data-v-74ff8099]{background-color:var(--color-background-hover);border-radius:6px;padding:0}.action-router[data-v-74ff8099]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;box-sizing:border-box;cursor:pointer;white-space:nowrap;color:var(--color-main-text);border:0;border-radius:0;background-color:rgba(0,0,0,0);box-shadow:none;font-weight:normal;font-size:var(--default-font-size);line-height:44px}.action-router>span[data-v-74ff8099]{cursor:pointer;white-space:nowrap}.action-router__icon[data-v-74ff8099]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-router[data-v-74ff8099] .material-design-icon{width:44px;height:44px;opacity:1}.action-router[data-v-74ff8099] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-router p[data-v-74ff8099]{max-width:220px;line-height:1.6em;padding:10.8px 0;cursor:pointer;text-align:left;overflow:hidden;text-overflow:ellipsis}.action-router__longtext[data-v-74ff8099]{cursor:pointer;white-space:pre-wrap}.action-router__name[data-v-74ff8099]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}.action--disabled[data-v-74ff8099]{pointer-events:none;opacity:.5}.action--disabled[data-v-74ff8099]:hover,.action--disabled[data-v-74ff8099]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-74ff8099]{opacity:1 !important}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/assets/action.scss","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCiBC,2BACC,8CAAA,CACA,iBAAA,CACA,SAAA,CAqBF,gCACC,YAAA,CACA,sBAAA,CAEA,UAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,kBCxBY,CDyBZ,qBAAA,CAEA,cAAA,CACA,kBAAA,CAEA,4BAAA,CACA,QAAA,CACA,eAAA,CACA,8BAAA,CACA,eAAA,CAEA,kBAAA,CACA,kCAAA,CACA,gBC9Ce,CDgDf,qCACC,cAAA,CACA,kBAAA,CAGD,sCACC,UCtDc,CDuDd,WCvDc,CDwDd,SCrCY,CDsCZ,+BAAA,CACA,oBCtDS,CDuDT,2BAAA,CAGD,sDACC,UC/Dc,CDgEd,WChEc,CDiEd,SC9CY,CDgDZ,iFACC,qBAAA,CAKF,kCACC,eAAA,CACA,iBAAA,CAGA,gBAAA,CAEA,cAAA,CACA,eAAA,CAGA,eAAA,CACA,sBAAA,CAGD,0CACC,cAAA,CAEA,oBAAA,CAGD,sCACC,gBAAA,CACA,sBAAA,CACA,eAAA,CACA,kBAAA,CACA,cAAA,CACA,oBAAA,CA3FF,mCACC,mBAAA,CACA,UCMiB,CDLjB,kFACC,cAAA,CACA,UCGgB,CDDjB,qCACC,oBAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Marco Ambrosini <marcoambrosini@icloud.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n@mixin action-active {\n\tli {\n\t\t&.active {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t\tborder-radius: 6px;\n\t\t\tpadding: 0;\n\t\t}\n\t}\n}\n\n@mixin action--disabled {\n\t.action--disabled {\n\t\tpointer-events: none;\n\t\topacity: $opacity_disabled;\n\t\t&:hover, &:focus {\n\t\t\tcursor: default;\n\t\t\topacity: $opacity_disabled;\n\t\t}\n\t\t& * {\n\t\t\topacity: 1 !important;\n\t\t}\n\t}\n}\n\n\n@mixin action-item($name) {\n\t.action-#{$name} {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tpadding-right: $icon-margin;\n\t\tbox-sizing: border-box; // otherwise router-link overflows in Firefox\n\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\n\t\tcolor: var(--color-main-text);\n\t\tborder: 0;\n\t\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\t\tbackground-color: transparent;\n\t\tbox-shadow: none;\n\n\t\tfont-weight: normal;\n\t\tfont-size: var(--default-font-size);\n\t\tline-height: $clickable-area;\n\n\t\t& > span {\n\t\t\tcursor: pointer;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t&__icon {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\t\t\tbackground-position: $icon-margin center;\n\t\t\tbackground-size: $icon-size;\n\t\t\tbackground-repeat: no-repeat;\n\t\t}\n\n\t\t&:deep(.material-design-icon) {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\n\t\t\t.material-design-icon__svg {\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t}\n\n\t\t// long text area\n\t\tp {\n\t\t\tmax-width: 220px;\n\t\t\tline-height: 1.6em;\n\n\t\t\t// 14px are currently 1em line-height. Mixing units as '44px - 1.6em' does not work.\n\t\t\tpadding: #{math.div($clickable-area - 1.6 * 14px, 2)} 0;\n\n\t\t\tcursor: pointer;\n\t\t\ttext-align: left;\n\n\t\t\t// in case there are no spaces like long email addresses\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&__longtext {\n\t\t\tcursor: pointer;\n\t\t\t// allow the use of `\\n`\n\t\t\twhite-space: pre-wrap;\n\t\t}\n\n\t\t&__name {\n\t\t\tfont-weight: bold;\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\tmax-width: 100%;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=a},4825:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-29452b76]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-items[data-v-29452b76]{display:flex;align-items:center}.action-items>button[data-v-29452b76]{margin-right:7px}.action-item[data-v-29452b76]{--open-background-color: var(--color-background-hover, $action-background-hover);position:relative;display:inline-block}.action-item.action-item--primary[data-v-29452b76]{--open-background-color: var(--color-primary-element-hover)}.action-item.action-item--secondary[data-v-29452b76]{--open-background-color: var(--color-primary-element-light-hover)}.action-item.action-item--error[data-v-29452b76]{--open-background-color: var(--color-error-hover)}.action-item.action-item--warning[data-v-29452b76]{--open-background-color: var(--color-warning-hover)}.action-item.action-item--success[data-v-29452b76]{--open-background-color: var(--color-success-hover)}.action-item.action-item--tertiary-no-background[data-v-29452b76]{--open-background-color: transparent}.action-item.action-item--open .action-item__menutoggle[data-v-29452b76]{background-color:var(--open-background-color)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,+BACC,YAAA,CACA,kBAAA,CAGA,sCACC,gBAAA,CAIF,8BACC,gFAAA,CACA,iBAAA,CACA,oBAAA,CAEA,mDACC,2DAAA,CAGD,qDACC,iEAAA,CAGD,iDACC,iDAAA,CAGD,mDACC,mDAAA,CAGD,mDACC,mDAAA,CAGD,kEACC,oCAAA,CAGD,yEACC,6CAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// Inline buttons\n.action-items {\n\tdisplay: flex;\n\talign-items: center;\n\n\t// Spacing between buttons\n\t& > button {\n\t\tmargin-right: math.div($icon-margin, 2);\n\t}\n}\n\n.action-item {\n\t--open-background-color: var(--color-background-hover, $action-background-hover);\n\tposition: relative;\n\tdisplay: inline-block;\n\n\t&.action-item--primary {\n\t\t--open-background-color: var(--color-primary-element-hover);\n\t}\n\n\t&.action-item--secondary {\n\t\t--open-background-color: var(--color-primary-element-light-hover);\n\t}\n\n\t&.action-item--error {\n\t\t--open-background-color: var(--color-error-hover);\n\t}\n\n\t&.action-item--warning {\n\t\t--open-background-color: var(--color-warning-hover);\n\t}\n\n\t&.action-item--success {\n\t\t--open-background-color: var(--color-success-hover);\n\t}\n\n\t&.action-item--tertiary-no-background {\n\t\t--open-background-color: transparent;\n\t}\n\n\t&.action-item--open .action-item__menutoggle {\n\t\tbackground-color: var(--open-background-color);\n\t}\n}\n"],sourceRoot:""}]);const s=a},4946:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper{border-radius:var(--border-radius-large);overflow:hidden}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper .v-popper__inner{border-radius:var(--border-radius-large);padding:4px;max-height:calc(50vh - 16px);overflow:auto}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCJD,kFACC,wCAAA,CACA,eAAA,CAEA,mGACC,wCAAA,CACA,WAAA,CACA,4BAAA,CACA,aAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// We overwrote the popover base class, so we can style\n// the popover__inner for actions only.\n.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper {\n\tborder-radius: var(--border-radius-large);\n\toverflow:hidden;\n\n\t.v-popper__inner {\n\t\tborder-radius: var(--border-radius-large);\n\t\tpadding: 4px;\n\t\tmax-height: calc(50vh - 16px);\n\t\toverflow: auto;\n\t}\n}\n"],sourceRoot:""}]);const s=a},8066:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-4daa022a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-crumb[data-v-4daa022a]{background-image:none;display:inline-flex;height:44px;padding:0}.vue-crumb[data-v-4daa022a]:last-child{max-width:210px;font-weight:bold}.vue-crumb:last-child .vue-crumb__separator[data-v-4daa022a]{display:none}.vue-crumb>a[data-v-4daa022a]:hover,.vue-crumb>a[data-v-4daa022a]:focus{background-color:var(--color-background-dark);color:var(--color-main-text)}.vue-crumb--hidden[data-v-4daa022a]{display:none}.vue-crumb.vue-crumb--hovered>a[data-v-4daa022a]{background-color:var(--color-background-dark);color:var(--color-main-text)}.vue-crumb__separator[data-v-4daa022a]{padding:0;color:var(--color-text-maxcontrast)}.vue-crumb>a[data-v-4daa022a]{overflow:hidden;color:var(--color-text-maxcontrast);padding:12px;min-width:44px;max-width:100%;border-radius:var(--border-radius-pill);align-items:center;display:inline-flex;justify-content:center}.vue-crumb>a>span[data-v-4daa022a]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item{max-width:100%}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item .button-vue{padding:0 4px 0 16px}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item .button-vue__wrapper{flex-direction:row-reverse}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item.action-item--open .action-item__menutoggle{background-color:var(--color-background-dark);color:var(--color-main-text)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcBreadcrumb/NcBreadcrumb.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,4BACC,qBAAA,CACA,mBAAA,CACA,WCmBgB,CDlBhB,SAAA,CAEA,uCACC,eAAA,CACA,gBAAA,CAGA,6DACC,YAAA,CAKF,wEAEC,6CAAA,CACA,4BAAA,CAGD,oCACC,YAAA,CAGD,iDACC,6CAAA,CACA,4BAAA,CAGD,uCACC,SAAA,CACA,mCAAA,CAGD,8BACC,eAAA,CACA,mCAAA,CACA,YAAA,CACA,cCnBe,CDoBf,cAAA,CACA,uCAAA,CACA,kBAAA,CACA,mBAAA,CACA,sBAAA,CAEA,mCACC,eAAA,CACA,sBAAA,CACA,kBAAA,CAMF,wDAEC,cAAA,CAEA,oEACC,oBAAA,CAEA,6EACC,0BAAA,CAKF,mGACC,6CAAA,CACA,4BAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.vue-crumb {\n\tbackground-image: none;\n\tdisplay: inline-flex;\n\theight: $clickable-area;\n\tpadding: 0;\n\n\t&:last-child {\n\t\tmax-width: 210px;\n\t\tfont-weight: bold;\n\n\t\t// Don't show breadcrumb separator for last crumb\n\t\t.vue-crumb__separator {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t// Hover and focus effect for crumbs\n\t& > a:hover,\n\t& > a:focus {\n\t\tbackground-color: var(--color-background-dark);\n\t\tcolor: var(--color-main-text);\n\t}\n\n\t&--hidden {\n\t\tdisplay: none;\n\t}\n\n\t&#{&}--hovered > a {\n\t\tbackground-color: var(--color-background-dark);\n\t\tcolor: var(--color-main-text);\n\t}\n\n\t&__separator {\n\t\tpadding: 0;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\t> a {\n\t\toverflow: hidden;\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tpadding: 12px;\n\t\tmin-width: $clickable-area;\n\t\tmax-width: 100%;\n\t\tborder-radius: var(--border-radius-pill);\n\t\talign-items: center;\n\t\tdisplay: inline-flex;\n\t\tjustify-content: center;\n\n\t\t> span {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n\n\t// Adjust action item appearance for crumbs with actions\n\t// to match other crumbs\n\t&:not(.dropdown) :deep(.action-item) {\n\t\t// Adjustments necessary to correctly shrink on small screens\n\t\tmax-width: 100%;\n\n\t\t.button-vue {\n\t\t\tpadding: 0 4px 0 16px;\n\n\t\t\t&__wrapper {\n\t\t\t\tflex-direction: row-reverse;\n\t\t\t}\n\t\t}\n\n\t\t// Adjust the background of the last crumb when the action is open\n\t\t&.action-item--open .action-item__menutoggle {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tcolor: var(--color-main-text);\n\t\t}\n\t}\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=a},1699:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-26565e7c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.breadcrumb[data-v-26565e7c]{width:100%;flex-grow:1;display:inline-flex}.breadcrumb--collapsed .vue-crumb[data-v-26565e7c]:last-child{min-width:100px;flex-shrink:1}.breadcrumb nav[data-v-26565e7c]{flex-shrink:1;max-width:100%;min-width:228px}.breadcrumb .breadcrumb__crumbs[data-v-26565e7c]{max-width:100%}.breadcrumb .breadcrumb__crumbs[data-v-26565e7c],.breadcrumb .breadcrumb__actions[data-v-26565e7c]{display:inline-flex}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcBreadcrumbs/NcBreadcrumbs.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,6BACC,UAAA,CACA,WAAA,CACA,mBAAA,CAEA,8DACC,eAAA,CACA,aAAA,CAGD,iCACC,aAAA,CACA,cAAA,CAKA,eAAA,CAGD,iDACC,cAAA,CAGD,mGAEC,mBAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n.breadcrumb {\n\twidth: 100%;\n\tflex-grow: 1;\n\tdisplay: inline-flex;\n\n\t&--collapsed .vue-crumb:last-child {\n\t\tmin-width: 100px;\n\t\tflex-shrink: 1;\n\t}\n\n\tnav {\n\t\tflex-shrink: 1;\n\t\tmax-width: 100%;\n\t\t/**\n\t\t * This value is given by the min-width of the last crumb (100px) plus\n\t\t * two times the width of a crumb with an icon (first crumb and hidden crumbs actions).\n\t\t */\n\t\tmin-width: 228px;\n\t}\n\n\t& #{&}__crumbs {\n\t\tmax-width: 100%;\n\t}\n\n\t& #{&}__crumbs,\n\t& #{&}__actions {\n\t\tdisplay: inline-flex;\n\t}\n}\n"],sourceRoot:""}]);const s=a},7196:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-4d05be2c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue[data-v-4d05be2c]{position:relative;width:fit-content;overflow:hidden;border:0;padding:0;font-size:var(--default-font-size);font-weight:bold;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:22px;transition-property:color,border-color,background-color;transition-duration:.1s;transition-timing-function:linear;color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue *[data-v-4d05be2c],.button-vue span[data-v-4d05be2c]{cursor:pointer}.button-vue[data-v-4d05be2c]:focus{outline:none}.button-vue[data-v-4d05be2c]:disabled{cursor:default;opacity:.5;filter:saturate(0.7)}.button-vue:disabled *[data-v-4d05be2c]{cursor:default}.button-vue[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-light-hover)}.button-vue[data-v-4d05be2c]:active{background-color:var(--color-primary-element-light)}.button-vue__wrapper[data-v-4d05be2c]{display:inline-flex;align-items:center;justify-content:center;width:100%}.button-vue__icon[data-v-4d05be2c]{height:44px;width:44px;min-height:44px;min-width:44px;display:flex;justify-content:center;align-items:center}.button-vue__text[data-v-4d05be2c]{font-weight:bold;margin-bottom:1px;padding:2px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.button-vue--icon-only[data-v-4d05be2c]{width:44px !important}.button-vue--text-only[data-v-4d05be2c]{padding:0 12px}.button-vue--text-only .button-vue__text[data-v-4d05be2c]{margin-left:4px;margin-right:4px}.button-vue--icon-and-text[data-v-4d05be2c]{padding:0 16px 0 4px}.button-vue--wide[data-v-4d05be2c]{width:100%}.button-vue[data-v-4d05be2c]:focus-visible{outline:2px solid var(--color-main-text) !important}.button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{outline:2px solid var(--color-primary-element-text);border-radius:var(--border-radius);background-color:rgba(0,0,0,0)}.button-vue--vue-primary[data-v-4d05be2c]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.button-vue--vue-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-hover)}.button-vue--vue-primary[data-v-4d05be2c]:active{background-color:var(--color-primary-element)}.button-vue--vue-secondary[data-v-4d05be2c]{color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue--vue-secondary[data-v-4d05be2c]:hover:not(:disabled){color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light-hover)}.button-vue--vue-tertiary[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color);background-color:var(--color-background-hover)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{color:var(--color-primary-element-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-success[data-v-4d05be2c]{background-color:var(--color-success);color:#fff}.button-vue--vue-success[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-success-hover)}.button-vue--vue-success[data-v-4d05be2c]:active{background-color:var(--color-success)}.button-vue--vue-warning[data-v-4d05be2c]{background-color:var(--color-warning);color:#fff}.button-vue--vue-warning[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-warning-hover)}.button-vue--vue-warning[data-v-4d05be2c]:active{background-color:var(--color-warning)}.button-vue--vue-error[data-v-4d05be2c]{background-color:var(--color-error);color:#fff}.button-vue--vue-error[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-error-hover)}.button-vue--vue-error[data-v-4d05be2c]:active{background-color:var(--color-error)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcButton/NcButton.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,QAAA,CACA,SAAA,CACA,kCAAA,CACA,gBAAA,CACA,eCcgB,CDbhB,cCagB,CDZhB,YAAA,CACA,kBAAA,CACA,sBAAA,CAGA,cAAA,CAKA,kBAAA,CACA,uDAAA,CACA,uBAAA,CACA,iCAAA,CAkBA,6CAAA,CACA,mDAAA,CA1BA,iEAEC,cAAA,CAQD,mCACC,YAAA,CAGD,sCACC,cAAA,CAIA,UCIiB,CDFjB,oBAAA,CALA,wCACC,cAAA,CAUF,kDACC,yDAAA,CAKD,oCACC,mDAAA,CAGD,sCACC,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAGD,mCACC,WCvCe,CDwCf,UCxCe,CDyCf,eCzCe,CD0Cf,cC1Ce,CD2Cf,YAAA,CACA,sBAAA,CACA,kBAAA,CAGD,mCACC,gBAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CAID,wCACC,qBAAA,CAID,wCACC,cAAA,CACA,0DACC,eAAA,CACA,gBAAA,CAKF,4CACC,oBAAA,CAID,mCACC,UAAA,CAGD,2CACC,mDAAA,CACA,+EACC,mDAAA,CACA,kCAAA,CACA,8BAAA,CAOF,0CACC,6CAAA,CACA,uCAAA,CACA,+DACC,mDAAA,CAID,iDACC,6CAAA,CAKF,4CACC,6CAAA,CACA,mDAAA,CACA,iEACC,6CAAA,CACA,yDAAA,CAKF,2CACC,4BAAA,CACA,8BAAA,CACA,gEACC,6BAAA,CACA,8CAAA,CAKF,yDACC,4BAAA,CACA,8BAAA,CACA,8EACC,8BAAA,CAKF,sDACC,uCAAA,CACA,8BAAA,CAEA,2EACC,8BAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,wCACC,mCAAA,CACA,UAAA,CACA,6DACC,yCAAA,CAID,+CACC,mCAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.button-vue {\n\tposition: relative;\n\twidth: fit-content;\n\toverflow: hidden;\n\tborder: 0;\n\tpadding: 0;\n\tfont-size: var(--default-font-size);\n\tfont-weight: bold;\n\tmin-height: $clickable-area;\n\tmin-width: $clickable-area;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t// Cursor pointer on element and all children\n\tcursor: pointer;\n\t& *,\n\tspan {\n\t\tcursor: pointer;\n\t}\n\tborder-radius: math.div($clickable-area, 2);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: 0.1s;\n\ttransition-timing-function: linear;\n\n\t// No outline feedback for focus. Handled with a toggled class in js (see data)\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t\t& * {\n\t\t\tcursor: default;\n\t\t}\n\t\topacity: $opacity_disabled;\n\t\t// Gives a wash out effect\n\t\tfilter: saturate($opacity_normal);\n\t}\n\n\t// Default button type\n\tcolor: var(--color-primary-element-light-text);\n\tbackground-color: var(--color-primary-element-light);\n\t&:hover:not(:disabled) {\n\t\tbackground-color: var(--color-primary-element-light-hover);\n\t}\n\n\t// Back to the default color for this button when active\n\t// TODO: add ripple effect\n\t&:active {\n\t\tbackground-color: var(--color-primary-element-light);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t}\n\n\t&__icon {\n\t\theight: $clickable-area;\n\t\twidth: $clickable-area;\n\t\tmin-height: $clickable-area;\n\t\tmin-width: $clickable-area;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n\n\t&__text {\n\t\tfont-weight: bold;\n\t\tmargin-bottom: 1px;\n\t\tpadding: 2px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t// Icon-only button\n\t&--icon-only {\n\t\twidth: $clickable-area !important;\n\t}\n\n\t// Text-only button\n\t&--text-only {\n\t\tpadding: 0 12px;\n\t\t& .button-vue__text {\n\t\t\tmargin-left: 4px;\n\t\t\tmargin-right: 4px;\n\t\t}\n\t}\n\n\t// Icon and text button\n\t&--icon-and-text {\n\t\tpadding: 0 16px 0 4px;\n\t}\n\n\t// Wide button spans the whole width of the container\n\t&--wide {\n\t\twidth: 100%;\n\t}\n\n\t&:focus-visible {\n\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t&.button-vue--vue-tertiary-on-primary {\n\t\t\toutline: 2px solid var(--color-primary-element-text);\n\t\t\tborder-radius: var(--border-radius);\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Button types\n\n\t// Primary\n\t&--vue-primary {\n\t\tbackground-color: var(--color-primary-element);\n\t\tcolor: var(--color-primary-element-text);\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t}\n\t}\n\n\t// Secondary\n\t&--vue-secondary {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-light);\n\t\t&:hover:not(:disabled) {\n\t\t\tcolor: var(--color-primary-element-light-text);\n\t\t\tbackground-color: var(--color-primary-element-light-hover);\n\t\t}\n\t}\n\n\t// Tertiary\n\t&--vue-tertiary {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color);\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Tertiary, no background\n\t&--vue-tertiary-no-background {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Tertiary on primary color (like the header)\n\t&--vue-tertiary-on-primary {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: transparent;\n\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Success\n\t&--vue-success {\n\t\tbackground-color: var(--color-success);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-success-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// : add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t}\n\n\t// Warning\n\t&--vue-warning {\n\t\tbackground-color: var(--color-warning);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-warning-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-warning);\n\t\t}\n\t}\n\n\t// Error\n\t&--vue-error {\n\t\tbackground-color: var(--color-error);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-error-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=a},1625:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.resize-observer{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:rgba(0,0,0,0);pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper--theme-dropdown.v-popper__popper{z-index:100000;top:0;left:0;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-dropdown.v-popper__popper .v-popper__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius-large);overflow:hidden;background:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{left:-10px;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity var(--animation-quick);opacity:1}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcPopover/NcPopover.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,iBACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,aAAA,CACA,eAAA,CACA,SAAA,CAGD,wBACC,aAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,mBAAA,CACA,UAAA,CAMA,2CACC,cAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CAEA,sDAAA,CAEA,4DACC,SAAA,CACA,4BAAA,CACA,wCAAA,CACA,eAAA,CACA,uCAAA,CAGD,sEACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBA1BW,CA6BZ,kGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAGD,qGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAGD,oGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAGD,mGACC,WAAA,CACA,oBAAA,CACA,8CAAA,CAGD,6DACC,iBAAA,CACA,2EAAA,CACA,SAAA,CAGD,8DACC,kBAAA,CACA,yCAAA,CACA,SAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.resize-observer {\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\tz-index:-1;\n\twidth:100%;\n\theight:100%;\n\tborder:none;\n\tbackground-color:transparent;\n\tpointer-events:none;\n\tdisplay:block;\n\toverflow:hidden;\n\topacity:0\n}\n\n.resize-observer object {\n\tdisplay:block;\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\theight:100%;\n\twidth:100%;\n\toverflow:hidden;\n\tpointer-events:none;\n\tz-index:-1\n}\n\n$arrow-width: 10px;\n\n.v-popper--theme-dropdown {\n\t&.v-popper__popper {\n\t\tz-index: 100000;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tdisplay: block !important;\n\n\t\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t\t.v-popper__inner {\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-main-text);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t\toverflow: hidden;\n\t\t\tbackground: var(--color-main-background);\n\t\t}\n\n\t\t.v-popper__arrow-container {\n\t\t\tposition: absolute;\n\t\t\tz-index: 1;\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\tborder-style: solid;\n\t\t\tborder-color: transparent;\n\t\t\tborder-width: $arrow-width;\n\t\t}\n\n\t\t&[data-popper-placement^='top'] .v-popper__arrow-container {\n\t\t\tbottom: -$arrow-width;\n\t\t\tborder-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\n\t\t\ttop: -$arrow-width;\n\t\t\tborder-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='right'] .v-popper__arrow-container {\n\t\t\tleft: -$arrow-width;\n\t\t\tborder-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='left'] .v-popper__arrow-container {\n\t\t\tright: -$arrow-width;\n\t\t\tborder-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\n\t\t}\n\n\t\t&[aria-hidden='true'] {\n\t\t\tvisibility: hidden;\n\t\t\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&[aria-hidden='false'] {\n\t\t\tvisibility: visible;\n\t\t\ttransition: opacity var(--animation-quick);\n\t\t\topacity: 1;\n\t\t}\n\t}\n}\n\n"],sourceRoot:""}]);const s=a},3645:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",r=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),r&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),r&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,r,o,i){"string"==typeof t&&(t=[[null,t,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var c=0;c<t.length;c++){var u=[].concat(t[c]);r&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),e.push(u))}},e}},7537:t=>{"use strict";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),i="/*# ".concat(o," */");return[e].concat([i]).join("\n")}return[e].join("\n")}},3379:t=>{"use strict";var e=[];function n(t){for(var n=-1,r=0;r<e.length;r++)if(e[r].identifier===t){n=r;break}return n}function r(t,r){for(var i={},a=[],s=0;s<t.length;s++){var l=t[s],c=r.base?l[0]+r.base:l[0],u=i[c]||0,d="".concat(c," ").concat(u);i[c]=u+1;var p=n(d),h={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)e[p].references++,e[p].updater(h);else{var f=o(h,r);r.byIndex=s,e.splice(s,0,{identifier:d,updater:f,references:1})}a.push(d)}return a}function o(t,e){var n=e.domAPI(e);return n.update(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,o){var i=r(t=t||[],o=o||{});return function(t){t=t||[];for(var a=0;a<i.length;a++){var s=n(i[a]);e[s].references--}for(var l=r(t,o),c=0;c<i.length;c++){var u=n(i[c]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}i=l}}},569:t=>{"use strict";var e={};t.exports=function(t,n){var r=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},9216:t=>{"use strict";t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},3565:(t,e,n)=>{"use strict";t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:t=>{"use strict";t.exports=function(t){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var i=n.sourceMap;i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleTagTransform(r,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:t=>{"use strict";t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},9158:()=>{},5727:()=>{},6591:()=>{},1753:()=>{},2102:()=>{},2405:()=>{},1900:(t,e,n)=>{"use strict";function r(t,e,n,r,o,i,a,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),i&&(c._scopeId="data-v-"+i),a?(l=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=l):o&&(l=s?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:t,options:c}}n.d(e,{Z:()=>r})},542:t=>{"use strict";t.exports=n(57888)},7931:t=>{"use strict";t.exports=n(23955)},3465:t=>{"use strict";t.exports=n(20296)},9454:t=>{"use strict";t.exports=n(73045)},4505:t=>{"use strict";t.exports=n(15303)},2734:t=>{"use strict";t.exports=n(20144)},9044:t=>{"use strict";t.exports=n(11585)},1441:t=>{"use strict";t.exports=n(89115)}},e={};function o(n){var r=e[n];if(void 0!==r)return r.exports;var i=e[n]={id:n,exports:{}};return t[n](i,i.exports,o),i.exports}o.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return o.d(e,{a:e}),e},o.d=(t,e)=>{for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),o.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.nc=void 0;var i={};return(()=>{"use strict";o.r(i),o.d(i,{default:()=>B});var t=o(8250),e=o(968),r=o(6969),a=o(8407),s=o(2734),l=o.n(s);const c=(t,e,n)=>{if(void 0!==t)for(let r=t.length-1;r>=0;r--){const o=t[r],i=!o.componentOptions&&o.tag&&-1===e.indexOf(o.tag),a=!!o.componentOptions&&"string"==typeof o.componentOptions.tag,s=a&&-1===e.indexOf(o.componentOptions.tag);(i||!a||s)&&((i||s)&&l().util.warn("".concat(i?o.tag:o.componentOptions.tag," is not allowed inside the ").concat(n.$options.name," component"),n),t.splice(r,1))}};var u=o(542);const d=n(34829);var p=o.n(d),h=o(3465),f=o.n(h);const m="vue-crumb",v={name:"NcBreadcrumbs",components:{NcActions:t.default,NcActionRouter:e.default,NcActionLink:r.default,NcBreadcrumb:a.default,IconFolder:p()},props:{rootIcon:{type:String,default:"icon-home"}},emits:["dropped"],data:()=>({hiddenCrumbs:[],hiddenIndices:[],menuBreadcrumbProps:{name:"",forceMenu:!0,disableDrop:!0,open:!1}}),beforeMount(){c(this.$slots.default,["NcBreadcrumb"],this)},beforeUpdate(){c(this.$slots.default,["NcBreadcrumb"],this)},created(){window.addEventListener("resize",f()((()=>{this.handleWindowResize()}),100)),(0,u.subscribe)("navigation-toggled",this.delayedResize)},mounted(){this.handleWindowResize()},updated(){this.delayedResize(),this.delayedHideCrumbs()},beforeDestroy(){window.removeEventListener("resize",this.handleWindowResize),(0,u.unsubscribe)("navigation-toggled",this.delayedResize)},methods:{delayedHideCrumbs(){this.$nextTick((()=>{const t=this.$slots.default||[];this.hideCrumbs(t)}))},closeActions(t){this.$refs.actionsBreadcrumb.$el.contains(t.relatedTarget)||(this.menuBreadcrumbProps.open=!1)},delayedResize(){this.$nextTick((()=>{this.handleWindowResize()}))},handleWindowResize(){const t=this.$slots.default||[];if(this.$refs.container){const e=t.length,n=[],r=this.$refs.container.offsetWidth;let o=this.getTotalWidth(t);this.$refs.breadcrumb__actions&&(o+=this.$refs.breadcrumb__actions.offsetWidth);let i=o-r;i+=i>0?64:0;let a=0;const s=Math.floor(e/2);for(;i>0&&a<e-2;){const r=s+(a%2?a+1:a)/2*Math.pow(-1,a+e%2);i-=this.getWidth(t[r].elm),n.push(r),a++}this.arraysEqual(this.hiddenIndices,n.sort(((t,e)=>t-e)))||(this.hiddenCrumbs=n.map((e=>t[e])),this.hiddenIndices=n)}},arraysEqual(t,e){if(t.length!==e.length)return!1;if(t===e)return!0;if(null===t||null===e)return!1;for(let n=0;n<t.length;++n)if(t[n]!==e[n])return!1;return!0},getTotalWidth(t){return t.reduce(((t,e,n)=>t+this.getWidth(e.elm)),0)},getWidth(t){if(!t.classList)return 0;const e=t.classList.contains("".concat(m,"--hidden"));t.style.minWidth="auto",t.classList.remove("".concat(m,"--hidden"));const n=t.offsetWidth;return e&&t.classList.add("".concat(m,"--hidden")),t.style.minWidth="",n},preventDefault:t=>(t.preventDefault&&t.preventDefault(),!1),dragStart(t){return this.preventDefault(t)},dropped(t,e,n){return n||this.$emit("dropped",t,e),this.menuBreadcrumbProps.open=!1,document.querySelectorAll(".".concat(m)).forEach((t=>{t.classList.remove("".concat(m,"--hovered"))})),this.preventDefault(t)},dragOver(t){return this.preventDefault(t)},dragEnter(t,e){if(!e&&t.target.closest){const e=t.target.closest(".".concat(m));e.classList&&e.classList.contains(m)&&(document.querySelectorAll(".".concat(m)).forEach((t=>{t.classList.remove("".concat(m,"--hovered"))})),e.classList.add("".concat(m,"--hovered")))}},dragLeave(t,e){if(!e&&!t.target.contains(t.relatedTarget)&&t.target.closest){const e=t.target.closest(".".concat(m));if(e.contains(t.relatedTarget))return;e.classList&&e.classList.contains(m)&&e.classList.remove("".concat(m,"--hovered"))}},hideCrumbs(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;t.forEach(((t,n)=>{var r;null!=t&&null!==(r=t.elm)&&void 0!==r&&r.classList&&(this.hiddenIndices.includes(n+e)?t.elm.classList.add("".concat(m,"--hidden")):t.elm.classList.remove("".concat(m,"--hidden")))}))}},render(t){const e=this.$slots.default||[];if(0===e.length)return;l().set(e[0].componentOptions.propsData,"icon",this.rootIcon);let n=[];if(this.hiddenCrumbs.length){n=e.slice(0,Math.round(e.length/2)),this.hideCrumbs(n),n.push(t("NcBreadcrumb",{class:"dropdown",props:this.menuBreadcrumbProps,attrs:{"aria-hidden":!0},ref:"actionsBreadcrumb",key:"actions-breadcrumb-1",nativeOn:{dragstart:this.dragStart,dragenter:()=>{this.menuBreadcrumbProps.open=!0},dragleave:this.closeActions},on:{"update:open":t=>{this.menuBreadcrumbProps.open=t}}},this.hiddenCrumbs.map((e=>{const n=e.componentOptions.propsData.to,r=e.componentOptions.propsData.href,o=e.componentOptions.propsData.disableDrop,i=e.componentOptions.propsData.title,a=e.componentOptions.propsData.name;let s="NcActionLink",l=r;n&&(s="NcActionRouter",l=n);const c=t("IconFolder",{props:{size:20},slot:"icon"});return t(s,{class:m,props:{href:r,title:i,to:n},attrs:{draggable:!1},nativeOn:{dragstart:this.dragStart,drop:t=>this.dropped(t,l,o),dragover:this.dragOver,dragenter:t=>this.dragEnter(t,o),dragleave:t=>this.dragLeave(t,o)}},[c,a])}))));const r=e.slice(Math.round(e.length/2));n=n.concat(r),this.hideCrumbs(r,n.length-1)}else n=e,this.hideCrumbs(n);const r=[t("nav",{},[t("ul",{class:"breadcrumb__crumbs"},n)])];return this.$slots.actions&&r.push(t("div",{class:"breadcrumb__actions",ref:"breadcrumb__actions"},this.$slots.actions)),t("div",{class:["breadcrumb",{"breadcrumb--collapsed":this.hiddenCrumbs.length===e.length-2}],ref:"container"},r)}};var g=o(3379),A=o.n(g),y=o(7795),b=o.n(y),C=o(569),w=o.n(C),k=o(3565),x=o.n(k),S=o(9216),j=o.n(S),_=o(4589),E=o.n(_),P=o(1699),N={};N.styleTagTransform=E(),N.setAttributes=x(),N.insert=w().bind(null,"head"),N.domAPI=b(),N.insertStyleElement=j(),A()(P.Z,N),P.Z&&P.Z.locals&&P.Z.locals;var O=o(1900),z=o(1753),T=o.n(z),L=(0,O.Z)(v,void 0,void 0,!1,null,"26565e7c",null);"function"==typeof T()&&T()(L);const B=L.exports})(),i})()))},91211:function(t,e,n){!function(e,n){t.exports=n()}(self,(()=>(()=>{var t={8402:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-45b807d6]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.icon-vue[data-v-45b807d6]{display:flex;justify-content:center;align-items:center;width:44px;height:44px;opacity:1}.icon-vue[data-v-45b807d6] svg{fill:currentColor;max-width:20px;max-height:20px}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcIconSvgWrapper/NcIconSvgWrapper.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,2BACC,YAAA,CACA,sBAAA,CACA,kBAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CAEA,+BACC,iBAAA,CACA,cAAA,CACA,eAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n.icon-vue {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\twidth: 44px;\n\theight: 44px;\n\topacity: 1;\n\n\t&:deep(svg) {\n\t\tfill: currentColor;\n\t\tmax-width: 20px;\n\t\tmax-height: 20px;\n\t}\n}\n"],sourceRoot:""}]);const s=a},3645:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",r=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),r&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),r&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,r,o,i){"string"==typeof t&&(t=[[null,t,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var c=0;c<t.length;c++){var u=[].concat(t[c]);r&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),e.push(u))}},e}},7537:t=>{"use strict";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),i="/*# ".concat(o," */");return[e].concat([i]).join("\n")}return[e].join("\n")}},3379:t=>{"use strict";var e=[];function n(t){for(var n=-1,r=0;r<e.length;r++)if(e[r].identifier===t){n=r;break}return n}function r(t,r){for(var i={},a=[],s=0;s<t.length;s++){var l=t[s],c=r.base?l[0]+r.base:l[0],u=i[c]||0,d="".concat(c," ").concat(u);i[c]=u+1;var p=n(d),h={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)e[p].references++,e[p].updater(h);else{var f=o(h,r);r.byIndex=s,e.splice(s,0,{identifier:d,updater:f,references:1})}a.push(d)}return a}function o(t,e){var n=e.domAPI(e);return n.update(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,o){var i=r(t=t||[],o=o||{});return function(t){t=t||[];for(var a=0;a<i.length;a++){var s=n(i[a]);e[s].references--}for(var l=r(t,o),c=0;c<i.length;c++){var u=n(i[c]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}i=l}}},569:t=>{"use strict";var e={};t.exports=function(t,n){var r=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},9216:t=>{"use strict";t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},3565:(t,e,n)=>{"use strict";t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:t=>{"use strict";t.exports=function(t){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var i=n.sourceMap;i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleTagTransform(r,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:t=>{"use strict";t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},1287:()=>{},1900:(t,e,n)=>{"use strict";function r(t,e,n,r,o,i,a,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),i&&(c._scopeId="data-v-"+i),a?(l=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=l):o&&(l=s?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:t,options:c}}n.d(e,{Z:()=>r})}},e={};function r(n){var o=e[n];if(void 0!==o)return o.exports;var i=e[n]={id:n,exports:{}};return t[n](i,i.exports,r),i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nc=void 0;var o={};return(()=>{"use strict";r.r(o),r.d(o,{default:()=>k});const t=n(62466),e={name:"NcIconSvgWrapper",props:{svg:{type:String,default:""},name:{type:String,default:""}},data:()=>({cleanSvg:""}),async beforeMount(){await this.sanitizeSVG()},methods:{async sanitizeSVG(){this.svg&&(this.cleanSvg=await(0,t.sanitizeSVG)(this.svg))}}};var i=r(3379),a=r.n(i),s=r(7795),l=r.n(s),c=r(569),u=r.n(c),d=r(3565),p=r.n(d),h=r(9216),f=r.n(h),m=r(4589),v=r.n(m),g=r(8402),A={};A.styleTagTransform=v(),A.setAttributes=p(),A.insert=u().bind(null,"head"),A.domAPI=l(),A.insertStyleElement=f(),a()(g.Z,A),g.Z&&g.Z.locals&&g.Z.locals;var y=r(1900),b=r(1287),C=r.n(b),w=(0,y.Z)(e,(function(){var t=this;return(0,t._self._c)("span",{staticClass:"icon-vue",attrs:{role:"img","aria-hidden":!t.name,"aria-label":t.name},domProps:{innerHTML:t._s(t.cleanSvg)}})}),[],!1,null,"45b807d6",null);"function"==typeof C()&&C()(w);const k=w.exports})(),o})()))},36029:function(t,e,n){var r,o=n(25108);self,r=()=>(()=>{var t={4462:(t,e,n)=>{"use strict";n.d(e,{default:()=>k});const r={name:"NcButton",props:{disabled:{type:Boolean,default:!1},type:{type:String,validator:t=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(t),default:"secondary"},nativeType:{type:String,validator:t=>-1!==["submit","reset","button"].indexOf(t),default:"button"},wide:{type:Boolean,default:!1},ariaLabel:{type:String,default:null},href:{type:String,default:null},to:{type:[String,Object],default:null},exact:{type:Boolean,default:!1},ariaHidden:{type:Boolean,default:null}},render(t){var e,n,r,i,a,s=this;const l=null===(e=this.$slots.default)||void 0===e||null===(n=e[0])||void 0===n||null===(r=n.text)||void 0===r||null===(i=r.trim)||void 0===i?void 0:i.call(r),c=!!l,u=null===(a=this.$slots)||void 0===a?void 0:a.icon;l||this.ariaLabel||o.warn("You need to fill either the text or the ariaLabel props in the button component.",{text:l,ariaLabel:this.ariaLabel},this);const d=function(){let{navigate:e,isActive:n,isExactActive:r}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t(s.to||!s.href?"button":"a",{class:["button-vue",{"button-vue--icon-only":u&&!c,"button-vue--text-only":c&&!u,"button-vue--icon-and-text":u&&c,["button-vue--vue-".concat(s.type)]:s.type,"button-vue--wide":s.wide,active:n,"router-link-exact-active":r}],attrs:{"aria-label":s.ariaLabel,disabled:s.disabled,type:s.href?null:s.nativeType,role:s.href?"button":null,href:!s.to&&s.href?s.href:null,...s.$attrs},on:{...s.$listeners,click:t=>{var n,r;null===(n=s.$listeners)||void 0===n||null===(r=n.click)||void 0===r||r.call(n,t),null==e||e(t)}}},[t("span",{class:"button-vue__wrapper"},[u?t("span",{class:"button-vue__icon",attrs:{"aria-hidden":s.ariaHidden}},[s.$slots.icon]):null,c?t("span",{class:"button-vue__text"},[l]):null])])};return this.to?t("router-link",{props:{custom:!0,to:this.to,exact:this.exact},scopedSlots:{default:d}}):d()}};var i=n(3379),a=n.n(i),s=n(7795),l=n.n(s),c=n(569),u=n.n(c),d=n(3565),p=n.n(d),h=n(9216),f=n.n(h),m=n(4589),v=n.n(m),g=n(7196),A={};A.styleTagTransform=v(),A.setAttributes=p(),A.insert=u().bind(null,"head"),A.domAPI=l(),A.insertStyleElement=f(),a()(g.Z,A),g.Z&&g.Z.locals&&g.Z.locals;var y=n(1900),b=n(2102),C=n.n(b),w=(0,y.Z)(r,void 0,void 0,!1,null,"4d05be2c",null);"function"==typeof C()&&C()(w);const k=w.exports},7196:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-4d05be2c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue[data-v-4d05be2c]{position:relative;width:fit-content;overflow:hidden;border:0;padding:0;font-size:var(--default-font-size);font-weight:bold;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:22px;transition-property:color,border-color,background-color;transition-duration:.1s;transition-timing-function:linear;color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue *[data-v-4d05be2c],.button-vue span[data-v-4d05be2c]{cursor:pointer}.button-vue[data-v-4d05be2c]:focus{outline:none}.button-vue[data-v-4d05be2c]:disabled{cursor:default;opacity:.5;filter:saturate(0.7)}.button-vue:disabled *[data-v-4d05be2c]{cursor:default}.button-vue[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-light-hover)}.button-vue[data-v-4d05be2c]:active{background-color:var(--color-primary-element-light)}.button-vue__wrapper[data-v-4d05be2c]{display:inline-flex;align-items:center;justify-content:center;width:100%}.button-vue__icon[data-v-4d05be2c]{height:44px;width:44px;min-height:44px;min-width:44px;display:flex;justify-content:center;align-items:center}.button-vue__text[data-v-4d05be2c]{font-weight:bold;margin-bottom:1px;padding:2px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.button-vue--icon-only[data-v-4d05be2c]{width:44px !important}.button-vue--text-only[data-v-4d05be2c]{padding:0 12px}.button-vue--text-only .button-vue__text[data-v-4d05be2c]{margin-left:4px;margin-right:4px}.button-vue--icon-and-text[data-v-4d05be2c]{padding:0 16px 0 4px}.button-vue--wide[data-v-4d05be2c]{width:100%}.button-vue[data-v-4d05be2c]:focus-visible{outline:2px solid var(--color-main-text) !important}.button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{outline:2px solid var(--color-primary-element-text);border-radius:var(--border-radius);background-color:rgba(0,0,0,0)}.button-vue--vue-primary[data-v-4d05be2c]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.button-vue--vue-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-hover)}.button-vue--vue-primary[data-v-4d05be2c]:active{background-color:var(--color-primary-element)}.button-vue--vue-secondary[data-v-4d05be2c]{color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue--vue-secondary[data-v-4d05be2c]:hover:not(:disabled){color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light-hover)}.button-vue--vue-tertiary[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color);background-color:var(--color-background-hover)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{color:var(--color-primary-element-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-success[data-v-4d05be2c]{background-color:var(--color-success);color:#fff}.button-vue--vue-success[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-success-hover)}.button-vue--vue-success[data-v-4d05be2c]:active{background-color:var(--color-success)}.button-vue--vue-warning[data-v-4d05be2c]{background-color:var(--color-warning);color:#fff}.button-vue--vue-warning[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-warning-hover)}.button-vue--vue-warning[data-v-4d05be2c]:active{background-color:var(--color-warning)}.button-vue--vue-error[data-v-4d05be2c]{background-color:var(--color-error);color:#fff}.button-vue--vue-error[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-error-hover)}.button-vue--vue-error[data-v-4d05be2c]:active{background-color:var(--color-error)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcButton/NcButton.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,QAAA,CACA,SAAA,CACA,kCAAA,CACA,gBAAA,CACA,eCcgB,CDbhB,cCagB,CDZhB,YAAA,CACA,kBAAA,CACA,sBAAA,CAGA,cAAA,CAKA,kBAAA,CACA,uDAAA,CACA,uBAAA,CACA,iCAAA,CAkBA,6CAAA,CACA,mDAAA,CA1BA,iEAEC,cAAA,CAQD,mCACC,YAAA,CAGD,sCACC,cAAA,CAIA,UCIiB,CDFjB,oBAAA,CALA,wCACC,cAAA,CAUF,kDACC,yDAAA,CAKD,oCACC,mDAAA,CAGD,sCACC,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAGD,mCACC,WCvCe,CDwCf,UCxCe,CDyCf,eCzCe,CD0Cf,cC1Ce,CD2Cf,YAAA,CACA,sBAAA,CACA,kBAAA,CAGD,mCACC,gBAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CAID,wCACC,qBAAA,CAID,wCACC,cAAA,CACA,0DACC,eAAA,CACA,gBAAA,CAKF,4CACC,oBAAA,CAID,mCACC,UAAA,CAGD,2CACC,mDAAA,CACA,+EACC,mDAAA,CACA,kCAAA,CACA,8BAAA,CAOF,0CACC,6CAAA,CACA,uCAAA,CACA,+DACC,mDAAA,CAID,iDACC,6CAAA,CAKF,4CACC,6CAAA,CACA,mDAAA,CACA,iEACC,6CAAA,CACA,yDAAA,CAKF,2CACC,4BAAA,CACA,8BAAA,CACA,gEACC,6BAAA,CACA,8CAAA,CAKF,yDACC,4BAAA,CACA,8BAAA,CACA,8EACC,8BAAA,CAKF,sDACC,uCAAA,CACA,8BAAA,CAEA,2EACC,8BAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,wCACC,mCAAA,CACA,UAAA,CACA,6DACC,yCAAA,CAID,+CACC,mCAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.button-vue {\n\tposition: relative;\n\twidth: fit-content;\n\toverflow: hidden;\n\tborder: 0;\n\tpadding: 0;\n\tfont-size: var(--default-font-size);\n\tfont-weight: bold;\n\tmin-height: $clickable-area;\n\tmin-width: $clickable-area;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t// Cursor pointer on element and all children\n\tcursor: pointer;\n\t& *,\n\tspan {\n\t\tcursor: pointer;\n\t}\n\tborder-radius: math.div($clickable-area, 2);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: 0.1s;\n\ttransition-timing-function: linear;\n\n\t// No outline feedback for focus. Handled with a toggled class in js (see data)\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t\t& * {\n\t\t\tcursor: default;\n\t\t}\n\t\topacity: $opacity_disabled;\n\t\t// Gives a wash out effect\n\t\tfilter: saturate($opacity_normal);\n\t}\n\n\t// Default button type\n\tcolor: var(--color-primary-element-light-text);\n\tbackground-color: var(--color-primary-element-light);\n\t&:hover:not(:disabled) {\n\t\tbackground-color: var(--color-primary-element-light-hover);\n\t}\n\n\t// Back to the default color for this button when active\n\t// TODO: add ripple effect\n\t&:active {\n\t\tbackground-color: var(--color-primary-element-light);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t}\n\n\t&__icon {\n\t\theight: $clickable-area;\n\t\twidth: $clickable-area;\n\t\tmin-height: $clickable-area;\n\t\tmin-width: $clickable-area;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n\n\t&__text {\n\t\tfont-weight: bold;\n\t\tmargin-bottom: 1px;\n\t\tpadding: 2px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t// Icon-only button\n\t&--icon-only {\n\t\twidth: $clickable-area !important;\n\t}\n\n\t// Text-only button\n\t&--text-only {\n\t\tpadding: 0 12px;\n\t\t& .button-vue__text {\n\t\t\tmargin-left: 4px;\n\t\t\tmargin-right: 4px;\n\t\t}\n\t}\n\n\t// Icon and text button\n\t&--icon-and-text {\n\t\tpadding: 0 16px 0 4px;\n\t}\n\n\t// Wide button spans the whole width of the container\n\t&--wide {\n\t\twidth: 100%;\n\t}\n\n\t&:focus-visible {\n\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t&.button-vue--vue-tertiary-on-primary {\n\t\t\toutline: 2px solid var(--color-primary-element-text);\n\t\t\tborder-radius: var(--border-radius);\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Button types\n\n\t// Primary\n\t&--vue-primary {\n\t\tbackground-color: var(--color-primary-element);\n\t\tcolor: var(--color-primary-element-text);\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t}\n\t}\n\n\t// Secondary\n\t&--vue-secondary {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-light);\n\t\t&:hover:not(:disabled) {\n\t\t\tcolor: var(--color-primary-element-light-text);\n\t\t\tbackground-color: var(--color-primary-element-light-hover);\n\t\t}\n\t}\n\n\t// Tertiary\n\t&--vue-tertiary {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color);\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Tertiary, no background\n\t&--vue-tertiary-no-background {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Tertiary on primary color (like the header)\n\t&--vue-tertiary-on-primary {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: transparent;\n\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Success\n\t&--vue-success {\n\t\tbackground-color: var(--color-success);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-success-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// : add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t}\n\n\t// Warning\n\t&--vue-warning {\n\t\tbackground-color: var(--color-warning);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-warning-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-warning);\n\t\t}\n\t}\n\n\t// Error\n\t&--vue-error {\n\t\tbackground-color: var(--color-error);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-error-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=a},7783:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-54e3932c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.input-field[data-v-54e3932c]{position:relative;width:100%;border-radius:var(--border-radius-large)}.input-field__main-wrapper[data-v-54e3932c]{height:36px;position:relative}.input-field__input[data-v-54e3932c]{margin:0;padding:0 12px;font-size:var(--default-font-size);background-color:var(--color-main-background);color:var(--color-main-text);border:2px solid var(--color-border-maxcontrast);height:36px !important;border-radius:var(--border-radius-large);text-overflow:ellipsis;cursor:pointer;width:100%;-webkit-appearance:textfield !important;-moz-appearance:textfield !important}.input-field__input[data-v-54e3932c]:active:not([disabled]),.input-field__input[data-v-54e3932c]:hover:not([disabled]),.input-field__input[data-v-54e3932c]:focus:not([disabled]){border-color:var(--color-primary-element)}.input-field__input[data-v-54e3932c]:focus{cursor:text}.input-field__input[data-v-54e3932c]:focus-visible{box-shadow:unset !important}.input-field__input--success[data-v-54e3932c]{border-color:var(--color-success) !important}.input-field__input--success[data-v-54e3932c]:focus-visible{box-shadow:#f8fafc 0px 0px 0px 2px,var(--color-primary-element) 0px 0px 0px 4px,rgba(0,0,0,.05) 0px 1px 2px 0px}.input-field__input--error[data-v-54e3932c]{border-color:var(--color-error) !important}.input-field__input--error[data-v-54e3932c]:focus-visible{box-shadow:#f8fafc 0px 0px 0px 2px,var(--color-primary-element) 0px 0px 0px 4px,rgba(0,0,0,.05) 0px 1px 2px 0px}.input-field__input--leading-icon[data-v-54e3932c]{padding-left:28px}.input-field__input--trailing-icon[data-v-54e3932c]{padding-right:28px}.input-field__label[data-v-54e3932c]{padding:4px 0;display:block}.input-field__label--hidden[data-v-54e3932c]{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.input-field__icon[data-v-54e3932c]{position:absolute;height:32px;width:32px;display:flex;align-items:center;justify-content:center;opacity:.7}.input-field__icon--leading[data-v-54e3932c]{bottom:2px;left:2px}.input-field__icon--trailing[data-v-54e3932c]{bottom:2px;right:2px}.input-field__clear-button.button-vue[data-v-54e3932c]{position:absolute;top:2px;right:1px;min-width:unset;min-height:unset;height:32px;width:32px !important;border-radius:var(--border-radius-large)}.input-field__helper-text-message[data-v-54e3932c]{padding:4px 0;display:flex;align-items:center}.input-field__helper-text-message__icon[data-v-54e3932c]{margin-right:8px;align-self:start;margin-top:4px}.input-field__helper-text-message--error[data-v-54e3932c]{color:var(--color-error-text)}.input-field__helper-text-message--success[data-v-54e3932c]{color:var(--color-success-text)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcInputField/NcInputField.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,8BACC,iBAAA,CACA,UAAA,CACA,wCAAA,CAEA,4CACC,WAAA,CACA,iBAAA,CAGD,qCACC,QAAA,CACA,cAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,gDAAA,CACA,sBAAA,CACA,wCAAA,CACA,sBAAA,CACA,cAAA,CACA,UAAA,CACA,uCAAA,CACA,oCAAA,CAEA,kLAGC,yCAAA,CAGD,2CACC,WAAA,CAGD,mDACC,2BAAA,CAGD,8CACC,4CAAA,CACA,4DACC,+GAAA,CAIF,4CACC,0CAAA,CACA,0DACC,+GAAA,CAIF,mDACC,iBAAA,CAGD,oDACC,kBAAA,CAIF,qCACC,aAAA,CACA,aAAA,CAEA,6CACC,iBAAA,CACA,aAAA,CACA,QAAA,CACA,SAAA,CACA,UAAA,CACA,eAAA,CAIF,oCACC,iBAAA,CACA,WAAA,CACA,UAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,6CACC,UAAA,CACA,QAAA,CAGD,8CACC,UAAA,CACA,SAAA,CAIF,uDACC,iBAAA,CACA,OAAA,CACA,SAAA,CACA,eAAA,CACA,gBAAA,CACA,WAAA,CACA,qBAAA,CACA,wCAAA,CAGD,mDACC,aAAA,CACA,YAAA,CACA,kBAAA,CAEA,yDACC,gBAAA,CACA,gBAAA,CACA,cAAA,CAGD,0DACC,6BAAA,CAGD,4DACC,+BAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.input-field {\n\tposition: relative;\n\twidth: 100%;\n\tborder-radius: var(--border-radius-large);\n\n\t&__main-wrapper {\n\t\theight: 36px;\n\t\tposition: relative;\n\t}\n\n\t&__input {\n\t\tmargin: 0;\n\t\tpadding: 0 12px;\n\t\tfont-size: var(--default-font-size);\n\t\tbackground-color: var(--color-main-background);\n\t\tcolor: var(--color-main-text);\n\t\tborder: 2px solid var(--color-border-maxcontrast);\n\t\theight: 36px !important;\n\t\tborder-radius: var(--border-radius-large);\n\t\ttext-overflow: ellipsis;\n\t\tcursor: pointer;\n\t\twidth: 100%;\n\t\t-webkit-appearance: textfield !important;\n\t\t-moz-appearance: textfield !important;\n\n\t\t&:active:not([disabled]),\n\t\t&:hover:not([disabled]),\n\t\t&:focus:not([disabled]) {\n\t\t\tborder-color: var(--color-primary-element);\n\t\t}\n\n\t\t&:focus {\n\t\t\tcursor: text;\n\t\t}\n\n\t\t&:focus-visible {\n\t\t\tbox-shadow: unset !important; // Override server rules\n\t\t}\n\n\t\t&--success {\n\t\t\tborder-color: var(--color-success) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--error {\n\t\t\tborder-color: var(--color-error) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--leading-icon {\n\t\t\tpadding-left: 28px;\n\t\t}\n\n\t\t&--trailing-icon {\n\t\t\tpadding-right: 28px;\n\t\t}\n\t}\n\n\t&__label {\n\t\tpadding: 4px 0;\n\t\tdisplay: block;\n\n\t\t&--hidden {\n\t\t\tposition: absolute;\n\t\t\tleft: -10000px;\n\t\t\ttop: auto;\n\t\t\twidth: 1px;\n\t\t\theight: 1px;\n\t\t\toverflow: hidden;\n\t\t}\n\t}\n\n\t&__icon {\n\t\tposition: absolute;\n\t\theight: 32px;\n\t\twidth: 32px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\topacity: 0.7;\n\t\t&--leading {\n\t\t\tbottom: 2px;\n\t\t\tleft: 2px;\n\t\t}\n\n\t\t&--trailing {\n\t\t\tbottom: 2px;\n\t\t\tright: 2px;\n\t\t}\n\t}\n\n\t&__clear-button.button-vue {\n\t\tposition: absolute;\n\t\ttop: 2px;\n\t\tright: 1px;\n\t\tmin-width: unset;\n\t\tmin-height: unset;\n\t\theight: 32px;\n\t\twidth: 32px !important;\n\t\tborder-radius: var(--border-radius-large);\n\t}\n\n\t&__helper-text-message {\n\t\tpadding: 4px 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\n\t\t&__icon {\n\t\t\tmargin-right: 8px;\n\t\t\talign-self: start;\n\t\t\tmargin-top: 4px;\n\t\t}\n\n\t\t&--error {\n\t\t\tcolor: var(--color-error-text);\n\t\t}\n\n\t\t&--success {\n\t\t\tcolor: var(--color-success-text);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const s=a},3645:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",r=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),r&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),r&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,r,o,i){"string"==typeof t&&(t=[[null,t,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var c=0;c<t.length;c++){var u=[].concat(t[c]);r&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),e.push(u))}},e}},7537:t=>{"use strict";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),i="/*# ".concat(o," */");return[e].concat([i]).join("\n")}return[e].join("\n")}},3379:t=>{"use strict";var e=[];function n(t){for(var n=-1,r=0;r<e.length;r++)if(e[r].identifier===t){n=r;break}return n}function r(t,r){for(var i={},a=[],s=0;s<t.length;s++){var l=t[s],c=r.base?l[0]+r.base:l[0],u=i[c]||0,d="".concat(c," ").concat(u);i[c]=u+1;var p=n(d),h={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)e[p].references++,e[p].updater(h);else{var f=o(h,r);r.byIndex=s,e.splice(s,0,{identifier:d,updater:f,references:1})}a.push(d)}return a}function o(t,e){var n=e.domAPI(e);return n.update(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,o){var i=r(t=t||[],o=o||{});return function(t){t=t||[];for(var a=0;a<i.length;a++){var s=n(i[a]);e[s].references--}for(var l=r(t,o),c=0;c<i.length;c++){var u=n(i[c]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}i=l}}},569:t=>{"use strict";var e={};t.exports=function(t,n){var r=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},9216:t=>{"use strict";t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},3565:(t,e,n)=>{"use strict";t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:t=>{"use strict";t.exports=function(t){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var i=n.sourceMap;i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleTagTransform(r,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:t=>{"use strict";t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},2102:()=>{},4348:()=>{},1900:(t,e,n)=>{"use strict";function r(t,e,n,r,o,i,a,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),i&&(c._scopeId="data-v-"+i),a?(l=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=l):o&&(l=s?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:t,options:c}}n.d(e,{Z:()=>r})}},e={};function r(n){var o=e[n];if(void 0!==o)return o.exports;var i=e[n]={id:n,exports:{}};return t[n](i,i.exports,r),i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nc=void 0;var i={};return(()=>{"use strict";r.r(i),r.d(i,{default:()=>E});var t=r(4462);const e=n(94603);var a=r.n(e);const s=n(80419);var l=r.n(s);const c={name:"NcInputField",components:{NcButton:t.default,AlertCircle:a(),Check:l()},inheritAttrs:!1,props:{value:{type:String,required:!0},type:{type:String,default:"text",validator:t=>["text","password","email","tel","url","search","number"].includes(t)},label:{type:String,default:void 0},labelOutside:{type:Boolean,default:!1},labelVisible:{type:Boolean,default:!1},placeholder:{type:String,default:void 0},showTrailingButton:{type:Boolean,default:!1},trailingButtonLabel:{type:String,default:""},success:{type:Boolean,default:!1},error:{type:Boolean,default:!1},helperText:{type:String,default:""},disabled:{type:Boolean,default:!1},inputClass:{type:[Object,String],default:""}},emits:["update:value","trailing-button-click"],computed:{computedId(){return this.$attrs.id&&""!==this.$attrs.id?this.$attrs.id:this.inputName},inputName:()=>"input"+Math.random().toString(36).replace(/[^a-z]+/g,"").slice(0,5),hasLeadingIcon(){return this.$slots.default},hasTrailingIcon(){return this.success},hasPlaceholder(){return""!==this.placeholder&&void 0!==this.placeholder},computedPlaceholder(){return this.labelVisible?this.hasPlaceholder?this.placeholder:"":this.hasPlaceholder?this.placeholder:this.label},isValidLabel(){const t=this.label||this.labelOutside;return t||o.warn("You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation."),t},ariaDescribedby(){const t=[];return this.helperText.length>0&&t.push("".concat(this.inputName,"-helper-text")),this.$attrs["aria-describedby"]&&t.push(this.$attrs["aria-describedby"]),t.join(" ")||null}},methods:{focus(){this.$refs.input.focus()},select(){this.$refs.input.select()},handleInput(t){this.$emit("update:value",t.target.value)},handleTrailingButtonClick(t){this.$emit("trailing-button-click",t)}}};var u=r(3379),d=r.n(u),p=r(7795),h=r.n(p),f=r(569),m=r.n(f),v=r(3565),g=r.n(v),A=r(9216),y=r.n(A),b=r(4589),C=r.n(b),w=r(7783),k={};k.styleTagTransform=C(),k.setAttributes=g(),k.insert=m().bind(null,"head"),k.domAPI=h(),k.insertStyleElement=y(),d()(w.Z,k),w.Z&&w.Z.locals&&w.Z.locals;var x=r(1900),S=r(4348),j=r.n(S),_=(0,x.Z)(c,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"input-field"},[!t.labelOutside&&t.isValidLabel?e("label",{staticClass:"input-field__label",class:{"input-field__label--hidden":!t.labelVisible},attrs:{for:t.computedId}},[t._v("\n\t\t"+t._s(t.label)+"\n\t")]):t._e(),t._v(" "),e("div",{staticClass:"input-field__main-wrapper"},[e("input",t._g(t._b({ref:"input",staticClass:"input-field__input",class:[t.inputClass,{"input-field__input--trailing-icon":t.showTrailingButton||t.hasTrailingIcon,"input-field__input--leading-icon":t.hasLeadingIcon,"input-field__input--success":t.success,"input-field__input--error":t.error}],attrs:{id:t.computedId,type:t.type,disabled:t.disabled,placeholder:t.computedPlaceholder,"aria-describedby":t.ariaDescribedby,"aria-live":"polite"},domProps:{value:t.value},on:{input:t.handleInput}},"input",t.$attrs,!1),t.$listeners)),t._v(" "),e("div",{directives:[{name:"show",rawName:"v-show",value:t.hasLeadingIcon,expression:"hasLeadingIcon"}],staticClass:"input-field__icon input-field__icon--leading"},[t._t("default")],2),t._v(" "),t.showTrailingButton?e("NcButton",{staticClass:"input-field__clear-button",attrs:{type:"tertiary-no-background","aria-label":t.trailingButtonLabel,disabled:t.disabled},on:{click:t.handleTrailingButtonClick},scopedSlots:t._u([{key:"icon",fn:function(){return[t._t("trailing-button-icon")]},proxy:!0}],null,!0)}):t.success||t.error?e("div",{staticClass:"input-field__icon input-field__icon--trailing"},[t.success?e("Check",{attrs:{size:18}}):t.error?e("AlertCircle",{attrs:{size:18}}):t._e()],1):t._e()],1),t._v(" "),t.helperText.length>0?e("p",{staticClass:"input-field__helper-text-message",class:{"input-field__helper-text-message--error":t.error,"input-field__helper-text-message--success":t.success},attrs:{id:"".concat(t.inputName,"-helper-text")}},[t.success?e("Check",{staticClass:"input-field__helper-text-message__icon",attrs:{size:18}}):t.error?e("AlertCircle",{staticClass:"input-field__helper-text-message__icon",attrs:{size:18}}):t._e(),t._v("\n\t\t"+t._s(t.helperText)+"\n\t")],1):t._e()])}),[],!1,null,"54e3932c",null);"function"==typeof j()&&j()(_);const E=_.exports})(),i})(),t.exports=r()},24768:function(e,n,r){"use strict";var o={};r.r(o),r.d(o,{exclude:function(){return vl},extract:function(){return ul},parse:function(){return dl},parseUrl:function(){return hl},pick:function(){return ml},stringify:function(){return pl},stringifyUrl:function(){return fl}});var i=r(17499),a=r(43554),s=r(31352),l=r(79753),c=r(77958),u=function(){var t,e=(null===(t=OCA)||void 0===t||null===(t=t.Files)||void 0===t||null===(t=t.App)||void 0===t||null===(t=t.currentFileList)||void 0===t?void 0:t.dirInfo)||{path:"/",name:""};return"".concat(e.path,"/").concat(e.name).replace(/\/\//gi,"/")},d=r(48033),p=r(20144),h=r(62520),f=r(3255),m=r(93455),v=r.n(m),g=r(70110),A=r.n(g);function y(t){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},y(t)}function b(){b=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new _(o||[]);return r(a,"_invoke",{value:k(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(E([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function C(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==y(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function k(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=x(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function x(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,x(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function S(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function j(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function _(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(S,this),this.reset(!0)}function E(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:P}}function P(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},C(w.prototype),l(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new w(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},C(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=E,_.prototype={constructor:_,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(j),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),j(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;j(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:E(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function C(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function w(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){C(i,r,o,a,s,"next",t)}function s(t){C(i,r,o,a,s,"throw",t)}a(void 0)}))}}var k=function(){var t=w(b().mark((function t(){var e;return b().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,d.Z.get((0,l.generateOcsUrl)("apps/files/api/v1/templates"));case 2:return e=t.sent,t.abrupt("return",e.data.ocs.data);case 4:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}(),x=function(){var t=w(b().mark((function t(e,n,r){var o;return b().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,d.Z.post((0,l.generateOcsUrl)("apps/files/api/v1/templates/create"),{filePath:e,templatePath:n,templateType:r});case 2:return o=t.sent,t.abrupt("return",o.data.ocs.data);case 4:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}(),S=256,j={name:"TemplatePreview",inheritAttrs:!1,props:{basename:{type:String,required:!0},checked:{type:Boolean,default:!1},fileid:{type:[String,Number],required:!0},filename:{type:String,required:!0},previewUrl:{type:String,default:null},hasPreview:{type:Boolean,default:!0},mime:{type:String,required:!0},ratio:{type:Number,default:null}},data:function(){return{failedPreview:!1}},computed:{nameWithoutExt:function(){return this.basename.indexOf(".")>-1?this.basename.split(".").slice(0,-1).join("."):this.basename},id:function(){return"template-picker-".concat(this.fileid)},realPreviewUrl:function(){return this.failedPreview&&this.mimeIcon?this.mimeIcon:this.previewUrl?this.previewUrl:(0,c.ts)()?(0,l.generateUrl)("/core/preview?fileId=".concat(this.fileid,"&x=").concat(S,"&y=").concat(S,"&a=1")):(0,l.generateUrl)("/apps/files_sharing/publicpreview/".concat(document.getElementById("sharingToken")&&document.getElementById("sharingToken").value,"?fileId=").concat(this.fileid,"&file=").concat((t=this.filename,e=(t.startsWith("/")?t:"/".concat(t)).split("/"),n="",e.forEach((function(t){""!==t&&(n+="/"+encodeURIComponent(t))})),n),"&x=").concat(S,"&y=").concat(S,"&a=1"));var t,e,n},mimeIcon:function(){return OC.MimeType.getIconUrl(this.mime)}},methods:{onCheck:function(){this.$emit("check",this.fileid)},onFailure:function(){this.failedPreview=!0}}},_=r(93379),E=r.n(_),P=r(7795),N=r.n(P),O=r(90569),z=r.n(O),T=r(3565),L=r.n(T),B=r(19216),F=r.n(B),I=r(44589),D=r.n(I),G=r(67679),$={};$.styleTagTransform=D(),$.setAttributes=L(),$.insert=z().bind(null,"head"),$.domAPI=N(),$.insertStyleElement=F(),E()(G.Z,$),G.Z&&G.Z.locals&&G.Z.locals;var M=r(51900),R=(0,M.Z)(j,(function(){var t=this,e=t._self._c;return e("li",{staticClass:"template-picker__item"},[e("input",{staticClass:"radio",attrs:{id:t.id,type:"radio",name:"template-picker"},domProps:{checked:t.checked},on:{change:t.onCheck}}),t._v(" "),e("label",{staticClass:"template-picker__label",attrs:{for:t.id}},[e("div",{staticClass:"template-picker__preview",class:t.failedPreview?"template-picker__preview--failed":""},[e("img",{staticClass:"template-picker__image",attrs:{src:t.realPreviewUrl,alt:"",draggable:"false"},on:{error:t.onFailure}})]),t._v(" "),e("span",{staticClass:"template-picker__title"},[t._v("\n\t\t\t"+t._s(t.nameWithoutExt)+"\n\t\t")])])])}),[],!1,null,"5b09ec60",null).exports,U=r(25108);function V(t){return V="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},V(t)}function Z(){Z=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==V(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function q(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function H(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){q(i,r,o,a,s,"next",t)}function s(t){q(i,r,o,a,s,"throw",t)}a(void 0)}))}}var W={name:"TemplatePicker",components:{NcEmptyContent:v(),NcModal:A(),TemplatePreview:R},props:{logger:{type:Object,required:!0}},data:function(){return{checked:-1,loading:!1,name:null,opened:!1,provider:null}},computed:{nameWithoutExt:function(){return this.name.indexOf(".")>-1?this.name.split(".").slice(0,-1).join("."):this.name},emptyTemplate:function(){var e,n;return{basename:t("files","Blank"),fileid:-1,filename:this.t("files","Blank"),hasPreview:!1,mime:(null===(e=this.provider)||void 0===e?void 0:e.mimetypes[0])||(null===(n=this.provider)||void 0===n?void 0:n.mimetypes)}},selectedTemplate:function(){var t=this;return this.provider.templates.find((function(e){return e.fileid===t.checked}))},style:function(){var t=(this.provider.ratio?this.provider.ratio:1.77)>1?240:160;return{"--margin":"8px","--width":t+"px","--border":"2px","--fullwidth":t+16+4+"px","--height":this.provider.ratio?Math.round(t/this.provider.ratio)+"px":null}}},methods:{open:function(t,e){var n=this;return H(Z().mark((function r(){var o,i;return Z().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return n.checked=n.emptyTemplate.fileid,n.name=t,n.provider=e,r.next=5,k();case 5:if(o=r.sent,null!==(i=o.find((function(t){return t.app===e.app&&t.label===e.label})))){r.next=9;break}throw new Error("Failed to match provider in results");case 9:if(n.provider=i,0!==i.templates.length){r.next=13;break}return n.onSubmit(),r.abrupt("return");case 13:n.opened=!0;case 14:case"end":return r.stop()}}),r)})))()},close:function(){this.checked=this.emptyTemplate.fileid,this.loading=!1,this.name=null,this.opened=!1,this.provider=null},onCheck:function(t){this.checked=t},onSubmit:function(){var t=this;return H(Z().mark((function e(){var n,r,o,i,a,s,l,c,d,p,m;return Z().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.loading=!0,r=u(),o=null===(n=OCA)||void 0===n||null===(n=n.Files)||void 0===n||null===(n=n.App)||void 0===n?void 0:n.currentFileList,t.nameWithoutExt===t.name&&(t.logger.debug("Fixed invalid filename",{name:t.name,extension:null===(i=t.provider)||void 0===i?void 0:i.extension}),t.name=t.name+(null===(a=t.provider)||void 0===a?void 0:a.extension)),e.prev=4,e.next=7,x((0,h.normalize)("".concat(r,"/").concat(t.name)),null===(s=t.selectedTemplate)||void 0===s?void 0:s.filename,null===(l=t.selectedTemplate)||void 0===l?void 0:l.templateType);case 7:return c=e.sent,t.logger.debug("Created new file",c),e.next=11,null==o?void 0:o.addAndFetchFileInfo(t.name).then((function(t,e){return e}));case 11:d=e.sent,p=new OCA.Files.FileInfoModel(d,{filesClient:null==o?void 0:o.filesClient}),(m=OCA.Files.fileActions.getDefaultFileAction(c.mime,"file",OC.PERMISSION_ALL))&&m.action(c.basename,{$file:null==o?void 0:o.findFileEl(t.name),dir:r,fileList:o,fileActions:null==o?void 0:o.fileActions,fileInfoModel:p}),t.close(),e.next=23;break;case 18:e.prev=18,e.t0=e.catch(4),t.logger.error("Error while creating the new file from template"),U.error(e.t0),(0,f.x2)(t.t("files","Unable to create new file from template"));case 23:return e.prev=23,t.loading=!1,e.finish(23);case 26:case"end":return e.stop()}}),e,null,[[4,18,23,26]])})))()}}},K=W,Y=r(54654),J={};J.styleTagTransform=D(),J.setAttributes=L(),J.insert=z().bind(null,"head"),J.domAPI=N(),J.insertStyleElement=F(),E()(Y.Z,J),Y.Z&&Y.Z.locals&&Y.Z.locals;var Q=(0,M.Z)(K,(function(){var t=this,e=t._self._c;return t.opened?e("NcModal",{staticClass:"templates-picker",attrs:{"clear-view-delay":-1,size:"large"},on:{close:t.close}},[e("form",{staticClass:"templates-picker__form",style:t.style,on:{submit:function(e){return e.preventDefault(),e.stopPropagation(),t.onSubmit.apply(null,arguments)}}},[e("h2",[t._v(t._s(t.t("files","Pick a template for {name}",{name:t.nameWithoutExt})))]),t._v(" "),e("ul",{staticClass:"templates-picker__list"},[e("TemplatePreview",t._b({attrs:{checked:t.checked===t.emptyTemplate.fileid},on:{check:t.onCheck}},"TemplatePreview",t.emptyTemplate,!1)),t._v(" "),t._l(t.provider.templates,(function(n){return e("TemplatePreview",t._b({key:n.fileid,attrs:{checked:t.checked===n.fileid,ratio:t.provider.ratio},on:{check:t.onCheck}},"TemplatePreview",n,!1))}))],2),t._v(" "),e("div",{staticClass:"templates-picker__buttons"},[e("input",{staticClass:"primary",attrs:{type:"submit","aria-label":t.t("files","Create a new file with the selected template")},domProps:{value:t.t("files","Create")}})])]),t._v(" "),t.loading?e("NcEmptyContent",{staticClass:"templates-picker__loading",attrs:{icon:"icon-loading"}},[t._v("\n\t\t"+t._s(t.t("files","Creating file"))+"\n\t")]):t._e()],1):t._e()}),[],!1,null,"d46f1dc6",null),X=Q.exports;function tt(t){return tt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},tt(t)}function et(){et=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==tt(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function nt(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}var rt=(0,i.IY)().setApp("files").detectUser().build();p.default.mixin({methods:{t:s.Iu,n:s.uN}});var ot=document.createElement("div");ot.id="template-picker",document.body.appendChild(ot);var it=(0,a.j)("files","templates",[]),at=(0,a.j)("files","templates_path",!1);rt.debug("Templates providers",it),rt.debug("Templates folder",{templatesPath:at});var st=new(p.default.extend(X))({name:"TemplatePicker",propsData:{logger:rt}});st.$mount("#template-picker"),window.addEventListener("DOMContentLoaded",(function(){if(!at){rt.debug("Templates folder not initialized");var t={attach:function(t){t.addMenuEntry({id:"template-init",displayName:(0,s.Iu)("files","Set up templates folder"),templateName:(0,s.Iu)("files","Templates"),iconClass:"icon-template-add",fileType:"file",actionLabel:(0,s.Iu)("files","Create new templates folder"),actionHandler:function(e){ct(e),t.removeMenuEntry("template-init")}})}};OC.Plugins.register("OCA.Files.NewFileMenu",t)}})),it.forEach((function(t,e){var n={attach:function(n){var r=n.fileList;"files"!==r.id&&"files.public"!==r.id||n.addMenuEntry({id:"template-new-".concat(t.app,"-").concat(e),displayName:t.label,templateName:t.label+t.extension,iconClass:t.iconClass||"icon-file",fileType:"file",actionLabel:t.actionLabel,actionHandler:function(e){st.open(e,t)}})}};OC.Plugins.register("OCA.Files.NewFileMenu",n)}));var lt,ct=function(){var t,e=(t=et().mark((function t(e){var n,r;return et().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=(u()+"/".concat(e)).replace("//","/"),t.prev=1,rt.debug("Initializing the templates directory",{templatePath:n}),t.next=5,d.Z.post((0,l.generateOcsUrl)("apps/files/api/v1/templates/path"),{templatePath:n,copySystemTemplates:!0});case 5:r=t.sent,OCA.Files.App.currentFileList.changeDirectory(n,!0,!0),it=r.data.ocs.data.templates,at=r.data.ocs.data.template_path,t.next=15;break;case 11:t.prev=11,t.t0=t.catch(1),rt.error("Unable to initialize the templates directory"),(0,f.x2)((0,s.Iu)("files","Unable to initialize the templates directory"));case 15:case"end":return t.stop()}}),t,null,[[1,11]])})),function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){nt(i,r,o,a,s,"next",t)}function s(t){nt(i,r,o,a,s,"throw",t)}a(void 0)}))});return function(t){return e.apply(this,arguments)}}(),ut=r(69183);lt={attach:function(t){var e=this;(0,ut.Ld)("nextcloud:unified-search.search",(function(e){var n=e.query;t.setFilter(n)})),(0,ut.Ld)("nextcloud:unified-search.reset",(function(){e.query=null,t.setFilter("")}))}},window.OC.Plugins.register("OCA.Files.FileList",lt);var dt,pt=r(14596),ht=r(26721);null===(dt=(0,c.ts)())?(0,i.IY)().setApp("files").build():(0,i.IY)().setApp("files").setUid(dt.uid).build();const ft=["B","KB","MB","GB","TB","PB"],mt=["B","KiB","MiB","GiB","TiB","PiB"];function vt(t,e=!1,n=!1){"string"==typeof t&&(t=Number(t));let r=t>0?Math.floor(Math.log(t)/Math.log(n?1024:1e3)):0;r=Math.min((n?mt.length:ft.length)-1,r);const o=n?mt[r]:ft[r];let i=(t/Math.pow(n?1024:1e3,r)).toFixed(1);return!0===e&&0===r?("0.0"!==i?"< 1 ":"0 ")+(n?mt[1]:ft[1]):(i=r<2?parseFloat(i).toFixed(0):parseFloat(i).toLocaleString((0,s.aj)()),i+" "+o)}var gt=(t=>(t[t.NONE=0]="NONE",t[t.CREATE=4]="CREATE",t[t.READ=1]="READ",t[t.UPDATE=2]="UPDATE",t[t.DELETE=8]="DELETE",t[t.SHARE=16]="SHARE",t[t.ALL=31]="ALL",t))(gt||{});const At=function(t=""){let e=gt.NONE;return t&&((t.includes("C")||t.includes("K"))&&(e|=gt.CREATE),t.includes("G")&&(e|=gt.READ),(t.includes("W")||t.includes("N")||t.includes("V"))&&(e|=gt.UPDATE),t.includes("D")&&(e|=gt.DELETE),t.includes("R")&&(e|=gt.SHARE)),e};var yt=(t=>(t.Folder="folder",t.File="file",t))(yt||{});const bt=function(t,e){return null!==t.match(e)},Ct=(t,e)=>{if(t.id&&"number"!=typeof t.id)throw new Error("Invalid id type of value");if(!t.source)throw new Error("Missing mandatory source");try{new URL(t.source)}catch{throw new Error("Invalid source format, source must be a valid URL")}if(!t.source.startsWith("http"))throw new Error("Invalid source format, only http(s) is supported");if(t.mtime&&!(t.mtime instanceof Date))throw new Error("Invalid mtime type");if(t.crtime&&!(t.crtime instanceof Date))throw new Error("Invalid crtime type");if(!t.mime||"string"!=typeof t.mime||!t.mime.match(/^[-\w.]+\/[-+\w.]+$/gi))throw new Error("Missing or invalid mandatory mime");if("size"in t&&"number"!=typeof t.size&&void 0!==t.size)throw new Error("Invalid size type");if("permissions"in t&&void 0!==t.permissions&&!("number"==typeof t.permissions&&t.permissions>=gt.NONE&&t.permissions<=gt.ALL))throw new Error("Invalid permissions");if(t.owner&&null!==t.owner&&"string"!=typeof t.owner)throw new Error("Invalid owner type");if(t.attributes&&"object"!=typeof t.attributes)throw new Error("Invalid attributes type");if(t.root&&"string"!=typeof t.root)throw new Error("Invalid root type");if(t.root&&!t.root.startsWith("/"))throw new Error("Root must start with a leading slash");if(t.root&&!t.source.includes(t.root))throw new Error("Root must be part of the source");if(t.root&&bt(t.source,e)){const n=t.source.match(e)[0];if(!t.source.includes((0,h.join)(n,t.root)))throw new Error("The root must be relative to the service. e.g /files/emma")}};class wt{_data;_attributes;_knownDavService=/(remote|public)\.php\/(web)?dav/i;constructor(t,e){Ct(t,e||this._knownDavService),this._data=t;const n={set:(t,e,n)=>(this.updateMtime(),Reflect.set(t,e,n)),deleteProperty:(t,e)=>(this.updateMtime(),Reflect.deleteProperty(t,e))};this._attributes=new Proxy(t.attributes||{},n),delete this._data.attributes,e&&(this._knownDavService=e)}get source(){return this._data.source.replace(/\/$/i,"")}get basename(){return(0,h.basename)(this.source)}get extension(){return(0,h.extname)(this.source)}get dirname(){if(this.root){const t=this.source.indexOf(this.root);return(0,h.dirname)(this.source.slice(t+this.root.length)||"/")}const t=new URL(this.source);return(0,h.dirname)(t.pathname)}get mime(){return this._data.mime}get mtime(){return this._data.mtime}get crtime(){return this._data.crtime}get size(){return this._data.size}get attributes(){return this._attributes}get permissions(){return null!==this.owner||this.isDavRessource?void 0!==this._data.permissions?this._data.permissions:gt.NONE:gt.READ}get owner(){return this.isDavRessource?this._data.owner:null}get isDavRessource(){return bt(this.source,this._knownDavService)}get root(){return this._data.root?this._data.root.replace(/^(.+)\/$/,"$1"):this.isDavRessource&&(0,h.dirname)(this.source).split(this._knownDavService).pop()||null}get path(){if(this.root){const t=this.source.indexOf(this.root);return this.source.slice(t+this.root.length)||"/"}return(this.dirname+"/"+this.basename).replace(/\/\//g,"/")}get fileid(){return this._data?.id||this.attributes?.fileid}move(t){Ct({...this._data,source:t},this._knownDavService),this._data.source=t,this.updateMtime()}rename(t){if(t.includes("/"))throw new Error("Invalid basename");this.move((0,h.dirname)(this.source)+"/"+t)}updateMtime(){this._data.mtime&&(this._data.mtime=new Date)}}class kt extends wt{get type(){return yt.File}}class xt extends wt{constructor(t){super({...t,mime:"httpd/unix-directory"})}get type(){return yt.Folder}get extension(){return null}get mime(){return"httpd/unix-directory"}}const St=`/files/${(0,c.ts)()?.uid}`;(0,l.generateRemoteUrl)("dav"+St);var jt,_t=(0,i.IY)().setApp("files").detectUser().build();function Et(t){return Et="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Et(t)}function Pt(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Nt(r.key),r)}}function Nt(t){var e=function(t,e){if("object"!==Et(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==Et(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Et(e)?e:String(e)}!function(t){t.DEFAULT="default",t.HIDDEN="hidden"}(jt||(jt={}));var Ot=function(){function t(e){var n,r,o;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),n=this,o=void 0,(r=Nt(r="_action"))in n?Object.defineProperty(n,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[r]=o,this.validateAction(e),this._action=e}var e,n;return e=t,(n=[{key:"id",get:function(){return this._action.id}},{key:"displayName",get:function(){return this._action.displayName}},{key:"iconSvgInline",get:function(){return this._action.iconSvgInline}},{key:"enabled",get:function(){return this._action.enabled}},{key:"exec",get:function(){return this._action.exec}},{key:"execBatch",get:function(){return this._action.execBatch}},{key:"order",get:function(){return this._action.order}},{key:"default",get:function(){return this._action.default}},{key:"inline",get:function(){return this._action.inline}},{key:"renderInline",get:function(){return this._action.renderInline}},{key:"validateAction",value:function(t){if(!t.id||"string"!=typeof t.id)throw new Error("Invalid id");if(!t.displayName||"function"!=typeof t.displayName)throw new Error("Invalid displayName function");if(!t.iconSvgInline||"function"!=typeof t.iconSvgInline)throw new Error("Invalid iconSvgInline function");if(!t.exec||"function"!=typeof t.exec)throw new Error("Invalid exec function");if("enabled"in t&&"function"!=typeof t.enabled)throw new Error("Invalid enabled function");if("execBatch"in t&&"function"!=typeof t.execBatch)throw new Error("Invalid execBatch function");if("order"in t&&"number"!=typeof t.order)throw new Error("Invalid order");if(t.default&&!Object.values(jt).includes(t.default))throw new Error("Invalid default");if("inline"in t&&"function"!=typeof t.inline)throw new Error("Invalid inline function");if("renderInline"in t&&"function"!=typeof t.renderInline)throw new Error("Invalid renderInline function")}}])&&Pt(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}(),zt=function(t){void 0===window._nc_fileactions&&(window._nc_fileactions=[],_t.debug("FileActions initialized")),window._nc_fileactions.find((function(e){return e.id===t.id}))?_t.error("FileAction ".concat(t.id," already registered"),{action:t}):window._nc_fileactions.push(t)},Tt=function(){return window._nc_fileactions||[]};function Lt(t){return Lt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Lt(t)}function Bt(){Bt=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Lt(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function Ft(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function It(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){Ft(i,r,o,a,s,"next",t)}function s(t){Ft(i,r,o,a,s,"throw",t)}a(void 0)}))}}function Dt(t){return Dt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Dt(t)}function Gt(){Gt=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Dt(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function $t(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function Mt(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){$t(i,r,o,a,s,"next",t)}function s(t){$t(i,r,o,a,s,"throw",t)}a(void 0)}))}}zt(new Ot({id:"delete",displayName:function(t,e){return"trashbin"===e.id?(0,s.Iu)("files_trashbin","Delete permanently"):(0,s.Iu)("files","Delete")},iconSvgInline:function(){return'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-trash-can" viewBox="0 0 24 24"><path d="M9,3V4H4V6H5V19A2,2 0 0,0 7,21H17A2,2 0 0,0 19,19V6H20V4H15V3H9M9,8H11V17H9V8M13,8H15V17H13V8Z" /></svg>'},enabled:function(t){return t.length>0&&t.map((function(t){return t.permissions})).every((function(t){return 0!=(t&gt.DELETE)}))},exec:function(t){return It(Bt().mark((function e(){return Bt().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,d.Z.delete(t.source);case 3:return(0,ut.j8)("files:node:deleted",t),e.abrupt("return",!0);case 7:return e.prev=7,e.t0=e.catch(0),_t.error("Error while deleting a file",{error:e.t0,source:t.source,node:t}),e.abrupt("return",!1);case 11:case"end":return e.stop()}}),e,null,[[0,7]])})))()},execBatch:function(t,e,n){var r=this;return It(Bt().mark((function o(){return Bt().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return o.abrupt("return",Promise.all(t.map((function(t){return r.exec(t,e,n)}))));case 1:case"end":return o.stop()}}),o)})))()},order:100}));var Rt=function(t){var e=document.createElement("a");e.download="",e.href=t,e.click()},Ut=function(t,e){var n=Math.random().toString(36).substring(2),r=(0,l.generateUrl)("/apps/files/ajax/download.php?dir={dir}&files={files}&downloadStartSecret={secret}",{dir:t,secret:n,files:JSON.stringify(e.map((function(t){return t.basename})))});Rt(r)};zt(new Ot({id:"download",displayName:function(){return(0,s.Iu)("files","Download")},iconSvgInline:function(){return'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-arrow-down" viewBox="0 0 24 24"><path d="M11,4H13V16L18.5,10.5L19.92,11.92L12,19.84L4.08,11.92L5.5,10.5L11,16V4Z" /></svg>'},enabled:function(t){return t.length>0&&t.map((function(t){return t.permissions})).every((function(t){return 0!=(t&gt.READ)}))},exec:function(t,e,n){return Mt(Gt().mark((function e(){return Gt().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.type!==yt.Folder){e.next=3;break}return Ut(n,[t]),e.abrupt("return",null);case 3:return Rt(t.source),e.abrupt("return",null);case 5:case"end":return e.stop()}}),e)})))()},execBatch:function(t,e,n){var r=this;return Mt(Gt().mark((function o(){return Gt().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(1!==t.length){o.next=3;break}return r.exec(t[0],e,n),o.abrupt("return",[null]);case 3:return Ut(n,t),o.abrupt("return",new Array(t.length).fill(null));case 5:case"end":return o.stop()}}),o)})))()},order:30}));var Vt=r(65358);function Zt(t){return Zt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Zt(t)}function qt(){qt=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Zt(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function Ht(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function Wt(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){Ht(i,r,o,a,s,"next",t)}function s(t){Ht(i,r,o,a,s,"throw",t)}a(void 0)}))}}var Kt=function(){var t=Wt(qt().mark((function t(e){var n,r,o,i,a;return qt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=(0,l.generateOcsUrl)("apps/files/api/v1")+"/openlocaleditor?format=json",t.prev=1,t.next=4,d.Z.post(n,{path:e});case 4:o=t.sent,i=null===(r=(0,c.ts)())||void 0===r?void 0:r.uid,a="nc://open/".concat(i,"@")+window.location.host+(0,Vt.Ec)(e),a+="?token="+o.data.ocs.data.token,window.location.href=a,t.next=14;break;case 11:t.prev=11,t.t0=t.catch(1),(0,f.x2)((0,s.Iu)("files","Failed to redirect to client"));case 14:case"end":return t.stop()}}),t,null,[[1,11]])})));return function(e){return t.apply(this,arguments)}}(),Yt=new Ot({id:"edit-locally",displayName:function(){return(0,s.Iu)("files","Edit locally")},iconSvgInline:function(){return'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-laptop" viewBox="0 0 24 24"><path d="M4,6H20V16H4M20,18A2,2 0 0,0 22,16V6C22,4.89 21.1,4 20,4H4C2.89,4 2,4.89 2,6V16A2,2 0 0,0 4,18H0V20H24V18H20Z" /></svg>'},enabled:function(t){return 1===t.length&&0!=(t[0].permissions&gt.UPDATE)},exec:function(t){return Wt(qt().mark((function e(){return qt().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Kt(t.path),e.abrupt("return",null);case 2:case"end":return e.stop()}}),e)})))()},order:25});/Android|iPhone|iPad|iPod/i.test(navigator.userAgent)||zt(Yt);var Jt='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-star" viewBox="0 0 24 24"><path d="M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z" /></svg>';function Qt(t){return Qt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Qt(t)}function Xt(){Xt=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Qt(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function te(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function ee(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){te(i,r,o,a,s,"next",t)}function s(t){te(i,r,o,a,s,"throw",t)}a(void 0)}))}}var ne=function(t){return t.some((function(t){return 1!==t.attributes.favorite}))},re=function(){var t=ee(Xt().mark((function t(e,n,r){var o,i;return Xt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,o=(0,l.generateUrl)("/apps/files/api/v1/files")+e.path,t.next=4,d.Z.post(o,{tags:r?[window.OC.TAG_FAVORITE]:[]});case 4:return"favorites"!==n.id||r||"/"!==e.dirname||(0,ut.j8)("files:node:deleted",e),p.default.set(e.attributes,"favorite",r?1:0),r?(0,ut.j8)("files:favorites:added",e):(0,ut.j8)("files:favorites:removed",e),t.abrupt("return",!0);case 10:return t.prev=10,t.t0=t.catch(0),i=r?"adding a file to favourites":"removing a file from favourites",_t.error("Error while "+i,{error:t.t0,source:e.source,node:e}),t.abrupt("return",!1);case 15:case"end":return t.stop()}}),t,null,[[0,10]])})));return function(e,n,r){return t.apply(this,arguments)}}(),oe=new Ot({id:"favorite",displayName:function(t){return ne(t)?(0,s.Iu)("files","Add to favorites"):(0,s.Iu)("files","Remove from favorites")},iconSvgInline:function(t){return ne(t)?'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-star-outline" viewBox="0 0 24 24"><path d="M12,15.39L8.24,17.66L9.23,13.38L5.91,10.5L10.29,10.13L12,6.09L13.71,10.13L18.09,10.5L14.77,13.38L15.76,17.66M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z" /></svg>':Jt},enabled:function(t){return!t.some((function(t){var e,n;return!(null!==(e=t.root)&&void 0!==e&&null!==(n=e.startsWith)&&void 0!==n&&n.call(e,"/files"))}))&&t.every((function(t){return t.permissions!==gt.NONE}))},exec:function(t,e){return ee(Xt().mark((function n(){var r;return Xt().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return r=ne([t]),n.next=3,re(t,e,r);case 3:return n.abrupt("return",n.sent);case 4:case"end":return n.stop()}}),n)})))()},execBatch:function(t,e){return ee(Xt().mark((function n(){var r;return Xt().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return r=ne(t),n.abrupt("return",Promise.all(t.map(function(){var t=ee(Xt().mark((function t(n){return Xt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,re(n,e,r);case 2:return t.abrupt("return",t.sent);case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}())));case 2:case"end":return n.stop()}}),n)})))()},order:-50});zt(oe);var ie='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-folder" viewBox="0 0 24 24"><path d="M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z" /></svg>';function ae(t){return ae="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ae(t)}function se(){se=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==ae(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function le(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}var ce=new Ot({id:"open-folder",displayName:function(t){var e=t[0].attributes.displayName||t[0].basename;return(0,s.Iu)("files","Open folder {displayName}",{displayName:e})},iconSvgInline:function(){return ie},enabled:function(t){if(1!==t.length)return!1;var e=t[0];return!!e.isDavRessource&&e.type===yt.Folder&&0!=(e.permissions&gt.READ)},exec:function(t,e,n){return(r=se().mark((function r(){return se().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(t&&t.type===yt.Folder){r.next=2;break}return r.abrupt("return",!1);case 2:return window.OCP.Files.Router.goToRoute(null,{view:e.id,fileid:void 0},{dir:(0,h.join)(n,t.basename),fileid:void 0}),r.abrupt("return",null);case 4:case"end":return r.stop()}}),r)})),function(){var t=this,e=arguments;return new Promise((function(n,o){var i=r.apply(t,e);function a(t){le(i,n,o,a,s,"next",t)}function s(t){le(i,n,o,a,s,"throw",t)}a(void 0)}))})();var r},default:jt.HIDDEN,order:-100});function ue(t){return ue="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ue(t)}function de(){de=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==ue(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function pe(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}zt(ce);var he=new Ot({id:"open-in-files-recent",displayName:function(){return(0,s.Iu)("files","Open in Files")},iconSvgInline:function(){return""},enabled:function(t,e){return"recent"===e.id},exec:function(t){return(e=de().mark((function e(){var n;return de().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.dirname,t.type===yt.Folder&&(n=n+"/"+t.basename),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:t.fileid},{dir:n,fileid:t.fileid}),e.abrupt("return",null);case 4:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(t){pe(i,r,o,a,s,"next",t)}function s(t){pe(i,r,o,a,s,"throw",t)}a(void 0)}))})();var e},order:-1e3,default:jt.HIDDEN});function fe(t){return fe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},fe(t)}function me(){me=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==fe(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function ve(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}zt(he);var ge=new Ot({id:"rename",displayName:function(){return(0,s.Iu)("files","Rename")},iconSvgInline:function(){return'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-pencil" viewBox="0 0 24 24"><path d="M20.71,7.04C21.1,6.65 21.1,6 20.71,5.63L18.37,3.29C18,2.9 17.35,2.9 16.96,3.29L15.12,5.12L18.87,8.87M3,17.25V21H6.75L17.81,9.93L14.06,6.18L3,17.25Z" /></svg>'},enabled:function(t){return t.length>0&&t.map((function(t){return t.permissions})).every((function(t){return 0!=(t&gt.UPDATE)}))},exec:function(t){return(e=me().mark((function e(){return me().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return(0,ut.j8)("files:node:rename",t),e.abrupt("return",null);case 2:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(t){ve(i,r,o,a,s,"next",t)}function s(t){ve(i,r,o,a,s,"throw",t)}a(void 0)}))})();var e},order:10});function Ae(t){return Ae="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ae(t)}function ye(){ye=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Ae(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function be(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}zt(ge);var Ce="details",we=new Ot({id:Ce,displayName:function(){return(0,s.Iu)("files","Open details")},iconSvgInline:function(){return'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-information-variant" viewBox="0 0 24 24"><path d="M13.5,4A1.5,1.5 0 0,0 12,5.5A1.5,1.5 0 0,0 13.5,7A1.5,1.5 0 0,0 15,5.5A1.5,1.5 0 0,0 13.5,4M13.14,8.77C11.95,8.87 8.7,11.46 8.7,11.46C8.5,11.61 8.56,11.6 8.72,11.88C8.88,12.15 8.86,12.17 9.05,12.04C9.25,11.91 9.58,11.7 10.13,11.36C12.25,10 10.47,13.14 9.56,18.43C9.2,21.05 11.56,19.7 12.17,19.3C12.77,18.91 14.38,17.8 14.54,17.69C14.76,17.54 14.6,17.42 14.43,17.17C14.31,17 14.19,17.12 14.19,17.12C13.54,17.55 12.35,18.45 12.19,17.88C12,17.31 13.22,13.4 13.89,10.71C14,10.07 14.3,8.67 13.14,8.77Z" /></svg>'},enabled:function(t){var e,n,r;return 1===t.length&&!!t[0]&&!(null===(e=window)||void 0===e||null===(e=e.OCA)||void 0===e||null===(e=e.Files)||void 0===e||!e.Sidebar)&&null!==(n=(null===(r=t[0].root)||void 0===r?void 0:r.startsWith("/files/"))&&t[0].permissions!==gt.NONE)&&void 0!==n&&n},exec:function(t,e){return(n=ye().mark((function n(){return ye().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,window.OCA.Files.Sidebar.open(t.path);case 3:return window.OCP.Files.Router.goToRoute(null,{view:e.id,fileid:t.fileid},{dir:t.dirname},!0),n.abrupt("return",null);case 7:return n.prev=7,n.t0=n.catch(0),_t.error("Error while opening sidebar",{error:n.t0}),n.abrupt("return",!1);case 11:case"end":return n.stop()}}),n,null,[[0,7]])})),function(){var t=this,e=arguments;return new Promise((function(r,o){var i=n.apply(t,e);function a(t){be(i,r,o,a,s,"next",t)}function s(t){be(i,r,o,a,s,"throw",t)}a(void 0)}))})();var n},order:-50});function ke(t){return ke="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ke(t)}function xe(){xe=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==ke(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function Se(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}zt(we);var je=new Ot({id:"view-in-folder",displayName:function(){return(0,s.Iu)("files","View in folder")},iconSvgInline:function(){return'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-folder-move" viewBox="0 0 24 24"><path d="M14,18V15H10V11H14V8L19,13M20,6H12L10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6Z" /></svg>'},enabled:function(t){if(1!==t.length)return!1;var e=t[0];return!!e.isDavRessource&&e.permissions!==gt.NONE&&e.type===yt.File},exec:function(t,e,n){return(r=xe().mark((function e(){return xe().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t&&t.type===yt.File){e.next=2;break}return e.abrupt("return",!1);case 2:return window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:t.fileid},{dir:t.dirname}),e.abrupt("return",null);case 4:case"end":return e.stop()}}),e)})),function(){var t=this,e=arguments;return new Promise((function(n,o){var i=r.apply(t,e);function a(t){Se(i,n,o,a,s,"next",t)}function s(t){Se(i,n,o,a,s,"throw",t)}a(void 0)}))})();var r},order:80});zt(je);var _e=!0;function Ee(){return"undefined"!=typeof navigator&&"undefined"!=typeof window?window:void 0!==r.g?r.g:{}}p.default.util.warn;const Pe="function"==typeof Proxy,Ne="devtools-plugin:setup";let Oe,ze;class Te{constructor(t,e){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=t,this.hook=e;const n={};if(t.settings)for(const e in t.settings){const r=t.settings[e];n[e]=r.defaultValue}const o=`__vue-devtools-plugin-settings__${t.id}`;let i=Object.assign({},n);try{const t=localStorage.getItem(o),e=JSON.parse(t);Object.assign(i,e)}catch(t){}this.fallbacks={getSettings(){return i},setSettings(t){try{localStorage.setItem(o,JSON.stringify(t))}catch(t){}i=t},now(){return void 0!==Oe||("undefined"!=typeof window&&window.performance?(Oe=!0,ze=window.performance):void 0!==r.g&&(null===(t=r.g.perf_hooks)||void 0===t?void 0:t.performance)?(Oe=!0,ze=r.g.perf_hooks.performance):Oe=!1),Oe?ze.now():Date.now();var t}},e&&e.on("plugin:settings:set",((t,e)=>{t===this.plugin.id&&this.fallbacks.setSettings(e)})),this.proxiedOn=new Proxy({},{get:(t,e)=>this.target?this.target.on[e]:(...t)=>{this.onQueue.push({method:e,args:t})}}),this.proxiedTarget=new Proxy({},{get:(t,e)=>this.target?this.target[e]:"on"===e?this.proxiedOn:Object.keys(this.fallbacks).includes(e)?(...t)=>(this.targetQueue.push({method:e,args:t,resolve:()=>{}}),this.fallbacks[e](...t)):(...t)=>new Promise((n=>{this.targetQueue.push({method:e,args:t,resolve:n})}))})}async setRealTarget(t){this.target=t;for(const t of this.onQueue)this.target.on[t.method](...t.args);for(const t of this.targetQueue)t.resolve(await this.target[t.method](...t.args))}}function Le(t,e){const n=t,r=Ee(),o=Ee().__VUE_DEVTOOLS_GLOBAL_HOOK__,i=Pe&&n.enableEarlyProxy;if(!o||!r.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__&&i){const t=i?new Te(n,o):null;(r.__VUE_DEVTOOLS_PLUGINS__=r.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:n,setupFn:e,proxy:t}),t&&e(t.proxiedTarget)}else o.emit(Ne,t,e)}var Be=r(25108);let Fe;const Ie=t=>Fe=t,De=Symbol();function Ge(t){return t&&"object"==typeof t&&"[object Object]"===Object.prototype.toString.call(t)&&"function"!=typeof t.toJSON}var $e;!function(t){t.direct="direct",t.patchObject="patch object",t.patchFunction="patch function"}($e||($e={}));const Me="undefined"!=typeof window,Re="undefined"!=typeof __VUE_PROD_DEVTOOLS__&&__VUE_PROD_DEVTOOLS__&&Me,Ue=(()=>"object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:"object"==typeof globalThis?globalThis:{HTMLElement:null})();function Ve(t,e,n){const r=new XMLHttpRequest;r.open("GET",t),r.responseType="blob",r.onload=function(){Ke(r.response,e,n)},r.onerror=function(){Be.error("could not download file")},r.send()}function Ze(t){const e=new XMLHttpRequest;e.open("HEAD",t,!1);try{e.send()}catch(t){}return e.status>=200&&e.status<=299}function qe(t){try{t.dispatchEvent(new MouseEvent("click"))}catch(e){const n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t.dispatchEvent(n)}}const He="object"==typeof navigator?navigator:{userAgent:""},We=(()=>/Macintosh/.test(He.userAgent)&&/AppleWebKit/.test(He.userAgent)&&!/Safari/.test(He.userAgent))(),Ke=Me?"undefined"!=typeof HTMLAnchorElement&&"download"in HTMLAnchorElement.prototype&&!We?function(t,e="download",n){const r=document.createElement("a");r.download=e,r.rel="noopener","string"==typeof t?(r.href=t,r.origin!==location.origin?Ze(r.href)?Ve(t,e,n):(r.target="_blank",qe(r)):qe(r)):(r.href=URL.createObjectURL(t),setTimeout((function(){URL.revokeObjectURL(r.href)}),4e4),setTimeout((function(){qe(r)}),0))}:"msSaveOrOpenBlob"in He?function(t,e="download",n){if("string"==typeof t)if(Ze(t))Ve(t,e,n);else{const e=document.createElement("a");e.href=t,e.target="_blank",setTimeout((function(){qe(e)}))}else navigator.msSaveOrOpenBlob(function(t,{autoBom:e=!1}={}){return e&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(t.type)?new Blob([String.fromCharCode(65279),t],{type:t.type}):t}(t,n),e)}:function(t,e,n,r){if((r=r||open("","_blank"))&&(r.document.title=r.document.body.innerText="downloading..."),"string"==typeof t)return Ve(t,e,n);const o="application/octet-stream"===t.type,i=/constructor/i.test(String(Ue.HTMLElement))||"safari"in Ue,a=/CriOS\/[\d]+/.test(navigator.userAgent);if((a||o&&i||We)&&"undefined"!=typeof FileReader){const e=new FileReader;e.onloadend=function(){let t=e.result;if("string"!=typeof t)throw r=null,new Error("Wrong reader.result type");t=a?t:t.replace(/^data:[^;]*;/,"data:attachment/file;"),r?r.location.href=t:location.assign(t),r=null},e.readAsDataURL(t)}else{const e=URL.createObjectURL(t);r?r.location.assign(e):location.href=e,r=null,setTimeout((function(){URL.revokeObjectURL(e)}),4e4)}}:()=>{};function Ye(t,e){const n="🍍 "+t;"function"==typeof __VUE_DEVTOOLS_TOAST__?__VUE_DEVTOOLS_TOAST__(n,e):"error"===e?Be.error(n):"warn"===e?Be.warn(n):Be.log(n)}function Je(t){return"_a"in t&&"install"in t}function Qe(){if(!("clipboard"in navigator))return Ye("Your browser doesn't support the Clipboard API","error"),!0}function Xe(t){return!!(t instanceof Error&&t.message.toLowerCase().includes("document is not focused"))&&(Ye('You need to activate the "Emulate a focused page" setting in the "Rendering" panel of devtools.',"warn"),!0)}let tn;function en(t,e){for(const n in e){const r=t.state.value[n];r&&Object.assign(r,e[n])}}function nn(t){return{_custom:{display:t}}}const rn="🍍 Pinia (root)",on="_root";function an(t){return Je(t)?{id:on,label:rn}:{id:t.$id,label:t.$id}}function sn(t){return t?Array.isArray(t)?t.reduce(((t,e)=>(t.keys.push(e.key),t.operations.push(e.type),t.oldValue[e.key]=e.oldValue,t.newValue[e.key]=e.newValue,t)),{oldValue:{},keys:[],operations:[],newValue:{}}):{operation:nn(t.type),key:nn(t.key),oldValue:t.oldValue,newValue:t.newValue}:{}}function ln(t){switch(t){case $e.direct:return"mutation";case $e.patchFunction:case $e.patchObject:return"$patch";default:return"unknown"}}let cn=!0;const un=[],dn="pinia:mutations",pn="pinia",{assign:hn}=Object,fn=t=>"🍍 "+t;function mn(t,e){Le({id:"dev.esm.pinia",label:"Pinia 🍍",logo:"https://pinia.vuejs.org/logo.svg",packageName:"pinia",homepage:"https://pinia.vuejs.org",componentStateTypes:un,app:t},(n=>{"function"!=typeof n.now&&Ye("You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html."),n.addTimelineLayer({id:dn,label:"Pinia 🍍",color:15064968}),n.addInspector({id:pn,label:"Pinia 🍍",icon:"storage",treeFilterPlaceholder:"Search stores",actions:[{icon:"content_copy",action:()=>{!async function(t){if(!Qe())try{await navigator.clipboard.writeText(JSON.stringify(t.state.value)),Ye("Global state copied to clipboard.")}catch(t){if(Xe(t))return;Ye("Failed to serialize the state. Check the console for more details.","error"),Be.error(t)}}(e)},tooltip:"Serialize and copy the state"},{icon:"content_paste",action:async()=>{await async function(t){if(!Qe())try{en(t,JSON.parse(await navigator.clipboard.readText())),Ye("Global state pasted from clipboard.")}catch(t){if(Xe(t))return;Ye("Failed to deserialize the state from clipboard. Check the console for more details.","error"),Be.error(t)}}(e),n.sendInspectorTree(pn),n.sendInspectorState(pn)},tooltip:"Replace the state with the content of your clipboard"},{icon:"save",action:()=>{!async function(t){try{Ke(new Blob([JSON.stringify(t.state.value)],{type:"text/plain;charset=utf-8"}),"pinia-state.json")}catch(t){Ye("Failed to export the state as JSON. Check the console for more details.","error"),Be.error(t)}}(e)},tooltip:"Save the state as a JSON file"},{icon:"folder_open",action:async()=>{await async function(t){try{const e=(tn||(tn=document.createElement("input"),tn.type="file",tn.accept=".json"),function(){return new Promise(((t,e)=>{tn.onchange=async()=>{const e=tn.files;if(!e)return t(null);const n=e.item(0);return t(n?{text:await n.text(),file:n}:null)},tn.oncancel=()=>t(null),tn.onerror=e,tn.click()}))}),n=await e();if(!n)return;const{text:r,file:o}=n;en(t,JSON.parse(r)),Ye(`Global state imported from "${o.name}".`)}catch(t){Ye("Failed to import the state from JSON. Check the console for more details.","error"),Be.error(t)}}(e),n.sendInspectorTree(pn),n.sendInspectorState(pn)},tooltip:"Import the state from a JSON file"}],nodeActions:[{icon:"restore",tooltip:'Reset the state (with "$reset")',action:t=>{const n=e._s.get(t);n?"function"!=typeof n.$reset?Ye(`Cannot reset "${t}" store because it doesn't have a "$reset" method implemented.`,"warn"):(n.$reset(),Ye(`Store "${t}" reset.`)):Ye(`Cannot reset "${t}" store because it wasn't found.`,"warn")}}]}),n.on.inspectComponent(((t,e)=>{const n=t.componentInstance&&t.componentInstance.proxy;if(n&&n._pStores){const e=t.componentInstance.proxy._pStores;Object.values(e).forEach((e=>{t.instanceData.state.push({type:fn(e.$id),key:"state",editable:!0,value:e._isOptionsAPI?{_custom:{value:(0,p.toRaw)(e.$state),actions:[{icon:"restore",tooltip:"Reset the state of this store",action:()=>e.$reset()}]}}:Object.keys(e.$state).reduce(((t,n)=>(t[n]=e.$state[n],t)),{})}),e._getters&&e._getters.length&&t.instanceData.state.push({type:fn(e.$id),key:"getters",editable:!1,value:e._getters.reduce(((t,n)=>{try{t[n]=e[n]}catch(e){t[n]=e}return t}),{})})}))}})),n.on.getInspectorTree((n=>{if(n.app===t&&n.inspectorId===pn){let t=[e];t=t.concat(Array.from(e._s.values())),n.rootNodes=(n.filter?t.filter((t=>"$id"in t?t.$id.toLowerCase().includes(n.filter.toLowerCase()):rn.toLowerCase().includes(n.filter.toLowerCase()))):t).map(an)}})),n.on.getInspectorState((n=>{if(n.app===t&&n.inspectorId===pn){const t=n.nodeId===on?e:e._s.get(n.nodeId);if(!t)return;t&&(n.state=function(t){if(Je(t)){const e=Array.from(t._s.keys()),n=t._s,r={state:e.map((e=>({editable:!0,key:e,value:t.state.value[e]}))),getters:e.filter((t=>n.get(t)._getters)).map((t=>{const e=n.get(t);return{editable:!1,key:t,value:e._getters.reduce(((t,n)=>(t[n]=e[n],t)),{})}}))};return r}const e={state:Object.keys(t.$state).map((e=>({editable:!0,key:e,value:t.$state[e]})))};return t._getters&&t._getters.length&&(e.getters=t._getters.map((e=>({editable:!1,key:e,value:t[e]})))),t._customProperties.size&&(e.customProperties=Array.from(t._customProperties).map((e=>({editable:!0,key:e,value:t[e]})))),e}(t))}})),n.on.editInspectorState(((n,r)=>{if(n.app===t&&n.inspectorId===pn){const t=n.nodeId===on?e:e._s.get(n.nodeId);if(!t)return Ye(`store "${n.nodeId}" not found`,"error");const{path:r}=n;Je(t)?r.unshift("state"):1===r.length&&t._customProperties.has(r[0])&&!(r[0]in t.$state)||r.unshift("$state"),cn=!1,n.set(t,r,n.state.value),cn=!0}})),n.on.editComponentState((t=>{if(t.type.startsWith("🍍")){const n=t.type.replace(/^🍍\s*/,""),r=e._s.get(n);if(!r)return Ye(`store "${n}" not found`,"error");const{path:o}=t;if("state"!==o[0])return Ye(`Invalid path for store "${n}":\n${o}\nOnly state can be modified.`);o[0]="$state",cn=!1,t.set(r,o,t.state.value),cn=!0}}))}))}let vn,gn=0;function An(t,e,n){const r=e.reduce(((e,n)=>(e[n]=(0,p.toRaw)(t)[n],e)),{});for(const e in r)t[e]=function(){const o=gn,i=n?new Proxy(t,{get(...t){return vn=o,Reflect.get(...t)},set(...t){return vn=o,Reflect.set(...t)}}):t;vn=o;const a=r[e].apply(i,arguments);return vn=void 0,a}}function yn({app:t,store:e,options:n}){if(e.$id.startsWith("__hot:"))return;e._isOptionsAPI=!!n.state,An(e,Object.keys(n.actions),e._isOptionsAPI);const r=e._hotUpdate;(0,p.toRaw)(e)._hotUpdate=function(t){r.apply(this,arguments),An(e,Object.keys(t._hmrPayload.actions),!!e._isOptionsAPI)},function(t,e){un.includes(fn(e.$id))||un.push(fn(e.$id)),Le({id:"dev.esm.pinia",label:"Pinia 🍍",logo:"https://pinia.vuejs.org/logo.svg",packageName:"pinia",homepage:"https://pinia.vuejs.org",componentStateTypes:un,app:t,settings:{logStoreChanges:{label:"Notify about new/deleted stores",type:"boolean",defaultValue:!0}}},(t=>{const n="function"==typeof t.now?t.now.bind(t):Date.now;e.$onAction((({after:r,onError:o,name:i,args:a})=>{const s=gn++;t.addTimelineEvent({layerId:dn,event:{time:n(),title:"🛫 "+i,subtitle:"start",data:{store:nn(e.$id),action:nn(i),args:a},groupId:s}}),r((r=>{vn=void 0,t.addTimelineEvent({layerId:dn,event:{time:n(),title:"🛬 "+i,subtitle:"end",data:{store:nn(e.$id),action:nn(i),args:a,result:r},groupId:s}})})),o((r=>{vn=void 0,t.addTimelineEvent({layerId:dn,event:{time:n(),logType:"error",title:"💥 "+i,subtitle:"end",data:{store:nn(e.$id),action:nn(i),args:a,error:r},groupId:s}})}))}),!0),e._customProperties.forEach((r=>{(0,p.watch)((()=>(0,p.unref)(e[r])),((e,o)=>{t.notifyComponentUpdate(),t.sendInspectorState(pn),cn&&t.addTimelineEvent({layerId:dn,event:{time:n(),title:"Change",subtitle:r,data:{newValue:e,oldValue:o},groupId:vn}})}),{deep:!0})})),e.$subscribe((({events:r,type:o},i)=>{if(t.notifyComponentUpdate(),t.sendInspectorState(pn),!cn)return;const a={time:n(),title:ln(o),data:hn({store:nn(e.$id)},sn(r)),groupId:vn};o===$e.patchFunction?a.subtitle="⤵️":o===$e.patchObject?a.subtitle="🧩":r&&!Array.isArray(r)&&(a.subtitle=r.type),r&&(a.data["rawEvent(s)"]={_custom:{display:"DebuggerEvent",type:"object",tooltip:"raw DebuggerEvent[]",value:r}}),t.addTimelineEvent({layerId:dn,event:a})}),{detached:!0,flush:"sync"});const r=e._hotUpdate;e._hotUpdate=(0,p.markRaw)((o=>{r(o),t.addTimelineEvent({layerId:dn,event:{time:n(),title:"🔥 "+e.$id,subtitle:"HMR update",data:{store:nn(e.$id),info:nn("HMR update")}}}),t.notifyComponentUpdate(),t.sendInspectorTree(pn),t.sendInspectorState(pn)}));const{$dispose:o}=e;e.$dispose=()=>{o(),t.notifyComponentUpdate(),t.sendInspectorTree(pn),t.sendInspectorState(pn),t.getSettings().logStoreChanges&&Ye(`Disposed "${e.$id}" store 🗑`)},t.notifyComponentUpdate(),t.sendInspectorTree(pn),t.sendInspectorState(pn),t.getSettings().logStoreChanges&&Ye(`"${e.$id}" store installed 🆕`)}))}(t,e)}const bn=()=>{};function Cn(t,e,n,r=bn){t.push(e);const o=()=>{const n=t.indexOf(e);n>-1&&(t.splice(n,1),r())};return!n&&(0,p.getCurrentScope)()&&(0,p.onScopeDispose)(o),o}function wn(t,...e){t.slice().forEach((t=>{t(...e)}))}const kn=t=>t();function xn(t,e){t instanceof Map&&e instanceof Map&&e.forEach(((e,n)=>t.set(n,e))),t instanceof Set&&e instanceof Set&&e.forEach(t.add,t);for(const n in e){if(!e.hasOwnProperty(n))continue;const r=e[n],o=t[n];Ge(o)&&Ge(r)&&t.hasOwnProperty(n)&&!(0,p.isRef)(r)&&!(0,p.isReactive)(r)?t[n]=xn(o,r):t[n]=r}return t}const Sn=Symbol(),jn=new WeakMap,{assign:_n}=Object;function En(t){return!(!(0,p.isRef)(t)||!t.effect)}function Pn(t,e,n={},r,o,i){let a;const s=_n({actions:{}},n),l={deep:!0};let c,u,d,h=[],f=[];const m=r.state.value[t];i||m||(_e?(0,p.set)(r.state.value,t,{}):r.state.value[t]={});const v=(0,p.ref)({});let g;function A(e){let n;c=u=!1,"function"==typeof e?(e(r.state.value[t]),n={type:$e.patchFunction,storeId:t,events:d}):(xn(r.state.value[t],e),n={type:$e.patchObject,payload:e,storeId:t,events:d});const o=g=Symbol();(0,p.nextTick)().then((()=>{g===o&&(c=!0)})),u=!0,wn(h,n,r.state.value[t])}const y=i?function(){const{state:t}=n,e=t?t():{};this.$patch((t=>{_n(t,e)}))}:bn;function b(e,n){return function(){Ie(r);const o=Array.from(arguments),i=[],a=[];let s;wn(f,{args:o,name:e,store:k,after:function(t){i.push(t)},onError:function(t){a.push(t)}});try{s=n.apply(this&&this.$id===t?this:k,o)}catch(t){throw wn(a,t),t}return s instanceof Promise?s.then((t=>(wn(i,t),t))).catch((t=>(wn(a,t),Promise.reject(t)))):(wn(i,s),s)}}const C=(0,p.markRaw)({actions:{},getters:{},state:[],hotState:v}),w={_p:r,$id:t,$onAction:Cn.bind(null,f),$patch:A,$reset:y,$subscribe(e,n={}){const o=Cn(h,e,n.detached,(()=>i())),i=a.run((()=>(0,p.watch)((()=>r.state.value[t]),(r=>{("sync"===n.flush?u:c)&&e({storeId:t,type:$e.direct,events:d},r)}),_n({},l,n))));return o},$dispose:function(){a.stop(),h=[],f=[],r._s.delete(t)}};_e&&(w._r=!1);const k=(0,p.reactive)(Re?_n({_hmrPayload:C,_customProperties:(0,p.markRaw)(new Set)},w):w);r._s.set(t,k);const x=r._a&&r._a.runWithContext||kn,S=r._e.run((()=>(a=(0,p.effectScope)(),x((()=>a.run(e))))));for(const e in S){const n=S[e];if((0,p.isRef)(n)&&!En(n)||(0,p.isReactive)(n))i||(!m||(j=n,_e?jn.has(j):Ge(j)&&j.hasOwnProperty(Sn))||((0,p.isRef)(n)?n.value=m[e]:xn(n,m[e])),_e?(0,p.set)(r.state.value[t],e,n):r.state.value[t][e]=n);else if("function"==typeof n){const t=b(e,n);_e?(0,p.set)(S,e,t):S[e]=t,s.actions[e]=n}}var j;if(_e?Object.keys(S).forEach((t=>{(0,p.set)(k,t,S[t])})):(_n(k,S),_n((0,p.toRaw)(k),S)),Object.defineProperty(k,"$state",{get:()=>r.state.value[t],set:t=>{A((e=>{_n(e,t)}))}}),Re){const t={writable:!0,configurable:!0,enumerable:!1};["_p","_hmrPayload","_getters","_customProperties"].forEach((e=>{Object.defineProperty(k,e,_n({value:k[e]},t))}))}return _e&&(k._r=!0),r._p.forEach((t=>{if(Re){const e=a.run((()=>t({store:k,app:r._a,pinia:r,options:s})));Object.keys(e||{}).forEach((t=>k._customProperties.add(t))),_n(k,e)}else _n(k,a.run((()=>t({store:k,app:r._a,pinia:r,options:s}))))})),m&&i&&n.hydrate&&n.hydrate(k.$state,m),c=!0,u=!0,k}function Nn(t,e,n){let r,o;const i="function"==typeof e;function a(t,n){const a=!!(0,p.getCurrentInstance)();return(t=t||(a?(0,p.inject)(De,null):null))&&Ie(t),(t=Fe)._s.has(r)||(i?Pn(r,e,o,t):function(t,e,n,r){const{state:o,actions:i,getters:a}=e,s=n.state.value[t];let l;l=Pn(t,(function(){s||(_e?(0,p.set)(n.state.value,t,o?o():{}):n.state.value[t]=o?o():{});const e=(0,p.toRefs)(n.state.value[t]);return _n(e,i,Object.keys(a||{}).reduce(((e,r)=>(e[r]=(0,p.markRaw)((0,p.computed)((()=>{Ie(n);const e=n._s.get(t);if(!_e||e._r)return a[r].call(e,e)}))),e)),{}))}),e,n,0,!0)}(r,o,t)),t._s.get(r)}return"string"==typeof t?(r=t,o=i?n:e):(o=t,r=t.id),a.$id=r,a}var On=function(t,e){return t<e?-1:t>e?1:0},zn=function(t,e){var n=t.localeCompare(e);return n?n/Math.abs(n):0},Tn=/(^0x[\da-fA-F]+$|^([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?(?!\.\d+)(?=\D|\s|$))|\d+)/g,Ln=/^\s+|\s+$/g,Bn=/\s+/g,Fn=/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/,In=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[/-]\d{1,4}[/-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,Dn=/^0+[1-9]{1}[0-9]*$/,Gn=/[^\x00-\x80]/,$n=function(t,e){return t<e?-1:t>e?1:0},Mn=function(t){return t.replace(Bn," ").replace(Ln,"")},Rn=function(t){if(0!==t.length){var e=Number(t);if(!Number.isNaN(e))return e}},Un=function(t,e,n){if(Fn.test(t)&&(!Dn.test(t)||0===e||"."!==n[e-1]))return Rn(t)||0},Vn=function(t,e,n){return{parsedNumber:Un(t,e,n),normalizedString:Mn(t)}},Zn=function(t){var e=function(t){return t.replace(Tn,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0")}(t).map(Vn);return e},qn=function(t){return"function"==typeof t},Hn=function(t){return Number.isNaN(t)||t instanceof Number&&Number.isNaN(t.valueOf())},Wn=function(t){return null===t},Kn=function(t){return!(null===t||"object"!=typeof t||Array.isArray(t)||t instanceof Number||t instanceof String||t instanceof Boolean||t instanceof Date)},Yn=function(t){return"symbol"==typeof t},Jn=function(t){return void 0===t},Qn=function(t){if("string"==typeof t||t instanceof String||("number"==typeof t||t instanceof Number)&&!Hn(t)||"boolean"==typeof t||t instanceof Boolean||t instanceof Date){var e=function(t){return"boolean"==typeof t||t instanceof Boolean?Number(t).toString():"number"==typeof t||t instanceof Number?t.toString():t instanceof Date?t.getTime().toString():"string"==typeof t||t instanceof String?t.toLowerCase().replace(Ln,""):""}(t),n=function(t){var e=Rn(t);return void 0!==e?e:function(t){try{var e=Date.parse(t);return!Number.isNaN(e)&&In.test(t)?e:void 0}catch(t){return}}(t)}(e);return{parsedNumber:n,chunks:Zn(n?""+n:e),value:t}}return{isArray:Array.isArray(t),isFunction:qn(t),isNaN:Hn(t),isNull:Wn(t),isObject:Kn(t),isSymbol:Yn(t),isUndefined:Jn(t),value:t}},Xn=function(t){return"function"==typeof t?t:function(e){if(Array.isArray(e)){var n=Number(t);if(Number.isInteger(n))return e[n]}else if(e&&"object"==typeof e){var r=Object.getOwnPropertyDescriptor(e,t);return null==r?void 0:r.value}return e}};function tr(t,e,n){if(!t||!Array.isArray(t))return[];var r=function(t){if(!t)return[];var e=Array.isArray(t)?[].concat(t):[t];return e.some((function(t){return"string"!=typeof t&&"number"!=typeof t&&"function"!=typeof t}))?[]:e}(e),o=function(t){if(!t)return[];var e=Array.isArray(t)?[].concat(t):[t];return e.some((function(t){return"asc"!==t&&"desc"!==t&&"function"!=typeof t}))?[]:e}(n);return function(t,e,n){var r=e.length?e.map(Xn):[function(t){return t}],o=t.map((function(t,e){return{index:e,values:r.map((function(e){return e(t)})).map(Qn)}}));return o.sort((function(t,e){return function(t,e,n){for(var r=t.index,o=t.values,i=e.index,a=e.values,s=o.length,l=n.length,c=0;c<s;c++){var u=c<l?n[c]:null;if(u&&"function"==typeof u){var d=u(o[c].value,a[c].value);if(d)return d}else{var p=(h=o[c],f=a[c],h.value===f.value?0:void 0!==h.parsedNumber&&void 0!==f.parsedNumber?On(h.parsedNumber,f.parsedNumber):h.chunks&&f.chunks?function(t,e){for(var n=t.length,r=e.length,o=Math.min(n,r),i=0;i<o;i++){var a=t[i],s=e[i];if(a.normalizedString!==s.normalizedString){if(""===a.normalizedString!=(""===s.normalizedString))return""===a.normalizedString?-1:1;if(void 0!==a.parsedNumber&&void 0!==s.parsedNumber){var l=On(a.parsedNumber,s.parsedNumber);return 0===l?$n(a.normalizedString,s.normalizedString):l}return void 0!==a.parsedNumber||void 0!==s.parsedNumber?void 0!==a.parsedNumber?-1:1:Gn.test(a.normalizedString+s.normalizedString)?zn(a.normalizedString,s.normalizedString):$n(a.normalizedString,s.normalizedString)}}return n>o||r>o?n<=o?-1:1:0}(h.chunks,f.chunks):function(t,e){return(t.chunks?!e.chunks:e.chunks)?t.chunks?-1:1:(t.isNaN?!e.isNaN:e.isNaN)?t.isNaN?-1:1:(t.isSymbol?!e.isSymbol:e.isSymbol)?t.isSymbol?-1:1:(t.isObject?!e.isObject:e.isObject)?t.isObject?-1:1:(t.isArray?!e.isArray:e.isArray)?t.isArray?-1:1:(t.isFunction?!e.isFunction:e.isFunction)?t.isFunction?-1:1:(t.isNull?!e.isNull:e.isNull)?t.isNull?-1:1:0}(h,f));if(p)return p*("desc"===u?-1:1)}}var h,f;return r-i}(t,e,n)})),o.map((function(e){return function(t,e){return t[e]}(t,e.index)}))}(t,r,o)}var er=r(69680),nr=r.n(er),rr=r(10861),or=r.n(rr),ir=r(91211),ar=r.n(ir),sr=r(64192),lr=r.n(sr);function cr(t){return cr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cr(t)}function ur(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function dr(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?ur(Object(n),!0).forEach((function(e){pr(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):ur(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function pr(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==cr(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==cr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===cr(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var hr=function(){var t=Nn("files",{state:function(){return{files:{},roots:{}}},getters:{getNode:function(t){return function(e){return t.files[e]}},getNodes:function(t){return function(e){return e.map((function(e){return t.files[e]})).filter(Boolean)}},getRoot:function(t){return function(e){return t.roots[e]}}},actions:{updateNodes:function(t){var e=t.reduce((function(t,e){return e.fileid?(t[e.fileid]=e,t):(_t.error("Trying to update/set a node without fileid",e),t)}),{});p.default.set(this,"files",dr(dr({},this.files),e))},deleteNodes:function(t){var e=this;t.forEach((function(t){t.fileid&&p.default.delete(e.files,t.fileid)}))},setRoot:function(t){var e=t.service,n=t.root;p.default.set(this.roots,e,n)},onDeletedNode:function(t){this.deleteNodes([t])}}}).apply(void 0,arguments);return t._initialized||((0,ut.Ld)("files:node:deleted",t.onDeletedNode),t._initialized=!0),t},fr=function(){var t=Nn("paths",{state:function(){return{paths:{}}},getters:{getPath:function(t){return function(e,n){if(t.paths[e])return t.paths[e][n]}}},actions:{addPath:function(t){this.paths[t.service]||p.default.set(this.paths,t.service,{}),p.default.set(this.paths[t.service],t.path,t.fileid)}}}).apply(void 0,arguments);return t._initialized||(t._initialized=!0),t},mr=Nn("selection",{state:function(){return{selected:[],lastSelection:[],lastSelectedIndex:null}},actions:{set:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];p.default.set(this,"selected",t)},setLastIndex:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;p.default.set(this,"lastSelection",t?this.selected:[]),p.default.set(this,"lastSelectedIndex",t)},reset:function(){p.default.set(this,"selected",[]),p.default.set(this,"lastSelection",[]),p.default.set(this,"lastSelectedIndex",null)}}});function vr(t){return vr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},vr(t)}function gr(){gr=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==vr(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function Ar(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}var yr=(0,a.j)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0}),br=function(){var t=Nn("userconfig",{state:function(){return{userConfig:yr}},actions:{onUpdate:function(t,e){p.default.set(this.userConfig,t,e)},update:function(t,e){return(n=gr().mark((function n(){return gr().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,d.Z.put((0,l.generateUrl)("/apps/files/api/v1/config/"+t),{value:e});case 2:(0,ut.j8)("files:config:updated",{key:t,value:e});case 3:case"end":return n.stop()}}),n)})),function(){var t=this,e=arguments;return new Promise((function(r,o){var i=n.apply(t,e);function a(t){Ar(i,r,o,a,s,"next",t)}function s(t){Ar(i,r,o,a,s,"throw",t)}a(void 0)}))})();var n}}}),e=t.apply(void 0,arguments);return e._initialized||((0,ut.Ld)("files:config:updated",(function(t){var n=t.key,r=t.value;e.onUpdate(n,r)})),e._initialized=!0),e};function Cr(t){return Cr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Cr(t)}function wr(){wr=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Cr(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function kr(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}var xr=(0,a.j)("files","viewConfigs",{}),Sr=function(){var t=Nn("viewconfig",{state:function(){return{viewConfig:xr}},getters:{getConfig:function(t){return function(e){return t.viewConfig[e]||{}}}},actions:{onUpdate:function(t,e,n){this.viewConfig[t]||p.default.set(this.viewConfig,t,{}),p.default.set(this.viewConfig[t],e,n)},update:function(t,e,n){return(r=wr().mark((function r(){return wr().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:d.Z.put((0,l.generateUrl)("/apps/files/api/v1/views/".concat(t,"/").concat(e)),{value:n}),(0,ut.j8)("files:viewconfig:updated",{view:t,key:e,value:n});case 2:case"end":return r.stop()}}),r)})),function(){var t=this,e=arguments;return new Promise((function(n,o){var i=r.apply(t,e);function a(t){kr(i,n,o,a,s,"next",t)}function s(t){kr(i,n,o,a,s,"throw",t)}a(void 0)}))})();var r},setSortingBy:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"basename",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"files";this.update(e,"sorting_mode",t),this.update(e,"sorting_direction","asc")},toggleSortingDirection:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"files",e="asc"===(this.getConfig(t)||{sorting_direction:"asc"}).sorting_direction?"desc":"asc";this.update(t,"sorting_direction",e)}}}),e=t.apply(void 0,arguments);return e._initialized||((0,ut.Ld)("files:viewconfig:updated",(function(t){var n=t.view,r=t.key,o=t.value;e.onUpdate(n,r,o)})),e._initialized=!0),e},jr={name:"HomeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},_r=(0,M.Z)(jr,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon home-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Er=r(64412),Pr=r.n(Er),Nr=r(44706),Or=r.n(Nr);function zr(t){return zr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},zr(t)}function Tr(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Lr(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Tr(Object(n),!0).forEach((function(e){Br(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Tr(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Br(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==zr(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==zr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===zr(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function Fr(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var Ir=p.default.extend({name:"BreadCrumbs",components:{Home:_r,NcBreadcrumbs:Or(),NcBreadcrumb:Pr()},props:{path:{type:String,default:"/"}},setup:function(){return{filesStore:hr(),pathsStore:fr()}},computed:{currentView:function(){return this.$navigation.active},dirs:function(){var t,e,n=this.path.split("/").filter(Boolean).map((t="/",function(e){return t+="".concat(e,"/")}));return["/"].concat(function(t){if(Array.isArray(t))return Fr(t)}(e=n.map((function(t){return t.replace(/^(.+)\/$/,"$1")})))||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(e)||function(t,e){if(t){if("string"==typeof t)return Fr(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Fr(t,e):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())},sections:function(){var t=this;return this.dirs.map((function(e){var n=Lr(Lr({},t.$route),{},{query:{dir:e}});return{dir:e,exact:!0,name:t.getDirDisplayName(e),to:n}}))}},methods:{getNodeFromId:function(t){return this.filesStore.getNode(t)},getFileIdFromPath:function(t){var e;return this.pathsStore.getPath(null===(e=this.currentView)||void 0===e?void 0:e.id,t)},getDirDisplayName:function(e){var n;if("/"===e)return t("files","Home");var r=this.getFileIdFromPath(e),o=this.getNodeFromId(r);return(null==o||null===(n=o.attributes)||void 0===n?void 0:n.displayName)||(0,h.basename)(e)},onClick:function(t){var e;(null==t||null===(e=t.query)||void 0===e?void 0:e.dir)===this.$route.query.dir&&this.$emit("reload")},ariaLabel:function(e){var n;return(null==e||null===(n=e.to)||void 0===n||null===(n=n.query)||void 0===n?void 0:n.dir)===this.$route.query.dir?t("files","Reload current directory"):t("files",'Go to the "{dir}" directory',e)}}}),Dr=r(39959),Gr={};Gr.styleTagTransform=D(),Gr.setAttributes=L(),Gr.insert=z().bind(null,"head"),Gr.domAPI=N(),Gr.insertStyleElement=F(),E()(Dr.Z,Gr),Dr.Z&&Dr.Z.locals&&Dr.Z.locals;var $r=(0,M.Z)(Ir,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcBreadcrumbs",{attrs:{"data-cy-files-content-breadcrumbs":""}},t._l(t.sections,(function(n,r){return e("NcBreadcrumb",t._b({key:n.dir,attrs:{"aria-label":t.ariaLabel(n),title:t.ariaLabel(n)},nativeOn:{click:function(e){return t.onClick(n.to)}},scopedSlots:t._u([0===r?{key:"icon",fn:function(){return[e("Home",{attrs:{size:20}})]},proxy:!0}:null],null,!0)},"NcBreadcrumb",n,!1))})),1)}),[],!1,null,"68b3b20b",null).exports,Mr=r(20296),Rr=p.default.extend({name:"VirtualList",props:{dataComponent:{type:[Object,Function],required:!0},dataKey:{type:String,required:!0},dataSources:{type:Array,required:!0},itemHeight:{type:Number,required:!0},extraProps:{type:Object,default:function(){return{}}},scrollToIndex:{type:Number,default:0}},data:function(){return{bufferItems:3,index:this.scrollToIndex,beforeHeight:0,headerHeight:0,tableHeight:0,resizeObserver:null}},computed:{isReady:function(){return this.tableHeight>0},startIndex:function(){return Math.max(0,this.index-3)},shownItems:function(){return Math.ceil((this.tableHeight-this.headerHeight)/this.itemHeight)+6},renderedItems:function(){return this.isReady?this.dataSources.slice(this.startIndex,this.startIndex+this.shownItems):[]},tbodyStyle:function(){var t=this.startIndex+this.shownItems>this.dataSources.length,e=this.dataSources.length-this.startIndex-this.shownItems,n=Math.min(this.dataSources.length-this.startIndex,e);return{paddingTop:"".concat(this.startIndex*this.itemHeight,"px"),paddingBottom:t?0:"".concat(n*this.itemHeight,"px")}}},watch:{scrollToIndex:function(){this.index=this.scrollToIndex,this.$el.scrollTop=this.index*this.itemHeight+this.beforeHeight}},mounted:function(){var t,e,n,r=this,o=null===(t=this.$refs)||void 0===t?void 0:t.before,i=this.$el,a=null===(e=this.$refs)||void 0===e?void 0:e.tfoot,s=null===(n=this.$refs)||void 0===n?void 0:n.thead;this.resizeObserver=new ResizeObserver((0,Mr.debounce)((function(){var t,e,n;r.beforeHeight=null!==(t=null==o?void 0:o.clientHeight)&&void 0!==t?t:0,r.headerHeight=null!==(e=null==s?void 0:s.clientHeight)&&void 0!==e?e:0,r.tableHeight=null!==(n=null==i?void 0:i.clientHeight)&&void 0!==n?n:0,_t.debug("VirtualList resizeObserver updated"),r.onScroll()}),100,!1)),this.resizeObserver.observe(o),this.resizeObserver.observe(i),this.resizeObserver.observe(a),this.resizeObserver.observe(s),this.$el.addEventListener("scroll",this.onScroll),this.scrollToIndex&&(this.$el.scrollTop=this.index*this.itemHeight+this.beforeHeight)},beforeDestroy:function(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{onScroll:function(){this.index=Math.max(0,Math.round((this.$el.scrollTop-this.beforeHeight)/this.itemHeight))}}}),Ur=(0,M.Z)(Rr,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("table",{staticClass:"files-list",attrs:{"data-cy-files-list":""}},[e("div",{ref:"before",staticClass:"files-list__before"},[t._t("before")],2),t._v(" "),e("thead",{ref:"thead",staticClass:"files-list__thead",attrs:{"data-cy-files-list-thead":""}},[t._t("header")],2),t._v(" "),e("tbody",{staticClass:"files-list__tbody",style:t.tbodyStyle,attrs:{"data-cy-files-list-tbody":""}},t._l(t.renderedItems,(function(n,r){return e(t.dataComponent,t._b({key:r,tag:"component",attrs:{visible:(r>=t.bufferItems||t.index<=t.bufferItems)&&r<t.shownItems-t.bufferItems,source:n,index:r}},"component",t.extraProps,!1))})),1),t._v(" "),e("tfoot",{directives:[{name:"show",rawName:"v-show",value:t.isReady,expression:"isReady"}],ref:"tfoot",staticClass:"files-list__tfoot",attrs:{"data-cy-files-list-tfoot":""}},[t._t("footer")],2)])}),[],!1,null,"46226ed6",null).exports,Vr=r(3443);function Zr(t){return!!(0,p.getCurrentScope)()&&((0,p.onScopeDispose)(t),!0)}function qr(t){return"function"==typeof t?t():(0,p.unref)(t)}p.default.util.warn,p.default.util.warn,r(25108),Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;const Hr="undefined"!=typeof window,Wr=(Object.prototype.toString,()=>{}),Kr=Yr();function Yr(){var t;return Hr&&(null==(t=null==window?void 0:window.navigator)?void 0:t.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent)}function Jr(t){const e=Object.create(null);return n=>e[n]||(e[n]=t(n))}const Qr=/\B([A-Z])/g,Xr=(Jr((t=>t.replace(Qr,"-$1").toLowerCase())),/-(\w)/g);function to(t){var e;const n=qr(t);return null!=(e=null==n?void 0:n.$el)?e:n}Jr((t=>t.replace(Xr,((t,e)=>e?e.toUpperCase():"")))),Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,p.default.util.warn,r(25108),Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Hr&&window,Hr&&window.document,Hr&&window.navigator,Hr&&window.location,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Number.POSITIVE_INFINITY,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,r(25108);const eo=Hr?window:void 0;function no(...t){let e,n,r,o;if("string"==typeof t[0]||Array.isArray(t[0])?([n,r,o]=t,e=eo):[e,n,r,o]=t,!e)return Wr;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const i=[],a=()=>{i.forEach((t=>t())),i.length=0},s=(0,p.watch)((()=>[to(e),qr(o)]),(([t,e])=>{a(),t&&i.push(...n.flatMap((n=>r.map((r=>((t,e,n,r)=>(t.addEventListener(e,n,r),()=>t.removeEventListener(e,n,r)))(t,n,r,e))))))}),{immediate:!0,flush:"post"}),l=()=>{s(),a()};return Zr(l),l}let ro=!1;function oo(t,e,n={}){const{window:r=eo,ignore:o=[],capture:i=!0,detectIframe:a=!1}=n;if(!r)return;Kr&&!ro&&(ro=!0,Array.from(r.document.body.children).forEach((t=>t.addEventListener("click",Wr))),r.document.documentElement.addEventListener("click",Wr));let s=!0;const l=t=>o.some((e=>{if("string"==typeof e)return Array.from(r.document.querySelectorAll(e)).some((e=>e===t.target||t.composedPath().includes(e)));{const n=to(e);return n&&(t.target===n||t.composedPath().includes(n))}})),c=[no(r,"click",(n=>{const r=to(t);r&&r!==n.target&&!n.composedPath().includes(r)&&(0===n.detail&&(s=!l(n)),s?e(n):s=!0)}),{passive:!0,capture:i}),no(r,"pointerdown",(e=>{const n=to(t);n&&(s=!e.composedPath().includes(n)&&!l(e))}),{passive:!0}),a&&no(r,"blur",(n=>{setTimeout((()=>{var o;const i=to(t);"IFRAME"!==(null==(o=r.document.activeElement)?void 0:o.tagName)||(null==i?void 0:i.contains(r.document.activeElement))||e(n)}),0)}))].filter(Boolean);return()=>c.forEach((t=>t()))}const io={inserted(t,e){const n=!e.modifiers.bubble;if("function"==typeof e.value)t.__onClickOutside_stop=oo(t,e.value,{capture:n});else{const[r,o]=e.value;t.__onClickOutside_stop=oo(t,r,Object.assign({capture:n},o))}},unbind(t){t.__onClickOutside_stop()}};Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Boolean,Boolean,Boolean,Boolean,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,(0,p.ref)(!1),Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable,Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;var ao={name:"FileIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},so=(0,M.Z)(ao,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon file-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,lo=r(34829),co=r(80351),uo=r.n(co),po=r(45400),ho=r.n(po),fo=r(12945),mo=r.n(fo),vo=r(20571),go=r.n(vo),Ao=r(10204),yo=r.n(Ao),bo=function(t){return t.split("").reduce((function(t,e){return(t=(t<<5)-t+e.charCodeAt(0))&t}),0)},Co=function(t){var e,n;return null!==(e=window)&&void 0!==e&&null!==(e=e.caches)&&void 0!==e&&e.open?null===(n=window)||void 0===n||null===(n=n.caches)||void 0===n?void 0:n.open("previews").then((function(e){return e.match(t).then((function(t){return!!t}))})):Promise.resolve(!1)},wo=Nn("actionsmenu",{state:function(){return{opened:null}}});function ko(t){return ko="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ko(t)}function xo(){xo=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==ko(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function So(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}var jo={name:"CustomElementRender",props:{source:{type:Object,required:!0},currentView:{type:Object,required:!0},render:{type:Function,required:!0}},watch:{source:function(){this.updateRootElement()},currentView:function(){this.updateRootElement()}},mounted:function(){this.updateRootElement()},methods:{updateRootElement:function(){var t,e=this;return(t=xo().mark((function t(){var n,r;return xo().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=document.createElement("span"),e.$el.replaceWith(n),e.$el=n,t.next=5,e.render(e.source,e.currentView);case 5:(r=t.sent)&&(e.$el.replaceWith(r),e.$el=r);case 7:case"end":return t.stop()}}),t)})),function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){So(i,r,o,a,s,"next",t)}function s(t){So(i,r,o,a,s,"throw",t)}a(void 0)}))})()}}},_o=jo,Eo=(0,M.Z)(_o,(function(){return(0,this._self._c)("span")}),[],!1,null,null,null).exports,Po=r(27856),No={name:"CustomSvgIconRender",props:{svg:{type:String,required:!0}},watch:{svg:function(){this.$el.innerHTML=(0,Po.sanitize)(this.svg)}},mounted:function(){this.$el.innerHTML=(0,Po.sanitize)(this.svg)}},Oo=r(61959),zo={};zo.styleTagTransform=D(),zo.setAttributes=L(),zo.insert=z().bind(null,"head"),zo.domAPI=N(),zo.insertStyleElement=F(),E()(Oo.Z,zo),Oo.Z&&Oo.Z.locals&&Oo.Z.locals;var To=(0,M.Z)(No,(function(){return(0,this._self._c)("span",{staticClass:"custom-svg-icon"})}),[],!1,null,"93e9b2f4",null).exports,Lo={name:"FavoriteIcon",components:{CustomSvgIconRender:To},data:function(){return{StarSvg:Jt}},mounted:function(){var t=this.$el.querySelector("svg");t.setAttribute("viewBox","-4 -4 30 30"),t.setAttribute("width","25"),t.setAttribute("height","25")}},Bo=r(31547),Fo={};Fo.styleTagTransform=D(),Fo.setAttributes=L(),Fo.insert=z().bind(null,"head"),Fo.domAPI=N(),Fo.insertStyleElement=F(),E()(Bo.Z,Fo),Bo.Z&&Bo.Z.locals&&Bo.Z.locals;var Io=(0,M.Z)(Lo,(function(){return(0,this._self._c)("CustomSvgIconRender",{staticClass:"favorite-marker-icon",attrs:{svg:this.StarSvg}})}),[],!1,null,"324501a3",null).exports;function Do(t){return Do="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Do(t)}function Go(){Go=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Do(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function $o(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function Mo(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){$o(i,r,o,a,s,"next",t)}function s(t){$o(i,r,o,a,s,"throw",t)}a(void 0)}))}}function Ro(t){return function(t){if(Array.isArray(t))return Uo(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return Uo(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Uo(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Uo(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var Vo=Tt();p.default.directive("onClickOutside",io);var Zo=p.default.extend({name:"FileEntry",components:{CustomElementRender:Eo,CustomSvgIconRender:To,FavoriteIcon:Io,FileIcon:so,FolderIcon:lo.default,NcActionButton:ho(),NcActions:mo(),NcCheckboxRadioSwitch:go(),NcLoadingIcon:lr(),NcTextField:yo()},props:{visible:{type:Boolean,default:!1},isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},source:{type:Object,required:!0},index:{type:Number,required:!0},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},setup:function(){var t=wo(),e=hr(),n=function(){var t=Nn("keyboard",{state:function(){return{altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1}},actions:{onEvent:function(t){t||(t=window.event),p.default.set(this,"altKey",!!t.altKey),p.default.set(this,"ctrlKey",!!t.ctrlKey),p.default.set(this,"metaKey",!!t.metaKey),p.default.set(this,"shiftKey",!!t.shiftKey)}}}).apply(void 0,arguments);return t._initialized||(window.addEventListener("keydown",t.onEvent),window.addEventListener("keyup",t.onEvent),window.addEventListener("mousemove",t.onEvent),t._initialized=!0),t}(),r=function(){var t=Nn("renaming",{state:function(){return{renamingNode:void 0,newName:""}}}).apply(void 0,arguments);return t._initialized||((0,ut.Ld)("files:node:rename",(function(e){t.renamingNode=e,t.newName=e.basename})),t._initialized=!0),t}();return{actionsMenuStore:t,filesStore:e,keyboardStore:n,renamingStore:r,selectionStore:mr(),userConfigStore:br()}},data:function(){return{backgroundFailed:!1,backgroundImage:"",loading:""}},computed:{userConfig:function(){return this.userConfigStore.userConfig},currentView:function(){return this.$navigation.active},columns:function(){var t;return this.filesListWidth<512?[]:(null===(t=this.currentView)||void 0===t?void 0:t.columns)||[]},currentDir:function(){var t;return((null===(t=this.$route)||void 0===t||null===(t=t.query)||void 0===t?void 0:t.dir)||"/").replace(/^(.+)\/$/,"$1")},currentFileId:function(){return this.$route.params.fileid||this.$route.query.fileid||null},fileid:function(){var t,e;return null===(t=this.source)||void 0===t||null===(t=t.fileid)||void 0===t||null===(e=t.toString)||void 0===e?void 0:e.call(t)},extension:function(){var t;return null!==(t=this.source.attributes)&&void 0!==t&&t.displayName?(0,h.extname)(this.source.attributes.displayName):this.source.extension||""},displayName:function(){var t=this.extension,e=this.source.attributes.displayName||this.source.basename;return t?e.slice(0,0-t.length):e},size:function(){var t=parseInt(this.source.size,10)||0;return"number"!=typeof t||t<0?this.t("files","Pending"):vt(t,!0)},sizeOpacity:function(){var t=parseInt(this.source.size,10)||0;return!t||t<0?.7:.7+(1-.7)*Math.pow(this.source.size/10485760,2)},mtime:function(){return this.source.mtime?uo()(this.source.mtime).fromNow():this.t("files_trashbin","A long time ago")},mtimeTitle:function(){return this.source.mtime?uo()(this.source.mtime).format("LLL"):""},linkTo:function(){var t;return this.source.attributes.failed?{title:this.t("files","This node is unavailable"),is:"span"}:this.enabledDefaultActions.length>0?{title:this.enabledDefaultActions[0].displayName([this.source],this.currentView),role:"button"}:(null===(t=this.source)||void 0===t?void 0:t.permissions)&gt.READ?{download:this.source.basename,href:this.source.source,title:this.t("files","Download file {name}",{name:this.displayName})}:{is:"span"}},selectedFiles:function(){return this.selectionStore.selected},isSelected:function(){return this.selectedFiles.includes(this.fileid)},cropPreviews:function(){return this.userConfig.crop_image_previews},previewUrl:function(){if(this.source.type===yt.Folder)return null;try{var t=this.source.attributes.previewUrl||(0,l.generateUrl)("/core/preview?fileId={fileid}",{fileid:this.source.fileid}),e=new URL(window.location.origin+t);return e.searchParams.set("x","32"),e.searchParams.set("y","32"),e.searchParams.set("mimeFallback","true"),e.searchParams.set("a",!0===this.cropPreviews?"0":"1"),e.href}catch(t){return null}},enabledActions:function(){var t=this;return this.source.attributes.failed?[]:Vo.filter((function(e){return!e.enabled||e.enabled([t.source],t.currentView)})).sort((function(t,e){return(t.order||0)-(e.order||0)}))},enabledInlineActions:function(){var t=this;return this.filesListWidth<768?[]:this.enabledActions.filter((function(e){var n;return null==e||null===(n=e.inline)||void 0===n?void 0:n.call(e,t.source,t.currentView)}))},enabledRenderActions:function(){return this.visible?this.enabledActions.filter((function(t){return"function"==typeof t.renderInline})):[]},enabledDefaultActions:function(){return this.enabledActions.filter((function(t){return!(null==t||!t.default)}))},enabledMenuActions:function(){return[].concat(Ro(this.enabledInlineActions),Ro(this.enabledActions.filter((function(t){return t.default!==jt.HIDDEN&&"function"!=typeof t.renderInline})))).filter((function(t,e,n){return e===n.findIndex((function(e){return e.id===t.id}))}))},openedMenu:{get:function(){return this.actionsMenuStore.opened===this.uniqueId},set:function(t){this.actionsMenuStore.opened=t?this.uniqueId:null}},uniqueId:function(){return bo(this.source.source)},isFavorite:function(){return 1===this.source.attributes.favorite},isRenaming:function(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen:function(){return this.isRenaming&&this.filesListWidth<512},newName:{get:function(){return this.renamingStore.newName},set:function(t){this.renamingStore.newName=t}},isActive:function(){var t,e;return this.fileid===(null===(t=this.currentFileId)||void 0===t||null===(e=t.toString)||void 0===e?void 0:e.call(t))}},watch:{source:function(){this.resetState(),this.debounceIfNotCached()},isRenaming:function(){this.startRenaming()}},mounted:function(){this.debounceGetPreview=(0,Mr.debounce)((function(){this.fetchAndApplyPreview()}),150,!1),this.debounceIfNotCached()},beforeDestroy:function(){this.resetState()},methods:{debounceIfNotCached:function(){var t=this;return Mo(Go().mark((function e(){return Go().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.previewUrl){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,Co(t.previewUrl);case 4:if(!e.sent){e.next=9;break}return t.backgroundImage="url(".concat(t.previewUrl,")"),t.backgroundFailed=!1,e.abrupt("return");case 9:t.debounceGetPreview();case 10:case"end":return e.stop()}}),e)})))()},fetchAndApplyPreview:function(){var t=this;this.previewUrl&&(this.previewPromise&&this.clearImg(),this.previewPromise=new Vr.CancelablePromise((function(e,n,r){var o=new Image;o.fetchpriority=t.visible?"high":"auto",o.onload=function(){t.backgroundImage="url(".concat(t.previewUrl,")"),t.backgroundFailed=!1,e(o)},o.onerror=function(){t.backgroundFailed=!0,n(o)},o.src=t.previewUrl,r((function(){o.onerror=null,o.onload=null,o.src=""}))})))},resetState:function(){this.loading="",this.clearImg(),this.openedMenu=!1},clearImg:function(){this.backgroundImage="",this.backgroundFailed=!1,this.previewPromise&&(this.previewPromise.cancel(),this.previewPromise=null)},onActionClick:function(t){var e=this;return Mo(Go().mark((function n(){var r,o;return Go().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return r=t.displayName([e.source],e.currentView),n.prev=1,e.loading=t.id,p.default.set(e.source,"_loading",!0),n.next=6,t.exec(e.source,e.currentView,e.currentDir);case 6:if(null!==(o=n.sent)){n.next=9;break}return n.abrupt("return");case 9:if(!o){n.next=12;break}return(0,f.s$)(e.t("files",'"{displayName}" action executed successfully',{displayName:r})),n.abrupt("return");case 12:(0,f.x2)(e.t("files",'"{displayName}" action failed',{displayName:r})),n.next=19;break;case 15:n.prev=15,n.t0=n.catch(1),_t.error("Error while executing action",{action:t,e:n.t0}),(0,f.x2)(e.t("files",'"{displayName}" action failed',{displayName:r}));case 19:return n.prev=19,e.loading="",p.default.set(e.source,"_loading",!1),n.finish(19);case 23:case"end":return n.stop()}}),n,null,[[1,15,19,23]])})))()},execDefaultAction:function(t){this.enabledDefaultActions.length>0&&(t.preventDefault(),t.stopPropagation(),this.enabledDefaultActions[0].exec(this.source,this.currentView,this.currentDir))},openDetailsIfAvailable:function(t){var e=this.enabledActions.find((function(t){return t.id===Ce}));e&&(t.preventDefault(),t.stopPropagation(),e.exec(this.source,this.currentView))},onSelectionChange:function(t){var e,n=this,r=this.index,o=this.selectionStore.lastSelectedIndex;if(null!==(e=this.keyboardStore)&&void 0!==e&&e.shiftKey&&null!==o){var i=this.selectedFiles.includes(this.fileid),a=Math.min(r,o),s=Math.max(o,r),l=this.selectionStore.lastSelection,c=this.nodes.map((function(t){var e,n;return null===(e=t.fileid)||void 0===e||null===(n=e.toString)||void 0===n?void 0:n.call(e)})).slice(a,s+1),u=[].concat(Ro(l),Ro(c)).filter((function(t){return!i||t!==n.fileid}));return _t.debug("Shift key pressed, selecting all files in between",{start:a,end:s,filesToSelect:c,isAlreadySelected:i}),void this.selectionStore.set(u)}_t.debug("Updating selection",{selection:t}),this.selectionStore.set(t),this.selectionStore.setLastIndex(r)},onRightClick:function(t){if(!this.openedMenu){var e=this.selectedFiles.length>1;this.actionsMenuStore.opened=this.isSelected&&e?"global":this.uniqueId,t.preventDefault(),t.stopPropagation()}},checkInputValidity:function(t){var e,n,r=null==t?void 0:t.target,o=(null===(e=(n=this.newName).trim)||void 0===e?void 0:e.call(n))||"";try{this.isFileNameValid(o),r.setCustomValidity(""),r.title=""}catch(t){r.setCustomValidity(t.message),r.title=t.message}finally{r.reportValidity()}},isFileNameValid:function(t){var e=t.trim();if("."===e||".."===e)throw new Error(this.t("files",'"{name}" is an invalid file name.',{name:t}));if(0===e.length)throw new Error(this.t("files","File name cannot be empty."));if(-1!==e.indexOf("/"))throw new Error(this.t("files",'"/" is not allowed inside a file name.'));if(e.match(OC.config.blacklist_files_regex))throw new Error(this.t("files",'"{name}" is not an allowed filetype.',{name:t}));if(this.checkIfNodeExists(t))throw new Error(this.t("files","{newName} already exists.",{newName:t}));return!0},checkIfNodeExists:function(t){var e=this;return this.nodes.find((function(n){return n.basename===t&&n!==e.source}))},startRenaming:function(){var t=this;this.checkInputValidity(),this.$nextTick((function(){var e,n=(t.source.extension||"").length,r=t.source.basename.length-n,o=null===(e=t.$refs.renameInput)||void 0===e||null===(e=e.$refs)||void 0===e||null===(e=e.inputField)||void 0===e||null===(e=e.$refs)||void 0===e?void 0:e.input;o?(o.setSelectionRange(0,r),o.focus()):_t.error("Could not find the rename input")}))},stopRenaming:function(){this.isRenaming&&this.renamingStore.$reset()},onRename:function(){var t=this;return Mo(Go().mark((function e(){var n,r,o,i,a,s,l;return Go().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=t.source.basename,i=t.source.source,""!==(a=(null===(n=(r=t.newName).trim)||void 0===n?void 0:n.call(r))||"")){e.next=6;break}return(0,f.x2)(t.t("files","Name cannot be empty")),e.abrupt("return");case 6:if(o!==a){e.next=9;break}return t.stopRenaming(),e.abrupt("return");case 9:if(!t.checkIfNodeExists(a)){e.next=12;break}return(0,f.x2)(t.t("files","Another entry with the same name already exists")),e.abrupt("return");case 12:return t.loading="renaming",p.default.set(t.source,"_loading",!0),t.source.rename(a),e.prev=15,e.next=18,(0,d.Z)({method:"MOVE",url:i,headers:{Destination:encodeURI(t.source.source)}});case 18:(0,ut.j8)("files:node:updated",t.source),(0,ut.j8)("files:node:renamed",t.source),(0,f.s$)(t.t("files",'Renamed "{oldName}" to "{newName}"',{oldName:o,newName:a})),t.stopRenaming(),t.$nextTick((function(){t.$refs.basename.focus()})),e.next=39;break;case 25:if(e.prev=25,e.t0=e.catch(15),_t.error("Error while renaming file",{error:e.t0}),t.source.rename(o),t.$refs.renameInput.focus(),404!==(null===e.t0||void 0===e.t0||null===(s=e.t0.response)||void 0===s?void 0:s.status)){e.next=35;break}return(0,f.x2)(t.t("files",'Could not rename "{oldName}", it does not exist any more',{oldName:o})),e.abrupt("return");case 35:if(412!==(null===e.t0||void 0===e.t0||null===(l=e.t0.response)||void 0===l?void 0:l.status)){e.next=38;break}return(0,f.x2)(t.t("files",'The name "{newName}"" is already used in the folder "{dir}". Please choose a different name.',{newName:a,dir:t.currentDir})),e.abrupt("return");case 38:(0,f.x2)(t.t("files",'Could not rename "{oldName}"',{oldName:o}));case 39:return e.prev=39,t.loading=!1,p.default.set(t.source,"_loading",!1),e.finish(39);case 43:case"end":return e.stop()}}),e,null,[[15,25,39,43]])})))()},getBoundariesElement:function(){return document.querySelector(".app-content > .files-list")},t:s.Iu,formatFileSize:vt}}),qo=Zo,Ho=r(25649),Wo={};Wo.styleTagTransform=D(),Wo.setAttributes=L(),Wo.insert=z().bind(null,"head"),Wo.domAPI=N(),Wo.insertStyleElement=F(),E()(Ho.Z,Wo),Ho.Z&&Ho.Z.locals&&Ho.Z.locals;var Ko=r(87526),Yo={};Yo.styleTagTransform=D(),Yo.setAttributes=L(),Yo.insert=z().bind(null,"head"),Yo.domAPI=N(),Yo.insertStyleElement=F(),E()(Ko.Z,Yo),Ko.Z&&Ko.Z.locals&&Ko.Z.locals;var Jo=(0,M.Z)(qo,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",{staticClass:"list__row",class:{"files-list__row--visible":t.visible,"files-list__row--active":t.isActive},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":t.fileid,"data-cy-files-list-row-name":t.source.basename},on:{contextmenu:t.onRightClick}},[t.source.attributes.failed?e("span",{staticClass:"files-list__row--failed"}):t._e(),t._v(" "),e("td",{staticClass:"files-list__row-checkbox"},[t.visible?e("NcCheckboxRadioSwitch",{attrs:{"aria-label":t.t("files","Select the row for {displayName}",{displayName:t.displayName}),checked:t.selectedFiles,value:t.fileid,name:"selectedFiles"},on:{"update:checked":t.onSelectionChange}}):t._e()],1),t._v(" "),e("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[e("span",{staticClass:"files-list__row-icon",on:{click:t.execDefaultAction}},["folder"===t.source.type?e("FolderIcon"):t.previewUrl&&!t.backgroundFailed?e("span",{ref:"previewImg",staticClass:"files-list__row-icon-preview",style:{backgroundImage:t.backgroundImage}}):e("FileIcon"),t._v(" "),t.isFavorite?e("span",{staticClass:"files-list__row-icon-favorite",attrs:{"aria-label":t.t("files","Favorite")}},[e("FavoriteIcon",{attrs:{"aria-hidden":!0}})],1):t._e()],1),t._v(" "),e("form",{directives:[{name:"show",rawName:"v-show",value:t.isRenaming,expression:"isRenaming"},{name:"on-click-outside",rawName:"v-on-click-outside",value:t.stopRenaming,expression:"stopRenaming"}],staticClass:"files-list__row-rename",attrs:{"aria-hidden":!t.isRenaming,"aria-label":t.t("files","Rename file")},on:{submit:function(e){return e.preventDefault(),e.stopPropagation(),t.onRename.apply(null,arguments)}}},[e("NcTextField",{ref:"renameInput",attrs:{"aria-label":t.t("files","File name"),autofocus:!0,minlength:1,required:!0,value:t.newName,enterkeyhint:"done"},on:{"update:value":function(e){t.newName=e},keyup:[t.checkInputValidity,function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.stopRenaming.apply(null,arguments)}]}})],1),t._v(" "),e("a",t._b({directives:[{name:"show",rawName:"v-show",value:!t.isRenaming,expression:"!isRenaming"}],ref:"basename",staticClass:"files-list__row-name-link",attrs:{"aria-hidden":t.isRenaming,"data-cy-files-list-row-name-link":""},on:{click:t.execDefaultAction}},"a",t.linkTo,!1),[e("span",{staticClass:"files-list__row-name-text"},[e("span",{staticClass:"files-list__row-name-",domProps:{textContent:t._s(t.displayName)}}),t._v(" "),e("span",{staticClass:"files-list__row-name-ext",domProps:{textContent:t._s(t.extension)}})])])]),t._v(" "),e("td",{directives:[{name:"show",rawName:"v-show",value:!t.isRenamingSmallScreen,expression:"!isRenamingSmallScreen"}],staticClass:"files-list__row-actions",class:"files-list__row-actions-".concat(t.uniqueId),attrs:{"data-cy-files-list-row-actions":""}},[t._l(t.enabledRenderActions,(function(n){return e("CustomElementRender",{key:n.id,attrs:{"current-view":t.currentView,render:n.renderInline,source:t.source}})})),t._v(" "),t.visible?e("NcActions",{ref:"actionsMenu",attrs:{"boundaries-element":t.getBoundariesElement(),container:t.getBoundariesElement(),disabled:t.source._loading,"force-name":!0,"force-menu":0===t.enabledInlineActions.length,inline:t.enabledInlineActions.length,open:t.openedMenu},on:{"update:open":function(e){t.openedMenu=e}}},t._l(t.enabledMenuActions,(function(n){return e("NcActionButton",{key:n.id,class:"files-list__row-action-"+n.id,attrs:{"close-after-click":!0,"data-cy-files-list-row-action":n.id},on:{click:function(e){return t.onActionClick(n)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading===n.id?e("NcLoadingIcon",{attrs:{size:18}}):e("CustomSvgIconRender",{attrs:{svg:n.iconSvgInline([t.source],t.currentView)}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t"+t._s(n.displayName([t.source],t.currentView))+"\n\t\t\t")])})),1):t._e()],2),t._v(" "),t.isSizeAvailable?e("td",{staticClass:"files-list__row-size",style:{opacity:t.sizeOpacity},attrs:{"data-cy-files-list-row-size":""},on:{click:t.openDetailsIfAvailable}},[e("span",[t._v(t._s(t.size))])]):t._e(),t._v(" "),t.isMtimeAvailable?e("td",{staticClass:"files-list__row-mtime",attrs:{"data-cy-files-list-row-mtime":""},on:{click:t.openDetailsIfAvailable}},[e("span",[t._v(t._s(t.mtime))])]):t._e(),t._v(" "),t._l(t.columns,(function(n){var r;return e("td",{key:n.id,staticClass:"files-list__row-column-custom",class:"files-list__row-".concat(null===(r=t.currentView)||void 0===r?void 0:r.id,"-").concat(n.id),attrs:{"data-cy-files-list-row-column-custom":n.id},on:{click:t.openDetailsIfAvailable}},[t.visible?e("CustomElementRender",{attrs:{"current-view":t.currentView,render:n.render,source:t.source}}):t._e()],1)}))],2)}),[],!1,null,"01747ff7",null),Qo=Jo.exports,Xo=r(25108),ti={name:"FilesListHeader",props:{header:{type:Object,required:!0},currentFolder:{type:Object,required:!0},currentView:{type:Object,required:!0}},computed:{enabled:function(){return Xo.debug("Enabled",this.header.id),this.header.enabled(this.currentFolder,this.currentView)}},watch:{enabled:function(t){t&&this.header.updated(this.currentFolder,this.currentView)}},mounted:function(){Xo.debug("Mounted",this.header.id),this.header.render(this.$refs.mount,this.currentFolder,this.currentView)}},ei=(0,M.Z)(ti,(function(){var t=this,e=t._self._c;return e("div",{directives:[{name:"show",rawName:"v-show",value:t.enabled,expression:"enabled"}],class:"files-list__header-".concat(t.header.id)},[e("span",{ref:"mount"})])}),[],!1,null,null,null).exports;function ni(t){return ni="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ni(t)}var ri=p.default.extend({name:"FilesListTableFooter",components:{},props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},summary:{type:String,default:""},filesListWidth:{type:Number,default:0}},setup:function(){var t=fr();return{filesStore:hr(),pathsStore:t}},computed:{currentView:function(){return this.$navigation.active},dir:function(){var t;return((null===(t=this.$route)||void 0===t||null===(t=t.query)||void 0===t?void 0:t.dir)||"/").replace(/^(.+)\/$/,"$1")},currentFolder:function(){var t;if(null!==(t=this.currentView)&&void 0!==t&&t.id){if("/"===this.dir)return this.filesStore.getRoot(this.currentView.id);var e=this.pathsStore.getPath(this.currentView.id,this.dir);return this.filesStore.getNode(e)}},columns:function(){var t;return this.filesListWidth<512?[]:(null===(t=this.currentView)||void 0===t?void 0:t.columns)||[]},totalSize:function(){var t;return null!==(t=this.currentFolder)&&void 0!==t&&t.size?vt(this.currentFolder.size,!0):vt(this.nodes.reduce((function(t,e){return t+e.size||0}),0),!0)}},methods:{classForColumn:function(t){return e={"files-list__row-column-custom":!0},n="files-list__row-".concat(this.currentView.id,"-").concat(t.id),r=!0,(n=function(t){var e=function(t,e){if("object"!==ni(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==ni(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===ni(e)?e:String(e)}(n))in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,e;var e,n,r},t:s.Iu}}),oi=r(20771),ii={};ii.styleTagTransform=D(),ii.setAttributes=L(),ii.insert=z().bind(null,"head"),ii.domAPI=N(),ii.insertStyleElement=F(),E()(oi.Z,ii),oi.Z&&oi.Z.locals&&oi.Z.locals;var ai=(0,M.Z)(ri,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",[e("th",{staticClass:"files-list__row-checkbox"},[e("span",{staticClass:"hidden-visually"},[t._v(t._s(t.t("files","Total rows summary")))])]),t._v(" "),e("td",{staticClass:"files-list__row-name"},[e("span",{staticClass:"files-list__row-icon"}),t._v(" "),e("span",[t._v(t._s(t.summary))])]),t._v(" "),e("td",{staticClass:"files-list__row-actions"}),t._v(" "),t.isSizeAvailable?e("td",{staticClass:"files-list__column files-list__row-size"},[e("span",[t._v(t._s(t.totalSize))])]):t._e(),t._v(" "),t.isMtimeAvailable?e("td",{staticClass:"files-list__column files-list__row-mtime"}):t._e(),t._v(" "),t._l(t.columns,(function(n){var r;return e("th",{key:n.id,class:t.classForColumn(n)},[e("span",[t._v(t._s(null===(r=n.summary)||void 0===r?void 0:r.call(n,t.nodes,t.currentView)))])])}))],2)}),[],!1,null,"5d5c2897",null).exports,si=p.default.extend({data:function(){return{filesListWidth:null}},created:function(){var t=this,e=document.querySelector("#app-content-vue");this.$resizeObserver=new ResizeObserver((function(n){n.length>0&&n[0].target===e&&(t.filesListWidth=n[0].contentRect.width)})),this.$resizeObserver.observe(e)},beforeDestroy:function(){this.$resizeObserver.disconnect()}});function li(t){return li="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},li(t)}function ci(){ci=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==li(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function ui(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}var di=Tt(),pi=p.default.extend({name:"FilesListTableHeaderActions",components:{CustomSvgIconRender:To,NcActions:mo(),NcActionButton:ho(),NcLoadingIcon:lr()},mixins:[si],props:{currentView:{type:Object,required:!0},selectedNodes:{type:Array,default:function(){return[]}}},setup:function(){return{actionsMenuStore:wo(),filesStore:hr(),selectionStore:mr()}},data:function(){return{loading:null}},computed:{dir:function(){var t;return((null===(t=this.$route)||void 0===t||null===(t=t.query)||void 0===t?void 0:t.dir)||"/").replace(/^(.+)\/$/,"$1")},enabledActions:function(){var t=this;return di.filter((function(t){return t.execBatch})).filter((function(e){return!e.enabled||e.enabled(t.nodes,t.currentView)})).sort((function(t,e){return(t.order||0)-(e.order||0)}))},nodes:function(){var t=this;return this.selectedNodes.map((function(e){return t.getNode(e)})).filter((function(t){return t}))},areSomeNodesLoading:function(){return this.nodes.some((function(t){return t._loading}))},openedMenu:{get:function(){return"global"===this.actionsMenuStore.opened},set:function(t){this.actionsMenuStore.opened=t?"global":null}},inlineActions:function(){return this.filesListWidth<512?0:this.filesListWidth<768?1:this.filesListWidth<1024?2:3}},methods:{getNode:function(t){return this.filesStore.getNode(t)},onActionClick:function(t){var e,n=this;return(e=ci().mark((function e(){var r,o,i,a;return ci().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.displayName(n.nodes,n.currentView),o=n.selectedNodes,e.prev=2,n.loading=t.id,n.nodes.forEach((function(t){p.default.set(t,"_loading",!0)})),e.next=7,t.execBatch(n.nodes,n.currentView,n.dir);case 7:if((i=e.sent).some((function(t){return null!==t}))){e.next=11;break}return n.selectionStore.reset(),e.abrupt("return");case 11:if(!i.some((function(t){return!1===t}))){e.next=16;break}return a=o.filter((function(t,e){return!1===i[e]})),n.selectionStore.set(a),(0,f.x2)(n.t("files",'"{displayName}" failed on some elements ',{displayName:r})),e.abrupt("return");case 16:(0,f.s$)(n.t("files",'"{displayName}" batch action executed successfully',{displayName:r})),n.selectionStore.reset(),e.next=24;break;case 20:e.prev=20,e.t0=e.catch(2),_t.error("Error while executing action",{action:t,e:e.t0}),(0,f.x2)(n.t("files",'"{displayName}" action failed',{displayName:r}));case 24:return e.prev=24,n.loading=null,n.nodes.forEach((function(t){p.default.set(t,"_loading",!1)})),e.finish(24);case 28:case"end":return e.stop()}}),e,null,[[2,20,24,28]])})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(t){ui(i,r,o,a,s,"next",t)}function s(t){ui(i,r,o,a,s,"throw",t)}a(void 0)}))})()},t:s.Iu}}),hi=pi,fi=r(76215),mi={};mi.styleTagTransform=D(),mi.setAttributes=L(),mi.insert=z().bind(null,"head"),mi.domAPI=N(),mi.insertStyleElement=F(),E()(fi.Z,mi),fi.Z&&fi.Z.locals&&fi.Z.locals;var vi=(0,M.Z)(hi,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("th",{staticClass:"files-list__column files-list__row-actions-batch",attrs:{colspan:"2"}},[e("NcActions",{ref:"actionsMenu",attrs:{disabled:!!t.loading||t.areSomeNodesLoading,"force-name":!0,inline:t.inlineActions,"menu-name":t.inlineActions<=1?t.t("files","Actions"):null,open:t.openedMenu},on:{"update:open":function(e){t.openedMenu=e}}},t._l(t.enabledActions,(function(n){return e("NcActionButton",{key:n.id,class:"files-list__row-actions-batch-"+n.id,on:{click:function(e){return t.onActionClick(n)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.loading===n.id?e("NcLoadingIcon",{attrs:{size:18}}):e("CustomSvgIconRender",{attrs:{svg:n.iconSvgInline(t.nodes,t.currentView)}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t"+t._s(n.displayName(t.nodes,t.currentView))+"\n\t\t")])})),1)],1)}),[],!1,null,"1e45e85a",null).exports,gi={name:"MenuDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ai=(0,M.Z)(gi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon menu-down-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M7,10L12,15L17,10H7Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,yi={name:"MenuUpIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},bi=(0,M.Z)(yi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon menu-up-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M7,15L12,10L17,15H7Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;function Ci(t){return Ci="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ci(t)}function wi(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ki(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?wi(Object(n),!0).forEach((function(e){xi(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):wi(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function xi(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Ci(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==Ci(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Ci(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var Si,ji,_i=p.default.extend({computed:ki(ki({},(Si=Sr,ji=["getConfig","setSortingBy","toggleSortingDirection"],Array.isArray(ji)?ji.reduce(((t,e)=>(t[e]=function(){return Si(this.$pinia)[e]},t)),{}):Object.keys(ji).reduce(((t,e)=>(t[e]=function(){const t=Si(this.$pinia),n=ji[e];return"function"==typeof n?n.call(this,t):t[n]},t)),{}))),{},{currentView:function(){return this.$navigation.active},sortingMode:function(){var t,e;return(null===(t=this.getConfig(this.currentView.id))||void 0===t?void 0:t.sorting_mode)||(null===(e=this.currentView)||void 0===e?void 0:e.defaultSortKey)||"basename"},isAscSorting:function(){var t;return"asc"===(null===(t=this.getConfig(this.currentView.id))||void 0===t?void 0:t.sorting_direction)}}),methods:{toggleSortBy:function(t){this.sortingMode!==t?this.setSortingBy(t,this.currentView.id):this.toggleSortingDirection(this.currentView.id)}}}),Ei=p.default.extend({name:"FilesListTableHeaderButton",components:{MenuDown:Ai,MenuUp:bi,NcButton:or()},mixins:[_i],props:{name:{type:String,required:!0},mode:{type:String,required:!0}},methods:{sortAriaLabel:function(t){var e=this.isAscSorting?this.t("files","ascending"):this.t("files","descending");return this.t("files","Sort list by {column} ({direction})",{column:t,direction:e})},t:s.Iu}}),Pi=r(97781),Ni={};Ni.styleTagTransform=D(),Ni.setAttributes=L(),Ni.insert=z().bind(null,"head"),Ni.domAPI=N(),Ni.insertStyleElement=F(),E()(Pi.Z,Ni),Pi.Z&&Pi.Z.locals&&Pi.Z.locals;var Oi=(0,M.Z)(Ei,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcButton",{staticClass:"files-list__column-sort-button",class:{"files-list__column-sort-button--active":t.sortingMode===t.mode},attrs:{"aria-label":t.sortAriaLabel(t.name),type:"tertiary"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.toggleSortBy(t.mode)}}},[t.sortingMode!==t.mode||t.isAscSorting?e("MenuUp",{attrs:{slot:"icon"},slot:"icon"}):e("MenuDown",{attrs:{slot:"icon"},slot:"icon"}),t._v("\n\t"+t._s(t.name)+"\n")],1)}),[],!1,null,null,null).exports;function zi(t){return zi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},zi(t)}var Ti=p.default.extend({name:"FilesListTableHeader",components:{FilesListTableHeaderButton:Oi,NcCheckboxRadioSwitch:go(),FilesListTableHeaderActions:vi},mixins:[_i],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},setup:function(){return{filesStore:hr(),selectionStore:mr()}},computed:{currentView:function(){return this.$navigation.active},columns:function(){var t;return this.filesListWidth<512?[]:(null===(t=this.currentView)||void 0===t?void 0:t.columns)||[]},dir:function(){var t;return((null===(t=this.$route)||void 0===t||null===(t=t.query)||void 0===t?void 0:t.dir)||"/").replace(/^(.+)\/$/,"$1")},selectAllBind:function(){var t=this.isNoneSelected||this.isSomeSelected?this.t("files","Select all"):this.t("files","Unselect all");return{"aria-label":t,checked:this.isAllSelected,indeterminate:this.isSomeSelected,title:t}},selectedNodes:function(){return this.selectionStore.selected},isAllSelected:function(){return this.selectedNodes.length===this.nodes.length},isNoneSelected:function(){return 0===this.selectedNodes.length},isSomeSelected:function(){return!this.isAllSelected&&!this.isNoneSelected}},methods:{classForColumn:function(t){return e={"files-list__column":!0,"files-list__column--sortable":!!t.sort,"files-list__row-column-custom":!0},n="files-list__row-".concat(this.currentView.id,"-").concat(t.id),r=!0,(n=function(t){var e=function(t,e){if("object"!==zi(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==zi(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===zi(e)?e:String(e)}(n))in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,e;var e,n,r},onToggleAll:function(t){if(t){var e=this.nodes.map((function(t){return t.fileid.toString()}));_t.debug("Added all nodes to selection",{selection:e}),this.selectionStore.setLastIndex(null),this.selectionStore.set(e)}else _t.debug("Cleared selection"),this.selectionStore.reset()},t:s.Iu}}),Li=r(41049),Bi={};Bi.styleTagTransform=D(),Bi.setAttributes=L(),Bi.insert=z().bind(null,"head"),Bi.domAPI=N(),Bi.insertStyleElement=F(),E()(Li.Z,Bi),Li.Z&&Li.Z.locals&&Li.Z.locals;var Fi=(0,M.Z)(Ti,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",{staticClass:"files-list__row-head"},[e("th",{staticClass:"files-list__column files-list__row-checkbox"},[e("NcCheckboxRadioSwitch",t._b({on:{"update:checked":t.onToggleAll}},"NcCheckboxRadioSwitch",t.selectAllBind,!1))],1),t._v(" "),t.isNoneSelected?[e("th",{staticClass:"files-list__column files-list__row-name files-list__column--sortable",on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.toggleSortBy("basename")}}},[e("span",{staticClass:"files-list__row-icon"}),t._v(" "),e("FilesListTableHeaderButton",{attrs:{name:t.t("files","Name"),mode:"basename"}})],1),t._v(" "),e("th",{staticClass:"files-list__row-actions"}),t._v(" "),t.isSizeAvailable?e("th",{staticClass:"files-list__column files-list__row-size",class:{"files-list__column--sortable":t.isSizeAvailable}},[e("FilesListTableHeaderButton",{attrs:{name:t.t("files","Size"),mode:"size"}})],1):t._e(),t._v(" "),t.isMtimeAvailable?e("th",{staticClass:"files-list__column files-list__row-mtime",class:{"files-list__column--sortable":t.isMtimeAvailable}},[e("FilesListTableHeaderButton",{attrs:{name:t.t("files","Modified"),mode:"mtime"}})],1):t._e(),t._v(" "),t._l(t.columns,(function(n){return e("th",{key:n.id,class:t.classForColumn(n)},[n.sort?e("FilesListTableHeaderButton",{attrs:{name:n.title,mode:n.id}}):e("span",[t._v("\n\t\t\t\t"+t._s(n.title)+"\n\t\t\t")])],1)}))]:e("FilesListTableHeaderActions",{attrs:{"current-view":t.currentView,"selected-nodes":t.selectedNodes}})],2)}),[],!1,null,"50439046",null).exports;function Ii(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var Di=p.default.extend({name:"FilesListVirtual",components:{FilesListHeader:ei,FilesListTableHeader:Fi,FilesListTableFooter:ai,VirtualList:Ur},mixins:[si],props:{currentView:{type:Object,required:!0},currentFolder:{type:Object,required:!0},nodes:{type:Array,required:!0}},data:function(){return{FileEntry:Qo,headers:window._nc_filelistheader||[],scrollToIndex:0}},computed:{files:function(){return this.nodes.filter((function(t){return"file"===t.type}))},fileId:function(){return parseInt(this.$route.params.fileid||this.$route.query.fileid)||null},summaryFile:function(){var t=this.files.length;return(0,s.uN)("files","{count} file","{count} files",t,{count:t})},summaryFolder:function(){var t=this.nodes.length-this.files.length;return(0,s.uN)("files","{count} folder","{count} folders",t,{count:t})},summary:function(){return(0,s.Iu)("files","{summaryFile} and {summaryFolder}",this)},isMtimeAvailable:function(){return!(this.filesListWidth<768)&&this.nodes.some((function(t){return void 0!==t.mtime}))},isSizeAvailable:function(){return!(this.filesListWidth<768)&&this.nodes.some((function(t){return void 0!==t.attributes.size}))},sortedHeaders:function(){return this.currentFolder&&this.currentView?(t=this.headers,function(t){if(Array.isArray(t))return Ii(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return Ii(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ii(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).sort((function(t,e){return t.order-e.order})):[];var t}},mounted:function(){var t=this;if(this.fileId){var e=this.nodes.findIndex((function(e){return e.fileid===t.fileId}));-1===e&&(0,f.x2)(this.t("files","File not found")),this.scrollToIndex=Math.max(0,e)}if(document.documentElement.clientWidth>1024){var n,r=this.nodes.find((function(e){return e.fileid===t.fileId}));r&&null!=we&&null!==(n=we.enabled)&&void 0!==n&&n.call(we,[r],this.currentView)&&(_t.debug("Opening sidebar on file "+r.path,{node:r}),we.exec(r,this.currentView,this.currentFolder))}},methods:{getFileId:function(t){return t.fileid},t:s.Iu}}),Gi=Di,$i=r(36756),Mi={};Mi.styleTagTransform=D(),Mi.setAttributes=L(),Mi.insert=z().bind(null,"head"),Mi.domAPI=N(),Mi.insertStyleElement=F(),E()($i.Z,Mi),$i.Z&&$i.Z.locals&&$i.Z.locals;var Ri=(0,M.Z)(Gi,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("VirtualList",{attrs:{"data-component":t.FileEntry,"data-key":"source","data-sources":t.nodes,"item-height":56,"extra-props":{isMtimeAvailable:t.isMtimeAvailable,isSizeAvailable:t.isSizeAvailable,nodes:t.nodes,filesListWidth:t.filesListWidth},"scroll-to-index":t.scrollToIndex},scopedSlots:t._u([{key:"before",fn:function(){return[e("caption",{staticClass:"hidden-visually"},[t._v("\n\t\t\t"+t._s(t.currentView.caption||t.t("files","List of files and folders."))+"\n\t\t\t"+t._s(t.t("files","This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list."))+"\n\t\t")]),t._v(" "),t._l(t.sortedHeaders,(function(n){return e("FilesListHeader",{key:n.id,attrs:{"current-folder":t.currentFolder,"current-view":t.currentView,header:n}})}))]},proxy:!0},{key:"header",fn:function(){return[e("FilesListTableHeader",{attrs:{"files-list-width":t.filesListWidth,"is-mtime-available":t.isMtimeAvailable,"is-size-available":t.isSizeAvailable,nodes:t.nodes}})]},proxy:!0},{key:"footer",fn:function(){return[e("FilesListTableFooter",{attrs:{"files-list-width":t.filesListWidth,"is-mtime-available":t.isMtimeAvailable,"is-size-available":t.isSizeAvailable,nodes:t.nodes,summary:t.summary}})]},proxy:!0}])})}),[],!1,null,"750beda0",null).exports;function Ui(t){return Ui="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ui(t)}function Vi(){Vi=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Ui(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function Zi(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function qi(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Hi(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?qi(Object(n),!0).forEach((function(e){Wi(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):qi(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Wi(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Ui(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==Ui(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Ui(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function Ki(t){return function(t){if(Array.isArray(t))return Yi(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return Yi(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Yi(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Yi(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var Ji=p.default.extend({name:"FilesList",components:{BreadCrumbs:$r,FilesListVirtual:Ri,NcAppContent:nr(),NcButton:or(),NcEmptyContent:v(),NcIconSvgWrapper:ar(),NcLoadingIcon:lr()},mixins:[_i],setup:function(){return{filesStore:hr(),pathsStore:fr(),selectionStore:mr(),userConfigStore:br(),viewConfigStore:Sr()}},data:function(){return{loading:!0,promise:null}},computed:{userConfig:function(){return this.userConfigStore.userConfig},currentView:function(){return this.$navigation.active||this.$navigation.views.find((function(t){return"files"===t.id}))},dir:function(){var t;return((null===(t=this.$route)||void 0===t||null===(t=t.query)||void 0===t?void 0:t.dir)||"/").replace(/^(.+)\/$/,"$1")},currentFolder:function(){var t;if(null!==(t=this.currentView)&&void 0!==t&&t.id){if("/"===this.dir)return this.filesStore.getRoot(this.currentView.id);var e=this.pathsStore.getPath(this.currentView.id,this.dir);return this.filesStore.getNode(e)}},dirContentsSorted:function(){var t,e=this;if(!this.currentView)return[];var n=((null===(t=this.currentView)||void 0===t?void 0:t.columns)||[]).find((function(t){return t.id===e.sortingMode}));if(null!=n&&n.sort&&"function"==typeof n.sort){var r=Ki(this.dirContents).sort(n.sort);return this.isAscSorting?r:r.reverse()}var o=[].concat(Ki(this.userConfig.sort_favorites_first?[function(t){var e;return 1!==(null===(e=t.attributes)||void 0===e?void 0:e.favorite)}]:[]),Ki("basename"===this.sortingMode?[function(t){return"folder"!==t.type}]:[]),Ki("basename"!==this.sortingMode?[function(t){return t[e.sortingMode]}]:[]),[function(t){var e;return(null===(e=t.attributes)||void 0===e?void 0:e.displayName)||t.basename},function(t){return t.basename}]),i=new Array(o.length).fill(this.isAscSorting?"asc":"desc");return tr(Ki(this.dirContents),o,i)},dirContents:function(){var t;return((null===(t=this.currentFolder)||void 0===t?void 0:t._children)||[]).map(this.getNode).filter((function(t){return t}))},isEmptyDir:function(){return 0===this.dirContents.length},isRefreshing:function(){return void 0!==this.currentFolder&&!this.isEmptyDir&&this.loading},toPreviousDir:function(){var t=this.dir.split("/").slice(0,-1).join("/")||"/";return Hi(Hi({},this.$route),{},{query:{dir:t}})}},watch:{currentView:function(t,e){(null==t?void 0:t.id)!==(null==e?void 0:e.id)&&(_t.debug("View changed",{newView:t,oldView:e}),this.selectionStore.reset(),this.fetchContent())},dir:function(t,e){var n;_t.debug("Directory changed",{newDir:t,oldDir:e}),this.selectionStore.reset(),this.fetchContent(),null!==(n=this.$refs)&&void 0!==n&&null!==(n=n.filesListVirtual)&&void 0!==n&&n.$el&&(this.$refs.filesListVirtual.$el.scrollTop=0)}},methods:{fetchContent:function(){var t,e=this;return(t=Vi().mark((function t(){var n,r,o,i,a,s;return Vi().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e.loading=!0,r=e.dir,o=e.currentView,"function"==typeof(null===(n=e.promise)||void 0===n?void 0:n.cancel)&&(e.promise.cancel(),_t.debug("Cancelled previous ongoing fetch")),e.promise=o.getContents(r),t.prev=5,t.next=8,e.promise;case 8:i=t.sent,a=i.folder,s=i.contents,_t.debug("Fetched contents",{dir:r,folder:a,contents:s}),e.filesStore.updateNodes(s),a._children=s.map((function(t){return t.fileid})),"/"===r?e.filesStore.setRoot({service:o.id,root:a}):a.fileid?(e.filesStore.updateNodes([a]),e.pathsStore.addPath({service:o.id,fileid:a.fileid,path:r})):_t.error("Invalid root folder returned",{dir:r,folder:a,currentView:o}),s.filter((function(t){return"folder"===t.type})).forEach((function(t){e.pathsStore.addPath({service:o.id,fileid:t.fileid,path:(0,h.join)(r,t.basename)})})),t.next=22;break;case 19:t.prev=19,t.t0=t.catch(5),_t.error("Error while fetching content",{error:t.t0});case 22:return t.prev=22,e.loading=!1,t.finish(22);case 25:case"end":return t.stop()}}),t,null,[[5,19,22,25]])})),function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){Zi(i,r,o,a,s,"next",t)}function s(t){Zi(i,r,o,a,s,"throw",t)}a(void 0)}))})()},getNode:function(t){return this.filesStore.getNode(t)},t:s.Iu}}),Qi=Ji,Xi=r(81208),ta={};ta.styleTagTransform=D(),ta.setAttributes=L(),ta.insert=z().bind(null,"head"),ta.domAPI=N(),ta.insertStyleElement=F(),E()(Xi.Z,ta),Xi.Z&&Xi.Z.locals&&Xi.Z.locals;var ea=(0,M.Z)(Qi,(function(){var t,e,n=this,r=n._self._c;return n._self._setupProxy,r("NcAppContent",{attrs:{"data-cy-files-content":""}},[r("div",{staticClass:"files-list__header"},[r("BreadCrumbs",{attrs:{path:n.dir},on:{reload:n.fetchContent}}),n._v(" "),n.isRefreshing?r("NcLoadingIcon",{staticClass:"files-list__refresh-icon"}):n._e()],1),n._v(" "),n.loading&&!n.isRefreshing?r("NcLoadingIcon",{staticClass:"files-list__loading-icon",attrs:{size:38,name:n.t("files","Loading current folder")}}):!n.loading&&n.isEmptyDir?r("NcEmptyContent",{attrs:{name:(null===(t=n.currentView)||void 0===t?void 0:t.emptyTitle)||n.t("files","No files in here"),description:(null===(e=n.currentView)||void 0===e?void 0:e.emptyCaption)||n.t("files","Upload some content or sync with your devices!"),"data-cy-files-content-empty":""},scopedSlots:n._u([{key:"action",fn:function(){return["/"!==n.dir?r("NcButton",{attrs:{"aria-label":"t('files', 'Go to the previous folder')",type:"primary",to:n.toPreviousDir}},[n._v("\n\t\t\t\t"+n._s(n.t("files","Go back"))+"\n\t\t\t")]):n._e()]},proxy:!0},{key:"icon",fn:function(){return[r("NcIconSvgWrapper",{attrs:{svg:n.currentView.icon}})]},proxy:!0}])}):r("FilesListVirtual",{ref:"filesListVirtual",attrs:{"current-folder":n.currentFolder,"current-view":n.currentView,nodes:n.dirContentsSorted}})],1)}),[],!1,null,"f7abaea6",null).exports,na=r(16932);function ra(t){return ra="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ra(t)}function oa(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,aa(r.key),r)}}function ia(t,e,n){return(e=aa(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function aa(t){var e=function(t,e){if("object"!==ra(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==ra(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===ra(e)?e:String(e)}var sa=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),ia(this,"_views",[]),ia(this,"_currentView",null),_t.debug("Navigation service initialized")}var e,n;return e=t,n=[{key:"register",value:function(t){try{ca(t),la(t,this._views)}catch(e){throw e instanceof Error&&_t.error(e.message,{view:t}),e}this._views.push(t)}},{key:"remove",value:function(t){var e=this._views.findIndex((function(e){return e.id===t}));-1!==e&&this._views.splice(e,1)}},{key:"views",get:function(){return this._views}},{key:"setActive",value:function(t){this._currentView=t}},{key:"active",get:function(){return this._currentView}}],n&&oa(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}(),la=function(t,e){if(e.find((function(e){return e.id===t.id})))throw new Error("Navigation id ".concat(t.id," is already registered"));return!0},ca=function(t){if(!t.id||"string"!=typeof t.id)throw new Error("Navigation id is required and must be a string");if(!t.name||"string"!=typeof t.name)throw new Error("Navigation name is required and must be a string");if(t.columns&&t.columns.length>0&&(!t.caption||"string"!=typeof t.caption))throw new Error("Navigation caption is required for top-level views and must be a string");if(!t.getContents||"function"!=typeof t.getContents)throw new Error("Navigation getContents is required and must be a function");if(!t.icon||"string"!=typeof t.icon||!function(t){if("string"!=typeof t)throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);if(0===(t=t.trim()).length)return!1;if(!0!==na.XMLValidator.validate(t))return!1;let e;const n=new na.XMLParser;try{e=n.parse(t)}catch{return!1}return!!e&&"svg"in e}(t.icon))throw new Error("Navigation icon is required and must be a valid svg string");if(!("order"in t)||"number"!=typeof t.order)throw new Error("Navigation order is required and must be a number");if(t.columns&&t.columns.forEach(ua),t.emptyView&&"function"!=typeof t.emptyView)throw new Error("Navigation emptyView must be a function");if(t.parent&&"string"!=typeof t.parent)throw new Error("Navigation parent must be a string");if("sticky"in t&&"boolean"!=typeof t.sticky)throw new Error("Navigation sticky must be a boolean");if("expanded"in t&&"boolean"!=typeof t.expanded)throw new Error("Navigation expanded must be a boolean");if(t.defaultSortKey&&"string"!=typeof t.defaultSortKey)throw new Error("Navigation defaultSortKey must be a string");return!0},ua=function(t){if(!t.id||"string"!=typeof t.id)throw new Error("A column id is required");if(!t.title||"string"!=typeof t.title)throw new Error("A column title is required");if(!t.render||"function"!=typeof t.render)throw new Error("A render function is required");if(t.sort&&"function"!=typeof t.sort)throw new Error("Column sortFunction must be a function");if(t.summary&&"function"!=typeof t.summary)throw new Error("Column summary must be a function");return!0},da=r(57638),pa=r(55209),ha=r.n(pa),fa=r(14032),ma=r.n(fa);function va(t,e,n){var r,o=n||{},i=o.noTrailing,a=void 0!==i&&i,s=o.noLeading,l=void 0!==s&&s,c=o.debounceMode,u=void 0===c?void 0:c,d=!1,p=0;function h(){r&&clearTimeout(r)}function f(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];var s=this,c=Date.now()-p;function f(){p=Date.now(),e.apply(s,o)}function m(){r=void 0}d||(l||!u||r||f(),h(),void 0===u&&c>t?l?(p=Date.now(),a||(r=setTimeout(u?m:f,t))):f():!0!==a&&(r=setTimeout(u?m:f,void 0===u?t-c:t)))}return f.cancel=function(t){var e=(t||{}).upcomingOnly,n=void 0!==e&&e;h(),d=!n},f}var ga={name:"ChartPieIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Aa=(0,M.Z)(ga,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon chart-pie-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ya=r(48959),ba=r.n(ya);function Ca(t){return Ca="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ca(t)}function wa(){wa=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Ca(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function ka(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}var xa,Sa={name:"NavigationQuota",components:{ChartPie:Aa,NcAppNavigationItem:ma(),NcProgressBar:ba()},data:function(){return{loadingStorageStats:!1,storageStats:(0,a.j)("files","storageStats",null)}},computed:{storageStatsTitle:function(){var t,e,n,r=vt(null===(t=this.storageStats)||void 0===t?void 0:t.used),o=vt(null===(e=this.storageStats)||void 0===e?void 0:e.quota);return(null===(n=this.storageStats)||void 0===n?void 0:n.quota)<0?this.t("files","{usedQuotaByte} used",{usedQuotaByte:r}):this.t("files","{used} of {quota} used",{used:r,quota:o})},storageStatsTooltip:function(){return this.storageStats.relative?this.t("files","{relative}% used",this.storageStats):""}},beforeMount:function(){setInterval(this.throttleUpdateStorageStats,6e4),(0,ut.Ld)("files:node:created",this.throttleUpdateStorageStats),(0,ut.Ld)("files:node:deleted",this.throttleUpdateStorageStats),(0,ut.Ld)("files:node:moved",this.throttleUpdateStorageStats),(0,ut.Ld)("files:node:updated",this.throttleUpdateStorageStats)},methods:{debounceUpdateStorageStats:(xa={}.atBegin,va(200,(function(t){this.updateStorageStats(t)}),{debounceMode:!1!==(void 0!==xa&&xa)})),throttleUpdateStorageStats:va(1e3,(function(t){this.updateStorageStats(t)})),updateStorageStats:function(){var e,n=arguments,r=this;return(e=wa().mark((function e(){var o,i,a;return wa().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=n.length>0&&void 0!==n[0]?n[0]:null,!r.loadingStorageStats){e.next=3;break}return e.abrupt("return");case 3:return r.loadingStorageStats=!0,e.prev=4,e.next=7,d.Z.get((0,l.generateUrl)("/apps/files/api/v1/stats"));case 7:if(null!=(a=e.sent)&&null!==(i=a.data)&&void 0!==i&&i.data){e.next=10;break}throw new Error("Invalid storage stats");case 10:r.storageStats=a.data.data,e.next=17;break;case 13:e.prev=13,e.t0=e.catch(4),_t.error("Could not refresh storage stats",{error:e.t0}),o&&(0,f.x2)(t("files","Could not refresh storage stats"));case 17:return e.prev=17,r.loadingStorageStats=!1,e.finish(17);case 20:case"end":return e.stop()}}),e,null,[[4,13,17,20]])})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(t){ka(i,r,o,a,s,"next",t)}function s(t){ka(i,r,o,a,s,"throw",t)}a(void 0)}))})()},t:s.Iu}},ja=Sa,_a=r(43704),Ea={};Ea.styleTagTransform=D(),Ea.setAttributes=L(),Ea.insert=z().bind(null,"head"),Ea.domAPI=N(),Ea.insertStyleElement=F(),E()(_a.Z,Ea),_a.Z&&_a.Z.locals&&_a.Z.locals;var Pa=(0,M.Z)(ja,(function(){var t=this,e=t._self._c;return t.storageStats?e("NcAppNavigationItem",{staticClass:"app-navigation-entry__settings-quota",class:{"app-navigation-entry__settings-quota--not-unlimited":t.storageStats.quota>=0},attrs:{"aria-label":t.t("files","Storage informations"),loading:t.loadingStorageStats,name:t.storageStatsTitle,title:t.storageStatsTooltip,"data-cy-files-navigation-settings-quota":""},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.debounceUpdateStorageStats.apply(null,arguments)}}},[e("ChartPie",{attrs:{slot:"icon",size:20},slot:"icon"}),t._v(" "),t.storageStats.quota>=0?e("NcProgressBar",{attrs:{slot:"extra",error:t.storageStats.relative>80,value:Math.min(t.storageStats.relative,100)},slot:"extra"}):t._e()],1):t._e()}),[],!1,null,"28bf4b40",null),Na=Pa.exports,Oa=r(68988),za=r.n(Oa),Ta=r(16809),La=r.n(Ta),Ba={name:"ClipboardIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Fa=(0,M.Z)(Ba,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon clipboard-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Ia=r(36029),Da=r.n(Ia),Ga={name:"Setting",props:{el:{type:Function,required:!0}},mounted:function(){this.$el.appendChild(this.el())}},$a=(0,M.Z)(Ga,(function(){return(0,this._self._c)("div")}),[],!1,null,null,null).exports;function Ma(t){return Ma="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ma(t)}function Ra(){Ra=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Ma(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function Ua(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}var Va={name:"Settings",components:{Clipboard:Fa,NcAppSettingsDialog:za(),NcAppSettingsSection:La(),NcCheckboxRadioSwitch:go(),NcInputField:Da(),Setting:$a},props:{open:{type:Boolean,default:!1}},setup:function(){return{userConfigStore:br()}},data:function(){var t,e;return{settings:(null===(t=window.OCA)||void 0===t||null===(t=t.Files)||void 0===t||null===(t=t.Settings)||void 0===t?void 0:t.settings)||[],webdavUrl:(0,l.generateRemoteUrl)("dav/files/"+encodeURIComponent(null===(e=(0,c.ts)())||void 0===e?void 0:e.uid)),webdavDocs:"https://docs.nextcloud.com/server/stable/go.php?to=user-webdav",appPasswordUrl:(0,l.generateUrl)("/settings/user/security#generate-app-token-section"),webdavUrlCopied:!1}},computed:{userConfig:function(){return this.userConfigStore.userConfig}},beforeMount:function(){this.settings.forEach((function(t){return t.open()}))},beforeDestroy:function(){this.settings.forEach((function(t){return t.close()}))},methods:{onClose:function(){this.$emit("close")},setConfig:function(t,e){this.userConfigStore.update(t,e)},copyCloudId:function(){var e,n=this;return(e=Ra().mark((function e(){return Ra().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(document.querySelector("input#webdav-url-input").select(),navigator.clipboard){e.next=4;break}return(0,f.x2)(t("files","Clipboard is not available")),e.abrupt("return");case 4:return e.next=6,navigator.clipboard.writeText(n.webdavUrl);case 6:n.webdavUrlCopied=!0,(0,f.s$)(t("files","WebDAV URL copied to clipboard")),setTimeout((function(){n.webdavUrlCopied=!1}),5e3);case 9:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(t){Ua(i,r,o,a,s,"next",t)}function s(t){Ua(i,r,o,a,s,"throw",t)}a(void 0)}))})()},t:s.Iu}},Za=Va,qa=r(72277),Ha={};Ha.styleTagTransform=D(),Ha.setAttributes=L(),Ha.insert=z().bind(null,"head"),Ha.domAPI=N(),Ha.insertStyleElement=F(),E()(qa.Z,Ha),qa.Z&&qa.Z.locals&&qa.Z.locals;var Wa=(0,M.Z)(Za,(function(){var t=this,e=t._self._c;return e("NcAppSettingsDialog",{attrs:{open:t.open,"show-navigation":!0,name:t.t("files","Files settings")},on:{"update:open":t.onClose}},[e("NcAppSettingsSection",{attrs:{id:"settings",name:t.t("files","Files settings")}},[e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.sort_favorites_first},on:{"update:checked":function(e){return t.setConfig("sort_favorites_first",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Sort favorites first"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.show_hidden},on:{"update:checked":function(e){return t.setConfig("show_hidden",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Show hidden files"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{checked:t.userConfig.crop_image_previews},on:{"update:checked":function(e){return t.setConfig("crop_image_previews",e)}}},[t._v("\n\t\t\t"+t._s(t.t("files","Crop image previews"))+"\n\t\t")])],1),t._v(" "),0!==t.settings.length?e("NcAppSettingsSection",{attrs:{id:"more-settings",name:t.t("files","Additional settings")}},[t._l(t.settings,(function(t){return[e("Setting",{key:t.name,attrs:{el:t.el}})]}))],2):t._e(),t._v(" "),e("NcAppSettingsSection",{attrs:{id:"webdav",name:t.t("files","WebDAV")}},[e("NcInputField",{attrs:{id:"webdav-url-input","show-trailing-button":!0,success:t.webdavUrlCopied,"trailing-button-label":t.t("files","Copy to clipboard"),value:t.webdavUrl,readonly:"readonly",type:"url"},on:{focus:function(t){return t.target.select()},"trailing-button-click":t.copyCloudId},scopedSlots:t._u([{key:"trailing-button-icon",fn:function(){return[e("Clipboard",{attrs:{size:20}})]},proxy:!0}])}),t._v(" "),e("em",[e("a",{staticClass:"setting-link",attrs:{href:t.webdavDocs,target:"_blank",rel:"noreferrer noopener"}},[t._v("\n\t\t\t\t"+t._s(t.t("files","Use this address to access your Files via WebDAV"))+" ↗\n\t\t\t")])]),t._v(" "),e("br"),t._v(" "),e("em",[e("a",{staticClass:"setting-link",attrs:{href:t.appPasswordUrl}},[t._v("\n\t\t\t\t"+t._s(t.t("files","If you have enabled 2FA, you must create and use a new app password by clicking here."))+" ↗\n\t\t\t")])])],1)],1)}),[],!1,null,"7aaa0c4e",null).exports;function Ka(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var Ya={name:"Navigation",components:{Cog:da.default,NavigationQuota:Na,NcAppNavigation:ha(),NcAppNavigationItem:ma(),NcIconSvgWrapper:ar(),SettingsModal:Wa},props:{Navigation:{type:Object,required:!0}},setup:function(){return{viewConfigStore:Sr()}},data:function(){return{settingsOpened:!1}},computed:{currentViewId:function(){var t;return(null===(t=this.$route)||void 0===t||null===(t=t.params)||void 0===t?void 0:t.view)||"files"},currentView:function(){var t=this;return this.views.find((function(e){return e.id===t.currentViewId}))},views:function(){return this.Navigation.views},parentViews:function(){return this.views.filter((function(t){return!t.parent})).sort((function(t,e){return t.order-e.order}))},childViews:function(){return this.views.filter((function(t){return!!t.parent})).reduce((function(t,e){return t[e.parent]=[].concat(function(t){if(Array.isArray(t))return Ka(t)}(n=t[e.parent]||[])||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(n)||function(t,e){if(t){if("string"==typeof t)return Ka(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ka(t,e):void 0}}(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),[e]),t[e.parent].sort((function(t,e){return t.order-e.order})),t;var n}),{})}},watch:{currentView:function(t,e){t.id!==(null==e?void 0:e.id)&&(this.Navigation.setActive(t),_t.debug("Navigation changed",{id:t.id,view:t}),this.showView(t,e))}},beforeMount:function(){this.currentView&&(_t.debug("Navigation mounted. Showing requested view",{view:this.currentView}),this.showView(this.currentView))},methods:{showView:function(t){var e,n,r,o;null===(e=window)||void 0===e||null===(e=e.OCA)||void 0===e||null===(e=e.Files)||void 0===e||null===(e=e.Sidebar)||void 0===e||null===(n=e.close)||void 0===n||n.call(e),this.Navigation.setActive(t),r=t.name,(o=document.getElementById("page-heading-level-1"))&&(o.textContent=r),(0,ut.j8)("files:navigation:changed",t)},onToggleExpand:function(t){var e=this.isExpanded(t);t.expanded=!e,this.viewConfigStore.update(t.id,"expanded",!e)},isExpanded:function(t){var e;return"boolean"==typeof(null===(e=this.viewConfigStore.getConfig(t.id))||void 0===e?void 0:e.expanded)?!0===this.viewConfigStore.getConfig(t.id).expanded:!0===t.expanded},generateToNavigation:function(t){if(t.params){var e=t.params,n=e.dir,r=e.fileid;return{name:"filelist",params:t.params,query:{dir:n,fileid:r}}}return{name:"filelist",params:{view:t.id}}},openSettings:function(){this.settingsOpened=!0},onSettingsClose:function(){this.settingsOpened=!1},t:s.Iu}},Ja=Ya,Qa=r(37165),Xa={};Xa.styleTagTransform=D(),Xa.setAttributes=L(),Xa.insert=z().bind(null,"head"),Xa.domAPI=N(),Xa.insertStyleElement=F(),E()(Qa.Z,Xa),Qa.Z&&Qa.Z.locals&&Qa.Z.locals;var ts,es=(0,M.Z)(Ja,(function(){var t=this,e=t._self._c;return e("NcAppNavigation",{attrs:{"data-cy-files-navigation":""},scopedSlots:t._u([{key:"list",fn:function(){return t._l(t.parentViews,(function(n){return e("NcAppNavigationItem",{key:n.id,attrs:{"allow-collapse":!0,"data-cy-files-navigation-item":n.id,icon:n.iconClass,open:t.isExpanded(n),pinned:n.sticky,name:n.name,to:t.generateToNavigation(n)},on:{"update:open":function(e){return t.onToggleExpand(n)}}},[n.icon?e("NcIconSvgWrapper",{attrs:{slot:"icon",svg:n.icon},slot:"icon"}):t._e(),t._v(" "),t._l(t.childViews[n.id],(function(n){return e("NcAppNavigationItem",{key:n.id,attrs:{"data-cy-files-navigation-item":n.id,exact:!0,icon:n.iconClass,name:n.name,to:t.generateToNavigation(n)}},[n.icon?e("NcIconSvgWrapper",{attrs:{slot:"icon",svg:n.icon},slot:"icon"}):t._e()],1)}))],2)}))},proxy:!0},{key:"footer",fn:function(){return[e("ul",{staticClass:"app-navigation-entry__settings"},[e("NavigationQuota"),t._v(" "),e("NcAppNavigationItem",{attrs:{"aria-label":t.t("files","Open the files app settings"),name:t.t("files","Files settings"),"data-cy-files-navigation-settings-button":""},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.openSettings.apply(null,arguments)}}},[e("Cog",{attrs:{slot:"icon",size:20},slot:"icon"})],1)],1)]},proxy:!0}])},[t._v(" "),t._v(" "),e("SettingsModal",{attrs:{open:t.settingsOpened,"data-cy-files-navigation-settings":""},on:{close:t.onSettingsClose}})],1)}),[],!1,null,"5800c908",null),ns=es.exports,rs="/files/".concat(null===(ts=(0,c.ts)())||void 0===ts?void 0:ts.uid),os=(0,l.generateRemoteUrl)("dav"+rs),is=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:os,e=(0,pt.eI)(t,{headers:{requesttoken:(0,c.IH)()||""}});return(0,pt.lD)().patch("request",(function(t){var e;return null!==(e=t.headers)&&void 0!==e&&e.method&&(t.method=t.headers.method,delete t.headers.method),(0,ht.W)(t)})),e},as=["d:getcontentlength","d:getcontenttype","d:getetag","d:getlastmodified","d:quota-available-bytes","d:resourcetype","nc:has-preview","nc:is-encrypted","nc:mount-type","nc:share-attributes","oc:comments-unread","oc:favorite","oc:fileid","oc:owner-display-name","oc:owner-id","oc:permissions","oc:share-types","oc:size","ocs:share-permissions"],ss={d:"DAV:",nc:"http://nextcloud.org/ns",oc:"http://owncloud.org/ns",ocs:"http://open-collaboration-services.org/ns"},ls=function(){return void 0===window._nc_dav_properties&&(window._nc_dav_properties=as),window._nc_dav_properties.map((function(t){return"<".concat(t," />")})).join(" ")},cs=function(){return void 0===window._nc_dav_namespaces&&(window._nc_dav_namespaces=ss),Object.keys(window._nc_dav_namespaces).map((function(t){return"xmlns:".concat(t,'="').concat(window._nc_dav_namespaces[t],'"')})).join(" ")},us=function(){return'<?xml version="1.0"?>\n\t\t<d:propfind '.concat(cs(),">\n\t\t\t<d:prop>\n\t\t\t\t").concat(ls(),"\n\t\t\t</d:prop>\n\t\t</d:propfind>")};function ds(t){return ds="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ds(t)}function ps(){ps=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==ds(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function hs(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function fs(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ms(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?fs(Object(n),!0).forEach((function(e){vs(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):fs(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function vs(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==ds(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==ds(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===ds(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var gs,As=is(),ys='<?xml version="1.0"?>\n<oc:filter-files '.concat(cs(),">\n\t<d:prop>\n\t\t").concat(ls(),"\n\t</d:prop>\n\t<oc:filter-rules>\n\t\t<oc:favorite>1</oc:favorite>\n\t</oc:filter-rules>\n</oc:filter-files>"),bs=function(t){var e,n=t.props,r=At(null==n?void 0:n.permissions),o=null===(e=(0,c.ts)())||void 0===e?void 0:e.uid,i={id:(null==n?void 0:n.fileid)||0,source:(0,l.generateRemoteUrl)("dav"+rs+t.filename),mtime:new Date(t.lastmod),mime:t.mime,size:(null==n?void 0:n.size)||0,permissions:r,owner:o,root:rs,attributes:ms(ms(ms({},t),n),{},{hasPreview:null==n?void 0:n["has-preview"]})};return delete i.attributes.props,"file"===t.type?new kt(i):new xt(i)},Cs=function(){var t,e=(t=ps().mark((function t(){var e,n,r,o,i,a,s,l=arguments;return ps().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=l.length>0&&void 0!==l[0]?l[0]:"/",r=us(),"/"!==n){t.next=6;break}return t.next=5,As.stat(n,{details:!0,data:us()});case 5:o=t.sent;case 6:return t.next=8,As.getDirectoryContents(n,{details:!0,data:"/"===n?ys:r,headers:{method:"/"===n?"REPORT":"PROPFIND"},includeSelf:!0});case 8:return i=t.sent,a=(null===(e=o)||void 0===e?void 0:e.data)||i.data[0],s=i.data.filter((function(t){return t.filename!==n})),t.abrupt("return",{folder:bs(a),contents:s.map(bs)});case 12:case"end":return t.stop()}}),t)})),function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){hs(i,r,o,a,s,"next",t)}function s(t){hs(i,r,o,a,s,"throw",t)}a(void 0)}))});return function(){return e.apply(this,arguments)}}(),ws=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return{id:ks(t),name:(0,h.basename)(t),icon:ie,order:e,params:{dir:t,view:"favorites"},parent:"favorites",columns:[],getContents:Cs}},ks=function(t){return"favorite-".concat(bo(t))};function xs(t){return xs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},xs(t)}function Ss(){Ss=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==xs(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function js(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function _s(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Es(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?_s(Object(n),!0).forEach((function(e){Ps(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):_s(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Ps(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==xs(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==xs(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===xs(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var Ns=is((0,l.generateRemoteUrl)("dav")),Os=Math.round(Date.now()/1e3-1209600),zs='<?xml version="1.0" encoding="UTF-8"?>\n<d:searchrequest '.concat(cs(),'\n\txmlns:ns="https://github.com/icewind1991/SearchDAV/ns">\n\t<d:basicsearch>\n\t\t<d:select>\n\t\t\t<d:prop>\n\t\t\t\t').concat(ls(),"\n\t\t\t</d:prop>\n\t\t</d:select>\n\t\t<d:from>\n\t\t\t<d:scope>\n\t\t\t\t<d:href>/files/").concat(null===(gs=(0,c.ts)())||void 0===gs?void 0:gs.uid,"/</d:href>\n\t\t\t\t<d:depth>infinity</d:depth>\n\t\t\t</d:scope>\n\t\t</d:from>\n\t\t<d:where>\n\t\t\t<d:and>\n\t\t\t\t<d:or>\n\t\t\t\t\t<d:not>\n\t\t\t\t\t\t<d:eq>\n\t\t\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t\t\t<d:getcontenttype/>\n\t\t\t\t\t\t\t</d:prop>\n\t\t\t\t\t\t\t<d:literal>httpd/unix-directory</d:literal>\n\t\t\t\t\t\t</d:eq>\n\t\t\t\t\t</d:not>\n\t\t\t\t\t<d:eq>\n\t\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t\t<oc:size/>\n\t\t\t\t\t\t</d:prop>\n\t\t\t\t\t\t<d:literal>0</d:literal>\n\t\t\t\t\t</d:eq>\n\t\t\t\t</d:or>\n\t\t\t\t<d:gt>\n\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t<d:getlastmodified/>\n\t\t\t\t\t</d:prop>\n\t\t\t\t\t<d:literal>").concat(Os,"</d:literal>\n\t\t\t\t</d:gt>\n\t\t\t</d:and>\n\t\t</d:where>\n\t\t<d:orderby>\n\t\t\t<d:order>\n\t\t\t\t<d:prop>\n\t\t\t\t\t<d:getlastmodified/>\n\t\t\t\t</d:prop>\n\t\t\t\t<d:descending/>\n\t\t\t</d:order>\n\t\t</d:orderby>\n\t\t<d:limit>\n\t\t\t<d:nresults>100</d:nresults>\n\t\t\t<ns:firstresult>0</ns:firstresult>\n\t\t</d:limit>\n\t</d:basicsearch>\n</d:searchrequest>"),Ts=function(t){var e,n=t.props,r=At(null==n?void 0:n.permissions),o=null===(e=(0,c.ts)())||void 0===e?void 0:e.uid,i={id:(null==n?void 0:n.fileid)||0,source:(0,l.generateRemoteUrl)("dav"+t.filename),mtime:new Date(t.lastmod),mime:t.mime,size:(null==n?void 0:n.size)||0,permissions:r,owner:o,root:rs,attributes:Es(Es(Es({},t),n),{},{hasPreview:null==n?void 0:n["has-preview"]})};return delete i.attributes.props,"file"===t.type?new kt(i):new xt(i)},Ls=function(){var t,e=(t=Ss().mark((function t(){var e,n,r,o,i=arguments;return Ss().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=i.length>0&&void 0!==i[0]?i[0]:"/",t.next=3,Ns.getDirectoryContents(n,{details:!0,data:zs,headers:{method:"SEARCH","Content-Type":"application/xml; charset=utf-8"},deep:!0});case 3:return r=t.sent,o=r.data,t.abrupt("return",{folder:new xt({id:0,source:(0,l.generateRemoteUrl)("dav"+rs),root:rs,owner:(null===(e=(0,c.ts)())||void 0===e?void 0:e.uid)||null,permissions:gt.READ}),contents:o.map(Ts)});case 6:case"end":return t.stop()}}),t)})),function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){js(i,r,o,a,s,"next",t)}function s(t){js(i,r,o,a,s,"throw",t)}a(void 0)}))});return function(){return e.apply(this,arguments)}}();function Bs(t){return Bs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Bs(t)}function Fs(){Fs=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Bs(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function Is(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function Ds(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Gs(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Ds(Object(n),!0).forEach((function(e){$s(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Ds(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function $s(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Bs(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==Bs(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Bs(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var Ms=is(),Rs=function(t){var e,n=t.props,r=At(null==n?void 0:n.permissions),o=null===(e=(0,c.ts)())||void 0===e?void 0:e.uid,i=(0,l.generateRemoteUrl)("dav"+rs+t.filename),a={id:(null==n?void 0:n.fileid)<0?bo(i):(null==n?void 0:n.fileid)||0,source:i,mtime:new Date(t.lastmod),mime:t.mime,size:(null==n?void 0:n.size)||0,permissions:r,owner:o,root:rs,attributes:Gs(Gs(Gs({},t),n),{},{hasPreview:null==n?void 0:n["has-preview"],failed:(null==n?void 0:n.fileid)<0})};return delete a.attributes.props,"file"===t.type?new kt(a):new xt(a)},Us=function(){var t,e=(t=Fs().mark((function t(){var e,n,r,o,i,a=arguments;return Fs().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e=a.length>0&&void 0!==a[0]?a[0]:"/",n=us(),t.next=4,Ms.getDirectoryContents(e,{details:!0,data:n,includeSelf:!0});case 4:if(r=t.sent,o=r.data[0],i=r.data.slice(1),o.filename===e){t.next=9;break}throw new Error("Root node does not match requested path");case 9:return t.abrupt("return",{folder:Rs(o),contents:i.map((function(t){try{return Rs(t)}catch(e){return _t.error("Invalid node detected '".concat(t.basename,"'"),{error:e}),null}})).filter(Boolean)});case 10:case"end":return t.stop()}}),t)})),function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){Is(i,r,o,a,s,"next",t)}function s(t){Is(i,r,o,a,s,"throw",t)}a(void 0)}))});return function(){return e.apply(this,arguments)}}();function Vs(t){return Vs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Vs(t)}function Zs(){Zs=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,n){return t[e]=n}}function c(t,e,n,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),s=new S(o||[]);return r(a,"_invoke",{value:C(t,n,s)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var d={};function p(){}function h(){}function f(){}var m={};l(m,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(j([])));g&&g!==e&&n.call(g,i)&&(m=g);var A=f.prototype=p.prototype=Object.create(m);function y(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(r,i,a,s){var l=u(t[r],t,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==Vs(d)&&n.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,s)}),(function(t){o("throw",t,a,s)})):e.resolve(d).then((function(t){c.value=t,a(c)}),(function(t){return o("throw",t,a,s)}))}s(l.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function C(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===d)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var l=u(t,e,n);if("normal"===l.type){if(r=n.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r="completed",n.method="throw",n.arg=l.arg)}}}function w(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function j(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return h.prototype=f,r(A,"constructor",{value:f,configurable:!0}),r(f,"constructor",{value:h,configurable:!0}),h.displayName=l(f,s,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,f):(t.__proto__=f,l(t,s,"GeneratorFunction")),t.prototype=Object.create(A),t},t.awrap=function(t){return{__await:t}},y(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new b(c(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},y(A),l(A,s,"Generator"),l(A,i,(function(){return this})),l(A,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=j,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;x(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:j(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},t}function qs(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function Hs(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){qs(i,r,o,a,s,"next",t)}function s(t){qs(i,r,o,a,s,"throw",t)}a(void 0)}))}}const Ws="%[a-f0-9]{2}",Ks=new RegExp("("+Ws+")|([^%]+?)","gi"),Ys=new RegExp("("+Ws+")+","gi");function Js(t,e){try{return[decodeURIComponent(t.join(""))]}catch{}if(1===t.length)return t;e=e||1;const n=t.slice(0,e),r=t.slice(e);return Array.prototype.concat.call([],Js(n),Js(r))}function Qs(t){try{return decodeURIComponent(t)}catch{let e=t.match(Ks)||[];for(let n=1;n<e.length;n++)e=(t=Js(e,n).join("")).match(Ks)||[];return t}}function Xs(t,e){if("string"!=typeof t||"string"!=typeof e)throw new TypeError("Expected the arguments to be of type `string`");if(""===t||""===e)return[];const n=t.indexOf(e);return-1===n?[]:[t.slice(0,n),t.slice(n+e.length)]}function tl(t,e){const n={};if(Array.isArray(e))for(const r of e){const e=Object.getOwnPropertyDescriptor(t,r);e?.enumerable&&Object.defineProperty(n,r,e)}else for(const r of Reflect.ownKeys(t)){const o=Object.getOwnPropertyDescriptor(t,r);o.enumerable&&e(r,t[r],t)&&Object.defineProperty(n,r,o)}return n}const el=t=>null==t,nl=t=>encodeURIComponent(t).replace(/[!'()*]/g,(t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)),rl=Symbol("encodeFragmentIdentifier");function ol(t){if("string"!=typeof t||1!==t.length)throw new TypeError("arrayFormatSeparator must be single character string")}function il(t,e){return e.encode?e.strict?nl(t):encodeURIComponent(t):t}function al(t,e){return e.decode?function(t){if("string"!=typeof t)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof t+"`");try{return decodeURIComponent(t)}catch{return function(t){const e={"%FE%FF":"��","%FF%FE":"��"};let n=Ys.exec(t);for(;n;){try{e[n[0]]=decodeURIComponent(n[0])}catch{const t=Qs(n[0]);t!==n[0]&&(e[n[0]]=t)}n=Ys.exec(t)}e["%C2"]="�";const r=Object.keys(e);for(const n of r)t=t.replace(new RegExp(n,"g"),e[n]);return t}(t)}}(t):t}function sl(t){return Array.isArray(t)?t.sort():"object"==typeof t?sl(Object.keys(t)).sort(((t,e)=>Number(t)-Number(e))).map((e=>t[e])):t}function ll(t){const e=t.indexOf("#");return-1!==e&&(t=t.slice(0,e)),t}function cl(t,e){return e.parseNumbers&&!Number.isNaN(Number(t))&&"string"==typeof t&&""!==t.trim()?t=Number(t):!e.parseBooleans||null===t||"true"!==t.toLowerCase()&&"false"!==t.toLowerCase()||(t="true"===t.toLowerCase()),t}function ul(t){const e=(t=ll(t)).indexOf("?");return-1===e?"":t.slice(e+1)}function dl(t,e){ol((e={decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1,...e}).arrayFormatSeparator);const n=function(t){let e;switch(t.arrayFormat){case"index":return(t,n,r)=>{e=/\[(\d*)]$/.exec(t),t=t.replace(/\[\d*]$/,""),e?(void 0===r[t]&&(r[t]={}),r[t][e[1]]=n):r[t]=n};case"bracket":return(t,n,r)=>{e=/(\[])$/.exec(t),t=t.replace(/\[]$/,""),e?void 0!==r[t]?r[t]=[...r[t],n]:r[t]=[n]:r[t]=n};case"colon-list-separator":return(t,n,r)=>{e=/(:list)$/.exec(t),t=t.replace(/:list$/,""),e?void 0!==r[t]?r[t]=[...r[t],n]:r[t]=[n]:r[t]=n};case"comma":case"separator":return(e,n,r)=>{const o="string"==typeof n&&n.includes(t.arrayFormatSeparator),i="string"==typeof n&&!o&&al(n,t).includes(t.arrayFormatSeparator);n=i?al(n,t):n;const a=o||i?n.split(t.arrayFormatSeparator).map((e=>al(e,t))):null===n?n:al(n,t);r[e]=a};case"bracket-separator":return(e,n,r)=>{const o=/(\[])$/.test(e);if(e=e.replace(/\[]$/,""),!o)return void(r[e]=n?al(n,t):n);const i=null===n?[]:n.split(t.arrayFormatSeparator).map((e=>al(e,t)));void 0!==r[e]?r[e]=[...r[e],...i]:r[e]=i};default:return(t,e,n)=>{void 0!==n[t]?n[t]=[...[n[t]].flat(),e]:n[t]=e}}}(e),r=Object.create(null);if("string"!=typeof t)return r;if(!(t=t.trim().replace(/^[?#&]/,"")))return r;for(const o of t.split("&")){if(""===o)continue;const t=e.decode?o.replace(/\+/g," "):o;let[i,a]=Xs(t,"=");void 0===i&&(i=t),a=void 0===a?null:["comma","separator","bracket-separator"].includes(e.arrayFormat)?a:al(a,e),n(al(i,e),a,r)}for(const[t,n]of Object.entries(r))if("object"==typeof n&&null!==n)for(const[t,r]of Object.entries(n))n[t]=cl(r,e);else r[t]=cl(n,e);return!1===e.sort?r:(!0===e.sort?Object.keys(r).sort():Object.keys(r).sort(e.sort)).reduce(((t,e)=>{const n=r[e];return Boolean(n)&&"object"==typeof n&&!Array.isArray(n)?t[e]=sl(n):t[e]=n,t}),Object.create(null))}function pl(t,e){if(!t)return"";ol((e={encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:",",...e}).arrayFormatSeparator);const n=n=>e.skipNull&&el(t[n])||e.skipEmptyString&&""===t[n],r=function(t){switch(t.arrayFormat){case"index":return e=>(n,r)=>{const o=n.length;return void 0===r||t.skipNull&&null===r||t.skipEmptyString&&""===r?n:null===r?[...n,[il(e,t),"[",o,"]"].join("")]:[...n,[il(e,t),"[",il(o,t),"]=",il(r,t)].join("")]};case"bracket":return e=>(n,r)=>void 0===r||t.skipNull&&null===r||t.skipEmptyString&&""===r?n:null===r?[...n,[il(e,t),"[]"].join("")]:[...n,[il(e,t),"[]=",il(r,t)].join("")];case"colon-list-separator":return e=>(n,r)=>void 0===r||t.skipNull&&null===r||t.skipEmptyString&&""===r?n:null===r?[...n,[il(e,t),":list="].join("")]:[...n,[il(e,t),":list=",il(r,t)].join("")];case"comma":case"separator":case"bracket-separator":{const e="bracket-separator"===t.arrayFormat?"[]=":"=";return n=>(r,o)=>void 0===o||t.skipNull&&null===o||t.skipEmptyString&&""===o?r:(o=null===o?"":o,0===r.length?[[il(n,t),e,il(o,t)].join("")]:[[r,il(o,t)].join(t.arrayFormatSeparator)])}default:return e=>(n,r)=>void 0===r||t.skipNull&&null===r||t.skipEmptyString&&""===r?n:null===r?[...n,il(e,t)]:[...n,[il(e,t),"=",il(r,t)].join("")]}}(e),o={};for(const[e,r]of Object.entries(t))n(e)||(o[e]=r);const i=Object.keys(o);return!1!==e.sort&&i.sort(e.sort),i.map((n=>{const o=t[n];return void 0===o?"":null===o?il(n,e):Array.isArray(o)?0===o.length&&"bracket-separator"===e.arrayFormat?il(n,e)+"[]":o.reduce(r(n),[]).join("&"):il(n,e)+"="+il(o,e)})).filter((t=>t.length>0)).join("&")}function hl(t,e){e={decode:!0,...e};let[n,r]=Xs(t,"#");return void 0===n&&(n=t),{url:n?.split("?")?.[0]??"",query:dl(ul(t),e),...e&&e.parseFragmentIdentifier&&r?{fragmentIdentifier:al(r,e)}:{}}}function fl(t,e){e={encode:!0,strict:!0,[rl]:!0,...e};const n=ll(t.url).split("?")[0]||"";let r=pl({...dl(ul(t.url),{sort:!1}),...t.query},e);r&&(r=`?${r}`);let o=function(t){let e="";const n=t.indexOf("#");return-1!==n&&(e=t.slice(n)),e}(t.url);if(t.fragmentIdentifier){const r=new URL(n);r.hash=t.fragmentIdentifier,o=e[rl]?r.hash:`#${t.fragmentIdentifier}`}return`${n}${r}${o}`}function ml(t,e,n){n={parseFragmentIdentifier:!0,[rl]:!1,...n};const{url:r,query:o,fragmentIdentifier:i}=hl(t,n);return fl({url:r,query:tl(o,e),fragmentIdentifier:i},n)}function vl(t,e,n){return ml(t,Array.isArray(e)?t=>!e.includes(t):(t,n)=>!e(t,n),n)}var gl=o,Al=r(25108);function yl(t,e){for(var n in e)t[n]=e[n];return t}var bl=/[!'()*]/g,Cl=function(t){return"%"+t.charCodeAt(0).toString(16)},wl=/%2C/g,kl=function(t){return encodeURIComponent(t).replace(bl,Cl).replace(wl,",")};function xl(t){try{return decodeURIComponent(t)}catch(t){}return t}var Sl=function(t){return null==t||"object"==typeof t?t:String(t)};function jl(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=xl(n.shift()),o=n.length>0?xl(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function _l(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return kl(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(kl(e)):r.push(kl(e)+"="+kl(t)))})),r.join("&")}return kl(e)+"="+kl(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var El=/\/?$/;function Pl(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=Nl(i)}catch(t){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:Tl(e,o),matched:t?zl(t):[]};return n&&(a.redirectedFrom=Tl(n,o)),Object.freeze(a)}function Nl(t){if(Array.isArray(t))return t.map(Nl);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=Nl(t[n]);return e}return t}var Ol=Pl(null,{path:"/"});function zl(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function Tl(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;return void 0===o&&(o=""),(n||"/")+(e||_l)(r)+o}function Ll(t,e,n){return e===Ol?t===e:!!e&&(t.path&&e.path?t.path.replace(El,"")===e.path.replace(El,"")&&(n||t.hash===e.hash&&Bl(t.query,e.query)):!(!t.name||!e.name)&&t.name===e.name&&(n||t.hash===e.hash&&Bl(t.query,e.query)&&Bl(t.params,e.params)))}function Bl(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t).sort(),r=Object.keys(e).sort();return n.length===r.length&&n.every((function(n,o){var i=t[n];if(r[o]!==n)return!1;var a=e[n];return null==i||null==a?i===a:"object"==typeof i&&"object"==typeof a?Bl(i,a):String(i)===String(a)}))}function Fl(t){for(var e=0;e<t.matched.length;e++){var n=t.matched[e];for(var r in n.instances){var o=n.instances[r],i=n.enteredCbs[r];if(o&&i){delete n.enteredCbs[r];for(var a=0;a<i.length;a++)o._isBeingDestroyed||i[a](o)}}}}var Il={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,o=e.parent,i=e.data;i.routerView=!0;for(var a=o.$createElement,s=n.name,l=o.$route,c=o._routerViewCache||(o._routerViewCache={}),u=0,d=!1;o&&o._routerRoot!==o;){var p=o.$vnode?o.$vnode.data:{};p.routerView&&u++,p.keepAlive&&o._directInactive&&o._inactive&&(d=!0),o=o.$parent}if(i.routerViewDepth=u,d){var h=c[s],f=h&&h.component;return f?(h.configProps&&Dl(f,i,h.route,h.configProps),a(f,i,r)):a()}var m=l.matched[u],v=m&&m.components[s];if(!m||!v)return c[s]=null,a();c[s]={component:v},i.registerRouteInstance=function(t,e){var n=m.instances[s];(e&&n!==t||!e&&n===t)&&(m.instances[s]=e)},(i.hook||(i.hook={})).prepatch=function(t,e){m.instances[s]=e.componentInstance},i.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==m.instances[s]&&(m.instances[s]=t.componentInstance),Fl(l)};var g=m.props&&m.props[s];return g&&(yl(c[s],{route:l,configProps:g}),Dl(v,i,l,g)),a(v,i,r)}};function Dl(t,e,n,r){var o=e.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0}}(n,r);if(o){o=e.props=yl({},o);var i=e.attrs=e.attrs||{};for(var a in o)t.props&&a in t.props||(i[a]=o[a],delete o[a])}}function Gl(t,e,n){var r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;var o=e.split("/");n&&o[o.length-1]||o.pop();for(var i=t.replace(/^\//,"").split("/"),a=0;a<i.length;a++){var s=i[a];".."===s?o.pop():"."!==s&&o.push(s)}return""!==o[0]&&o.unshift(""),o.join("/")}function $l(t){return t.replace(/\/(?:\s*\/)+/g,"/")}var Ml=Array.isArray||function(t){return"[object Array]"==Object.prototype.toString.call(t)},Rl=function t(e,n,r){return Ml(n)||(r=n||r,n=[]),r=r||{},e instanceof RegExp?function(t,e){var n=t.source.match(/\((?!\?)/g);if(n)for(var r=0;r<n.length;r++)e.push({name:r,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,asterisk:!1,pattern:null});return Ql(t,e)}(e,n):Ml(e)?function(e,n,r){for(var o=[],i=0;i<e.length;i++)o.push(t(e[i],n,r).source);return Ql(new RegExp("(?:"+o.join("|")+")",Xl(r)),n)}(e,n,r):function(t,e,n){return tc(Hl(t,n),e,n)}(e,n,r)},Ul=Hl,Vl=Kl,Zl=tc,ql=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function Hl(t,e){for(var n,r=[],o=0,i=0,a="",s=e&&e.delimiter||"/";null!=(n=ql.exec(t));){var l=n[0],c=n[1],u=n.index;if(a+=t.slice(i,u),i=u+l.length,c)a+=c[1];else{var d=t[i],p=n[2],h=n[3],f=n[4],m=n[5],v=n[6],g=n[7];a&&(r.push(a),a="");var A=null!=p&&null!=d&&d!==p,y="+"===v||"*"===v,b="?"===v||"*"===v,C=n[2]||s,w=f||m;r.push({name:h||o++,prefix:p||"",delimiter:C,optional:b,repeat:y,partial:A,asterisk:!!g,pattern:w?Jl(w):g?".*":"[^"+Yl(C)+"]+?"})}}return i<t.length&&(a+=t.substr(i)),a&&r.push(a),r}function Wl(t){return encodeURI(t).replace(/[\/?#]/g,(function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()}))}function Kl(t,e){for(var n=new Array(t.length),r=0;r<t.length;r++)"object"==typeof t[r]&&(n[r]=new RegExp("^(?:"+t[r].pattern+")$",Xl(e)));return function(e,r){for(var o="",i=e||{},a=(r||{}).pretty?Wl:encodeURIComponent,s=0;s<t.length;s++){var l=t[s];if("string"!=typeof l){var c,u=i[l.name];if(null==u){if(l.optional){l.partial&&(o+=l.prefix);continue}throw new TypeError('Expected "'+l.name+'" to be defined')}if(Ml(u)){if(!l.repeat)throw new TypeError('Expected "'+l.name+'" to not repeat, but received `'+JSON.stringify(u)+"`");if(0===u.length){if(l.optional)continue;throw new TypeError('Expected "'+l.name+'" to not be empty')}for(var d=0;d<u.length;d++){if(c=a(u[d]),!n[s].test(c))throw new TypeError('Expected all "'+l.name+'" to match "'+l.pattern+'", but received `'+JSON.stringify(c)+"`");o+=(0===d?l.prefix:l.delimiter)+c}}else{if(c=l.asterisk?encodeURI(u).replace(/[?#]/g,(function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})):a(u),!n[s].test(c))throw new TypeError('Expected "'+l.name+'" to match "'+l.pattern+'", but received "'+c+'"');o+=l.prefix+c}}else o+=l}return o}}function Yl(t){return t.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function Jl(t){return t.replace(/([=!:$\/()])/g,"\\$1")}function Ql(t,e){return t.keys=e,t}function Xl(t){return t&&t.sensitive?"":"i"}function tc(t,e,n){Ml(e)||(n=e||n,e=[]);for(var r=(n=n||{}).strict,o=!1!==n.end,i="",a=0;a<t.length;a++){var s=t[a];if("string"==typeof s)i+=Yl(s);else{var l=Yl(s.prefix),c="(?:"+s.pattern+")";e.push(s),s.repeat&&(c+="(?:"+l+c+")*"),i+=c=s.optional?s.partial?l+"("+c+")?":"(?:"+l+"("+c+"))?":l+"("+c+")"}}var u=Yl(n.delimiter||"/"),d=i.slice(-u.length)===u;return r||(i=(d?i.slice(0,-u.length):i)+"(?:"+u+"(?=$))?"),i+=o?"$":r&&d?"":"(?="+u+"|$)",Ql(new RegExp("^"+i,Xl(n)),e)}Rl.parse=Ul,Rl.compile=function(t,e){return Kl(Hl(t,e),e)},Rl.tokensToFunction=Vl,Rl.tokensToRegExp=Zl;var ec=Object.create(null);function nc(t,e,n){e=e||{};try{var r=ec[t]||(ec[t]=Rl.compile(t));return"string"==typeof e.pathMatch&&(e[0]=e.pathMatch),r(e,{pretty:!0})}catch(t){return""}finally{delete e[0]}}function rc(t,e,n,r){var o="string"==typeof t?{path:t}:t;if(o._normalized)return o;if(o.name){var i=(o=yl({},t)).params;return i&&"object"==typeof i&&(o.params=yl({},i)),o}if(!o.path&&o.params&&e){(o=yl({},o))._normalized=!0;var a=yl(yl({},e.params),o.params);if(e.name)o.name=e.name,o.params=a;else if(e.matched.length){var s=e.matched[e.matched.length-1].path;o.path=nc(s,a,e.path)}return o}var l=function(t){var e="",n="",r=t.indexOf("#");r>=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(o.path||""),c=e&&e.path||"/",u=l.path?Gl(l.path,c,n||o.append):c,d=function(t,e,n){void 0===e&&(e={});var r,o=n||jl;try{r=o(t||"")}catch(t){r={}}for(var i in e){var a=e[i];r[i]=Array.isArray(a)?a.map(Sl):Sl(a)}return r}(l.query,o.query,r&&r.options.parseQuery),p=o.hash||l.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:u,query:d,hash:p}}var oc,ic=function(){},ac={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,a=o.route,s=o.href,l={},c=n.options.linkActiveClass,u=n.options.linkExactActiveClass,d=null==c?"router-link-active":c,p=null==u?"router-link-exact-active":u,h=null==this.activeClass?d:this.activeClass,f=null==this.exactActiveClass?p:this.exactActiveClass,m=a.redirectedFrom?Pl(null,rc(a.redirectedFrom),null,n):a;l[f]=Ll(r,m,this.exactPath),l[h]=this.exact||this.exactPath?l[f]:function(t,e){return 0===t.path.replace(El,"/").indexOf(e.path.replace(El,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,m);var v=l[f]?this.ariaCurrentValue:null,g=function(t){sc(t)&&(e.replace?n.replace(i,ic):n.push(i,ic))},A={click:sc};Array.isArray(this.event)?this.event.forEach((function(t){A[t]=g})):A[this.event]=g;var y={class:l},b=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:s,route:a,navigate:g,isActive:l[h],isExactActive:l[f]});if(b){if(1===b.length)return b[0];if(b.length>1||!b.length)return 0===b.length?t():t("span",{},b)}if("a"===this.tag)y.on=A,y.attrs={href:s,"aria-current":v};else{var C=lc(this.$slots.default);if(C){C.isStatic=!1;var w=C.data=yl({},C.data);for(var k in w.on=w.on||{},w.on){var x=w.on[k];k in A&&(w.on[k]=Array.isArray(x)?x:[x])}for(var S in A)S in w.on?w.on[S].push(A[S]):w.on[S]=g;var j=C.data.attrs=yl({},C.data.attrs);j.href=s,j["aria-current"]=v}else y.on=A}return t(this.tag,y,this.$slots.default)}};function sc(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey||t.defaultPrevented||void 0!==t.button&&0!==t.button)){if(t.currentTarget&&t.currentTarget.getAttribute){var e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function lc(t){if(t)for(var e,n=0;n<t.length;n++){if("a"===(e=t[n]).tag)return e;if(e.children&&(e=lc(e.children)))return e}}var cc="undefined"!=typeof window;function uc(t,e,n,r,o){var i=e||[],a=n||Object.create(null),s=r||Object.create(null);t.forEach((function(t){dc(i,a,s,t,o)}));for(var l=0,c=i.length;l<c;l++)"*"===i[l]&&(i.push(i.splice(l,1)[0]),c--,l--);return{pathList:i,pathMap:a,nameMap:s}}function dc(t,e,n,r,o,i){var a=r.path,s=r.name,l=r.pathToRegexpOptions||{},c=function(t,e,n){return n||(t=t.replace(/\/$/,"")),"/"===t[0]||null==e?t:$l(e.path+"/"+t)}(a,o,l.strict);"boolean"==typeof r.caseSensitive&&(l.sensitive=r.caseSensitive);var u={path:c,regex:pc(c,l),components:r.components||{default:r.component},alias:r.alias?"string"==typeof r.alias?[r.alias]:r.alias:[],instances:{},enteredCbs:{},name:s,parent:o,matchAs:i,redirect:r.redirect,beforeEnter:r.beforeEnter,meta:r.meta||{},props:null==r.props?{}:r.components?r.props:{default:r.props}};if(r.children&&r.children.forEach((function(r){var o=i?$l(i+"/"+r.path):void 0;dc(t,e,n,r,u,o)})),e[u.path]||(t.push(u.path),e[u.path]=u),void 0!==r.alias)for(var d=Array.isArray(r.alias)?r.alias:[r.alias],p=0;p<d.length;++p){var h={path:d[p],children:r.children};dc(t,e,n,h,o,u.path||"/")}s&&(n[s]||(n[s]=u))}function pc(t,e){return Rl(t,[],e)}function hc(t,e){var n=uc(t),r=n.pathList,o=n.pathMap,i=n.nameMap;function a(t,n,a){var l=rc(t,n,!1,e),c=l.name;if(c){var u=i[c];if(!u)return s(null,l);var d=u.regex.keys.filter((function(t){return!t.optional})).map((function(t){return t.name}));if("object"!=typeof l.params&&(l.params={}),n&&"object"==typeof n.params)for(var p in n.params)!(p in l.params)&&d.indexOf(p)>-1&&(l.params[p]=n.params[p]);return l.path=nc(u.path,l.params),s(u,l,a)}if(l.path){l.params={};for(var h=0;h<r.length;h++){var f=r[h],m=o[f];if(fc(m.regex,l.path,l.params))return s(m,l,a)}}return s(null,l)}function s(t,n,r){return t&&t.redirect?function(t,n){var r=t.redirect,o="function"==typeof r?r(Pl(t,n,null,e)):r;if("string"==typeof o&&(o={path:o}),!o||"object"!=typeof o)return s(null,n);var l=o,c=l.name,u=l.path,d=n.query,p=n.hash,h=n.params;if(d=l.hasOwnProperty("query")?l.query:d,p=l.hasOwnProperty("hash")?l.hash:p,h=l.hasOwnProperty("params")?l.params:h,c)return i[c],a({_normalized:!0,name:c,query:d,hash:p,params:h},void 0,n);if(u){var f=function(t,e){return Gl(t,e.parent?e.parent.path:"/",!0)}(u,t);return a({_normalized:!0,path:nc(f,h),query:d,hash:p},void 0,n)}return s(null,n)}(t,r||n):t&&t.matchAs?function(t,e,n){var r=a({_normalized:!0,path:nc(n,e.params)});if(r){var o=r.matched,i=o[o.length-1];return e.params=r.params,s(i,e)}return s(null,e)}(0,n,t.matchAs):Pl(t,n,r,e)}return{match:a,addRoute:function(t,e){var n="object"!=typeof t?i[t]:void 0;uc([e||t],r,o,i,n),n&&n.alias.length&&uc(n.alias.map((function(t){return{path:t,children:[e]}})),r,o,i,n)},getRoutes:function(){return r.map((function(t){return o[t]}))},addRoutes:function(t){uc(t,r,o,i)}}}function fc(t,e,n){var r=e.match(t);if(!r)return!1;if(!n)return!0;for(var o=1,i=r.length;o<i;++o){var a=t.keys[o-1];a&&(n[a.name||"pathMatch"]="string"==typeof r[o]?xl(r[o]):r[o])}return!0}var mc=cc&&window.performance&&window.performance.now?window.performance:Date;function vc(){return mc.now().toFixed(3)}var gc=vc();function Ac(){return gc}function yc(t){return gc=t}var bc=Object.create(null);function Cc(){"scrollRestoration"in window.history&&(window.history.scrollRestoration="manual");var t=window.location.protocol+"//"+window.location.host,e=window.location.href.replace(t,""),n=yl({},window.history.state);return n.key=Ac(),window.history.replaceState(n,"",e),window.addEventListener("popstate",xc),function(){window.removeEventListener("popstate",xc)}}function wc(t,e,n,r){if(t.app){var o=t.options.scrollBehavior;o&&t.app.$nextTick((function(){var i=function(){var t=Ac();if(t)return bc[t]}(),a=o.call(t,e,n,r?i:null);a&&("function"==typeof a.then?a.then((function(t){Pc(t,i)})).catch((function(t){})):Pc(a,i))}))}}function kc(){var t=Ac();t&&(bc[t]={x:window.pageXOffset,y:window.pageYOffset})}function xc(t){kc(),t.state&&t.state.key&&yc(t.state.key)}function Sc(t){return _c(t.x)||_c(t.y)}function jc(t){return{x:_c(t.x)?t.x:window.pageXOffset,y:_c(t.y)?t.y:window.pageYOffset}}function _c(t){return"number"==typeof t}var Ec=/^#\d/;function Pc(t,e){var n,r="object"==typeof t;if(r&&"string"==typeof t.selector){var o=Ec.test(t.selector)?document.getElementById(t.selector.slice(1)):document.querySelector(t.selector);if(o){var i=t.offset&&"object"==typeof t.offset?t.offset:{};e=function(t,e){var n=document.documentElement.getBoundingClientRect(),r=t.getBoundingClientRect();return{x:r.left-n.left-e.x,y:r.top-n.top-e.y}}(o,i={x:_c((n=i).x)?n.x:0,y:_c(n.y)?n.y:0})}else Sc(t)&&(e=jc(t))}else r&&Sc(t)&&(e=jc(t));e&&("scrollBehavior"in document.documentElement.style?window.scrollTo({left:e.x,top:e.y,behavior:t.behavior}):window.scrollTo(e.x,e.y))}var Nc,Oc=cc&&(-1===(Nc=window.navigator.userAgent).indexOf("Android 2.")&&-1===Nc.indexOf("Android 4.0")||-1===Nc.indexOf("Mobile Safari")||-1!==Nc.indexOf("Chrome")||-1!==Nc.indexOf("Windows Phone"))&&window.history&&"function"==typeof window.history.pushState;function zc(t,e){kc();var n=window.history;try{if(e){var r=yl({},n.state);r.key=Ac(),n.replaceState(r,"",t)}else n.pushState({key:yc(vc())},"",t)}catch(n){window.location[e?"replace":"assign"](t)}}function Tc(t){zc(t,!0)}var Lc={redirected:2,aborted:4,cancelled:8,duplicated:16};function Bc(t,e){return Fc(t,e,Lc.cancelled,'Navigation cancelled from "'+t.fullPath+'" to "'+e.fullPath+'" with a new navigation.')}function Fc(t,e,n,r){var o=new Error(r);return o._isRouter=!0,o.from=t,o.to=e,o.type=n,o}var Ic=["params","query","hash"];function Dc(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function Gc(t,e){return Dc(t)&&t._isRouter&&(null==e||t.type===e)}function $c(t,e,n){var r=function(o){o>=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function Mc(t,e){return Rc(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function Rc(t){return Array.prototype.concat.apply([],t)}var Uc="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Vc(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var Zc=function(t,e){this.router=t,this.base=function(t){if(!t)if(cc){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";return"/"!==t.charAt(0)&&(t="/"+t),t.replace(/\/$/,"")}(e),this.current=Ol,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function qc(t,e,n,r){var o=Mc(t,(function(t,r,o,i){var a=function(t,e){return"function"!=typeof t&&(t=oc.extend(t)),t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return Rc(r?o.reverse():o)}function Hc(t,e){if(e)return function(){return t.apply(e,arguments)}}Zc.prototype.listen=function(t){this.cb=t},Zc.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Zc.prototype.onError=function(t){this.errorCbs.push(t)},Zc.prototype.transitionTo=function(t,e,n){var r,o=this;try{r=this.router.match(t,this.current)}catch(t){throw this.errorCbs.forEach((function(e){e(t)})),t}var i=this.current;this.confirmTransition(r,(function(){o.updateRoute(r),e&&e(r),o.ensureURL(),o.router.afterHooks.forEach((function(t){t&&t(r,i)})),o.ready||(o.ready=!0,o.readyCbs.forEach((function(t){t(r)})))}),(function(t){n&&n(t),t&&!o.ready&&(Gc(t,Lc.redirected)&&i===Ol||(o.ready=!0,o.readyErrorCbs.forEach((function(e){e(t)}))))}))},Zc.prototype.confirmTransition=function(t,e,n){var r=this,o=this.current;this.pending=t;var i,a,s=function(t){!Gc(t)&&Dc(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):Al.error(t)),n&&n(t)},l=t.matched.length-1,c=o.matched.length-1;if(Ll(t,o)&&l===c&&t.matched[l]===o.matched[c])return this.ensureURL(),t.hash&&wc(this.router,o,t,!1),s(((a=Fc(i=o,t,Lc.duplicated,'Avoided redundant navigation to current location: "'+i.fullPath+'".')).name="NavigationDuplicated",a));var u,d=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n<r&&t[n]===e[n];n++);return{updated:e.slice(0,n),activated:e.slice(n),deactivated:t.slice(n)}}(this.current.matched,t.matched),p=d.updated,h=d.deactivated,f=d.activated,m=[].concat(function(t){return qc(t,"beforeRouteLeave",Hc,!0)}(h),this.router.beforeHooks,function(t){return qc(t,"beforeRouteUpdate",Hc)}(p),f.map((function(t){return t.beforeEnter})),(u=f,function(t,e,n){var r=!1,o=0,i=null;Mc(u,(function(t,e,a,s){if("function"==typeof t&&void 0===t.cid){r=!0,o++;var l,c=Vc((function(e){var r;((r=e).__esModule||Uc&&"Module"===r[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:oc.extend(e),a.components[s]=e,--o<=0&&n()})),u=Vc((function(t){var e="Failed to resolve async component "+s+": "+t;i||(i=Dc(t)?t:new Error(e),n(i))}));try{l=t(c,u)}catch(t){u(t)}if(l)if("function"==typeof l.then)l.then(c,u);else{var d=l.component;d&&"function"==typeof d.then&&d.then(c,u)}}})),r||n()})),v=function(e,n){if(r.pending!==t)return s(Bc(o,t));try{e(t,o,(function(e){!1===e?(r.ensureURL(!0),s(function(t,e){return Fc(t,e,Lc.aborted,'Navigation aborted from "'+t.fullPath+'" to "'+e.fullPath+'" via a navigation guard.')}(o,t))):Dc(e)?(r.ensureURL(!0),s(e)):"string"==typeof e||"object"==typeof e&&("string"==typeof e.path||"string"==typeof e.name)?(s(function(t,e){return Fc(t,e,Lc.redirected,'Redirected when going from "'+t.fullPath+'" to "'+function(t){if("string"==typeof t)return t;if("path"in t)return t.path;var e={};return Ic.forEach((function(n){n in t&&(e[n]=t[n])})),JSON.stringify(e,null,2)}(e)+'" via a navigation guard.')}(o,t)),"object"==typeof e&&e.replace?r.replace(e):r.push(e)):n(e)}))}catch(t){s(t)}};$c(m,v,(function(){var n=function(t){return qc(t,"beforeRouteEnter",(function(t,e,n,r){return function(t,e,n){return function(r,o,i){return t(r,o,(function(t){"function"==typeof t&&(e.enteredCbs[n]||(e.enteredCbs[n]=[]),e.enteredCbs[n].push(t)),i(t)}))}}(t,n,r)}))}(f);$c(n.concat(r.router.resolveHooks),v,(function(){if(r.pending!==t)return s(Bc(o,t));r.pending=null,e(t),r.router.app&&r.router.app.$nextTick((function(){Fl(t)}))}))}))},Zc.prototype.updateRoute=function(t){this.current=t,this.cb&&this.cb(t)},Zc.prototype.setupListeners=function(){},Zc.prototype.teardown=function(){this.listeners.forEach((function(t){t()})),this.listeners=[],this.current=Ol,this.pending=null};var Wc=function(t){function e(e,n){t.call(this,e,n),this._startLocation=Kc(this.base)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router,n=e.options.scrollBehavior,r=Oc&&n;r&&this.listeners.push(Cc());var o=function(){var n=t.current,o=Kc(t.base);t.current===Ol&&o===t._startLocation||t.transitionTo(o,(function(t){r&&wc(e,t,n,!0)}))};window.addEventListener("popstate",o),this.listeners.push((function(){window.removeEventListener("popstate",o)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){zc($l(r.base+t.fullPath)),wc(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Tc($l(r.base+t.fullPath)),wc(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(Kc(this.base)!==this.current.fullPath){var e=$l(this.base+this.current.fullPath);t?zc(e):Tc(e)}},e.prototype.getCurrentLocation=function(){return Kc(this.base)},e}(Zc);function Kc(t){var e=window.location.pathname,n=e.toLowerCase(),r=t.toLowerCase();return!t||n!==r&&0!==n.indexOf($l(r+"/"))||(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var Yc=function(t){function e(e,n,r){t.call(this,e,n),r&&function(t){var e=Kc(t);if(!/^\/#/.test(e))return window.location.replace($l(t+"/#"+e)),!0}(this.base)||Jc()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=Oc&&e;n&&this.listeners.push(Cc());var r=function(){var e=t.current;Jc()&&t.transitionTo(Qc(),(function(r){n&&wc(t.router,r,e,!0),Oc||eu(r.fullPath)}))},o=Oc?"popstate":"hashchange";window.addEventListener(o,r),this.listeners.push((function(){window.removeEventListener(o,r)}))}},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){tu(t.fullPath),wc(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){eu(t.fullPath),wc(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;Qc()!==e&&(t?tu(e):eu(e))},e.prototype.getCurrentLocation=function(){return Qc()},e}(Zc);function Jc(){var t=Qc();return"/"===t.charAt(0)||(eu("/"+t),!1)}function Qc(){var t=window.location.href,e=t.indexOf("#");return e<0?"":t=t.slice(e+1)}function Xc(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function tu(t){Oc?zc(Xc(t)):window.location.hash=t}function eu(t){Oc?Tc(Xc(t)):window.location.replace(Xc(t))}var nu=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var t=e.current;e.index=n,e.updateRoute(r),e.router.afterHooks.forEach((function(e){e&&e(r,t)}))}),(function(t){Gc(t,Lc.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Zc),ru=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=hc(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!Oc&&!1!==t.fallback,this.fallback&&(e="hash"),cc||(e="abstract"),this.mode=e,e){case"history":this.history=new Wc(this,t.base);break;case"hash":this.history=new Yc(this,t.base,this.fallback);break;case"abstract":this.history=new nu(this,t.base)}},ou={currentRoute:{configurable:!0}};ru.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},ou.currentRoute.get=function(){return this.history&&this.history.current},ru.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof Wc||n instanceof Yc){var r=function(t){n.setupListeners(),function(t){var r=n.current,o=e.options.scrollBehavior;Oc&&o&&"fullPath"in t&&wc(e,t,r,!1)}(t)};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},ru.prototype.beforeEach=function(t){return au(this.beforeHooks,t)},ru.prototype.beforeResolve=function(t){return au(this.resolveHooks,t)},ru.prototype.afterEach=function(t){return au(this.afterHooks,t)},ru.prototype.onReady=function(t,e){this.history.onReady(t,e)},ru.prototype.onError=function(t){this.history.onError(t)},ru.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},ru.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},ru.prototype.go=function(t){this.history.go(t)},ru.prototype.back=function(){this.go(-1)},ru.prototype.forward=function(){this.go(1)},ru.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},ru.prototype.resolve=function(t,e,n){var r=rc(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath,a=function(t,e,n){var r="hash"===n?"#"+e:e;return t?$l(t+"/"+r):r}(this.history.base,i,this.mode);return{location:r,route:o,href:a,normalizedTo:r,resolved:o}},ru.prototype.getRoutes=function(){return this.matcher.getRoutes()},ru.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==Ol&&this.history.transitionTo(this.history.getCurrentLocation())},ru.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==Ol&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(ru.prototype,ou);var iu=ru;function au(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}ru.install=function t(e){if(!t.installed||oc!==e){t.installed=!0,oc=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",Il),e.component("RouterLink",ac);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},ru.version="3.6.5",ru.isNavigationFailure=Gc,ru.NavigationFailureType=Lc,ru.START_LOCATION=Ol,cc&&window.Vue&&window.Vue.use(ru),p.default.use(iu);var su=iu.prototype.push;iu.prototype.push=function(t,e,n){return e||n?su.call(this,t,e,n):su.call(this,t).catch((function(t){return t}))};var lu=new iu({mode:"history",base:(0,l.generateUrl)("/apps/files"),linkActiveClass:"active",routes:[{path:"/",redirect:{name:"filelist"}},{path:"/:view/:fileid?",name:"filelist",props:!0}],stringifyQuery:function(t){var e=gl.stringify(t).replace(/%2F/gim,"/");return e?"?"+e:""}});function cu(t){return cu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cu(t)}function uu(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,du(r.key),r)}}function du(t){var e=function(t,e){if("object"!==cu(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==cu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===cu(e)?e:String(e)}var pu=function(){function t(e){var n,r,o;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),n=this,o=void 0,(r=du(r="_router"))in n?Object.defineProperty(n,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[r]=o,this._router=e}var e,n;return e=t,n=[{key:"name",get:function(){return this._router.currentRoute.name}},{key:"query",get:function(){return this._router.currentRoute.query||{}}},{key:"params",get:function(){return this._router.currentRoute.params||{}}},{key:"goTo",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this._router.push({path:t,replace:e})}},{key:"goToRoute",value:function(t,e,n,r){return this._router.push({name:t,query:n,params:e,replace:r})}}],n&&uu(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}();function hu(t){return hu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},hu(t)}function fu(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,vu(r.key),r)}}function mu(t,e,n){return(e=vu(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function vu(t){var e=function(t,e){if("object"!==hu(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==hu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===hu(e)?e:String(e)}var gu=function(){function t(e,n){var r=n.el,o=n.open,i=n.close;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),mu(this,"_close",void 0),mu(this,"_el",void 0),mu(this,"_name",void 0),mu(this,"_open",void 0),this._name=e,this._el=r,this._open=o,this._close=i,"function"!=typeof this._open&&(this._open=function(){}),"function"!=typeof this._close&&(this._close=function(){})}var e,n;return e=t,(n=[{key:"name",get:function(){return this._name}},{key:"el",get:function(){return this._el}},{key:"open",get:function(){return this._open}},{key:"close",get:function(){return this._close}}])&&fu(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}(),Au=r(25108);function yu(t){return yu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},yu(t)}function bu(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Cu(r.key),r)}}function Cu(t){var e=function(t,e){if("object"!==yu(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==yu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===yu(e)?e:String(e)}var wu,ku,xu=function(){function t(){var e,n,r;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,r=void 0,(n=Cu(n="_settings"))in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,this._settings=[],Au.debug("OCA.Files.Settings initialized")}var e,n;return e=t,n=[{key:"register",value:function(t){return this._settings.filter((function(e){return e.name===t.name})).length>0?(Au.error("A setting with the same name is already registered"),!1):(this._settings.push(t),!0)}},{key:"settings",get:function(){return this._settings}}],n&&bu(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}();window.OCA.Files=null!==(wu=window.OCA.Files)&&void 0!==wu?wu:{},window.OCP.Files=null!==(ku=window.OCP.Files)&&void 0!==ku?ku:{};var Su=new pu(lu);Object.assign(window.OCP.Files,{Router:Su}),p.default.use((function(t){t.mixin({beforeCreate(){const t=this.$options;if(t.pinia){const e=t.pinia;if(!this._provided){const t={};Object.defineProperty(this,"_provided",{get:()=>t,set:e=>Object.assign(t,e)})}this._provided[De]=e,this.$pinia||(this.$pinia=e),e._a=this,Me&&Ie(e),Re&&mn(e._a,e)}else!this.$pinia&&t.parent&&t.parent.$pinia&&(this.$pinia=t.parent.$pinia)},destroyed(){delete this._pStores}})}));var ju=function(){const t=(0,p.effectScope)(!0),e=t.run((()=>(0,p.ref)({})));let n=[],r=[];const o=(0,p.markRaw)({install(t){Ie(o),_e||(o._a=t,t.provide(De,o),t.config.globalProperties.$pinia=o,Re&&mn(t,o),r.forEach((t=>n.push(t))),r=[])},use(t){return this._a||_e?n.push(t):r.push(t),this},_p:n,_a:null,_e:t,_s:new Map,state:e});return Re&&"undefined"!=typeof Proxy&&o.use(yn),o}(),_u=new sa;Object.assign(window.OCP.Files,{Navigation:_u}),p.default.prototype.$navigation=_u;var Eu=new xu;Object.assign(window.OCA.Files,{Settings:Eu}),Object.assign(window.OCA.Files.Settings,{Setting:gu}),new(p.default.extend(ns))({name:"FilesNavigationRoot",propsData:{Navigation:_u},router:lu,pinia:ju}).$mount("#app-navigation-files"),new(p.default.extend(ea))({name:"FilesListRoot",router:lu,pinia:ju}).$mount("#app-content-vue"),function(){var t=(0,a.j)("files","favoriteFolders",[]),e=t.map((function(t,e){return ws(t,e)})),n=window.OCP.Files.Navigation;n.register({id:"favorites",name:(0,s.Iu)("files","Favorites"),caption:(0,s.Iu)("files","List of favorites files and folders."),emptyTitle:(0,s.Iu)("files","No favorites yet"),emptyCaption:(0,s.Iu)("files","Files and folders you mark as favorite will show up here"),icon:Jt,order:5,columns:[],getContents:Cs}),e.forEach((function(t){return n.register(t)})),(0,ut.Ld)("files:favorites:added",(function(t){var e;t.type===yt.Folder&&(null!==t.path&&null!==(e=t.root)&&void 0!==e&&e.startsWith("/files")?o(t.path):_t.error("Favorite folder is not within user files root",{node:t}))})),(0,ut.Ld)("files:favorites:removed",(function(t){var e;t.type===yt.Folder&&(null!==t.path&&null!==(e=t.root)&&void 0!==e&&e.startsWith("/files")?i(t.path):_t.error("Favorite folder is not within user files root",{node:t}))}));var r=function(){t.sort((function(t,e){return t.localeCompare(e,(0,s.G3)(),{ignorePunctuation:!0})})),t.forEach((function(t,n){var r=e.find((function(e){return e.id===ks(t)}));r&&(r.order=n)}))},o=function(o){var i=ws(o);t.find((function(t){return t===o}))||(t.push(o),e.push(i),r(),n.register(i))},i=function(o){var i=ks(o),a=t.findIndex((function(t){return t===o}));-1!==a&&(t.splice(a,1),e.splice(a,1),n.remove(i),r())}}(),window.OCP.Files.Navigation.register({id:"files",name:(0,s.Iu)("files","All files"),caption:(0,s.Iu)("files","List of your files and folders."),icon:ie,order:0,getContents:Us}),window.OCP.Files.Navigation.register({id:"recent",name:(0,s.Iu)("files","Recent"),caption:(0,s.Iu)("files","List of recently modified files and folders."),emptyTitle:(0,s.Iu)("files","No recently modified files"),emptyCaption:(0,s.Iu)("files","Files and folders you recently modified will show up here."),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-history" viewBox="0 0 24 24"><path d="M13.5,8H12V13L16.28,15.54L17,14.33L13.5,12.25V8M13,3A9,9 0 0,0 4,12H1L4.96,16.03L9,12H6A7,7 0 0,1 13,5A7,7 0 0,1 20,12A7,7 0 0,1 13,19C11.07,19 9.32,18.21 8.06,16.94L6.64,18.36C8.27,20 10.5,21 13,21A9,9 0 0,0 22,12A9,9 0 0,0 13,3" /></svg>',order:2,defaultSortKey:"mtime",getContents:Ls}),"serviceWorker"in navigator?window.addEventListener("load",Hs(Zs().mark((function t(){var e,n;return Zs().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,e=(0,l.generateUrl)("/apps/files/preview-service-worker.js",{},{noRewrite:!0}),t.next=4,navigator.serviceWorker.register(e,{scope:"/"});case 4:n=t.sent,_t.debug("SW registered: ",{registration:n}),t.next=11;break;case 8:t.prev=8,t.t0=t.catch(0),_t.error("SW registration failed: ",{error:t.t0});case 11:case"end":return t.stop()}}),t,null,[[0,8]])})))):_t.debug("Service Worker is not enabled on this browser.")},3443:function(t,e,n){var r,o,i=n(25108);function a(t){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},a(t)}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self&&self,r=function(t){"use strict";function e(t,n){return e=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},e(t,n)}function n(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,o=r(t);if(e){var i=r(this).constructor;n=Reflect.construct(o,arguments,i)}else n=o.apply(this,arguments);return function(t,e){if(e&&("object"===a(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(this,n)}}function r(t){return r=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},r(t)}function o(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return s(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?s(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){l=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw i}}}}function s(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function l(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function c(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function u(t,e,n){return e&&c(t.prototype,e),n&&c(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function d(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function p(t,e,n){(function(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")})(t,e),e.set(t,n)}function h(t,e){return function(t,e){return e.get?e.get.call(t):e.value}(t,m(t,e,"get"))}function f(t,e,n){return function(t,e,n){if(e.set)e.set.call(t,n);else{if(!e.writable)throw new TypeError("attempted to set read only private field");e.value=n}}(t,m(t,e,"set"),n),n}function m(t,e,n){if(!e.has(t))throw new TypeError("attempted to "+n+" private field on non-instance");return e.get(t)}Object.defineProperty(t,"__esModule",{value:!0}),t.CancelablePromise=void 0,t.cancelable=w,t.default=void 0,t.isCancelablePromise=k;var v="undefined"!=typeof Symbol?Symbol.toStringTag:"@@toStringTag",g=new WeakMap,A=new WeakMap,y=function(){function t(e){var n=e.executor,r=void 0===n?function(){}:n,o=e.internals,i=void 0===o?{isCanceled:!1,onCancelList:[]}:o,a=e.promise,s=void 0===a?new Promise((function(t,e){return r(t,e,(function(t){i.onCancelList.push(t)}))})):a;l(this,t),p(this,g,{writable:!0,value:void 0}),p(this,A,{writable:!0,value:void 0}),d(this,v,"CancelablePromise"),this.cancel=this.cancel.bind(this),f(this,g,i),f(this,A,s||new Promise((function(t,e){return r(t,e,(function(t){i.onCancelList.push(t)}))})))}return u(t,[{key:"then",value:function(t,e){return S(h(this,A).then(x(t,h(this,g)),x(e,h(this,g))),h(this,g))}},{key:"catch",value:function(t){return S(h(this,A).catch(x(t,h(this,g))),h(this,g))}},{key:"finally",value:function(t,e){var n=this;return e&&h(this,g).onCancelList.push(t),S(h(this,A).finally(x((function(){if(t)return e&&(h(n,g).onCancelList=h(n,g).onCancelList.filter((function(e){return e!==t}))),t()}),h(this,g))),h(this,g))}},{key:"cancel",value:function(){h(this,g).isCanceled=!0;var t=h(this,g).onCancelList;h(this,g).onCancelList=[];var e,n=o(t);try{for(n.s();!(e=n.n()).done;){var r=e.value;if("function"==typeof r)try{r()}catch(t){i.error(t)}}}catch(t){n.e(t)}finally{n.f()}}},{key:"isCanceled",value:function(){return!0===h(this,g).isCanceled}}]),t}(),b=function(t){!function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),n&&e(t,n)}(o,t);var r=n(o);function o(t){return l(this,o),r.call(this,{executor:t})}return u(o)}(y);t.CancelablePromise=b,d(b,"all",(function(t){return j(t,Promise.all(t))})),d(b,"allSettled",(function(t){return j(t,Promise.allSettled(t))})),d(b,"any",(function(t){return j(t,Promise.any(t))})),d(b,"race",(function(t){return j(t,Promise.race(t))})),d(b,"resolve",(function(t){return w(Promise.resolve(t))})),d(b,"reject",(function(t){return w(Promise.reject(t))})),d(b,"isCancelable",k);var C=b;function w(t){return S(t,{isCanceled:!1,onCancelList:[]})}function k(t){return t instanceof b||t instanceof y}function x(t,e){if(t)return function(n){if(!e.isCanceled){var r=t(n);return k(r)&&e.onCancelList.push(r.cancel),r}return n}}function S(t,e){return new y({internals:e,promise:t})}function j(t,e){var n={isCanceled:!1,onCancelList:[]};return n.onCancelList.push((function(){var e,n=o(t);try{for(n.s();!(e=n.n()).done;){var r=e.value;k(r)&&r.cancel()}}catch(t){n.e(t)}finally{n.f()}})),new y({internals:n,promise:e})}t.default=C},void 0===(o=r.apply(e,[e]))||(t.exports=o)},39959:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".breadcrumb[data-v-68b3b20b]{flex:1 1 100% !important;width:100%}.breadcrumb[data-v-68b3b20b] a{cursor:pointer !important}","",{version:3,sources:["webpack://./apps/files/src/components/BreadCrumbs.vue"],names:[],mappings:"AACA,6BAEC,wBAAA,CACA,UAAA,CAEA,+BACC,yBAAA",sourcesContent:["\n.breadcrumb {\n\t// Take as much space as possible\n\tflex: 1 1 100% !important;\n\twidth: 100%;\n\n\t::v-deep a {\n\t\tcursor: pointer !important;\n\t}\n}\n\n"],sourceRoot:""}]),e.Z=a},61959:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".custom-svg-icon[data-v-93e9b2f4]{display:flex;align-items:center;align-self:center;justify-content:center;justify-self:center;width:44px;height:44px;opacity:1}.custom-svg-icon[data-v-93e9b2f4] svg{height:22px;width:22px;fill:currentColor}","",{version:3,sources:["webpack://./apps/files/src/components/CustomSvgIconRender.vue"],names:[],mappings:"AACA,kCACC,YAAA,CACA,kBAAA,CACA,iBAAA,CACA,sBAAA,CACA,mBAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CAEA,sCAGC,WAAA,CACA,UAAA,CACA,iBAAA",sourcesContent:["\n.custom-svg-icon {\n\tdisplay: flex;\n\talign-items: center;\n\talign-self: center;\n\tjustify-content: center;\n\tjustify-self: center;\n\twidth: 44px;\n\theight: 44px;\n\topacity: 1;\n\n\t::v-deep svg {\n\t\t// mdi icons have a size of 24px\n\t\t// 22px results in roughly 16px inner size\n\t\theight: 22px;\n\t\twidth: 22px;\n\t\tfill: currentColor;\n\t}\n}\n\n"],sourceRoot:""}]),e.Z=a},31547:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".favorite-marker-icon[data-v-324501a3]{color:#a08b00;width:fit-content;height:fit-content}.favorite-marker-icon[data-v-324501a3] svg{width:26px;height:26px}.favorite-marker-icon[data-v-324501a3] svg path{stroke:var(--color-main-background);stroke-width:8px;stroke-linejoin:round;paint-order:stroke}","",{version:3,sources:["webpack://./apps/files/src/components/FavoriteIcon.vue"],names:[],mappings:"AACA,uCACC,aAAA,CACA,iBAAA,CACA,kBAAA,CAGC,4CAEC,UAAA,CACA,WAAA,CAGA,iDACC,mCAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA",sourcesContent:["\n.favorite-marker-icon {\n\tcolor: #a08b00;\n\twidth: fit-content;\n\theight: fit-content;\n\n\t:deep() {\n\t\tsvg {\n\t\t\t// We added a stroke for a11y so we must increase the size to include the stroke\n\t\t\twidth: 26px;\n\t\t\theight: 26px;\n\n\t\t\t// Sow a border around the icon for better contrast\n\t\t\tpath {\n\t\t\t\tstroke: var(--color-main-background);\n\t\t\t\tstroke-width: 8px;\n\t\t\t\tstroke-linejoin: round;\n\t\t\t\tpaint-order: stroke;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},25649:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,"tr[data-v-01747ff7]:hover,tr[data-v-01747ff7]:focus,tr[data-v-01747ff7]:visible{background-color:var(--color-background-dark)}.files-list__row-icon-preview[data-v-01747ff7]:not([style*=background]){background:var(--color-loading-dark)}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry.vue"],names:[],mappings:"AAGC,gFAGC,6CAAA,CAKF,wEACI,oCAAA",sourcesContent:["\n/* Hover effect on tbody lines only */\ntr {\n\t&:hover,\n\t&:focus,\n\t&:visible {\n\t\tbackground-color: var(--color-background-dark);\n\t}\n}\n\n/* Preview not loaded animation effect */\n.files-list__row-icon-preview:not([style*='background']) {\n background: var(--color-loading-dark);\n\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\n}\n"],sourceRoot:""}]),e.Z=a},20771:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,"tr[data-v-5d5c2897]{padding-bottom:300px;border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}td[data-v-5d5c2897]{user-select:none;color:var(--color-text-maxcontrast) !important}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableFooter.vue"],names:[],mappings:"AAEA,oBACC,oBAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAGD,oBACC,gBAAA,CAEA,8CAAA",sourcesContent:["\n// Scoped row\ntr {\n\tpadding-bottom: 300px;\n\tborder-top: 1px solid var(--color-border);\n\t// Prevent hover effect on the whole row\n\tbackground-color: transparent !important;\n\tborder-bottom: none !important;\n}\n\ntd {\n\tuser-select: none;\n\t// Make sure the cell colors don't apply to column headers\n\tcolor: var(--color-text-maxcontrast) !important;\n}\n\n"],sourceRoot:""}]),e.Z=a},41049:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".files-list__column[data-v-50439046]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-50439046]{cursor:pointer}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeader.vue"],names:[],mappings:"AACA,qCACC,gBAAA,CAEA,8CAAA,CAEA,+CACC,cAAA",sourcesContent:["\n.files-list__column {\n\tuser-select: none;\n\t// Make sure the cell colors don't apply to column headers\n\tcolor: var(--color-text-maxcontrast) !important;\n\n\t&--sortable {\n\t\tcursor: pointer;\n\t}\n}\n\n"],sourceRoot:""}]),e.Z=a},76215:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".files-list__row-actions-batch[data-v-1e45e85a]{flex:1 1 100% !important}.files-list__row-actions-batch[data-v-1e45e85a] .button-vue__wrapper{width:100%}.files-list__row-actions-batch[data-v-1e45e85a] .button-vue__wrapper span.button-vue__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderActions.vue"],names:[],mappings:"AACA,gDACC,wBAAA,CAGA,qEACC,UAAA,CACA,2FACC,eAAA,CACA,sBAAA,CACA,kBAAA",sourcesContent:["\n.files-list__row-actions-batch {\n\tflex: 1 1 100% !important;\n\n\t// Remove when https://github.com/nextcloud/nextcloud-vue/pull/3936 is merged\n\t::v-deep .button-vue__wrapper {\n\t\twidth: 100%;\n\t\tspan.button-vue__text {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},97781:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".files-list__column-sort-button{margin:0 calc(var(--cell-margin)*-1);padding:0 4px 0 16px !important}.files-list__column-sort-button .button-vue__wrapper{flex-direction:row-reverse;width:100%}.files-list__column-sort-button .button-vue__icon{transition-timing-function:linear;transition-duration:.1s;transition-property:opacity;opacity:0}.files-list__column-sort-button .button-vue__text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list__column-sort-button--active .button-vue__icon,.files-list__column-sort-button:hover .button-vue__icon,.files-list__column-sort-button:focus .button-vue__icon,.files-list__column-sort-button:active .button-vue__icon{opacity:1 !important}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderButton.vue"],names:[],mappings:"AACA,gCAEC,oCAAA,CAEA,+BAAA,CAGA,qDACC,0BAAA,CAGA,UAAA,CAGD,kDACC,iCAAA,CACA,uBAAA,CACA,2BAAA,CACA,SAAA,CAID,kDACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAOA,mOACC,oBAAA",sourcesContent:["\n.files-list__column-sort-button {\n\t// Compensate for cells margin\n\tmargin: 0 calc(var(--cell-margin) * -1);\n\t// Reverse padding\n\tpadding: 0 4px 0 16px !important;\n\n\t// Icon after text\n\t.button-vue__wrapper {\n\t\tflex-direction: row-reverse;\n\t\t// Take max inner width for text overflow ellipsis\n\t\t// Remove when https://github.com/nextcloud/nextcloud-vue/pull/3936 is merged\n\t\twidth: 100%;\n\t}\n\n\t.button-vue__icon {\n\t\ttransition-timing-function: linear;\n\t\ttransition-duration: .1s;\n\t\ttransition-property: opacity;\n\t\topacity: 0;\n\t}\n\n\t// Remove when https://github.com/nextcloud/nextcloud-vue/pull/3936 is merged\n\t.button-vue__text {\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n\n\t&--active,\n\t&:hover,\n\t&:focus,\n\t&:active {\n\t\t.button-vue__icon {\n\t\t\topacity: 1 !important;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},36756:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".files-list[data-v-750beda0]{--row-height: 55px;--cell-margin: 14px;--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);--checkbox-size: 24px;--clickable-area: 44px;--icon-preview-size: 32px;display:block;overflow:auto;height:100%}.files-list[data-v-750beda0] tbody{display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-750beda0] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-750beda0] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-750beda0] .files-list__thead,.files-list[data-v-750beda0] .files-list__tfoot{display:flex;width:100%;background-color:var(--color-main-background)}.files-list[data-v-750beda0] tr{position:relative;display:flex;align-items:center;width:100%;user-select:none;border-bottom:1px solid var(--color-border);user-select:none}.files-list[data-v-750beda0] td,.files-list[data-v-750beda0] th{display:flex;align-items:center;flex:0 0 auto;justify-content:left;width:var(--row-height);height:var(--row-height);margin:0;padding:0;color:var(--color-text-maxcontrast);border:none}.files-list[data-v-750beda0] td span,.files-list[data-v-750beda0] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-750beda0] .files-list__row--failed{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1;background:var(--color-error)}.files-list[data-v-750beda0] .files-list__row-checkbox{justify-content:center}.files-list[data-v-750beda0] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-750beda0] .files-list__row-checkbox .checkbox-radio-switch label.checkbox-radio-switch__label{width:var(--clickable-area);height:var(--clickable-area);margin:0;padding:calc((var(--clickable-area) - var(--checkbox-size))/2)}.files-list[data-v-750beda0] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-750beda0] .files-list__row:hover,.files-list[data-v-750beda0] .files-list__row:focus,.files-list[data-v-750beda0] .files-list__row:active,.files-list[data-v-750beda0] .files-list__row--active{background-color:var(--color-background-dark)}.files-list[data-v-750beda0] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-750beda0] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-750beda0] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-750beda0] .files-list__row--active .favorite-marker-icon svg path{stroke:var(--color-background-dark)}.files-list[data-v-750beda0] .files-list__row-icon{position:relative;display:flex;overflow:visible;align-items:center;flex:0 0 var(--icon-preview-size);justify-content:center;width:var(--icon-preview-size);height:100%;margin-right:var(--checkbox-padding);color:var(--color-primary-element)}.files-list[data-v-750beda0] .files-list__row-icon *{cursor:pointer}.files-list[data-v-750beda0] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-750beda0] .files-list__row-icon>span:not(.files-list__row-icon-favorite) svg{width:var(--icon-preview-size);height:var(--icon-preview-size)}.files-list[data-v-750beda0] .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);background-repeat:no-repeat;background-position:center;background-size:contain}.files-list[data-v-750beda0] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-750beda0] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-750beda0] .files-list__row-name a{display:flex;align-items:center;width:100%;height:100%;min-width:0}.files-list[data-v-750beda0] .files-list__row-name a:focus-visible{outline:none}.files-list[data-v-750beda0] .files-list__row-name a:focus .files-list__row-name-text,.files-list[data-v-750beda0] .files-list__row-name a:focus-visible .files-list__row-name-text{outline:2px solid var(--color-main-text) !important;border-radius:20px}.files-list[data-v-750beda0] .files-list__row-name .files-list__row-name-text{color:var(--color-main-text);padding:5px 10px;margin-left:-10px;display:inline-flex}.files-list[data-v-750beda0] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast)}.files-list[data-v-750beda0] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-750beda0] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-750beda0] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-750beda0] .files-list__row-actions{width:auto}.files-list[data-v-750beda0] .files-list__row-actions~td,.files-list[data-v-750beda0] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-750beda0] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-750beda0] .files-list__row-actions button:not(:hover,:focus,:active) .button-vue__wrapper{color:var(--color-text-maxcontrast)}.files-list[data-v-750beda0] .files-list__row-mtime,.files-list[data-v-750beda0] .files-list__row-size{justify-content:flex-end;width:calc(var(--row-height)*1.5);color:var(--color-main-text)}.files-list[data-v-750beda0] .files-list__row-mtime .files-list__column-sort-button,.files-list[data-v-750beda0] .files-list__row-size .files-list__column-sort-button{padding:0 16px 0 4px !important}.files-list[data-v-750beda0] .files-list__row-mtime .files-list__column-sort-button .button-vue__wrapper,.files-list[data-v-750beda0] .files-list__row-size .files-list__column-sort-button .button-vue__wrapper{flex-direction:row}.files-list[data-v-750beda0] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-750beda0] .files-list__row-column-custom{width:calc(var(--row-height)*2)}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListVirtual.vue"],names:[],mappings:"AACA,6BACC,kBAAA,CACA,mBAAA,CAEA,wEAAA,CACA,qBAAA,CACA,sBAAA,CACA,yBAAA,CAEA,aAAA,CACA,aAAA,CACA,WAAA,CAIC,mCACC,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAID,iDACC,YAAA,CACA,qBAAA,CAID,gDAEC,eAAA,CACA,UAAA,CACA,KAAA,CAGD,gGAEC,YAAA,CACA,UAAA,CACA,6CAAA,CAID,gCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,gBAAA,CACA,2CAAA,CACA,gBAAA,CAGD,gEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,0EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,sDACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAGD,uDACC,sBAAA,CAEA,8EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,iHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,2GACC,mBAAA,CAMF,mNACC,6CAAA,CAEA,+UACC,mCAAA,CAMH,mDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAGA,qDACC,cAAA,CAGD,wDACC,0BAAA,CAEA,gGACC,8BAAA,CACA,+BAAA,CAIF,2DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CACA,2BAAA,CAEA,0BAAA,CACA,uBAAA,CAGD,4DACC,iBAAA,CACA,OAAA,CACA,WAAA,CAKF,mDAEC,eAAA,CAEA,aAAA,CAEA,qDACC,YAAA,CACA,kBAAA,CAEA,UAAA,CACA,WAAA,CAEA,WAAA,CAGA,mEACC,YAAA,CAID,oLAEC,mDAAA,CACA,kBAAA,CAIF,8EACC,4BAAA,CAEA,gBAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,6EACC,mCAAA,CAKF,qDACC,UAAA,CACA,eAAA,CACA,2DACC,UAAA,CAEA,gBAAA,CACA,eAAA,CACA,gBAAA,CAEA,mEAEC,+BAAA,CACA,SAAA,CAKH,sDACC,UAAA,CAGA,kHAEC,2BAAA,CAIA,+EAEC,kBAAA,CAED,6GAEC,mCAAA,CAKH,uGAGC,wBAAA,CACA,iCAAA,CAEA,4BAAA,CAGA,uKACC,+BAAA,CACA,iNACC,kBAAA,CAKH,oDACC,+BAAA,CAGD,4DACC,+BAAA",sourcesContent:["\n.files-list {\n\t--row-height: 55px;\n\t--cell-margin: 14px;\n\n\t--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\n\t--checkbox-size: 24px;\n\t--clickable-area: 44px;\n\t--icon-preview-size: 32px;\n\n\tdisplay: block;\n\toverflow: auto;\n\theight: 100%;\n\n\t&::v-deep {\n\t\t// Table head, body and footer\n\t\ttbody {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\twidth: 100%;\n\t\t\t// Necessary for virtual scrolling absolute\n\t\t\tposition: relative;\n\t\t}\n\n\t\t// Before table and thead\n\t\t.files-list__before {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\n\t\t// Table header\n\t\t.files-list__thead {\n\t\t\t// Pinned on top when scrolling\n\t\t\tposition: sticky;\n\t\t\tz-index: 10;\n\t\t\ttop: 0;\n\t\t}\n\n\t\t.files-list__thead,\n\t\t.files-list__tfoot {\n\t\t\tdisplay: flex;\n\t\t\twidth: 100%;\n\t\t\tbackground-color: var(--color-main-background);\n\n\t\t}\n\n\t\ttr {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\twidth: 100%;\n\t\t\tuser-select: none;\n\t\t\tborder-bottom: 1px solid var(--color-border);\n\t\t\tuser-select: none;\n\t\t}\n\n\t\ttd, th {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tflex: 0 0 auto;\n\t\t\tjustify-content: left;\n\t\t\twidth: var(--row-height);\n\t\t\theight: var(--row-height);\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\tborder: none;\n\n\t\t\t// Columns should try to add any text\n\t\t\t// node wrapped in a span. That should help\n\t\t\t// with the ellipsis on overflow.\n\t\t\tspan {\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row--failed {\n\t\t\tposition: absolute;\n\t\t\tdisplay: block;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tright: 0;\n\t\t\tbottom: 0;\n\t\t\topacity: .1;\n\t\t\tz-index: -1;\n\t\t\tbackground: var(--color-error);\n\t\t}\n\n\t\t.files-list__row-checkbox {\n\t\t\tjustify-content: center;\n\n\t\t\t.checkbox-radio-switch {\n\t\t\t\tdisplay: flex;\n\t\t\t\tjustify-content: center;\n\n\t\t\t\t--icon-size: var(--checkbox-size);\n\n\t\t\t\tlabel.checkbox-radio-switch__label {\n\t\t\t\t\twidth: var(--clickable-area);\n\t\t\t\t\theight: var(--clickable-area);\n\t\t\t\t\tmargin: 0;\n\t\t\t\t\tpadding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\n\t\t\t\t}\n\n\t\t\t\t.checkbox-radio-switch__icon {\n\t\t\t\t\tmargin: 0 !important;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row{\n\t\t\t&:hover, &:focus, &:active, &--active {\n\t\t\t\tbackground-color: var(--color-background-dark);\n\t\t\t\t// Hover state of the row should also change the favorite markers background\n\t\t\t\t.favorite-marker-icon svg path {\n\t\t\t\t\tstroke: var(--color-background-dark);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Entry preview or mime icon\n\t\t.files-list__row-icon {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\toverflow: visible;\n\t\t\talign-items: center;\n\t\t\t// No shrinking or growing allowed\n\t\t\tflex: 0 0 var(--icon-preview-size);\n\t\t\tjustify-content: center;\n\t\t\twidth: var(--icon-preview-size);\n\t\t\theight: 100%;\n\t\t\t// Show same padding as the checkbox right padding for visual balance\n\t\t\tmargin-right: var(--checkbox-padding);\n\t\t\tcolor: var(--color-primary-element);\n\n\t\t\t// Icon is also clickable\n\t\t\t* {\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t& > span {\n\t\t\t\tjustify-content: flex-start;\n\n\t\t\t\t&:not(.files-list__row-icon-favorite) svg {\n\t\t\t\t\twidth: var(--icon-preview-size);\n\t\t\t\t\theight: var(--icon-preview-size);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&-preview {\n\t\t\t\toverflow: hidden;\n\t\t\t\twidth: var(--icon-preview-size);\n\t\t\t\theight: var(--icon-preview-size);\n\t\t\t\tborder-radius: var(--border-radius);\n\t\t\t\tbackground-repeat: no-repeat;\n\t\t\t\t// Center and contain the preview\n\t\t\t\tbackground-position: center;\n\t\t\t\tbackground-size: contain;\n\t\t\t}\n\n\t\t\t&-favorite {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0px;\n\t\t\t\tright: -10px;\n\t\t\t}\n\t\t}\n\n\t\t// Entry link\n\t\t.files-list__row-name {\n\t\t\t// Prevent link from overflowing\n\t\t\toverflow: hidden;\n\t\t\t// Take as much space as possible\n\t\t\tflex: 1 1 auto;\n\n\t\t\ta {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\t// Fill cell height and width\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\t// Necessary for flex grow to work\n\t\t\t\tmin-width: 0;\n\n\t\t\t\t// Already added to the inner text, see rule below\n\t\t\t\t&:focus-visible {\n\t\t\t\t\toutline: none;\n\t\t\t\t}\n\n\t\t\t\t// Keyboard indicator a11y\n\t\t\t\t&:focus .files-list__row-name-text,\n\t\t\t\t&:focus-visible .files-list__row-name-text {\n\t\t\t\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t\t\t\tborder-radius: 20px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.files-list__row-name-text {\n\t\t\t\tcolor: var(--color-main-text);\n\t\t\t\t// Make some space for the outline\n\t\t\t\tpadding: 5px 10px;\n\t\t\t\tmargin-left: -10px;\n\t\t\t\t// Align two name and ext\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\n\t\t\t.files-list__row-name-ext {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\t\t}\n\n\t\t// Rename form\n\t\t.files-list__row-rename {\n\t\t\twidth: 100%;\n\t\t\tmax-width: 600px;\n\t\t\tinput {\n\t\t\t\twidth: 100%;\n\t\t\t\t// Align with text, 0 - padding - border\n\t\t\t\tmargin-left: -8px;\n\t\t\t\tpadding: 2px 6px;\n\t\t\t\tborder-width: 2px;\n\n\t\t\t\t&:invalid {\n\t\t\t\t\t// Show red border on invalid input\n\t\t\t\t\tborder-color: var(--color-error);\n\t\t\t\t\tcolor: red;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-actions {\n\t\t\twidth: auto;\n\n\t\t\t// Add margin to all cells after the actions\n\t\t\t& ~ td,\n\t\t\t& ~ th {\n\t\t\t\tmargin: 0 var(--cell-margin);\n\t\t\t}\n\n\t\t\tbutton {\n\t\t\t\t.button-vue__text {\n\t\t\t\t\t// Remove bold from default button styling\n\t\t\t\t\tfont-weight: normal;\n\t\t\t\t}\n\t\t\t\t&:not(:hover, :focus, :active) .button-vue__wrapper {\n\t\t\t\t\t// Also apply color-text-maxcontrast to non-active button\n\t\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-mtime,\n\t\t.files-list__row-size {\n\t\t\t// Right align text\n\t\t\tjustify-content: flex-end;\n\t\t\twidth: calc(var(--row-height) * 1.5);\n\t\t\t// opacity varies with the size\n\t\t\tcolor: var(--color-main-text);\n\n\t\t\t// Icon is before text since size is right aligned\n\t\t\t.files-list__column-sort-button {\n\t\t\t\tpadding: 0 16px 0 4px !important;\n\t\t\t\t.button-vue__wrapper {\n\t\t\t\t\tflex-direction: row;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-mtime {\n\t\t\twidth: calc(var(--row-height) * 2);\n\t\t}\n\n\t\t.files-list__row-column-custom {\n\t\t\twidth: calc(var(--row-height) * 2);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},43704:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".app-navigation-entry__settings-quota--not-unlimited[data-v-28bf4b40] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-28bf4b40]{position:absolute;bottom:12px;margin-left:44px;width:calc(100% - 44px - 22px)}","",{version:3,sources:["webpack://./apps/files/src/components/NavigationQuota.vue"],names:[],mappings:"AAIC,kGACC,eAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,8BAAA",sourcesContent:["\n// User storage stats display\n.app-navigation-entry__settings-quota {\n\t// Align title with progress and icon\n\t&--not-unlimited::v-deep .app-navigation-entry__name {\n\t\tmargin-top: -6px;\n\t}\n\n\tprogress {\n\t\tposition: absolute;\n\t\tbottom: 12px;\n\t\tmargin-left: 44px;\n\t\twidth: calc(100% - 44px - 22px);\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},67679:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".template-picker__item[data-v-5b09ec60]{display:flex}.template-picker__label[data-v-5b09ec60]{display:flex;align-items:center;flex:1 1;flex-direction:column}.template-picker__label[data-v-5b09ec60],.template-picker__label *[data-v-5b09ec60]{cursor:pointer;user-select:none}.template-picker__label[data-v-5b09ec60]::before{display:none !important}.template-picker__preview[data-v-5b09ec60]{display:block;overflow:hidden;flex:1 1;width:var(--width);min-height:var(--height);max-height:var(--height);padding:0;border:var(--border) solid var(--color-border);border-radius:var(--border-radius-large)}input:checked+label>.template-picker__preview[data-v-5b09ec60]{border-color:var(--color-primary-element)}.template-picker__preview--failed[data-v-5b09ec60]{display:flex}.template-picker__image[data-v-5b09ec60]{max-width:100%;background-color:var(--color-main-background);object-fit:cover}.template-picker__preview--failed .template-picker__image[data-v-5b09ec60]{width:calc(var(--margin)*8);margin:auto;background-color:rgba(0,0,0,0) !important;object-fit:initial}.template-picker__title[data-v-5b09ec60]{overflow:hidden;max-width:calc(var(--width) + 4px);padding:var(--margin);white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./apps/files/src/components/TemplatePreview.vue"],names:[],mappings:"AAGC,wCACC,YAAA,CAGD,yCACC,YAAA,CAEA,kBAAA,CACA,QAAA,CACA,qBAAA,CAEA,oFACC,cAAA,CACA,gBAAA,CAGD,iDACC,uBAAA,CAIF,2CACC,aAAA,CACA,eAAA,CAEA,QAAA,CACA,kBAAA,CACA,wBAAA,CACA,wBAAA,CACA,SAAA,CACA,8CAAA,CACA,wCAAA,CAEA,+DACC,yCAAA,CAGD,mDAEC,YAAA,CAIF,yCACC,cAAA,CACA,6CAAA,CAEA,gBAAA,CAID,2EACC,2BAAA,CAEA,WAAA,CACA,yCAAA,CAEA,kBAAA,CAGD,yCACC,eAAA,CAEA,kCAAA,CACA,qBAAA,CACA,kBAAA,CACA,sBAAA",sourcesContent:["\n\n.template-picker {\n\t&__item {\n\t\tdisplay: flex;\n\t}\n\n\t&__label {\n\t\tdisplay: flex;\n\t\t// Align in the middle of the grid\n\t\talign-items: center;\n\t\tflex: 1 1;\n\t\tflex-direction: column;\n\n\t\t&, * {\n\t\t\tcursor: pointer;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&::before {\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n\n\t&__preview {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t\t// Stretch so all entries are the same width\n\t\tflex: 1 1;\n\t\twidth: var(--width);\n\t\tmin-height: var(--height);\n\t\tmax-height: var(--height);\n\t\tpadding: 0;\n\t\tborder: var(--border) solid var(--color-border);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\tinput:checked + label > & {\n\t\t\tborder-color: var(--color-primary-element);\n\t\t}\n\n\t\t&--failed {\n\t\t\t// Make sure to properly center fallback icon\n\t\t\tdisplay: flex;\n\t\t}\n\t}\n\n\t&__image {\n\t\tmax-width: 100%;\n\t\tbackground-color: var(--color-main-background);\n\n\t\tobject-fit: cover;\n\t}\n\n\t// Failed preview, fallback to mime icon\n\t&__preview--failed &__image {\n\t\twidth: calc(var(--margin) * 8);\n\t\t// Center mime icon\n\t\tmargin: auto;\n\t\tbackground-color: transparent !important;\n\n\t\tobject-fit: initial;\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\t// also count preview border\n\t\tmax-width: calc(var(--width) + 2*2px);\n\t\tpadding: var(--margin);\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n"],sourceRoot:""}]),e.Z=a},81208:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".app-content[data-v-f7abaea6]{display:flex;overflow:hidden;flex-direction:column;max-height:100%}.files-list__header[data-v-f7abaea6]{display:flex;align-content:center;flex:0 0;margin:4px 4px 4px 50px}.files-list__header>*[data-v-f7abaea6]{flex:0 0}.files-list__refresh-icon[data-v-f7abaea6]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-f7abaea6]{margin:auto}","",{version:3,sources:["webpack://./apps/files/src/views/FilesList.vue"],names:[],mappings:"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CAOA,qCACC,YAAA,CACA,oBAAA,CAEA,QAAA,CAEA,uBAAA,CACA,uCAGC,QAAA,CAGF,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAED,2CACC,WAAA",sourcesContent:["\n.app-content {\n\t// Virtual list needs to be full height and is scrollable\n\tdisplay: flex;\n\toverflow: hidden;\n\tflex-direction: column;\n\tmax-height: 100%;\n}\n\n$margin: 4px;\n$navigationToggleSize: 50px;\n\n.files-list {\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-content: center;\n\t\t// Do not grow or shrink (vertically)\n\t\tflex: 0 0;\n\t\t// Align with the navigation toggle icon\n\t\tmargin: $margin $margin $margin $navigationToggleSize;\n\t\t> * {\n\t\t\t// Do not grow or shrink (horizontally)\n\t\t\t// Only the breadcrumbs shrinks\n\t\t\tflex: 0 0;\n\t\t}\n\t}\n\t&__refresh-icon {\n\t\tflex: 0 0 44px;\n\t\twidth: 44px;\n\t\theight: 44px;\n\t}\n\t&__loading-icon {\n\t\tmargin: auto;\n\t}\n}\n\n"],sourceRoot:""}]),e.Z=a},37165:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".app-navigation[data-v-5800c908] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation>ul.app-navigation__list[data-v-5800c908]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-5800c908]{height:auto !important;overflow:hidden !important;padding-top:0 !important;flex:0 0 auto}","",{version:3,sources:["webpack://./apps/files/src/views/Navigation.vue"],names:[],mappings:"AAEA,4DACC,2BAAA,CACA,0BAAA,CAGD,yDAEC,gDAAA,CAGD,iDACC,sBAAA,CACA,0BAAA,CACA,wBAAA,CAEA,aAAA",sourcesContent:["\n// TODO: remove when https://github.com/nextcloud/nextcloud-vue/pull/3539 is in\n.app-navigation::v-deep .app-navigation-entry-icon {\n\tbackground-repeat: no-repeat;\n\tbackground-position: center;\n}\n\n.app-navigation > ul.app-navigation__list {\n\t// Use flex gap value for more elegant spacing\n\tpadding-bottom: var(--default-grid-baseline, 4px);\n}\n\n.app-navigation-entry__settings {\n\theight: auto !important;\n\toverflow: hidden !important;\n\tpadding-top: 0 !important;\n\t// Prevent shrinking or growing\n\tflex: 0 0 auto;\n}\n"],sourceRoot:""}]),e.Z=a},72277:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".setting-link[data-v-7aaa0c4e]:hover{text-decoration:underline}","",{version:3,sources:["webpack://./apps/files/src/views/Settings.vue"],names:[],mappings:"AACA,qCACC,yBAAA",sourcesContent:["\n.setting-link:hover {\n\ttext-decoration: underline;\n}\n"],sourceRoot:""}]),e.Z=a},54654:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,".templates-picker__form[data-v-d46f1dc6]{padding:calc(var(--margin)*2);padding-bottom:0}.templates-picker__form h2[data-v-d46f1dc6]{text-align:center;font-weight:bold;margin:var(--margin) 0 calc(var(--margin)*2)}.templates-picker__list[data-v-d46f1dc6]{display:grid;grid-gap:calc(var(--margin)*2);grid-auto-columns:1fr;max-width:calc(var(--fullwidth)*6);grid-template-columns:repeat(auto-fit, var(--fullwidth));grid-auto-rows:1fr;justify-content:center}.templates-picker__buttons[data-v-d46f1dc6]{display:flex;justify-content:end;padding:calc(var(--margin)*2) var(--margin);position:sticky;bottom:0;background-image:linear-gradient(0, var(--gradient-main-background))}.templates-picker__buttons button[data-v-d46f1dc6],.templates-picker__buttons input[type=submit][data-v-d46f1dc6]{height:44px}.templates-picker[data-v-d46f1dc6] .modal-container{position:relative}.templates-picker__loading[data-v-d46f1dc6]{position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;margin:0;background-color:var(--color-main-background-translucent)}","",{version:3,sources:["webpack://./apps/files/src/views/TemplatePicker.vue"],names:[],mappings:"AAEC,yCACC,6BAAA,CAEA,gBAAA,CAEA,4CACC,iBAAA,CACA,gBAAA,CACA,4CAAA,CAIF,yCACC,YAAA,CACA,8BAAA,CACA,qBAAA,CAEA,kCAAA,CACA,wDAAA,CAEA,kBAAA,CAEA,sBAAA,CAGD,4CACC,YAAA,CACA,mBAAA,CACA,2CAAA,CACA,eAAA,CACA,QAAA,CACA,oEAAA,CAEA,kHACC,WAAA,CAKF,oDACC,iBAAA,CAGD,4CACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,QAAA,CACA,yDAAA",sourcesContent:["\n.templates-picker {\n\t&__form {\n\t\tpadding: calc(var(--margin) * 2);\n\t\t// Will be handled by the buttons\n\t\tpadding-bottom: 0;\n\n\t\th2 {\n\t\t\ttext-align: center;\n\t\t\tfont-weight: bold;\n\t\t\tmargin: var(--margin) 0 calc(var(--margin) * 2);\n\t\t}\n\t}\n\n\t&__list {\n\t\tdisplay: grid;\n\t\tgrid-gap: calc(var(--margin) * 2);\n\t\tgrid-auto-columns: 1fr;\n\t\t// We want maximum 5 columns. Putting 6 as we don't count the grid gap. So it will always be lower than 6\n\t\tmax-width: calc(var(--fullwidth) * 6);\n\t\tgrid-template-columns: repeat(auto-fit, var(--fullwidth));\n\t\t// Make sure all rows are the same height\n\t\tgrid-auto-rows: 1fr;\n\t\t// Center the columns set\n\t\tjustify-content: center;\n\t}\n\n\t&__buttons {\n\t\tdisplay: flex;\n\t\tjustify-content: end;\n\t\tpadding: calc(var(--margin) * 2) var(--margin);\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tbackground-image: linear-gradient(0, var(--gradient-main-background));\n\n\t\tbutton, input[type='submit'] {\n\t\t\theight: 44px;\n\t\t}\n\t}\n\n\t// Make sure we're relative for the loading emptycontent on top\n\t::v-deep .modal-container {\n\t\tposition: relative;\n\t}\n\n\t&__loading {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tmargin: 0;\n\t\tbackground-color: var(--color-main-background-translucent);\n\t}\n}\n\n"],sourceRoot:""}]),e.Z=a},87526:function(t,e,n){"use strict";var r=n(87537),o=n.n(r),i=n(23645),a=n.n(i)()(o());a.push([t.id,"\n/* @keyframes preview-gradient-fade {\n 0% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n 100% {\n opacity: 1;\n }\n} */\n","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry.vue"],names:[],mappings:";AAs2BA;;;;;;;;;;GAUA",sourcesContent:["\x3c!--\n - @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n -\n --\x3e\n\n<template>\n\t<tr :class=\"{'files-list__row--visible': visible, 'files-list__row--active': isActive}\"\n\t\tdata-cy-files-list-row\n\t\t:data-cy-files-list-row-fileid=\"fileid\"\n\t\t:data-cy-files-list-row-name=\"source.basename\"\n\t\tclass=\"list__row\"\n\t\t@contextmenu=\"onRightClick\">\n\t\t\x3c!-- Failed indicator --\x3e\n\t\t<span v-if=\"source.attributes.failed\" class=\"files-list__row--failed\" />\n\n\t\t\x3c!-- Checkbox --\x3e\n\t\t<td class=\"files-list__row-checkbox\">\n\t\t\t<NcCheckboxRadioSwitch v-if=\"visible\"\n\t\t\t\t:aria-label=\"t('files', 'Select the row for {displayName}', { displayName })\"\n\t\t\t\t:checked=\"selectedFiles\"\n\t\t\t\t:value=\"fileid\"\n\t\t\t\tname=\"selectedFiles\"\n\t\t\t\t@update:checked=\"onSelectionChange\" />\n\t\t</td>\n\n\t\t\x3c!-- Link to file --\x3e\n\t\t<td class=\"files-list__row-name\" data-cy-files-list-row-name>\n\t\t\t\x3c!-- Icon or preview --\x3e\n\t\t\t<span class=\"files-list__row-icon\" @click=\"execDefaultAction\">\n\t\t\t\t<FolderIcon v-if=\"source.type === 'folder'\" />\n\n\t\t\t\t\x3c!-- Decorative image, should not be aria documented --\x3e\n\t\t\t\t<span v-else-if=\"previewUrl && !backgroundFailed\"\n\t\t\t\t\tref=\"previewImg\"\n\t\t\t\t\tclass=\"files-list__row-icon-preview\"\n\t\t\t\t\t:style=\"{ backgroundImage }\" />\n\n\t\t\t\t<FileIcon v-else />\n\n\t\t\t\t\x3c!-- Favorite icon --\x3e\n\t\t\t\t<span v-if=\"isFavorite\"\n\t\t\t\t\tclass=\"files-list__row-icon-favorite\"\n\t\t\t\t\t:aria-label=\"t('files', 'Favorite')\">\n\t\t\t\t\t<FavoriteIcon :aria-hidden=\"true\" />\n\t\t\t\t</span>\n\t\t\t</span>\n\n\t\t\t\x3c!-- Rename input --\x3e\n\t\t\t<form v-show=\"isRenaming\"\n\t\t\t\tv-on-click-outside=\"stopRenaming\"\n\t\t\t\t:aria-hidden=\"!isRenaming\"\n\t\t\t\t:aria-label=\"t('files', 'Rename file')\"\n\t\t\t\tclass=\"files-list__row-rename\"\n\t\t\t\t@submit.prevent.stop=\"onRename\">\n\t\t\t\t<NcTextField ref=\"renameInput\"\n\t\t\t\t\t:aria-label=\"t('files', 'File name')\"\n\t\t\t\t\t:autofocus=\"true\"\n\t\t\t\t\t:minlength=\"1\"\n\t\t\t\t\t:required=\"true\"\n\t\t\t\t\t:value.sync=\"newName\"\n\t\t\t\t\tenterkeyhint=\"done\"\n\t\t\t\t\t@keyup=\"checkInputValidity\"\n\t\t\t\t\t@keyup.esc=\"stopRenaming\" />\n\t\t\t</form>\n\n\t\t\t<a v-show=\"!isRenaming\"\n\t\t\t\tref=\"basename\"\n\t\t\t\t:aria-hidden=\"isRenaming\"\n\t\t\t\tclass=\"files-list__row-name-link\"\n\t\t\t\tdata-cy-files-list-row-name-link\n\t\t\t\tv-bind=\"linkTo\"\n\t\t\t\t@click=\"execDefaultAction\">\n\t\t\t\t\x3c!-- File name --\x3e\n\t\t\t\t<span class=\"files-list__row-name-text\">\n\t\t\t\t\t\x3c!-- Keep the displayName stuck to the extension to avoid whitespace rendering issues--\x3e\n\t\t\t\t\t<span class=\"files-list__row-name-\" v-text=\"displayName\" />\n\t\t\t\t\t<span class=\"files-list__row-name-ext\" v-text=\"extension\" />\n\t\t\t\t</span>\n\t\t\t</a>\n\t\t</td>\n\n\t\t\x3c!-- Actions --\x3e\n\t\t<td v-show=\"!isRenamingSmallScreen\"\n\t\t\t:class=\"`files-list__row-actions-${uniqueId}`\"\n\t\t\tclass=\"files-list__row-actions\"\n\t\t\tdata-cy-files-list-row-actions>\n\t\t\t\x3c!-- Render actions --\x3e\n\t\t\t<CustomElementRender v-for=\"action in enabledRenderActions\"\n\t\t\t\t:key=\"action.id\"\n\t\t\t\t:current-view=\"currentView\"\n\t\t\t\t:render=\"action.renderInline\"\n\t\t\t\t:source=\"source\" />\n\n\t\t\t\x3c!-- Menu actions --\x3e\n\t\t\t<NcActions v-if=\"visible\"\n\t\t\t\tref=\"actionsMenu\"\n\t\t\t\t:boundaries-element=\"getBoundariesElement()\"\n\t\t\t\t:container=\"getBoundariesElement()\"\n\t\t\t\t:disabled=\"source._loading\"\n\t\t\t\t:force-name=\"true\"\n\t\t\t\t:force-menu=\"enabledInlineActions.length === 0 /* forceMenu only if no inline actions */\"\n\t\t\t\t:inline=\"enabledInlineActions.length\"\n\t\t\t\t:open.sync=\"openedMenu\">\n\t\t\t\t<NcActionButton v-for=\"action in enabledMenuActions\"\n\t\t\t\t\t:key=\"action.id\"\n\t\t\t\t\t:class=\"'files-list__row-action-' + action.id\"\n\t\t\t\t\t:close-after-click=\"true\"\n\t\t\t\t\t:data-cy-files-list-row-action=\"action.id\"\n\t\t\t\t\t@click=\"onActionClick(action)\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcLoadingIcon v-if=\"loading === action.id\" :size=\"18\" />\n\t\t\t\t\t\t<CustomSvgIconRender v-else :svg=\"action.iconSvgInline([source], currentView)\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ action.displayName([source], currentView) }}\n\t\t\t\t</NcActionButton>\n\t\t\t</NcActions>\n\t\t</td>\n\n\t\t\x3c!-- Size --\x3e\n\t\t<td v-if=\"isSizeAvailable\"\n\t\t\t:style=\"{ opacity: sizeOpacity }\"\n\t\t\tclass=\"files-list__row-size\"\n\t\t\tdata-cy-files-list-row-size\n\t\t\t@click=\"openDetailsIfAvailable\">\n\t\t\t<span>{{ size }}</span>\n\t\t</td>\n\n\t\t\x3c!-- Mtime --\x3e\n\t\t<td v-if=\"isMtimeAvailable\"\n\t\t\tclass=\"files-list__row-mtime\"\n\t\t\tdata-cy-files-list-row-mtime\n\t\t\t@click=\"openDetailsIfAvailable\">\n\t\t\t<span>{{ mtime }}</span>\n\t\t</td>\n\n\t\t\x3c!-- View columns --\x3e\n\t\t<td v-for=\"column in columns\"\n\t\t\t:key=\"column.id\"\n\t\t\t:class=\"`files-list__row-${currentView?.id}-${column.id}`\"\n\t\t\tclass=\"files-list__row-column-custom\"\n\t\t\t:data-cy-files-list-row-column-custom=\"column.id\"\n\t\t\t@click=\"openDetailsIfAvailable\">\n\t\t\t<CustomElementRender v-if=\"visible\"\n\t\t\t\t:current-view=\"currentView\"\n\t\t\t\t:render=\"column.render\"\n\t\t\t\t:source=\"source\" />\n\t\t</td>\n\t</tr>\n</template>\n\n<script lang='ts'>\nimport { CancelablePromise } from 'cancelable-promise'\nimport { debounce } from 'debounce'\nimport { emit } from '@nextcloud/event-bus'\nimport { extname } from 'path'\nimport { formatFileSize, FileType, Permission } from '@nextcloud/files'\nimport { generateUrl } from '@nextcloud/router'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport { translate } from '@nextcloud/l10n'\nimport { vOnClickOutside } from '@vueuse/components'\nimport axios from '@nextcloud/axios'\nimport FileIcon from 'vue-material-design-icons/File.vue'\nimport FolderIcon from 'vue-material-design-icons/Folder.vue'\nimport moment from '@nextcloud/moment'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport NcActions from '@nextcloud/vue/dist/Components/NcActions.js'\nimport NcCheckboxRadioSwitch from '@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js'\nimport NcLoadingIcon from '@nextcloud/vue/dist/Components/NcLoadingIcon.js'\nimport NcTextField from '@nextcloud/vue/dist/Components/NcTextField.js'\nimport Vue from 'vue'\n\nimport { ACTION_DETAILS } from '../actions/sidebarAction.ts'\nimport { getFileActions, DefaultType } from '../services/FileAction.ts'\nimport { hashCode } from '../utils/hashUtils.ts'\nimport { isCachedPreview } from '../services/PreviewService.ts'\nimport { useActionsMenuStore } from '../store/actionsmenu.ts'\nimport { useFilesStore } from '../store/files.ts'\nimport { useKeyboardStore } from '../store/keyboard.ts'\nimport { useRenamingStore } from '../store/renaming.ts'\nimport { useSelectionStore } from '../store/selection.ts'\nimport { useUserConfigStore } from '../store/userconfig.ts'\nimport CustomElementRender from './CustomElementRender.vue'\nimport CustomSvgIconRender from './CustomSvgIconRender.vue'\nimport FavoriteIcon from './FavoriteIcon.vue'\nimport logger from '../logger.js'\n\n// The registered actions list\nconst actions = getFileActions()\n\nVue.directive('onClickOutside', vOnClickOutside)\n\nexport default Vue.extend({\n\tname: 'FileEntry',\n\n\tcomponents: {\n\t\tCustomElementRender,\n\t\tCustomSvgIconRender,\n\t\tFavoriteIcon,\n\t\tFileIcon,\n\t\tFolderIcon,\n\t\tNcActionButton,\n\t\tNcActions,\n\t\tNcCheckboxRadioSwitch,\n\t\tNcLoadingIcon,\n\t\tNcTextField,\n\t},\n\n\tprops: {\n\t\tvisible: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\tisMtimeAvailable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\tisSizeAvailable: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\tsource: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tindex: {\n\t\t\ttype: Number,\n\t\t\trequired: true,\n\t\t},\n\t\tnodes: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\tfilesListWidth: {\n\t\t\ttype: Number,\n\t\t\tdefault: 0,\n\t\t},\n\t},\n\n\tsetup() {\n\t\tconst actionsMenuStore = useActionsMenuStore()\n\t\tconst filesStore = useFilesStore()\n\t\tconst keyboardStore = useKeyboardStore()\n\t\tconst renamingStore = useRenamingStore()\n\t\tconst selectionStore = useSelectionStore()\n\t\tconst userConfigStore = useUserConfigStore()\n\t\treturn {\n\t\t\tactionsMenuStore,\n\t\t\tfilesStore,\n\t\t\tkeyboardStore,\n\t\t\trenamingStore,\n\t\t\tselectionStore,\n\t\t\tuserConfigStore,\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tbackgroundFailed: false,\n\t\t\tbackgroundImage: '',\n\t\t\tloading: '',\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tuserConfig() {\n\t\t\treturn this.userConfigStore.userConfig\n\t\t},\n\n\t\tcurrentView() {\n\t\t\treturn this.$navigation.active\n\t\t},\n\t\tcolumns() {\n\t\t\t// Hide columns if the list is too small\n\t\t\tif (this.filesListWidth < 512) {\n\t\t\t\treturn []\n\t\t\t}\n\t\t\treturn this.currentView?.columns || []\n\t\t},\n\n\t\tcurrentDir() {\n\t\t\t// Remove any trailing slash but leave root slash\n\t\t\treturn (this.$route?.query?.dir || '/').replace(/^(.+)\\/$/, '$1')\n\t\t},\n\t\tcurrentFileId() {\n\t\t\treturn this.$route.params.fileid || this.$route.query.fileid || null\n\t\t},\n\t\tfileid() {\n\t\t\treturn this.source?.fileid?.toString?.()\n\t\t},\n\n\t\textension() {\n\t\t\tif (this.source.attributes?.displayName) {\n\t\t\t\treturn extname(this.source.attributes.displayName)\n\t\t\t}\n\t\t\treturn this.source.extension || ''\n\t\t},\n\t\tdisplayName() {\n\t\t\tconst ext = this.extension\n\t\t\tconst name = (this.source.attributes.displayName\n\t\t\t\t|| this.source.basename)\n\n\t\t\t// Strip extension from name if defined\n\t\t\treturn !ext ? name : name.slice(0, 0 - ext.length)\n\t\t},\n\n\t\tsize() {\n\t\t\tconst size = parseInt(this.source.size, 10) || 0\n\t\t\tif (typeof size !== 'number' || size < 0) {\n\t\t\t\treturn this.t('files', 'Pending')\n\t\t\t}\n\t\t\treturn formatFileSize(size, true)\n\t\t},\n\t\tsizeOpacity() {\n\t\t\t// Whatever theme is active, the contrast will pass WCAG AA\n\t\t\t// with color main text over main background and an opacity of 0.7\n\t\t\tconst minOpacity = 0.7\n\t\t\tconst maxOpacitySize = 10 * 1024 * 1024\n\n\t\t\tconst size = parseInt(this.source.size, 10) || 0\n\t\t\tif (!size || size < 0) {\n\t\t\t\treturn minOpacity\n\t\t\t}\n\n\t\t\treturn minOpacity + (1 - minOpacity) * Math.pow((this.source.size / maxOpacitySize), 2)\n\t\t},\n\n\t\tmtime() {\n\t\t\tif (this.source.mtime) {\n\t\t\t\treturn moment(this.source.mtime).fromNow()\n\t\t\t}\n\t\t\treturn this.t('files_trashbin', 'A long time ago')\n\t\t},\n\t\tmtimeTitle() {\n\t\t\tif (this.source.mtime) {\n\t\t\t\treturn moment(this.source.mtime).format('LLL')\n\t\t\t}\n\t\t\treturn ''\n\t\t},\n\n\t\tlinkTo() {\n\t\t\tif (this.source.attributes.failed) {\n\t\t\t\treturn {\n\t\t\t\t\ttitle: this.t('files', 'This node is unavailable'),\n\t\t\t\t\tis: 'span',\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (this.enabledDefaultActions.length > 0) {\n\t\t\t\tconst action = this.enabledDefaultActions[0]\n\t\t\t\tconst displayName = action.displayName([this.source], this.currentView)\n\t\t\t\treturn {\n\t\t\t\t\ttitle: displayName,\n\t\t\t\t\trole: 'button',\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (this.source?.permissions & Permission.READ) {\n\t\t\t\treturn {\n\t\t\t\t\tdownload: this.source.basename,\n\t\t\t\t\thref: this.source.source,\n\t\t\t\t\ttitle: this.t('files', 'Download file {name}', { name: this.displayName }),\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tis: 'span',\n\t\t\t}\n\t\t},\n\n\t\tselectedFiles() {\n\t\t\treturn this.selectionStore.selected\n\t\t},\n\t\tisSelected() {\n\t\t\treturn this.selectedFiles.includes(this.fileid)\n\t\t},\n\n\t\tcropPreviews() {\n\t\t\treturn this.userConfig.crop_image_previews\n\t\t},\n\t\tpreviewUrl() {\n\t\t\tif (this.source.type === FileType.Folder) {\n\t\t\t\treturn null\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tconst previewUrl = this.source.attributes.previewUrl\n\t\t\t\t\t|| generateUrl('/core/preview?fileId={fileid}', {\n\t\t\t\t\t\tfileid: this.source.fileid,\n\t\t\t\t\t})\n\t\t\t\tconst url = new URL(window.location.origin + previewUrl)\n\n\t\t\t\t// Request tiny previews\n\t\t\t\turl.searchParams.set('x', '32')\n\t\t\t\turl.searchParams.set('y', '32')\n\t\t\t\turl.searchParams.set('mimeFallback', 'true')\n\n\t\t\t\t// Handle cropping\n\t\t\t\turl.searchParams.set('a', this.cropPreviews === true ? '0' : '1')\n\t\t\t\treturn url.href\n\t\t\t} catch (e) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t},\n\n\t\t// Sorted actions that are enabled for this node\n\t\tenabledActions() {\n\t\t\tif (this.source.attributes.failed) {\n\t\t\t\treturn []\n\t\t\t}\n\n\t\t\treturn actions\n\t\t\t\t.filter(action => !action.enabled || action.enabled([this.source], this.currentView))\n\t\t\t\t.sort((a, b) => (a.order || 0) - (b.order || 0))\n\t\t},\n\n\t\t// Enabled action that are displayed inline\n\t\tenabledInlineActions() {\n\t\t\tif (this.filesListWidth < 768) {\n\t\t\t\treturn []\n\t\t\t}\n\t\t\treturn this.enabledActions.filter(action => action?.inline?.(this.source, this.currentView))\n\t\t},\n\n\t\t// Enabled action that are displayed inline with a custom render function\n\t\tenabledRenderActions() {\n\t\t\tif (!this.visible) {\n\t\t\t\treturn []\n\t\t\t}\n\t\t\treturn this.enabledActions.filter(action => typeof action.renderInline === 'function')\n\t\t},\n\n\t\t// Default actions\n\t\tenabledDefaultActions() {\n\t\t\treturn this.enabledActions.filter(action => !!action?.default)\n\t\t},\n\n\t\t// Actions shown in the menu\n\t\tenabledMenuActions() {\n\t\t\treturn [\n\t\t\t\t// Showing inline first for the NcActions inline prop\n\t\t\t\t...this.enabledInlineActions,\n\t\t\t\t// Then the rest\n\t\t\t\t...this.enabledActions.filter(action => action.default !== DefaultType.HIDDEN && typeof action.renderInline !== 'function'),\n\t\t\t].filter((value, index, self) => {\n\t\t\t\t// Then we filter duplicates to prevent inline actions to be shown twice\n\t\t\t\treturn index === self.findIndex(action => action.id === value.id)\n\t\t\t})\n\t\t},\n\t\topenedMenu: {\n\t\t\tget() {\n\t\t\t\treturn this.actionsMenuStore.opened === this.uniqueId\n\t\t\t},\n\t\t\tset(opened) {\n\t\t\t\tthis.actionsMenuStore.opened = opened ? this.uniqueId : null\n\t\t\t},\n\t\t},\n\n\t\tuniqueId() {\n\t\t\treturn hashCode(this.source.source)\n\t\t},\n\n\t\tisFavorite() {\n\t\t\treturn this.source.attributes.favorite === 1\n\t\t},\n\n\t\tisRenaming() {\n\t\t\treturn this.renamingStore.renamingNode === this.source\n\t\t},\n\t\tisRenamingSmallScreen() {\n\t\t\treturn this.isRenaming && this.filesListWidth < 512\n\t\t},\n\t\tnewName: {\n\t\t\tget() {\n\t\t\t\treturn this.renamingStore.newName\n\t\t\t},\n\t\t\tset(newName) {\n\t\t\t\tthis.renamingStore.newName = newName\n\t\t\t},\n\t\t},\n\n\t\tisActive() {\n\t\t\treturn this.fileid === this.currentFileId?.toString?.()\n\t\t},\n\t},\n\n\twatch: {\n\t\t/**\n\t\t * When the source changes, reset the preview\n\t\t * and fetch the new one.\n\t\t */\n\t\tsource() {\n\t\t\tthis.resetState()\n\t\t\tthis.debounceIfNotCached()\n\t\t},\n\n\t\t/**\n\t\t * If renaming starts, select the file name\n\t\t * in the input, without the extension.\n\t\t */\n\t\tisRenaming() {\n\t\t\tthis.startRenaming()\n\t\t},\n\t},\n\n\t/**\n\t * The row is mounted once and reused as we scroll.\n\t */\n\tmounted() {\n\t\t// ⚠ Init the debounce function on mount and\n\t\t// not when the module is imported to\n\t\t// avoid sharing between recycled components\n\t\tthis.debounceGetPreview = debounce(function() {\n\t\t\tthis.fetchAndApplyPreview()\n\t\t}, 150, false)\n\n\t\t// Fetch the preview on init\n\t\tthis.debounceIfNotCached()\n\t},\n\n\tbeforeDestroy() {\n\t\tthis.resetState()\n\t},\n\n\tmethods: {\n\t\tasync debounceIfNotCached() {\n\t\t\tif (!this.previewUrl) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Check if we already have this preview cached\n\t\t\tconst isCached = await isCachedPreview(this.previewUrl)\n\t\t\tif (isCached) {\n\t\t\t\tthis.backgroundImage = `url(${this.previewUrl})`\n\t\t\t\tthis.backgroundFailed = false\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// We don't have this preview cached or it expired, requesting it\n\t\t\tthis.debounceGetPreview()\n\t\t},\n\n\t\tfetchAndApplyPreview() {\n\t\t\t// Ignore if no preview\n\t\t\tif (!this.previewUrl) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// If any image is being processed, reset it\n\t\t\tif (this.previewPromise) {\n\t\t\t\tthis.clearImg()\n\t\t\t}\n\n\t\t\t// Store the promise to be able to cancel it\n\t\t\tthis.previewPromise = new CancelablePromise((resolve, reject, onCancel) => {\n\t\t\t\tconst img = new Image()\n\t\t\t\t// If visible, load the preview with higher priority\n\t\t\t\timg.fetchpriority = this.visible ? 'high' : 'auto'\n\t\t\t\timg.onload = () => {\n\t\t\t\t\tthis.backgroundImage = `url(${this.previewUrl})`\n\t\t\t\t\tthis.backgroundFailed = false\n\t\t\t\t\tresolve(img)\n\t\t\t\t}\n\t\t\t\timg.onerror = () => {\n\t\t\t\t\tthis.backgroundFailed = true\n\t\t\t\t\treject(img)\n\t\t\t\t}\n\t\t\t\timg.src = this.previewUrl\n\n\t\t\t\t// Image loading has been canceled\n\t\t\t\tonCancel(() => {\n\t\t\t\t\timg.onerror = null\n\t\t\t\t\timg.onload = null\n\t\t\t\t\timg.src = ''\n\t\t\t\t})\n\t\t\t})\n\t\t},\n\n\t\tresetState() {\n\t\t\t// Reset loading state\n\t\t\tthis.loading = ''\n\n\t\t\t// Reset the preview\n\t\t\tthis.clearImg()\n\n\t\t\t// Close menu\n\t\t\tthis.openedMenu = false\n\t\t},\n\n\t\tclearImg() {\n\t\t\tthis.backgroundImage = ''\n\t\t\tthis.backgroundFailed = false\n\n\t\t\tif (this.previewPromise) {\n\t\t\t\tthis.previewPromise.cancel()\n\t\t\t\tthis.previewPromise = null\n\t\t\t}\n\t\t},\n\n\t\tasync onActionClick(action) {\n\t\t\tconst displayName = action.displayName([this.source], this.currentView)\n\t\t\ttry {\n\t\t\t\t// Set the loading marker\n\t\t\t\tthis.loading = action.id\n\t\t\t\tVue.set(this.source, '_loading', true)\n\n\t\t\t\tconst success = await action.exec(this.source, this.currentView, this.currentDir)\n\n\t\t\t\t// If the action returns null, we stay silent\n\t\t\t\tif (success === null) {\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tif (success) {\n\t\t\t\t\tshowSuccess(this.t('files', '\"{displayName}\" action executed successfully', { displayName }))\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tshowError(this.t('files', '\"{displayName}\" action failed', { displayName }))\n\t\t\t} catch (e) {\n\t\t\t\tlogger.error('Error while executing action', { action, e })\n\t\t\t\tshowError(this.t('files', '\"{displayName}\" action failed', { displayName }))\n\t\t\t} finally {\n\t\t\t\t// Reset the loading marker\n\t\t\t\tthis.loading = ''\n\t\t\t\tVue.set(this.source, '_loading', false)\n\t\t\t}\n\t\t},\n\t\texecDefaultAction(event) {\n\t\t\tif (this.enabledDefaultActions.length > 0) {\n\t\t\t\tevent.preventDefault()\n\t\t\t\tevent.stopPropagation()\n\t\t\t\t// Execute the first default action if any\n\t\t\t\tthis.enabledDefaultActions[0].exec(this.source, this.currentView, this.currentDir)\n\t\t\t}\n\t\t},\n\n\t\topenDetailsIfAvailable(event) {\n\t\t\tconst detailsAction = this.enabledActions.find(action => action.id === ACTION_DETAILS)\n\t\t\tif (detailsAction) {\n\t\t\t\tevent.preventDefault()\n\t\t\t\tevent.stopPropagation()\n\t\t\t\tdetailsAction.exec(this.source, this.currentView)\n\t\t\t}\n\t\t},\n\n\t\tonSelectionChange(selection) {\n\t\t\tconst newSelectedIndex = this.index\n\t\t\tconst lastSelectedIndex = this.selectionStore.lastSelectedIndex\n\n\t\t\t// Get the last selected and select all files in between\n\t\t\tif (this.keyboardStore?.shiftKey && lastSelectedIndex !== null) {\n\t\t\t\tconst isAlreadySelected = this.selectedFiles.includes(this.fileid)\n\n\t\t\t\tconst start = Math.min(newSelectedIndex, lastSelectedIndex)\n\t\t\t\tconst end = Math.max(lastSelectedIndex, newSelectedIndex)\n\n\t\t\t\tconst lastSelection = this.selectionStore.lastSelection\n\t\t\t\tconst filesToSelect = this.nodes\n\t\t\t\t\t.map(file => file.fileid?.toString?.())\n\t\t\t\t\t.slice(start, end + 1)\n\n\t\t\t\t// If already selected, update the new selection _without_ the current file\n\t\t\t\tconst selection = [...lastSelection, ...filesToSelect]\n\t\t\t\t\t.filter(fileId => !isAlreadySelected || fileId !== this.fileid)\n\n\t\t\t\tlogger.debug('Shift key pressed, selecting all files in between', { start, end, filesToSelect, isAlreadySelected })\n\t\t\t\t// Keep previous lastSelectedIndex to be use for further shift selections\n\t\t\t\tthis.selectionStore.set(selection)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tlogger.debug('Updating selection', { selection })\n\t\t\tthis.selectionStore.set(selection)\n\t\t\tthis.selectionStore.setLastIndex(newSelectedIndex)\n\t\t},\n\n\t\t// Open the actions menu on right click\n\t\tonRightClick(event) {\n\t\t\t// If already opened, fallback to default browser\n\t\t\tif (this.openedMenu) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// If the clicked row is in the selection, open global menu\n\t\t\tconst isMoreThanOneSelected = this.selectedFiles.length > 1\n\t\t\tthis.actionsMenuStore.opened = this.isSelected && isMoreThanOneSelected ? 'global' : this.uniqueId\n\n\t\t\t// Prevent any browser defaults\n\t\t\tevent.preventDefault()\n\t\t\tevent.stopPropagation()\n\t\t},\n\n\t\t/**\n\t\t * Check if the file name is valid and update the\n\t\t * input validity using browser's native validation.\n\t\t * @param event the keyup event\n\t\t */\n\t\tcheckInputValidity(event: KeyboardEvent) {\n\t\t\tconst input = event?.target as HTMLInputElement\n\t\t\tconst newName = this.newName.trim?.() || ''\n\t\t\ttry {\n\t\t\t\tthis.isFileNameValid(newName)\n\t\t\t\tinput.setCustomValidity('')\n\t\t\t\tinput.title = ''\n\t\t\t} catch (e) {\n\t\t\t\tinput.setCustomValidity(e.message)\n\t\t\t\tinput.title = e.message\n\t\t\t} finally {\n\t\t\t\tinput.reportValidity()\n\t\t\t}\n\t\t},\n\t\tisFileNameValid(name) {\n\t\t\tconst trimmedName = name.trim()\n\t\t\tif (trimmedName === '.' || trimmedName === '..') {\n\t\t\t\tthrow new Error(this.t('files', '\"{name}\" is an invalid file name.', { name }))\n\t\t\t} else if (trimmedName.length === 0) {\n\t\t\t\tthrow new Error(this.t('files', 'File name cannot be empty.'))\n\t\t\t} else if (trimmedName.indexOf('/') !== -1) {\n\t\t\t\tthrow new Error(this.t('files', '\"/\" is not allowed inside a file name.'))\n\t\t\t} else if (trimmedName.match(OC.config.blacklist_files_regex)) {\n\t\t\t\tthrow new Error(this.t('files', '\"{name}\" is not an allowed filetype.', { name }))\n\t\t\t} else if (this.checkIfNodeExists(name)) {\n\t\t\t\tthrow new Error(this.t('files', '{newName} already exists.', { newName: name }))\n\t\t\t}\n\n\t\t\treturn true\n\t\t},\n\t\tcheckIfNodeExists(name) {\n\t\t\treturn this.nodes.find(node => node.basename === name && node !== this.source)\n\t\t},\n\n\t\tstartRenaming() {\n\t\t\tthis.checkInputValidity()\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tconst extLength = (this.source.extension || '').length\n\t\t\t\tconst length = this.source.basename.length - extLength\n\t\t\t\tconst input = this.$refs.renameInput?.$refs?.inputField?.$refs?.input\n\t\t\t\tif (!input) {\n\t\t\t\t\tlogger.error('Could not find the rename input')\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tinput.setSelectionRange(0, length)\n\t\t\t\tinput.focus()\n\t\t\t})\n\t\t},\n\t\tstopRenaming() {\n\t\t\tif (!this.isRenaming) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Reset the renaming store\n\t\t\tthis.renamingStore.$reset()\n\t\t},\n\n\t\t// Rename and move the file\n\t\tasync onRename() {\n\t\t\tconst oldName = this.source.basename\n\t\t\tconst oldSource = this.source.source\n\t\t\tconst newName = this.newName.trim?.() || ''\n\t\t\tif (newName === '') {\n\t\t\t\tshowError(this.t('files', 'Name cannot be empty'))\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (oldName === newName) {\n\t\t\t\tthis.stopRenaming()\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Checking if already exists\n\t\t\tif (this.checkIfNodeExists(newName)) {\n\t\t\t\tshowError(this.t('files', 'Another entry with the same name already exists'))\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Set loading state\n\t\t\tthis.loading = 'renaming'\n\t\t\tVue.set(this.source, '_loading', true)\n\n\t\t\t// Update node\n\t\t\tthis.source.rename(newName)\n\n\t\t\ttry {\n\t\t\t\tawait axios({\n\t\t\t\t\tmethod: 'MOVE',\n\t\t\t\t\turl: oldSource,\n\t\t\t\t\theaders: {\n\t\t\t\t\t\tDestination: encodeURI(this.source.source),\n\t\t\t\t\t},\n\t\t\t\t})\n\n\t\t\t\t// Success 🎉\n\t\t\t\temit('files:node:updated', this.source)\n\t\t\t\temit('files:node:renamed', this.source)\n\t\t\t\tshowSuccess(this.t('files', 'Renamed \"{oldName}\" to \"{newName}\"', { oldName, newName }))\n\t\t\t\tthis.stopRenaming()\n\t\t\t\tthis.$nextTick(() => {\n\t\t\t\t\tthis.$refs.basename.focus()\n\t\t\t\t})\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Error while renaming file', { error })\n\t\t\t\tthis.source.rename(oldName)\n\t\t\t\tthis.$refs.renameInput.focus()\n\n\t\t\t\t// TODO: 409 means current folder does not exist, redirect ?\n\t\t\t\tif (error?.response?.status === 404) {\n\t\t\t\t\tshowError(this.t('files', 'Could not rename \"{oldName}\", it does not exist any more', { oldName }))\n\t\t\t\t\treturn\n\t\t\t\t} else if (error?.response?.status === 412) {\n\t\t\t\t\tshowError(this.t('files', 'The name \"{newName}\"\" is already used in the folder \"{dir}\". Please choose a different name.', { newName, dir: this.currentDir }))\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\t// Unknown error\n\t\t\t\tshowError(this.t('files', 'Could not rename \"{oldName}\"', { oldName }))\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t\tVue.set(this.source, '_loading', false)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Making this a function in case the files-list\n\t\t * reference changes in the future. That way we're\n\t\t * sure there is one at the time we call it.\n\t\t */\n\t\tgetBoundariesElement() {\n\t\t\treturn document.querySelector('.app-content > .files-list')\n\t\t},\n\n\t\tt: translate,\n\t\tformatFileSize,\n\t},\n})\n<\/script>\n\n<style scoped lang='scss'>\n/* Hover effect on tbody lines only */\ntr {\n\t&:hover,\n\t&:focus,\n\t&:visible {\n\t\tbackground-color: var(--color-background-dark);\n\t}\n}\n\n/* Preview not loaded animation effect */\n.files-list__row-icon-preview:not([style*='background']) {\n background: var(--color-loading-dark);\n\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\n}\n</style>\n\n<style>\n/* @keyframes preview-gradient-fade {\n 0% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n 100% {\n opacity: 1;\n }\n} */\n</style>\n"],sourceRoot:""}]),e.Z=a},46700:function(t,e,n){var r={"./af":42786,"./af.js":42786,"./ar":30867,"./ar-dz":14130,"./ar-dz.js":14130,"./ar-kw":96135,"./ar-kw.js":96135,"./ar-ly":56440,"./ar-ly.js":56440,"./ar-ma":47702,"./ar-ma.js":47702,"./ar-sa":16040,"./ar-sa.js":16040,"./ar-tn":37100,"./ar-tn.js":37100,"./ar.js":30867,"./az":31083,"./az.js":31083,"./be":9808,"./be.js":9808,"./bg":68338,"./bg.js":68338,"./bm":67438,"./bm.js":67438,"./bn":8905,"./bn-bd":76225,"./bn-bd.js":76225,"./bn.js":8905,"./bo":11560,"./bo.js":11560,"./br":1278,"./br.js":1278,"./bs":80622,"./bs.js":80622,"./ca":2468,"./ca.js":2468,"./cs":5822,"./cs.js":5822,"./cv":50877,"./cv.js":50877,"./cy":47373,"./cy.js":47373,"./da":24780,"./da.js":24780,"./de":59740,"./de-at":60217,"./de-at.js":60217,"./de-ch":60894,"./de-ch.js":60894,"./de.js":59740,"./dv":5300,"./dv.js":5300,"./el":50837,"./el.js":50837,"./en-au":78348,"./en-au.js":78348,"./en-ca":77925,"./en-ca.js":77925,"./en-gb":22243,"./en-gb.js":22243,"./en-ie":46436,"./en-ie.js":46436,"./en-il":47207,"./en-il.js":47207,"./en-in":44175,"./en-in.js":44175,"./en-nz":76319,"./en-nz.js":76319,"./en-sg":31662,"./en-sg.js":31662,"./eo":92915,"./eo.js":92915,"./es":55655,"./es-do":55251,"./es-do.js":55251,"./es-mx":96112,"./es-mx.js":96112,"./es-us":71146,"./es-us.js":71146,"./es.js":55655,"./et":5603,"./et.js":5603,"./eu":77763,"./eu.js":77763,"./fa":76959,"./fa.js":76959,"./fi":11897,"./fi.js":11897,"./fil":42549,"./fil.js":42549,"./fo":94694,"./fo.js":94694,"./fr":94470,"./fr-ca":63049,"./fr-ca.js":63049,"./fr-ch":52330,"./fr-ch.js":52330,"./fr.js":94470,"./fy":5044,"./fy.js":5044,"./ga":29295,"./ga.js":29295,"./gd":2101,"./gd.js":2101,"./gl":38794,"./gl.js":38794,"./gom-deva":27884,"./gom-deva.js":27884,"./gom-latn":23168,"./gom-latn.js":23168,"./gu":95349,"./gu.js":95349,"./he":24206,"./he.js":24206,"./hi":30094,"./hi.js":30094,"./hr":30316,"./hr.js":30316,"./hu":22138,"./hu.js":22138,"./hy-am":11423,"./hy-am.js":11423,"./id":29218,"./id.js":29218,"./is":90135,"./is.js":90135,"./it":90626,"./it-ch":10150,"./it-ch.js":10150,"./it.js":90626,"./ja":39183,"./ja.js":39183,"./jv":24286,"./jv.js":24286,"./ka":12105,"./ka.js":12105,"./kk":47772,"./kk.js":47772,"./km":18758,"./km.js":18758,"./kn":79282,"./kn.js":79282,"./ko":33730,"./ko.js":33730,"./ku":1408,"./ku.js":1408,"./ky":33291,"./ky.js":33291,"./lb":36841,"./lb.js":36841,"./lo":55466,"./lo.js":55466,"./lt":57010,"./lt.js":57010,"./lv":37595,"./lv.js":37595,"./me":39861,"./me.js":39861,"./mi":35493,"./mi.js":35493,"./mk":95966,"./mk.js":95966,"./ml":87341,"./ml.js":87341,"./mn":5115,"./mn.js":5115,"./mr":10370,"./mr.js":10370,"./ms":9847,"./ms-my":41237,"./ms-my.js":41237,"./ms.js":9847,"./mt":72126,"./mt.js":72126,"./my":56165,"./my.js":56165,"./nb":64924,"./nb.js":64924,"./ne":16744,"./ne.js":16744,"./nl":93901,"./nl-be":59814,"./nl-be.js":59814,"./nl.js":93901,"./nn":83877,"./nn.js":83877,"./oc-lnc":92135,"./oc-lnc.js":92135,"./pa-in":15858,"./pa-in.js":15858,"./pl":64495,"./pl.js":64495,"./pt":89520,"./pt-br":57971,"./pt-br.js":57971,"./pt.js":89520,"./ro":96459,"./ro.js":96459,"./ru":21793,"./ru.js":21793,"./sd":40950,"./sd.js":40950,"./se":10490,"./se.js":10490,"./si":90124,"./si.js":90124,"./sk":64249,"./sk.js":64249,"./sl":14985,"./sl.js":14985,"./sq":51104,"./sq.js":51104,"./sr":49131,"./sr-cyrl":79915,"./sr-cyrl.js":79915,"./sr.js":49131,"./ss":85893,"./ss.js":85893,"./sv":98760,"./sv.js":98760,"./sw":91172,"./sw.js":91172,"./ta":27333,"./ta.js":27333,"./te":23110,"./te.js":23110,"./tet":52095,"./tet.js":52095,"./tg":27321,"./tg.js":27321,"./th":9041,"./th.js":9041,"./tk":19005,"./tk.js":19005,"./tl-ph":75768,"./tl-ph.js":75768,"./tlh":89444,"./tlh.js":89444,"./tr":72397,"./tr.js":72397,"./tzl":28254,"./tzl.js":28254,"./tzm":51106,"./tzm-latn":30699,"./tzm-latn.js":30699,"./tzm.js":51106,"./ug-cn":9288,"./ug-cn.js":9288,"./uk":67691,"./uk.js":67691,"./ur":13795,"./ur.js":13795,"./uz":6791,"./uz-latn":60588,"./uz-latn.js":60588,"./uz.js":6791,"./vi":65666,"./vi.js":65666,"./x-pseudo":14378,"./x-pseudo.js":14378,"./yo":75805,"./yo.js":75805,"./zh-cn":83839,"./zh-cn.js":83839,"./zh-hk":55726,"./zh-hk.js":55726,"./zh-mo":99807,"./zh-mo.js":99807,"./zh-tw":74152,"./zh-tw.js":74152};function o(t){var e=i(t);return n(e)}function i(t){if(!n.o(r,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return r[t]}o.keys=function(){return Object.keys(r)},o.resolve=i,t.exports=o,o.id=46700},24654:function(){},52361:function(){},94616:function(){},21478:function(t,e,n){"use strict";function r(t){return null!=t&&null!=t.constructor&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}n.d(e,{z:function(){return r}})},62639:function(t,e,n){"use strict";function r(){return"boolean"==typeof WEB&&!0===WEB}n.d(e,{$:function(){return r}})},98808:function(t,e,n){"use strict";n.d(e,{l:function(){return l}});const r="@@HOTPATCHER",o=()=>{};function i(t){return{original:t,methods:[t],final:!1}}class a{constructor(){this._configuration={registry:{},getEmptyAction:"null"},this.__type__=r}get configuration(){return this._configuration}get getEmptyAction(){return this.configuration.getEmptyAction}set getEmptyAction(t){this.configuration.getEmptyAction=t}control(t,e=!1){if(!t||t.__type__!==r)throw new Error("Failed taking control of target HotPatcher instance: Invalid type or object");return Object.keys(t.configuration.registry).forEach((n=>{this.configuration.registry.hasOwnProperty(n)?e&&(this.configuration.registry[n]=Object.assign({},t.configuration.registry[n])):this.configuration.registry[n]=Object.assign({},t.configuration.registry[n])})),t._configuration=this.configuration,this}execute(t,...e){return(this.get(t)||o)(...e)}get(t){const e=this.configuration.registry[t];if(!e)switch(this.getEmptyAction){case"null":return null;case"throw":throw new Error(`Failed handling method request: No method provided for override: ${t}`);default:throw new Error(`Failed handling request which resulted in an empty method: Invalid empty-action specified: ${this.getEmptyAction}`)}return function(...t){if(0===t.length)throw new Error("Failed creating sequence: No functions provided");return function(...e){let n=e;const r=this;for(;t.length>0;)n=[t.shift().apply(r,n)];return n[0]}}(...e.methods)}isPatched(t){return!!this.configuration.registry[t]}patch(t,e,n={}){const{chain:r=!1}=n;if(this.configuration.registry[t]&&this.configuration.registry[t].final)throw new Error(`Failed patching '${t}': Method marked as being final`);if("function"!=typeof e)throw new Error(`Failed patching '${t}': Provided method is not a function`);if(r)this.configuration.registry[t]?this.configuration.registry[t].methods.push(e):this.configuration.registry[t]=i(e);else if(this.isPatched(t)){const{original:n}=this.configuration.registry[t];this.configuration.registry[t]=Object.assign(i(e),{original:n})}else this.configuration.registry[t]=i(e);return this}patchInline(t,e,...n){return this.isPatched(t)||this.patch(t,e),this.execute(t,...n)}plugin(t,...e){return e.forEach((e=>{this.patch(t,e,{chain:!0})})),this}restore(t){if(!this.isPatched(t))throw new Error(`Failed restoring method: No method present for key: ${t}`);if("function"!=typeof this.configuration.registry[t].original)throw new Error(`Failed restoring method: Original method not found or of invalid type for key: ${t}`);return this.configuration.registry[t].methods=[this.configuration.registry[t].original],this}setFinal(t){if(!this.configuration.registry.hasOwnProperty(t))throw new Error(`Failed marking '${t}' as final: No method found for key`);return this.configuration.registry[t].final=!0,this}}let s=null;function l(){return s||(s=new a),s}},10065:function(t,e,n){"use strict";function r(...t){if(0===t.length)return{};const e={};return t.reduce(((t,n)=>(Object.keys(n).forEach((r=>{const o=r.toLowerCase();e.hasOwnProperty(o)?t[e[o]]=n[r]:(e[o]=r,t[r]=n[r])})),t)),{})}n.d(e,{m:function(){return r}})},90702:function(t,e,n){"use strict";function r(t){return function(t){if("object"!=typeof t||null===t||"[object Object]"!=Object.prototype.toString.call(t))return!1;if(null===Object.getPrototypeOf(t))return!0;let e=t;for(;null!==Object.getPrototypeOf(e);)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e}(t)?Object.assign({},t):Object.setPrototypeOf(Object.assign({},t),Object.getPrototypeOf(t))}function o(...t){let e=null,n=[...t];for(;n.length>0;){const t=n.shift();e=e?i(e,t):r(t)}return e}function i(t,e){const n=r(t);return Object.keys(e).forEach((t=>{n.hasOwnProperty(t)?Array.isArray(e[t])?n[t]=Array.isArray(n[t])?[...n[t],...e[t]]:[...e[t]]:"object"==typeof e[t]&&e[t]?n[t]="object"==typeof n[t]&&n[t]?i(n[t],e[t]):r(e[t]):n[t]=e[t]:n[t]=e[t]})),n}n.d(e,{T:function(){return o}})}},r={};function o(t){var e=r[t];if(void 0!==e)return e.exports;var i=r[t]={id:t,loaded:!1,exports:{}};return n[t].call(i.exports,i,i.exports,o),i.loaded=!0,i.exports}o.m=n,e=[],o.O=function(t,n,r,i){if(!n){var a=1/0;for(u=0;u<e.length;u++){n=e[u][0],r=e[u][1],i=e[u][2];for(var s=!0,l=0;l<n.length;l++)(!1&i||a>=i)&&Object.keys(o.O).every((function(t){return o.O[t](n[l])}))?n.splice(l--,1):(s=!1,i<a&&(a=i));if(s){e.splice(u--,1);var c=r();void 0!==c&&(t=c)}}return t}i=i||0;for(var u=e.length;u>0&&e[u-1][2]>i;u--)e[u]=e[u-1];e[u]=[n,r,i]},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,{a:e}),e},o.d=function(t,e){for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},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,e){return Object.prototype.hasOwnProperty.call(t,e)},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=2181,function(){o.b=document.baseURI||self.location.href;var t={2181:0};o.O.j=function(e){return 0===t[e]};var e=function(e,n){var r,i,a=n[0],s=n[1],l=n[2],c=0;if(a.some((function(e){return 0!==t[e]}))){for(r in s)o.o(s,r)&&(o.m[r]=s[r]);if(l)var u=l(o)}for(e&&e(n);c<a.length;c++)i=a[c],o.o(t,i)&&t[i]&&t[i][0](),t[i]=0;return o.O(u)},n=self.webpackChunknextcloud=self.webpackChunknextcloud||[];n.forEach(e.bind(null,0)),n.push=e.bind(null,n.push.bind(n))}(),o.nc=void 0;var i=o.O(void 0,[7874],(function(){return o(24768)}));i=o.O(i)}();
-//# sourceMappingURL=files-main.js.map?v=fd0d6ac19e8c848e4f29 \ No newline at end of file
+/******/ (function() { // webpackBootstrap
+/******/ var __webpack_modules__ = ({
+
+/***/ "./node_modules/@nextcloud/vue/dist/Components/NcAppSettingsDialog.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@nextcloud/vue/dist/Components/NcAppSettingsDialog.js ***!
+ \****************************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+/*! For license information please see NcAppSettingsDialog.js.LICENSE.txt */
+!function(e,t){ true?module.exports=t():0}(self,(()=>(()=>{var e={8250:(e,t,a)=>{"use strict";a.d(t,{default:()=>T});var o=a(4462),i=a(2297),n=a(1205),r=a(932),s=a(2734),l=a.n(s),c=a(1441),d=a.n(c);const u=".focusable",p={name:"NcActions",components:{NcButton:o.default,DotsHorizontal:d(),NcPopover:i.default},props:{open:{type:Boolean,default:!1},manualOpen:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},forceName:{type:Boolean,default:!1},menuName:{type:String,default:null},primary:{type:Boolean,default:!1},type:{type:String,validator:e=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(e),default:null},defaultIcon:{type:String,default:""},ariaLabel:{type:String,default:(0,r.t)("Actions")},ariaHidden:{type:Boolean,default:null},placement:{type:String,default:"bottom"},boundariesElement:{type:Element,default:()=>document.querySelector("body")},container:{type:[String,Object,Element,Boolean],default:"body"},disabled:{type:Boolean,default:!1},inline:{type:Number,default:0}},emits:["open","update:open","close","focus","blur"],data(){return{opened:this.open,focusIndex:0,randomId:"menu-".concat((0,n.Z)())}},computed:{triggerBtnType(){return this.type||(this.primary?"primary":this.menuName?"secondary":"tertiary")}},watch:{open(e){e!==this.opened&&(this.opened=e)}},methods:{isValidSingleAction(e){var t,a,o,i,n;const r=null!==(t=null==e||null===(a=e.componentOptions)||void 0===a||null===(o=a.Ctor)||void 0===o||null===(i=o.extendOptions)||void 0===i?void 0:i.name)&&void 0!==t?t:null==e||null===(n=e.componentOptions)||void 0===n?void 0:n.tag;return["NcActionButton","NcActionLink","NcActionRouter"].includes(r)},openMenu(e){this.opened||(this.opened=!0,this.$emit("update:open",!0),this.$emit("open"))},closeMenu(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.opened&&(this.opened=!1,this.$refs.popover.clearFocusTrap({returnFocus:e}),this.$emit("update:open",!1),this.$emit("close"),this.focusIndex=0,this.$refs.menuButton.$el.focus())},onOpen(e){this.$nextTick((()=>{this.focusFirstAction(e)}))},onMouseFocusAction(e){if(document.activeElement===e.target)return;const t=e.target.closest("li");if(t){const e=t.querySelector(u);if(e){const t=[...this.$refs.menu.querySelectorAll(u)].indexOf(e);t>-1&&(this.focusIndex=t,this.focusAction())}}},onKeydown(e){(38===e.keyCode||9===e.keyCode&&e.shiftKey)&&this.focusPreviousAction(e),(40===e.keyCode||9===e.keyCode&&!e.shiftKey)&&this.focusNextAction(e),33===e.keyCode&&this.focusFirstAction(e),34===e.keyCode&&this.focusLastAction(e),27===e.keyCode&&(this.closeMenu(),e.preventDefault())},removeCurrentActive(){const e=this.$refs.menu.querySelector("li.active");e&&e.classList.remove("active")},focusAction(){const e=this.$refs.menu.querySelectorAll(u)[this.focusIndex];if(e){this.removeCurrentActive();const t=e.closest("li.action");e.focus(),t&&t.classList.add("active")}},focusPreviousAction(e){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(e),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction(e){if(this.opened){const t=this.$refs.menu.querySelectorAll(u).length-1;this.focusIndex===t?this.closeMenu():(this.preventIfEvent(e),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction(e){this.opened&&(this.preventIfEvent(e),this.focusIndex=0,this.focusAction())},focusLastAction(e){this.opened&&(this.preventIfEvent(e),this.focusIndex=this.$refs.menu.querySelectorAll(u).length-1,this.focusAction())},preventIfEvent(e){e&&(e.preventDefault(),e.stopPropagation())},onFocus(e){this.$emit("focus",e)},onBlur(e){this.$emit("blur",e)}},render(e){const t=(this.$slots.default||[]).filter((e=>{var t,a,o,i;return(null==e||null===(t=e.componentOptions)||void 0===t?void 0:t.tag)||(null==e||null===(a=e.componentOptions)||void 0===a||null===(o=a.Ctor)||void 0===o||null===(i=o.extendOptions)||void 0===i?void 0:i.name)})),a=t.every((e=>{var t,a,o,i,n,r,s,l;return"NcActionLink"===(null!==(t=null==e||null===(a=e.componentOptions)||void 0===a||null===(o=a.Ctor)||void 0===o||null===(i=o.extendOptions)||void 0===i?void 0:i.name)&&void 0!==t?t:null==e||null===(n=e.componentOptions)||void 0===n?void 0:n.tag)&&(null==e||null===(r=e.componentOptions)||void 0===r||null===(s=r.propsData)||void 0===s||null===(l=s.href)||void 0===l?void 0:l.startsWith(window.location.origin))}));let o=t.filter(this.isValidSingleAction);if(this.forceMenu&&o.length>0&&this.inline>0&&(l().util.warn("Specifying forceMenu will ignore any inline actions rendering."),o=[]),0===t.length)return;const i=t=>{var a,o,i,n,r,s,l,c,d,u,p,A,m,h,g,v,C,b,f,y,k,w;const S=(null==t||null===(a=t.data)||void 0===a||null===(o=a.scopedSlots)||void 0===o||null===(i=o.icon())||void 0===i?void 0:i[0])||e("span",{class:["icon",null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.propsData)||void 0===r?void 0:r.icon]}),x=null==t||null===(s=t.componentOptions)||void 0===s||null===(l=s.listeners)||void 0===l?void 0:l.click,z=null==t||null===(c=t.componentOptions)||void 0===c||null===(d=c.children)||void 0===d||null===(u=d[0])||void 0===u||null===(p=u.text)||void 0===p||null===(A=p.trim)||void 0===A?void 0:A.call(p),N=(null==t||null===(m=t.componentOptions)||void 0===m||null===(h=m.propsData)||void 0===h?void 0:h.ariaLabel)||z,j=this.forceName?z:"";let P=null==t||null===(g=t.componentOptions)||void 0===g||null===(v=g.propsData)||void 0===v?void 0:v.title;return this.forceName||P||(P=z),e("NcButton",{class:["action-item action-item--single",null==t||null===(C=t.data)||void 0===C?void 0:C.staticClass,null==t||null===(b=t.data)||void 0===b?void 0:b.class],attrs:{"aria-label":N,title:P},ref:null==t||null===(f=t.data)||void 0===f?void 0:f.ref,props:{type:this.type||(j?"secondary":"tertiary"),disabled:this.disabled||(null==t||null===(y=t.componentOptions)||void 0===y||null===(k=y.propsData)||void 0===k?void 0:k.disabled),ariaHidden:this.ariaHidden,...null==t||null===(w=t.componentOptions)||void 0===w?void 0:w.propsData},on:{focus:this.onFocus,blur:this.onBlur,...!!x&&{click:e=>{x&&x(e)}}}},[e("template",{slot:"icon"},[S]),j])},n=t=>{var o,i;const n=(null===(o=this.$slots.icon)||void 0===o?void 0:o[0])||(this.defaultIcon?e("span",{class:["icon",this.defaultIcon]}):e("DotsHorizontal",{props:{size:20}}));return e("NcPopover",{ref:"popover",props:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,popoverBaseClass:"action-item__popper",setReturnFocus:null===(i=this.$refs.menuButton)||void 0===i?void 0:i.$el},attrs:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,...this.manualOpen&&{triggers:[]},popoverBaseClass:"action-item__popper"},on:{show:this.openMenu,"after-show":this.onOpen,hide:this.closeMenu}},[e("NcButton",{class:"action-item__menutoggle",props:{type:this.triggerBtnType,disabled:this.disabled,ariaHidden:this.ariaHidden},slot:"trigger",ref:"menuButton",attrs:{"aria-haspopup":a?null:"menu","aria-label":this.ariaLabel,"aria-controls":this.opened?this.randomId:null,"aria-expanded":this.opened.toString()},on:{focus:this.onFocus,blur:this.onBlur}},[e("template",{slot:"icon"},[n]),this.menuName]),e("div",{class:{open:this.opened},attrs:{tabindex:"-1"},on:{keydown:this.onKeydown,mousemove:this.onMouseFocusAction},ref:"menu"},[e("ul",{attrs:{id:this.randomId,tabindex:"-1",role:a?null:"menu"}},[t])])])};if(1===t.length&&1===o.length&&!this.forceMenu)return i(o[0]);if(o.length>0&&this.inline>0){const a=o.slice(0,this.inline),r=t.filter((e=>!a.includes(e)));return e("div",{class:["action-items","action-item--".concat(this.triggerBtnType)]},[...a.map(i),r.length>0?e("div",{class:["action-item",{"action-item--open":this.opened}]},[n(r)]):null])}return e("div",{class:["action-item action-item--default-popover","action-item--".concat(this.triggerBtnType),{"action-item--open":this.opened}]},[n(t)])}};var A=a(3379),m=a.n(A),h=a(7795),g=a.n(h),v=a(569),C=a.n(v),b=a(3565),f=a.n(b),y=a(9216),k=a.n(y),w=a(4589),S=a.n(w),x=a(4825),z={};z.styleTagTransform=S(),z.setAttributes=f(),z.insert=C().bind(null,"head"),z.domAPI=g(),z.insertStyleElement=k();m()(x.Z,z);x.Z&&x.Z.locals&&x.Z.locals;var N=a(4946),j={};j.styleTagTransform=S(),j.setAttributes=f(),j.insert=C().bind(null,"head"),j.domAPI=g(),j.insertStyleElement=k();m()(N.Z,j);N.Z&&N.Z.locals&&N.Z.locals;var P=a(1900),E=a(5727),B=a.n(E),_=(0,P.Z)(p,undefined,undefined,!1,null,"29452b76",null);"function"==typeof B()&&B()(_);const T=_.exports},4462:(e,t,a)=>{"use strict";a.d(t,{default:()=>k});const o={name:"NcButton",props:{disabled:{type:Boolean,default:!1},type:{type:String,validator:e=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(e),default:"secondary"},nativeType:{type:String,validator:e=>-1!==["submit","reset","button"].indexOf(e),default:"button"},wide:{type:Boolean,default:!1},ariaLabel:{type:String,default:null},href:{type:String,default:null},to:{type:[String,Object],default:null},exact:{type:Boolean,default:!1},ariaHidden:{type:Boolean,default:null}},render(e){var t,a,o,i,n,r=this;const s=null===(t=this.$slots.default)||void 0===t||null===(a=t[0])||void 0===a||null===(o=a.text)||void 0===o||null===(i=o.trim)||void 0===i?void 0:i.call(o),l=!!s,c=null===(n=this.$slots)||void 0===n?void 0:n.icon;s||this.ariaLabel||console.warn("You need to fill either the text or the ariaLabel props in the button component.",{text:s,ariaLabel:this.ariaLabel},this);const d=function(){let{navigate:t,isActive:a,isExactActive:o}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e(r.to||!r.href?"button":"a",{class:["button-vue",{"button-vue--icon-only":c&&!l,"button-vue--text-only":l&&!c,"button-vue--icon-and-text":c&&l,["button-vue--vue-".concat(r.type)]:r.type,"button-vue--wide":r.wide,active:a,"router-link-exact-active":o}],attrs:{"aria-label":r.ariaLabel,disabled:r.disabled,type:r.href?null:r.nativeType,role:r.href?"button":null,href:!r.to&&r.href?r.href:null,...r.$attrs},on:{...r.$listeners,click:e=>{var a,o;null===(a=r.$listeners)||void 0===a||null===(o=a.click)||void 0===o||o.call(a,e),null==t||t(e)}}},[e("span",{class:"button-vue__wrapper"},[c?e("span",{class:"button-vue__icon",attrs:{"aria-hidden":r.ariaHidden}},[r.$slots.icon]):null,l?e("span",{class:"button-vue__text"},[s]):null])])};return this.to?e("router-link",{props:{custom:!0,to:this.to,exact:this.exact},scopedSlots:{default:d}}):d()}};var i=a(3379),n=a.n(i),r=a(7795),s=a.n(r),l=a(569),c=a.n(l),d=a(3565),u=a.n(d),p=a(9216),A=a.n(p),m=a(4589),h=a.n(m),g=a(7196),v={};v.styleTagTransform=h(),v.setAttributes=u(),v.insert=c().bind(null,"head"),v.domAPI=s(),v.insertStyleElement=A();n()(g.Z,v);g.Z&&g.Z.locals&&g.Z.locals;var C=a(1900),b=a(2102),f=a.n(b),y=(0,C.Z)(o,undefined,undefined,!1,null,"4d05be2c",null);"function"==typeof f()&&f()(y);const k=y.exports},1929:(e,t,a)=>{"use strict";a.d(t,{default:()=>Z});var o=a(7645),i=a(1206),n=a(932),r=a(1205),s=a(3648),l=a(8250),c=a(4462);function d(e,t){let a,o,i,n=t;this.start=function(){i=!0,o=new Date,a=setTimeout(e,n)},this.pause=function(){i=!1,clearTimeout(a),n-=new Date-o},this.clear=function(){i=!1,clearTimeout(a),n=0},this.getTimeLeft=function(){return i&&(this.pause(),this.start()),n},this.getStateRunning=function(){return i},this.start()}var u=a(336);const p=__webpack_require__(/*! vue-material-design-icons/ChevronLeft.vue */ "./node_modules/vue-material-design-icons/ChevronLeft.vue");var A=a.n(p),m=a(9044),h=a.n(m),g=a(8618),v=a.n(g);const C=__webpack_require__(/*! vue-material-design-icons/Pause.vue */ "./node_modules/vue-material-design-icons/Pause.vue");var b=a.n(C);const f=__webpack_require__(/*! vue-material-design-icons/Play.vue */ "./node_modules/vue-material-design-icons/Play.vue");var y=a.n(f),k=a(4505),w=a(1804);const S={name:"NcModal",components:{NcActions:l.default,ChevronLeft:A(),ChevronRight:h(),Close:v(),Pause:b(),Play:y(),NcButton:c.default},directives:{tooltip:u.default},mixins:[s.Z],props:{name:{type:String,default:""},hasPrevious:{type:Boolean,default:!1},hasNext:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},enableSlideshow:{type:Boolean,default:!1},slideshowDelay:{type:Number,default:5e3},slideshowPaused:{type:Boolean,default:!1},enableSwipe:{type:Boolean,default:!0},spreadNavigation:{type:Boolean,default:!1},size:{type:String,default:"normal",validator:e=>["small","normal","large","full"].includes(e)},canClose:{type:Boolean,default:!0},dark:{type:Boolean,default:!1},container:{type:[String,null],default:"body"},closeButtonContained:{type:Boolean,default:!0},additionalTrapElements:{type:Array,default:()=>[]},inlineActions:{type:Number,default:0},show:{type:Boolean,default:void 0}},emits:["previous","next","close","update:show"],data:()=>({mc:null,playing:!1,slideshowTimeout:null,iconSize:24,focusTrap:null,randId:(0,r.Z)(),internalShow:!0}),computed:{showModal(){return void 0===this.show?this.internalShow:this.show},modalTransitionName(){return"modal-".concat(this.outTransition?"out":"in")},playPauseName(){return this.playing?(0,n.t)("Pause slideshow"):(0,n.t)("Start slideshow")},cssVariables(){return{"--slideshow-duration":this.slideshowDelay+"ms","--icon-size":this.iconSize+"px"}},closeButtonAriaLabel:()=>(0,n.t)("Close modal"),prevButtonAriaLabel:()=>(0,n.t)("Previous"),nextButtonAriaLabel:()=>(0,n.t)("Next")},watch:{slideshowPaused(e){this.slideshowTimeout&&(e?this.slideshowTimeout.pause():this.slideshowTimeout.start())},additionalTrapElements(e){if(this.focusTrap){const t=this.$refs.mask;this.focusTrap.updateContainerElements([t,...e])}}},beforeMount(){window.addEventListener("keydown",this.handleKeydown)},beforeDestroy(){window.removeEventListener("keydown",this.handleKeydown),this.mc.stop()},mounted(){if(this.useFocusTrap(),this.mc=(0,w.useSwipe)(this.$refs.mask,{onSwipeEnd:this.handleSwipe}),this.container)if("body"===this.container)document.body.insertBefore(this.$el,document.body.lastChild);else{document.querySelector(this.container).appendChild(this.$el)}},destroyed(){this.clearFocusTrap(),this.$el.remove()},methods:{previous(e){this.hasPrevious&&(e&&this.resetSlideshow(),this.$emit("previous",e))},next(e){this.hasNext&&(e&&this.resetSlideshow(),this.$emit("next",e))},close(e){this.canClose&&(this.internalShow=!1,this.$emit("update:show",!1),setTimeout((()=>{this.$emit("close",e)}),300))},handleKeydown(e){switch(e.keyCode){case 37:this.previous(e);break;case 39:this.next(e);break;case 27:this.close(e)}},handleSwipe(e,t){this.enableSwipe&&("left"===t?this.next(e):"right"===t&&this.previous(e))},togglePlayPause(){this.playing=!this.playing,this.playing?this.handleSlideshow():this.clearSlideshowTimeout()},resetSlideshow(){this.playing=!this.playing,this.clearSlideshowTimeout(),this.$nextTick((function(){this.togglePlayPause()}))},handleSlideshow(){this.playing=!0,this.hasNext?this.slideshowTimeout=new d((()=>{this.next(),this.handleSlideshow()}),this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout(){this.slideshowTimeout&&this.slideshowTimeout.clear()},async useFocusTrap(){if(!this.showModal||this.focusTrap)return;const e=this.$refs.mask;await this.$nextTick();const t={allowOutsideClick:!0,fallbackFocus:e,trapStack:(0,i.L)()};this.focusTrap=(0,k.createFocusTrap)(e,t),this.focusTrap.activate()},clearFocusTrap(){var e;this.focusTrap&&(null===(e=this.focusTrap)||void 0===e||e.deactivate(),this.focusTrap=null)}}},x=S;var z=a(3379),N=a.n(z),j=a(7795),P=a.n(j),E=a(569),B=a.n(E),_=a(3565),T=a.n(_),D=a(9216),F=a.n(D),O=a(4589),G=a.n(O),$=a(2482),M={};M.styleTagTransform=G(),M.setAttributes=T(),M.insert=B().bind(null,"head"),M.domAPI=P(),M.insertStyleElement=F();N()($.Z,M);$.Z&&$.Z.locals&&$.Z.locals;var I=a(1900),U=a(9989),L=a.n(U),R=(0,I.Z)(x,(function(){var e=this,t=e._self._c;return t("transition",{attrs:{name:"fade",appear:""},on:{"after-enter":e.useFocusTrap,"before-leave":e.clearFocusTrap}},[t("div",{directives:[{name:"show",rawName:"v-show",value:e.showModal,expression:"showModal"}],ref:"mask",staticClass:"modal-mask",class:{"modal-mask--dark":e.dark},style:e.cssVariables,attrs:{role:"dialog","aria-modal":"true","aria-labelledby":"modal-name-"+e.randId,"aria-describedby":"modal-description-"+e.randId,tabindex:"-1"}},[t("transition",{attrs:{name:"fade-visibility",appear:""}},[t("div",{staticClass:"modal-header"},[""!==e.name.trim()?t("h2",{staticClass:"modal-name",attrs:{id:"modal-name-"+e.randId}},[e._v("\n\t\t\t\t\t"+e._s(e.name)+"\n\t\t\t\t")]):e._e(),e._v(" "),t("div",{staticClass:"icons-menu"},[e.hasNext&&e.enableSlideshow?t("button",{directives:[{name:"tooltip",rawName:"v-tooltip.auto",value:e.playPauseName,expression:"playPauseName",modifiers:{auto:!0}}],staticClass:"play-pause-icons",class:{"play-pause-icons--paused":e.slideshowPaused},attrs:{type:"button"},on:{click:e.togglePlayPause}},[e.playing?t("Pause",{staticClass:"play-pause-icons__pause",attrs:{size:e.iconSize}}):t("Play",{staticClass:"play-pause-icons__play",attrs:{size:e.iconSize}}),e._v(" "),t("span",{staticClass:"hidden-visually"},[e._v("\n\t\t\t\t\t\t\t"+e._s(e.playPauseName)+"\n\t\t\t\t\t\t")]),e._v(" "),e.playing?t("svg",{staticClass:"progress-ring",attrs:{height:"50",width:"50"}},[t("circle",{staticClass:"progress-ring__circle",attrs:{stroke:"white","stroke-width":"2",fill:"transparent",r:"15",cx:"25",cy:"25"}})]):e._e()],1):e._e(),e._v(" "),t("NcActions",{staticClass:"header-actions",attrs:{inline:e.inlineActions}},[e._t("actions")],2),e._v(" "),e.canClose&&!e.closeButtonContained?t("NcButton",{staticClass:"header-close",attrs:{"aria-label":e.closeButtonAriaLabel,type:"tertiary"},on:{click:e.close},scopedSlots:e._u([{key:"icon",fn:function(){return[t("Close",{attrs:{size:e.iconSize}})]},proxy:!0}],null,!1,1841713362)}):e._e()],1)])]),e._v(" "),t("transition",{attrs:{name:e.modalTransitionName,appear:""}},[t("div",{directives:[{name:"show",rawName:"v-show",value:e.showModal,expression:"showModal"}],staticClass:"modal-wrapper",class:["modal-wrapper--".concat(e.size),e.spreadNavigation?"modal-wrapper--spread-navigation":""],on:{mousedown:function(t){return t.target!==t.currentTarget?null:e.close.apply(null,arguments)}}},[t("transition",{attrs:{name:"fade-visibility",appear:""}},[t("NcButton",{directives:[{name:"show",rawName:"v-show",value:e.hasPrevious,expression:"hasPrevious"}],staticClass:"prev",class:{invisible:!e.hasPrevious},attrs:{type:"tertiary-no-background","aria-label":e.prevButtonAriaLabel},on:{click:e.previous},scopedSlots:e._u([{key:"icon",fn:function(){return[t("ChevronLeft",{attrs:{size:40}})]},proxy:!0}])})],1),e._v(" "),t("div",{staticClass:"modal-container",attrs:{id:"modal-description-"+e.randId}},[e._t("default"),e._v(" "),e.canClose&&e.closeButtonContained?t("NcButton",{staticClass:"modal-container__close",attrs:{type:"tertiary","aria-label":e.closeButtonAriaLabel},on:{click:e.close},scopedSlots:e._u([{key:"icon",fn:function(){return[t("Close",{attrs:{size:20}})]},proxy:!0}],null,!1,2121748766)}):e._e()],2),e._v(" "),t("transition",{attrs:{name:"fade-visibility",appear:""}},[t("NcButton",{directives:[{name:"show",rawName:"v-show",value:e.hasNext,expression:"hasNext"}],staticClass:"next",class:{invisible:!e.hasNext},attrs:{type:"tertiary-no-background","aria-label":e.nextButtonAriaLabel},on:{click:e.next},scopedSlots:e._u([{key:"icon",fn:function(){return[t("ChevronRight",{attrs:{size:40}})]},proxy:!0}])})],1)],1)])],1)])}),[],!1,null,"234c4d21",null);"function"==typeof L()&&L()(R);const q=R.exports;(0,o.Z)(q);const Z=q},2297:(e,t,a)=>{"use strict";a.d(t,{default:()=>z});var o=a(9454),i=a(4505),n=a(1206);const r={name:"NcPopover",components:{Dropdown:o.Dropdown},inheritAttrs:!1,props:{popoverBaseClass:{type:String,default:""},focusTrap:{type:Boolean,default:!0},setReturnFocus:{default:void 0,type:[HTMLElement,SVGElement,String,Boolean]}},emits:["after-show","after-hide"],beforeDestroy(){this.clearFocusTrap()},methods:{async useFocusTrap(){var e,t;if(await this.$nextTick(),!this.focusTrap)return;const a=null===(e=this.$refs.popover)||void 0===e||null===(t=e.$refs.popperContent)||void 0===t?void 0:t.$el;a&&(this.$focusTrap=(0,i.createFocusTrap)(a,{escapeDeactivates:!1,allowOutsideClick:!0,setReturnFocus:this.setReturnFocus,trapStack:(0,n.L)()}),this.$focusTrap.activate())},clearFocusTrap(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{var t;null===(t=this.$focusTrap)||void 0===t||t.deactivate(e),this.$focusTrap=null}catch(e){console.warn(e)}},afterShow(){this.$nextTick((()=>{this.$emit("after-show"),this.useFocusTrap()}))},afterHide(){this.$emit("after-hide"),this.clearFocusTrap()}}},s=r;var l=a(3379),c=a.n(l),d=a(7795),u=a.n(d),p=a(569),A=a.n(p),m=a(3565),h=a.n(m),g=a(9216),v=a.n(g),C=a(4589),b=a.n(C),f=a(1625),y={};y.styleTagTransform=b(),y.setAttributes=h(),y.insert=A().bind(null,"head"),y.domAPI=u(),y.insertStyleElement=v();c()(f.Z,y);f.Z&&f.Z.locals&&f.Z.locals;var k=a(1900),w=a(2405),S=a.n(w),x=(0,k.Z)(s,(function(){var e=this;return(0,e._self._c)("Dropdown",e._g(e._b({ref:"popover",attrs:{distance:10,"arrow-padding":10,"no-auto-focus":!0,"popper-class":e.popoverBaseClass},on:{"apply-show":e.afterShow,"apply-hide":e.afterHide},scopedSlots:e._u([{key:"popper",fn:function(){return[e._t("default")]},proxy:!0}],null,!0)},"Dropdown",e.$attrs,!1),e.$listeners),[e._t("trigger")],2)}),[],!1,null,null,null);"function"==typeof S()&&S()(x);const z=x.exports},336:(e,t,a)=>{"use strict";a.d(t,{default:()=>C});var o=a(9454),i=a(3379),n=a.n(i),r=a(7795),s=a.n(r),l=a(569),c=a.n(l),d=a(3565),u=a.n(d),p=a(9216),A=a.n(p),m=a(4589),h=a.n(m),g=a(8384),v={};v.styleTagTransform=h(),v.setAttributes=u(),v.insert=c().bind(null,"head"),v.domAPI=s(),v.insertStyleElement=A();n()(g.Z,v);g.Z&&g.Z.locals&&g.Z.locals;o.options.themes.tooltip.html=!1,o.options.themes.tooltip.delay={show:500,hide:200},o.options.themes.tooltip.distance=10,o.options.themes.tooltip["arrow-padding"]=3;const C=o.VTooltip},932:(e,t,a)=>{"use strict";a.d(t,{n:()=>r,t:()=>s});var o=a(7931);const i=(0,o.getGettextBuilder)().detectLocale();[{locale:"ar",translations:{"{tag} (invisible)":"{tag} (غير مرئي)","{tag} (restricted)":"{tag} (مقيد)",Actions:"الإجراءات",Activities:"النشاطات","Animals & Nature":"الحيوانات والطبيعة","Anything shared with the same group of people will show up here":"أي مادة تمت مشاركتها مع نفس المجموعة من الأشخاص سيتم عرضها هنا","Avatar of {displayName}":"صورة {displayName} الرمزية","Avatar of {displayName}, {status}":"صورة {displayName} الرمزية، {status}","Cancel changes":"إلغاء التغييرات","Change title":"تغيير العنوان",Choose:"إختيار","Clear text":"مسح النص",Close:"أغلق","Close modal":"قفل الشرط","Close navigation":"إغلاق المتصفح","Close sidebar":"قفل الشريط الجانبي","Confirm changes":"تأكيد التغييرات",Custom:"مخصص","Edit item":"تعديل عنصر","Error getting related resources":"خطأ في تحصيل مصادر ذات صلة","External documentation for {title}":"الوثائق الخارجية لـ{title}",Favorite:"مفضلة",Flags:"الأعلام","Food & Drink":"الطعام والشراب","Frequently used":"كثيرا ما تستخدم",Global:"عالمي","Go back to the list":"العودة إلى القائمة","Hide password":"إخفاء كلمة السر","Message limit of {count} characters reached":"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف","More items …":"عناصر أخرى ...",Next:"التالي","No emoji found":"لم يتم العثور على أي رمز تعبيري","No results":"ليس هناك أية نتيجة",Objects:"الأشياء",Open:"فتح",'Open link to "{resourceTitle}"':'فتح رابط إلى "{resourceTitle}"',"Open navigation":"فتح المتصفح","Password is secure":"كلمة السر مُؤمّنة","Pause slideshow":"إيقاف العرض مؤقتًا","People & Body":"الناس والجسم","Pick an emoji":"اختر رمزًا تعبيريًا","Please select a time zone:":"الرجاء تحديد المنطقة الزمنية:",Previous:"السابق","Related resources":"مصادر ذات صلة",Search:"بحث","Search results":"نتائج البحث","Select a tag":"اختر علامة",Settings:"الإعدادات","Settings navigation":"إعدادات المتصفح","Show password":"أعرض كلمة السر","Smileys & Emotion":"الوجوه و الرموز التعبيرية","Start slideshow":"بدء العرض",Submit:"إرسال",Symbols:"الرموز","Travel & Places":"السفر والأماكن","Type to search time zone":"اكتب للبحث عن منطقة زمنية","Unable to search the group":"تعذر البحث في المجموعة","Undo changes":"التراجع عن التغييرات","Write message, @ to mention someone, : for emoji autocompletion …":"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ..."}},{locale:"br",translations:{"{tag} (invisible)":"{tag} (diwelus)","{tag} (restricted)":"{tag} (bevennet)",Actions:"Oberioù",Activities:"Oberiantizoù","Animals & Nature":"Loened & Natur",Choose:"Dibab",Close:"Serriñ",Custom:"Personelañ",Flags:"Bannieloù","Food & Drink":"Boued & Evajoù","Frequently used":"Implijet alies",Next:"Da heul","No emoji found":"Emoji ebet kavet","No results":"Disoc'h ebet",Objects:"Traoù","Pause slideshow":"Arsav an diaporama","People & Body":"Tud & Korf","Pick an emoji":"Choaz un emoji",Previous:"A-raok",Search:"Klask","Search results":"Disoc'hoù an enklask","Select a tag":"Choaz ur c'hlav",Settings:"Arventennoù","Smileys & Emotion":"Smileyioù & Fromoù","Start slideshow":"Kregiñ an diaporama",Symbols:"Arouezioù","Travel & Places":"Beaj & Lec'hioù","Unable to search the group":"Dibosupl eo klask ar strollad"}},{locale:"ca",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringit)",Actions:"Accions",Activities:"Activitats","Animals & Nature":"Animals i natura","Anything shared with the same group of people will show up here":"Qualsevol cosa compartida amb el mateix grup de persones es mostrarà aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancel·la els canvis","Change title":"Canviar títol",Choose:"Tria","Clear text":"Netejar text",Close:"Tanca","Close modal":"Tancar el mode","Close navigation":"Tanca la navegació","Close sidebar":"Tancar la barra lateral","Confirm changes":"Confirmeu els canvis",Custom:"Personalitzat","Edit item":"Edita l'element","Error getting related resources":"Error obtenint els recursos relacionats","Error parsing svg":"Error en l'anàlisi del svg","External documentation for {title}":"Documentació externa per a {title}",Favorite:"Preferit",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment",Global:"Global","Go back to the list":"Torna a la llista","Hide password":"Amagar contrasenya","Message limit of {count} characters reached":"S'ha arribat al límit de {count} caràcters per missatge","More items …":"Més artícles...",Next:"Següent","No emoji found":"No s'ha trobat cap emoji","No results":"Sense resultats",Objects:"Objectes",Open:"Obrir",'Open link to "{resourceTitle}"':'Obrir enllaç a "{resourceTitle}"',"Open navigation":"Obre la navegació","Password is secure":"Contrasenya segura<br>","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji","Please select a time zone:":"Seleccioneu una zona horària:",Previous:"Anterior","Related resources":"Recursos relacionats",Search:"Cerca","Search results":"Resultats de cerca","Select a tag":"Seleccioneu una etiqueta",Settings:"Paràmetres","Settings navigation":"Navegació d'opcions","Show password":"Mostrar contrasenya","Smileys & Emotion":"Cares i emocions","Start slideshow":"Inicia la presentació",Submit:"Envia",Symbols:"Símbols","Travel & Places":"Viatges i llocs","Type to search time zone":"Escriviu per cercar la zona horària","Unable to search the group":"No es pot cercar el grup","Undo changes":"Desfés els canvis",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escriu missatge, fes servir "@" per esmentar algú, fes servir ":" per autocompletar emojis...'}},{locale:"cs_CZ",translations:{"{tag} (invisible)":"{tag} (neviditelné)","{tag} (restricted)":"{tag} (omezené)",Actions:"Akce",Activities:"Aktivity","Animals & Nature":"Zvířata a příroda","Anything shared with the same group of people will show up here":"Cokoli nasdíleného stejné skupině lidí se zobrazí zde","Avatar of {displayName}":"Zástupný obrázek uživatele {displayName}","Avatar of {displayName}, {status}":"Zástupný obrázek uživatele {displayName}, {status}","Cancel changes":"Zrušit změny","Change title":"Změnit nadpis",Choose:"Zvolit","Clear text":"Čitelný text",Close:"Zavřít","Close modal":"Zavřít dialogové okno","Close navigation":"Zavřít navigaci","Close sidebar":"Zavřít postranní panel","Confirm changes":"Potvrdit změny",Custom:"Uživatelsky určené","Edit item":"Upravit položku","Error getting related resources":"Chyba při získávání souvisejících prostředků","Error parsing svg":"Chyba při zpracovávání svg","External documentation for {title}":"Externí dokumentace k {title}",Favorite:"Oblíbené",Flags:"Příznaky","Food & Drink":"Jídlo a pití","Frequently used":"Často používané",Global:"Globální","Go back to the list":"Jít zpět na seznam","Hide password":"Skrýt heslo","Message limit of {count} characters reached":"Dosaženo limitu počtu ({count}) znaků zprávy","More items …":"Další položky…",Next:"Následující","No emoji found":"Nenalezeno žádné emoji","No results":"Nic nenalezeno",Objects:"Objekty",Open:"Otevřít",'Open link to "{resourceTitle}"':"Otevřít odkaz na „{resourceTitle}“","Open navigation":"Otevřít navigaci","Password is secure":"Heslo je bezpečné","Pause slideshow":"Pozastavit prezentaci","People & Body":"Lidé a tělo","Pick an emoji":"Vybrat emoji","Please select a time zone:":"Vyberte časovou zónu:",Previous:"Předchozí","Related resources":"Související prostředky",Search:"Hledat","Search results":"Výsledky hledání","Select a tag":"Vybrat štítek",Settings:"Nastavení","Settings navigation":"Pohyb po nastavení","Show password":"Zobrazit heslo","Smileys & Emotion":"Úsměvy a emoce","Start slideshow":"Spustit prezentaci",Submit:"Odeslat",Symbols:"Symboly","Travel & Places":"Cestování a místa","Type to search time zone":"Psaním vyhledejte časovou zónu","Unable to search the group":"Nedaří se hledat skupinu","Undo changes":"Vzít změny zpět",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem „@“ (zavináč); automatické doplňování emotikonů zahájíte napsáním „:“ (dvojtečky)…"}},{locale:"da",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (begrænset)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr & Natur","Anything shared with the same group of people will show up here":"Alt der deles med samme gruppe af personer vil vises her","Avatar of {displayName}":"Avatar af {displayName}","Avatar of {displayName}, {status}":"Avatar af {displayName}, {status}","Cancel changes":"Annuller ændringer","Change title":"Ret titel",Choose:"Vælg","Clear text":"Ryd tekst",Close:"Luk","Close modal":"Luk vindue","Close navigation":"Luk navigation","Close sidebar":"Luk sidepanel","Confirm changes":"Bekræft ændringer",Custom:"Brugerdefineret","Edit item":"Rediger emne","Error getting related resources":"Kunne ikke hente tilknyttede data","Error parsing svg":"Fejl ved analysering af svg","External documentation for {title}":"Ekstern dokumentation for {title}",Favorite:"Favorit",Flags:"Flag","Food & Drink":"Mad & Drikke","Frequently used":"Ofte brugt",Global:"Global","Go back to the list":"Tilbage til listen","Hide password":"Skjul kodeord","Message limit of {count} characters reached":"Begrænsning på {count} tegn er nået","More items …":"Mere ...",Next:"Videre","No emoji found":"Ingen emoji fundet","No results":"Ingen resultater",Objects:"Objekter",Open:"Åbn",'Open link to "{resourceTitle}"':'Åbn link til "{resourceTitle}"',"Open navigation":"Åbn navigation","Password is secure":"Kodeordet er sikkert","Pause slideshow":"Suspender fremvisning","People & Body":"Mennesker & Menneskekroppen","Pick an emoji":"Vælg en emoji","Please select a time zone:":"Vælg venligst en tidszone:",Previous:"Forrige","Related resources":"Relaterede emner",Search:"Søg","Search results":"Søgeresultater","Select a tag":"Vælg et mærke",Settings:"Indstillinger","Settings navigation":"Naviger i indstillinger","Show password":"Vis kodeord","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start fremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Rejser & Rejsemål","Type to search time zone":"Indtast for at søge efter tidszone","Unable to search the group":"Kan ikke søge på denne gruppe","Undo changes":"Fortryd ændringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv besked, brug "@" for at nævne nogen, brug ":" til emoji-autofuldførelse ...'}},{locale:"de",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Gegenstände",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte wählen Sie eine Zeitzone:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um Zeitzone zu suchen","Unable to search the group":"Die Gruppe konnte nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"de_DE",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Objekte",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte eine Zeitzone auswählen:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um eine Zeitzone zu suchen","Unable to search the group":"Die Gruppe kann nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"el",translations:{"{tag} (invisible)":"{tag} (αόρατο)","{tag} (restricted)":"{tag} (περιορισμένο)",Actions:"Ενέργειες",Activities:"Δραστηριότητες","Animals & Nature":"Ζώα & Φύση","Anything shared with the same group of people will show up here":"Οτιδήποτε μοιράζεται με την ίδια ομάδα ατόμων θα εμφανίζεται εδώ","Avatar of {displayName}":"Άβαταρ του {displayName}","Avatar of {displayName}, {status}":"Άβαταρ του {displayName}, {status}","Cancel changes":"Ακύρωση αλλαγών","Change title":"Αλλαγή τίτλου",Choose:"Επιλογή","Clear text":"Εκκαθάριση κειμένου",Close:"Κλείσιμο","Close modal":"Βοηθητικό κλείσιμο","Close navigation":"Κλείσιμο πλοήγησης","Close sidebar":"Κλείσιμο πλευρικής μπάρας","Confirm changes":"Επιβεβαίωση αλλαγών",Custom:"Προσαρμογή","Edit item":"Επεξεργασία","Error getting related resources":"Σφάλμα λήψης σχετικών πόρων","Error parsing svg":"Σφάλμα ανάλυσης svg","External documentation for {title}":"Εξωτερική τεκμηρίωση για {title}",Favorite:"Αγαπημένα",Flags:"Σημαίες","Food & Drink":"Φαγητό & Ποτό","Frequently used":"Συχνά χρησιμοποιούμενο",Global:"Καθολικό","Go back to the list":"Επιστροφή στην αρχική λίστα ","Hide password":"Απόκρυψη κωδικού πρόσβασης","Message limit of {count} characters reached":"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος","More items …":"Περισσότερα στοιχεία …",Next:"Επόμενο","No emoji found":"Δεν βρέθηκε emoji","No results":"Κανένα αποτέλεσμα",Objects:"Αντικείμενα",Open:"Άνοιγμα",'Open link to "{resourceTitle}"':'Άνοιγμα συνδέσμου στο "{resourceTitle}"',"Open navigation":"Άνοιγμα πλοήγησης","Password is secure":"Ο κωδικός πρόσβασης είναι ασφαλής","Pause slideshow":"Παύση προβολής διαφανειών","People & Body":"Άνθρωποι & Σώμα","Pick an emoji":"Επιλέξτε ένα emoji","Please select a time zone:":"Παρακαλούμε επιλέξτε μια ζώνη ώρας:",Previous:"Προηγούμενο","Related resources":"Σχετικοί πόροι",Search:"Αναζήτηση","Search results":"Αποτελέσματα αναζήτησης","Select a tag":"Επιλογή ετικέτας",Settings:"Ρυθμίσεις","Settings navigation":"Πλοήγηση ρυθμίσεων","Show password":"Εμφάνιση κωδικού πρόσβασης","Smileys & Emotion":"Φατσούλες & Συναίσθημα","Start slideshow":"Έναρξη προβολής διαφανειών",Submit:"Υποβολή",Symbols:"Σύμβολα","Travel & Places":"Ταξίδια & Τοποθεσίες","Type to search time zone":"Πληκτρολογήστε για αναζήτηση ζώνης ώρας","Unable to search the group":"Δεν είναι δυνατή η αναζήτηση της ομάδας","Undo changes":"Αναίρεση Αλλαγών",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Γράψτε μήνυμα, χρησιμοποιείστε "@" για να αναφέρετε κάποιον, χρησιμοποιείστε ":" για αυτόματη συμπλήρωση emoji …'}},{locale:"en_GB",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restricted)",Actions:"Actions",Activities:"Activities","Animals & Nature":"Animals & Nature","Anything shared with the same group of people will show up here":"Anything shared with the same group of people will show up here","Avatar of {displayName}":"Avatar of {displayName}","Avatar of {displayName}, {status}":"Avatar of {displayName}, {status}","Cancel changes":"Cancel changes","Change title":"Change title",Choose:"Choose","Clear text":"Clear text",Close:"Close","Close modal":"Close modal","Close navigation":"Close navigation","Close sidebar":"Close sidebar","Confirm changes":"Confirm changes",Custom:"Custom","Edit item":"Edit item","Error getting related resources":"Error getting related resources","Error parsing svg":"Error parsing svg","External documentation for {title}":"External documentation for {title}",Favorite:"Favourite",Flags:"Flags","Food & Drink":"Food & Drink","Frequently used":"Frequently used",Global:"Global","Go back to the list":"Go back to the list","Hide password":"Hide password","Message limit of {count} characters reached":"Message limit of {count} characters reached","More items …":"More items …",Next:"Next","No emoji found":"No emoji found","No results":"No results",Objects:"Objects",Open:"Open",'Open link to "{resourceTitle}"':'Open link to "{resourceTitle}"',"Open navigation":"Open navigation","Password is secure":"Password is secure","Pause slideshow":"Pause slideshow","People & Body":"People & Body","Pick an emoji":"Pick an emoji","Please select a time zone:":"Please select a time zone:",Previous:"Previous","Related resources":"Related resources",Search:"Search","Search results":"Search results","Select a tag":"Select a tag",Settings:"Settings","Settings navigation":"Settings navigation","Show password":"Show password","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start slideshow",Submit:"Submit",Symbols:"Symbols","Travel & Places":"Travel & Places","Type to search time zone":"Type to search time zone","Unable to search the group":"Unable to search the group","Undo changes":"Undo changes",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Write message, use "@" to mention someone, use ":" for emoji autocompletion …'}},{locale:"eo",translations:{"{tag} (invisible)":"{tag} (kaŝita)","{tag} (restricted)":"{tag} (limigita)",Actions:"Agoj",Activities:"Aktiveco","Animals & Nature":"Bestoj & Naturo",Choose:"Elektu",Close:"Fermu",Custom:"Propra",Flags:"Flagoj","Food & Drink":"Manĝaĵo & Trinkaĵo","Frequently used":"Ofte uzataj","Message limit of {count} characters reached":"La limo je {count} da literoj atingita",Next:"Sekva","No emoji found":"La emoĝio forestas","No results":"La rezulto forestas",Objects:"Objektoj","Pause slideshow":"Payzi bildprezenton","People & Body":"Homoj & Korpo","Pick an emoji":"Elekti emoĝion ",Previous:"Antaŭa",Search:"Serĉi","Search results":"Serĉrezultoj","Select a tag":"Elektu etikedon",Settings:"Agordo","Settings navigation":"Agorda navigado","Smileys & Emotion":"Ridoj kaj Emocioj","Start slideshow":"Komenci bildprezenton",Symbols:"Signoj","Travel & Places":"Vojaĵoj & Lokoj","Unable to search the group":"Ne eblas serĉi en la grupo","Write message, @ to mention someone …":"Mesaĝi, uzu @ por mencii iun ..."}},{locale:"es",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringido)",Actions:"Acciones",Activities:"Actividades","Animals & Nature":"Animales y naturaleza","Anything shared with the same group of people will show up here":"Cualquier cosa que sea compartida con el mismo grupo de personas se mostrará aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar cambios","Change title":"Cambiar título",Choose:"Elegir","Clear text":"Limpiar texto",Close:"Cerrar","Close modal":"Cerrar modal","Close navigation":"Cerrar navegación","Close sidebar":"Cerrar barra lateral","Confirm changes":"Confirmar cambios",Custom:"Personalizado","Edit item":"Editar elemento","Error getting related resources":"Se encontró un error al obtener los recursos relacionados","Error parsing svg":"Error procesando svg","External documentation for {title}":"Documentacion externa de {title}",Favorite:"Favorito",Flags:"Banderas","Food & Drink":"Comida y bebida","Frequently used":"Usado con frecuenca",Global:"Global","Go back to the list":"Volver a la lista","Hide password":"Ocultar contraseña","Message limit of {count} characters reached":"El mensaje ha alcanzado el límite de {count} caracteres","More items …":"Más ítems...",Next:"Siguiente","No emoji found":"No hay ningún emoji","No results":" Ningún resultado",Objects:"Objetos",Open:"Abrir",'Open link to "{resourceTitle}"':'Abrir enlace a "{resourceTitle}"',"Open navigation":"Abrir navegación","Password is secure":"La contraseña es segura","Pause slideshow":"Pausar la presentación ","People & Body":"Personas y cuerpos","Pick an emoji":"Elegir un emoji","Please select a time zone:":"Por favor elige un huso de horario:",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Buscar","Search results":"Resultados de la búsqueda","Select a tag":"Seleccione una etiqueta",Settings:"Ajustes","Settings navigation":"Navegación por ajustes","Show password":"Mostrar contraseña","Smileys & Emotion":"Smileys y emoticonos","Start slideshow":"Iniciar la presentación",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viajes y lugares","Type to search time zone":"Escribe para buscar un huso de horario","Unable to search the group":"No es posible buscar en el grupo","Undo changes":"Deshacer cambios",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escribir mensaje, utilice "@" para mencionar a alguien, utilice ":" para autocompletado de emojis ...'}},{locale:"eu",translations:{"{tag} (invisible)":"{tag} (ikusezina)","{tag} (restricted)":"{tag} (mugatua)",Actions:"Ekintzak",Activities:"Jarduerak","Animals & Nature":"Animaliak eta Natura","Anything shared with the same group of people will show up here":"Pertsona-talde berarekin partekatutako edozer agertuko da hemen","Avatar of {displayName}":"{displayName}-(e)n irudia","Avatar of {displayName}, {status}":"{displayName} -(e)n irudia, {status}","Cancel changes":"Ezeztatu aldaketak","Change title":"Aldatu titulua",Choose:"Aukeratu","Clear text":"Garbitu testua",Close:"Itxi","Close modal":"Itxi modala","Close navigation":"Itxi nabigazioa","Close sidebar":"Itxi albo-barra","Confirm changes":"Baieztatu aldaketak",Custom:"Pertsonalizatua","Edit item":"Editatu elementua","Error getting related resources":"Errorea erlazionatutako baliabideak lortzerakoan","Error parsing svg":"Errore bat gertatu da svg-a analizatzean","External documentation for {title}":"Kanpoko dokumentazioa {title}(r)entzat",Favorite:"Gogokoa",Flags:"Banderak","Food & Drink":"Janaria eta edariak","Frequently used":"Askotan erabilia",Global:"Globala","Go back to the list":"Bueltatu zerrendara","Hide password":"Ezkutatu pasahitza","Message limit of {count} characters reached":"Mezuaren {count} karaketere-limitera heldu zara","More items …":"Elementu gehiago …",Next:"Hurrengoa","No emoji found":"Ez da emojirik aurkitu","No results":"Emaitzarik ez",Objects:"Objektuak",Open:"Ireki",'Open link to "{resourceTitle}"':'Ireki esteka: "{resourceTitle}"',"Open navigation":"Ireki nabigazioa","Password is secure":"Pasahitza segurua da","Pause slideshow":"Pausatu diaporama","People & Body":"Jendea eta gorputza","Pick an emoji":"Hautatu emoji bat","Please select a time zone:":"Mesedez hautatu ordu-zona bat:",Previous:"Aurrekoa","Related resources":"Erlazionatutako baliabideak",Search:"Bilatu","Search results":"Bilaketa emaitzak","Select a tag":"Hautatu etiketa bat",Settings:"Ezarpenak","Settings navigation":"Nabigazio ezarpenak","Show password":"Erakutsi pasahitza","Smileys & Emotion":"Smileyak eta emozioa","Start slideshow":"Hasi diaporama",Submit:"Bidali",Symbols:"Sinboloak","Travel & Places":"Bidaiak eta lekuak","Type to search time zone":"Idatzi ordu-zona bat bilatzeko","Unable to search the group":"Ezin izan da taldea bilatu","Undo changes":"Aldaketak desegin",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Idatzi mezua, erabili "@" norbait aipatzeko, erabili ":" emojiak automatikoki osatzeko...'}},{locale:"fi_FI",translations:{"{tag} (invisible)":"{tag} (näkymätön)","{tag} (restricted)":"{tag} (rajoitettu)",Actions:"Toiminnot",Activities:"Aktiviteetit","Animals & Nature":"Eläimet & luonto","Avatar of {displayName}":"Käyttäjän {displayName} avatar","Avatar of {displayName}, {status}":"Käyttäjän {displayName} avatar, {status}","Cancel changes":"Peruuta muutokset",Choose:"Valitse",Close:"Sulje","Close navigation":"Sulje navigaatio","Confirm changes":"Vahvista muutokset",Custom:"Mukautettu","Edit item":"Muokkaa kohdetta","External documentation for {title}":"Ulkoinen dokumentaatio kohteelle {title}",Flags:"Liput","Food & Drink":"Ruoka & juoma","Frequently used":"Usein käytetyt",Global:"Yleinen","Go back to the list":"Siirry takaisin listaan","Message limit of {count} characters reached":"Viestin merkken enimmäisimäärä {count} täynnä ",Next:"Seuraava","No emoji found":"Emojia ei löytynyt","No results":"Ei tuloksia",Objects:"Esineet & asiat","Open navigation":"Avaa navigaatio","Pause slideshow":"Keskeytä diaesitys","People & Body":"Ihmiset & keho","Pick an emoji":"Valitse emoji","Please select a time zone:":"Valitse aikavyöhyke:",Previous:"Edellinen",Search:"Etsi","Search results":"Hakutulokset","Select a tag":"Valitse tagi",Settings:"Asetukset","Settings navigation":"Asetusnavigaatio","Smileys & Emotion":"Hymiöt & tunteet","Start slideshow":"Aloita diaesitys",Submit:"Lähetä",Symbols:"Symbolit","Travel & Places":"Matkustus & kohteet","Type to search time zone":"Kirjoita etsiäksesi aikavyöhyke","Unable to search the group":"Ryhmää ei voi hakea","Undo changes":"Kumoa muutokset","Write message, @ to mention someone, : for emoji autocompletion …":"Kirjoita viesti, @ mainitaksesi käyttäjän, : emojin automaattitäydennykseen…"}},{locale:"fr",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restreint)",Actions:"Actions",Activities:"Activités","Animals & Nature":"Animaux & Nature","Anything shared with the same group of people will show up here":"Tout ce qui est partagé avec le même groupe de personnes apparaîtra ici","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Annuler les modifications","Change title":"Modifier le titre",Choose:"Choisir","Clear text":"Effacer le texte",Close:"Fermer","Close modal":"Fermer la fenêtre","Close navigation":"Fermer la navigation","Close sidebar":"Fermer la barre latérale","Confirm changes":"Confirmer les modifications",Custom:"Personnalisé","Edit item":"Éditer l'élément","Error getting related resources":"Erreur à la récupération des ressources liées","Error parsing svg":"Erreur d'analyse SVG","External documentation for {title}":"Documentation externe pour {title}",Favorite:"Favori",Flags:"Drapeaux","Food & Drink":"Nourriture & Boissons","Frequently used":"Utilisés fréquemment",Global:"Global","Go back to the list":"Retourner à la liste","Hide password":"Cacher le mot de passe","Message limit of {count} characters reached":"Limite de messages de {count} caractères atteinte","More items …":"Plus d'éléments...",Next:"Suivant","No emoji found":"Pas d’émoji trouvé","No results":"Aucun résultat",Objects:"Objets",Open:"Ouvrir",'Open link to "{resourceTitle}"':'Ouvrir le lien vers "{resourceTitle}"',"Open navigation":"Ouvrir la navigation","Password is secure":"Le mot de passe est sécurisé","Pause slideshow":"Mettre le diaporama en pause","People & Body":"Personnes & Corps","Pick an emoji":"Choisissez un émoji","Please select a time zone:":"Sélectionnez un fuseau horaire : ",Previous:"Précédent","Related resources":"Ressources liées",Search:"Chercher","Search results":"Résultats de recherche","Select a tag":"Sélectionnez une balise",Settings:"Paramètres","Settings navigation":"Navigation dans les paramètres","Show password":"Afficher le mot de passe","Smileys & Emotion":"Smileys & Émotions","Start slideshow":"Démarrer le diaporama",Submit:"Valider",Symbols:"Symboles","Travel & Places":"Voyage & Lieux","Type to search time zone":"Saisissez les premiers lettres pour rechercher un fuseau horaire","Unable to search the group":"Impossible de chercher le groupe","Undo changes":"Annuler les changements",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Écrire un message, utiliser "@" pour mentionner une personne, ":" pour l\'autocomplétion des émojis...'}},{locale:"gl",translations:{"{tag} (invisible)":"{tag} (invisíbel)","{tag} (restricted)":"{tag} (restrinxido)",Actions:"Accións",Activities:"Actividades","Animals & Nature":"Animais e natureza","Cancel changes":"Cancelar os cambios",Choose:"Escoller",Close:"Pechar","Confirm changes":"Confirma os cambios",Custom:"Personalizado","External documentation for {title}":"Documentación externa para {title}",Flags:"Bandeiras","Food & Drink":"Comida e bebida","Frequently used":"Usado con frecuencia","Message limit of {count} characters reached":"Acadouse o límite de {count} caracteres por mensaxe",Next:"Seguinte","No emoji found":"Non se atopou ningún «emoji»","No results":"Sen resultados",Objects:"Obxectos","Pause slideshow":"Pausar o diaporama","People & Body":"Persoas e corpo","Pick an emoji":"Escolla un «emoji»",Previous:"Anterir",Search:"Buscar","Search results":"Resultados da busca","Select a tag":"Seleccione unha etiqueta",Settings:"Axustes","Settings navigation":"Navegación polos axustes","Smileys & Emotion":"Sorrisos e emocións","Start slideshow":"Iniciar o diaporama",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viaxes e lugares","Unable to search the group":"Non foi posíbel buscar o grupo","Write message, @ to mention someone …":"Escriba a mensaxe, @ para mencionar a alguén…"}},{locale:"he",translations:{"{tag} (invisible)":"{tag} (נסתר)","{tag} (restricted)":"{tag} (מוגבל)",Actions:"פעולות",Activities:"פעילויות","Animals & Nature":"חיות וטבע",Choose:"בחירה",Close:"סגירה",Custom:"בהתאמה אישית",Flags:"דגלים","Food & Drink":"מזון ומשקאות","Frequently used":"בשימוש תדיר",Next:"הבא","No emoji found":"לא נמצא אמוג׳י","No results":"אין תוצאות",Objects:"חפצים","Pause slideshow":"השהיית מצגת","People & Body":"אנשים וגוף","Pick an emoji":"נא לבחור אמוג׳י",Previous:"הקודם",Search:"חיפוש","Search results":"תוצאות חיפוש","Select a tag":"בחירת תגית",Settings:"הגדרות","Smileys & Emotion":"חייכנים ורגשונים","Start slideshow":"התחלת המצגת",Symbols:"סמלים","Travel & Places":"טיולים ומקומות","Unable to search the group":"לא ניתן לחפש בקבוצה"}},{locale:"hu_HU",translations:{"{tag} (invisible)":"{tag} (láthatatlan)","{tag} (restricted)":"{tag} (korlátozott)",Actions:"Műveletek",Activities:"Tevékenységek","Animals & Nature":"Állatok és természet","Anything shared with the same group of people will show up here":"Minden, amit ugyanazzal a csoporttal oszt meg, itt fog megjelenni","Avatar of {displayName}":"{displayName} profilképe","Avatar of {displayName}, {status}":"{displayName} profilképe, {status}","Cancel changes":"Változtatások elvetése","Change title":"Cím megváltoztatása",Choose:"Válassszon","Clear text":"Szöveg törlése",Close:"Bezárás","Close modal":"Ablak bezárása","Close navigation":"Navigáció bezárása","Close sidebar":"Oldalsáv bezárása","Confirm changes":"Változtatások megerősítése",Custom:"Egyéni","Edit item":"Elem szerkesztése","Error getting related resources":"Hiba a kapcsolódó erőforrások lekérésekor","Error parsing svg":"Hiba az SVG feldolgozásakor","External documentation for {title}":"Külső dokumentáció ehhez: {title}",Favorite:"Kedvenc",Flags:"Zászlók","Food & Drink":"Étel és ital","Frequently used":"Gyakran használt",Global:"Globális","Go back to the list":"Ugrás vissza a listához","Hide password":"Jelszó elrejtése","Message limit of {count} characters reached":"{count} karakteres üzenetkorlát elérve","More items …":"További elemek...",Next:"Következő","No emoji found":"Nem található emodzsi","No results":"Nincs találat",Objects:"Tárgyak",Open:"Megnyitás",'Open link to "{resourceTitle}"':"A(z) „{resourceTitle}” hivatkozásának megnyitása","Open navigation":"Navigáció megnyitása","Password is secure":"A jelszó biztonságos","Pause slideshow":"Diavetítés szüneteltetése","People & Body":"Emberek és test","Pick an emoji":"Válasszon egy emodzsit","Please select a time zone:":"Válasszon időzónát:",Previous:"Előző","Related resources":"Kapcsolódó erőforrások",Search:"Keresés","Search results":"Találatok","Select a tag":"Válasszon címkét",Settings:"Beállítások","Settings navigation":"Navigáció a beállításokban","Show password":"Jelszó megjelenítése","Smileys & Emotion":"Mosolyok és érzelmek","Start slideshow":"Diavetítés indítása",Submit:"Beküldés",Symbols:"Szimbólumok","Travel & Places":"Utazás és helyek","Type to search time zone":"Gépeljen az időzóna kereséséhez","Unable to search the group":"A csoport nem kereshető","Undo changes":"Változtatások visszavonása",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Írjon egy üzenetet, használja a „@”-ot valaki megemlítéséhet, illetve a „:”-ot az emodzsik automatikus kiegészítéséhez…"}},{locale:"is",translations:{"{tag} (invisible)":"{tag} (ósýnilegt)","{tag} (restricted)":"{tag} (takmarkað)",Actions:"Aðgerðir",Activities:"Aðgerðir","Animals & Nature":"Dýr og náttúra",Choose:"Velja",Close:"Loka",Custom:"Sérsniðið",Flags:"Flögg","Food & Drink":"Matur og drykkur","Frequently used":"Oftast notað",Next:"Næsta","No emoji found":"Ekkert tjáningartákn fannst","No results":"Engar niðurstöður",Objects:"Hlutir","Pause slideshow":"Gera hlé á skyggnusýningu","People & Body":"Fólk og líkami","Pick an emoji":"Veldu tjáningartákn",Previous:"Fyrri",Search:"Leita","Search results":"Leitarniðurstöður","Select a tag":"Veldu merki",Settings:"Stillingar","Smileys & Emotion":"Broskallar og tilfinningar","Start slideshow":"Byrja skyggnusýningu",Symbols:"Tákn","Travel & Places":"Staðir og ferðalög","Unable to search the group":"Get ekki leitað í hópnum"}},{locale:"it",translations:{"{tag} (invisible)":"{tag} (invisibile)","{tag} (restricted)":"{tag} (limitato)",Actions:"Azioni",Activities:"Attività","Animals & Nature":"Animali e natura","Anything shared with the same group of people will show up here":"Tutto ciò che è stato condiviso con lo stesso gruppo di persone viene visualizzato qui","Avatar of {displayName}":"Avatar di {displayName}","Avatar of {displayName}, {status}":"Avatar di {displayName}, {status}","Cancel changes":"Annulla modifiche","Change title":"Modifica il titolo",Choose:"Scegli","Clear text":"Cancella il testo",Close:"Chiudi","Close modal":"Chiudi il messaggio modale","Close navigation":"Chiudi la navigazione","Close sidebar":"Chiudi la barra laterale","Confirm changes":"Conferma modifiche",Custom:"Personalizzato","Edit item":"Modifica l'elemento","Error getting related resources":"Errore nell'ottenere risorse correlate","Error parsing svg":"Errore nell'analizzare l'svg","External documentation for {title}":"Documentazione esterna per {title}",Favorite:"Preferito",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente",Global:"Globale","Go back to the list":"Torna all'elenco","Hide password":"Nascondi la password","Message limit of {count} characters reached":"Limite dei messaggi di {count} caratteri raggiunto","More items …":"Più elementi ...",Next:"Successivo","No emoji found":"Nessun emoji trovato","No results":"Nessun risultato",Objects:"Oggetti",Open:"Apri",'Open link to "{resourceTitle}"':'Apri il link a "{resourceTitle}"',"Open navigation":"Apri la navigazione","Password is secure":"La password è sicura","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji","Please select a time zone:":"Si prega di selezionare un fuso orario:",Previous:"Precedente","Related resources":"Risorse correlate",Search:"Cerca","Search results":"Risultati di ricerca","Select a tag":"Seleziona un'etichetta",Settings:"Impostazioni","Settings navigation":"Navigazione delle impostazioni","Show password":"Mostra la password","Smileys & Emotion":"Faccine ed emozioni","Start slideshow":"Avvia presentazione",Submit:"Invia",Symbols:"Simboli","Travel & Places":"Viaggi e luoghi","Type to search time zone":"Digita per cercare un fuso orario","Unable to search the group":"Impossibile cercare il gruppo","Undo changes":"Cancella i cambiamenti",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrivi un messaggio, "@" per menzionare qualcuno, ":" per il completamento automatico delle emoji ...'}},{locale:"ja_JP",translations:{"{tag} (invisible)":"{タグ} (不可視)","{tag} (restricted)":"{タグ} (制限付)",Actions:"操作",Activities:"アクティビティ","Animals & Nature":"動物と自然","Anything shared with the same group of people will show up here":"同じグループで共有しているものは、全てここに表示されます","Avatar of {displayName}":"{displayName} のアバター","Avatar of {displayName}, {status}":"{displayName}, {status} のアバター","Cancel changes":"変更をキャンセル","Change title":"タイトルを変更",Choose:"選択","Clear text":"テキストをクリア",Close:"閉じる","Close modal":"モーダルを閉じる","Close navigation":"ナビゲーションを閉じる","Close sidebar":"サイドバーを閉じる","Confirm changes":"変更を承認",Custom:"カスタム","Edit item":"編集","Error getting related resources":"関連リソースの取得エラー","Error parsing svg":"svgの解析エラー","External documentation for {title}":"{title} のための添付文書",Favorite:"お気に入り",Flags:"国旗","Food & Drink":"食べ物と飲み物","Frequently used":"よく使うもの",Global:"全体","Go back to the list":"リストに戻る","Hide password":"パスワードを非表示","Message limit of {count} characters reached":"{count} 文字のメッセージ上限に達しています","More items …":"他のアイテム",Next:"次","No emoji found":"絵文字が見つかりません","No results":"なし",Objects:"物",Open:"開く",'Open link to "{resourceTitle}"':'"{resourceTitle}"のリンクを開く',"Open navigation":"ナビゲーションを開く","Password is secure":"パスワードは保護されています","Pause slideshow":"スライドショーを一時停止","People & Body":"様々な人と体の部位","Pick an emoji":"絵文字を選択","Please select a time zone:":"タイムゾーンを選んで下さい:",Previous:"前","Related resources":"関連リソース",Search:"検索","Search results":"検索結果","Select a tag":"タグを選択",Settings:"設定","Settings navigation":"ナビゲーション設定","Show password":"パスワードを表示","Smileys & Emotion":"感情表現","Start slideshow":"スライドショーを開始",Submit:"提出",Symbols:"記号","Travel & Places":"旅行と場所","Type to search time zone":"タイムゾーン検索のため入力してください","Unable to search the group":"グループを検索できません","Undo changes":"変更を取り消し",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'メッセージを記入、"@"でメンション、":"で絵文字の自動補完 ...'}},{locale:"lt_LT",translations:{"{tag} (invisible)":"{tag} (nematoma)","{tag} (restricted)":"{tag} (apribota)",Actions:"Veiksmai",Activities:"Veiklos","Animals & Nature":"Gyvūnai ir gamta",Choose:"Pasirinkti",Close:"Užverti",Custom:"Tinkinti","External documentation for {title}":"Išorinė {title} dokumentacija",Flags:"Vėliavos","Food & Drink":"Maistas ir gėrimai","Frequently used":"Dažniausiai naudoti","Message limit of {count} characters reached":"Pasiekta {count} simbolių žinutės riba",Next:"Kitas","No emoji found":"Nerasta jaustukų","No results":"Nėra rezultatų",Objects:"Objektai","Pause slideshow":"Pristabdyti skaidrių rodymą","People & Body":"Žmonės ir kūnas","Pick an emoji":"Pasirinkti jaustuką",Previous:"Ankstesnis",Search:"Ieškoti","Search results":"Paieškos rezultatai","Select a tag":"Pasirinkti žymę",Settings:"Nustatymai","Settings navigation":"Naršymas nustatymuose","Smileys & Emotion":"Šypsenos ir emocijos","Start slideshow":"Pradėti skaidrių rodymą",Submit:"Pateikti",Symbols:"Simboliai","Travel & Places":"Kelionės ir vietos","Unable to search the group":"Nepavyko atlikti paiešką grupėje","Write message, @ to mention someone …":"Rašykite žinutę, naudokite @ norėdami kažką paminėti…"}},{locale:"lv",translations:{"{tag} (invisible)":"{tag} (neredzams)","{tag} (restricted)":"{tag} (ierobežots)",Choose:"Izvēlēties",Close:"Aizvērt",Next:"Nākamais","No results":"Nav rezultātu","Pause slideshow":"Pauzēt slaidrādi",Previous:"Iepriekšējais","Select a tag":"Izvēlēties birku",Settings:"Iestatījumi","Start slideshow":"Sākt slaidrādi"}},{locale:"mk",translations:{"{tag} (invisible)":"{tag} (невидливо)","{tag} (restricted)":"{tag} (ограничено)",Actions:"Акции",Activities:"Активности","Animals & Nature":"Животни & Природа","Avatar of {displayName}":"Аватар на {displayName}","Avatar of {displayName}, {status}":"Аватар на {displayName}, {status}","Cancel changes":"Откажи ги промените","Change title":"Промени наслов",Choose:"Избери",Close:"Затвори","Close modal":"Затвори модал","Close navigation":"Затвори навигација","Confirm changes":"Потврди ги промените",Custom:"Прилагодени","Edit item":"Уреди","External documentation for {title}":"Надворешна документација за {title}",Favorite:"Фаворити",Flags:"Знамиња","Food & Drink":"Храна & Пијалоци","Frequently used":"Најчесто користени",Global:"Глобално","Go back to the list":"Врати се на листата",items:"ставки","Message limit of {count} characters reached":"Ограничувањето на должината на пораката од {count} карактери е надминато","More {dashboardItemType} …":"Повеќе {dashboardItemType} …",Next:"Следно","No emoji found":"Не се пронајдени емотикони","No results":"Нема резултати",Objects:"Објекти",Open:"Отвори","Open navigation":"Отвори навигација","Pause slideshow":"Пузирај слајдшоу","People & Body":"Луѓе & Тело","Pick an emoji":"Избери емотикон","Please select a time zone:":"Изберете временска зона:",Previous:"Предходно",Search:"Барај","Search results":"Резултати од барувањето","Select a tag":"Избери ознака",Settings:"Параметри","Settings navigation":"Параметри за навигација","Smileys & Emotion":"Смешковци & Емотикони","Start slideshow":"Стартувај слајдшоу",Submit:"Испрати",Symbols:"Симболи","Travel & Places":"Патувања & Места","Type to search time zone":"Напишете за да пребарате временска зона","Unable to search the group":"Неможе да се принајде групата","Undo changes":"Врати ги промените","Write message, @ to mention someone, : for emoji autocompletion …":"Напиши порака, @ за да спомнете некого, : за емотинони автоатско комплетирање ..."}},{locale:"my",translations:{"{tag} (invisible)":"{tag} (ကွယ်ဝှက်ထား)","{tag} (restricted)":"{tag} (ကန့်သတ်)",Actions:"လုပ်ဆောင်ချက်များ",Activities:"ပြုလုပ်ဆောင်တာများ","Animals & Nature":"တိရစ္ဆာန်များနှင့် သဘာဝ","Avatar of {displayName}":"{displayName} ၏ ကိုယ်ပွား","Cancel changes":"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်",Choose:"ရွေးချယ်ရန်",Close:"ပိတ်ရန်","Confirm changes":"ပြောင်းလဲမှုများ အတည်ပြုရန်",Custom:"အလိုကျချိန်ညှိမှု","External documentation for {title}":"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း",Flags:"အလံများ","Food & Drink":"အစားအသောက်","Frequently used":"မကြာခဏအသုံးပြုသော",Global:"ကမ္ဘာလုံးဆိုင်ရာ","Message limit of {count} characters reached":"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ",Next:"နောက်သို့ဆက်ရန်","No emoji found":"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ","No results":"ရလဒ်မရှိပါ",Objects:"အရာဝတ္ထုများ","Pause slideshow":"စလိုက်ရှိုး ခေတ္တရပ်ရန်","People & Body":"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်","Pick an emoji":"အီမိုဂျီရွေးရန်","Please select a time zone:":"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ",Previous:"ယခင်",Search:"ရှာဖွေရန်","Search results":"ရှာဖွေမှု ရလဒ်များ","Select a tag":"tag ရွေးချယ်ရန်",Settings:"ချိန်ညှိချက်များ","Settings navigation":"ချိန်ညှိချက်အညွှန်း","Smileys & Emotion":"စမိုင်လီများနှင့် အီမိုရှင်း","Start slideshow":"စလိုက်ရှိုးအား စတင်ရန်",Submit:"တင်သွင်းရန်",Symbols:"သင်္ကေတများ","Travel & Places":"ခရီးသွားလာခြင်းနှင့် နေရာများ","Type to search time zone":"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ","Unable to search the group":"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ","Write message, @ to mention someone …":"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်..."}},{locale:"nb_NO",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (beskyttet)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr og natur","Anything shared with the same group of people will show up here":"Alt som er delt med den samme gruppen vil vises her","Avatar of {displayName}":"Avataren til {displayName}","Avatar of {displayName}, {status}":"{displayName}'s avatar, {status}","Cancel changes":"Avbryt endringer","Change title":"Endre tittel",Choose:"Velg","Clear text":"Fjern tekst",Close:"Lukk","Close modal":"Lukk modal","Close navigation":"Lukk navigasjon","Close sidebar":"Lukk sidepanel","Confirm changes":"Bekreft endringer",Custom:"Tilpasset","Edit item":"Rediger","Error getting related resources":"Feil ved henting av relaterte ressurser","Error parsing svg":"Feil ved parsing av svg","External documentation for {title}":"Ekstern dokumentasjon for {title}",Favorite:"Favoritt",Flags:"Flagg","Food & Drink":"Mat og drikke","Frequently used":"Ofte brukt",Global:"Global","Go back to the list":"Gå tilbake til listen","Hide password":"Skjul passord","Message limit of {count} characters reached":"Karakter begrensing {count} nådd i melding","More items …":"Flere gjenstander...",Next:"Neste","No emoji found":"Fant ingen emoji","No results":"Ingen resultater",Objects:"Objekter",Open:"Åpne",'Open link to "{resourceTitle}"':'Åpne link til "{resourceTitle}"',"Open navigation":"Åpne navigasjon","Password is secure":"Passordet er sikkert","Pause slideshow":"Pause lysbildefremvisning","People & Body":"Mennesker og kropp","Pick an emoji":"Velg en emoji","Please select a time zone:":"Vennligst velg tidssone",Previous:"Forrige","Related resources":"Relaterte ressurser",Search:"Søk","Search results":"Søkeresultater","Select a tag":"Velg en merkelapp",Settings:"Innstillinger","Settings navigation":"Navigasjonsinstillinger","Show password":"Vis passord","Smileys & Emotion":"Smilefjes og følelser","Start slideshow":"Start lysbildefremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Reise og steder","Type to search time zone":"Tast for å søke etter tidssone","Unable to search the group":"Kunne ikke søke i gruppen","Undo changes":"Tilbakestill endringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv melding, bruk "@" for å nevne noen, bruk ":" for autofullføring av emoji...'}},{locale:"nl",translations:{"{tag} (invisible)":"{tag} (onzichtbaar)","{tag} (restricted)":"{tag} (beperkt)",Actions:"Acties",Activities:"Activiteiten","Animals & Nature":"Dieren & Natuur","Avatar of {displayName}":"Avatar van {displayName}","Avatar of {displayName}, {status}":"Avatar van {displayName}, {status}","Cancel changes":"Wijzigingen annuleren",Choose:"Kies",Close:"Sluiten","Close navigation":"Navigatie sluiten","Confirm changes":"Wijzigingen bevestigen",Custom:"Aangepast","Edit item":"Item bewerken","External documentation for {title}":"Externe documentatie voor {title}",Flags:"Vlaggen","Food & Drink":"Eten & Drinken","Frequently used":"Vaak gebruikt",Global:"Globaal","Go back to the list":"Ga terug naar de lijst","Message limit of {count} characters reached":"Berichtlimiet van {count} karakters bereikt",Next:"Volgende","No emoji found":"Geen emoji gevonden","No results":"Geen resultaten",Objects:"Objecten","Open navigation":"Navigatie openen","Pause slideshow":"Pauzeer diavoorstelling","People & Body":"Mensen & Lichaam","Pick an emoji":"Kies een emoji","Please select a time zone:":"Selecteer een tijdzone:",Previous:"Vorige",Search:"Zoeken","Search results":"Zoekresultaten","Select a tag":"Selecteer een label",Settings:"Instellingen","Settings navigation":"Instellingen navigatie","Smileys & Emotion":"Smileys & Emotie","Start slideshow":"Start diavoorstelling",Submit:"Verwerken",Symbols:"Symbolen","Travel & Places":"Reizen & Plaatsen","Type to search time zone":"Type om de tijdzone te zoeken","Unable to search the group":"Kan niet in de groep zoeken","Undo changes":"Wijzigingen ongedaan maken","Write message, @ to mention someone, : for emoji autocompletion …":"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ..."}},{locale:"oc",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (limit)",Actions:"Accions",Choose:"Causir",Close:"Tampar",Next:"Seguent","No results":"Cap de resultat","Pause slideshow":"Metre en pausa lo diaporama",Previous:"Precedent","Select a tag":"Seleccionar una etiqueta",Settings:"Paramètres","Start slideshow":"Lançar lo diaporama"}},{locale:"pl",translations:{"{tag} (invisible)":"{tag} (niewidoczna)","{tag} (restricted)":"{tag} (ograniczona)",Actions:"Działania",Activities:"Aktywność","Animals & Nature":"Zwierzęta i natura","Anything shared with the same group of people will show up here":"Tutaj pojawi się wszystko, co zostało udostępnione tej samej grupie osób","Avatar of {displayName}":"Awatar {displayName}","Avatar of {displayName}, {status}":"Awatar {displayName}, {status}","Cancel changes":"Anuluj zmiany","Change title":"Zmień tytuł",Choose:"Wybierz","Clear text":"Wyczyść tekst",Close:"Zamknij","Close modal":"Zamknij modal","Close navigation":"Zamknij nawigację","Close sidebar":"Zamknij pasek boczny","Confirm changes":"Potwierdź zmiany",Custom:"Zwyczajne","Edit item":"Edytuj element","Error getting related resources":"Błąd podczas pobierania powiązanych zasobów","Error parsing svg":"Błąd podczas analizowania svg","External documentation for {title}":"Dokumentacja zewnętrzna dla {title}",Favorite:"Ulubiony",Flags:"Flagi","Food & Drink":"Jedzenie i picie","Frequently used":"Często używane",Global:"Globalnie","Go back to the list":"Powrót do listy","Hide password":"Ukryj hasło","Message limit of {count} characters reached":"Przekroczono limit wiadomości wynoszący {count} znaków","More items …":"Więcej pozycji…",Next:"Następny","No emoji found":"Nie znaleziono emoji","No results":"Brak wyników",Objects:"Obiekty",Open:"Otwórz",'Open link to "{resourceTitle}"':'Otwórz link do "{resourceTitle}"',"Open navigation":"Otwórz nawigację","Password is secure":"Hasło jest bezpieczne","Pause slideshow":"Wstrzymaj pokaz slajdów","People & Body":"Ludzie i ciało","Pick an emoji":"Wybierz emoji","Please select a time zone:":"Wybierz strefę czasową:",Previous:"Poprzedni","Related resources":"Powiązane zasoby",Search:"Szukaj","Search results":"Wyniki wyszukiwania","Select a tag":"Wybierz etykietę",Settings:"Ustawienia","Settings navigation":"Ustawienia nawigacji","Show password":"Pokaż hasło","Smileys & Emotion":"Buźki i emotikony","Start slideshow":"Rozpocznij pokaz slajdów",Submit:"Wyślij",Symbols:"Symbole","Travel & Places":"Podróże i miejsca","Type to search time zone":"Wpisz, aby wyszukać strefę czasową","Unable to search the group":"Nie można przeszukać grupy","Undo changes":"Cofnij zmiany",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Napisz wiadomość, "@" aby o kimś wspomnieć, ":" dla autouzupełniania emoji…'}},{locale:"pt_BR",translations:{"{tag} (invisible)":"{tag} (invisível)","{tag} (restricted)":"{tag} (restrito) ",Actions:"Ações",Activities:"Atividades","Animals & Nature":"Animais & Natureza","Anything shared with the same group of people will show up here":"Qualquer coisa compartilhada com o mesmo grupo de pessoas aparecerá aqui","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar alterações","Change title":"Alterar título",Choose:"Escolher","Clear text":"Limpar texto",Close:"Fechar","Close modal":"Fechar modal","Close navigation":"Fechar navegação","Close sidebar":"Fechar barra lateral","Confirm changes":"Confirmar alterações",Custom:"Personalizado","Edit item":"Editar item","Error getting related resources":"Erro ao obter recursos relacionados","Error parsing svg":"Erro ao analisar svg","External documentation for {title}":"Documentação externa para {title}",Favorite:"Favorito",Flags:"Bandeiras","Food & Drink":"Comida & Bebida","Frequently used":"Mais usados",Global:"Global","Go back to the list":"Volte para a lista","Hide password":"Ocultar a senha","Message limit of {count} characters reached":"Limite de mensagem de {count} caracteres atingido","More items …":"Mais itens …",Next:"Próximo","No emoji found":"Nenhum emoji encontrado","No results":"Sem resultados",Objects:"Objetos",Open:"Aberto",'Open link to "{resourceTitle}"':'Abrir link para "{resourceTitle}"',"Open navigation":"Abrir navegação","Password is secure":"A senha é segura","Pause slideshow":"Pausar apresentação de slides","People & Body":"Pessoas & Corpo","Pick an emoji":"Escolha um emoji","Please select a time zone:":"Selecione um fuso horário: ",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Pesquisar","Search results":"Resultados da pesquisa","Select a tag":"Selecionar uma tag",Settings:"Configurações","Settings navigation":"Navegação de configurações","Show password":"Mostrar senha","Smileys & Emotion":"Smiles & Emoções","Start slideshow":"Iniciar apresentação de slides",Submit:"Enviar",Symbols:"Símbolo","Travel & Places":"Viagem & Lugares","Type to search time zone":"Digite para pesquisar o fuso horário ","Unable to search the group":"Não foi possível pesquisar o grupo","Undo changes":"Desfazer modificações",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escreva mensagens, use "@" para mencionar algum, use ":" for autocompletar emoji …'}},{locale:"pt_PT",translations:{"{tag} (invisible)":"{tag} (invisivel)","{tag} (restricted)":"{tag} (restrito)",Actions:"Ações",Choose:"Escolher",Close:"Fechar",Next:"Seguinte","No results":"Sem resultados","Pause slideshow":"Pausar diaporama",Previous:"Anterior","Select a tag":"Selecionar uma etiqueta",Settings:"Definições","Start slideshow":"Iniciar diaporama","Unable to search the group":"Não é possível pesquisar o grupo"}},{locale:"ro",translations:{"{tag} (invisible)":"{tag} (invizibil)","{tag} (restricted)":"{tag} (restricționat)",Actions:"Acțiuni",Activities:"Activități","Animals & Nature":"Animale și natură","Anything shared with the same group of people will show up here":"Tot ceea ce este partajat cu același grup de persoane va fi afișat aici","Avatar of {displayName}":"Avatarul lui {displayName}","Avatar of {displayName}, {status}":"Avatarul lui {displayName}, {status}","Cancel changes":"Anulează modificările","Change title":"Modificați titlul",Choose:"Alegeți","Clear text":"Șterge textul",Close:"Închideți","Close modal":"Închideți modulul","Close navigation":"Închideți navigarea","Close sidebar":"Închide bara laterală","Confirm changes":"Confirmați modificările",Custom:"Personalizat","Edit item":"Editați elementul","Error getting related resources":" Eroare la returnarea resurselor legate","Error parsing svg":"Eroare de analizare a svg","External documentation for {title}":"Documentație externă pentru {title}",Favorite:"Favorit",Flags:"Marcaje","Food & Drink":"Alimente și băuturi","Frequently used":"Utilizate frecvent",Global:"Global","Go back to the list":"Întoarceți-vă la listă","Hide password":"Ascunde parola","Message limit of {count} characters reached":"Limita mesajului de {count} caractere a fost atinsă","More items …":"Mai multe articole ...",Next:"Următorul","No emoji found":"Nu s-a găsit niciun emoji","No results":"Nu există rezultate",Objects:"Obiecte",Open:"Deschideți",'Open link to "{resourceTitle}"':'Deschide legătura la "{resourceTitle}"',"Open navigation":"Deschideți navigația","Password is secure":"Parola este sigură","Pause slideshow":"Pauză prezentare de diapozitive","People & Body":"Oameni și corp","Pick an emoji":"Alege un emoji","Please select a time zone:":"Vă rugăm să selectați un fus orar:",Previous:"Anterior","Related resources":"Resurse legate",Search:"Căutare","Search results":"Rezultatele căutării","Select a tag":"Selectați o etichetă",Settings:"Setări","Settings navigation":"Navigare setări","Show password":"Arată parola","Smileys & Emotion":"Zâmbete și emoții","Start slideshow":"Începeți prezentarea de diapozitive",Submit:"Trimiteți",Symbols:"Simboluri","Travel & Places":"Călătorii și locuri","Type to search time zone":"Tastați pentru a căuta fusul orar","Unable to search the group":"Imposibilitatea de a căuta în grup","Undo changes":"Anularea modificărilor",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrie un mesaj, folosește "@" pentru a menționa pe cineva, folosește ":" pentru autocompletarea cu emoji ...'}},{locale:"ru",translations:{"{tag} (invisible)":"{tag} (невидимое)","{tag} (restricted)":"{tag} (ограниченное)",Actions:"Действия ",Activities:"События","Animals & Nature":"Животные и природа ","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Фотография {displayName}, {status}","Cancel changes":"Отменить изменения",Choose:"Выберите",Close:"Закрыть","Close modal":"Закрыть модальное окно","Close navigation":"Закрыть навигацию","Confirm changes":"Подтвердить изменения",Custom:"Пользовательское","Edit item":"Изменить элемент","External documentation for {title}":"Внешняя документация для {title}",Flags:"Флаги","Food & Drink":"Еда, напиток","Frequently used":"Часто используемый",Global:"Глобальный","Go back to the list":"Вернуться к списку",items:"элементов","Message limit of {count} characters reached":"Достигнуто ограничение на количество символов в {count}","More {dashboardItemType} …":"Больше {dashboardItemType} …",Next:"Следующее","No emoji found":"Эмодзи не найдено","No results":"Результаты отсуствуют",Objects:"Объекты",Open:"Открыть","Open navigation":"Открыть навигацию","Pause slideshow":"Приостановить показ слйдов","People & Body":"Люди и тело","Pick an emoji":"Выберите эмодзи","Please select a time zone:":"Пожалуйста, выберите часовой пояс:",Previous:"Предыдущее",Search:"Поиск","Search results":"Результаты поиска","Select a tag":"Выберите метку",Settings:"Параметры","Settings navigation":"Навигация по настройкам","Smileys & Emotion":"Смайлики и эмоции","Start slideshow":"Начать показ слайдов",Submit:"Утвердить",Symbols:"Символы","Travel & Places":"Путешествия и места","Type to search time zone":"Введите для поиска часового пояса","Unable to search the group":"Невозможно найти группу","Undo changes":"Отменить изменения","Write message, @ to mention someone, : for emoji autocompletion …":"Напишите сообщение, @ - чтобы упомянуть кого-то, : - для автозаполнения эмодзи …"}},{locale:"sk_SK",translations:{"{tag} (invisible)":"{tag} (neviditeľný)","{tag} (restricted)":"{tag} (obmedzený)",Actions:"Akcie",Activities:"Aktivity","Animals & Nature":"Zvieratá a príroda","Avatar of {displayName}":"Avatar {displayName}","Avatar of {displayName}, {status}":"Avatar {displayName}, {status}","Cancel changes":"Zrušiť zmeny",Choose:"Vybrať",Close:"Zatvoriť","Close navigation":"Zavrieť navigáciu","Confirm changes":"Potvrdiť zmeny",Custom:"Zvyk","Edit item":"Upraviť položku","External documentation for {title}":"Externá dokumentácia pre {title}",Flags:"Vlajky","Food & Drink":"Jedlo a nápoje","Frequently used":"Často používané",Global:"Globálne","Go back to the list":"Naspäť na zoznam","Message limit of {count} characters reached":"Limit správy na {count} znakov dosiahnutý",Next:"Ďalší","No emoji found":"Nenašli sa žiadne emodži","No results":"Žiadne výsledky",Objects:"Objekty","Open navigation":"Otvoriť navigáciu","Pause slideshow":"Pozastaviť prezentáciu","People & Body":"Ľudia a telo","Pick an emoji":"Vyberte si emodži","Please select a time zone:":"Prosím vyberte časovú zónu:",Previous:"Predchádzajúci",Search:"Hľadať","Search results":"Výsledky vyhľadávania","Select a tag":"Vybrať štítok",Settings:"Nastavenia","Settings navigation":"Navigácia v nastaveniach","Smileys & Emotion":"Smajlíky a emócie","Start slideshow":"Začať prezentáciu",Submit:"Odoslať",Symbols:"Symboly","Travel & Places":"Cestovanie a miesta","Type to search time zone":"Začníte písať pre vyhľadávanie časovej zóny","Unable to search the group":"Skupinu sa nepodarilo nájsť","Undo changes":"Vrátiť zmeny","Write message, @ to mention someone, : for emoji autocompletion …":"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…"}},{locale:"sl",translations:{"{tag} (invisible)":"{tag} (nevidno)","{tag} (restricted)":"{tag} (omejeno)",Actions:"Dejanja",Activities:"Dejavnosti","Animals & Nature":"Živali in Narava","Avatar of {displayName}":"Podoba {displayName}","Avatar of {displayName}, {status}":"Prikazna slika {displayName}, {status}","Cancel changes":"Prekliči spremembe","Change title":"Spremeni naziv",Choose:"Izbor","Clear text":"Počisti besedilo",Close:"Zapri","Close modal":"Zapri pojavno okno","Close navigation":"Zapri krmarjenje","Close sidebar":"Zapri stransko vrstico","Confirm changes":"Potrdi spremembe",Custom:"Po meri","Edit item":"Uredi predmet","Error getting related resources":"Napaka pridobivanja povezanih virov","External documentation for {title}":"Zunanja dokumentacija za {title}",Favorite:"Priljubljeno",Flags:"Zastavice","Food & Drink":"Hrana in Pijača","Frequently used":"Pogostost uporabe",Global:"Splošno","Go back to the list":"Vrni se na seznam","Hide password":"Skrij geslo","Message limit of {count} characters reached":"Dosežena omejitev {count} znakov na sporočilo.","More items …":"Več predmetov ...",Next:"Naslednji","No emoji found":"Ni najdenih izraznih ikon","No results":"Ni zadetkov",Objects:"Predmeti",Open:"Odpri",'Open link to "{resourceTitle}"':"Odpri povezavo do »{resourceTitle}«","Open navigation":"Odpri krmarjenje","Password is secure":"Geslo je varno","Pause slideshow":"Ustavi predstavitev","People & Body":"Ljudje in Telo","Pick a date":"Izbor datuma","Pick a date and a time":"Izbor datuma in časa","Pick a month":"Izbor meseca","Pick a time":"Izbor časa","Pick a week":"Izbor tedna","Pick a year":"Izbor leta","Pick an emoji":"Izbor izrazne ikone","Please select a time zone:":"Izbor časovnega pasu:",Previous:"Predhodni","Related resources":"Povezani viri",Search:"Iskanje","Search results":"Zadetki iskanja","Select a tag":"Izbor oznake",Settings:"Nastavitve","Settings navigation":"Krmarjenje nastavitev","Show password":"Pokaži geslo","Smileys & Emotion":"Izrazne ikone","Start slideshow":"Začni predstavitev",Submit:"Pošlji",Symbols:"Simboli","Travel & Places":"Potovanja in Kraji","Type to search time zone":"Vpišite niz za iskanje časovnega pasu","Unable to search the group":"Ni mogoče iskati po skupini","Undo changes":"Razveljavi spremembe","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite sporočilo, za omembo pred ime postavite@, začnite z : za vstavljanje izraznih ikon …"}},{locale:"sr",translations:{"{tag} (invisible)":"{tag} (nevidljivo)","{tag} (restricted)":"{tag} (ograničeno)",Actions:"Radnje",Activities:"Aktivnosti","Animals & Nature":"Životinje i Priroda","Avatar of {displayName}":"Avatar za {displayName}","Avatar of {displayName}, {status}":"Avatar za {displayName}, {status}","Cancel changes":"Otkaži izmene","Change title":"Izmeni naziv",Choose:"Изаберите",Close:"Затвори","Close modal":"Zatvori modal","Close navigation":"Zatvori navigaciju","Close sidebar":"Zatvori bočnu traku","Confirm changes":"Potvrdite promene",Custom:"Po meri","Edit item":"Uredi stavku","External documentation for {title}":"Eksterna dokumentacija za {title}",Favorite:"Omiljeni",Flags:"Zastave","Food & Drink":"Hrana i Piće","Frequently used":"Često korišćeno",Global:"Globalno","Go back to the list":"Natrag na listu",items:"stavke","Message limit of {count} characters reached":"Dostignuto je ograničenje za poruke od {count} znakova","More {dashboardItemType} …":"Više {dashboardItemType} …",Next:"Следеће","No emoji found":"Nije pronađen nijedan emodži","No results":"Нема резултата",Objects:"Objekti",Open:"Otvori","Open navigation":"Otvori navigaciju","Pause slideshow":"Паузирај слајд шоу","People & Body":"Ljudi i Telo","Pick an emoji":"Izaberi emodži","Please select a time zone:":"Molimo izaberite vremensku zonu:",Previous:"Претходно",Search:"Pretraži","Search results":"Rezultati pretrage","Select a tag":"Изаберите ознаку",Settings:"Поставке","Settings navigation":"Navigacija u podešavanjima","Smileys & Emotion":"Smajli i Emocije","Start slideshow":"Покрени слајд шоу",Submit:"Prihvati",Symbols:"Simboli","Travel & Places":"Putovanja i Mesta","Type to search time zone":"Ukucaj da pretražiš vremenske zone","Unable to search the group":"Nije moguće pretražiti grupu","Undo changes":"Poništi promene","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite poruku, @ da pomenete nekoga, : za automatsko dovršavanje emodžija…"}},{locale:"sv",translations:{"{tag} (invisible)":"{tag} (osynlig)","{tag} (restricted)":"{tag} (begränsad)",Actions:"Åtgärder",Activities:"Aktiviteter","Animals & Nature":"Djur & Natur","Anything shared with the same group of people will show up here":"Något som delats med samma grupp av personer kommer att visas här","Avatar of {displayName}":"{displayName}s avatar","Avatar of {displayName}, {status}":"{displayName}s avatar, {status}","Cancel changes":"Avbryt ändringar","Change title":"Ändra titel",Choose:"Välj","Clear text":"Ta bort text",Close:"Stäng","Close modal":"Stäng modal","Close navigation":"Stäng navigering","Close sidebar":"Stäng sidopanel","Confirm changes":"Bekräfta ändringar",Custom:"Anpassad","Edit item":"Ändra","Error getting related resources":"Problem att hämta relaterade resurser","Error parsing svg":"Fel vid inläsning av svg","External documentation for {title}":"Extern dokumentation för {title}",Favorite:"Favorit",Flags:"Flaggor","Food & Drink":"Mat & Dryck","Frequently used":"Används ofta",Global:"Global","Go back to the list":"Gå tillbaka till listan","Hide password":"Göm lössenordet","Message limit of {count} characters reached":"Meddelandegräns {count} tecken används","More items …":"Fler objekt",Next:"Nästa","No emoji found":"Hittade inga emojis","No results":"Inga resultat",Objects:"Objekt",Open:"Öppna",'Open link to "{resourceTitle}"':'Öppna länk till "{resourceTitle}"',"Open navigation":"Öppna navigering","Password is secure":"Lössenordet är säkert","Pause slideshow":"Pausa bildspelet","People & Body":"Kropp & Själ","Pick an emoji":"Välj en emoji","Please select a time zone:":"Välj tidszon:",Previous:"Föregående","Related resources":"Relaterade resurser",Search:"Sök","Search results":"Sökresultat","Select a tag":"Välj en tag",Settings:"Inställningar","Settings navigation":"Inställningsmeny","Show password":"Visa lössenordet","Smileys & Emotion":"Selfies & Känslor","Start slideshow":"Starta bildspelet",Submit:"Skicka",Symbols:"Symboler","Travel & Places":"Resor & Sevärdigheter","Type to search time zone":"Skriv för att välja tidszon","Unable to search the group":"Kunde inte söka i gruppen","Undo changes":"Ångra ändringar",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv meddelande, använd "@" för att nämna någon, använd ":" för automatiska emojiförslag ...'}},{locale:"tr",translations:{"{tag} (invisible)":"{tag} (görünmez)","{tag} (restricted)":"{tag} (kısıtlı)",Actions:"İşlemler",Activities:"Etkinlikler","Animals & Nature":"Hayvanlar ve Doğa","Anything shared with the same group of people will show up here":"Aynı kişi grubu ile paylaşılan herşey burada görüntülenir","Avatar of {displayName}":"{displayName} avatarı","Avatar of {displayName}, {status}":"{displayName}, {status} avatarı","Cancel changes":"Değişiklikleri iptal et","Change title":"Başlığı değiştir",Choose:"Seçin","Clear text":"Metni temizle",Close:"Kapat","Close modal":"Üste açılan pencereyi kapat","Close navigation":"Gezinmeyi kapat","Close sidebar":"Yan çubuğu kapat","Confirm changes":"Değişiklikleri onayla",Custom:"Özel","Edit item":"Ögeyi düzenle","Error getting related resources":"İlgili kaynaklar alınırken sorun çıktı","Error parsing svg":"svg işlenirken sorun çıktı","External documentation for {title}":"{title} için dış belgeler",Favorite:"Sık kullanılanlara ekle",Flags:"Bayraklar","Food & Drink":"Yeme ve İçme","Frequently used":"Sık kullanılanlar",Global:"Evrensel","Go back to the list":"Listeye dön","Hide password":"Parolayı gizle","Message limit of {count} characters reached":"{count} karakter ileti sınırına ulaşıldı","More items …":"Diğer ögeler…",Next:"Sonraki","No emoji found":"Herhangi bir emoji bulunamadı","No results":"Herhangi bir sonuç bulunamadı",Objects:"Nesneler",Open:"Aç",'Open link to "{resourceTitle}"':'"{resourceTitle}" bağlantısını aç',"Open navigation":"Gezinmeyi aç","Password is secure":"Parola güvenli","Pause slideshow":"Slayt sunumunu duraklat","People & Body":"İnsanlar ve Beden","Pick an emoji":"Bir emoji seçin","Please select a time zone:":"Lütfen bir saat dilimi seçin:",Previous:"Önceki","Related resources":"İlgili kaynaklar",Search:"Arama","Search results":"Arama sonuçları","Select a tag":"Bir etiket seçin",Settings:"Ayarlar","Settings navigation":"Gezinme ayarları","Show password":"Parolayı görüntüle","Smileys & Emotion":"İfadeler ve Duygular","Start slideshow":"Slayt sunumunu başlat",Submit:"Gönder",Symbols:"Simgeler","Travel & Places":"Gezi ve Yerler","Type to search time zone":"Saat dilimi aramak için yazmaya başlayın","Unable to search the group":"Grupta arama yapılamadı","Undo changes":"Değişiklikleri geri al",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'İleti yazın, birini anmak için @, otomatik emoji tamamlamak için ":" kullanın…'}},{locale:"uk",translations:{"{tag} (invisible)":"{tag} (невидимий)","{tag} (restricted)":"{tag} (обмежений)",Actions:"Дії",Activities:"Діяльність","Animals & Nature":"Тварини та природа","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Аватар {displayName}, {status}","Cancel changes":"Скасувати зміни","Change title":"Змінити назву",Choose:"ВиберітьВиберіть","Clear text":"Очистити текст",Close:"Закрити","Close modal":"Закрити модаль","Close navigation":"Закрити навігацію","Close sidebar":"Закрити бічну панель","Confirm changes":"Підтвердити зміни",Custom:"Власне","Edit item":"Редагувати елемент","External documentation for {title}":"Зовнішня документація для {title}",Favorite:"Улюблений",Flags:"Прапори","Food & Drink":"Їжа та напої","Frequently used":"Найчастіші",Global:"Глобальний","Go back to the list":"Повернутися до списку","Hide password":"Приховати пароль",items:"елементи","Message limit of {count} characters reached":"Вичерпано ліміт у {count} символів для повідомлення","More {dashboardItemType} …":"Більше {dashboardItemType}…",Next:"Вперед","No emoji found":"Емоційки відсутні","No results":"Відсутні результати",Objects:"Об'єкти",Open:"Відкрити","Open navigation":"Відкрити навігацію","Password is secure":"Пароль безпечний","Pause slideshow":"Пауза у показі слайдів","People & Body":"Люди та жести","Pick an emoji":"Виберіть емоційку","Please select a time zone:":"Виберіть часовий пояс:",Previous:"Назад",Search:"Пошук","Search results":"Результати пошуку","Select a tag":"Виберіть позначку",Settings:"Налаштування","Settings navigation":"Навігація у налаштуваннях","Show password":"Показати пароль","Smileys & Emotion":"Смайли та емоції","Start slideshow":"Почати показ слайдів",Submit:"Надіслати",Symbols:"Символи","Travel & Places":"Поїздки та місця","Type to search time zone":"Введіть для пошуку часовий пояс","Unable to search the group":"Неможливо шукати в групі","Undo changes":"Скасувати зміни","Write message, @ to mention someone, : for emoji autocompletion …":"Напишіть повідомлення, @, щоб згадати когось, : для автозаповнення емодзі…"}},{locale:"zh_CN",translations:{"{tag} (invisible)":"{tag} (不可见)","{tag} (restricted)":"{tag} (受限)",Actions:"行为",Activities:"活动","Animals & Nature":"动物 & 自然","Anything shared with the same group of people will show up here":"与同组用户分享的所有内容都会显示于此","Avatar of {displayName}":"{displayName}的头像","Avatar of {displayName}, {status}":"{displayName}的头像,{status}","Cancel changes":"取消更改","Change title":"更改标题",Choose:"选择","Clear text":"清除文本",Close:"关闭","Close modal":"关闭窗口","Close navigation":"关闭导航","Close sidebar":"关闭侧边栏","Confirm changes":"确认更改",Custom:"自定义","Edit item":"编辑项目","Error getting related resources":"获取相关资源时出错","Error parsing svg":"解析 svg 时出错","External documentation for {title}":"{title}的外部文档",Favorite:"喜爱",Flags:"旗帜","Food & Drink":"食物 & 饮品","Frequently used":"经常使用",Global:"全局","Go back to the list":"返回至列表","Hide password":"隐藏密码","Message limit of {count} characters reached":"已达到 {count} 个字符的消息限制","More items …":"更多项目…",Next:"下一个","No emoji found":"表情未找到","No results":"无结果",Objects:"物体",Open:"打开",'Open link to "{resourceTitle}"':'打开"{resourceTitle}"的连接',"Open navigation":"开启导航","Password is secure":"密码安全","Pause slideshow":"暂停幻灯片","People & Body":"人 & 身体","Pick an emoji":"选择一个表情","Please select a time zone:":"请选择一个时区:",Previous:"上一个","Related resources":"相关资源",Search:"搜索","Search results":"搜索结果","Select a tag":"选择一个标签",Settings:"设置","Settings navigation":"设置向导","Show password":"显示密码","Smileys & Emotion":"笑脸 & 情感","Start slideshow":"开始幻灯片",Submit:"提交",Symbols:"符号","Travel & Places":"旅游 & 地点","Type to search time zone":"打字以搜索时区","Unable to search the group":"无法搜索分组","Undo changes":"撤销更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'写信息,使用"@"来提及某人,使用":"进行表情符号自动完成 ...'}},{locale:"zh_HK",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然","Anything shared with the same group of people will show up here":"與同一組人共享的任何內容都會顯示在此處","Avatar of {displayName}":"{displayName} 的頭像","Avatar of {displayName}, {status}":"{displayName} 的頭像,{status}","Cancel changes":"取消更改","Change title":"更改標題",Choose:"選擇","Clear text":"清除文本",Close:"關閉","Close modal":"關閉模態","Close navigation":"關閉導航","Close sidebar":"關閉側邊欄","Confirm changes":"確認更改",Custom:"自定義","Edit item":"編輯項目","Error getting related resources":"獲取相關資源出錯","Error parsing svg":"解析 svg 時出錯","External documentation for {title}":"{title} 的外部文檔",Favorite:"喜愛",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"經常使用",Global:"全球的","Go back to the list":"返回清單","Hide password":"隱藏密碼","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制","More items …":"更多項目 …",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件",Open:"打開",'Open link to "{resourceTitle}"':"打開指向 “{resourceTitle}” 的鏈結","Open navigation":"開啟導航","Password is secure":"密碼是安全的","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號","Please select a time zone:":"請選擇時區:",Previous:"上一個","Related resources":"相關資源",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Show password":"顯示密碼","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Submit:"提交",Symbols:"標誌","Travel & Places":"旅遊與景點","Type to search time zone":"鍵入以搜索時區","Unable to search the group":"無法搜尋群組","Undo changes":"取消更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'寫訊息,使用 "@" 來指代某人,使用 ":" 用於表情符號自動填充 ...'}},{locale:"zh_TW",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然",Choose:"選擇",Close:"關閉",Custom:"自定義",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"最近使用","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Symbols:"標誌","Travel & Places":"旅遊與景點","Unable to search the group":"無法搜尋群組","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}}].forEach((e=>{const t={};for(const a in e.translations)e.translations[a].pluralId?t[a]={msgid:a,msgid_plural:e.translations[a].pluralId,msgstr:e.translations[a].msgstr}:t[a]={msgid:a,msgstr:[e.translations[a]]};i.addTranslation(e.locale,{translations:{"":t}})}));const n=i.build(),r=n.ngettext.bind(n),s=n.gettext.bind(n)},334:(e,t,a)=>{"use strict";a.d(t,{default:()=>n});var o=a(2734);const i=new(a.n(o)())({data:()=>({isMobile:!1}),watch:{isMobile(e){this.$emit("changed",e)}},created(){window.addEventListener("resize",this.handleWindowResize),this.handleWindowResize()},beforeDestroy(){window.removeEventListener("resize",this.handleWindowResize)},methods:{handleWindowResize(){this.isMobile=document.documentElement.clientWidth<1024}}}),n={data:()=>({isMobile:!1}),mounted(){i.$on("changed",this.onIsMobileChanged),this.isMobile=i.isMobile},beforeDestroy(){i.$off("changed",this.onIsMobileChanged)},methods:{onIsMobileChanged(e){this.isMobile=e}}}},3648:(e,t,a)=>{"use strict";a.d(t,{Z:()=>i});var o=a(932);const i={methods:{n:o.n,t:o.t}}},1205:(e,t,a)=>{"use strict";a.d(t,{Z:()=>o});const o=e=>Math.random().toString(36).replace(/[^a-z]+/g,"").slice(0,e||5)},7645:(e,t,a)=>{"use strict";a.d(t,{Z:()=>o});const o=e=>{e.mounted?Array.isArray(e.mounted)||(e.mounted=[e.mounted]):e.mounted=[],e.mounted.push((function(){this.$el.setAttribute("data-v-".concat("f7c85e6"),"")}))}},1206:(e,t,a)=>{"use strict";a.d(t,{L:()=>o});a(4505);const o=function(){return Object.assign(window,{_nc_focus_trap:window._nc_focus_trap||[]}),window._nc_focus_trap}},8384:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.v-popper--theme-tooltip.v-popper__popper{position:absolute;z-index:100000;top:0;right:auto;left:auto;display:block;margin:0;padding:0;text-align:left;text-align:start;opacity:0;line-height:1.6;line-break:auto;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{right:100%;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{left:100%;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-tooltip.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity .15s,visibility .15s;opacity:0}.v-popper--theme-tooltip.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity .15s;opacity:1}.v-popper--theme-tooltip .v-popper__inner{max-width:350px;padding:5px 8px;text-align:center;color:var(--color-main-text);border-radius:var(--border-radius);background-color:var(--color-main-background)}.v-popper--theme-tooltip .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/directives/Tooltip/index.scss"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCSA,0CACC,iBAAA,CACA,cAAA,CACA,KAAA,CACA,UAAA,CACA,SAAA,CACA,aAAA,CACA,QAAA,CACA,SAAA,CACA,eAAA,CACA,gBAAA,CACA,SAAA,CACA,eAAA,CAEA,eAAA,CACA,sDAAA,CAGA,iGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAID,oGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAID,mGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAID,kGACC,SAAA,CACA,oBAAA,CACA,8CAAA,CAID,4DACC,iBAAA,CACA,uCAAA,CACA,SAAA,CAED,6DACC,kBAAA,CACA,uBAAA,CACA,SAAA,CAKF,0CACC,eAAA,CACA,eAAA,CACA,iBAAA,CACA,4BAAA,CACA,kCAAA,CACA,6CAAA,CAID,oDACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBAhFY",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n/**\n* @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\n* @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\n* @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\n* @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\n* @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\n*\n* Bootstrap (http://getbootstrap.com)\n* SCSS copied from version 3.3.5\n* Copyright 2011-2015 Twitter, Inc.\n* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n*/\n\n$arrow-width: 10px;\n\n.v-popper--theme-tooltip {\n\t&.v-popper__popper {\n\t\tposition: absolute;\n\t\tz-index: 100000;\n\t\ttop: 0;\n\t\tright: auto;\n\t\tleft: auto;\n\t\tdisplay: block;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\ttext-align: left;\n\t\ttext-align: start;\n\t\topacity: 0;\n\t\tline-height: 1.6;\n\n\t\tline-break: auto;\n\t\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t\t// TOP\n\t\t&[data-popper-placement^='top'] .v-popper__arrow-container {\n\t\t\tbottom: -$arrow-width;\n\t\t\tborder-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\n\t\t}\n\n\t\t// BOTTOM\n\t\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\n\t\t\ttop: -$arrow-width;\n\t\t\tborder-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\n\t\t}\n\n\t\t// RIGHT\n\t\t&[data-popper-placement^='right'] .v-popper__arrow-container {\n\t\t\tright: 100%;\n\t\t\tborder-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\n\t\t}\n\n\t\t// LEFT\n\t\t&[data-popper-placement^='left'] .v-popper__arrow-container {\n\t\t\tleft: 100%;\n\t\t\tborder-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\n\t\t}\n\n\t\t// HIDDEN / SHOWN\n\t\t&[aria-hidden='true'] {\n\t\t\tvisibility: hidden;\n\t\t\ttransition: opacity .15s, visibility .15s;\n\t\t\topacity: 0;\n\t\t}\n\t\t&[aria-hidden='false'] {\n\t\t\tvisibility: visible;\n\t\t\ttransition: opacity .15s;\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t// CONTENT\n\t.v-popper__inner {\n\t\tmax-width: 350px;\n\t\tpadding: 5px 8px;\n\t\ttext-align: center;\n\t\tcolor: var(--color-main-text);\n\t\tborder-radius: var(--border-radius);\n\t\tbackground-color: var(--color-main-background);\n\t}\n\n\t// ARROW\n\t.v-popper__arrow-container {\n\t\tposition: absolute;\n\t\tz-index: 1;\n\t\twidth: 0;\n\t\theight: 0;\n\t\tmargin: 0;\n\t\tborder-style: solid;\n\t\tborder-color: transparent;\n\t\tborder-width: $arrow-width;\n\t}\n}\n"],sourceRoot:""}]);const s=r},4825:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon[data-v-29452b76]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-items[data-v-29452b76]{display:flex;align-items:center}.action-items>button[data-v-29452b76]{margin-right:7px}.action-item[data-v-29452b76]{--open-background-color: var(--color-background-hover, $action-background-hover);position:relative;display:inline-block}.action-item.action-item--primary[data-v-29452b76]{--open-background-color: var(--color-primary-element-hover)}.action-item.action-item--secondary[data-v-29452b76]{--open-background-color: var(--color-primary-element-light-hover)}.action-item.action-item--error[data-v-29452b76]{--open-background-color: var(--color-error-hover)}.action-item.action-item--warning[data-v-29452b76]{--open-background-color: var(--color-warning-hover)}.action-item.action-item--success[data-v-29452b76]{--open-background-color: var(--color-success-hover)}.action-item.action-item--tertiary-no-background[data-v-29452b76]{--open-background-color: transparent}.action-item.action-item--open .action-item__menutoggle[data-v-29452b76]{background-color:var(--open-background-color)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,+BACC,YAAA,CACA,kBAAA,CAGA,sCACC,gBAAA,CAIF,8BACC,gFAAA,CACA,iBAAA,CACA,oBAAA,CAEA,mDACC,2DAAA,CAGD,qDACC,iEAAA,CAGD,iDACC,iDAAA,CAGD,mDACC,mDAAA,CAGD,mDACC,mDAAA,CAGD,kEACC,oCAAA,CAGD,yEACC,6CAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// Inline buttons\n.action-items {\n\tdisplay: flex;\n\talign-items: center;\n\n\t// Spacing between buttons\n\t& > button {\n\t\tmargin-right: math.div($icon-margin, 2);\n\t}\n}\n\n.action-item {\n\t--open-background-color: var(--color-background-hover, $action-background-hover);\n\tposition: relative;\n\tdisplay: inline-block;\n\n\t&.action-item--primary {\n\t\t--open-background-color: var(--color-primary-element-hover);\n\t}\n\n\t&.action-item--secondary {\n\t\t--open-background-color: var(--color-primary-element-light-hover);\n\t}\n\n\t&.action-item--error {\n\t\t--open-background-color: var(--color-error-hover);\n\t}\n\n\t&.action-item--warning {\n\t\t--open-background-color: var(--color-warning-hover);\n\t}\n\n\t&.action-item--success {\n\t\t--open-background-color: var(--color-success-hover);\n\t}\n\n\t&.action-item--tertiary-no-background {\n\t\t--open-background-color: transparent;\n\t}\n\n\t&.action-item--open .action-item__menutoggle {\n\t\tbackground-color: var(--open-background-color);\n\t}\n}\n"],sourceRoot:""}]);const s=r},4946:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper{border-radius:var(--border-radius-large);overflow:hidden}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper .v-popper__inner{border-radius:var(--border-radius-large);padding:4px;max-height:calc(50vh - 16px);overflow:auto}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCJD,kFACC,wCAAA,CACA,eAAA,CAEA,mGACC,wCAAA,CACA,WAAA,CACA,4BAAA,CACA,aAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// We overwrote the popover base class, so we can style\n// the popover__inner for actions only.\n.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper {\n\tborder-radius: var(--border-radius-large);\n\toverflow:hidden;\n\n\t.v-popper__inner {\n\t\tborder-radius: var(--border-radius-large);\n\t\tpadding: 4px;\n\t\tmax-height: calc(50vh - 16px);\n\t\toverflow: auto;\n\t}\n}\n"],sourceRoot:""}]);const s=r},5218:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon[data-v-c3f93c9a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-settings-modal[data-v-c3f93c9a] .modal-wrapper .modal-container{display:flex;overflow:hidden}.app-settings[data-v-c3f93c9a]{width:100%;display:flex;flex-direction:column;min-width:0}.app-settings__name[data-v-c3f93c9a]{min-height:44px;height:44px;line-height:44px;padding-top:4px;text-align:center}.app-settings__wrapper[data-v-c3f93c9a]{display:flex;width:100%;overflow:hidden;height:100%;position:relative}.app-settings__navigation[data-v-c3f93c9a]{min-width:200px;margin-right:20px;overflow-x:hidden;overflow-y:auto;position:relative;height:100%}.app-settings__content[data-v-c3f93c9a]{max-width:100vw;overflow-y:auto;overflow-x:hidden;padding:24px;width:100%}.navigation-list[data-v-c3f93c9a]{height:100%;box-sizing:border-box;overflow-y:auto;padding:12px}.navigation-list__link[data-v-c3f93c9a]{display:block;font-size:16px;height:44px;margin:4px 0;line-height:44px;border-radius:var(--border-radius-pill);font-weight:bold;padding:0 20px;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;background-color:rgba(0,0,0,0);border:none}.navigation-list__link[data-v-c3f93c9a]:hover,.navigation-list__link[data-v-c3f93c9a]:focus{background-color:var(--color-background-hover)}.navigation-list__link--active[data-v-c3f93c9a]{background-color:var(--color-primary-element-light) !important}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcAppSettingsDialog/NcAppSettingsDialog.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,qEACC,YAAA,CACA,eAAA,CAGD,+BACC,UAAA,CACA,YAAA,CACA,qBAAA,CACA,WAAA,CACA,qCACC,eCWe,CDVf,WCUe,CDTf,gBCSe,CDRf,eAAA,CACA,iBAAA,CAED,wCACC,YAAA,CACA,UAAA,CACA,eAAA,CACA,WAAA,CACA,iBAAA,CAED,2CACC,eAAA,CACA,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,iBAAA,CACA,WAAA,CAED,wCACC,eAAA,CACA,eAAA,CACA,iBAAA,CACA,YAAA,CACA,UAAA,CAIF,kCACC,WAAA,CACA,qBAAA,CACA,eAAA,CACA,YAAA,CACA,wCACC,aAAA,CACA,cAAA,CACA,WC3Be,CD4Bf,YAAA,CACA,gBC7Be,CD8Bf,uCAAA,CACA,gBAAA,CACA,cAAA,CACA,cAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,8BAAA,CACA,WAAA,CACA,4FAEC,8CAAA,CAED,gDACC,8DAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.app-settings-modal :deep(.modal-wrapper .modal-container) {\n\tdisplay: flex;\n\toverflow: hidden;\n}\n\n.app-settings {\n\twidth: 100%;\n\tdisplay: flex;\n\tflex-direction: column;\n\tmin-width: 0;\n\t&__name {\n\t\tmin-height: $clickable-area;\n\t\theight: $clickable-area;\n\t\tline-height: $clickable-area;\n\t\tpadding-top: 4px; // Same as the close button top spacing\n\t\ttext-align: center;\n\t}\n\t&__wrapper {\n\t\tdisplay: flex;\n\t\twidth: 100%;\n\t\toverflow: hidden;\n\t\theight: 100%;\n\t\tposition: relative;\n\t}\n\t&__navigation {\n\t\tmin-width: 200px;\n\t\tmargin-right: 20px;\n\t\toverflow-x: hidden;\n\t\toverflow-y: auto;\n\t\tposition: relative;\n\t\theight: 100%;\n\t}\n\t&__content {\n\t\tmax-width: 100vw;\n\t\toverflow-y: auto;\n\t\toverflow-x: hidden;\n\t\tpadding: 24px;\n\t\twidth: 100%;\n\t}\n}\n\n.navigation-list {\n\theight: 100%;\n\tbox-sizing: border-box;\n\toverflow-y: auto;\n\tpadding: 12px;\n\t&__link {\n\t\tdisplay: block;\n\t\tfont-size: 16px;\n\t\theight: $clickable-area;\n\t\tmargin: 4px 0;\n\t\tline-height: $clickable-area;\n\t\tborder-radius: var(--border-radius-pill);\n\t\tfont-weight: bold;\n\t\tpadding: 0 20px;\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t\t&--active {\n\t\t\tbackground-color: var(--color-primary-element-light) !important;\n\t\t}\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=r},7196:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon[data-v-4d05be2c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue[data-v-4d05be2c]{position:relative;width:fit-content;overflow:hidden;border:0;padding:0;font-size:var(--default-font-size);font-weight:bold;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:22px;transition-property:color,border-color,background-color;transition-duration:.1s;transition-timing-function:linear;color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue *[data-v-4d05be2c],.button-vue span[data-v-4d05be2c]{cursor:pointer}.button-vue[data-v-4d05be2c]:focus{outline:none}.button-vue[data-v-4d05be2c]:disabled{cursor:default;opacity:.5;filter:saturate(0.7)}.button-vue:disabled *[data-v-4d05be2c]{cursor:default}.button-vue[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-light-hover)}.button-vue[data-v-4d05be2c]:active{background-color:var(--color-primary-element-light)}.button-vue__wrapper[data-v-4d05be2c]{display:inline-flex;align-items:center;justify-content:center;width:100%}.button-vue__icon[data-v-4d05be2c]{height:44px;width:44px;min-height:44px;min-width:44px;display:flex;justify-content:center;align-items:center}.button-vue__text[data-v-4d05be2c]{font-weight:bold;margin-bottom:1px;padding:2px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.button-vue--icon-only[data-v-4d05be2c]{width:44px !important}.button-vue--text-only[data-v-4d05be2c]{padding:0 12px}.button-vue--text-only .button-vue__text[data-v-4d05be2c]{margin-left:4px;margin-right:4px}.button-vue--icon-and-text[data-v-4d05be2c]{padding:0 16px 0 4px}.button-vue--wide[data-v-4d05be2c]{width:100%}.button-vue[data-v-4d05be2c]:focus-visible{outline:2px solid var(--color-main-text) !important}.button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{outline:2px solid var(--color-primary-element-text);border-radius:var(--border-radius);background-color:rgba(0,0,0,0)}.button-vue--vue-primary[data-v-4d05be2c]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.button-vue--vue-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-hover)}.button-vue--vue-primary[data-v-4d05be2c]:active{background-color:var(--color-primary-element)}.button-vue--vue-secondary[data-v-4d05be2c]{color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue--vue-secondary[data-v-4d05be2c]:hover:not(:disabled){color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light-hover)}.button-vue--vue-tertiary[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color);background-color:var(--color-background-hover)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{color:var(--color-primary-element-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-success[data-v-4d05be2c]{background-color:var(--color-success);color:#fff}.button-vue--vue-success[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-success-hover)}.button-vue--vue-success[data-v-4d05be2c]:active{background-color:var(--color-success)}.button-vue--vue-warning[data-v-4d05be2c]{background-color:var(--color-warning);color:#fff}.button-vue--vue-warning[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-warning-hover)}.button-vue--vue-warning[data-v-4d05be2c]:active{background-color:var(--color-warning)}.button-vue--vue-error[data-v-4d05be2c]{background-color:var(--color-error);color:#fff}.button-vue--vue-error[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-error-hover)}.button-vue--vue-error[data-v-4d05be2c]:active{background-color:var(--color-error)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcButton/NcButton.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,QAAA,CACA,SAAA,CACA,kCAAA,CACA,gBAAA,CACA,eCcgB,CDbhB,cCagB,CDZhB,YAAA,CACA,kBAAA,CACA,sBAAA,CAGA,cAAA,CAKA,kBAAA,CACA,uDAAA,CACA,uBAAA,CACA,iCAAA,CAkBA,6CAAA,CACA,mDAAA,CA1BA,iEAEC,cAAA,CAQD,mCACC,YAAA,CAGD,sCACC,cAAA,CAIA,UCIiB,CDFjB,oBAAA,CALA,wCACC,cAAA,CAUF,kDACC,yDAAA,CAKD,oCACC,mDAAA,CAGD,sCACC,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAGD,mCACC,WCvCe,CDwCf,UCxCe,CDyCf,eCzCe,CD0Cf,cC1Ce,CD2Cf,YAAA,CACA,sBAAA,CACA,kBAAA,CAGD,mCACC,gBAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CAID,wCACC,qBAAA,CAID,wCACC,cAAA,CACA,0DACC,eAAA,CACA,gBAAA,CAKF,4CACC,oBAAA,CAID,mCACC,UAAA,CAGD,2CACC,mDAAA,CACA,+EACC,mDAAA,CACA,kCAAA,CACA,8BAAA,CAOF,0CACC,6CAAA,CACA,uCAAA,CACA,+DACC,mDAAA,CAID,iDACC,6CAAA,CAKF,4CACC,6CAAA,CACA,mDAAA,CACA,iEACC,6CAAA,CACA,yDAAA,CAKF,2CACC,4BAAA,CACA,8BAAA,CACA,gEACC,6BAAA,CACA,8CAAA,CAKF,yDACC,4BAAA,CACA,8BAAA,CACA,8EACC,8BAAA,CAKF,sDACC,uCAAA,CACA,8BAAA,CAEA,2EACC,8BAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,wCACC,mCAAA,CACA,UAAA,CACA,6DACC,yCAAA,CAID,+CACC,mCAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.button-vue {\n\tposition: relative;\n\twidth: fit-content;\n\toverflow: hidden;\n\tborder: 0;\n\tpadding: 0;\n\tfont-size: var(--default-font-size);\n\tfont-weight: bold;\n\tmin-height: $clickable-area;\n\tmin-width: $clickable-area;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t// Cursor pointer on element and all children\n\tcursor: pointer;\n\t& *,\n\tspan {\n\t\tcursor: pointer;\n\t}\n\tborder-radius: math.div($clickable-area, 2);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: 0.1s;\n\ttransition-timing-function: linear;\n\n\t// No outline feedback for focus. Handled with a toggled class in js (see data)\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t\t& * {\n\t\t\tcursor: default;\n\t\t}\n\t\topacity: $opacity_disabled;\n\t\t// Gives a wash out effect\n\t\tfilter: saturate($opacity_normal);\n\t}\n\n\t// Default button type\n\tcolor: var(--color-primary-element-light-text);\n\tbackground-color: var(--color-primary-element-light);\n\t&:hover:not(:disabled) {\n\t\tbackground-color: var(--color-primary-element-light-hover);\n\t}\n\n\t// Back to the default color for this button when active\n\t// TODO: add ripple effect\n\t&:active {\n\t\tbackground-color: var(--color-primary-element-light);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t}\n\n\t&__icon {\n\t\theight: $clickable-area;\n\t\twidth: $clickable-area;\n\t\tmin-height: $clickable-area;\n\t\tmin-width: $clickable-area;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n\n\t&__text {\n\t\tfont-weight: bold;\n\t\tmargin-bottom: 1px;\n\t\tpadding: 2px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t// Icon-only button\n\t&--icon-only {\n\t\twidth: $clickable-area !important;\n\t}\n\n\t// Text-only button\n\t&--text-only {\n\t\tpadding: 0 12px;\n\t\t& .button-vue__text {\n\t\t\tmargin-left: 4px;\n\t\t\tmargin-right: 4px;\n\t\t}\n\t}\n\n\t// Icon and text button\n\t&--icon-and-text {\n\t\tpadding: 0 16px 0 4px;\n\t}\n\n\t// Wide button spans the whole width of the container\n\t&--wide {\n\t\twidth: 100%;\n\t}\n\n\t&:focus-visible {\n\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t&.button-vue--vue-tertiary-on-primary {\n\t\t\toutline: 2px solid var(--color-primary-element-text);\n\t\t\tborder-radius: var(--border-radius);\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Button types\n\n\t// Primary\n\t&--vue-primary {\n\t\tbackground-color: var(--color-primary-element);\n\t\tcolor: var(--color-primary-element-text);\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t}\n\t}\n\n\t// Secondary\n\t&--vue-secondary {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-light);\n\t\t&:hover:not(:disabled) {\n\t\t\tcolor: var(--color-primary-element-light-text);\n\t\t\tbackground-color: var(--color-primary-element-light-hover);\n\t\t}\n\t}\n\n\t// Tertiary\n\t&--vue-tertiary {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color);\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Tertiary, no background\n\t&--vue-tertiary-no-background {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Tertiary on primary color (like the header)\n\t&--vue-tertiary-on-primary {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: transparent;\n\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Success\n\t&--vue-success {\n\t\tbackground-color: var(--color-success);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-success-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// : add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t}\n\n\t// Warning\n\t&--vue-warning {\n\t\tbackground-color: var(--color-warning);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-warning-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-warning);\n\t\t}\n\t}\n\n\t// Error\n\t&--vue-error {\n\t\tbackground-color: var(--color-error);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-error-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=r},2482:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,'.material-design-icon[data-v-234c4d21]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.modal-mask[data-v-234c4d21]{position:fixed;z-index:9998;top:0;left:0;display:block;width:100%;height:100%;background-color:rgba(0,0,0,.5)}.modal-mask--dark[data-v-234c4d21]{background-color:rgba(0,0,0,.92)}.modal-header[data-v-234c4d21]{position:absolute;z-index:10001;top:0;right:0;left:0;display:flex !important;align-items:center;justify-content:center;width:100%;height:50px;overflow:hidden;transition:opacity 250ms,visibility 250ms}.modal-header.invisible[style*="display:none"][data-v-234c4d21],.modal-header.invisible[style*="display: none"][data-v-234c4d21]{visibility:hidden}.modal-header .modal-name[data-v-234c4d21]{overflow-x:hidden;box-sizing:border-box;width:100%;padding:0 132px 0 12px;transition:padding ease 100ms;white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:14px;margin-bottom:0}@media only screen and (min-width: 1024px){.modal-header .modal-name[data-v-234c4d21]{padding-left:132px;text-align:center}}.modal-header .icons-menu[data-v-234c4d21]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .header-close[data-v-234c4d21]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;margin:3px;padding:0}.modal-header .icons-menu .play-pause-icons[data-v-234c4d21]{position:relative;width:50px;height:50px;margin:0;padding:0;cursor:pointer;border:none;background-color:rgba(0,0,0,0)}.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__play[data-v-234c4d21],.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__pause[data-v-234c4d21],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__play[data-v-234c4d21],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__pause[data-v-234c4d21]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,.25)}.modal-header .icons-menu .play-pause-icons__play[data-v-234c4d21],.modal-header .icons-menu .play-pause-icons__pause[data-v-234c4d21]{box-sizing:border-box;width:44px;height:44px;margin:3px;cursor:pointer;opacity:.7}.modal-header .icons-menu .header-actions[data-v-234c4d21]{color:#fff}.modal-header .icons-menu[data-v-234c4d21] .action-item{margin:3px}.modal-header .icons-menu[data-v-234c4d21] .action-item--single{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-234c4d21] button{color:#fff}.modal-header .icons-menu[data-v-234c4d21] .action-item__menutoggle{padding:0}.modal-header .icons-menu[data-v-234c4d21] .action-item__menutoggle span,.modal-header .icons-menu[data-v-234c4d21] .action-item__menutoggle svg{width:var(--icon-size);height:var(--icon-size)}.modal-wrapper[data-v-234c4d21]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-234c4d21],.modal-wrapper .next[data-v-234c4d21]{z-index:10000;display:flex !important;height:35vw;position:absolute;transition:opacity 250ms,visibility 250ms;color:var(--color-primary-element-text)}.modal-wrapper .prev[data-v-234c4d21]:focus-visible,.modal-wrapper .next[data-v-234c4d21]:focus-visible{box-shadow:0 0 0 2px var(--color-primary-element-text);background-color:var(--color-box-shadow)}.modal-wrapper .prev.invisible[style*="display:none"][data-v-234c4d21],.modal-wrapper .prev.invisible[style*="display: none"][data-v-234c4d21],.modal-wrapper .next.invisible[style*="display:none"][data-v-234c4d21],.modal-wrapper .next.invisible[style*="display: none"][data-v-234c4d21]{visibility:hidden}.modal-wrapper .prev[data-v-234c4d21]{left:2px}.modal-wrapper .next[data-v-234c4d21]{right:2px}.modal-wrapper .modal-container[data-v-234c4d21]{position:relative;display:block;overflow:auto;padding:0;transition:transform 300ms ease;border-radius:var(--border-radius-large);background-color:var(--color-main-background);color:var(--color-main-text);box-shadow:0 0 40px rgba(0,0,0,.2)}.modal-wrapper .modal-container__close[data-v-234c4d21]{position:absolute;top:4px;right:4px}.modal-wrapper--small .modal-container[data-v-234c4d21]{width:400px;max-width:90%;max-height:90%}.modal-wrapper--normal .modal-container[data-v-234c4d21]{max-width:90%;width:600px;max-height:90%}.modal-wrapper--large .modal-container[data-v-234c4d21]{max-width:90%;width:900px;max-height:90%}.modal-wrapper--full .modal-container[data-v-234c4d21]{width:100%;height:calc(100% - var(--header-height));position:absolute;top:50px;border-radius:0}@media only screen and (max-width: 512px){.modal-wrapper .modal-container[data-v-234c4d21]{max-width:initial;width:100%;max-height:initial;height:calc(100% - var(--header-height));position:absolute;top:50px;border-radius:0}}.fade-enter-active[data-v-234c4d21],.fade-leave-active[data-v-234c4d21]{transition:opacity 250ms}.fade-enter[data-v-234c4d21],.fade-leave-to[data-v-234c4d21]{opacity:0}.fade-visibility-enter[data-v-234c4d21],.fade-visibility-leave-to[data-v-234c4d21]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-234c4d21],.modal-in-leave-active[data-v-234c4d21],.modal-out-enter-active[data-v-234c4d21],.modal-out-leave-active[data-v-234c4d21]{transition:opacity 250ms}.modal-in-enter[data-v-234c4d21],.modal-in-leave-to[data-v-234c4d21],.modal-out-enter[data-v-234c4d21],.modal-out-leave-to[data-v-234c4d21]{opacity:0}.modal-in-enter .modal-container[data-v-234c4d21],.modal-in-leave-to .modal-container[data-v-234c4d21]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-234c4d21],.modal-out-leave-to .modal-container[data-v-234c4d21]{transform:scale(1.1)}.modal-mask .play-pause-icons .progress-ring[data-v-234c4d21]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause-icons .progress-ring .progress-ring__circle[data-v-234c4d21]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-234c4d21 linear var(--slideshow-duration) infinite;stroke-linecap:round;stroke-dashoffset:94.2477796077;stroke-dasharray:94.2477796077}.modal-mask .play-pause-icons--paused .icon-pause[data-v-234c4d21]{animation:breath-234c4d21 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause-icons--paused .progress-ring__circle[data-v-234c4d21]{animation-play-state:paused !important}@keyframes progressring-234c4d21{from{stroke-dashoffset:94.2477796077}to{stroke-dashoffset:0}}@keyframes breath-234c4d21{0%{opacity:1}50%{opacity:0}100%{opacity:1}}',"",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcModal/NcModal.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,cAAA,CACA,YAAA,CACA,KAAA,CACA,MAAA,CACA,aAAA,CACA,UAAA,CACA,WAAA,CACA,+BAAA,CACA,mCACC,gCAAA,CAIF,+BACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,OAAA,CACA,MAAA,CAGA,uBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WCuBe,CDtBf,eAAA,CACA,yCAAA,CAIA,iIAEC,iBAAA,CAGD,2CACC,iBAAA,CACA,qBAAA,CACA,UAAA,CACA,sBAAA,CACA,6BAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,cChBY,CDiBZ,eAAA,CAID,2CACC,2CACC,kBAAA,CACA,iBAAA,CAAA,CAIF,2CACC,iBAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,wBAAA,CAEA,yDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,qBAAA,CACA,UAAA,CACA,SAAA,CAGD,6DACC,iBAAA,CACA,UC3Ba,CD4Bb,WC5Ba,CD6Bb,QAAA,CACA,SAAA,CACA,cAAA,CACA,WAAA,CACA,8BAAA,CAGC,8WAEC,SC9CU,CD+CV,kBAAA,CACA,sCCxDW,CD2Db,uIAEC,qBAAA,CACA,UCzEa,CD0Eb,WC1Ea,CD2Eb,UAAA,CACA,cAAA,CACA,UC3Da,CD+Df,2DACC,UAAA,CAGD,yDACC,UAAA,CAEA,iEACC,qBAAA,CACA,UC1Fa,CD2Fb,WC3Fa,CD4Fb,cAAA,CACA,0BAAA,CACA,oBAAA,CAIF,kDAEC,UAAA,CAID,oEACC,SAAA,CACA,iJACC,sBAAA,CACA,uBAAA,CAMJ,gCACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,qBAAA,CACA,UAAA,CACA,WAAA,CAGA,4EAEC,aAAA,CAEA,uBAAA,CACA,WAAA,CACA,iBAAA,CACA,yCAAA,CAEA,uCAAA,CAEA,wGAEC,sDAAA,CACA,wCAAA,CAOD,8RAEC,iBAAA,CAGF,sCACC,QAAA,CAED,sCACC,SAAA,CAID,iDACC,iBAAA,CACA,aAAA,CACA,aAAA,CACA,SAAA,CACA,+BAAA,CACA,wCAAA,CACA,6CAAA,CACA,4BAAA,CACA,kCAAA,CACA,wDACC,iBAAA,CACA,OAAA,CACA,SAAA,CAMD,wDACC,WAAA,CACA,aAAA,CACA,cAAA,CAID,yDACC,aAAA,CACA,WAAA,CACA,cAAA,CAID,wDACC,aAAA,CACA,WAAA,CACA,cAAA,CAID,uDACC,UAAA,CACA,wCAAA,CACA,iBAAA,CACA,QC9Ka,CD+Kb,eAAA,CAKF,0CACC,iDACC,iBAAA,CACA,UAAA,CACA,kBAAA,CACA,wCAAA,CACA,iBAAA,CACA,QC3La,CD4Lb,eAAA,CAAA,CAMH,wEAEC,wBAAA,CAGD,6DAEC,SAAA,CAGD,mFAEC,iBAAA,CACA,SAAA,CAGD,kKAIC,wBAAA,CAGD,4IAIC,SAAA,CAGD,uGAEC,oBAAA,CAGD,yGAEC,oBAAA,CAQA,8DACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CACA,qFACC,kCAAA,CACA,wBAAA,CACA,yEAAA,CAEA,oBAAA,CACA,+BAAA,CACA,8BAAA,CAID,mEACC,kEAAA,CAED,8EACC,sCAAA,CAMH,iCACC,KACC,+BAAA,CAED,GACC,mBAAA,CAAA,CAIF,2BACC,GACC,SAAA,CAED,IACC,SAAA,CAED,KACC,SAAA,CAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.modal-mask {\n\tposition: fixed;\n\tz-index: 9998;\n\ttop: 0;\n\tleft: 0;\n\tdisplay: block;\n\twidth: 100%;\n\theight: 100%;\n\tbackground-color: rgba(0, 0, 0, .5);\n\t&--dark {\n\t\tbackground-color: rgba(0, 0, 0, .92);\n\t}\n}\n\n.modal-header {\n\tposition: absolute;\n\tz-index: 10001;\n\ttop: 0;\n\tright: 0;\n\tleft: 0;\n\t// prevent vue show to use display:none and reseting\n\t// the circle animation loop\n\tdisplay: flex !important;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 100%;\n\theight: $header-height;\n\toverflow: hidden;\n\ttransition: opacity 250ms,\n\t\tvisibility 250ms;\n\n\t// replace display by visibility\n\t&.invisible[style*='display:none'],\n\t&.invisible[style*='display: none'] {\n\t\tvisibility: hidden;\n\t}\n\n\t.modal-name {\n\t\toverflow-x: hidden;\n\t\tbox-sizing: border-box;\n\t\twidth: 100%;\n\t\tpadding: 0 #{$clickable-area * 3} 0 12px; // maximum actions is 3\n\t\ttransition: padding ease 100ms;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: #fff;\n\t\tfont-size: $icon-margin;\n\t\tmargin-bottom: 0;\n\t}\n\n\t// On wider screens the name can be centered\n\t@media only screen and (min-width: $breakpoint-mobile) {\n\t\t.modal-name {\n\t\t\tpadding-left: #{$clickable-area * 3}; // maximum actions is 3\n\t\t\ttext-align: center;\n\t\t}\n\t}\n\n\t.icons-menu {\n\t\tposition: absolute;\n\t\tright: 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: flex-end;\n\n\t\t.header-close {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tbox-sizing: border-box;\n\t\t\tmargin: math.div($header-height - $clickable-area, 2);\n\t\t\tpadding: 0;\n\t\t}\n\n\t\t.play-pause-icons {\n\t\t\tposition: relative;\n\t\t\twidth: $header-height;\n\t\t\theight: $header-height;\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tcursor: pointer;\n\t\t\tborder: none;\n\t\t\tbackground-color: transparent;\n\t\t\t&:hover,\n\t\t\t&:focus {\n\t\t\t\t.play-pause-icons__play,\n\t\t\t\t.play-pause-icons__pause {\n\t\t\t\t\topacity: $opacity_full;\n\t\t\t\t\tborder-radius: math.div($clickable-area, 2);\n\t\t\t\t\tbackground-color: $icon-focus-bg;\n\t\t\t\t}\n\t\t\t}\n\t\t\t&__play,\n\t\t\t&__pause {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: $clickable-area;\n\t\t\t\theight: $clickable-area;\n\t\t\t\tmargin: math.div($header-height - $clickable-area, 2);\n\t\t\t\tcursor: pointer;\n\t\t\t\topacity: $opacity_normal;\n\t\t\t}\n\t\t}\n\n\t\t.header-actions {\n\t\t\tcolor: white;\n\t\t}\n\n\t\t&:deep() .action-item {\n\t\t\tmargin: math.div($header-height - $clickable-area, 2);\n\n\t\t\t&--single {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: $clickable-area;\n\t\t\t\theight: $clickable-area;\n\t\t\t\tcursor: pointer;\n\t\t\t\tbackground-position: center;\n\t\t\t\tbackground-size: 22px;\n\t\t\t}\n\t\t}\n\n\t\t:deep(button) {\n\t\t\t// force white instead of default main text\n\t\t\tcolor: #fff;\n\t\t}\n\n\t\t// Force the Actions menu icon to be the same size as other icons\n\t\t&:deep(.action-item__menutoggle) {\n\t\t\tpadding: 0;\n\t\t\tspan, svg {\n\t\t\t\twidth: var(--icon-size);\n\t\t\t\theight: var(--icon-size);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.modal-wrapper {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tbox-sizing: border-box;\n\twidth: 100%;\n\theight: 100%;\n\n\t/* Navigation buttons */\n\t.prev,\n\t.next {\n\t\tz-index: 10000;\n\t\t// ignore display: none\n\t\tdisplay: flex !important;\n\t\theight: 35vw;\n\t\tposition: absolute;\n\t\ttransition: opacity 250ms,\n\t\t\tvisibility 250ms;\n\t\tcolor: var(--color-primary-element-text);\n\n\t\t&:focus-visible {\n\t\t\t// Override NcButton focus styles\n\t\t\tbox-shadow: 0 0 0 2px var(--color-primary-element-text);\n\t\t\tbackground-color: var(--color-box-shadow);\n\t\t}\n\n\t\t// we want to keep the elements on page\n\t\t// even if hidden to avoid having a unbalanced\n\t\t// centered content\n\t\t// replace display by visibility\n\t\t&.invisible[style*='display:none'],\n\t\t&.invisible[style*='display: none'] {\n\t\t\tvisibility: hidden;\n\t\t}\n\t}\n\t.prev {\n\t\tleft: 2px;\n\t}\n\t.next {\n\t\tright: 2px;\n\t}\n\n\t/* Content */\n\t.modal-container {\n\t\tposition: relative;\n\t\tdisplay: block;\n\t\toverflow: auto; // avoids unecessary hacks if the content should be bigger than the modal\n\t\tpadding: 0;\n\t\ttransition: transform 300ms ease;\n\t\tborder-radius: var(--border-radius-large);\n\t\tbackground-color: var(--color-main-background);\n\t\tcolor: var(--color-main-text);\n\t\tbox-shadow: 0 0 40px rgba(0, 0, 0, .2);\n\t\t&__close {\n\t\t\tposition: absolute;\n\t\t\ttop: 4px;\n\t\t\tright: 4px;\n\t\t}\n\t}\n\n\t// Sizing\n\t&--small {\n\t\t.modal-container {\n\t\t\twidth: 400px;\n\t\t\tmax-width: 90%;\n\t\t\tmax-height: 90%;\n\t\t}\n\t}\n\t&--normal {\n\t\t.modal-container {\n\t\t\tmax-width: 90%;\n\t\t\twidth: 600px;\n\t\t\tmax-height: 90%;\n\t\t}\n\t}\n\t&--large {\n\t\t.modal-container {\n\t\t\tmax-width: 90%;\n\t\t\twidth: 900px;\n\t\t\tmax-height: 90%;\n\t\t}\n\t}\n\t&--full {\n\t\t.modal-container {\n\t\t\twidth: 100%;\n\t\t\theight: calc(100% - var(--header-height));\n\t\t\tposition: absolute;\n\t\t\ttop: $header-height;\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n\n\t// Make modal full screen on mobile\n\t@media only screen and (max-width: math.div($breakpoint-mobile, 2)) {\n\t\t.modal-container {\n\t\t\tmax-width: initial;\n\t\t\twidth: 100%;\n\t\t\tmax-height: initial;\n\t\t\theight: calc(100% - var(--header-height));\n\t\t\tposition: absolute;\n\t\t\ttop: $header-height;\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n}\n\n/* TRANSITIONS */\n.fade-enter-active,\n.fade-leave-active {\n\ttransition: opacity 250ms;\n}\n\n.fade-enter,\n.fade-leave-to {\n\topacity: 0;\n}\n\n.fade-visibility-enter,\n.fade-visibility-leave-to {\n\tvisibility: hidden;\n\topacity: 0;\n}\n\n.modal-in-enter-active,\n.modal-in-leave-active,\n.modal-out-enter-active,\n.modal-out-leave-active {\n\ttransition: opacity 250ms;\n}\n\n.modal-in-enter,\n.modal-in-leave-to,\n.modal-out-enter,\n.modal-out-leave-to {\n\topacity: 0;\n}\n\n.modal-in-enter .modal-container,\n.modal-in-leave-to .modal-container {\n\ttransform: scale(.9);\n}\n\n.modal-out-enter .modal-container,\n.modal-out-leave-to .modal-container {\n\ttransform: scale(1.1);\n}\n\n// animated circle\n$radius: 15;\n$pi: 3.14159265358979;\n\n.modal-mask .play-pause-icons {\n\t.progress-ring {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\ttransform: rotate(-90deg);\n\t\t.progress-ring__circle {\n\t\t\ttransition: 100ms stroke-dashoffset;\n\t\t\ttransform-origin: 50% 50%; // axis compensation\n\t\t\tanimation: progressring linear var(--slideshow-duration) infinite;\n\n\t\t\tstroke-linecap: round;\n\t\t\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\n\t\t\tstroke-dasharray: $radius * 2 * $pi; // radius * 2 * PI\n\t\t}\n\t}\n\t&--paused {\n\t\t.icon-pause {\n\t\t\tanimation: breath 2s cubic-bezier(.4, 0, .2, 1) infinite;\n\t\t}\n\t\t.progress-ring__circle {\n\t\t\tanimation-play-state: paused !important;\n\t\t}\n\t}\n}\n\n// keyframes get scoped too and break the animation name, we need them unscoped\n@keyframes progressring {\n\tfrom {\n\t\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\n\t}\n\tto {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes breath {\n\t0% {\n\t\topacity: 1;\n\t}\n\t50% {\n\t\topacity: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=r},1625:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.resize-observer{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:rgba(0,0,0,0);pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper--theme-dropdown.v-popper__popper{z-index:100000;top:0;left:0;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-dropdown.v-popper__popper .v-popper__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius-large);overflow:hidden;background:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{left:-10px;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity var(--animation-quick);opacity:1}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcPopover/NcPopover.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,iBACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,aAAA,CACA,eAAA,CACA,SAAA,CAGD,wBACC,aAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,mBAAA,CACA,UAAA,CAMA,2CACC,cAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CAEA,sDAAA,CAEA,4DACC,SAAA,CACA,4BAAA,CACA,wCAAA,CACA,eAAA,CACA,uCAAA,CAGD,sEACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBA1BW,CA6BZ,kGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAGD,qGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAGD,oGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAGD,mGACC,WAAA,CACA,oBAAA,CACA,8CAAA,CAGD,6DACC,iBAAA,CACA,2EAAA,CACA,SAAA,CAGD,8DACC,kBAAA,CACA,yCAAA,CACA,SAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.resize-observer {\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\tz-index:-1;\n\twidth:100%;\n\theight:100%;\n\tborder:none;\n\tbackground-color:transparent;\n\tpointer-events:none;\n\tdisplay:block;\n\toverflow:hidden;\n\topacity:0\n}\n\n.resize-observer object {\n\tdisplay:block;\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\theight:100%;\n\twidth:100%;\n\toverflow:hidden;\n\tpointer-events:none;\n\tz-index:-1\n}\n\n$arrow-width: 10px;\n\n.v-popper--theme-dropdown {\n\t&.v-popper__popper {\n\t\tz-index: 100000;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tdisplay: block !important;\n\n\t\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t\t.v-popper__inner {\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-main-text);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t\toverflow: hidden;\n\t\t\tbackground: var(--color-main-background);\n\t\t}\n\n\t\t.v-popper__arrow-container {\n\t\t\tposition: absolute;\n\t\t\tz-index: 1;\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\tborder-style: solid;\n\t\t\tborder-color: transparent;\n\t\t\tborder-width: $arrow-width;\n\t\t}\n\n\t\t&[data-popper-placement^='top'] .v-popper__arrow-container {\n\t\t\tbottom: -$arrow-width;\n\t\t\tborder-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\n\t\t\ttop: -$arrow-width;\n\t\t\tborder-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='right'] .v-popper__arrow-container {\n\t\t\tleft: -$arrow-width;\n\t\t\tborder-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='left'] .v-popper__arrow-container {\n\t\t\tright: -$arrow-width;\n\t\t\tborder-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\n\t\t}\n\n\t\t&[aria-hidden='true'] {\n\t\t\tvisibility: hidden;\n\t\t\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&[aria-hidden='false'] {\n\t\t\tvisibility: visible;\n\t\t\ttransition: opacity var(--animation-quick);\n\t\t\topacity: 1;\n\t\t}\n\t}\n}\n\n"],sourceRoot:""}]);const s=r},3645:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var a="",o=void 0!==t[5];return t[4]&&(a+="@supports (".concat(t[4],") {")),t[2]&&(a+="@media ".concat(t[2]," {")),o&&(a+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),a+=e(t),o&&(a+="}"),t[2]&&(a+="}"),t[4]&&(a+="}"),a})).join("")},t.i=function(e,a,o,i,n){"string"==typeof e&&(e=[[null,e,void 0]]);var r={};if(o)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(r[l]=!0)}for(var c=0;c<e.length;c++){var d=[].concat(e[c]);o&&r[d[0]]||(void 0!==n&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=n),a&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=a):d[2]=a),i&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=i):d[4]="".concat(i)),t.push(d))}},t}},7537:e=>{"use strict";e.exports=function(e){var t=e[1],a=e[3];if(!a)return t;if("function"==typeof btoa){var o=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),i="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(o),n="/*# ".concat(i," */");return[t].concat([n]).join("\n")}return[t].join("\n")}},3379:e=>{"use strict";var t=[];function a(e){for(var a=-1,o=0;o<t.length;o++)if(t[o].identifier===e){a=o;break}return a}function o(e,o){for(var n={},r=[],s=0;s<e.length;s++){var l=e[s],c=o.base?l[0]+o.base:l[0],d=n[c]||0,u="".concat(c," ").concat(d);n[c]=d+1;var p=a(u),A={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)t[p].references++,t[p].updater(A);else{var m=i(A,o);o.byIndex=s,t.splice(s,0,{identifier:u,updater:m,references:1})}r.push(u)}return r}function i(e,t){var a=t.domAPI(t);a.update(e);return function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;a.update(e=t)}else a.remove()}}e.exports=function(e,i){var n=o(e=e||[],i=i||{});return function(e){e=e||[];for(var r=0;r<n.length;r++){var s=a(n[r]);t[s].references--}for(var l=o(e,i),c=0;c<n.length;c++){var d=a(n[c]);0===t[d].references&&(t[d].updater(),t.splice(d,1))}n=l}}},569:e=>{"use strict";var t={};e.exports=function(e,a){var o=function(e){if(void 0===t[e]){var a=document.querySelector(e);if(window.HTMLIFrameElement&&a instanceof window.HTMLIFrameElement)try{a=a.contentDocument.head}catch(e){a=null}t[e]=a}return t[e]}(e);if(!o)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");o.appendChild(a)}},9216:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},3565:(e,t,a)=>{"use strict";e.exports=function(e){var t=a.nc;t&&e.setAttribute("nonce",t)}},7795:e=>{"use strict";e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(a){!function(e,t,a){var o="";a.supports&&(o+="@supports (".concat(a.supports,") {")),a.media&&(o+="@media ".concat(a.media," {"));var i=void 0!==a.layer;i&&(o+="@layer".concat(a.layer.length>0?" ".concat(a.layer):""," {")),o+=a.css,i&&(o+="}"),a.media&&(o+="}"),a.supports&&(o+="}");var n=a.sourceMap;n&&"undefined"!=typeof btoa&&(o+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(n))))," */")),t.styleTagTransform(o,e,t.options)}(t,e,a)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},4589:e=>{"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},5727:()=>{},7984:()=>{},2102:()=>{},9989:()=>{},2405:()=>{},1900:(e,t,a)=>{"use strict";function o(e,t,a,o,i,n,r,s){var l,c="function"==typeof e?e.options:e;if(t&&(c.render=t,c.staticRenderFns=a,c._compiled=!0),o&&(c.functional=!0),n&&(c._scopeId="data-v-"+n),r?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},c._ssrRegister=l):i&&(l=s?function(){i.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:i),l)if(c.functional){c._injectStyles=l;var d=c.render;c.render=function(e,t){return l.call(t),d(e,t)}}else{var u=c.beforeCreate;c.beforeCreate=u?[].concat(u,l):[l]}return{exports:e,options:c}}a.d(t,{Z:()=>o})},7931:e=>{"use strict";e.exports=__webpack_require__(/*! @nextcloud/l10n/gettext */ "./node_modules/@nextcloud/l10n/dist/gettext.js")},1804:e=>{"use strict";e.exports=__webpack_require__(/*! @vueuse/core */ "./node_modules/@vueuse/core/index.cjs")},3465:e=>{"use strict";e.exports=__webpack_require__(/*! debounce */ "./node_modules/debounce/index.js")},9454:e=>{"use strict";e.exports=__webpack_require__(/*! floating-vue */ "./node_modules/floating-vue/dist/floating-vue.es.js")},4505:e=>{"use strict";e.exports=__webpack_require__(/*! focus-trap */ "./node_modules/focus-trap/dist/focus-trap.esm.js")},2734:e=>{"use strict";e.exports=__webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js")},9044:e=>{"use strict";e.exports=__webpack_require__(/*! vue-material-design-icons/ChevronRight.vue */ "./node_modules/vue-material-design-icons/ChevronRight.vue")},8618:e=>{"use strict";e.exports=__webpack_require__(/*! vue-material-design-icons/Close.vue */ "./node_modules/vue-material-design-icons/Close.vue")},1441:e=>{"use strict";e.exports=__webpack_require__(/*! vue-material-design-icons/DotsHorizontal.vue */ "./node_modules/vue-material-design-icons/DotsHorizontal.vue")}},t={};function a(o){var i=t[o];if(void 0!==i)return i.exports;var n=t[o]={id:o,exports:{}};return e[o](n,n.exports,a),n.exports}a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var o in t)a.o(t,o)&&!a.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.nc=void 0;var o={};return(()=>{"use strict";a.r(o),a.d(o,{default:()=>z});var e=a(1929),t=a(334),i=a(932),n=a(3465),r=a.n(n);const s={name:"NcAppSettingsDialog",components:{NcModal:e.default},mixins:[t.default],props:{open:{type:Boolean,required:!0},showNavigation:{type:Boolean,default:!1},container:{type:String,default:"body"},name:{type:String,default:""},additionalTrapElements:{type:Array,default:()=>[]}},emits:["update:open"],data:()=>({selectedSection:"",linkClicked:!1,addedScrollListener:!1,scroller:null}),computed:{hasNavigation(){return!(this.isMobile||!this.showNavigation)},settingsNavigationAriaLabel:()=>(0,i.t)("Settings navigation")},mounted(){this.selectedSection=this.$slots.default[0].componentOptions.propsData.id},updated(){this.$refs.settingsScroller&&(this.scroller=this.$refs.settingsScroller,this.addedScrollListener||(this.scroller.addEventListener("scroll",this.handleScroll),this.addedScrollListener=!0))},methods:{getSettingsNavigation(e){const t=e.filter((e=>e.componentOptions)).map((e=>{var t,a;return{id:null===(t=e.componentOptions.propsData)||void 0===t?void 0:t.id,name:null===(a=e.componentOptions.propsData)||void 0===a?void 0:a.name}})),a=e.map((e=>e.name)),o=e.map((e=>e.id));return t.forEach(((e,t)=>{const i=[...a],n=[...o];if(i.splice(t,1),n.splice(t,1),i.includes(e.name))throw new Error("Duplicate section name found: ".concat(e,". Settings navigation sections must have unique section names."));if(n.includes(e.id))throw new Error("Duplicate section id found: ".concat(e,". Settings navigation sections must have unique section ids."))})),t},handleSettingsNavigationClick(e){this.linkClicked=!0,document.getElementById("settings-section_"+e).scrollIntoView({behavior:"smooth",inline:"nearest"}),this.selectedSection=e,setTimeout((()=>{this.linkClicked=!1}),1e3)},handleCloseModal(){this.$emit("update:open",!1),this.scroller.removeEventListener("scroll",this.handleScroll),this.addedScrollListener=!1,this.scroller.scrollTop=0},handleScroll(){this.linkClicked||this.unfocusNavigationItem()},unfocusNavigationItem:r()((function(){this.selectedSection="",document.activeElement.className.includes("navigation-list__link")&&document.activeElement.blur()}),300),handleLinkKeydown(e,t){"Enter"===e.code&&this.handleSettingsNavigationClick(t)}},render(e){const t=()=>this.hasNavigation?[e("div",{attrs:{class:"app-settings__navigation",role:"tablist","aria-label":this.settingsNavigationAriaLabel}},[e("ul",{attrs:{class:"navigation-list",role:"tablist"}},this.getSettingsNavigation(this.$slots.default).map((e=>a(e))))])]:[],a=t=>e("li",{},[e("a",{class:{"navigation-list__link":!0,"navigation-list__link--active":t.id===this.selectedSection},attrs:{role:"tab","aria-selected":t.id===this.selectedSection,tabindex:"0"},on:{click:()=>this.handleSettingsNavigationClick(t.id),keydown:()=>this.handleLinkKeydown(event,t.id)}},t.name)]);return this.open?e("NcModal",{class:["app-settings-modal"],attrs:{container:this.container,size:"large",additionalTrapElements:this.additionalTrapElements},on:{close:()=>{this.handleCloseModal()}}},[e("div",{attrs:{class:"app-settings"}},[e("h2",{attrs:{class:"app-settings__name"}},this.name),e("div",{attrs:{class:"app-settings__wrapper"}},[...t(),e("div",{attrs:{class:"app-settings__content"},ref:"settingsScroller"},this.$slots.default)])])]):void 0}};var l=a(3379),c=a.n(l),d=a(7795),u=a.n(d),p=a(569),A=a.n(p),m=a(3565),h=a.n(m),g=a(9216),v=a.n(g),C=a(4589),b=a.n(C),f=a(5218),y={};y.styleTagTransform=b(),y.setAttributes=h(),y.insert=A().bind(null,"head"),y.domAPI=u(),y.insertStyleElement=v();c()(f.Z,y);f.Z&&f.Z.locals&&f.Z.locals;var k=a(1900),w=a(7984),S=a.n(w),x=(0,k.Z)(s,undefined,undefined,!1,null,"c3f93c9a",null);"function"==typeof S()&&S()(x);const z=x.exports})(),o})()));
+//# sourceMappingURL=NcAppSettingsDialog.js.map
+
+/***/ }),
+
+/***/ "./node_modules/@nextcloud/vue/dist/Components/NcAppSettingsSection.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@nextcloud/vue/dist/Components/NcAppSettingsSection.js ***!
+ \*****************************************************************************/
+/***/ (function(module) {
+
+/*! For license information please see NcAppSettingsSection.js.LICENSE.txt */
+!function(e,t){ true?module.exports=t():0}(self,(()=>(()=>{"use strict";var e={1024:(e,t,n)=>{n.d(t,{Z:()=>s});var o=n(7537),r=n.n(o),i=n(3645),a=n.n(i)()(r());a.push([e.id,".material-design-icon[data-v-006b9071]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-settings-section[data-v-006b9071]{margin-bottom:80px}.app-settings-section__name[data-v-006b9071]{font-size:20px;margin:0;padding:20px 0;font-weight:bold;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcAppSettingsSection/NcAppSettingsSection.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,uCACC,kBAAA,CACA,6CACC,cAAA,CACA,QAAA,CACA,cAAA,CACA,gBAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n.app-settings-section {\n\tmargin-bottom: 80px;\n\t&__name {\n\t\tfont-size: 20px;\n\t\tmargin: 0;\n\t\tpadding: 20px 0;\n\t\tfont-weight: bold;\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n"],sourceRoot:""}]);const s=a},3645:e=>{e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",o=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),o&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),o&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,o,r,i){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(o)for(var s=0;s<this.length;s++){var c=this[s][0];null!=c&&(a[c]=!0)}for(var p=0;p<e.length;p++){var u=[].concat(e[p]);o&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),r&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=r):u[4]="".concat(r)),t.push(u))}},t}},7537:e=>{e.exports=function(e){var t=e[1],n=e[3];if(!n)return t;if("function"==typeof btoa){var o=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),r="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(o),i="/*# ".concat(r," */");return[t].concat([i]).join("\n")}return[t].join("\n")}},3379:e=>{var t=[];function n(e){for(var n=-1,o=0;o<t.length;o++)if(t[o].identifier===e){n=o;break}return n}function o(e,o){for(var i={},a=[],s=0;s<e.length;s++){var c=e[s],p=o.base?c[0]+o.base:c[0],u=i[p]||0,l="".concat(p," ").concat(u);i[p]=u+1;var d=n(l),f={css:c[1],media:c[2],sourceMap:c[3],supports:c[4],layer:c[5]};if(-1!==d)t[d].references++,t[d].updater(f);else{var v=r(f,o);o.byIndex=s,t.splice(s,0,{identifier:l,updater:v,references:1})}a.push(l)}return a}function r(e,t){var n=t.domAPI(t);n.update(e);return function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;n.update(e=t)}else n.remove()}}e.exports=function(e,r){var i=o(e=e||[],r=r||{});return function(e){e=e||[];for(var a=0;a<i.length;a++){var s=n(i[a]);t[s].references--}for(var c=o(e,r),p=0;p<i.length;p++){var u=n(i[p]);0===t[u].references&&(t[u].updater(),t.splice(u,1))}i=c}}},569:e=>{var t={};e.exports=function(e,n){var o=function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}t[e]=n}return t[e]}(e);if(!o)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");o.appendChild(n)}},9216:e=>{e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},3565:(e,t,n)=>{e.exports=function(e){var t=n.nc;t&&e.setAttribute("nonce",t)}},7795:e=>{e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(n){!function(e,t,n){var o="";n.supports&&(o+="@supports (".concat(n.supports,") {")),n.media&&(o+="@media ".concat(n.media," {"));var r=void 0!==n.layer;r&&(o+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),o+=n.css,r&&(o+="}"),n.media&&(o+="}"),n.supports&&(o+="}");var i=n.sourceMap;i&&"undefined"!=typeof btoa&&(o+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),t.styleTagTransform(o,e,t.options)}(t,e,n)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},4589:e=>{e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},1900:(e,t,n)=>{function o(e,t,n,o,r,i,a,s){var c,p="function"==typeof e?e.options:e;if(t&&(p.render=t,p.staticRenderFns=n,p._compiled=!0),o&&(p.functional=!0),i&&(p._scopeId="data-v-"+i),a?(c=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},p._ssrRegister=c):r&&(c=s?function(){r.call(this,(p.functional?this.parent:this).$root.$options.shadowRoot)}:r),c)if(p.functional){p._injectStyles=c;var u=p.render;p.render=function(e,t){return c.call(t),u(e,t)}}else{var l=p.beforeCreate;p.beforeCreate=l?[].concat(l,c):[c]}return{exports:e,options:p}}n.d(t,{Z:()=>o})}},t={};function n(o){var r=t[o];if(void 0!==r)return r.exports;var i=t[o]={id:o,exports:{}};return e[o](i,i.exports,n),i.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nc=void 0;var o={};return(()=>{n.r(o),n.d(o,{default:()=>h});const e={name:"NcAppSettingsSection",props:{name:{type:String,required:!0},id:{type:String,required:!0,validator:e=>/^[a-z0-9\-_]+$/.test(e)}},computed:{htmlId(){return"settings-section_"+this.id}}};var t=n(3379),r=n.n(t),i=n(7795),a=n.n(i),s=n(569),c=n.n(s),p=n(3565),u=n.n(p),l=n(9216),d=n.n(l),f=n(4589),v=n.n(f),m=n(1024),A={};A.styleTagTransform=v(),A.setAttributes=u(),A.insert=c().bind(null,"head"),A.domAPI=a(),A.insertStyleElement=d();r()(m.Z,A);m.Z&&m.Z.locals&&m.Z.locals;const h=(0,n(1900).Z)(e,(function(){var e=this,t=e._self._c;return t("div",{staticClass:"app-settings-section",attrs:{id:e.htmlId}},[t("h3",{staticClass:"app-settings-section__name"},[e._v("\n\t\t"+e._s(e.name)+"\n\t")]),e._v(" "),e._t("default")],2)}),[],!1,null,"006b9071",null).exports})(),o})()));
+//# sourceMappingURL=NcAppSettingsSection.js.map
+
+/***/ }),
+
+/***/ "./node_modules/@nextcloud/vue/dist/Components/NcBreadcrumb.js":
+/*!*********************************************************************!*\
+ !*** ./node_modules/@nextcloud/vue/dist/Components/NcBreadcrumb.js ***!
+ \*********************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+/*! For license information please see NcBreadcrumb.js.LICENSE.txt */
+!function(e,t){ true?module.exports=t():0}(self,(()=>(()=>{var e={8250:(e,t,a)=>{"use strict";a.d(t,{default:()=>F});var o=a(4462),i=a(2297),n=a(1205),r=a(932),s=a(2734),l=a.n(s),c=a(1441),u=a.n(c);const d=".focusable",m={name:"NcActions",components:{NcButton:o.default,DotsHorizontal:u(),NcPopover:i.default},props:{open:{type:Boolean,default:!1},manualOpen:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},forceName:{type:Boolean,default:!1},menuName:{type:String,default:null},primary:{type:Boolean,default:!1},type:{type:String,validator:e=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(e),default:null},defaultIcon:{type:String,default:""},ariaLabel:{type:String,default:(0,r.t)("Actions")},ariaHidden:{type:Boolean,default:null},placement:{type:String,default:"bottom"},boundariesElement:{type:Element,default:()=>document.querySelector("body")},container:{type:[String,Object,Element,Boolean],default:"body"},disabled:{type:Boolean,default:!1},inline:{type:Number,default:0}},emits:["open","update:open","close","focus","blur"],data(){return{opened:this.open,focusIndex:0,randomId:"menu-".concat((0,n.Z)())}},computed:{triggerBtnType(){return this.type||(this.primary?"primary":this.menuName?"secondary":"tertiary")}},watch:{open(e){e!==this.opened&&(this.opened=e)}},methods:{isValidSingleAction(e){var t,a,o,i,n;const r=null!==(t=null==e||null===(a=e.componentOptions)||void 0===a||null===(o=a.Ctor)||void 0===o||null===(i=o.extendOptions)||void 0===i?void 0:i.name)&&void 0!==t?t:null==e||null===(n=e.componentOptions)||void 0===n?void 0:n.tag;return["NcActionButton","NcActionLink","NcActionRouter"].includes(r)},openMenu(e){this.opened||(this.opened=!0,this.$emit("update:open",!0),this.$emit("open"))},closeMenu(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.opened&&(this.opened=!1,this.$refs.popover.clearFocusTrap({returnFocus:e}),this.$emit("update:open",!1),this.$emit("close"),this.focusIndex=0,this.$refs.menuButton.$el.focus())},onOpen(e){this.$nextTick((()=>{this.focusFirstAction(e)}))},onMouseFocusAction(e){if(document.activeElement===e.target)return;const t=e.target.closest("li");if(t){const e=t.querySelector(d);if(e){const t=[...this.$refs.menu.querySelectorAll(d)].indexOf(e);t>-1&&(this.focusIndex=t,this.focusAction())}}},onKeydown(e){(38===e.keyCode||9===e.keyCode&&e.shiftKey)&&this.focusPreviousAction(e),(40===e.keyCode||9===e.keyCode&&!e.shiftKey)&&this.focusNextAction(e),33===e.keyCode&&this.focusFirstAction(e),34===e.keyCode&&this.focusLastAction(e),27===e.keyCode&&(this.closeMenu(),e.preventDefault())},removeCurrentActive(){const e=this.$refs.menu.querySelector("li.active");e&&e.classList.remove("active")},focusAction(){const e=this.$refs.menu.querySelectorAll(d)[this.focusIndex];if(e){this.removeCurrentActive();const t=e.closest("li.action");e.focus(),t&&t.classList.add("active")}},focusPreviousAction(e){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(e),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction(e){if(this.opened){const t=this.$refs.menu.querySelectorAll(d).length-1;this.focusIndex===t?this.closeMenu():(this.preventIfEvent(e),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction(e){this.opened&&(this.preventIfEvent(e),this.focusIndex=0,this.focusAction())},focusLastAction(e){this.opened&&(this.preventIfEvent(e),this.focusIndex=this.$refs.menu.querySelectorAll(d).length-1,this.focusAction())},preventIfEvent(e){e&&(e.preventDefault(),e.stopPropagation())},onFocus(e){this.$emit("focus",e)},onBlur(e){this.$emit("blur",e)}},render(e){const t=(this.$slots.default||[]).filter((e=>{var t,a,o,i;return(null==e||null===(t=e.componentOptions)||void 0===t?void 0:t.tag)||(null==e||null===(a=e.componentOptions)||void 0===a||null===(o=a.Ctor)||void 0===o||null===(i=o.extendOptions)||void 0===i?void 0:i.name)})),a=t.every((e=>{var t,a,o,i,n,r,s,l;return"NcActionLink"===(null!==(t=null==e||null===(a=e.componentOptions)||void 0===a||null===(o=a.Ctor)||void 0===o||null===(i=o.extendOptions)||void 0===i?void 0:i.name)&&void 0!==t?t:null==e||null===(n=e.componentOptions)||void 0===n?void 0:n.tag)&&(null==e||null===(r=e.componentOptions)||void 0===r||null===(s=r.propsData)||void 0===s||null===(l=s.href)||void 0===l?void 0:l.startsWith(window.location.origin))}));let o=t.filter(this.isValidSingleAction);if(this.forceMenu&&o.length>0&&this.inline>0&&(l().util.warn("Specifying forceMenu will ignore any inline actions rendering."),o=[]),0===t.length)return;const i=t=>{var a,o,i,n,r,s,l,c,u,d,m,p,g,v,h,A,b,C,f,y,k,S;const w=(null==t||null===(a=t.data)||void 0===a||null===(o=a.scopedSlots)||void 0===o||null===(i=o.icon())||void 0===i?void 0:i[0])||e("span",{class:["icon",null==t||null===(n=t.componentOptions)||void 0===n||null===(r=n.propsData)||void 0===r?void 0:r.icon]}),j=null==t||null===(s=t.componentOptions)||void 0===s||null===(l=s.listeners)||void 0===l?void 0:l.click,z=null==t||null===(c=t.componentOptions)||void 0===c||null===(u=c.children)||void 0===u||null===(d=u[0])||void 0===d||null===(m=d.text)||void 0===m||null===(p=m.trim)||void 0===p?void 0:p.call(m),N=(null==t||null===(g=t.componentOptions)||void 0===g||null===(v=g.propsData)||void 0===v?void 0:v.ariaLabel)||z,P=this.forceName?z:"";let x=null==t||null===(h=t.componentOptions)||void 0===h||null===(A=h.propsData)||void 0===A?void 0:A.title;return this.forceName||x||(x=z),e("NcButton",{class:["action-item action-item--single",null==t||null===(b=t.data)||void 0===b?void 0:b.staticClass,null==t||null===(C=t.data)||void 0===C?void 0:C.class],attrs:{"aria-label":N,title:x},ref:null==t||null===(f=t.data)||void 0===f?void 0:f.ref,props:{type:this.type||(P?"secondary":"tertiary"),disabled:this.disabled||(null==t||null===(y=t.componentOptions)||void 0===y||null===(k=y.propsData)||void 0===k?void 0:k.disabled),ariaHidden:this.ariaHidden,...null==t||null===(S=t.componentOptions)||void 0===S?void 0:S.propsData},on:{focus:this.onFocus,blur:this.onBlur,...!!j&&{click:e=>{j&&j(e)}}}},[e("template",{slot:"icon"},[w]),P])},n=t=>{var o,i;const n=(null===(o=this.$slots.icon)||void 0===o?void 0:o[0])||(this.defaultIcon?e("span",{class:["icon",this.defaultIcon]}):e("DotsHorizontal",{props:{size:20}}));return e("NcPopover",{ref:"popover",props:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,popoverBaseClass:"action-item__popper",setReturnFocus:null===(i=this.$refs.menuButton)||void 0===i?void 0:i.$el},attrs:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,...this.manualOpen&&{triggers:[]},popoverBaseClass:"action-item__popper"},on:{show:this.openMenu,"after-show":this.onOpen,hide:this.closeMenu}},[e("NcButton",{class:"action-item__menutoggle",props:{type:this.triggerBtnType,disabled:this.disabled,ariaHidden:this.ariaHidden},slot:"trigger",ref:"menuButton",attrs:{"aria-haspopup":a?null:"menu","aria-label":this.ariaLabel,"aria-controls":this.opened?this.randomId:null,"aria-expanded":this.opened.toString()},on:{focus:this.onFocus,blur:this.onBlur}},[e("template",{slot:"icon"},[n]),this.menuName]),e("div",{class:{open:this.opened},attrs:{tabindex:"-1"},on:{keydown:this.onKeydown,mousemove:this.onMouseFocusAction},ref:"menu"},[e("ul",{attrs:{id:this.randomId,tabindex:"-1",role:a?null:"menu"}},[t])])])};if(1===t.length&&1===o.length&&!this.forceMenu)return i(o[0]);if(o.length>0&&this.inline>0){const a=o.slice(0,this.inline),r=t.filter((e=>!a.includes(e)));return e("div",{class:["action-items","action-item--".concat(this.triggerBtnType)]},[...a.map(i),r.length>0?e("div",{class:["action-item",{"action-item--open":this.opened}]},[n(r)]):null])}return e("div",{class:["action-item action-item--default-popover","action-item--".concat(this.triggerBtnType),{"action-item--open":this.opened}]},[n(t)])}};var p=a(3379),g=a.n(p),v=a(7795),h=a.n(v),A=a(569),b=a.n(A),C=a(3565),f=a.n(C),y=a(9216),k=a.n(y),S=a(4589),w=a.n(S),j=a(4825),z={};z.styleTagTransform=w(),z.setAttributes=f(),z.insert=b().bind(null,"head"),z.domAPI=h(),z.insertStyleElement=k();g()(j.Z,z);j.Z&&j.Z.locals&&j.Z.locals;var N=a(4946),P={};P.styleTagTransform=w(),P.setAttributes=f(),P.insert=b().bind(null,"head"),P.domAPI=h(),P.insertStyleElement=k();g()(N.Z,P);N.Z&&N.Z.locals&&N.Z.locals;var x=a(1900),E=a(5727),B=a.n(E),T=(0,x.Z)(m,undefined,undefined,!1,null,"29452b76",null);"function"==typeof B()&&B()(T);const F=T.exports},4462:(e,t,a)=>{"use strict";a.d(t,{default:()=>k});const o={name:"NcButton",props:{disabled:{type:Boolean,default:!1},type:{type:String,validator:e=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(e),default:"secondary"},nativeType:{type:String,validator:e=>-1!==["submit","reset","button"].indexOf(e),default:"button"},wide:{type:Boolean,default:!1},ariaLabel:{type:String,default:null},href:{type:String,default:null},to:{type:[String,Object],default:null},exact:{type:Boolean,default:!1},ariaHidden:{type:Boolean,default:null}},render(e){var t,a,o,i,n,r=this;const s=null===(t=this.$slots.default)||void 0===t||null===(a=t[0])||void 0===a||null===(o=a.text)||void 0===o||null===(i=o.trim)||void 0===i?void 0:i.call(o),l=!!s,c=null===(n=this.$slots)||void 0===n?void 0:n.icon;s||this.ariaLabel||console.warn("You need to fill either the text or the ariaLabel props in the button component.",{text:s,ariaLabel:this.ariaLabel},this);const u=function(){let{navigate:t,isActive:a,isExactActive:o}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e(r.to||!r.href?"button":"a",{class:["button-vue",{"button-vue--icon-only":c&&!l,"button-vue--text-only":l&&!c,"button-vue--icon-and-text":c&&l,["button-vue--vue-".concat(r.type)]:r.type,"button-vue--wide":r.wide,active:a,"router-link-exact-active":o}],attrs:{"aria-label":r.ariaLabel,disabled:r.disabled,type:r.href?null:r.nativeType,role:r.href?"button":null,href:!r.to&&r.href?r.href:null,...r.$attrs},on:{...r.$listeners,click:e=>{var a,o;null===(a=r.$listeners)||void 0===a||null===(o=a.click)||void 0===o||o.call(a,e),null==t||t(e)}}},[e("span",{class:"button-vue__wrapper"},[c?e("span",{class:"button-vue__icon",attrs:{"aria-hidden":r.ariaHidden}},[r.$slots.icon]):null,l?e("span",{class:"button-vue__text"},[s]):null])])};return this.to?e("router-link",{props:{custom:!0,to:this.to,exact:this.exact},scopedSlots:{default:u}}):u()}};var i=a(3379),n=a.n(i),r=a(7795),s=a.n(r),l=a(569),c=a.n(l),u=a(3565),d=a.n(u),m=a(9216),p=a.n(m),g=a(4589),v=a.n(g),h=a(7196),A={};A.styleTagTransform=v(),A.setAttributes=d(),A.insert=c().bind(null,"head"),A.domAPI=s(),A.insertStyleElement=p();n()(h.Z,A);h.Z&&h.Z.locals&&h.Z.locals;var b=a(1900),C=a(2102),f=a.n(C),y=(0,b.Z)(o,undefined,undefined,!1,null,"4d05be2c",null);"function"==typeof f()&&f()(y);const k=y.exports},2297:(e,t,a)=>{"use strict";a.d(t,{default:()=>z});var o=a(9454),i=a(4505),n=a(1206);const r={name:"NcPopover",components:{Dropdown:o.Dropdown},inheritAttrs:!1,props:{popoverBaseClass:{type:String,default:""},focusTrap:{type:Boolean,default:!0},setReturnFocus:{default:void 0,type:[HTMLElement,SVGElement,String,Boolean]}},emits:["after-show","after-hide"],beforeDestroy(){this.clearFocusTrap()},methods:{async useFocusTrap(){var e,t;if(await this.$nextTick(),!this.focusTrap)return;const a=null===(e=this.$refs.popover)||void 0===e||null===(t=e.$refs.popperContent)||void 0===t?void 0:t.$el;a&&(this.$focusTrap=(0,i.createFocusTrap)(a,{escapeDeactivates:!1,allowOutsideClick:!0,setReturnFocus:this.setReturnFocus,trapStack:(0,n.L)()}),this.$focusTrap.activate())},clearFocusTrap(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{var t;null===(t=this.$focusTrap)||void 0===t||t.deactivate(e),this.$focusTrap=null}catch(e){console.warn(e)}},afterShow(){this.$nextTick((()=>{this.$emit("after-show"),this.useFocusTrap()}))},afterHide(){this.$emit("after-hide"),this.clearFocusTrap()}}},s=r;var l=a(3379),c=a.n(l),u=a(7795),d=a.n(u),m=a(569),p=a.n(m),g=a(3565),v=a.n(g),h=a(9216),A=a.n(h),b=a(4589),C=a.n(b),f=a(1625),y={};y.styleTagTransform=C(),y.setAttributes=v(),y.insert=p().bind(null,"head"),y.domAPI=d(),y.insertStyleElement=A();c()(f.Z,y);f.Z&&f.Z.locals&&f.Z.locals;var k=a(1900),S=a(2405),w=a.n(S),j=(0,k.Z)(s,(function(){var e=this;return(0,e._self._c)("Dropdown",e._g(e._b({ref:"popover",attrs:{distance:10,"arrow-padding":10,"no-auto-focus":!0,"popper-class":e.popoverBaseClass},on:{"apply-show":e.afterShow,"apply-hide":e.afterHide},scopedSlots:e._u([{key:"popper",fn:function(){return[e._t("default")]},proxy:!0}],null,!0)},"Dropdown",e.$attrs,!1),e.$listeners),[e._t("trigger")],2)}),[],!1,null,null,null);"function"==typeof w()&&w()(j);const z=j.exports},932:(e,t,a)=>{"use strict";a.d(t,{t:()=>r});var o=a(7931);const i=(0,o.getGettextBuilder)().detectLocale();[{locale:"ar",translations:{"{tag} (invisible)":"{tag} (غير مرئي)","{tag} (restricted)":"{tag} (مقيد)",Actions:"الإجراءات",Activities:"النشاطات","Animals & Nature":"الحيوانات والطبيعة","Anything shared with the same group of people will show up here":"أي مادة تمت مشاركتها مع نفس المجموعة من الأشخاص سيتم عرضها هنا","Avatar of {displayName}":"صورة {displayName} الرمزية","Avatar of {displayName}, {status}":"صورة {displayName} الرمزية، {status}","Cancel changes":"إلغاء التغييرات","Change title":"تغيير العنوان",Choose:"إختيار","Clear text":"مسح النص",Close:"أغلق","Close modal":"قفل الشرط","Close navigation":"إغلاق المتصفح","Close sidebar":"قفل الشريط الجانبي","Confirm changes":"تأكيد التغييرات",Custom:"مخصص","Edit item":"تعديل عنصر","Error getting related resources":"خطأ في تحصيل مصادر ذات صلة","External documentation for {title}":"الوثائق الخارجية لـ{title}",Favorite:"مفضلة",Flags:"الأعلام","Food & Drink":"الطعام والشراب","Frequently used":"كثيرا ما تستخدم",Global:"عالمي","Go back to the list":"العودة إلى القائمة","Hide password":"إخفاء كلمة السر","Message limit of {count} characters reached":"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف","More items …":"عناصر أخرى ...",Next:"التالي","No emoji found":"لم يتم العثور على أي رمز تعبيري","No results":"ليس هناك أية نتيجة",Objects:"الأشياء",Open:"فتح",'Open link to "{resourceTitle}"':'فتح رابط إلى "{resourceTitle}"',"Open navigation":"فتح المتصفح","Password is secure":"كلمة السر مُؤمّنة","Pause slideshow":"إيقاف العرض مؤقتًا","People & Body":"الناس والجسم","Pick an emoji":"اختر رمزًا تعبيريًا","Please select a time zone:":"الرجاء تحديد المنطقة الزمنية:",Previous:"السابق","Related resources":"مصادر ذات صلة",Search:"بحث","Search results":"نتائج البحث","Select a tag":"اختر علامة",Settings:"الإعدادات","Settings navigation":"إعدادات المتصفح","Show password":"أعرض كلمة السر","Smileys & Emotion":"الوجوه و الرموز التعبيرية","Start slideshow":"بدء العرض",Submit:"إرسال",Symbols:"الرموز","Travel & Places":"السفر والأماكن","Type to search time zone":"اكتب للبحث عن منطقة زمنية","Unable to search the group":"تعذر البحث في المجموعة","Undo changes":"التراجع عن التغييرات","Write message, @ to mention someone, : for emoji autocompletion …":"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ..."}},{locale:"br",translations:{"{tag} (invisible)":"{tag} (diwelus)","{tag} (restricted)":"{tag} (bevennet)",Actions:"Oberioù",Activities:"Oberiantizoù","Animals & Nature":"Loened & Natur",Choose:"Dibab",Close:"Serriñ",Custom:"Personelañ",Flags:"Bannieloù","Food & Drink":"Boued & Evajoù","Frequently used":"Implijet alies",Next:"Da heul","No emoji found":"Emoji ebet kavet","No results":"Disoc'h ebet",Objects:"Traoù","Pause slideshow":"Arsav an diaporama","People & Body":"Tud & Korf","Pick an emoji":"Choaz un emoji",Previous:"A-raok",Search:"Klask","Search results":"Disoc'hoù an enklask","Select a tag":"Choaz ur c'hlav",Settings:"Arventennoù","Smileys & Emotion":"Smileyioù & Fromoù","Start slideshow":"Kregiñ an diaporama",Symbols:"Arouezioù","Travel & Places":"Beaj & Lec'hioù","Unable to search the group":"Dibosupl eo klask ar strollad"}},{locale:"ca",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringit)",Actions:"Accions",Activities:"Activitats","Animals & Nature":"Animals i natura","Anything shared with the same group of people will show up here":"Qualsevol cosa compartida amb el mateix grup de persones es mostrarà aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancel·la els canvis","Change title":"Canviar títol",Choose:"Tria","Clear text":"Netejar text",Close:"Tanca","Close modal":"Tancar el mode","Close navigation":"Tanca la navegació","Close sidebar":"Tancar la barra lateral","Confirm changes":"Confirmeu els canvis",Custom:"Personalitzat","Edit item":"Edita l'element","Error getting related resources":"Error obtenint els recursos relacionats","Error parsing svg":"Error en l'anàlisi del svg","External documentation for {title}":"Documentació externa per a {title}",Favorite:"Preferit",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment",Global:"Global","Go back to the list":"Torna a la llista","Hide password":"Amagar contrasenya","Message limit of {count} characters reached":"S'ha arribat al límit de {count} caràcters per missatge","More items …":"Més artícles...",Next:"Següent","No emoji found":"No s'ha trobat cap emoji","No results":"Sense resultats",Objects:"Objectes",Open:"Obrir",'Open link to "{resourceTitle}"':'Obrir enllaç a "{resourceTitle}"',"Open navigation":"Obre la navegació","Password is secure":"Contrasenya segura<br>","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji","Please select a time zone:":"Seleccioneu una zona horària:",Previous:"Anterior","Related resources":"Recursos relacionats",Search:"Cerca","Search results":"Resultats de cerca","Select a tag":"Seleccioneu una etiqueta",Settings:"Paràmetres","Settings navigation":"Navegació d'opcions","Show password":"Mostrar contrasenya","Smileys & Emotion":"Cares i emocions","Start slideshow":"Inicia la presentació",Submit:"Envia",Symbols:"Símbols","Travel & Places":"Viatges i llocs","Type to search time zone":"Escriviu per cercar la zona horària","Unable to search the group":"No es pot cercar el grup","Undo changes":"Desfés els canvis",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escriu missatge, fes servir "@" per esmentar algú, fes servir ":" per autocompletar emojis...'}},{locale:"cs_CZ",translations:{"{tag} (invisible)":"{tag} (neviditelné)","{tag} (restricted)":"{tag} (omezené)",Actions:"Akce",Activities:"Aktivity","Animals & Nature":"Zvířata a příroda","Anything shared with the same group of people will show up here":"Cokoli nasdíleného stejné skupině lidí se zobrazí zde","Avatar of {displayName}":"Zástupný obrázek uživatele {displayName}","Avatar of {displayName}, {status}":"Zástupný obrázek uživatele {displayName}, {status}","Cancel changes":"Zrušit změny","Change title":"Změnit nadpis",Choose:"Zvolit","Clear text":"Čitelný text",Close:"Zavřít","Close modal":"Zavřít dialogové okno","Close navigation":"Zavřít navigaci","Close sidebar":"Zavřít postranní panel","Confirm changes":"Potvrdit změny",Custom:"Uživatelsky určené","Edit item":"Upravit položku","Error getting related resources":"Chyba při získávání souvisejících prostředků","Error parsing svg":"Chyba při zpracovávání svg","External documentation for {title}":"Externí dokumentace k {title}",Favorite:"Oblíbené",Flags:"Příznaky","Food & Drink":"Jídlo a pití","Frequently used":"Často používané",Global:"Globální","Go back to the list":"Jít zpět na seznam","Hide password":"Skrýt heslo","Message limit of {count} characters reached":"Dosaženo limitu počtu ({count}) znaků zprávy","More items …":"Další položky…",Next:"Následující","No emoji found":"Nenalezeno žádné emoji","No results":"Nic nenalezeno",Objects:"Objekty",Open:"Otevřít",'Open link to "{resourceTitle}"':"Otevřít odkaz na „{resourceTitle}“","Open navigation":"Otevřít navigaci","Password is secure":"Heslo je bezpečné","Pause slideshow":"Pozastavit prezentaci","People & Body":"Lidé a tělo","Pick an emoji":"Vybrat emoji","Please select a time zone:":"Vyberte časovou zónu:",Previous:"Předchozí","Related resources":"Související prostředky",Search:"Hledat","Search results":"Výsledky hledání","Select a tag":"Vybrat štítek",Settings:"Nastavení","Settings navigation":"Pohyb po nastavení","Show password":"Zobrazit heslo","Smileys & Emotion":"Úsměvy a emoce","Start slideshow":"Spustit prezentaci",Submit:"Odeslat",Symbols:"Symboly","Travel & Places":"Cestování a místa","Type to search time zone":"Psaním vyhledejte časovou zónu","Unable to search the group":"Nedaří se hledat skupinu","Undo changes":"Vzít změny zpět",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem „@“ (zavináč); automatické doplňování emotikonů zahájíte napsáním „:“ (dvojtečky)…"}},{locale:"da",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (begrænset)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr & Natur","Anything shared with the same group of people will show up here":"Alt der deles med samme gruppe af personer vil vises her","Avatar of {displayName}":"Avatar af {displayName}","Avatar of {displayName}, {status}":"Avatar af {displayName}, {status}","Cancel changes":"Annuller ændringer","Change title":"Ret titel",Choose:"Vælg","Clear text":"Ryd tekst",Close:"Luk","Close modal":"Luk vindue","Close navigation":"Luk navigation","Close sidebar":"Luk sidepanel","Confirm changes":"Bekræft ændringer",Custom:"Brugerdefineret","Edit item":"Rediger emne","Error getting related resources":"Kunne ikke hente tilknyttede data","Error parsing svg":"Fejl ved analysering af svg","External documentation for {title}":"Ekstern dokumentation for {title}",Favorite:"Favorit",Flags:"Flag","Food & Drink":"Mad & Drikke","Frequently used":"Ofte brugt",Global:"Global","Go back to the list":"Tilbage til listen","Hide password":"Skjul kodeord","Message limit of {count} characters reached":"Begrænsning på {count} tegn er nået","More items …":"Mere ...",Next:"Videre","No emoji found":"Ingen emoji fundet","No results":"Ingen resultater",Objects:"Objekter",Open:"Åbn",'Open link to "{resourceTitle}"':'Åbn link til "{resourceTitle}"',"Open navigation":"Åbn navigation","Password is secure":"Kodeordet er sikkert","Pause slideshow":"Suspender fremvisning","People & Body":"Mennesker & Menneskekroppen","Pick an emoji":"Vælg en emoji","Please select a time zone:":"Vælg venligst en tidszone:",Previous:"Forrige","Related resources":"Relaterede emner",Search:"Søg","Search results":"Søgeresultater","Select a tag":"Vælg et mærke",Settings:"Indstillinger","Settings navigation":"Naviger i indstillinger","Show password":"Vis kodeord","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start fremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Rejser & Rejsemål","Type to search time zone":"Indtast for at søge efter tidszone","Unable to search the group":"Kan ikke søge på denne gruppe","Undo changes":"Fortryd ændringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv besked, brug "@" for at nævne nogen, brug ":" til emoji-autofuldførelse ...'}},{locale:"de",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Gegenstände",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte wählen Sie eine Zeitzone:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um Zeitzone zu suchen","Unable to search the group":"Die Gruppe konnte nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"de_DE",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Objekte",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte eine Zeitzone auswählen:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um eine Zeitzone zu suchen","Unable to search the group":"Die Gruppe kann nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"el",translations:{"{tag} (invisible)":"{tag} (αόρατο)","{tag} (restricted)":"{tag} (περιορισμένο)",Actions:"Ενέργειες",Activities:"Δραστηριότητες","Animals & Nature":"Ζώα & Φύση","Anything shared with the same group of people will show up here":"Οτιδήποτε μοιράζεται με την ίδια ομάδα ατόμων θα εμφανίζεται εδώ","Avatar of {displayName}":"Άβαταρ του {displayName}","Avatar of {displayName}, {status}":"Άβαταρ του {displayName}, {status}","Cancel changes":"Ακύρωση αλλαγών","Change title":"Αλλαγή τίτλου",Choose:"Επιλογή","Clear text":"Εκκαθάριση κειμένου",Close:"Κλείσιμο","Close modal":"Βοηθητικό κλείσιμο","Close navigation":"Κλείσιμο πλοήγησης","Close sidebar":"Κλείσιμο πλευρικής μπάρας","Confirm changes":"Επιβεβαίωση αλλαγών",Custom:"Προσαρμογή","Edit item":"Επεξεργασία","Error getting related resources":"Σφάλμα λήψης σχετικών πόρων","Error parsing svg":"Σφάλμα ανάλυσης svg","External documentation for {title}":"Εξωτερική τεκμηρίωση για {title}",Favorite:"Αγαπημένα",Flags:"Σημαίες","Food & Drink":"Φαγητό & Ποτό","Frequently used":"Συχνά χρησιμοποιούμενο",Global:"Καθολικό","Go back to the list":"Επιστροφή στην αρχική λίστα ","Hide password":"Απόκρυψη κωδικού πρόσβασης","Message limit of {count} characters reached":"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος","More items …":"Περισσότερα στοιχεία …",Next:"Επόμενο","No emoji found":"Δεν βρέθηκε emoji","No results":"Κανένα αποτέλεσμα",Objects:"Αντικείμενα",Open:"Άνοιγμα",'Open link to "{resourceTitle}"':'Άνοιγμα συνδέσμου στο "{resourceTitle}"',"Open navigation":"Άνοιγμα πλοήγησης","Password is secure":"Ο κωδικός πρόσβασης είναι ασφαλής","Pause slideshow":"Παύση προβολής διαφανειών","People & Body":"Άνθρωποι & Σώμα","Pick an emoji":"Επιλέξτε ένα emoji","Please select a time zone:":"Παρακαλούμε επιλέξτε μια ζώνη ώρας:",Previous:"Προηγούμενο","Related resources":"Σχετικοί πόροι",Search:"Αναζήτηση","Search results":"Αποτελέσματα αναζήτησης","Select a tag":"Επιλογή ετικέτας",Settings:"Ρυθμίσεις","Settings navigation":"Πλοήγηση ρυθμίσεων","Show password":"Εμφάνιση κωδικού πρόσβασης","Smileys & Emotion":"Φατσούλες & Συναίσθημα","Start slideshow":"Έναρξη προβολής διαφανειών",Submit:"Υποβολή",Symbols:"Σύμβολα","Travel & Places":"Ταξίδια & Τοποθεσίες","Type to search time zone":"Πληκτρολογήστε για αναζήτηση ζώνης ώρας","Unable to search the group":"Δεν είναι δυνατή η αναζήτηση της ομάδας","Undo changes":"Αναίρεση Αλλαγών",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Γράψτε μήνυμα, χρησιμοποιείστε "@" για να αναφέρετε κάποιον, χρησιμοποιείστε ":" για αυτόματη συμπλήρωση emoji …'}},{locale:"en_GB",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restricted)",Actions:"Actions",Activities:"Activities","Animals & Nature":"Animals & Nature","Anything shared with the same group of people will show up here":"Anything shared with the same group of people will show up here","Avatar of {displayName}":"Avatar of {displayName}","Avatar of {displayName}, {status}":"Avatar of {displayName}, {status}","Cancel changes":"Cancel changes","Change title":"Change title",Choose:"Choose","Clear text":"Clear text",Close:"Close","Close modal":"Close modal","Close navigation":"Close navigation","Close sidebar":"Close sidebar","Confirm changes":"Confirm changes",Custom:"Custom","Edit item":"Edit item","Error getting related resources":"Error getting related resources","Error parsing svg":"Error parsing svg","External documentation for {title}":"External documentation for {title}",Favorite:"Favourite",Flags:"Flags","Food & Drink":"Food & Drink","Frequently used":"Frequently used",Global:"Global","Go back to the list":"Go back to the list","Hide password":"Hide password","Message limit of {count} characters reached":"Message limit of {count} characters reached","More items …":"More items …",Next:"Next","No emoji found":"No emoji found","No results":"No results",Objects:"Objects",Open:"Open",'Open link to "{resourceTitle}"':'Open link to "{resourceTitle}"',"Open navigation":"Open navigation","Password is secure":"Password is secure","Pause slideshow":"Pause slideshow","People & Body":"People & Body","Pick an emoji":"Pick an emoji","Please select a time zone:":"Please select a time zone:",Previous:"Previous","Related resources":"Related resources",Search:"Search","Search results":"Search results","Select a tag":"Select a tag",Settings:"Settings","Settings navigation":"Settings navigation","Show password":"Show password","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start slideshow",Submit:"Submit",Symbols:"Symbols","Travel & Places":"Travel & Places","Type to search time zone":"Type to search time zone","Unable to search the group":"Unable to search the group","Undo changes":"Undo changes",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Write message, use "@" to mention someone, use ":" for emoji autocompletion …'}},{locale:"eo",translations:{"{tag} (invisible)":"{tag} (kaŝita)","{tag} (restricted)":"{tag} (limigita)",Actions:"Agoj",Activities:"Aktiveco","Animals & Nature":"Bestoj & Naturo",Choose:"Elektu",Close:"Fermu",Custom:"Propra",Flags:"Flagoj","Food & Drink":"Manĝaĵo & Trinkaĵo","Frequently used":"Ofte uzataj","Message limit of {count} characters reached":"La limo je {count} da literoj atingita",Next:"Sekva","No emoji found":"La emoĝio forestas","No results":"La rezulto forestas",Objects:"Objektoj","Pause slideshow":"Payzi bildprezenton","People & Body":"Homoj & Korpo","Pick an emoji":"Elekti emoĝion ",Previous:"Antaŭa",Search:"Serĉi","Search results":"Serĉrezultoj","Select a tag":"Elektu etikedon",Settings:"Agordo","Settings navigation":"Agorda navigado","Smileys & Emotion":"Ridoj kaj Emocioj","Start slideshow":"Komenci bildprezenton",Symbols:"Signoj","Travel & Places":"Vojaĵoj & Lokoj","Unable to search the group":"Ne eblas serĉi en la grupo","Write message, @ to mention someone …":"Mesaĝi, uzu @ por mencii iun ..."}},{locale:"es",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringido)",Actions:"Acciones",Activities:"Actividades","Animals & Nature":"Animales y naturaleza","Anything shared with the same group of people will show up here":"Cualquier cosa que sea compartida con el mismo grupo de personas se mostrará aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar cambios","Change title":"Cambiar título",Choose:"Elegir","Clear text":"Limpiar texto",Close:"Cerrar","Close modal":"Cerrar modal","Close navigation":"Cerrar navegación","Close sidebar":"Cerrar barra lateral","Confirm changes":"Confirmar cambios",Custom:"Personalizado","Edit item":"Editar elemento","Error getting related resources":"Se encontró un error al obtener los recursos relacionados","Error parsing svg":"Error procesando svg","External documentation for {title}":"Documentacion externa de {title}",Favorite:"Favorito",Flags:"Banderas","Food & Drink":"Comida y bebida","Frequently used":"Usado con frecuenca",Global:"Global","Go back to the list":"Volver a la lista","Hide password":"Ocultar contraseña","Message limit of {count} characters reached":"El mensaje ha alcanzado el límite de {count} caracteres","More items …":"Más ítems...",Next:"Siguiente","No emoji found":"No hay ningún emoji","No results":" Ningún resultado",Objects:"Objetos",Open:"Abrir",'Open link to "{resourceTitle}"':'Abrir enlace a "{resourceTitle}"',"Open navigation":"Abrir navegación","Password is secure":"La contraseña es segura","Pause slideshow":"Pausar la presentación ","People & Body":"Personas y cuerpos","Pick an emoji":"Elegir un emoji","Please select a time zone:":"Por favor elige un huso de horario:",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Buscar","Search results":"Resultados de la búsqueda","Select a tag":"Seleccione una etiqueta",Settings:"Ajustes","Settings navigation":"Navegación por ajustes","Show password":"Mostrar contraseña","Smileys & Emotion":"Smileys y emoticonos","Start slideshow":"Iniciar la presentación",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viajes y lugares","Type to search time zone":"Escribe para buscar un huso de horario","Unable to search the group":"No es posible buscar en el grupo","Undo changes":"Deshacer cambios",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escribir mensaje, utilice "@" para mencionar a alguien, utilice ":" para autocompletado de emojis ...'}},{locale:"eu",translations:{"{tag} (invisible)":"{tag} (ikusezina)","{tag} (restricted)":"{tag} (mugatua)",Actions:"Ekintzak",Activities:"Jarduerak","Animals & Nature":"Animaliak eta Natura","Anything shared with the same group of people will show up here":"Pertsona-talde berarekin partekatutako edozer agertuko da hemen","Avatar of {displayName}":"{displayName}-(e)n irudia","Avatar of {displayName}, {status}":"{displayName} -(e)n irudia, {status}","Cancel changes":"Ezeztatu aldaketak","Change title":"Aldatu titulua",Choose:"Aukeratu","Clear text":"Garbitu testua",Close:"Itxi","Close modal":"Itxi modala","Close navigation":"Itxi nabigazioa","Close sidebar":"Itxi albo-barra","Confirm changes":"Baieztatu aldaketak",Custom:"Pertsonalizatua","Edit item":"Editatu elementua","Error getting related resources":"Errorea erlazionatutako baliabideak lortzerakoan","Error parsing svg":"Errore bat gertatu da svg-a analizatzean","External documentation for {title}":"Kanpoko dokumentazioa {title}(r)entzat",Favorite:"Gogokoa",Flags:"Banderak","Food & Drink":"Janaria eta edariak","Frequently used":"Askotan erabilia",Global:"Globala","Go back to the list":"Bueltatu zerrendara","Hide password":"Ezkutatu pasahitza","Message limit of {count} characters reached":"Mezuaren {count} karaketere-limitera heldu zara","More items …":"Elementu gehiago …",Next:"Hurrengoa","No emoji found":"Ez da emojirik aurkitu","No results":"Emaitzarik ez",Objects:"Objektuak",Open:"Ireki",'Open link to "{resourceTitle}"':'Ireki esteka: "{resourceTitle}"',"Open navigation":"Ireki nabigazioa","Password is secure":"Pasahitza segurua da","Pause slideshow":"Pausatu diaporama","People & Body":"Jendea eta gorputza","Pick an emoji":"Hautatu emoji bat","Please select a time zone:":"Mesedez hautatu ordu-zona bat:",Previous:"Aurrekoa","Related resources":"Erlazionatutako baliabideak",Search:"Bilatu","Search results":"Bilaketa emaitzak","Select a tag":"Hautatu etiketa bat",Settings:"Ezarpenak","Settings navigation":"Nabigazio ezarpenak","Show password":"Erakutsi pasahitza","Smileys & Emotion":"Smileyak eta emozioa","Start slideshow":"Hasi diaporama",Submit:"Bidali",Symbols:"Sinboloak","Travel & Places":"Bidaiak eta lekuak","Type to search time zone":"Idatzi ordu-zona bat bilatzeko","Unable to search the group":"Ezin izan da taldea bilatu","Undo changes":"Aldaketak desegin",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Idatzi mezua, erabili "@" norbait aipatzeko, erabili ":" emojiak automatikoki osatzeko...'}},{locale:"fi_FI",translations:{"{tag} (invisible)":"{tag} (näkymätön)","{tag} (restricted)":"{tag} (rajoitettu)",Actions:"Toiminnot",Activities:"Aktiviteetit","Animals & Nature":"Eläimet & luonto","Avatar of {displayName}":"Käyttäjän {displayName} avatar","Avatar of {displayName}, {status}":"Käyttäjän {displayName} avatar, {status}","Cancel changes":"Peruuta muutokset",Choose:"Valitse",Close:"Sulje","Close navigation":"Sulje navigaatio","Confirm changes":"Vahvista muutokset",Custom:"Mukautettu","Edit item":"Muokkaa kohdetta","External documentation for {title}":"Ulkoinen dokumentaatio kohteelle {title}",Flags:"Liput","Food & Drink":"Ruoka & juoma","Frequently used":"Usein käytetyt",Global:"Yleinen","Go back to the list":"Siirry takaisin listaan","Message limit of {count} characters reached":"Viestin merkken enimmäisimäärä {count} täynnä ",Next:"Seuraava","No emoji found":"Emojia ei löytynyt","No results":"Ei tuloksia",Objects:"Esineet & asiat","Open navigation":"Avaa navigaatio","Pause slideshow":"Keskeytä diaesitys","People & Body":"Ihmiset & keho","Pick an emoji":"Valitse emoji","Please select a time zone:":"Valitse aikavyöhyke:",Previous:"Edellinen",Search:"Etsi","Search results":"Hakutulokset","Select a tag":"Valitse tagi",Settings:"Asetukset","Settings navigation":"Asetusnavigaatio","Smileys & Emotion":"Hymiöt & tunteet","Start slideshow":"Aloita diaesitys",Submit:"Lähetä",Symbols:"Symbolit","Travel & Places":"Matkustus & kohteet","Type to search time zone":"Kirjoita etsiäksesi aikavyöhyke","Unable to search the group":"Ryhmää ei voi hakea","Undo changes":"Kumoa muutokset","Write message, @ to mention someone, : for emoji autocompletion …":"Kirjoita viesti, @ mainitaksesi käyttäjän, : emojin automaattitäydennykseen…"}},{locale:"fr",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restreint)",Actions:"Actions",Activities:"Activités","Animals & Nature":"Animaux & Nature","Anything shared with the same group of people will show up here":"Tout ce qui est partagé avec le même groupe de personnes apparaîtra ici","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Annuler les modifications","Change title":"Modifier le titre",Choose:"Choisir","Clear text":"Effacer le texte",Close:"Fermer","Close modal":"Fermer la fenêtre","Close navigation":"Fermer la navigation","Close sidebar":"Fermer la barre latérale","Confirm changes":"Confirmer les modifications",Custom:"Personnalisé","Edit item":"Éditer l'élément","Error getting related resources":"Erreur à la récupération des ressources liées","Error parsing svg":"Erreur d'analyse SVG","External documentation for {title}":"Documentation externe pour {title}",Favorite:"Favori",Flags:"Drapeaux","Food & Drink":"Nourriture & Boissons","Frequently used":"Utilisés fréquemment",Global:"Global","Go back to the list":"Retourner à la liste","Hide password":"Cacher le mot de passe","Message limit of {count} characters reached":"Limite de messages de {count} caractères atteinte","More items …":"Plus d'éléments...",Next:"Suivant","No emoji found":"Pas d’émoji trouvé","No results":"Aucun résultat",Objects:"Objets",Open:"Ouvrir",'Open link to "{resourceTitle}"':'Ouvrir le lien vers "{resourceTitle}"',"Open navigation":"Ouvrir la navigation","Password is secure":"Le mot de passe est sécurisé","Pause slideshow":"Mettre le diaporama en pause","People & Body":"Personnes & Corps","Pick an emoji":"Choisissez un émoji","Please select a time zone:":"Sélectionnez un fuseau horaire : ",Previous:"Précédent","Related resources":"Ressources liées",Search:"Chercher","Search results":"Résultats de recherche","Select a tag":"Sélectionnez une balise",Settings:"Paramètres","Settings navigation":"Navigation dans les paramètres","Show password":"Afficher le mot de passe","Smileys & Emotion":"Smileys & Émotions","Start slideshow":"Démarrer le diaporama",Submit:"Valider",Symbols:"Symboles","Travel & Places":"Voyage & Lieux","Type to search time zone":"Saisissez les premiers lettres pour rechercher un fuseau horaire","Unable to search the group":"Impossible de chercher le groupe","Undo changes":"Annuler les changements",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Écrire un message, utiliser "@" pour mentionner une personne, ":" pour l\'autocomplétion des émojis...'}},{locale:"gl",translations:{"{tag} (invisible)":"{tag} (invisíbel)","{tag} (restricted)":"{tag} (restrinxido)",Actions:"Accións",Activities:"Actividades","Animals & Nature":"Animais e natureza","Cancel changes":"Cancelar os cambios",Choose:"Escoller",Close:"Pechar","Confirm changes":"Confirma os cambios",Custom:"Personalizado","External documentation for {title}":"Documentación externa para {title}",Flags:"Bandeiras","Food & Drink":"Comida e bebida","Frequently used":"Usado con frecuencia","Message limit of {count} characters reached":"Acadouse o límite de {count} caracteres por mensaxe",Next:"Seguinte","No emoji found":"Non se atopou ningún «emoji»","No results":"Sen resultados",Objects:"Obxectos","Pause slideshow":"Pausar o diaporama","People & Body":"Persoas e corpo","Pick an emoji":"Escolla un «emoji»",Previous:"Anterir",Search:"Buscar","Search results":"Resultados da busca","Select a tag":"Seleccione unha etiqueta",Settings:"Axustes","Settings navigation":"Navegación polos axustes","Smileys & Emotion":"Sorrisos e emocións","Start slideshow":"Iniciar o diaporama",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viaxes e lugares","Unable to search the group":"Non foi posíbel buscar o grupo","Write message, @ to mention someone …":"Escriba a mensaxe, @ para mencionar a alguén…"}},{locale:"he",translations:{"{tag} (invisible)":"{tag} (נסתר)","{tag} (restricted)":"{tag} (מוגבל)",Actions:"פעולות",Activities:"פעילויות","Animals & Nature":"חיות וטבע",Choose:"בחירה",Close:"סגירה",Custom:"בהתאמה אישית",Flags:"דגלים","Food & Drink":"מזון ומשקאות","Frequently used":"בשימוש תדיר",Next:"הבא","No emoji found":"לא נמצא אמוג׳י","No results":"אין תוצאות",Objects:"חפצים","Pause slideshow":"השהיית מצגת","People & Body":"אנשים וגוף","Pick an emoji":"נא לבחור אמוג׳י",Previous:"הקודם",Search:"חיפוש","Search results":"תוצאות חיפוש","Select a tag":"בחירת תגית",Settings:"הגדרות","Smileys & Emotion":"חייכנים ורגשונים","Start slideshow":"התחלת המצגת",Symbols:"סמלים","Travel & Places":"טיולים ומקומות","Unable to search the group":"לא ניתן לחפש בקבוצה"}},{locale:"hu_HU",translations:{"{tag} (invisible)":"{tag} (láthatatlan)","{tag} (restricted)":"{tag} (korlátozott)",Actions:"Műveletek",Activities:"Tevékenységek","Animals & Nature":"Állatok és természet","Anything shared with the same group of people will show up here":"Minden, amit ugyanazzal a csoporttal oszt meg, itt fog megjelenni","Avatar of {displayName}":"{displayName} profilképe","Avatar of {displayName}, {status}":"{displayName} profilképe, {status}","Cancel changes":"Változtatások elvetése","Change title":"Cím megváltoztatása",Choose:"Válassszon","Clear text":"Szöveg törlése",Close:"Bezárás","Close modal":"Ablak bezárása","Close navigation":"Navigáció bezárása","Close sidebar":"Oldalsáv bezárása","Confirm changes":"Változtatások megerősítése",Custom:"Egyéni","Edit item":"Elem szerkesztése","Error getting related resources":"Hiba a kapcsolódó erőforrások lekérésekor","Error parsing svg":"Hiba az SVG feldolgozásakor","External documentation for {title}":"Külső dokumentáció ehhez: {title}",Favorite:"Kedvenc",Flags:"Zászlók","Food & Drink":"Étel és ital","Frequently used":"Gyakran használt",Global:"Globális","Go back to the list":"Ugrás vissza a listához","Hide password":"Jelszó elrejtése","Message limit of {count} characters reached":"{count} karakteres üzenetkorlát elérve","More items …":"További elemek...",Next:"Következő","No emoji found":"Nem található emodzsi","No results":"Nincs találat",Objects:"Tárgyak",Open:"Megnyitás",'Open link to "{resourceTitle}"':"A(z) „{resourceTitle}” hivatkozásának megnyitása","Open navigation":"Navigáció megnyitása","Password is secure":"A jelszó biztonságos","Pause slideshow":"Diavetítés szüneteltetése","People & Body":"Emberek és test","Pick an emoji":"Válasszon egy emodzsit","Please select a time zone:":"Válasszon időzónát:",Previous:"Előző","Related resources":"Kapcsolódó erőforrások",Search:"Keresés","Search results":"Találatok","Select a tag":"Válasszon címkét",Settings:"Beállítások","Settings navigation":"Navigáció a beállításokban","Show password":"Jelszó megjelenítése","Smileys & Emotion":"Mosolyok és érzelmek","Start slideshow":"Diavetítés indítása",Submit:"Beküldés",Symbols:"Szimbólumok","Travel & Places":"Utazás és helyek","Type to search time zone":"Gépeljen az időzóna kereséséhez","Unable to search the group":"A csoport nem kereshető","Undo changes":"Változtatások visszavonása",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Írjon egy üzenetet, használja a „@”-ot valaki megemlítéséhet, illetve a „:”-ot az emodzsik automatikus kiegészítéséhez…"}},{locale:"is",translations:{"{tag} (invisible)":"{tag} (ósýnilegt)","{tag} (restricted)":"{tag} (takmarkað)",Actions:"Aðgerðir",Activities:"Aðgerðir","Animals & Nature":"Dýr og náttúra",Choose:"Velja",Close:"Loka",Custom:"Sérsniðið",Flags:"Flögg","Food & Drink":"Matur og drykkur","Frequently used":"Oftast notað",Next:"Næsta","No emoji found":"Ekkert tjáningartákn fannst","No results":"Engar niðurstöður",Objects:"Hlutir","Pause slideshow":"Gera hlé á skyggnusýningu","People & Body":"Fólk og líkami","Pick an emoji":"Veldu tjáningartákn",Previous:"Fyrri",Search:"Leita","Search results":"Leitarniðurstöður","Select a tag":"Veldu merki",Settings:"Stillingar","Smileys & Emotion":"Broskallar og tilfinningar","Start slideshow":"Byrja skyggnusýningu",Symbols:"Tákn","Travel & Places":"Staðir og ferðalög","Unable to search the group":"Get ekki leitað í hópnum"}},{locale:"it",translations:{"{tag} (invisible)":"{tag} (invisibile)","{tag} (restricted)":"{tag} (limitato)",Actions:"Azioni",Activities:"Attività","Animals & Nature":"Animali e natura","Anything shared with the same group of people will show up here":"Tutto ciò che è stato condiviso con lo stesso gruppo di persone viene visualizzato qui","Avatar of {displayName}":"Avatar di {displayName}","Avatar of {displayName}, {status}":"Avatar di {displayName}, {status}","Cancel changes":"Annulla modifiche","Change title":"Modifica il titolo",Choose:"Scegli","Clear text":"Cancella il testo",Close:"Chiudi","Close modal":"Chiudi il messaggio modale","Close navigation":"Chiudi la navigazione","Close sidebar":"Chiudi la barra laterale","Confirm changes":"Conferma modifiche",Custom:"Personalizzato","Edit item":"Modifica l'elemento","Error getting related resources":"Errore nell'ottenere risorse correlate","Error parsing svg":"Errore nell'analizzare l'svg","External documentation for {title}":"Documentazione esterna per {title}",Favorite:"Preferito",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente",Global:"Globale","Go back to the list":"Torna all'elenco","Hide password":"Nascondi la password","Message limit of {count} characters reached":"Limite dei messaggi di {count} caratteri raggiunto","More items …":"Più elementi ...",Next:"Successivo","No emoji found":"Nessun emoji trovato","No results":"Nessun risultato",Objects:"Oggetti",Open:"Apri",'Open link to "{resourceTitle}"':'Apri il link a "{resourceTitle}"',"Open navigation":"Apri la navigazione","Password is secure":"La password è sicura","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji","Please select a time zone:":"Si prega di selezionare un fuso orario:",Previous:"Precedente","Related resources":"Risorse correlate",Search:"Cerca","Search results":"Risultati di ricerca","Select a tag":"Seleziona un'etichetta",Settings:"Impostazioni","Settings navigation":"Navigazione delle impostazioni","Show password":"Mostra la password","Smileys & Emotion":"Faccine ed emozioni","Start slideshow":"Avvia presentazione",Submit:"Invia",Symbols:"Simboli","Travel & Places":"Viaggi e luoghi","Type to search time zone":"Digita per cercare un fuso orario","Unable to search the group":"Impossibile cercare il gruppo","Undo changes":"Cancella i cambiamenti",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrivi un messaggio, "@" per menzionare qualcuno, ":" per il completamento automatico delle emoji ...'}},{locale:"ja_JP",translations:{"{tag} (invisible)":"{タグ} (不可視)","{tag} (restricted)":"{タグ} (制限付)",Actions:"操作",Activities:"アクティビティ","Animals & Nature":"動物と自然","Anything shared with the same group of people will show up here":"同じグループで共有しているものは、全てここに表示されます","Avatar of {displayName}":"{displayName} のアバター","Avatar of {displayName}, {status}":"{displayName}, {status} のアバター","Cancel changes":"変更をキャンセル","Change title":"タイトルを変更",Choose:"選択","Clear text":"テキストをクリア",Close:"閉じる","Close modal":"モーダルを閉じる","Close navigation":"ナビゲーションを閉じる","Close sidebar":"サイドバーを閉じる","Confirm changes":"変更を承認",Custom:"カスタム","Edit item":"編集","Error getting related resources":"関連リソースの取得エラー","Error parsing svg":"svgの解析エラー","External documentation for {title}":"{title} のための添付文書",Favorite:"お気に入り",Flags:"国旗","Food & Drink":"食べ物と飲み物","Frequently used":"よく使うもの",Global:"全体","Go back to the list":"リストに戻る","Hide password":"パスワードを非表示","Message limit of {count} characters reached":"{count} 文字のメッセージ上限に達しています","More items …":"他のアイテム",Next:"次","No emoji found":"絵文字が見つかりません","No results":"なし",Objects:"物",Open:"開く",'Open link to "{resourceTitle}"':'"{resourceTitle}"のリンクを開く',"Open navigation":"ナビゲーションを開く","Password is secure":"パスワードは保護されています","Pause slideshow":"スライドショーを一時停止","People & Body":"様々な人と体の部位","Pick an emoji":"絵文字を選択","Please select a time zone:":"タイムゾーンを選んで下さい:",Previous:"前","Related resources":"関連リソース",Search:"検索","Search results":"検索結果","Select a tag":"タグを選択",Settings:"設定","Settings navigation":"ナビゲーション設定","Show password":"パスワードを表示","Smileys & Emotion":"感情表現","Start slideshow":"スライドショーを開始",Submit:"提出",Symbols:"記号","Travel & Places":"旅行と場所","Type to search time zone":"タイムゾーン検索のため入力してください","Unable to search the group":"グループを検索できません","Undo changes":"変更を取り消し",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'メッセージを記入、"@"でメンション、":"で絵文字の自動補完 ...'}},{locale:"lt_LT",translations:{"{tag} (invisible)":"{tag} (nematoma)","{tag} (restricted)":"{tag} (apribota)",Actions:"Veiksmai",Activities:"Veiklos","Animals & Nature":"Gyvūnai ir gamta",Choose:"Pasirinkti",Close:"Užverti",Custom:"Tinkinti","External documentation for {title}":"Išorinė {title} dokumentacija",Flags:"Vėliavos","Food & Drink":"Maistas ir gėrimai","Frequently used":"Dažniausiai naudoti","Message limit of {count} characters reached":"Pasiekta {count} simbolių žinutės riba",Next:"Kitas","No emoji found":"Nerasta jaustukų","No results":"Nėra rezultatų",Objects:"Objektai","Pause slideshow":"Pristabdyti skaidrių rodymą","People & Body":"Žmonės ir kūnas","Pick an emoji":"Pasirinkti jaustuką",Previous:"Ankstesnis",Search:"Ieškoti","Search results":"Paieškos rezultatai","Select a tag":"Pasirinkti žymę",Settings:"Nustatymai","Settings navigation":"Naršymas nustatymuose","Smileys & Emotion":"Šypsenos ir emocijos","Start slideshow":"Pradėti skaidrių rodymą",Submit:"Pateikti",Symbols:"Simboliai","Travel & Places":"Kelionės ir vietos","Unable to search the group":"Nepavyko atlikti paiešką grupėje","Write message, @ to mention someone …":"Rašykite žinutę, naudokite @ norėdami kažką paminėti…"}},{locale:"lv",translations:{"{tag} (invisible)":"{tag} (neredzams)","{tag} (restricted)":"{tag} (ierobežots)",Choose:"Izvēlēties",Close:"Aizvērt",Next:"Nākamais","No results":"Nav rezultātu","Pause slideshow":"Pauzēt slaidrādi",Previous:"Iepriekšējais","Select a tag":"Izvēlēties birku",Settings:"Iestatījumi","Start slideshow":"Sākt slaidrādi"}},{locale:"mk",translations:{"{tag} (invisible)":"{tag} (невидливо)","{tag} (restricted)":"{tag} (ограничено)",Actions:"Акции",Activities:"Активности","Animals & Nature":"Животни & Природа","Avatar of {displayName}":"Аватар на {displayName}","Avatar of {displayName}, {status}":"Аватар на {displayName}, {status}","Cancel changes":"Откажи ги промените","Change title":"Промени наслов",Choose:"Избери",Close:"Затвори","Close modal":"Затвори модал","Close navigation":"Затвори навигација","Confirm changes":"Потврди ги промените",Custom:"Прилагодени","Edit item":"Уреди","External documentation for {title}":"Надворешна документација за {title}",Favorite:"Фаворити",Flags:"Знамиња","Food & Drink":"Храна & Пијалоци","Frequently used":"Најчесто користени",Global:"Глобално","Go back to the list":"Врати се на листата",items:"ставки","Message limit of {count} characters reached":"Ограничувањето на должината на пораката од {count} карактери е надминато","More {dashboardItemType} …":"Повеќе {dashboardItemType} …",Next:"Следно","No emoji found":"Не се пронајдени емотикони","No results":"Нема резултати",Objects:"Објекти",Open:"Отвори","Open navigation":"Отвори навигација","Pause slideshow":"Пузирај слајдшоу","People & Body":"Луѓе & Тело","Pick an emoji":"Избери емотикон","Please select a time zone:":"Изберете временска зона:",Previous:"Предходно",Search:"Барај","Search results":"Резултати од барувањето","Select a tag":"Избери ознака",Settings:"Параметри","Settings navigation":"Параметри за навигација","Smileys & Emotion":"Смешковци & Емотикони","Start slideshow":"Стартувај слајдшоу",Submit:"Испрати",Symbols:"Симболи","Travel & Places":"Патувања & Места","Type to search time zone":"Напишете за да пребарате временска зона","Unable to search the group":"Неможе да се принајде групата","Undo changes":"Врати ги промените","Write message, @ to mention someone, : for emoji autocompletion …":"Напиши порака, @ за да спомнете некого, : за емотинони автоатско комплетирање ..."}},{locale:"my",translations:{"{tag} (invisible)":"{tag} (ကွယ်ဝှက်ထား)","{tag} (restricted)":"{tag} (ကန့်သတ်)",Actions:"လုပ်ဆောင်ချက်များ",Activities:"ပြုလုပ်ဆောင်တာများ","Animals & Nature":"တိရစ္ဆာန်များနှင့် သဘာဝ","Avatar of {displayName}":"{displayName} ၏ ကိုယ်ပွား","Cancel changes":"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်",Choose:"ရွေးချယ်ရန်",Close:"ပိတ်ရန်","Confirm changes":"ပြောင်းလဲမှုများ အတည်ပြုရန်",Custom:"အလိုကျချိန်ညှိမှု","External documentation for {title}":"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း",Flags:"အလံများ","Food & Drink":"အစားအသောက်","Frequently used":"မကြာခဏအသုံးပြုသော",Global:"ကမ္ဘာလုံးဆိုင်ရာ","Message limit of {count} characters reached":"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ",Next:"နောက်သို့ဆက်ရန်","No emoji found":"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ","No results":"ရလဒ်မရှိပါ",Objects:"အရာဝတ္ထုများ","Pause slideshow":"စလိုက်ရှိုး ခေတ္တရပ်ရန်","People & Body":"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်","Pick an emoji":"အီမိုဂျီရွေးရန်","Please select a time zone:":"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ",Previous:"ယခင်",Search:"ရှာဖွေရန်","Search results":"ရှာဖွေမှု ရလဒ်များ","Select a tag":"tag ရွေးချယ်ရန်",Settings:"ချိန်ညှိချက်များ","Settings navigation":"ချိန်ညှိချက်အညွှန်း","Smileys & Emotion":"စမိုင်လီများနှင့် အီမိုရှင်း","Start slideshow":"စလိုက်ရှိုးအား စတင်ရန်",Submit:"တင်သွင်းရန်",Symbols:"သင်္ကေတများ","Travel & Places":"ခရီးသွားလာခြင်းနှင့် နေရာများ","Type to search time zone":"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ","Unable to search the group":"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ","Write message, @ to mention someone …":"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်..."}},{locale:"nb_NO",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (beskyttet)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr og natur","Anything shared with the same group of people will show up here":"Alt som er delt med den samme gruppen vil vises her","Avatar of {displayName}":"Avataren til {displayName}","Avatar of {displayName}, {status}":"{displayName}'s avatar, {status}","Cancel changes":"Avbryt endringer","Change title":"Endre tittel",Choose:"Velg","Clear text":"Fjern tekst",Close:"Lukk","Close modal":"Lukk modal","Close navigation":"Lukk navigasjon","Close sidebar":"Lukk sidepanel","Confirm changes":"Bekreft endringer",Custom:"Tilpasset","Edit item":"Rediger","Error getting related resources":"Feil ved henting av relaterte ressurser","Error parsing svg":"Feil ved parsing av svg","External documentation for {title}":"Ekstern dokumentasjon for {title}",Favorite:"Favoritt",Flags:"Flagg","Food & Drink":"Mat og drikke","Frequently used":"Ofte brukt",Global:"Global","Go back to the list":"Gå tilbake til listen","Hide password":"Skjul passord","Message limit of {count} characters reached":"Karakter begrensing {count} nådd i melding","More items …":"Flere gjenstander...",Next:"Neste","No emoji found":"Fant ingen emoji","No results":"Ingen resultater",Objects:"Objekter",Open:"Åpne",'Open link to "{resourceTitle}"':'Åpne link til "{resourceTitle}"',"Open navigation":"Åpne navigasjon","Password is secure":"Passordet er sikkert","Pause slideshow":"Pause lysbildefremvisning","People & Body":"Mennesker og kropp","Pick an emoji":"Velg en emoji","Please select a time zone:":"Vennligst velg tidssone",Previous:"Forrige","Related resources":"Relaterte ressurser",Search:"Søk","Search results":"Søkeresultater","Select a tag":"Velg en merkelapp",Settings:"Innstillinger","Settings navigation":"Navigasjonsinstillinger","Show password":"Vis passord","Smileys & Emotion":"Smilefjes og følelser","Start slideshow":"Start lysbildefremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Reise og steder","Type to search time zone":"Tast for å søke etter tidssone","Unable to search the group":"Kunne ikke søke i gruppen","Undo changes":"Tilbakestill endringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv melding, bruk "@" for å nevne noen, bruk ":" for autofullføring av emoji...'}},{locale:"nl",translations:{"{tag} (invisible)":"{tag} (onzichtbaar)","{tag} (restricted)":"{tag} (beperkt)",Actions:"Acties",Activities:"Activiteiten","Animals & Nature":"Dieren & Natuur","Avatar of {displayName}":"Avatar van {displayName}","Avatar of {displayName}, {status}":"Avatar van {displayName}, {status}","Cancel changes":"Wijzigingen annuleren",Choose:"Kies",Close:"Sluiten","Close navigation":"Navigatie sluiten","Confirm changes":"Wijzigingen bevestigen",Custom:"Aangepast","Edit item":"Item bewerken","External documentation for {title}":"Externe documentatie voor {title}",Flags:"Vlaggen","Food & Drink":"Eten & Drinken","Frequently used":"Vaak gebruikt",Global:"Globaal","Go back to the list":"Ga terug naar de lijst","Message limit of {count} characters reached":"Berichtlimiet van {count} karakters bereikt",Next:"Volgende","No emoji found":"Geen emoji gevonden","No results":"Geen resultaten",Objects:"Objecten","Open navigation":"Navigatie openen","Pause slideshow":"Pauzeer diavoorstelling","People & Body":"Mensen & Lichaam","Pick an emoji":"Kies een emoji","Please select a time zone:":"Selecteer een tijdzone:",Previous:"Vorige",Search:"Zoeken","Search results":"Zoekresultaten","Select a tag":"Selecteer een label",Settings:"Instellingen","Settings navigation":"Instellingen navigatie","Smileys & Emotion":"Smileys & Emotie","Start slideshow":"Start diavoorstelling",Submit:"Verwerken",Symbols:"Symbolen","Travel & Places":"Reizen & Plaatsen","Type to search time zone":"Type om de tijdzone te zoeken","Unable to search the group":"Kan niet in de groep zoeken","Undo changes":"Wijzigingen ongedaan maken","Write message, @ to mention someone, : for emoji autocompletion …":"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ..."}},{locale:"oc",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (limit)",Actions:"Accions",Choose:"Causir",Close:"Tampar",Next:"Seguent","No results":"Cap de resultat","Pause slideshow":"Metre en pausa lo diaporama",Previous:"Precedent","Select a tag":"Seleccionar una etiqueta",Settings:"Paramètres","Start slideshow":"Lançar lo diaporama"}},{locale:"pl",translations:{"{tag} (invisible)":"{tag} (niewidoczna)","{tag} (restricted)":"{tag} (ograniczona)",Actions:"Działania",Activities:"Aktywność","Animals & Nature":"Zwierzęta i natura","Anything shared with the same group of people will show up here":"Tutaj pojawi się wszystko, co zostało udostępnione tej samej grupie osób","Avatar of {displayName}":"Awatar {displayName}","Avatar of {displayName}, {status}":"Awatar {displayName}, {status}","Cancel changes":"Anuluj zmiany","Change title":"Zmień tytuł",Choose:"Wybierz","Clear text":"Wyczyść tekst",Close:"Zamknij","Close modal":"Zamknij modal","Close navigation":"Zamknij nawigację","Close sidebar":"Zamknij pasek boczny","Confirm changes":"Potwierdź zmiany",Custom:"Zwyczajne","Edit item":"Edytuj element","Error getting related resources":"Błąd podczas pobierania powiązanych zasobów","Error parsing svg":"Błąd podczas analizowania svg","External documentation for {title}":"Dokumentacja zewnętrzna dla {title}",Favorite:"Ulubiony",Flags:"Flagi","Food & Drink":"Jedzenie i picie","Frequently used":"Często używane",Global:"Globalnie","Go back to the list":"Powrót do listy","Hide password":"Ukryj hasło","Message limit of {count} characters reached":"Przekroczono limit wiadomości wynoszący {count} znaków","More items …":"Więcej pozycji…",Next:"Następny","No emoji found":"Nie znaleziono emoji","No results":"Brak wyników",Objects:"Obiekty",Open:"Otwórz",'Open link to "{resourceTitle}"':'Otwórz link do "{resourceTitle}"',"Open navigation":"Otwórz nawigację","Password is secure":"Hasło jest bezpieczne","Pause slideshow":"Wstrzymaj pokaz slajdów","People & Body":"Ludzie i ciało","Pick an emoji":"Wybierz emoji","Please select a time zone:":"Wybierz strefę czasową:",Previous:"Poprzedni","Related resources":"Powiązane zasoby",Search:"Szukaj","Search results":"Wyniki wyszukiwania","Select a tag":"Wybierz etykietę",Settings:"Ustawienia","Settings navigation":"Ustawienia nawigacji","Show password":"Pokaż hasło","Smileys & Emotion":"Buźki i emotikony","Start slideshow":"Rozpocznij pokaz slajdów",Submit:"Wyślij",Symbols:"Symbole","Travel & Places":"Podróże i miejsca","Type to search time zone":"Wpisz, aby wyszukać strefę czasową","Unable to search the group":"Nie można przeszukać grupy","Undo changes":"Cofnij zmiany",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Napisz wiadomość, "@" aby o kimś wspomnieć, ":" dla autouzupełniania emoji…'}},{locale:"pt_BR",translations:{"{tag} (invisible)":"{tag} (invisível)","{tag} (restricted)":"{tag} (restrito) ",Actions:"Ações",Activities:"Atividades","Animals & Nature":"Animais & Natureza","Anything shared with the same group of people will show up here":"Qualquer coisa compartilhada com o mesmo grupo de pessoas aparecerá aqui","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar alterações","Change title":"Alterar título",Choose:"Escolher","Clear text":"Limpar texto",Close:"Fechar","Close modal":"Fechar modal","Close navigation":"Fechar navegação","Close sidebar":"Fechar barra lateral","Confirm changes":"Confirmar alterações",Custom:"Personalizado","Edit item":"Editar item","Error getting related resources":"Erro ao obter recursos relacionados","Error parsing svg":"Erro ao analisar svg","External documentation for {title}":"Documentação externa para {title}",Favorite:"Favorito",Flags:"Bandeiras","Food & Drink":"Comida & Bebida","Frequently used":"Mais usados",Global:"Global","Go back to the list":"Volte para a lista","Hide password":"Ocultar a senha","Message limit of {count} characters reached":"Limite de mensagem de {count} caracteres atingido","More items …":"Mais itens …",Next:"Próximo","No emoji found":"Nenhum emoji encontrado","No results":"Sem resultados",Objects:"Objetos",Open:"Aberto",'Open link to "{resourceTitle}"':'Abrir link para "{resourceTitle}"',"Open navigation":"Abrir navegação","Password is secure":"A senha é segura","Pause slideshow":"Pausar apresentação de slides","People & Body":"Pessoas & Corpo","Pick an emoji":"Escolha um emoji","Please select a time zone:":"Selecione um fuso horário: ",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Pesquisar","Search results":"Resultados da pesquisa","Select a tag":"Selecionar uma tag",Settings:"Configurações","Settings navigation":"Navegação de configurações","Show password":"Mostrar senha","Smileys & Emotion":"Smiles & Emoções","Start slideshow":"Iniciar apresentação de slides",Submit:"Enviar",Symbols:"Símbolo","Travel & Places":"Viagem & Lugares","Type to search time zone":"Digite para pesquisar o fuso horário ","Unable to search the group":"Não foi possível pesquisar o grupo","Undo changes":"Desfazer modificações",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escreva mensagens, use "@" para mencionar algum, use ":" for autocompletar emoji …'}},{locale:"pt_PT",translations:{"{tag} (invisible)":"{tag} (invisivel)","{tag} (restricted)":"{tag} (restrito)",Actions:"Ações",Choose:"Escolher",Close:"Fechar",Next:"Seguinte","No results":"Sem resultados","Pause slideshow":"Pausar diaporama",Previous:"Anterior","Select a tag":"Selecionar uma etiqueta",Settings:"Definições","Start slideshow":"Iniciar diaporama","Unable to search the group":"Não é possível pesquisar o grupo"}},{locale:"ro",translations:{"{tag} (invisible)":"{tag} (invizibil)","{tag} (restricted)":"{tag} (restricționat)",Actions:"Acțiuni",Activities:"Activități","Animals & Nature":"Animale și natură","Anything shared with the same group of people will show up here":"Tot ceea ce este partajat cu același grup de persoane va fi afișat aici","Avatar of {displayName}":"Avatarul lui {displayName}","Avatar of {displayName}, {status}":"Avatarul lui {displayName}, {status}","Cancel changes":"Anulează modificările","Change title":"Modificați titlul",Choose:"Alegeți","Clear text":"Șterge textul",Close:"Închideți","Close modal":"Închideți modulul","Close navigation":"Închideți navigarea","Close sidebar":"Închide bara laterală","Confirm changes":"Confirmați modificările",Custom:"Personalizat","Edit item":"Editați elementul","Error getting related resources":" Eroare la returnarea resurselor legate","Error parsing svg":"Eroare de analizare a svg","External documentation for {title}":"Documentație externă pentru {title}",Favorite:"Favorit",Flags:"Marcaje","Food & Drink":"Alimente și băuturi","Frequently used":"Utilizate frecvent",Global:"Global","Go back to the list":"Întoarceți-vă la listă","Hide password":"Ascunde parola","Message limit of {count} characters reached":"Limita mesajului de {count} caractere a fost atinsă","More items …":"Mai multe articole ...",Next:"Următorul","No emoji found":"Nu s-a găsit niciun emoji","No results":"Nu există rezultate",Objects:"Obiecte",Open:"Deschideți",'Open link to "{resourceTitle}"':'Deschide legătura la "{resourceTitle}"',"Open navigation":"Deschideți navigația","Password is secure":"Parola este sigură","Pause slideshow":"Pauză prezentare de diapozitive","People & Body":"Oameni și corp","Pick an emoji":"Alege un emoji","Please select a time zone:":"Vă rugăm să selectați un fus orar:",Previous:"Anterior","Related resources":"Resurse legate",Search:"Căutare","Search results":"Rezultatele căutării","Select a tag":"Selectați o etichetă",Settings:"Setări","Settings navigation":"Navigare setări","Show password":"Arată parola","Smileys & Emotion":"Zâmbete și emoții","Start slideshow":"Începeți prezentarea de diapozitive",Submit:"Trimiteți",Symbols:"Simboluri","Travel & Places":"Călătorii și locuri","Type to search time zone":"Tastați pentru a căuta fusul orar","Unable to search the group":"Imposibilitatea de a căuta în grup","Undo changes":"Anularea modificărilor",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrie un mesaj, folosește "@" pentru a menționa pe cineva, folosește ":" pentru autocompletarea cu emoji ...'}},{locale:"ru",translations:{"{tag} (invisible)":"{tag} (невидимое)","{tag} (restricted)":"{tag} (ограниченное)",Actions:"Действия ",Activities:"События","Animals & Nature":"Животные и природа ","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Фотография {displayName}, {status}","Cancel changes":"Отменить изменения",Choose:"Выберите",Close:"Закрыть","Close modal":"Закрыть модальное окно","Close navigation":"Закрыть навигацию","Confirm changes":"Подтвердить изменения",Custom:"Пользовательское","Edit item":"Изменить элемент","External documentation for {title}":"Внешняя документация для {title}",Flags:"Флаги","Food & Drink":"Еда, напиток","Frequently used":"Часто используемый",Global:"Глобальный","Go back to the list":"Вернуться к списку",items:"элементов","Message limit of {count} characters reached":"Достигнуто ограничение на количество символов в {count}","More {dashboardItemType} …":"Больше {dashboardItemType} …",Next:"Следующее","No emoji found":"Эмодзи не найдено","No results":"Результаты отсуствуют",Objects:"Объекты",Open:"Открыть","Open navigation":"Открыть навигацию","Pause slideshow":"Приостановить показ слйдов","People & Body":"Люди и тело","Pick an emoji":"Выберите эмодзи","Please select a time zone:":"Пожалуйста, выберите часовой пояс:",Previous:"Предыдущее",Search:"Поиск","Search results":"Результаты поиска","Select a tag":"Выберите метку",Settings:"Параметры","Settings navigation":"Навигация по настройкам","Smileys & Emotion":"Смайлики и эмоции","Start slideshow":"Начать показ слайдов",Submit:"Утвердить",Symbols:"Символы","Travel & Places":"Путешествия и места","Type to search time zone":"Введите для поиска часового пояса","Unable to search the group":"Невозможно найти группу","Undo changes":"Отменить изменения","Write message, @ to mention someone, : for emoji autocompletion …":"Напишите сообщение, @ - чтобы упомянуть кого-то, : - для автозаполнения эмодзи …"}},{locale:"sk_SK",translations:{"{tag} (invisible)":"{tag} (neviditeľný)","{tag} (restricted)":"{tag} (obmedzený)",Actions:"Akcie",Activities:"Aktivity","Animals & Nature":"Zvieratá a príroda","Avatar of {displayName}":"Avatar {displayName}","Avatar of {displayName}, {status}":"Avatar {displayName}, {status}","Cancel changes":"Zrušiť zmeny",Choose:"Vybrať",Close:"Zatvoriť","Close navigation":"Zavrieť navigáciu","Confirm changes":"Potvrdiť zmeny",Custom:"Zvyk","Edit item":"Upraviť položku","External documentation for {title}":"Externá dokumentácia pre {title}",Flags:"Vlajky","Food & Drink":"Jedlo a nápoje","Frequently used":"Často používané",Global:"Globálne","Go back to the list":"Naspäť na zoznam","Message limit of {count} characters reached":"Limit správy na {count} znakov dosiahnutý",Next:"Ďalší","No emoji found":"Nenašli sa žiadne emodži","No results":"Žiadne výsledky",Objects:"Objekty","Open navigation":"Otvoriť navigáciu","Pause slideshow":"Pozastaviť prezentáciu","People & Body":"Ľudia a telo","Pick an emoji":"Vyberte si emodži","Please select a time zone:":"Prosím vyberte časovú zónu:",Previous:"Predchádzajúci",Search:"Hľadať","Search results":"Výsledky vyhľadávania","Select a tag":"Vybrať štítok",Settings:"Nastavenia","Settings navigation":"Navigácia v nastaveniach","Smileys & Emotion":"Smajlíky a emócie","Start slideshow":"Začať prezentáciu",Submit:"Odoslať",Symbols:"Symboly","Travel & Places":"Cestovanie a miesta","Type to search time zone":"Začníte písať pre vyhľadávanie časovej zóny","Unable to search the group":"Skupinu sa nepodarilo nájsť","Undo changes":"Vrátiť zmeny","Write message, @ to mention someone, : for emoji autocompletion …":"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…"}},{locale:"sl",translations:{"{tag} (invisible)":"{tag} (nevidno)","{tag} (restricted)":"{tag} (omejeno)",Actions:"Dejanja",Activities:"Dejavnosti","Animals & Nature":"Živali in Narava","Avatar of {displayName}":"Podoba {displayName}","Avatar of {displayName}, {status}":"Prikazna slika {displayName}, {status}","Cancel changes":"Prekliči spremembe","Change title":"Spremeni naziv",Choose:"Izbor","Clear text":"Počisti besedilo",Close:"Zapri","Close modal":"Zapri pojavno okno","Close navigation":"Zapri krmarjenje","Close sidebar":"Zapri stransko vrstico","Confirm changes":"Potrdi spremembe",Custom:"Po meri","Edit item":"Uredi predmet","Error getting related resources":"Napaka pridobivanja povezanih virov","External documentation for {title}":"Zunanja dokumentacija za {title}",Favorite:"Priljubljeno",Flags:"Zastavice","Food & Drink":"Hrana in Pijača","Frequently used":"Pogostost uporabe",Global:"Splošno","Go back to the list":"Vrni se na seznam","Hide password":"Skrij geslo","Message limit of {count} characters reached":"Dosežena omejitev {count} znakov na sporočilo.","More items …":"Več predmetov ...",Next:"Naslednji","No emoji found":"Ni najdenih izraznih ikon","No results":"Ni zadetkov",Objects:"Predmeti",Open:"Odpri",'Open link to "{resourceTitle}"':"Odpri povezavo do »{resourceTitle}«","Open navigation":"Odpri krmarjenje","Password is secure":"Geslo je varno","Pause slideshow":"Ustavi predstavitev","People & Body":"Ljudje in Telo","Pick a date":"Izbor datuma","Pick a date and a time":"Izbor datuma in časa","Pick a month":"Izbor meseca","Pick a time":"Izbor časa","Pick a week":"Izbor tedna","Pick a year":"Izbor leta","Pick an emoji":"Izbor izrazne ikone","Please select a time zone:":"Izbor časovnega pasu:",Previous:"Predhodni","Related resources":"Povezani viri",Search:"Iskanje","Search results":"Zadetki iskanja","Select a tag":"Izbor oznake",Settings:"Nastavitve","Settings navigation":"Krmarjenje nastavitev","Show password":"Pokaži geslo","Smileys & Emotion":"Izrazne ikone","Start slideshow":"Začni predstavitev",Submit:"Pošlji",Symbols:"Simboli","Travel & Places":"Potovanja in Kraji","Type to search time zone":"Vpišite niz za iskanje časovnega pasu","Unable to search the group":"Ni mogoče iskati po skupini","Undo changes":"Razveljavi spremembe","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite sporočilo, za omembo pred ime postavite@, začnite z : za vstavljanje izraznih ikon …"}},{locale:"sr",translations:{"{tag} (invisible)":"{tag} (nevidljivo)","{tag} (restricted)":"{tag} (ograničeno)",Actions:"Radnje",Activities:"Aktivnosti","Animals & Nature":"Životinje i Priroda","Avatar of {displayName}":"Avatar za {displayName}","Avatar of {displayName}, {status}":"Avatar za {displayName}, {status}","Cancel changes":"Otkaži izmene","Change title":"Izmeni naziv",Choose:"Изаберите",Close:"Затвори","Close modal":"Zatvori modal","Close navigation":"Zatvori navigaciju","Close sidebar":"Zatvori bočnu traku","Confirm changes":"Potvrdite promene",Custom:"Po meri","Edit item":"Uredi stavku","External documentation for {title}":"Eksterna dokumentacija za {title}",Favorite:"Omiljeni",Flags:"Zastave","Food & Drink":"Hrana i Piće","Frequently used":"Često korišćeno",Global:"Globalno","Go back to the list":"Natrag na listu",items:"stavke","Message limit of {count} characters reached":"Dostignuto je ograničenje za poruke od {count} znakova","More {dashboardItemType} …":"Više {dashboardItemType} …",Next:"Следеће","No emoji found":"Nije pronađen nijedan emodži","No results":"Нема резултата",Objects:"Objekti",Open:"Otvori","Open navigation":"Otvori navigaciju","Pause slideshow":"Паузирај слајд шоу","People & Body":"Ljudi i Telo","Pick an emoji":"Izaberi emodži","Please select a time zone:":"Molimo izaberite vremensku zonu:",Previous:"Претходно",Search:"Pretraži","Search results":"Rezultati pretrage","Select a tag":"Изаберите ознаку",Settings:"Поставке","Settings navigation":"Navigacija u podešavanjima","Smileys & Emotion":"Smajli i Emocije","Start slideshow":"Покрени слајд шоу",Submit:"Prihvati",Symbols:"Simboli","Travel & Places":"Putovanja i Mesta","Type to search time zone":"Ukucaj da pretražiš vremenske zone","Unable to search the group":"Nije moguće pretražiti grupu","Undo changes":"Poništi promene","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite poruku, @ da pomenete nekoga, : za automatsko dovršavanje emodžija…"}},{locale:"sv",translations:{"{tag} (invisible)":"{tag} (osynlig)","{tag} (restricted)":"{tag} (begränsad)",Actions:"Åtgärder",Activities:"Aktiviteter","Animals & Nature":"Djur & Natur","Anything shared with the same group of people will show up here":"Något som delats med samma grupp av personer kommer att visas här","Avatar of {displayName}":"{displayName}s avatar","Avatar of {displayName}, {status}":"{displayName}s avatar, {status}","Cancel changes":"Avbryt ändringar","Change title":"Ändra titel",Choose:"Välj","Clear text":"Ta bort text",Close:"Stäng","Close modal":"Stäng modal","Close navigation":"Stäng navigering","Close sidebar":"Stäng sidopanel","Confirm changes":"Bekräfta ändringar",Custom:"Anpassad","Edit item":"Ändra","Error getting related resources":"Problem att hämta relaterade resurser","Error parsing svg":"Fel vid inläsning av svg","External documentation for {title}":"Extern dokumentation för {title}",Favorite:"Favorit",Flags:"Flaggor","Food & Drink":"Mat & Dryck","Frequently used":"Används ofta",Global:"Global","Go back to the list":"Gå tillbaka till listan","Hide password":"Göm lössenordet","Message limit of {count} characters reached":"Meddelandegräns {count} tecken används","More items …":"Fler objekt",Next:"Nästa","No emoji found":"Hittade inga emojis","No results":"Inga resultat",Objects:"Objekt",Open:"Öppna",'Open link to "{resourceTitle}"':'Öppna länk till "{resourceTitle}"',"Open navigation":"Öppna navigering","Password is secure":"Lössenordet är säkert","Pause slideshow":"Pausa bildspelet","People & Body":"Kropp & Själ","Pick an emoji":"Välj en emoji","Please select a time zone:":"Välj tidszon:",Previous:"Föregående","Related resources":"Relaterade resurser",Search:"Sök","Search results":"Sökresultat","Select a tag":"Välj en tag",Settings:"Inställningar","Settings navigation":"Inställningsmeny","Show password":"Visa lössenordet","Smileys & Emotion":"Selfies & Känslor","Start slideshow":"Starta bildspelet",Submit:"Skicka",Symbols:"Symboler","Travel & Places":"Resor & Sevärdigheter","Type to search time zone":"Skriv för att välja tidszon","Unable to search the group":"Kunde inte söka i gruppen","Undo changes":"Ångra ändringar",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv meddelande, använd "@" för att nämna någon, använd ":" för automatiska emojiförslag ...'}},{locale:"tr",translations:{"{tag} (invisible)":"{tag} (görünmez)","{tag} (restricted)":"{tag} (kısıtlı)",Actions:"İşlemler",Activities:"Etkinlikler","Animals & Nature":"Hayvanlar ve Doğa","Anything shared with the same group of people will show up here":"Aynı kişi grubu ile paylaşılan herşey burada görüntülenir","Avatar of {displayName}":"{displayName} avatarı","Avatar of {displayName}, {status}":"{displayName}, {status} avatarı","Cancel changes":"Değişiklikleri iptal et","Change title":"Başlığı değiştir",Choose:"Seçin","Clear text":"Metni temizle",Close:"Kapat","Close modal":"Üste açılan pencereyi kapat","Close navigation":"Gezinmeyi kapat","Close sidebar":"Yan çubuğu kapat","Confirm changes":"Değişiklikleri onayla",Custom:"Özel","Edit item":"Ögeyi düzenle","Error getting related resources":"İlgili kaynaklar alınırken sorun çıktı","Error parsing svg":"svg işlenirken sorun çıktı","External documentation for {title}":"{title} için dış belgeler",Favorite:"Sık kullanılanlara ekle",Flags:"Bayraklar","Food & Drink":"Yeme ve İçme","Frequently used":"Sık kullanılanlar",Global:"Evrensel","Go back to the list":"Listeye dön","Hide password":"Parolayı gizle","Message limit of {count} characters reached":"{count} karakter ileti sınırına ulaşıldı","More items …":"Diğer ögeler…",Next:"Sonraki","No emoji found":"Herhangi bir emoji bulunamadı","No results":"Herhangi bir sonuç bulunamadı",Objects:"Nesneler",Open:"Aç",'Open link to "{resourceTitle}"':'"{resourceTitle}" bağlantısını aç',"Open navigation":"Gezinmeyi aç","Password is secure":"Parola güvenli","Pause slideshow":"Slayt sunumunu duraklat","People & Body":"İnsanlar ve Beden","Pick an emoji":"Bir emoji seçin","Please select a time zone:":"Lütfen bir saat dilimi seçin:",Previous:"Önceki","Related resources":"İlgili kaynaklar",Search:"Arama","Search results":"Arama sonuçları","Select a tag":"Bir etiket seçin",Settings:"Ayarlar","Settings navigation":"Gezinme ayarları","Show password":"Parolayı görüntüle","Smileys & Emotion":"İfadeler ve Duygular","Start slideshow":"Slayt sunumunu başlat",Submit:"Gönder",Symbols:"Simgeler","Travel & Places":"Gezi ve Yerler","Type to search time zone":"Saat dilimi aramak için yazmaya başlayın","Unable to search the group":"Grupta arama yapılamadı","Undo changes":"Değişiklikleri geri al",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'İleti yazın, birini anmak için @, otomatik emoji tamamlamak için ":" kullanın…'}},{locale:"uk",translations:{"{tag} (invisible)":"{tag} (невидимий)","{tag} (restricted)":"{tag} (обмежений)",Actions:"Дії",Activities:"Діяльність","Animals & Nature":"Тварини та природа","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Аватар {displayName}, {status}","Cancel changes":"Скасувати зміни","Change title":"Змінити назву",Choose:"ВиберітьВиберіть","Clear text":"Очистити текст",Close:"Закрити","Close modal":"Закрити модаль","Close navigation":"Закрити навігацію","Close sidebar":"Закрити бічну панель","Confirm changes":"Підтвердити зміни",Custom:"Власне","Edit item":"Редагувати елемент","External documentation for {title}":"Зовнішня документація для {title}",Favorite:"Улюблений",Flags:"Прапори","Food & Drink":"Їжа та напої","Frequently used":"Найчастіші",Global:"Глобальний","Go back to the list":"Повернутися до списку","Hide password":"Приховати пароль",items:"елементи","Message limit of {count} characters reached":"Вичерпано ліміт у {count} символів для повідомлення","More {dashboardItemType} …":"Більше {dashboardItemType}…",Next:"Вперед","No emoji found":"Емоційки відсутні","No results":"Відсутні результати",Objects:"Об'єкти",Open:"Відкрити","Open navigation":"Відкрити навігацію","Password is secure":"Пароль безпечний","Pause slideshow":"Пауза у показі слайдів","People & Body":"Люди та жести","Pick an emoji":"Виберіть емоційку","Please select a time zone:":"Виберіть часовий пояс:",Previous:"Назад",Search:"Пошук","Search results":"Результати пошуку","Select a tag":"Виберіть позначку",Settings:"Налаштування","Settings navigation":"Навігація у налаштуваннях","Show password":"Показати пароль","Smileys & Emotion":"Смайли та емоції","Start slideshow":"Почати показ слайдів",Submit:"Надіслати",Symbols:"Символи","Travel & Places":"Поїздки та місця","Type to search time zone":"Введіть для пошуку часовий пояс","Unable to search the group":"Неможливо шукати в групі","Undo changes":"Скасувати зміни","Write message, @ to mention someone, : for emoji autocompletion …":"Напишіть повідомлення, @, щоб згадати когось, : для автозаповнення емодзі…"}},{locale:"zh_CN",translations:{"{tag} (invisible)":"{tag} (不可见)","{tag} (restricted)":"{tag} (受限)",Actions:"行为",Activities:"活动","Animals & Nature":"动物 & 自然","Anything shared with the same group of people will show up here":"与同组用户分享的所有内容都会显示于此","Avatar of {displayName}":"{displayName}的头像","Avatar of {displayName}, {status}":"{displayName}的头像,{status}","Cancel changes":"取消更改","Change title":"更改标题",Choose:"选择","Clear text":"清除文本",Close:"关闭","Close modal":"关闭窗口","Close navigation":"关闭导航","Close sidebar":"关闭侧边栏","Confirm changes":"确认更改",Custom:"自定义","Edit item":"编辑项目","Error getting related resources":"获取相关资源时出错","Error parsing svg":"解析 svg 时出错","External documentation for {title}":"{title}的外部文档",Favorite:"喜爱",Flags:"旗帜","Food & Drink":"食物 & 饮品","Frequently used":"经常使用",Global:"全局","Go back to the list":"返回至列表","Hide password":"隐藏密码","Message limit of {count} characters reached":"已达到 {count} 个字符的消息限制","More items …":"更多项目…",Next:"下一个","No emoji found":"表情未找到","No results":"无结果",Objects:"物体",Open:"打开",'Open link to "{resourceTitle}"':'打开"{resourceTitle}"的连接',"Open navigation":"开启导航","Password is secure":"密码安全","Pause slideshow":"暂停幻灯片","People & Body":"人 & 身体","Pick an emoji":"选择一个表情","Please select a time zone:":"请选择一个时区:",Previous:"上一个","Related resources":"相关资源",Search:"搜索","Search results":"搜索结果","Select a tag":"选择一个标签",Settings:"设置","Settings navigation":"设置向导","Show password":"显示密码","Smileys & Emotion":"笑脸 & 情感","Start slideshow":"开始幻灯片",Submit:"提交",Symbols:"符号","Travel & Places":"旅游 & 地点","Type to search time zone":"打字以搜索时区","Unable to search the group":"无法搜索分组","Undo changes":"撤销更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'写信息,使用"@"来提及某人,使用":"进行表情符号自动完成 ...'}},{locale:"zh_HK",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然","Anything shared with the same group of people will show up here":"與同一組人共享的任何內容都會顯示在此處","Avatar of {displayName}":"{displayName} 的頭像","Avatar of {displayName}, {status}":"{displayName} 的頭像,{status}","Cancel changes":"取消更改","Change title":"更改標題",Choose:"選擇","Clear text":"清除文本",Close:"關閉","Close modal":"關閉模態","Close navigation":"關閉導航","Close sidebar":"關閉側邊欄","Confirm changes":"確認更改",Custom:"自定義","Edit item":"編輯項目","Error getting related resources":"獲取相關資源出錯","Error parsing svg":"解析 svg 時出錯","External documentation for {title}":"{title} 的外部文檔",Favorite:"喜愛",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"經常使用",Global:"全球的","Go back to the list":"返回清單","Hide password":"隱藏密碼","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制","More items …":"更多項目 …",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件",Open:"打開",'Open link to "{resourceTitle}"':"打開指向 “{resourceTitle}” 的鏈結","Open navigation":"開啟導航","Password is secure":"密碼是安全的","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號","Please select a time zone:":"請選擇時區:",Previous:"上一個","Related resources":"相關資源",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Show password":"顯示密碼","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Submit:"提交",Symbols:"標誌","Travel & Places":"旅遊與景點","Type to search time zone":"鍵入以搜索時區","Unable to search the group":"無法搜尋群組","Undo changes":"取消更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'寫訊息,使用 "@" 來指代某人,使用 ":" 用於表情符號自動填充 ...'}},{locale:"zh_TW",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然",Choose:"選擇",Close:"關閉",Custom:"自定義",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"最近使用","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Symbols:"標誌","Travel & Places":"旅遊與景點","Unable to search the group":"無法搜尋群組","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}}].forEach((e=>{const t={};for(const a in e.translations)e.translations[a].pluralId?t[a]={msgid:a,msgid_plural:e.translations[a].pluralId,msgstr:e.translations[a].msgstr}:t[a]={msgid:a,msgstr:[e.translations[a]]};i.addTranslation(e.locale,{translations:{"":t}})}));const n=i.build(),r=(n.ngettext.bind(n),n.gettext.bind(n))},1205:(e,t,a)=>{"use strict";a.d(t,{Z:()=>o});const o=e=>Math.random().toString(36).replace(/[^a-z]+/g,"").slice(0,e||5)},1206:(e,t,a)=>{"use strict";a.d(t,{L:()=>o});a(4505);const o=function(){return Object.assign(window,{_nc_focus_trap:window._nc_focus_trap||[]}),window._nc_focus_trap}},4825:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon[data-v-29452b76]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-items[data-v-29452b76]{display:flex;align-items:center}.action-items>button[data-v-29452b76]{margin-right:7px}.action-item[data-v-29452b76]{--open-background-color: var(--color-background-hover, $action-background-hover);position:relative;display:inline-block}.action-item.action-item--primary[data-v-29452b76]{--open-background-color: var(--color-primary-element-hover)}.action-item.action-item--secondary[data-v-29452b76]{--open-background-color: var(--color-primary-element-light-hover)}.action-item.action-item--error[data-v-29452b76]{--open-background-color: var(--color-error-hover)}.action-item.action-item--warning[data-v-29452b76]{--open-background-color: var(--color-warning-hover)}.action-item.action-item--success[data-v-29452b76]{--open-background-color: var(--color-success-hover)}.action-item.action-item--tertiary-no-background[data-v-29452b76]{--open-background-color: transparent}.action-item.action-item--open .action-item__menutoggle[data-v-29452b76]{background-color:var(--open-background-color)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,+BACC,YAAA,CACA,kBAAA,CAGA,sCACC,gBAAA,CAIF,8BACC,gFAAA,CACA,iBAAA,CACA,oBAAA,CAEA,mDACC,2DAAA,CAGD,qDACC,iEAAA,CAGD,iDACC,iDAAA,CAGD,mDACC,mDAAA,CAGD,mDACC,mDAAA,CAGD,kEACC,oCAAA,CAGD,yEACC,6CAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// Inline buttons\n.action-items {\n\tdisplay: flex;\n\talign-items: center;\n\n\t// Spacing between buttons\n\t& > button {\n\t\tmargin-right: math.div($icon-margin, 2);\n\t}\n}\n\n.action-item {\n\t--open-background-color: var(--color-background-hover, $action-background-hover);\n\tposition: relative;\n\tdisplay: inline-block;\n\n\t&.action-item--primary {\n\t\t--open-background-color: var(--color-primary-element-hover);\n\t}\n\n\t&.action-item--secondary {\n\t\t--open-background-color: var(--color-primary-element-light-hover);\n\t}\n\n\t&.action-item--error {\n\t\t--open-background-color: var(--color-error-hover);\n\t}\n\n\t&.action-item--warning {\n\t\t--open-background-color: var(--color-warning-hover);\n\t}\n\n\t&.action-item--success {\n\t\t--open-background-color: var(--color-success-hover);\n\t}\n\n\t&.action-item--tertiary-no-background {\n\t\t--open-background-color: transparent;\n\t}\n\n\t&.action-item--open .action-item__menutoggle {\n\t\tbackground-color: var(--open-background-color);\n\t}\n}\n"],sourceRoot:""}]);const s=r},4946:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper{border-radius:var(--border-radius-large);overflow:hidden}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper .v-popper__inner{border-radius:var(--border-radius-large);padding:4px;max-height:calc(50vh - 16px);overflow:auto}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCJD,kFACC,wCAAA,CACA,eAAA,CAEA,mGACC,wCAAA,CACA,WAAA,CACA,4BAAA,CACA,aAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// We overwrote the popover base class, so we can style\n// the popover__inner for actions only.\n.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper {\n\tborder-radius: var(--border-radius-large);\n\toverflow:hidden;\n\n\t.v-popper__inner {\n\t\tborder-radius: var(--border-radius-large);\n\t\tpadding: 4px;\n\t\tmax-height: calc(50vh - 16px);\n\t\toverflow: auto;\n\t}\n}\n"],sourceRoot:""}]);const s=r},8066:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon[data-v-4daa022a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-crumb[data-v-4daa022a]{background-image:none;display:inline-flex;height:44px;padding:0}.vue-crumb[data-v-4daa022a]:last-child{max-width:210px;font-weight:bold}.vue-crumb:last-child .vue-crumb__separator[data-v-4daa022a]{display:none}.vue-crumb>a[data-v-4daa022a]:hover,.vue-crumb>a[data-v-4daa022a]:focus{background-color:var(--color-background-dark);color:var(--color-main-text)}.vue-crumb--hidden[data-v-4daa022a]{display:none}.vue-crumb.vue-crumb--hovered>a[data-v-4daa022a]{background-color:var(--color-background-dark);color:var(--color-main-text)}.vue-crumb__separator[data-v-4daa022a]{padding:0;color:var(--color-text-maxcontrast)}.vue-crumb>a[data-v-4daa022a]{overflow:hidden;color:var(--color-text-maxcontrast);padding:12px;min-width:44px;max-width:100%;border-radius:var(--border-radius-pill);align-items:center;display:inline-flex;justify-content:center}.vue-crumb>a>span[data-v-4daa022a]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item{max-width:100%}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item .button-vue{padding:0 4px 0 16px}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item .button-vue__wrapper{flex-direction:row-reverse}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item.action-item--open .action-item__menutoggle{background-color:var(--color-background-dark);color:var(--color-main-text)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcBreadcrumb/NcBreadcrumb.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,4BACC,qBAAA,CACA,mBAAA,CACA,WCmBgB,CDlBhB,SAAA,CAEA,uCACC,eAAA,CACA,gBAAA,CAGA,6DACC,YAAA,CAKF,wEAEC,6CAAA,CACA,4BAAA,CAGD,oCACC,YAAA,CAGD,iDACC,6CAAA,CACA,4BAAA,CAGD,uCACC,SAAA,CACA,mCAAA,CAGD,8BACC,eAAA,CACA,mCAAA,CACA,YAAA,CACA,cCnBe,CDoBf,cAAA,CACA,uCAAA,CACA,kBAAA,CACA,mBAAA,CACA,sBAAA,CAEA,mCACC,eAAA,CACA,sBAAA,CACA,kBAAA,CAMF,wDAEC,cAAA,CAEA,oEACC,oBAAA,CAEA,6EACC,0BAAA,CAKF,mGACC,6CAAA,CACA,4BAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.vue-crumb {\n\tbackground-image: none;\n\tdisplay: inline-flex;\n\theight: $clickable-area;\n\tpadding: 0;\n\n\t&:last-child {\n\t\tmax-width: 210px;\n\t\tfont-weight: bold;\n\n\t\t// Don't show breadcrumb separator for last crumb\n\t\t.vue-crumb__separator {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t// Hover and focus effect for crumbs\n\t& > a:hover,\n\t& > a:focus {\n\t\tbackground-color: var(--color-background-dark);\n\t\tcolor: var(--color-main-text);\n\t}\n\n\t&--hidden {\n\t\tdisplay: none;\n\t}\n\n\t&#{&}--hovered > a {\n\t\tbackground-color: var(--color-background-dark);\n\t\tcolor: var(--color-main-text);\n\t}\n\n\t&__separator {\n\t\tpadding: 0;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\t> a {\n\t\toverflow: hidden;\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tpadding: 12px;\n\t\tmin-width: $clickable-area;\n\t\tmax-width: 100%;\n\t\tborder-radius: var(--border-radius-pill);\n\t\talign-items: center;\n\t\tdisplay: inline-flex;\n\t\tjustify-content: center;\n\n\t\t> span {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n\n\t// Adjust action item appearance for crumbs with actions\n\t// to match other crumbs\n\t&:not(.dropdown) :deep(.action-item) {\n\t\t// Adjustments necessary to correctly shrink on small screens\n\t\tmax-width: 100%;\n\n\t\t.button-vue {\n\t\t\tpadding: 0 4px 0 16px;\n\n\t\t\t&__wrapper {\n\t\t\t\tflex-direction: row-reverse;\n\t\t\t}\n\t\t}\n\n\t\t// Adjust the background of the last crumb when the action is open\n\t\t&.action-item--open .action-item__menutoggle {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tcolor: var(--color-main-text);\n\t\t}\n\t}\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=r},7196:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon[data-v-4d05be2c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue[data-v-4d05be2c]{position:relative;width:fit-content;overflow:hidden;border:0;padding:0;font-size:var(--default-font-size);font-weight:bold;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:22px;transition-property:color,border-color,background-color;transition-duration:.1s;transition-timing-function:linear;color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue *[data-v-4d05be2c],.button-vue span[data-v-4d05be2c]{cursor:pointer}.button-vue[data-v-4d05be2c]:focus{outline:none}.button-vue[data-v-4d05be2c]:disabled{cursor:default;opacity:.5;filter:saturate(0.7)}.button-vue:disabled *[data-v-4d05be2c]{cursor:default}.button-vue[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-light-hover)}.button-vue[data-v-4d05be2c]:active{background-color:var(--color-primary-element-light)}.button-vue__wrapper[data-v-4d05be2c]{display:inline-flex;align-items:center;justify-content:center;width:100%}.button-vue__icon[data-v-4d05be2c]{height:44px;width:44px;min-height:44px;min-width:44px;display:flex;justify-content:center;align-items:center}.button-vue__text[data-v-4d05be2c]{font-weight:bold;margin-bottom:1px;padding:2px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.button-vue--icon-only[data-v-4d05be2c]{width:44px !important}.button-vue--text-only[data-v-4d05be2c]{padding:0 12px}.button-vue--text-only .button-vue__text[data-v-4d05be2c]{margin-left:4px;margin-right:4px}.button-vue--icon-and-text[data-v-4d05be2c]{padding:0 16px 0 4px}.button-vue--wide[data-v-4d05be2c]{width:100%}.button-vue[data-v-4d05be2c]:focus-visible{outline:2px solid var(--color-main-text) !important}.button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{outline:2px solid var(--color-primary-element-text);border-radius:var(--border-radius);background-color:rgba(0,0,0,0)}.button-vue--vue-primary[data-v-4d05be2c]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.button-vue--vue-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-hover)}.button-vue--vue-primary[data-v-4d05be2c]:active{background-color:var(--color-primary-element)}.button-vue--vue-secondary[data-v-4d05be2c]{color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue--vue-secondary[data-v-4d05be2c]:hover:not(:disabled){color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light-hover)}.button-vue--vue-tertiary[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color);background-color:var(--color-background-hover)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{color:var(--color-primary-element-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-success[data-v-4d05be2c]{background-color:var(--color-success);color:#fff}.button-vue--vue-success[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-success-hover)}.button-vue--vue-success[data-v-4d05be2c]:active{background-color:var(--color-success)}.button-vue--vue-warning[data-v-4d05be2c]{background-color:var(--color-warning);color:#fff}.button-vue--vue-warning[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-warning-hover)}.button-vue--vue-warning[data-v-4d05be2c]:active{background-color:var(--color-warning)}.button-vue--vue-error[data-v-4d05be2c]{background-color:var(--color-error);color:#fff}.button-vue--vue-error[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-error-hover)}.button-vue--vue-error[data-v-4d05be2c]:active{background-color:var(--color-error)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcButton/NcButton.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,QAAA,CACA,SAAA,CACA,kCAAA,CACA,gBAAA,CACA,eCcgB,CDbhB,cCagB,CDZhB,YAAA,CACA,kBAAA,CACA,sBAAA,CAGA,cAAA,CAKA,kBAAA,CACA,uDAAA,CACA,uBAAA,CACA,iCAAA,CAkBA,6CAAA,CACA,mDAAA,CA1BA,iEAEC,cAAA,CAQD,mCACC,YAAA,CAGD,sCACC,cAAA,CAIA,UCIiB,CDFjB,oBAAA,CALA,wCACC,cAAA,CAUF,kDACC,yDAAA,CAKD,oCACC,mDAAA,CAGD,sCACC,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAGD,mCACC,WCvCe,CDwCf,UCxCe,CDyCf,eCzCe,CD0Cf,cC1Ce,CD2Cf,YAAA,CACA,sBAAA,CACA,kBAAA,CAGD,mCACC,gBAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CAID,wCACC,qBAAA,CAID,wCACC,cAAA,CACA,0DACC,eAAA,CACA,gBAAA,CAKF,4CACC,oBAAA,CAID,mCACC,UAAA,CAGD,2CACC,mDAAA,CACA,+EACC,mDAAA,CACA,kCAAA,CACA,8BAAA,CAOF,0CACC,6CAAA,CACA,uCAAA,CACA,+DACC,mDAAA,CAID,iDACC,6CAAA,CAKF,4CACC,6CAAA,CACA,mDAAA,CACA,iEACC,6CAAA,CACA,yDAAA,CAKF,2CACC,4BAAA,CACA,8BAAA,CACA,gEACC,6BAAA,CACA,8CAAA,CAKF,yDACC,4BAAA,CACA,8BAAA,CACA,8EACC,8BAAA,CAKF,sDACC,uCAAA,CACA,8BAAA,CAEA,2EACC,8BAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,wCACC,mCAAA,CACA,UAAA,CACA,6DACC,yCAAA,CAID,+CACC,mCAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.button-vue {\n\tposition: relative;\n\twidth: fit-content;\n\toverflow: hidden;\n\tborder: 0;\n\tpadding: 0;\n\tfont-size: var(--default-font-size);\n\tfont-weight: bold;\n\tmin-height: $clickable-area;\n\tmin-width: $clickable-area;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t// Cursor pointer on element and all children\n\tcursor: pointer;\n\t& *,\n\tspan {\n\t\tcursor: pointer;\n\t}\n\tborder-radius: math.div($clickable-area, 2);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: 0.1s;\n\ttransition-timing-function: linear;\n\n\t// No outline feedback for focus. Handled with a toggled class in js (see data)\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t\t& * {\n\t\t\tcursor: default;\n\t\t}\n\t\topacity: $opacity_disabled;\n\t\t// Gives a wash out effect\n\t\tfilter: saturate($opacity_normal);\n\t}\n\n\t// Default button type\n\tcolor: var(--color-primary-element-light-text);\n\tbackground-color: var(--color-primary-element-light);\n\t&:hover:not(:disabled) {\n\t\tbackground-color: var(--color-primary-element-light-hover);\n\t}\n\n\t// Back to the default color for this button when active\n\t// TODO: add ripple effect\n\t&:active {\n\t\tbackground-color: var(--color-primary-element-light);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t}\n\n\t&__icon {\n\t\theight: $clickable-area;\n\t\twidth: $clickable-area;\n\t\tmin-height: $clickable-area;\n\t\tmin-width: $clickable-area;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n\n\t&__text {\n\t\tfont-weight: bold;\n\t\tmargin-bottom: 1px;\n\t\tpadding: 2px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t// Icon-only button\n\t&--icon-only {\n\t\twidth: $clickable-area !important;\n\t}\n\n\t// Text-only button\n\t&--text-only {\n\t\tpadding: 0 12px;\n\t\t& .button-vue__text {\n\t\t\tmargin-left: 4px;\n\t\t\tmargin-right: 4px;\n\t\t}\n\t}\n\n\t// Icon and text button\n\t&--icon-and-text {\n\t\tpadding: 0 16px 0 4px;\n\t}\n\n\t// Wide button spans the whole width of the container\n\t&--wide {\n\t\twidth: 100%;\n\t}\n\n\t&:focus-visible {\n\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t&.button-vue--vue-tertiary-on-primary {\n\t\t\toutline: 2px solid var(--color-primary-element-text);\n\t\t\tborder-radius: var(--border-radius);\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Button types\n\n\t// Primary\n\t&--vue-primary {\n\t\tbackground-color: var(--color-primary-element);\n\t\tcolor: var(--color-primary-element-text);\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t}\n\t}\n\n\t// Secondary\n\t&--vue-secondary {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-light);\n\t\t&:hover:not(:disabled) {\n\t\t\tcolor: var(--color-primary-element-light-text);\n\t\t\tbackground-color: var(--color-primary-element-light-hover);\n\t\t}\n\t}\n\n\t// Tertiary\n\t&--vue-tertiary {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color);\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Tertiary, no background\n\t&--vue-tertiary-no-background {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Tertiary on primary color (like the header)\n\t&--vue-tertiary-on-primary {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: transparent;\n\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Success\n\t&--vue-success {\n\t\tbackground-color: var(--color-success);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-success-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// : add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t}\n\n\t// Warning\n\t&--vue-warning {\n\t\tbackground-color: var(--color-warning);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-warning-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-warning);\n\t\t}\n\t}\n\n\t// Error\n\t&--vue-error {\n\t\tbackground-color: var(--color-error);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-error-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=r},1625:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),i=a.n(o),n=a(3645),r=a.n(n)()(i());r.push([e.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.resize-observer{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:rgba(0,0,0,0);pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper--theme-dropdown.v-popper__popper{z-index:100000;top:0;left:0;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-dropdown.v-popper__popper .v-popper__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius-large);overflow:hidden;background:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{left:-10px;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity var(--animation-quick);opacity:1}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcPopover/NcPopover.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,iBACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,aAAA,CACA,eAAA,CACA,SAAA,CAGD,wBACC,aAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,mBAAA,CACA,UAAA,CAMA,2CACC,cAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CAEA,sDAAA,CAEA,4DACC,SAAA,CACA,4BAAA,CACA,wCAAA,CACA,eAAA,CACA,uCAAA,CAGD,sEACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBA1BW,CA6BZ,kGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAGD,qGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAGD,oGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAGD,mGACC,WAAA,CACA,oBAAA,CACA,8CAAA,CAGD,6DACC,iBAAA,CACA,2EAAA,CACA,SAAA,CAGD,8DACC,kBAAA,CACA,yCAAA,CACA,SAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.resize-observer {\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\tz-index:-1;\n\twidth:100%;\n\theight:100%;\n\tborder:none;\n\tbackground-color:transparent;\n\tpointer-events:none;\n\tdisplay:block;\n\toverflow:hidden;\n\topacity:0\n}\n\n.resize-observer object {\n\tdisplay:block;\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\theight:100%;\n\twidth:100%;\n\toverflow:hidden;\n\tpointer-events:none;\n\tz-index:-1\n}\n\n$arrow-width: 10px;\n\n.v-popper--theme-dropdown {\n\t&.v-popper__popper {\n\t\tz-index: 100000;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tdisplay: block !important;\n\n\t\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t\t.v-popper__inner {\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-main-text);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t\toverflow: hidden;\n\t\t\tbackground: var(--color-main-background);\n\t\t}\n\n\t\t.v-popper__arrow-container {\n\t\t\tposition: absolute;\n\t\t\tz-index: 1;\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\tborder-style: solid;\n\t\t\tborder-color: transparent;\n\t\t\tborder-width: $arrow-width;\n\t\t}\n\n\t\t&[data-popper-placement^='top'] .v-popper__arrow-container {\n\t\t\tbottom: -$arrow-width;\n\t\t\tborder-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\n\t\t\ttop: -$arrow-width;\n\t\t\tborder-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='right'] .v-popper__arrow-container {\n\t\t\tleft: -$arrow-width;\n\t\t\tborder-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='left'] .v-popper__arrow-container {\n\t\t\tright: -$arrow-width;\n\t\t\tborder-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\n\t\t}\n\n\t\t&[aria-hidden='true'] {\n\t\t\tvisibility: hidden;\n\t\t\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&[aria-hidden='false'] {\n\t\t\tvisibility: visible;\n\t\t\ttransition: opacity var(--animation-quick);\n\t\t\topacity: 1;\n\t\t}\n\t}\n}\n\n"],sourceRoot:""}]);const s=r},3645:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var a="",o=void 0!==t[5];return t[4]&&(a+="@supports (".concat(t[4],") {")),t[2]&&(a+="@media ".concat(t[2]," {")),o&&(a+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),a+=e(t),o&&(a+="}"),t[2]&&(a+="}"),t[4]&&(a+="}"),a})).join("")},t.i=function(e,a,o,i,n){"string"==typeof e&&(e=[[null,e,void 0]]);var r={};if(o)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(r[l]=!0)}for(var c=0;c<e.length;c++){var u=[].concat(e[c]);o&&r[u[0]]||(void 0!==n&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=n),a&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=a):u[2]=a),i&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=i):u[4]="".concat(i)),t.push(u))}},t}},7537:e=>{"use strict";e.exports=function(e){var t=e[1],a=e[3];if(!a)return t;if("function"==typeof btoa){var o=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),i="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(o),n="/*# ".concat(i," */");return[t].concat([n]).join("\n")}return[t].join("\n")}},3379:e=>{"use strict";var t=[];function a(e){for(var a=-1,o=0;o<t.length;o++)if(t[o].identifier===e){a=o;break}return a}function o(e,o){for(var n={},r=[],s=0;s<e.length;s++){var l=e[s],c=o.base?l[0]+o.base:l[0],u=n[c]||0,d="".concat(c," ").concat(u);n[c]=u+1;var m=a(d),p={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==m)t[m].references++,t[m].updater(p);else{var g=i(p,o);o.byIndex=s,t.splice(s,0,{identifier:d,updater:g,references:1})}r.push(d)}return r}function i(e,t){var a=t.domAPI(t);a.update(e);return function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;a.update(e=t)}else a.remove()}}e.exports=function(e,i){var n=o(e=e||[],i=i||{});return function(e){e=e||[];for(var r=0;r<n.length;r++){var s=a(n[r]);t[s].references--}for(var l=o(e,i),c=0;c<n.length;c++){var u=a(n[c]);0===t[u].references&&(t[u].updater(),t.splice(u,1))}n=l}}},569:e=>{"use strict";var t={};e.exports=function(e,a){var o=function(e){if(void 0===t[e]){var a=document.querySelector(e);if(window.HTMLIFrameElement&&a instanceof window.HTMLIFrameElement)try{a=a.contentDocument.head}catch(e){a=null}t[e]=a}return t[e]}(e);if(!o)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");o.appendChild(a)}},9216:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},3565:(e,t,a)=>{"use strict";e.exports=function(e){var t=a.nc;t&&e.setAttribute("nonce",t)}},7795:e=>{"use strict";e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(a){!function(e,t,a){var o="";a.supports&&(o+="@supports (".concat(a.supports,") {")),a.media&&(o+="@media ".concat(a.media," {"));var i=void 0!==a.layer;i&&(o+="@layer".concat(a.layer.length>0?" ".concat(a.layer):""," {")),o+=a.css,i&&(o+="}"),a.media&&(o+="}"),a.supports&&(o+="}");var n=a.sourceMap;n&&"undefined"!=typeof btoa&&(o+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(n))))," */")),t.styleTagTransform(o,e,t.options)}(t,e,a)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},4589:e=>{"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},5727:()=>{},6591:()=>{},2102:()=>{},2405:()=>{},1900:(e,t,a)=>{"use strict";function o(e,t,a,o,i,n,r,s){var l,c="function"==typeof e?e.options:e;if(t&&(c.render=t,c.staticRenderFns=a,c._compiled=!0),o&&(c.functional=!0),n&&(c._scopeId="data-v-"+n),r?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},c._ssrRegister=l):i&&(l=s?function(){i.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:i),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(e,t){return l.call(t),u(e,t)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:e,options:c}}a.d(t,{Z:()=>o})},7931:e=>{"use strict";e.exports=__webpack_require__(/*! @nextcloud/l10n/gettext */ "./node_modules/@nextcloud/l10n/dist/gettext.js")},9454:e=>{"use strict";e.exports=__webpack_require__(/*! floating-vue */ "./node_modules/floating-vue/dist/floating-vue.es.js")},4505:e=>{"use strict";e.exports=__webpack_require__(/*! focus-trap */ "./node_modules/focus-trap/dist/focus-trap.esm.js")},2734:e=>{"use strict";e.exports=__webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js")},9044:e=>{"use strict";e.exports=__webpack_require__(/*! vue-material-design-icons/ChevronRight.vue */ "./node_modules/vue-material-design-icons/ChevronRight.vue")},1441:e=>{"use strict";e.exports=__webpack_require__(/*! vue-material-design-icons/DotsHorizontal.vue */ "./node_modules/vue-material-design-icons/DotsHorizontal.vue")}},t={};function a(o){var i=t[o];if(void 0!==i)return i.exports;var n=t[o]={id:o,exports:{}};return e[o](n,n.exports,a),n.exports}a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var o in t)a.o(t,o)&&!a.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.nc=void 0;var o={};return(()=>{"use strict";a.r(o),a.d(o,{default:()=>j});var e=a(8250),t=a(1205),i=a(9044),n=a.n(i);const r={name:"NcBreadcrumb",components:{NcActions:e.default,ChevronRight:n()},props:{name:{type:String,required:!0},title:{type:String,default:null},to:{type:[String,Object],default:void 0},exact:{type:Boolean,default:!1},href:{type:String,default:void 0},icon:{type:String,default:""},disableDrop:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},open:{type:Boolean,default:!1}},emits:["update:open","dropped"],data:()=>({hovering:!1,crumbId:"crumb-id-".concat((0,t.Z)())}),computed:{tag(){return this.to?"router-link":"a"},linkAttributes(){return this.to?{to:this.to,exact:this.exact,...this.$attrs}:{href:this.href,...this.$attrs}}},methods:{onOpenChange(e){this.$emit("update:open",e)},dropped(e){return this.disableDrop||(this.$emit("dropped",e,this.to||this.href),this.$parent.$emit("dropped",e,this.to||this.href),this.hovering=!1),!1},dragEnter(e){this.disableDrop||(this.hovering=!0)},dragLeave(e){this.disableDrop||e.target.contains(e.relatedTarget)||this.$refs.crumb.contains(e.relatedTarget)||(this.hovering=!1)}}};var s=a(3379),l=a.n(s),c=a(7795),u=a.n(c),d=a(569),m=a.n(d),p=a(3565),g=a.n(p),v=a(9216),h=a.n(v),A=a(4589),b=a.n(A),C=a(8066),f={};f.styleTagTransform=b(),f.setAttributes=g(),f.insert=m().bind(null,"head"),f.domAPI=u(),f.insertStyleElement=h();l()(C.Z,f);C.Z&&C.Z.locals&&C.Z.locals;var y=a(1900),k=a(6591),S=a.n(k),w=(0,y.Z)(r,(function(){var e=this,t=e._self._c;return t("li",e._b({ref:"crumb",staticClass:"vue-crumb",class:{"vue-crumb--hovered":e.hovering},attrs:{draggable:"false"},on:{dragstart:function(e){return e.preventDefault(),(()=>{}).apply(null,arguments)},drop:function(t){return t.preventDefault(),e.dropped.apply(null,arguments)},dragover:function(e){return e.preventDefault(),(()=>{}).apply(null,arguments)},dragenter:e.dragEnter,dragleave:e.dragLeave}},"li",e._d({},[e.crumbId,""])),[!e.name&&!e.icon||e.$slots.default?e._e():t(e.tag,e._g(e._b({tag:"component",attrs:{title:e.title}},"component",e.linkAttributes,!1),e.$listeners),[e._t("icon",(function(){return[e.icon?t("span",{staticClass:"icon",class:e.icon}):t("span",[e._v(e._s(e.name))])]}))],2),e._v(" "),e.$slots.default?t("NcActions",{ref:"actions",attrs:{type:"tertiary","force-menu":e.forceMenu,open:e.open,"menu-name":e.name,title:e.title,"force-name":!0,container:".vue-crumb[".concat(e.crumbId,"]")},on:{"update:open":e.onOpenChange},scopedSlots:e._u([{key:"icon",fn:function(){return[e._t("menu-icon")]},proxy:!0}],null,!0)},[e._v(" "),e._t("default")],2):e._e(),e._v(" "),t("ChevronRight",{staticClass:"vue-crumb__separator",attrs:{size:20}})],1)}),[],!1,null,"4daa022a",null);"function"==typeof S()&&S()(w);const j=w.exports})(),o})()));
+//# sourceMappingURL=NcBreadcrumb.js.map
+
+/***/ }),
+
+/***/ "./node_modules/@nextcloud/vue/dist/Components/NcBreadcrumbs.js":
+/*!**********************************************************************!*\
+ !*** ./node_modules/@nextcloud/vue/dist/Components/NcBreadcrumbs.js ***!
+ \**********************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+/*! For license information please see NcBreadcrumbs.js.LICENSE.txt */
+!function(e,t){ true?module.exports=t():0}(self,(()=>(()=>{var e={6969:(e,t,a)=>{"use strict";a.d(t,{default:()=>k});const o={name:"NcActionLink",mixins:[a(1139).Z],props:{href:{type:String,default:"#",required:!0,validator:e=>{try{return new URL(e)}catch(t){return e.startsWith("#")||e.startsWith("/")}}},download:{type:String,default:null},target:{type:String,default:"_self",validator:e=>e&&(!e.startsWith("_")||["_blank","_self","_parent","_top"].indexOf(e)>-1)},title:{type:String,default:null},ariaHidden:{type:Boolean,default:null}}};var n=a(3379),i=a.n(n),r=a(7795),s=a.n(r),l=a(569),c=a.n(l),d=a(3565),u=a.n(d),p=a(9216),m=a.n(p),A=a(4589),g=a.n(A),h=a(3490),v={};v.styleTagTransform=g(),v.setAttributes=u(),v.insert=c().bind(null,"head"),v.domAPI=s(),v.insertStyleElement=m();i()(h.Z,v);h.Z&&h.Z.locals&&h.Z.locals;var b=a(1900),C=a(9158),f=a.n(C),y=(0,b.Z)(o,(function(){var e=this,t=e._self._c;return t("li",{staticClass:"action"},[t("a",{staticClass:"action-link focusable",attrs:{download:e.download,href:e.href,"aria-label":e.ariaLabel,target:e.target,title:e.title,rel:"nofollow noreferrer noopener"},on:{click:e.onClick}},[e._t("icon",(function(){return[t("span",{staticClass:"action-link__icon",class:[e.isIconUrl?"action-link__icon--url":e.icon],style:{backgroundImage:e.isIconUrl?"url(".concat(e.icon,")"):null},attrs:{"aria-hidden":e.ariaHidden}})]})),e._v(" "),e.name?t("p",[t("strong",{staticClass:"action-link__name"},[e._v("\n\t\t\t\t"+e._s(e.name)+"\n\t\t\t")]),e._v(" "),t("br"),e._v(" "),t("span",{staticClass:"action-link__longtext",domProps:{textContent:e._s(e.text)}})]):e.isLongText?t("p",{staticClass:"action-link__longtext",domProps:{textContent:e._s(e.text)}}):t("span",{staticClass:"action-link__text"},[e._v(e._s(e.text))]),e._v(" "),e._e()],2)])}),[],!1,null,"63ee0e66",null);"function"==typeof f()&&f()(y);const k=y.exports},968:(e,t,a)=>{"use strict";a.d(t,{default:()=>b});const o={name:"NcActionRouter",mixins:[a(1139).Z],props:{to:{type:[String,Object],default:"",required:!0},exact:{type:Boolean,default:!1}}};var n=a(3379),i=a.n(n),r=a(7795),s=a.n(r),l=a(569),c=a.n(l),d=a(3565),u=a.n(d),p=a(9216),m=a.n(p),A=a(4589),g=a.n(A),h=a(8541),v={};v.styleTagTransform=g(),v.setAttributes=u(),v.insert=c().bind(null,"head"),v.domAPI=s(),v.insertStyleElement=m();i()(h.Z,v);h.Z&&h.Z.locals&&h.Z.locals;const b=(0,a(1900).Z)(o,(function(){var e=this,t=e._self._c;return t("li",{staticClass:"action"},[t("router-link",{staticClass:"action-router focusable",attrs:{to:e.to,"aria-label":e.ariaLabel,exact:e.exact,title:e.title,rel:"nofollow noreferrer noopener"},nativeOn:{click:function(t){return e.onClick.apply(null,arguments)}}},[e._t("icon",(function(){return[t("span",{staticClass:"action-router__icon",class:[e.isIconUrl?"action-router__icon--url":e.icon],style:{backgroundImage:e.isIconUrl?"url(".concat(e.icon,")"):null}})]})),e._v(" "),e.name?t("p",[t("strong",{staticClass:"action-router__name"},[e._v("\n\t\t\t\t"+e._s(e.name)+"\n\t\t\t")]),e._v(" "),t("br"),e._v(" "),t("span",{staticClass:"action-router__longtext",domProps:{textContent:e._s(e.text)}})]):e.isLongText?t("p",{staticClass:"action-router__longtext",domProps:{textContent:e._s(e.text)}}):t("span",{staticClass:"action-router__text"},[e._v(e._s(e.text))]),e._v(" "),e._e()],2)],1)}),[],!1,null,"74ff8099",null).exports},8250:(e,t,a)=>{"use strict";a.d(t,{default:()=>T});var o=a(4462),n=a(2297),i=a(1205),r=a(932),s=a(2734),l=a.n(s),c=a(1441),d=a.n(c);const u=".focusable",p={name:"NcActions",components:{NcButton:o.default,DotsHorizontal:d(),NcPopover:n.default},props:{open:{type:Boolean,default:!1},manualOpen:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},forceName:{type:Boolean,default:!1},menuName:{type:String,default:null},primary:{type:Boolean,default:!1},type:{type:String,validator:e=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(e),default:null},defaultIcon:{type:String,default:""},ariaLabel:{type:String,default:(0,r.t)("Actions")},ariaHidden:{type:Boolean,default:null},placement:{type:String,default:"bottom"},boundariesElement:{type:Element,default:()=>document.querySelector("body")},container:{type:[String,Object,Element,Boolean],default:"body"},disabled:{type:Boolean,default:!1},inline:{type:Number,default:0}},emits:["open","update:open","close","focus","blur"],data(){return{opened:this.open,focusIndex:0,randomId:"menu-".concat((0,i.Z)())}},computed:{triggerBtnType(){return this.type||(this.primary?"primary":this.menuName?"secondary":"tertiary")}},watch:{open(e){e!==this.opened&&(this.opened=e)}},methods:{isValidSingleAction(e){var t,a,o,n,i;const r=null!==(t=null==e||null===(a=e.componentOptions)||void 0===a||null===(o=a.Ctor)||void 0===o||null===(n=o.extendOptions)||void 0===n?void 0:n.name)&&void 0!==t?t:null==e||null===(i=e.componentOptions)||void 0===i?void 0:i.tag;return["NcActionButton","NcActionLink","NcActionRouter"].includes(r)},openMenu(e){this.opened||(this.opened=!0,this.$emit("update:open",!0),this.$emit("open"))},closeMenu(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.opened&&(this.opened=!1,this.$refs.popover.clearFocusTrap({returnFocus:e}),this.$emit("update:open",!1),this.$emit("close"),this.focusIndex=0,this.$refs.menuButton.$el.focus())},onOpen(e){this.$nextTick((()=>{this.focusFirstAction(e)}))},onMouseFocusAction(e){if(document.activeElement===e.target)return;const t=e.target.closest("li");if(t){const e=t.querySelector(u);if(e){const t=[...this.$refs.menu.querySelectorAll(u)].indexOf(e);t>-1&&(this.focusIndex=t,this.focusAction())}}},onKeydown(e){(38===e.keyCode||9===e.keyCode&&e.shiftKey)&&this.focusPreviousAction(e),(40===e.keyCode||9===e.keyCode&&!e.shiftKey)&&this.focusNextAction(e),33===e.keyCode&&this.focusFirstAction(e),34===e.keyCode&&this.focusLastAction(e),27===e.keyCode&&(this.closeMenu(),e.preventDefault())},removeCurrentActive(){const e=this.$refs.menu.querySelector("li.active");e&&e.classList.remove("active")},focusAction(){const e=this.$refs.menu.querySelectorAll(u)[this.focusIndex];if(e){this.removeCurrentActive();const t=e.closest("li.action");e.focus(),t&&t.classList.add("active")}},focusPreviousAction(e){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(e),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction(e){if(this.opened){const t=this.$refs.menu.querySelectorAll(u).length-1;this.focusIndex===t?this.closeMenu():(this.preventIfEvent(e),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction(e){this.opened&&(this.preventIfEvent(e),this.focusIndex=0,this.focusAction())},focusLastAction(e){this.opened&&(this.preventIfEvent(e),this.focusIndex=this.$refs.menu.querySelectorAll(u).length-1,this.focusAction())},preventIfEvent(e){e&&(e.preventDefault(),e.stopPropagation())},onFocus(e){this.$emit("focus",e)},onBlur(e){this.$emit("blur",e)}},render(e){const t=(this.$slots.default||[]).filter((e=>{var t,a,o,n;return(null==e||null===(t=e.componentOptions)||void 0===t?void 0:t.tag)||(null==e||null===(a=e.componentOptions)||void 0===a||null===(o=a.Ctor)||void 0===o||null===(n=o.extendOptions)||void 0===n?void 0:n.name)})),a=t.every((e=>{var t,a,o,n,i,r,s,l;return"NcActionLink"===(null!==(t=null==e||null===(a=e.componentOptions)||void 0===a||null===(o=a.Ctor)||void 0===o||null===(n=o.extendOptions)||void 0===n?void 0:n.name)&&void 0!==t?t:null==e||null===(i=e.componentOptions)||void 0===i?void 0:i.tag)&&(null==e||null===(r=e.componentOptions)||void 0===r||null===(s=r.propsData)||void 0===s||null===(l=s.href)||void 0===l?void 0:l.startsWith(window.location.origin))}));let o=t.filter(this.isValidSingleAction);if(this.forceMenu&&o.length>0&&this.inline>0&&(l().util.warn("Specifying forceMenu will ignore any inline actions rendering."),o=[]),0===t.length)return;const n=t=>{var a,o,n,i,r,s,l,c,d,u,p,m,A,g,h,v,b,C,f,y,k,w;const S=(null==t||null===(a=t.data)||void 0===a||null===(o=a.scopedSlots)||void 0===o||null===(n=o.icon())||void 0===n?void 0:n[0])||e("span",{class:["icon",null==t||null===(i=t.componentOptions)||void 0===i||null===(r=i.propsData)||void 0===r?void 0:r.icon]}),x=null==t||null===(s=t.componentOptions)||void 0===s||null===(l=s.listeners)||void 0===l?void 0:l.click,N=null==t||null===(c=t.componentOptions)||void 0===c||null===(d=c.children)||void 0===d||null===(u=d[0])||void 0===u||null===(p=u.text)||void 0===p||null===(m=p.trim)||void 0===m?void 0:m.call(p),z=(null==t||null===(A=t.componentOptions)||void 0===A||null===(g=A.propsData)||void 0===g?void 0:g.ariaLabel)||N,j=this.forceName?N:"";let P=null==t||null===(h=t.componentOptions)||void 0===h||null===(v=h.propsData)||void 0===v?void 0:v.title;return this.forceName||P||(P=N),e("NcButton",{class:["action-item action-item--single",null==t||null===(b=t.data)||void 0===b?void 0:b.staticClass,null==t||null===(C=t.data)||void 0===C?void 0:C.class],attrs:{"aria-label":z,title:P},ref:null==t||null===(f=t.data)||void 0===f?void 0:f.ref,props:{type:this.type||(j?"secondary":"tertiary"),disabled:this.disabled||(null==t||null===(y=t.componentOptions)||void 0===y||null===(k=y.propsData)||void 0===k?void 0:k.disabled),ariaHidden:this.ariaHidden,...null==t||null===(w=t.componentOptions)||void 0===w?void 0:w.propsData},on:{focus:this.onFocus,blur:this.onBlur,...!!x&&{click:e=>{x&&x(e)}}}},[e("template",{slot:"icon"},[S]),j])},i=t=>{var o,n;const i=(null===(o=this.$slots.icon)||void 0===o?void 0:o[0])||(this.defaultIcon?e("span",{class:["icon",this.defaultIcon]}):e("DotsHorizontal",{props:{size:20}}));return e("NcPopover",{ref:"popover",props:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,popoverBaseClass:"action-item__popper",setReturnFocus:null===(n=this.$refs.menuButton)||void 0===n?void 0:n.$el},attrs:{delay:0,handleResize:!0,shown:this.opened,placement:this.placement,boundary:this.boundariesElement,container:this.container,...this.manualOpen&&{triggers:[]},popoverBaseClass:"action-item__popper"},on:{show:this.openMenu,"after-show":this.onOpen,hide:this.closeMenu}},[e("NcButton",{class:"action-item__menutoggle",props:{type:this.triggerBtnType,disabled:this.disabled,ariaHidden:this.ariaHidden},slot:"trigger",ref:"menuButton",attrs:{"aria-haspopup":a?null:"menu","aria-label":this.ariaLabel,"aria-controls":this.opened?this.randomId:null,"aria-expanded":this.opened.toString()},on:{focus:this.onFocus,blur:this.onBlur}},[e("template",{slot:"icon"},[i]),this.menuName]),e("div",{class:{open:this.opened},attrs:{tabindex:"-1"},on:{keydown:this.onKeydown,mousemove:this.onMouseFocusAction},ref:"menu"},[e("ul",{attrs:{id:this.randomId,tabindex:"-1",role:a?null:"menu"}},[t])])])};if(1===t.length&&1===o.length&&!this.forceMenu)return n(o[0]);if(o.length>0&&this.inline>0){const a=o.slice(0,this.inline),r=t.filter((e=>!a.includes(e)));return e("div",{class:["action-items","action-item--".concat(this.triggerBtnType)]},[...a.map(n),r.length>0?e("div",{class:["action-item",{"action-item--open":this.opened}]},[i(r)]):null])}return e("div",{class:["action-item action-item--default-popover","action-item--".concat(this.triggerBtnType),{"action-item--open":this.opened}]},[i(t)])}};var m=a(3379),A=a.n(m),g=a(7795),h=a.n(g),v=a(569),b=a.n(v),C=a(3565),f=a.n(C),y=a(9216),k=a.n(y),w=a(4589),S=a.n(w),x=a(4825),N={};N.styleTagTransform=S(),N.setAttributes=f(),N.insert=b().bind(null,"head"),N.domAPI=h(),N.insertStyleElement=k();A()(x.Z,N);x.Z&&x.Z.locals&&x.Z.locals;var z=a(4946),j={};j.styleTagTransform=S(),j.setAttributes=f(),j.insert=b().bind(null,"head"),j.domAPI=h(),j.insertStyleElement=k();A()(z.Z,j);z.Z&&z.Z.locals&&z.Z.locals;var P=a(1900),E=a(5727),B=a.n(E),_=(0,P.Z)(p,undefined,undefined,!1,null,"29452b76",null);"function"==typeof B()&&B()(_);const T=_.exports},8407:(e,t,a)=>{"use strict";a.d(t,{default:()=>N});var o=a(8250),n=a(1205),i=a(9044),r=a.n(i);const s={name:"NcBreadcrumb",components:{NcActions:o.default,ChevronRight:r()},props:{name:{type:String,required:!0},title:{type:String,default:null},to:{type:[String,Object],default:void 0},exact:{type:Boolean,default:!1},href:{type:String,default:void 0},icon:{type:String,default:""},disableDrop:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},open:{type:Boolean,default:!1}},emits:["update:open","dropped"],data:()=>({hovering:!1,crumbId:"crumb-id-".concat((0,n.Z)())}),computed:{tag(){return this.to?"router-link":"a"},linkAttributes(){return this.to?{to:this.to,exact:this.exact,...this.$attrs}:{href:this.href,...this.$attrs}}},methods:{onOpenChange(e){this.$emit("update:open",e)},dropped(e){return this.disableDrop||(this.$emit("dropped",e,this.to||this.href),this.$parent.$emit("dropped",e,this.to||this.href),this.hovering=!1),!1},dragEnter(e){this.disableDrop||(this.hovering=!0)},dragLeave(e){this.disableDrop||e.target.contains(e.relatedTarget)||this.$refs.crumb.contains(e.relatedTarget)||(this.hovering=!1)}}};var l=a(3379),c=a.n(l),d=a(7795),u=a.n(d),p=a(569),m=a.n(p),A=a(3565),g=a.n(A),h=a(9216),v=a.n(h),b=a(4589),C=a.n(b),f=a(8066),y={};y.styleTagTransform=C(),y.setAttributes=g(),y.insert=m().bind(null,"head"),y.domAPI=u(),y.insertStyleElement=v();c()(f.Z,y);f.Z&&f.Z.locals&&f.Z.locals;var k=a(1900),w=a(6591),S=a.n(w),x=(0,k.Z)(s,(function(){var e=this,t=e._self._c;return t("li",e._b({ref:"crumb",staticClass:"vue-crumb",class:{"vue-crumb--hovered":e.hovering},attrs:{draggable:"false"},on:{dragstart:function(e){return e.preventDefault(),(()=>{}).apply(null,arguments)},drop:function(t){return t.preventDefault(),e.dropped.apply(null,arguments)},dragover:function(e){return e.preventDefault(),(()=>{}).apply(null,arguments)},dragenter:e.dragEnter,dragleave:e.dragLeave}},"li",e._d({},[e.crumbId,""])),[!e.name&&!e.icon||e.$slots.default?e._e():t(e.tag,e._g(e._b({tag:"component",attrs:{title:e.title}},"component",e.linkAttributes,!1),e.$listeners),[e._t("icon",(function(){return[e.icon?t("span",{staticClass:"icon",class:e.icon}):t("span",[e._v(e._s(e.name))])]}))],2),e._v(" "),e.$slots.default?t("NcActions",{ref:"actions",attrs:{type:"tertiary","force-menu":e.forceMenu,open:e.open,"menu-name":e.name,title:e.title,"force-name":!0,container:".vue-crumb[".concat(e.crumbId,"]")},on:{"update:open":e.onOpenChange},scopedSlots:e._u([{key:"icon",fn:function(){return[e._t("menu-icon")]},proxy:!0}],null,!0)},[e._v(" "),e._t("default")],2):e._e(),e._v(" "),t("ChevronRight",{staticClass:"vue-crumb__separator",attrs:{size:20}})],1)}),[],!1,null,"4daa022a",null);"function"==typeof S()&&S()(x);const N=x.exports},4462:(e,t,a)=>{"use strict";a.d(t,{default:()=>k});const o={name:"NcButton",props:{disabled:{type:Boolean,default:!1},type:{type:String,validator:e=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(e),default:"secondary"},nativeType:{type:String,validator:e=>-1!==["submit","reset","button"].indexOf(e),default:"button"},wide:{type:Boolean,default:!1},ariaLabel:{type:String,default:null},href:{type:String,default:null},to:{type:[String,Object],default:null},exact:{type:Boolean,default:!1},ariaHidden:{type:Boolean,default:null}},render(e){var t,a,o,n,i,r=this;const s=null===(t=this.$slots.default)||void 0===t||null===(a=t[0])||void 0===a||null===(o=a.text)||void 0===o||null===(n=o.trim)||void 0===n?void 0:n.call(o),l=!!s,c=null===(i=this.$slots)||void 0===i?void 0:i.icon;s||this.ariaLabel||console.warn("You need to fill either the text or the ariaLabel props in the button component.",{text:s,ariaLabel:this.ariaLabel},this);const d=function(){let{navigate:t,isActive:a,isExactActive:o}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e(r.to||!r.href?"button":"a",{class:["button-vue",{"button-vue--icon-only":c&&!l,"button-vue--text-only":l&&!c,"button-vue--icon-and-text":c&&l,["button-vue--vue-".concat(r.type)]:r.type,"button-vue--wide":r.wide,active:a,"router-link-exact-active":o}],attrs:{"aria-label":r.ariaLabel,disabled:r.disabled,type:r.href?null:r.nativeType,role:r.href?"button":null,href:!r.to&&r.href?r.href:null,...r.$attrs},on:{...r.$listeners,click:e=>{var a,o;null===(a=r.$listeners)||void 0===a||null===(o=a.click)||void 0===o||o.call(a,e),null==t||t(e)}}},[e("span",{class:"button-vue__wrapper"},[c?e("span",{class:"button-vue__icon",attrs:{"aria-hidden":r.ariaHidden}},[r.$slots.icon]):null,l?e("span",{class:"button-vue__text"},[s]):null])])};return this.to?e("router-link",{props:{custom:!0,to:this.to,exact:this.exact},scopedSlots:{default:d}}):d()}};var n=a(3379),i=a.n(n),r=a(7795),s=a.n(r),l=a(569),c=a.n(l),d=a(3565),u=a.n(d),p=a(9216),m=a.n(p),A=a(4589),g=a.n(A),h=a(7196),v={};v.styleTagTransform=g(),v.setAttributes=u(),v.insert=c().bind(null,"head"),v.domAPI=s(),v.insertStyleElement=m();i()(h.Z,v);h.Z&&h.Z.locals&&h.Z.locals;var b=a(1900),C=a(2102),f=a.n(C),y=(0,b.Z)(o,undefined,undefined,!1,null,"4d05be2c",null);"function"==typeof f()&&f()(y);const k=y.exports},2297:(e,t,a)=>{"use strict";a.d(t,{default:()=>N});var o=a(9454),n=a(4505),i=a(1206);const r={name:"NcPopover",components:{Dropdown:o.Dropdown},inheritAttrs:!1,props:{popoverBaseClass:{type:String,default:""},focusTrap:{type:Boolean,default:!0},setReturnFocus:{default:void 0,type:[HTMLElement,SVGElement,String,Boolean]}},emits:["after-show","after-hide"],beforeDestroy(){this.clearFocusTrap()},methods:{async useFocusTrap(){var e,t;if(await this.$nextTick(),!this.focusTrap)return;const a=null===(e=this.$refs.popover)||void 0===e||null===(t=e.$refs.popperContent)||void 0===t?void 0:t.$el;a&&(this.$focusTrap=(0,n.createFocusTrap)(a,{escapeDeactivates:!1,allowOutsideClick:!0,setReturnFocus:this.setReturnFocus,trapStack:(0,i.L)()}),this.$focusTrap.activate())},clearFocusTrap(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{var t;null===(t=this.$focusTrap)||void 0===t||t.deactivate(e),this.$focusTrap=null}catch(e){console.warn(e)}},afterShow(){this.$nextTick((()=>{this.$emit("after-show"),this.useFocusTrap()}))},afterHide(){this.$emit("after-hide"),this.clearFocusTrap()}}},s=r;var l=a(3379),c=a.n(l),d=a(7795),u=a.n(d),p=a(569),m=a.n(p),A=a(3565),g=a.n(A),h=a(9216),v=a.n(h),b=a(4589),C=a.n(b),f=a(1625),y={};y.styleTagTransform=C(),y.setAttributes=g(),y.insert=m().bind(null,"head"),y.domAPI=u(),y.insertStyleElement=v();c()(f.Z,y);f.Z&&f.Z.locals&&f.Z.locals;var k=a(1900),w=a(2405),S=a.n(w),x=(0,k.Z)(s,(function(){var e=this;return(0,e._self._c)("Dropdown",e._g(e._b({ref:"popover",attrs:{distance:10,"arrow-padding":10,"no-auto-focus":!0,"popper-class":e.popoverBaseClass},on:{"apply-show":e.afterShow,"apply-hide":e.afterHide},scopedSlots:e._u([{key:"popper",fn:function(){return[e._t("default")]},proxy:!0}],null,!0)},"Dropdown",e.$attrs,!1),e.$listeners),[e._t("trigger")],2)}),[],!1,null,null,null);"function"==typeof S()&&S()(x);const N=x.exports},932:(e,t,a)=>{"use strict";a.d(t,{t:()=>r});var o=a(7931);const n=(0,o.getGettextBuilder)().detectLocale();[{locale:"ar",translations:{"{tag} (invisible)":"{tag} (غير مرئي)","{tag} (restricted)":"{tag} (مقيد)",Actions:"الإجراءات",Activities:"النشاطات","Animals & Nature":"الحيوانات والطبيعة","Anything shared with the same group of people will show up here":"أي مادة تمت مشاركتها مع نفس المجموعة من الأشخاص سيتم عرضها هنا","Avatar of {displayName}":"صورة {displayName} الرمزية","Avatar of {displayName}, {status}":"صورة {displayName} الرمزية، {status}","Cancel changes":"إلغاء التغييرات","Change title":"تغيير العنوان",Choose:"إختيار","Clear text":"مسح النص",Close:"أغلق","Close modal":"قفل الشرط","Close navigation":"إغلاق المتصفح","Close sidebar":"قفل الشريط الجانبي","Confirm changes":"تأكيد التغييرات",Custom:"مخصص","Edit item":"تعديل عنصر","Error getting related resources":"خطأ في تحصيل مصادر ذات صلة","External documentation for {title}":"الوثائق الخارجية لـ{title}",Favorite:"مفضلة",Flags:"الأعلام","Food & Drink":"الطعام والشراب","Frequently used":"كثيرا ما تستخدم",Global:"عالمي","Go back to the list":"العودة إلى القائمة","Hide password":"إخفاء كلمة السر","Message limit of {count} characters reached":"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف","More items …":"عناصر أخرى ...",Next:"التالي","No emoji found":"لم يتم العثور على أي رمز تعبيري","No results":"ليس هناك أية نتيجة",Objects:"الأشياء",Open:"فتح",'Open link to "{resourceTitle}"':'فتح رابط إلى "{resourceTitle}"',"Open navigation":"فتح المتصفح","Password is secure":"كلمة السر مُؤمّنة","Pause slideshow":"إيقاف العرض مؤقتًا","People & Body":"الناس والجسم","Pick an emoji":"اختر رمزًا تعبيريًا","Please select a time zone:":"الرجاء تحديد المنطقة الزمنية:",Previous:"السابق","Related resources":"مصادر ذات صلة",Search:"بحث","Search results":"نتائج البحث","Select a tag":"اختر علامة",Settings:"الإعدادات","Settings navigation":"إعدادات المتصفح","Show password":"أعرض كلمة السر","Smileys & Emotion":"الوجوه و الرموز التعبيرية","Start slideshow":"بدء العرض",Submit:"إرسال",Symbols:"الرموز","Travel & Places":"السفر والأماكن","Type to search time zone":"اكتب للبحث عن منطقة زمنية","Unable to search the group":"تعذر البحث في المجموعة","Undo changes":"التراجع عن التغييرات","Write message, @ to mention someone, : for emoji autocompletion …":"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ..."}},{locale:"br",translations:{"{tag} (invisible)":"{tag} (diwelus)","{tag} (restricted)":"{tag} (bevennet)",Actions:"Oberioù",Activities:"Oberiantizoù","Animals & Nature":"Loened & Natur",Choose:"Dibab",Close:"Serriñ",Custom:"Personelañ",Flags:"Bannieloù","Food & Drink":"Boued & Evajoù","Frequently used":"Implijet alies",Next:"Da heul","No emoji found":"Emoji ebet kavet","No results":"Disoc'h ebet",Objects:"Traoù","Pause slideshow":"Arsav an diaporama","People & Body":"Tud & Korf","Pick an emoji":"Choaz un emoji",Previous:"A-raok",Search:"Klask","Search results":"Disoc'hoù an enklask","Select a tag":"Choaz ur c'hlav",Settings:"Arventennoù","Smileys & Emotion":"Smileyioù & Fromoù","Start slideshow":"Kregiñ an diaporama",Symbols:"Arouezioù","Travel & Places":"Beaj & Lec'hioù","Unable to search the group":"Dibosupl eo klask ar strollad"}},{locale:"ca",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringit)",Actions:"Accions",Activities:"Activitats","Animals & Nature":"Animals i natura","Anything shared with the same group of people will show up here":"Qualsevol cosa compartida amb el mateix grup de persones es mostrarà aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancel·la els canvis","Change title":"Canviar títol",Choose:"Tria","Clear text":"Netejar text",Close:"Tanca","Close modal":"Tancar el mode","Close navigation":"Tanca la navegació","Close sidebar":"Tancar la barra lateral","Confirm changes":"Confirmeu els canvis",Custom:"Personalitzat","Edit item":"Edita l'element","Error getting related resources":"Error obtenint els recursos relacionats","Error parsing svg":"Error en l'anàlisi del svg","External documentation for {title}":"Documentació externa per a {title}",Favorite:"Preferit",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment",Global:"Global","Go back to the list":"Torna a la llista","Hide password":"Amagar contrasenya","Message limit of {count} characters reached":"S'ha arribat al límit de {count} caràcters per missatge","More items …":"Més artícles...",Next:"Següent","No emoji found":"No s'ha trobat cap emoji","No results":"Sense resultats",Objects:"Objectes",Open:"Obrir",'Open link to "{resourceTitle}"':'Obrir enllaç a "{resourceTitle}"',"Open navigation":"Obre la navegació","Password is secure":"Contrasenya segura<br>","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji","Please select a time zone:":"Seleccioneu una zona horària:",Previous:"Anterior","Related resources":"Recursos relacionats",Search:"Cerca","Search results":"Resultats de cerca","Select a tag":"Seleccioneu una etiqueta",Settings:"Paràmetres","Settings navigation":"Navegació d'opcions","Show password":"Mostrar contrasenya","Smileys & Emotion":"Cares i emocions","Start slideshow":"Inicia la presentació",Submit:"Envia",Symbols:"Símbols","Travel & Places":"Viatges i llocs","Type to search time zone":"Escriviu per cercar la zona horària","Unable to search the group":"No es pot cercar el grup","Undo changes":"Desfés els canvis",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escriu missatge, fes servir "@" per esmentar algú, fes servir ":" per autocompletar emojis...'}},{locale:"cs_CZ",translations:{"{tag} (invisible)":"{tag} (neviditelné)","{tag} (restricted)":"{tag} (omezené)",Actions:"Akce",Activities:"Aktivity","Animals & Nature":"Zvířata a příroda","Anything shared with the same group of people will show up here":"Cokoli nasdíleného stejné skupině lidí se zobrazí zde","Avatar of {displayName}":"Zástupný obrázek uživatele {displayName}","Avatar of {displayName}, {status}":"Zástupný obrázek uživatele {displayName}, {status}","Cancel changes":"Zrušit změny","Change title":"Změnit nadpis",Choose:"Zvolit","Clear text":"Čitelný text",Close:"Zavřít","Close modal":"Zavřít dialogové okno","Close navigation":"Zavřít navigaci","Close sidebar":"Zavřít postranní panel","Confirm changes":"Potvrdit změny",Custom:"Uživatelsky určené","Edit item":"Upravit položku","Error getting related resources":"Chyba při získávání souvisejících prostředků","Error parsing svg":"Chyba při zpracovávání svg","External documentation for {title}":"Externí dokumentace k {title}",Favorite:"Oblíbené",Flags:"Příznaky","Food & Drink":"Jídlo a pití","Frequently used":"Často používané",Global:"Globální","Go back to the list":"Jít zpět na seznam","Hide password":"Skrýt heslo","Message limit of {count} characters reached":"Dosaženo limitu počtu ({count}) znaků zprávy","More items …":"Další položky…",Next:"Následující","No emoji found":"Nenalezeno žádné emoji","No results":"Nic nenalezeno",Objects:"Objekty",Open:"Otevřít",'Open link to "{resourceTitle}"':"Otevřít odkaz na „{resourceTitle}“","Open navigation":"Otevřít navigaci","Password is secure":"Heslo je bezpečné","Pause slideshow":"Pozastavit prezentaci","People & Body":"Lidé a tělo","Pick an emoji":"Vybrat emoji","Please select a time zone:":"Vyberte časovou zónu:",Previous:"Předchozí","Related resources":"Související prostředky",Search:"Hledat","Search results":"Výsledky hledání","Select a tag":"Vybrat štítek",Settings:"Nastavení","Settings navigation":"Pohyb po nastavení","Show password":"Zobrazit heslo","Smileys & Emotion":"Úsměvy a emoce","Start slideshow":"Spustit prezentaci",Submit:"Odeslat",Symbols:"Symboly","Travel & Places":"Cestování a místa","Type to search time zone":"Psaním vyhledejte časovou zónu","Unable to search the group":"Nedaří se hledat skupinu","Undo changes":"Vzít změny zpět",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem „@“ (zavináč); automatické doplňování emotikonů zahájíte napsáním „:“ (dvojtečky)…"}},{locale:"da",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (begrænset)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr & Natur","Anything shared with the same group of people will show up here":"Alt der deles med samme gruppe af personer vil vises her","Avatar of {displayName}":"Avatar af {displayName}","Avatar of {displayName}, {status}":"Avatar af {displayName}, {status}","Cancel changes":"Annuller ændringer","Change title":"Ret titel",Choose:"Vælg","Clear text":"Ryd tekst",Close:"Luk","Close modal":"Luk vindue","Close navigation":"Luk navigation","Close sidebar":"Luk sidepanel","Confirm changes":"Bekræft ændringer",Custom:"Brugerdefineret","Edit item":"Rediger emne","Error getting related resources":"Kunne ikke hente tilknyttede data","Error parsing svg":"Fejl ved analysering af svg","External documentation for {title}":"Ekstern dokumentation for {title}",Favorite:"Favorit",Flags:"Flag","Food & Drink":"Mad & Drikke","Frequently used":"Ofte brugt",Global:"Global","Go back to the list":"Tilbage til listen","Hide password":"Skjul kodeord","Message limit of {count} characters reached":"Begrænsning på {count} tegn er nået","More items …":"Mere ...",Next:"Videre","No emoji found":"Ingen emoji fundet","No results":"Ingen resultater",Objects:"Objekter",Open:"Åbn",'Open link to "{resourceTitle}"':'Åbn link til "{resourceTitle}"',"Open navigation":"Åbn navigation","Password is secure":"Kodeordet er sikkert","Pause slideshow":"Suspender fremvisning","People & Body":"Mennesker & Menneskekroppen","Pick an emoji":"Vælg en emoji","Please select a time zone:":"Vælg venligst en tidszone:",Previous:"Forrige","Related resources":"Relaterede emner",Search:"Søg","Search results":"Søgeresultater","Select a tag":"Vælg et mærke",Settings:"Indstillinger","Settings navigation":"Naviger i indstillinger","Show password":"Vis kodeord","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start fremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Rejser & Rejsemål","Type to search time zone":"Indtast for at søge efter tidszone","Unable to search the group":"Kan ikke søge på denne gruppe","Undo changes":"Fortryd ændringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv besked, brug "@" for at nævne nogen, brug ":" til emoji-autofuldførelse ...'}},{locale:"de",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Gegenstände",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte wählen Sie eine Zeitzone:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um Zeitzone zu suchen","Unable to search the group":"Die Gruppe konnte nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"de_DE",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Objekte",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte eine Zeitzone auswählen:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um eine Zeitzone zu suchen","Unable to search the group":"Die Gruppe kann nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"el",translations:{"{tag} (invisible)":"{tag} (αόρατο)","{tag} (restricted)":"{tag} (περιορισμένο)",Actions:"Ενέργειες",Activities:"Δραστηριότητες","Animals & Nature":"Ζώα & Φύση","Anything shared with the same group of people will show up here":"Οτιδήποτε μοιράζεται με την ίδια ομάδα ατόμων θα εμφανίζεται εδώ","Avatar of {displayName}":"Άβαταρ του {displayName}","Avatar of {displayName}, {status}":"Άβαταρ του {displayName}, {status}","Cancel changes":"Ακύρωση αλλαγών","Change title":"Αλλαγή τίτλου",Choose:"Επιλογή","Clear text":"Εκκαθάριση κειμένου",Close:"Κλείσιμο","Close modal":"Βοηθητικό κλείσιμο","Close navigation":"Κλείσιμο πλοήγησης","Close sidebar":"Κλείσιμο πλευρικής μπάρας","Confirm changes":"Επιβεβαίωση αλλαγών",Custom:"Προσαρμογή","Edit item":"Επεξεργασία","Error getting related resources":"Σφάλμα λήψης σχετικών πόρων","Error parsing svg":"Σφάλμα ανάλυσης svg","External documentation for {title}":"Εξωτερική τεκμηρίωση για {title}",Favorite:"Αγαπημένα",Flags:"Σημαίες","Food & Drink":"Φαγητό & Ποτό","Frequently used":"Συχνά χρησιμοποιούμενο",Global:"Καθολικό","Go back to the list":"Επιστροφή στην αρχική λίστα ","Hide password":"Απόκρυψη κωδικού πρόσβασης","Message limit of {count} characters reached":"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος","More items …":"Περισσότερα στοιχεία …",Next:"Επόμενο","No emoji found":"Δεν βρέθηκε emoji","No results":"Κανένα αποτέλεσμα",Objects:"Αντικείμενα",Open:"Άνοιγμα",'Open link to "{resourceTitle}"':'Άνοιγμα συνδέσμου στο "{resourceTitle}"',"Open navigation":"Άνοιγμα πλοήγησης","Password is secure":"Ο κωδικός πρόσβασης είναι ασφαλής","Pause slideshow":"Παύση προβολής διαφανειών","People & Body":"Άνθρωποι & Σώμα","Pick an emoji":"Επιλέξτε ένα emoji","Please select a time zone:":"Παρακαλούμε επιλέξτε μια ζώνη ώρας:",Previous:"Προηγούμενο","Related resources":"Σχετικοί πόροι",Search:"Αναζήτηση","Search results":"Αποτελέσματα αναζήτησης","Select a tag":"Επιλογή ετικέτας",Settings:"Ρυθμίσεις","Settings navigation":"Πλοήγηση ρυθμίσεων","Show password":"Εμφάνιση κωδικού πρόσβασης","Smileys & Emotion":"Φατσούλες & Συναίσθημα","Start slideshow":"Έναρξη προβολής διαφανειών",Submit:"Υποβολή",Symbols:"Σύμβολα","Travel & Places":"Ταξίδια & Τοποθεσίες","Type to search time zone":"Πληκτρολογήστε για αναζήτηση ζώνης ώρας","Unable to search the group":"Δεν είναι δυνατή η αναζήτηση της ομάδας","Undo changes":"Αναίρεση Αλλαγών",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Γράψτε μήνυμα, χρησιμοποιείστε "@" για να αναφέρετε κάποιον, χρησιμοποιείστε ":" για αυτόματη συμπλήρωση emoji …'}},{locale:"en_GB",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restricted)",Actions:"Actions",Activities:"Activities","Animals & Nature":"Animals & Nature","Anything shared with the same group of people will show up here":"Anything shared with the same group of people will show up here","Avatar of {displayName}":"Avatar of {displayName}","Avatar of {displayName}, {status}":"Avatar of {displayName}, {status}","Cancel changes":"Cancel changes","Change title":"Change title",Choose:"Choose","Clear text":"Clear text",Close:"Close","Close modal":"Close modal","Close navigation":"Close navigation","Close sidebar":"Close sidebar","Confirm changes":"Confirm changes",Custom:"Custom","Edit item":"Edit item","Error getting related resources":"Error getting related resources","Error parsing svg":"Error parsing svg","External documentation for {title}":"External documentation for {title}",Favorite:"Favourite",Flags:"Flags","Food & Drink":"Food & Drink","Frequently used":"Frequently used",Global:"Global","Go back to the list":"Go back to the list","Hide password":"Hide password","Message limit of {count} characters reached":"Message limit of {count} characters reached","More items …":"More items …",Next:"Next","No emoji found":"No emoji found","No results":"No results",Objects:"Objects",Open:"Open",'Open link to "{resourceTitle}"':'Open link to "{resourceTitle}"',"Open navigation":"Open navigation","Password is secure":"Password is secure","Pause slideshow":"Pause slideshow","People & Body":"People & Body","Pick an emoji":"Pick an emoji","Please select a time zone:":"Please select a time zone:",Previous:"Previous","Related resources":"Related resources",Search:"Search","Search results":"Search results","Select a tag":"Select a tag",Settings:"Settings","Settings navigation":"Settings navigation","Show password":"Show password","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start slideshow",Submit:"Submit",Symbols:"Symbols","Travel & Places":"Travel & Places","Type to search time zone":"Type to search time zone","Unable to search the group":"Unable to search the group","Undo changes":"Undo changes",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Write message, use "@" to mention someone, use ":" for emoji autocompletion …'}},{locale:"eo",translations:{"{tag} (invisible)":"{tag} (kaŝita)","{tag} (restricted)":"{tag} (limigita)",Actions:"Agoj",Activities:"Aktiveco","Animals & Nature":"Bestoj & Naturo",Choose:"Elektu",Close:"Fermu",Custom:"Propra",Flags:"Flagoj","Food & Drink":"Manĝaĵo & Trinkaĵo","Frequently used":"Ofte uzataj","Message limit of {count} characters reached":"La limo je {count} da literoj atingita",Next:"Sekva","No emoji found":"La emoĝio forestas","No results":"La rezulto forestas",Objects:"Objektoj","Pause slideshow":"Payzi bildprezenton","People & Body":"Homoj & Korpo","Pick an emoji":"Elekti emoĝion ",Previous:"Antaŭa",Search:"Serĉi","Search results":"Serĉrezultoj","Select a tag":"Elektu etikedon",Settings:"Agordo","Settings navigation":"Agorda navigado","Smileys & Emotion":"Ridoj kaj Emocioj","Start slideshow":"Komenci bildprezenton",Symbols:"Signoj","Travel & Places":"Vojaĵoj & Lokoj","Unable to search the group":"Ne eblas serĉi en la grupo","Write message, @ to mention someone …":"Mesaĝi, uzu @ por mencii iun ..."}},{locale:"es",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringido)",Actions:"Acciones",Activities:"Actividades","Animals & Nature":"Animales y naturaleza","Anything shared with the same group of people will show up here":"Cualquier cosa que sea compartida con el mismo grupo de personas se mostrará aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar cambios","Change title":"Cambiar título",Choose:"Elegir","Clear text":"Limpiar texto",Close:"Cerrar","Close modal":"Cerrar modal","Close navigation":"Cerrar navegación","Close sidebar":"Cerrar barra lateral","Confirm changes":"Confirmar cambios",Custom:"Personalizado","Edit item":"Editar elemento","Error getting related resources":"Se encontró un error al obtener los recursos relacionados","Error parsing svg":"Error procesando svg","External documentation for {title}":"Documentacion externa de {title}",Favorite:"Favorito",Flags:"Banderas","Food & Drink":"Comida y bebida","Frequently used":"Usado con frecuenca",Global:"Global","Go back to the list":"Volver a la lista","Hide password":"Ocultar contraseña","Message limit of {count} characters reached":"El mensaje ha alcanzado el límite de {count} caracteres","More items …":"Más ítems...",Next:"Siguiente","No emoji found":"No hay ningún emoji","No results":" Ningún resultado",Objects:"Objetos",Open:"Abrir",'Open link to "{resourceTitle}"':'Abrir enlace a "{resourceTitle}"',"Open navigation":"Abrir navegación","Password is secure":"La contraseña es segura","Pause slideshow":"Pausar la presentación ","People & Body":"Personas y cuerpos","Pick an emoji":"Elegir un emoji","Please select a time zone:":"Por favor elige un huso de horario:",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Buscar","Search results":"Resultados de la búsqueda","Select a tag":"Seleccione una etiqueta",Settings:"Ajustes","Settings navigation":"Navegación por ajustes","Show password":"Mostrar contraseña","Smileys & Emotion":"Smileys y emoticonos","Start slideshow":"Iniciar la presentación",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viajes y lugares","Type to search time zone":"Escribe para buscar un huso de horario","Unable to search the group":"No es posible buscar en el grupo","Undo changes":"Deshacer cambios",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escribir mensaje, utilice "@" para mencionar a alguien, utilice ":" para autocompletado de emojis ...'}},{locale:"eu",translations:{"{tag} (invisible)":"{tag} (ikusezina)","{tag} (restricted)":"{tag} (mugatua)",Actions:"Ekintzak",Activities:"Jarduerak","Animals & Nature":"Animaliak eta Natura","Anything shared with the same group of people will show up here":"Pertsona-talde berarekin partekatutako edozer agertuko da hemen","Avatar of {displayName}":"{displayName}-(e)n irudia","Avatar of {displayName}, {status}":"{displayName} -(e)n irudia, {status}","Cancel changes":"Ezeztatu aldaketak","Change title":"Aldatu titulua",Choose:"Aukeratu","Clear text":"Garbitu testua",Close:"Itxi","Close modal":"Itxi modala","Close navigation":"Itxi nabigazioa","Close sidebar":"Itxi albo-barra","Confirm changes":"Baieztatu aldaketak",Custom:"Pertsonalizatua","Edit item":"Editatu elementua","Error getting related resources":"Errorea erlazionatutako baliabideak lortzerakoan","Error parsing svg":"Errore bat gertatu da svg-a analizatzean","External documentation for {title}":"Kanpoko dokumentazioa {title}(r)entzat",Favorite:"Gogokoa",Flags:"Banderak","Food & Drink":"Janaria eta edariak","Frequently used":"Askotan erabilia",Global:"Globala","Go back to the list":"Bueltatu zerrendara","Hide password":"Ezkutatu pasahitza","Message limit of {count} characters reached":"Mezuaren {count} karaketere-limitera heldu zara","More items …":"Elementu gehiago …",Next:"Hurrengoa","No emoji found":"Ez da emojirik aurkitu","No results":"Emaitzarik ez",Objects:"Objektuak",Open:"Ireki",'Open link to "{resourceTitle}"':'Ireki esteka: "{resourceTitle}"',"Open navigation":"Ireki nabigazioa","Password is secure":"Pasahitza segurua da","Pause slideshow":"Pausatu diaporama","People & Body":"Jendea eta gorputza","Pick an emoji":"Hautatu emoji bat","Please select a time zone:":"Mesedez hautatu ordu-zona bat:",Previous:"Aurrekoa","Related resources":"Erlazionatutako baliabideak",Search:"Bilatu","Search results":"Bilaketa emaitzak","Select a tag":"Hautatu etiketa bat",Settings:"Ezarpenak","Settings navigation":"Nabigazio ezarpenak","Show password":"Erakutsi pasahitza","Smileys & Emotion":"Smileyak eta emozioa","Start slideshow":"Hasi diaporama",Submit:"Bidali",Symbols:"Sinboloak","Travel & Places":"Bidaiak eta lekuak","Type to search time zone":"Idatzi ordu-zona bat bilatzeko","Unable to search the group":"Ezin izan da taldea bilatu","Undo changes":"Aldaketak desegin",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Idatzi mezua, erabili "@" norbait aipatzeko, erabili ":" emojiak automatikoki osatzeko...'}},{locale:"fi_FI",translations:{"{tag} (invisible)":"{tag} (näkymätön)","{tag} (restricted)":"{tag} (rajoitettu)",Actions:"Toiminnot",Activities:"Aktiviteetit","Animals & Nature":"Eläimet & luonto","Avatar of {displayName}":"Käyttäjän {displayName} avatar","Avatar of {displayName}, {status}":"Käyttäjän {displayName} avatar, {status}","Cancel changes":"Peruuta muutokset",Choose:"Valitse",Close:"Sulje","Close navigation":"Sulje navigaatio","Confirm changes":"Vahvista muutokset",Custom:"Mukautettu","Edit item":"Muokkaa kohdetta","External documentation for {title}":"Ulkoinen dokumentaatio kohteelle {title}",Flags:"Liput","Food & Drink":"Ruoka & juoma","Frequently used":"Usein käytetyt",Global:"Yleinen","Go back to the list":"Siirry takaisin listaan","Message limit of {count} characters reached":"Viestin merkken enimmäisimäärä {count} täynnä ",Next:"Seuraava","No emoji found":"Emojia ei löytynyt","No results":"Ei tuloksia",Objects:"Esineet & asiat","Open navigation":"Avaa navigaatio","Pause slideshow":"Keskeytä diaesitys","People & Body":"Ihmiset & keho","Pick an emoji":"Valitse emoji","Please select a time zone:":"Valitse aikavyöhyke:",Previous:"Edellinen",Search:"Etsi","Search results":"Hakutulokset","Select a tag":"Valitse tagi",Settings:"Asetukset","Settings navigation":"Asetusnavigaatio","Smileys & Emotion":"Hymiöt & tunteet","Start slideshow":"Aloita diaesitys",Submit:"Lähetä",Symbols:"Symbolit","Travel & Places":"Matkustus & kohteet","Type to search time zone":"Kirjoita etsiäksesi aikavyöhyke","Unable to search the group":"Ryhmää ei voi hakea","Undo changes":"Kumoa muutokset","Write message, @ to mention someone, : for emoji autocompletion …":"Kirjoita viesti, @ mainitaksesi käyttäjän, : emojin automaattitäydennykseen…"}},{locale:"fr",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restreint)",Actions:"Actions",Activities:"Activités","Animals & Nature":"Animaux & Nature","Anything shared with the same group of people will show up here":"Tout ce qui est partagé avec le même groupe de personnes apparaîtra ici","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Annuler les modifications","Change title":"Modifier le titre",Choose:"Choisir","Clear text":"Effacer le texte",Close:"Fermer","Close modal":"Fermer la fenêtre","Close navigation":"Fermer la navigation","Close sidebar":"Fermer la barre latérale","Confirm changes":"Confirmer les modifications",Custom:"Personnalisé","Edit item":"Éditer l'élément","Error getting related resources":"Erreur à la récupération des ressources liées","Error parsing svg":"Erreur d'analyse SVG","External documentation for {title}":"Documentation externe pour {title}",Favorite:"Favori",Flags:"Drapeaux","Food & Drink":"Nourriture & Boissons","Frequently used":"Utilisés fréquemment",Global:"Global","Go back to the list":"Retourner à la liste","Hide password":"Cacher le mot de passe","Message limit of {count} characters reached":"Limite de messages de {count} caractères atteinte","More items …":"Plus d'éléments...",Next:"Suivant","No emoji found":"Pas d’émoji trouvé","No results":"Aucun résultat",Objects:"Objets",Open:"Ouvrir",'Open link to "{resourceTitle}"':'Ouvrir le lien vers "{resourceTitle}"',"Open navigation":"Ouvrir la navigation","Password is secure":"Le mot de passe est sécurisé","Pause slideshow":"Mettre le diaporama en pause","People & Body":"Personnes & Corps","Pick an emoji":"Choisissez un émoji","Please select a time zone:":"Sélectionnez un fuseau horaire : ",Previous:"Précédent","Related resources":"Ressources liées",Search:"Chercher","Search results":"Résultats de recherche","Select a tag":"Sélectionnez une balise",Settings:"Paramètres","Settings navigation":"Navigation dans les paramètres","Show password":"Afficher le mot de passe","Smileys & Emotion":"Smileys & Émotions","Start slideshow":"Démarrer le diaporama",Submit:"Valider",Symbols:"Symboles","Travel & Places":"Voyage & Lieux","Type to search time zone":"Saisissez les premiers lettres pour rechercher un fuseau horaire","Unable to search the group":"Impossible de chercher le groupe","Undo changes":"Annuler les changements",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Écrire un message, utiliser "@" pour mentionner une personne, ":" pour l\'autocomplétion des émojis...'}},{locale:"gl",translations:{"{tag} (invisible)":"{tag} (invisíbel)","{tag} (restricted)":"{tag} (restrinxido)",Actions:"Accións",Activities:"Actividades","Animals & Nature":"Animais e natureza","Cancel changes":"Cancelar os cambios",Choose:"Escoller",Close:"Pechar","Confirm changes":"Confirma os cambios",Custom:"Personalizado","External documentation for {title}":"Documentación externa para {title}",Flags:"Bandeiras","Food & Drink":"Comida e bebida","Frequently used":"Usado con frecuencia","Message limit of {count} characters reached":"Acadouse o límite de {count} caracteres por mensaxe",Next:"Seguinte","No emoji found":"Non se atopou ningún «emoji»","No results":"Sen resultados",Objects:"Obxectos","Pause slideshow":"Pausar o diaporama","People & Body":"Persoas e corpo","Pick an emoji":"Escolla un «emoji»",Previous:"Anterir",Search:"Buscar","Search results":"Resultados da busca","Select a tag":"Seleccione unha etiqueta",Settings:"Axustes","Settings navigation":"Navegación polos axustes","Smileys & Emotion":"Sorrisos e emocións","Start slideshow":"Iniciar o diaporama",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viaxes e lugares","Unable to search the group":"Non foi posíbel buscar o grupo","Write message, @ to mention someone …":"Escriba a mensaxe, @ para mencionar a alguén…"}},{locale:"he",translations:{"{tag} (invisible)":"{tag} (נסתר)","{tag} (restricted)":"{tag} (מוגבל)",Actions:"פעולות",Activities:"פעילויות","Animals & Nature":"חיות וטבע",Choose:"בחירה",Close:"סגירה",Custom:"בהתאמה אישית",Flags:"דגלים","Food & Drink":"מזון ומשקאות","Frequently used":"בשימוש תדיר",Next:"הבא","No emoji found":"לא נמצא אמוג׳י","No results":"אין תוצאות",Objects:"חפצים","Pause slideshow":"השהיית מצגת","People & Body":"אנשים וגוף","Pick an emoji":"נא לבחור אמוג׳י",Previous:"הקודם",Search:"חיפוש","Search results":"תוצאות חיפוש","Select a tag":"בחירת תגית",Settings:"הגדרות","Smileys & Emotion":"חייכנים ורגשונים","Start slideshow":"התחלת המצגת",Symbols:"סמלים","Travel & Places":"טיולים ומקומות","Unable to search the group":"לא ניתן לחפש בקבוצה"}},{locale:"hu_HU",translations:{"{tag} (invisible)":"{tag} (láthatatlan)","{tag} (restricted)":"{tag} (korlátozott)",Actions:"Műveletek",Activities:"Tevékenységek","Animals & Nature":"Állatok és természet","Anything shared with the same group of people will show up here":"Minden, amit ugyanazzal a csoporttal oszt meg, itt fog megjelenni","Avatar of {displayName}":"{displayName} profilképe","Avatar of {displayName}, {status}":"{displayName} profilképe, {status}","Cancel changes":"Változtatások elvetése","Change title":"Cím megváltoztatása",Choose:"Válassszon","Clear text":"Szöveg törlése",Close:"Bezárás","Close modal":"Ablak bezárása","Close navigation":"Navigáció bezárása","Close sidebar":"Oldalsáv bezárása","Confirm changes":"Változtatások megerősítése",Custom:"Egyéni","Edit item":"Elem szerkesztése","Error getting related resources":"Hiba a kapcsolódó erőforrások lekérésekor","Error parsing svg":"Hiba az SVG feldolgozásakor","External documentation for {title}":"Külső dokumentáció ehhez: {title}",Favorite:"Kedvenc",Flags:"Zászlók","Food & Drink":"Étel és ital","Frequently used":"Gyakran használt",Global:"Globális","Go back to the list":"Ugrás vissza a listához","Hide password":"Jelszó elrejtése","Message limit of {count} characters reached":"{count} karakteres üzenetkorlát elérve","More items …":"További elemek...",Next:"Következő","No emoji found":"Nem található emodzsi","No results":"Nincs találat",Objects:"Tárgyak",Open:"Megnyitás",'Open link to "{resourceTitle}"':"A(z) „{resourceTitle}” hivatkozásának megnyitása","Open navigation":"Navigáció megnyitása","Password is secure":"A jelszó biztonságos","Pause slideshow":"Diavetítés szüneteltetése","People & Body":"Emberek és test","Pick an emoji":"Válasszon egy emodzsit","Please select a time zone:":"Válasszon időzónát:",Previous:"Előző","Related resources":"Kapcsolódó erőforrások",Search:"Keresés","Search results":"Találatok","Select a tag":"Válasszon címkét",Settings:"Beállítások","Settings navigation":"Navigáció a beállításokban","Show password":"Jelszó megjelenítése","Smileys & Emotion":"Mosolyok és érzelmek","Start slideshow":"Diavetítés indítása",Submit:"Beküldés",Symbols:"Szimbólumok","Travel & Places":"Utazás és helyek","Type to search time zone":"Gépeljen az időzóna kereséséhez","Unable to search the group":"A csoport nem kereshető","Undo changes":"Változtatások visszavonása",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Írjon egy üzenetet, használja a „@”-ot valaki megemlítéséhet, illetve a „:”-ot az emodzsik automatikus kiegészítéséhez…"}},{locale:"is",translations:{"{tag} (invisible)":"{tag} (ósýnilegt)","{tag} (restricted)":"{tag} (takmarkað)",Actions:"Aðgerðir",Activities:"Aðgerðir","Animals & Nature":"Dýr og náttúra",Choose:"Velja",Close:"Loka",Custom:"Sérsniðið",Flags:"Flögg","Food & Drink":"Matur og drykkur","Frequently used":"Oftast notað",Next:"Næsta","No emoji found":"Ekkert tjáningartákn fannst","No results":"Engar niðurstöður",Objects:"Hlutir","Pause slideshow":"Gera hlé á skyggnusýningu","People & Body":"Fólk og líkami","Pick an emoji":"Veldu tjáningartákn",Previous:"Fyrri",Search:"Leita","Search results":"Leitarniðurstöður","Select a tag":"Veldu merki",Settings:"Stillingar","Smileys & Emotion":"Broskallar og tilfinningar","Start slideshow":"Byrja skyggnusýningu",Symbols:"Tákn","Travel & Places":"Staðir og ferðalög","Unable to search the group":"Get ekki leitað í hópnum"}},{locale:"it",translations:{"{tag} (invisible)":"{tag} (invisibile)","{tag} (restricted)":"{tag} (limitato)",Actions:"Azioni",Activities:"Attività","Animals & Nature":"Animali e natura","Anything shared with the same group of people will show up here":"Tutto ciò che è stato condiviso con lo stesso gruppo di persone viene visualizzato qui","Avatar of {displayName}":"Avatar di {displayName}","Avatar of {displayName}, {status}":"Avatar di {displayName}, {status}","Cancel changes":"Annulla modifiche","Change title":"Modifica il titolo",Choose:"Scegli","Clear text":"Cancella il testo",Close:"Chiudi","Close modal":"Chiudi il messaggio modale","Close navigation":"Chiudi la navigazione","Close sidebar":"Chiudi la barra laterale","Confirm changes":"Conferma modifiche",Custom:"Personalizzato","Edit item":"Modifica l'elemento","Error getting related resources":"Errore nell'ottenere risorse correlate","Error parsing svg":"Errore nell'analizzare l'svg","External documentation for {title}":"Documentazione esterna per {title}",Favorite:"Preferito",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente",Global:"Globale","Go back to the list":"Torna all'elenco","Hide password":"Nascondi la password","Message limit of {count} characters reached":"Limite dei messaggi di {count} caratteri raggiunto","More items …":"Più elementi ...",Next:"Successivo","No emoji found":"Nessun emoji trovato","No results":"Nessun risultato",Objects:"Oggetti",Open:"Apri",'Open link to "{resourceTitle}"':'Apri il link a "{resourceTitle}"',"Open navigation":"Apri la navigazione","Password is secure":"La password è sicura","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji","Please select a time zone:":"Si prega di selezionare un fuso orario:",Previous:"Precedente","Related resources":"Risorse correlate",Search:"Cerca","Search results":"Risultati di ricerca","Select a tag":"Seleziona un'etichetta",Settings:"Impostazioni","Settings navigation":"Navigazione delle impostazioni","Show password":"Mostra la password","Smileys & Emotion":"Faccine ed emozioni","Start slideshow":"Avvia presentazione",Submit:"Invia",Symbols:"Simboli","Travel & Places":"Viaggi e luoghi","Type to search time zone":"Digita per cercare un fuso orario","Unable to search the group":"Impossibile cercare il gruppo","Undo changes":"Cancella i cambiamenti",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrivi un messaggio, "@" per menzionare qualcuno, ":" per il completamento automatico delle emoji ...'}},{locale:"ja_JP",translations:{"{tag} (invisible)":"{タグ} (不可視)","{tag} (restricted)":"{タグ} (制限付)",Actions:"操作",Activities:"アクティビティ","Animals & Nature":"動物と自然","Anything shared with the same group of people will show up here":"同じグループで共有しているものは、全てここに表示されます","Avatar of {displayName}":"{displayName} のアバター","Avatar of {displayName}, {status}":"{displayName}, {status} のアバター","Cancel changes":"変更をキャンセル","Change title":"タイトルを変更",Choose:"選択","Clear text":"テキストをクリア",Close:"閉じる","Close modal":"モーダルを閉じる","Close navigation":"ナビゲーションを閉じる","Close sidebar":"サイドバーを閉じる","Confirm changes":"変更を承認",Custom:"カスタム","Edit item":"編集","Error getting related resources":"関連リソースの取得エラー","Error parsing svg":"svgの解析エラー","External documentation for {title}":"{title} のための添付文書",Favorite:"お気に入り",Flags:"国旗","Food & Drink":"食べ物と飲み物","Frequently used":"よく使うもの",Global:"全体","Go back to the list":"リストに戻る","Hide password":"パスワードを非表示","Message limit of {count} characters reached":"{count} 文字のメッセージ上限に達しています","More items …":"他のアイテム",Next:"次","No emoji found":"絵文字が見つかりません","No results":"なし",Objects:"物",Open:"開く",'Open link to "{resourceTitle}"':'"{resourceTitle}"のリンクを開く',"Open navigation":"ナビゲーションを開く","Password is secure":"パスワードは保護されています","Pause slideshow":"スライドショーを一時停止","People & Body":"様々な人と体の部位","Pick an emoji":"絵文字を選択","Please select a time zone:":"タイムゾーンを選んで下さい:",Previous:"前","Related resources":"関連リソース",Search:"検索","Search results":"検索結果","Select a tag":"タグを選択",Settings:"設定","Settings navigation":"ナビゲーション設定","Show password":"パスワードを表示","Smileys & Emotion":"感情表現","Start slideshow":"スライドショーを開始",Submit:"提出",Symbols:"記号","Travel & Places":"旅行と場所","Type to search time zone":"タイムゾーン検索のため入力してください","Unable to search the group":"グループを検索できません","Undo changes":"変更を取り消し",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'メッセージを記入、"@"でメンション、":"で絵文字の自動補完 ...'}},{locale:"lt_LT",translations:{"{tag} (invisible)":"{tag} (nematoma)","{tag} (restricted)":"{tag} (apribota)",Actions:"Veiksmai",Activities:"Veiklos","Animals & Nature":"Gyvūnai ir gamta",Choose:"Pasirinkti",Close:"Užverti",Custom:"Tinkinti","External documentation for {title}":"Išorinė {title} dokumentacija",Flags:"Vėliavos","Food & Drink":"Maistas ir gėrimai","Frequently used":"Dažniausiai naudoti","Message limit of {count} characters reached":"Pasiekta {count} simbolių žinutės riba",Next:"Kitas","No emoji found":"Nerasta jaustukų","No results":"Nėra rezultatų",Objects:"Objektai","Pause slideshow":"Pristabdyti skaidrių rodymą","People & Body":"Žmonės ir kūnas","Pick an emoji":"Pasirinkti jaustuką",Previous:"Ankstesnis",Search:"Ieškoti","Search results":"Paieškos rezultatai","Select a tag":"Pasirinkti žymę",Settings:"Nustatymai","Settings navigation":"Naršymas nustatymuose","Smileys & Emotion":"Šypsenos ir emocijos","Start slideshow":"Pradėti skaidrių rodymą",Submit:"Pateikti",Symbols:"Simboliai","Travel & Places":"Kelionės ir vietos","Unable to search the group":"Nepavyko atlikti paiešką grupėje","Write message, @ to mention someone …":"Rašykite žinutę, naudokite @ norėdami kažką paminėti…"}},{locale:"lv",translations:{"{tag} (invisible)":"{tag} (neredzams)","{tag} (restricted)":"{tag} (ierobežots)",Choose:"Izvēlēties",Close:"Aizvērt",Next:"Nākamais","No results":"Nav rezultātu","Pause slideshow":"Pauzēt slaidrādi",Previous:"Iepriekšējais","Select a tag":"Izvēlēties birku",Settings:"Iestatījumi","Start slideshow":"Sākt slaidrādi"}},{locale:"mk",translations:{"{tag} (invisible)":"{tag} (невидливо)","{tag} (restricted)":"{tag} (ограничено)",Actions:"Акции",Activities:"Активности","Animals & Nature":"Животни & Природа","Avatar of {displayName}":"Аватар на {displayName}","Avatar of {displayName}, {status}":"Аватар на {displayName}, {status}","Cancel changes":"Откажи ги промените","Change title":"Промени наслов",Choose:"Избери",Close:"Затвори","Close modal":"Затвори модал","Close navigation":"Затвори навигација","Confirm changes":"Потврди ги промените",Custom:"Прилагодени","Edit item":"Уреди","External documentation for {title}":"Надворешна документација за {title}",Favorite:"Фаворити",Flags:"Знамиња","Food & Drink":"Храна & Пијалоци","Frequently used":"Најчесто користени",Global:"Глобално","Go back to the list":"Врати се на листата",items:"ставки","Message limit of {count} characters reached":"Ограничувањето на должината на пораката од {count} карактери е надминато","More {dashboardItemType} …":"Повеќе {dashboardItemType} …",Next:"Следно","No emoji found":"Не се пронајдени емотикони","No results":"Нема резултати",Objects:"Објекти",Open:"Отвори","Open navigation":"Отвори навигација","Pause slideshow":"Пузирај слајдшоу","People & Body":"Луѓе & Тело","Pick an emoji":"Избери емотикон","Please select a time zone:":"Изберете временска зона:",Previous:"Предходно",Search:"Барај","Search results":"Резултати од барувањето","Select a tag":"Избери ознака",Settings:"Параметри","Settings navigation":"Параметри за навигација","Smileys & Emotion":"Смешковци & Емотикони","Start slideshow":"Стартувај слајдшоу",Submit:"Испрати",Symbols:"Симболи","Travel & Places":"Патувања & Места","Type to search time zone":"Напишете за да пребарате временска зона","Unable to search the group":"Неможе да се принајде групата","Undo changes":"Врати ги промените","Write message, @ to mention someone, : for emoji autocompletion …":"Напиши порака, @ за да спомнете некого, : за емотинони автоатско комплетирање ..."}},{locale:"my",translations:{"{tag} (invisible)":"{tag} (ကွယ်ဝှက်ထား)","{tag} (restricted)":"{tag} (ကန့်သတ်)",Actions:"လုပ်ဆောင်ချက်များ",Activities:"ပြုလုပ်ဆောင်တာများ","Animals & Nature":"တိရစ္ဆာန်များနှင့် သဘာဝ","Avatar of {displayName}":"{displayName} ၏ ကိုယ်ပွား","Cancel changes":"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်",Choose:"ရွေးချယ်ရန်",Close:"ပိတ်ရန်","Confirm changes":"ပြောင်းလဲမှုများ အတည်ပြုရန်",Custom:"အလိုကျချိန်ညှိမှု","External documentation for {title}":"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း",Flags:"အလံများ","Food & Drink":"အစားအသောက်","Frequently used":"မကြာခဏအသုံးပြုသော",Global:"ကမ္ဘာလုံးဆိုင်ရာ","Message limit of {count} characters reached":"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ",Next:"နောက်သို့ဆက်ရန်","No emoji found":"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ","No results":"ရလဒ်မရှိပါ",Objects:"အရာဝတ္ထုများ","Pause slideshow":"စလိုက်ရှိုး ခေတ္တရပ်ရန်","People & Body":"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်","Pick an emoji":"အီမိုဂျီရွေးရန်","Please select a time zone:":"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ",Previous:"ယခင်",Search:"ရှာဖွေရန်","Search results":"ရှာဖွေမှု ရလဒ်များ","Select a tag":"tag ရွေးချယ်ရန်",Settings:"ချိန်ညှိချက်များ","Settings navigation":"ချိန်ညှိချက်အညွှန်း","Smileys & Emotion":"စမိုင်လီများနှင့် အီမိုရှင်း","Start slideshow":"စလိုက်ရှိုးအား စတင်ရန်",Submit:"တင်သွင်းရန်",Symbols:"သင်္ကေတများ","Travel & Places":"ခရီးသွားလာခြင်းနှင့် နေရာများ","Type to search time zone":"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ","Unable to search the group":"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ","Write message, @ to mention someone …":"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်..."}},{locale:"nb_NO",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (beskyttet)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr og natur","Anything shared with the same group of people will show up here":"Alt som er delt med den samme gruppen vil vises her","Avatar of {displayName}":"Avataren til {displayName}","Avatar of {displayName}, {status}":"{displayName}'s avatar, {status}","Cancel changes":"Avbryt endringer","Change title":"Endre tittel",Choose:"Velg","Clear text":"Fjern tekst",Close:"Lukk","Close modal":"Lukk modal","Close navigation":"Lukk navigasjon","Close sidebar":"Lukk sidepanel","Confirm changes":"Bekreft endringer",Custom:"Tilpasset","Edit item":"Rediger","Error getting related resources":"Feil ved henting av relaterte ressurser","Error parsing svg":"Feil ved parsing av svg","External documentation for {title}":"Ekstern dokumentasjon for {title}",Favorite:"Favoritt",Flags:"Flagg","Food & Drink":"Mat og drikke","Frequently used":"Ofte brukt",Global:"Global","Go back to the list":"Gå tilbake til listen","Hide password":"Skjul passord","Message limit of {count} characters reached":"Karakter begrensing {count} nådd i melding","More items …":"Flere gjenstander...",Next:"Neste","No emoji found":"Fant ingen emoji","No results":"Ingen resultater",Objects:"Objekter",Open:"Åpne",'Open link to "{resourceTitle}"':'Åpne link til "{resourceTitle}"',"Open navigation":"Åpne navigasjon","Password is secure":"Passordet er sikkert","Pause slideshow":"Pause lysbildefremvisning","People & Body":"Mennesker og kropp","Pick an emoji":"Velg en emoji","Please select a time zone:":"Vennligst velg tidssone",Previous:"Forrige","Related resources":"Relaterte ressurser",Search:"Søk","Search results":"Søkeresultater","Select a tag":"Velg en merkelapp",Settings:"Innstillinger","Settings navigation":"Navigasjonsinstillinger","Show password":"Vis passord","Smileys & Emotion":"Smilefjes og følelser","Start slideshow":"Start lysbildefremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Reise og steder","Type to search time zone":"Tast for å søke etter tidssone","Unable to search the group":"Kunne ikke søke i gruppen","Undo changes":"Tilbakestill endringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv melding, bruk "@" for å nevne noen, bruk ":" for autofullføring av emoji...'}},{locale:"nl",translations:{"{tag} (invisible)":"{tag} (onzichtbaar)","{tag} (restricted)":"{tag} (beperkt)",Actions:"Acties",Activities:"Activiteiten","Animals & Nature":"Dieren & Natuur","Avatar of {displayName}":"Avatar van {displayName}","Avatar of {displayName}, {status}":"Avatar van {displayName}, {status}","Cancel changes":"Wijzigingen annuleren",Choose:"Kies",Close:"Sluiten","Close navigation":"Navigatie sluiten","Confirm changes":"Wijzigingen bevestigen",Custom:"Aangepast","Edit item":"Item bewerken","External documentation for {title}":"Externe documentatie voor {title}",Flags:"Vlaggen","Food & Drink":"Eten & Drinken","Frequently used":"Vaak gebruikt",Global:"Globaal","Go back to the list":"Ga terug naar de lijst","Message limit of {count} characters reached":"Berichtlimiet van {count} karakters bereikt",Next:"Volgende","No emoji found":"Geen emoji gevonden","No results":"Geen resultaten",Objects:"Objecten","Open navigation":"Navigatie openen","Pause slideshow":"Pauzeer diavoorstelling","People & Body":"Mensen & Lichaam","Pick an emoji":"Kies een emoji","Please select a time zone:":"Selecteer een tijdzone:",Previous:"Vorige",Search:"Zoeken","Search results":"Zoekresultaten","Select a tag":"Selecteer een label",Settings:"Instellingen","Settings navigation":"Instellingen navigatie","Smileys & Emotion":"Smileys & Emotie","Start slideshow":"Start diavoorstelling",Submit:"Verwerken",Symbols:"Symbolen","Travel & Places":"Reizen & Plaatsen","Type to search time zone":"Type om de tijdzone te zoeken","Unable to search the group":"Kan niet in de groep zoeken","Undo changes":"Wijzigingen ongedaan maken","Write message, @ to mention someone, : for emoji autocompletion …":"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ..."}},{locale:"oc",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (limit)",Actions:"Accions",Choose:"Causir",Close:"Tampar",Next:"Seguent","No results":"Cap de resultat","Pause slideshow":"Metre en pausa lo diaporama",Previous:"Precedent","Select a tag":"Seleccionar una etiqueta",Settings:"Paramètres","Start slideshow":"Lançar lo diaporama"}},{locale:"pl",translations:{"{tag} (invisible)":"{tag} (niewidoczna)","{tag} (restricted)":"{tag} (ograniczona)",Actions:"Działania",Activities:"Aktywność","Animals & Nature":"Zwierzęta i natura","Anything shared with the same group of people will show up here":"Tutaj pojawi się wszystko, co zostało udostępnione tej samej grupie osób","Avatar of {displayName}":"Awatar {displayName}","Avatar of {displayName}, {status}":"Awatar {displayName}, {status}","Cancel changes":"Anuluj zmiany","Change title":"Zmień tytuł",Choose:"Wybierz","Clear text":"Wyczyść tekst",Close:"Zamknij","Close modal":"Zamknij modal","Close navigation":"Zamknij nawigację","Close sidebar":"Zamknij pasek boczny","Confirm changes":"Potwierdź zmiany",Custom:"Zwyczajne","Edit item":"Edytuj element","Error getting related resources":"Błąd podczas pobierania powiązanych zasobów","Error parsing svg":"Błąd podczas analizowania svg","External documentation for {title}":"Dokumentacja zewnętrzna dla {title}",Favorite:"Ulubiony",Flags:"Flagi","Food & Drink":"Jedzenie i picie","Frequently used":"Często używane",Global:"Globalnie","Go back to the list":"Powrót do listy","Hide password":"Ukryj hasło","Message limit of {count} characters reached":"Przekroczono limit wiadomości wynoszący {count} znaków","More items …":"Więcej pozycji…",Next:"Następny","No emoji found":"Nie znaleziono emoji","No results":"Brak wyników",Objects:"Obiekty",Open:"Otwórz",'Open link to "{resourceTitle}"':'Otwórz link do "{resourceTitle}"',"Open navigation":"Otwórz nawigację","Password is secure":"Hasło jest bezpieczne","Pause slideshow":"Wstrzymaj pokaz slajdów","People & Body":"Ludzie i ciało","Pick an emoji":"Wybierz emoji","Please select a time zone:":"Wybierz strefę czasową:",Previous:"Poprzedni","Related resources":"Powiązane zasoby",Search:"Szukaj","Search results":"Wyniki wyszukiwania","Select a tag":"Wybierz etykietę",Settings:"Ustawienia","Settings navigation":"Ustawienia nawigacji","Show password":"Pokaż hasło","Smileys & Emotion":"Buźki i emotikony","Start slideshow":"Rozpocznij pokaz slajdów",Submit:"Wyślij",Symbols:"Symbole","Travel & Places":"Podróże i miejsca","Type to search time zone":"Wpisz, aby wyszukać strefę czasową","Unable to search the group":"Nie można przeszukać grupy","Undo changes":"Cofnij zmiany",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Napisz wiadomość, "@" aby o kimś wspomnieć, ":" dla autouzupełniania emoji…'}},{locale:"pt_BR",translations:{"{tag} (invisible)":"{tag} (invisível)","{tag} (restricted)":"{tag} (restrito) ",Actions:"Ações",Activities:"Atividades","Animals & Nature":"Animais & Natureza","Anything shared with the same group of people will show up here":"Qualquer coisa compartilhada com o mesmo grupo de pessoas aparecerá aqui","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar alterações","Change title":"Alterar título",Choose:"Escolher","Clear text":"Limpar texto",Close:"Fechar","Close modal":"Fechar modal","Close navigation":"Fechar navegação","Close sidebar":"Fechar barra lateral","Confirm changes":"Confirmar alterações",Custom:"Personalizado","Edit item":"Editar item","Error getting related resources":"Erro ao obter recursos relacionados","Error parsing svg":"Erro ao analisar svg","External documentation for {title}":"Documentação externa para {title}",Favorite:"Favorito",Flags:"Bandeiras","Food & Drink":"Comida & Bebida","Frequently used":"Mais usados",Global:"Global","Go back to the list":"Volte para a lista","Hide password":"Ocultar a senha","Message limit of {count} characters reached":"Limite de mensagem de {count} caracteres atingido","More items …":"Mais itens …",Next:"Próximo","No emoji found":"Nenhum emoji encontrado","No results":"Sem resultados",Objects:"Objetos",Open:"Aberto",'Open link to "{resourceTitle}"':'Abrir link para "{resourceTitle}"',"Open navigation":"Abrir navegação","Password is secure":"A senha é segura","Pause slideshow":"Pausar apresentação de slides","People & Body":"Pessoas & Corpo","Pick an emoji":"Escolha um emoji","Please select a time zone:":"Selecione um fuso horário: ",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Pesquisar","Search results":"Resultados da pesquisa","Select a tag":"Selecionar uma tag",Settings:"Configurações","Settings navigation":"Navegação de configurações","Show password":"Mostrar senha","Smileys & Emotion":"Smiles & Emoções","Start slideshow":"Iniciar apresentação de slides",Submit:"Enviar",Symbols:"Símbolo","Travel & Places":"Viagem & Lugares","Type to search time zone":"Digite para pesquisar o fuso horário ","Unable to search the group":"Não foi possível pesquisar o grupo","Undo changes":"Desfazer modificações",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escreva mensagens, use "@" para mencionar algum, use ":" for autocompletar emoji …'}},{locale:"pt_PT",translations:{"{tag} (invisible)":"{tag} (invisivel)","{tag} (restricted)":"{tag} (restrito)",Actions:"Ações",Choose:"Escolher",Close:"Fechar",Next:"Seguinte","No results":"Sem resultados","Pause slideshow":"Pausar diaporama",Previous:"Anterior","Select a tag":"Selecionar uma etiqueta",Settings:"Definições","Start slideshow":"Iniciar diaporama","Unable to search the group":"Não é possível pesquisar o grupo"}},{locale:"ro",translations:{"{tag} (invisible)":"{tag} (invizibil)","{tag} (restricted)":"{tag} (restricționat)",Actions:"Acțiuni",Activities:"Activități","Animals & Nature":"Animale și natură","Anything shared with the same group of people will show up here":"Tot ceea ce este partajat cu același grup de persoane va fi afișat aici","Avatar of {displayName}":"Avatarul lui {displayName}","Avatar of {displayName}, {status}":"Avatarul lui {displayName}, {status}","Cancel changes":"Anulează modificările","Change title":"Modificați titlul",Choose:"Alegeți","Clear text":"Șterge textul",Close:"Închideți","Close modal":"Închideți modulul","Close navigation":"Închideți navigarea","Close sidebar":"Închide bara laterală","Confirm changes":"Confirmați modificările",Custom:"Personalizat","Edit item":"Editați elementul","Error getting related resources":" Eroare la returnarea resurselor legate","Error parsing svg":"Eroare de analizare a svg","External documentation for {title}":"Documentație externă pentru {title}",Favorite:"Favorit",Flags:"Marcaje","Food & Drink":"Alimente și băuturi","Frequently used":"Utilizate frecvent",Global:"Global","Go back to the list":"Întoarceți-vă la listă","Hide password":"Ascunde parola","Message limit of {count} characters reached":"Limita mesajului de {count} caractere a fost atinsă","More items …":"Mai multe articole ...",Next:"Următorul","No emoji found":"Nu s-a găsit niciun emoji","No results":"Nu există rezultate",Objects:"Obiecte",Open:"Deschideți",'Open link to "{resourceTitle}"':'Deschide legătura la "{resourceTitle}"',"Open navigation":"Deschideți navigația","Password is secure":"Parola este sigură","Pause slideshow":"Pauză prezentare de diapozitive","People & Body":"Oameni și corp","Pick an emoji":"Alege un emoji","Please select a time zone:":"Vă rugăm să selectați un fus orar:",Previous:"Anterior","Related resources":"Resurse legate",Search:"Căutare","Search results":"Rezultatele căutării","Select a tag":"Selectați o etichetă",Settings:"Setări","Settings navigation":"Navigare setări","Show password":"Arată parola","Smileys & Emotion":"Zâmbete și emoții","Start slideshow":"Începeți prezentarea de diapozitive",Submit:"Trimiteți",Symbols:"Simboluri","Travel & Places":"Călătorii și locuri","Type to search time zone":"Tastați pentru a căuta fusul orar","Unable to search the group":"Imposibilitatea de a căuta în grup","Undo changes":"Anularea modificărilor",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrie un mesaj, folosește "@" pentru a menționa pe cineva, folosește ":" pentru autocompletarea cu emoji ...'}},{locale:"ru",translations:{"{tag} (invisible)":"{tag} (невидимое)","{tag} (restricted)":"{tag} (ограниченное)",Actions:"Действия ",Activities:"События","Animals & Nature":"Животные и природа ","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Фотография {displayName}, {status}","Cancel changes":"Отменить изменения",Choose:"Выберите",Close:"Закрыть","Close modal":"Закрыть модальное окно","Close navigation":"Закрыть навигацию","Confirm changes":"Подтвердить изменения",Custom:"Пользовательское","Edit item":"Изменить элемент","External documentation for {title}":"Внешняя документация для {title}",Flags:"Флаги","Food & Drink":"Еда, напиток","Frequently used":"Часто используемый",Global:"Глобальный","Go back to the list":"Вернуться к списку",items:"элементов","Message limit of {count} characters reached":"Достигнуто ограничение на количество символов в {count}","More {dashboardItemType} …":"Больше {dashboardItemType} …",Next:"Следующее","No emoji found":"Эмодзи не найдено","No results":"Результаты отсуствуют",Objects:"Объекты",Open:"Открыть","Open navigation":"Открыть навигацию","Pause slideshow":"Приостановить показ слйдов","People & Body":"Люди и тело","Pick an emoji":"Выберите эмодзи","Please select a time zone:":"Пожалуйста, выберите часовой пояс:",Previous:"Предыдущее",Search:"Поиск","Search results":"Результаты поиска","Select a tag":"Выберите метку",Settings:"Параметры","Settings navigation":"Навигация по настройкам","Smileys & Emotion":"Смайлики и эмоции","Start slideshow":"Начать показ слайдов",Submit:"Утвердить",Symbols:"Символы","Travel & Places":"Путешествия и места","Type to search time zone":"Введите для поиска часового пояса","Unable to search the group":"Невозможно найти группу","Undo changes":"Отменить изменения","Write message, @ to mention someone, : for emoji autocompletion …":"Напишите сообщение, @ - чтобы упомянуть кого-то, : - для автозаполнения эмодзи …"}},{locale:"sk_SK",translations:{"{tag} (invisible)":"{tag} (neviditeľný)","{tag} (restricted)":"{tag} (obmedzený)",Actions:"Akcie",Activities:"Aktivity","Animals & Nature":"Zvieratá a príroda","Avatar of {displayName}":"Avatar {displayName}","Avatar of {displayName}, {status}":"Avatar {displayName}, {status}","Cancel changes":"Zrušiť zmeny",Choose:"Vybrať",Close:"Zatvoriť","Close navigation":"Zavrieť navigáciu","Confirm changes":"Potvrdiť zmeny",Custom:"Zvyk","Edit item":"Upraviť položku","External documentation for {title}":"Externá dokumentácia pre {title}",Flags:"Vlajky","Food & Drink":"Jedlo a nápoje","Frequently used":"Často používané",Global:"Globálne","Go back to the list":"Naspäť na zoznam","Message limit of {count} characters reached":"Limit správy na {count} znakov dosiahnutý",Next:"Ďalší","No emoji found":"Nenašli sa žiadne emodži","No results":"Žiadne výsledky",Objects:"Objekty","Open navigation":"Otvoriť navigáciu","Pause slideshow":"Pozastaviť prezentáciu","People & Body":"Ľudia a telo","Pick an emoji":"Vyberte si emodži","Please select a time zone:":"Prosím vyberte časovú zónu:",Previous:"Predchádzajúci",Search:"Hľadať","Search results":"Výsledky vyhľadávania","Select a tag":"Vybrať štítok",Settings:"Nastavenia","Settings navigation":"Navigácia v nastaveniach","Smileys & Emotion":"Smajlíky a emócie","Start slideshow":"Začať prezentáciu",Submit:"Odoslať",Symbols:"Symboly","Travel & Places":"Cestovanie a miesta","Type to search time zone":"Začníte písať pre vyhľadávanie časovej zóny","Unable to search the group":"Skupinu sa nepodarilo nájsť","Undo changes":"Vrátiť zmeny","Write message, @ to mention someone, : for emoji autocompletion …":"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…"}},{locale:"sl",translations:{"{tag} (invisible)":"{tag} (nevidno)","{tag} (restricted)":"{tag} (omejeno)",Actions:"Dejanja",Activities:"Dejavnosti","Animals & Nature":"Živali in Narava","Avatar of {displayName}":"Podoba {displayName}","Avatar of {displayName}, {status}":"Prikazna slika {displayName}, {status}","Cancel changes":"Prekliči spremembe","Change title":"Spremeni naziv",Choose:"Izbor","Clear text":"Počisti besedilo",Close:"Zapri","Close modal":"Zapri pojavno okno","Close navigation":"Zapri krmarjenje","Close sidebar":"Zapri stransko vrstico","Confirm changes":"Potrdi spremembe",Custom:"Po meri","Edit item":"Uredi predmet","Error getting related resources":"Napaka pridobivanja povezanih virov","External documentation for {title}":"Zunanja dokumentacija za {title}",Favorite:"Priljubljeno",Flags:"Zastavice","Food & Drink":"Hrana in Pijača","Frequently used":"Pogostost uporabe",Global:"Splošno","Go back to the list":"Vrni se na seznam","Hide password":"Skrij geslo","Message limit of {count} characters reached":"Dosežena omejitev {count} znakov na sporočilo.","More items …":"Več predmetov ...",Next:"Naslednji","No emoji found":"Ni najdenih izraznih ikon","No results":"Ni zadetkov",Objects:"Predmeti",Open:"Odpri",'Open link to "{resourceTitle}"':"Odpri povezavo do »{resourceTitle}«","Open navigation":"Odpri krmarjenje","Password is secure":"Geslo je varno","Pause slideshow":"Ustavi predstavitev","People & Body":"Ljudje in Telo","Pick a date":"Izbor datuma","Pick a date and a time":"Izbor datuma in časa","Pick a month":"Izbor meseca","Pick a time":"Izbor časa","Pick a week":"Izbor tedna","Pick a year":"Izbor leta","Pick an emoji":"Izbor izrazne ikone","Please select a time zone:":"Izbor časovnega pasu:",Previous:"Predhodni","Related resources":"Povezani viri",Search:"Iskanje","Search results":"Zadetki iskanja","Select a tag":"Izbor oznake",Settings:"Nastavitve","Settings navigation":"Krmarjenje nastavitev","Show password":"Pokaži geslo","Smileys & Emotion":"Izrazne ikone","Start slideshow":"Začni predstavitev",Submit:"Pošlji",Symbols:"Simboli","Travel & Places":"Potovanja in Kraji","Type to search time zone":"Vpišite niz za iskanje časovnega pasu","Unable to search the group":"Ni mogoče iskati po skupini","Undo changes":"Razveljavi spremembe","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite sporočilo, za omembo pred ime postavite@, začnite z : za vstavljanje izraznih ikon …"}},{locale:"sr",translations:{"{tag} (invisible)":"{tag} (nevidljivo)","{tag} (restricted)":"{tag} (ograničeno)",Actions:"Radnje",Activities:"Aktivnosti","Animals & Nature":"Životinje i Priroda","Avatar of {displayName}":"Avatar za {displayName}","Avatar of {displayName}, {status}":"Avatar za {displayName}, {status}","Cancel changes":"Otkaži izmene","Change title":"Izmeni naziv",Choose:"Изаберите",Close:"Затвори","Close modal":"Zatvori modal","Close navigation":"Zatvori navigaciju","Close sidebar":"Zatvori bočnu traku","Confirm changes":"Potvrdite promene",Custom:"Po meri","Edit item":"Uredi stavku","External documentation for {title}":"Eksterna dokumentacija za {title}",Favorite:"Omiljeni",Flags:"Zastave","Food & Drink":"Hrana i Piće","Frequently used":"Često korišćeno",Global:"Globalno","Go back to the list":"Natrag na listu",items:"stavke","Message limit of {count} characters reached":"Dostignuto je ograničenje za poruke od {count} znakova","More {dashboardItemType} …":"Više {dashboardItemType} …",Next:"Следеће","No emoji found":"Nije pronađen nijedan emodži","No results":"Нема резултата",Objects:"Objekti",Open:"Otvori","Open navigation":"Otvori navigaciju","Pause slideshow":"Паузирај слајд шоу","People & Body":"Ljudi i Telo","Pick an emoji":"Izaberi emodži","Please select a time zone:":"Molimo izaberite vremensku zonu:",Previous:"Претходно",Search:"Pretraži","Search results":"Rezultati pretrage","Select a tag":"Изаберите ознаку",Settings:"Поставке","Settings navigation":"Navigacija u podešavanjima","Smileys & Emotion":"Smajli i Emocije","Start slideshow":"Покрени слајд шоу",Submit:"Prihvati",Symbols:"Simboli","Travel & Places":"Putovanja i Mesta","Type to search time zone":"Ukucaj da pretražiš vremenske zone","Unable to search the group":"Nije moguće pretražiti grupu","Undo changes":"Poništi promene","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite poruku, @ da pomenete nekoga, : za automatsko dovršavanje emodžija…"}},{locale:"sv",translations:{"{tag} (invisible)":"{tag} (osynlig)","{tag} (restricted)":"{tag} (begränsad)",Actions:"Åtgärder",Activities:"Aktiviteter","Animals & Nature":"Djur & Natur","Anything shared with the same group of people will show up here":"Något som delats med samma grupp av personer kommer att visas här","Avatar of {displayName}":"{displayName}s avatar","Avatar of {displayName}, {status}":"{displayName}s avatar, {status}","Cancel changes":"Avbryt ändringar","Change title":"Ändra titel",Choose:"Välj","Clear text":"Ta bort text",Close:"Stäng","Close modal":"Stäng modal","Close navigation":"Stäng navigering","Close sidebar":"Stäng sidopanel","Confirm changes":"Bekräfta ändringar",Custom:"Anpassad","Edit item":"Ändra","Error getting related resources":"Problem att hämta relaterade resurser","Error parsing svg":"Fel vid inläsning av svg","External documentation for {title}":"Extern dokumentation för {title}",Favorite:"Favorit",Flags:"Flaggor","Food & Drink":"Mat & Dryck","Frequently used":"Används ofta",Global:"Global","Go back to the list":"Gå tillbaka till listan","Hide password":"Göm lössenordet","Message limit of {count} characters reached":"Meddelandegräns {count} tecken används","More items …":"Fler objekt",Next:"Nästa","No emoji found":"Hittade inga emojis","No results":"Inga resultat",Objects:"Objekt",Open:"Öppna",'Open link to "{resourceTitle}"':'Öppna länk till "{resourceTitle}"',"Open navigation":"Öppna navigering","Password is secure":"Lössenordet är säkert","Pause slideshow":"Pausa bildspelet","People & Body":"Kropp & Själ","Pick an emoji":"Välj en emoji","Please select a time zone:":"Välj tidszon:",Previous:"Föregående","Related resources":"Relaterade resurser",Search:"Sök","Search results":"Sökresultat","Select a tag":"Välj en tag",Settings:"Inställningar","Settings navigation":"Inställningsmeny","Show password":"Visa lössenordet","Smileys & Emotion":"Selfies & Känslor","Start slideshow":"Starta bildspelet",Submit:"Skicka",Symbols:"Symboler","Travel & Places":"Resor & Sevärdigheter","Type to search time zone":"Skriv för att välja tidszon","Unable to search the group":"Kunde inte söka i gruppen","Undo changes":"Ångra ändringar",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv meddelande, använd "@" för att nämna någon, använd ":" för automatiska emojiförslag ...'}},{locale:"tr",translations:{"{tag} (invisible)":"{tag} (görünmez)","{tag} (restricted)":"{tag} (kısıtlı)",Actions:"İşlemler",Activities:"Etkinlikler","Animals & Nature":"Hayvanlar ve Doğa","Anything shared with the same group of people will show up here":"Aynı kişi grubu ile paylaşılan herşey burada görüntülenir","Avatar of {displayName}":"{displayName} avatarı","Avatar of {displayName}, {status}":"{displayName}, {status} avatarı","Cancel changes":"Değişiklikleri iptal et","Change title":"Başlığı değiştir",Choose:"Seçin","Clear text":"Metni temizle",Close:"Kapat","Close modal":"Üste açılan pencereyi kapat","Close navigation":"Gezinmeyi kapat","Close sidebar":"Yan çubuğu kapat","Confirm changes":"Değişiklikleri onayla",Custom:"Özel","Edit item":"Ögeyi düzenle","Error getting related resources":"İlgili kaynaklar alınırken sorun çıktı","Error parsing svg":"svg işlenirken sorun çıktı","External documentation for {title}":"{title} için dış belgeler",Favorite:"Sık kullanılanlara ekle",Flags:"Bayraklar","Food & Drink":"Yeme ve İçme","Frequently used":"Sık kullanılanlar",Global:"Evrensel","Go back to the list":"Listeye dön","Hide password":"Parolayı gizle","Message limit of {count} characters reached":"{count} karakter ileti sınırına ulaşıldı","More items …":"Diğer ögeler…",Next:"Sonraki","No emoji found":"Herhangi bir emoji bulunamadı","No results":"Herhangi bir sonuç bulunamadı",Objects:"Nesneler",Open:"Aç",'Open link to "{resourceTitle}"':'"{resourceTitle}" bağlantısını aç',"Open navigation":"Gezinmeyi aç","Password is secure":"Parola güvenli","Pause slideshow":"Slayt sunumunu duraklat","People & Body":"İnsanlar ve Beden","Pick an emoji":"Bir emoji seçin","Please select a time zone:":"Lütfen bir saat dilimi seçin:",Previous:"Önceki","Related resources":"İlgili kaynaklar",Search:"Arama","Search results":"Arama sonuçları","Select a tag":"Bir etiket seçin",Settings:"Ayarlar","Settings navigation":"Gezinme ayarları","Show password":"Parolayı görüntüle","Smileys & Emotion":"İfadeler ve Duygular","Start slideshow":"Slayt sunumunu başlat",Submit:"Gönder",Symbols:"Simgeler","Travel & Places":"Gezi ve Yerler","Type to search time zone":"Saat dilimi aramak için yazmaya başlayın","Unable to search the group":"Grupta arama yapılamadı","Undo changes":"Değişiklikleri geri al",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'İleti yazın, birini anmak için @, otomatik emoji tamamlamak için ":" kullanın…'}},{locale:"uk",translations:{"{tag} (invisible)":"{tag} (невидимий)","{tag} (restricted)":"{tag} (обмежений)",Actions:"Дії",Activities:"Діяльність","Animals & Nature":"Тварини та природа","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Аватар {displayName}, {status}","Cancel changes":"Скасувати зміни","Change title":"Змінити назву",Choose:"ВиберітьВиберіть","Clear text":"Очистити текст",Close:"Закрити","Close modal":"Закрити модаль","Close navigation":"Закрити навігацію","Close sidebar":"Закрити бічну панель","Confirm changes":"Підтвердити зміни",Custom:"Власне","Edit item":"Редагувати елемент","External documentation for {title}":"Зовнішня документація для {title}",Favorite:"Улюблений",Flags:"Прапори","Food & Drink":"Їжа та напої","Frequently used":"Найчастіші",Global:"Глобальний","Go back to the list":"Повернутися до списку","Hide password":"Приховати пароль",items:"елементи","Message limit of {count} characters reached":"Вичерпано ліміт у {count} символів для повідомлення","More {dashboardItemType} …":"Більше {dashboardItemType}…",Next:"Вперед","No emoji found":"Емоційки відсутні","No results":"Відсутні результати",Objects:"Об'єкти",Open:"Відкрити","Open navigation":"Відкрити навігацію","Password is secure":"Пароль безпечний","Pause slideshow":"Пауза у показі слайдів","People & Body":"Люди та жести","Pick an emoji":"Виберіть емоційку","Please select a time zone:":"Виберіть часовий пояс:",Previous:"Назад",Search:"Пошук","Search results":"Результати пошуку","Select a tag":"Виберіть позначку",Settings:"Налаштування","Settings navigation":"Навігація у налаштуваннях","Show password":"Показати пароль","Smileys & Emotion":"Смайли та емоції","Start slideshow":"Почати показ слайдів",Submit:"Надіслати",Symbols:"Символи","Travel & Places":"Поїздки та місця","Type to search time zone":"Введіть для пошуку часовий пояс","Unable to search the group":"Неможливо шукати в групі","Undo changes":"Скасувати зміни","Write message, @ to mention someone, : for emoji autocompletion …":"Напишіть повідомлення, @, щоб згадати когось, : для автозаповнення емодзі…"}},{locale:"zh_CN",translations:{"{tag} (invisible)":"{tag} (不可见)","{tag} (restricted)":"{tag} (受限)",Actions:"行为",Activities:"活动","Animals & Nature":"动物 & 自然","Anything shared with the same group of people will show up here":"与同组用户分享的所有内容都会显示于此","Avatar of {displayName}":"{displayName}的头像","Avatar of {displayName}, {status}":"{displayName}的头像,{status}","Cancel changes":"取消更改","Change title":"更改标题",Choose:"选择","Clear text":"清除文本",Close:"关闭","Close modal":"关闭窗口","Close navigation":"关闭导航","Close sidebar":"关闭侧边栏","Confirm changes":"确认更改",Custom:"自定义","Edit item":"编辑项目","Error getting related resources":"获取相关资源时出错","Error parsing svg":"解析 svg 时出错","External documentation for {title}":"{title}的外部文档",Favorite:"喜爱",Flags:"旗帜","Food & Drink":"食物 & 饮品","Frequently used":"经常使用",Global:"全局","Go back to the list":"返回至列表","Hide password":"隐藏密码","Message limit of {count} characters reached":"已达到 {count} 个字符的消息限制","More items …":"更多项目…",Next:"下一个","No emoji found":"表情未找到","No results":"无结果",Objects:"物体",Open:"打开",'Open link to "{resourceTitle}"':'打开"{resourceTitle}"的连接',"Open navigation":"开启导航","Password is secure":"密码安全","Pause slideshow":"暂停幻灯片","People & Body":"人 & 身体","Pick an emoji":"选择一个表情","Please select a time zone:":"请选择一个时区:",Previous:"上一个","Related resources":"相关资源",Search:"搜索","Search results":"搜索结果","Select a tag":"选择一个标签",Settings:"设置","Settings navigation":"设置向导","Show password":"显示密码","Smileys & Emotion":"笑脸 & 情感","Start slideshow":"开始幻灯片",Submit:"提交",Symbols:"符号","Travel & Places":"旅游 & 地点","Type to search time zone":"打字以搜索时区","Unable to search the group":"无法搜索分组","Undo changes":"撤销更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'写信息,使用"@"来提及某人,使用":"进行表情符号自动完成 ...'}},{locale:"zh_HK",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然","Anything shared with the same group of people will show up here":"與同一組人共享的任何內容都會顯示在此處","Avatar of {displayName}":"{displayName} 的頭像","Avatar of {displayName}, {status}":"{displayName} 的頭像,{status}","Cancel changes":"取消更改","Change title":"更改標題",Choose:"選擇","Clear text":"清除文本",Close:"關閉","Close modal":"關閉模態","Close navigation":"關閉導航","Close sidebar":"關閉側邊欄","Confirm changes":"確認更改",Custom:"自定義","Edit item":"編輯項目","Error getting related resources":"獲取相關資源出錯","Error parsing svg":"解析 svg 時出錯","External documentation for {title}":"{title} 的外部文檔",Favorite:"喜愛",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"經常使用",Global:"全球的","Go back to the list":"返回清單","Hide password":"隱藏密碼","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制","More items …":"更多項目 …",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件",Open:"打開",'Open link to "{resourceTitle}"':"打開指向 “{resourceTitle}” 的鏈結","Open navigation":"開啟導航","Password is secure":"密碼是安全的","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號","Please select a time zone:":"請選擇時區:",Previous:"上一個","Related resources":"相關資源",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Show password":"顯示密碼","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Submit:"提交",Symbols:"標誌","Travel & Places":"旅遊與景點","Type to search time zone":"鍵入以搜索時區","Unable to search the group":"無法搜尋群組","Undo changes":"取消更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'寫訊息,使用 "@" 來指代某人,使用 ":" 用於表情符號自動填充 ...'}},{locale:"zh_TW",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然",Choose:"選擇",Close:"關閉",Custom:"自定義",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"最近使用","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Symbols:"標誌","Travel & Places":"旅遊與景點","Unable to search the group":"無法搜尋群組","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}}].forEach((e=>{const t={};for(const a in e.translations)e.translations[a].pluralId?t[a]={msgid:a,msgid_plural:e.translations[a].pluralId,msgstr:e.translations[a].msgstr}:t[a]={msgid:a,msgstr:[e.translations[a]]};n.addTranslation(e.locale,{translations:{"":t}})}));const i=n.build(),r=(i.ngettext.bind(i),i.gettext.bind(i))},723:(e,t,a)=>{"use strict";a.d(t,{Z:()=>i});var o=a(2734),n=a.n(o);const i={before(){this.$slots.default&&""!==this.text.trim()||(n().util.warn("".concat(this.$options.name," cannot be empty and requires a meaningful text content"),this),this.$destroy(),this.$el.remove())},beforeUpdate(){this.text=this.getText()},data(){return{text:this.getText()}},computed:{isLongText(){return this.text&&this.text.trim().length>20}},methods:{getText(){return this.$slots.default?this.$slots.default[0].text.trim():""}}}},1139:(e,t,a)=>{"use strict";a.d(t,{Z:()=>i});var o=a(723);const n=function(e,t){let a=e.$parent;for(;a;){if(a.$options.name===t)return a;a=a.$parent}},i={mixins:[o.Z],props:{icon:{type:String,default:""},name:{type:String,default:""},title:{type:String,default:""},closeAfterClick:{type:Boolean,default:!1},ariaLabel:{type:String,default:""},ariaHidden:{type:Boolean,default:null}},emits:["click"],computed:{isIconUrl(){try{return new URL(this.icon)}catch(e){return!1}}},methods:{onClick(e){if(this.$emit("click",e),this.closeAfterClick){const e=n(this,"NcActions");e&&e.closeMenu&&e.closeMenu(!1)}}}}},1205:(e,t,a)=>{"use strict";a.d(t,{Z:()=>o});const o=e=>Math.random().toString(36).replace(/[^a-z]+/g,"").slice(0,e||5)},1206:(e,t,a)=>{"use strict";a.d(t,{L:()=>o});a(4505);const o=function(){return Object.assign(window,{_nc_focus_trap:window._nc_focus_trap||[]}),window._nc_focus_trap}},3490:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),n=a.n(o),i=a(3645),r=a.n(i)()(n());r.push([e.id,".material-design-icon[data-v-63ee0e66]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.active[data-v-63ee0e66]{background-color:var(--color-background-hover);border-radius:6px;padding:0}.action-link[data-v-63ee0e66]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;box-sizing:border-box;cursor:pointer;white-space:nowrap;color:var(--color-main-text);border:0;border-radius:0;background-color:rgba(0,0,0,0);box-shadow:none;font-weight:normal;font-size:var(--default-font-size);line-height:44px}.action-link>span[data-v-63ee0e66]{cursor:pointer;white-space:nowrap}.action-link__icon[data-v-63ee0e66]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-link[data-v-63ee0e66] .material-design-icon{width:44px;height:44px;opacity:1}.action-link[data-v-63ee0e66] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-link p[data-v-63ee0e66]{max-width:220px;line-height:1.6em;padding:10.8px 0;cursor:pointer;text-align:left;overflow:hidden;text-overflow:ellipsis}.action-link__longtext[data-v-63ee0e66]{cursor:pointer;white-space:pre-wrap}.action-link__name[data-v-63ee0e66]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/assets/action.scss","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCiBC,2BACC,8CAAA,CACA,iBAAA,CACA,SAAA,CAqBF,8BACC,YAAA,CACA,sBAAA,CAEA,UAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,kBCxBY,CDyBZ,qBAAA,CAEA,cAAA,CACA,kBAAA,CAEA,4BAAA,CACA,QAAA,CACA,eAAA,CACA,8BAAA,CACA,eAAA,CAEA,kBAAA,CACA,kCAAA,CACA,gBC9Ce,CDgDf,mCACC,cAAA,CACA,kBAAA,CAGD,oCACC,UCtDc,CDuDd,WCvDc,CDwDd,SCrCY,CDsCZ,+BAAA,CACA,oBCtDS,CDuDT,2BAAA,CAGD,oDACC,UC/Dc,CDgEd,WChEc,CDiEd,SC9CY,CDgDZ,+EACC,qBAAA,CAKF,gCACC,eAAA,CACA,iBAAA,CAGA,gBAAA,CAEA,cAAA,CACA,eAAA,CAGA,eAAA,CACA,sBAAA,CAGD,wCACC,cAAA,CAEA,oBAAA,CAGD,oCACC,gBAAA,CACA,sBAAA,CACA,eAAA,CACA,kBAAA,CACA,cAAA,CACA,oBAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Marco Ambrosini <marcoambrosini@icloud.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n@mixin action-active {\n\tli {\n\t\t&.active {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t\tborder-radius: 6px;\n\t\t\tpadding: 0;\n\t\t}\n\t}\n}\n\n@mixin action--disabled {\n\t.action--disabled {\n\t\tpointer-events: none;\n\t\topacity: $opacity_disabled;\n\t\t&:hover, &:focus {\n\t\t\tcursor: default;\n\t\t\topacity: $opacity_disabled;\n\t\t}\n\t\t& * {\n\t\t\topacity: 1 !important;\n\t\t}\n\t}\n}\n\n\n@mixin action-item($name) {\n\t.action-#{$name} {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tpadding-right: $icon-margin;\n\t\tbox-sizing: border-box; // otherwise router-link overflows in Firefox\n\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\n\t\tcolor: var(--color-main-text);\n\t\tborder: 0;\n\t\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\t\tbackground-color: transparent;\n\t\tbox-shadow: none;\n\n\t\tfont-weight: normal;\n\t\tfont-size: var(--default-font-size);\n\t\tline-height: $clickable-area;\n\n\t\t& > span {\n\t\t\tcursor: pointer;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t&__icon {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\t\t\tbackground-position: $icon-margin center;\n\t\t\tbackground-size: $icon-size;\n\t\t\tbackground-repeat: no-repeat;\n\t\t}\n\n\t\t&:deep(.material-design-icon) {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\n\t\t\t.material-design-icon__svg {\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t}\n\n\t\t// long text area\n\t\tp {\n\t\t\tmax-width: 220px;\n\t\t\tline-height: 1.6em;\n\n\t\t\t// 14px are currently 1em line-height. Mixing units as '44px - 1.6em' does not work.\n\t\t\tpadding: #{math.div($clickable-area - 1.6 * 14px, 2)} 0;\n\n\t\t\tcursor: pointer;\n\t\t\ttext-align: left;\n\n\t\t\t// in case there are no spaces like long email addresses\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&__longtext {\n\t\t\tcursor: pointer;\n\t\t\t// allow the use of `\\n`\n\t\t\twhite-space: pre-wrap;\n\t\t}\n\n\t\t&__name {\n\t\t\tfont-weight: bold;\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\tmax-width: 100%;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=r},8541:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),n=a.n(o),i=a(3645),r=a.n(i)()(n());r.push([e.id,".material-design-icon[data-v-74ff8099]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.active[data-v-74ff8099]{background-color:var(--color-background-hover);border-radius:6px;padding:0}.action-router[data-v-74ff8099]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;box-sizing:border-box;cursor:pointer;white-space:nowrap;color:var(--color-main-text);border:0;border-radius:0;background-color:rgba(0,0,0,0);box-shadow:none;font-weight:normal;font-size:var(--default-font-size);line-height:44px}.action-router>span[data-v-74ff8099]{cursor:pointer;white-space:nowrap}.action-router__icon[data-v-74ff8099]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-router[data-v-74ff8099] .material-design-icon{width:44px;height:44px;opacity:1}.action-router[data-v-74ff8099] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-router p[data-v-74ff8099]{max-width:220px;line-height:1.6em;padding:10.8px 0;cursor:pointer;text-align:left;overflow:hidden;text-overflow:ellipsis}.action-router__longtext[data-v-74ff8099]{cursor:pointer;white-space:pre-wrap}.action-router__name[data-v-74ff8099]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}.action--disabled[data-v-74ff8099]{pointer-events:none;opacity:.5}.action--disabled[data-v-74ff8099]:hover,.action--disabled[data-v-74ff8099]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-74ff8099]{opacity:1 !important}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/assets/action.scss","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCiBC,2BACC,8CAAA,CACA,iBAAA,CACA,SAAA,CAqBF,gCACC,YAAA,CACA,sBAAA,CAEA,UAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,kBCxBY,CDyBZ,qBAAA,CAEA,cAAA,CACA,kBAAA,CAEA,4BAAA,CACA,QAAA,CACA,eAAA,CACA,8BAAA,CACA,eAAA,CAEA,kBAAA,CACA,kCAAA,CACA,gBC9Ce,CDgDf,qCACC,cAAA,CACA,kBAAA,CAGD,sCACC,UCtDc,CDuDd,WCvDc,CDwDd,SCrCY,CDsCZ,+BAAA,CACA,oBCtDS,CDuDT,2BAAA,CAGD,sDACC,UC/Dc,CDgEd,WChEc,CDiEd,SC9CY,CDgDZ,iFACC,qBAAA,CAKF,kCACC,eAAA,CACA,iBAAA,CAGA,gBAAA,CAEA,cAAA,CACA,eAAA,CAGA,eAAA,CACA,sBAAA,CAGD,0CACC,cAAA,CAEA,oBAAA,CAGD,sCACC,gBAAA,CACA,sBAAA,CACA,eAAA,CACA,kBAAA,CACA,cAAA,CACA,oBAAA,CA3FF,mCACC,mBAAA,CACA,UCMiB,CDLjB,kFACC,cAAA,CACA,UCGgB,CDDjB,qCACC,oBAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Marco Ambrosini <marcoambrosini@icloud.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n@mixin action-active {\n\tli {\n\t\t&.active {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t\tborder-radius: 6px;\n\t\t\tpadding: 0;\n\t\t}\n\t}\n}\n\n@mixin action--disabled {\n\t.action--disabled {\n\t\tpointer-events: none;\n\t\topacity: $opacity_disabled;\n\t\t&:hover, &:focus {\n\t\t\tcursor: default;\n\t\t\topacity: $opacity_disabled;\n\t\t}\n\t\t& * {\n\t\t\topacity: 1 !important;\n\t\t}\n\t}\n}\n\n\n@mixin action-item($name) {\n\t.action-#{$name} {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tpadding-right: $icon-margin;\n\t\tbox-sizing: border-box; // otherwise router-link overflows in Firefox\n\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\n\t\tcolor: var(--color-main-text);\n\t\tborder: 0;\n\t\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\t\tbackground-color: transparent;\n\t\tbox-shadow: none;\n\n\t\tfont-weight: normal;\n\t\tfont-size: var(--default-font-size);\n\t\tline-height: $clickable-area;\n\n\t\t& > span {\n\t\t\tcursor: pointer;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t&__icon {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\t\t\tbackground-position: $icon-margin center;\n\t\t\tbackground-size: $icon-size;\n\t\t\tbackground-repeat: no-repeat;\n\t\t}\n\n\t\t&:deep(.material-design-icon) {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\n\t\t\t.material-design-icon__svg {\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t}\n\n\t\t// long text area\n\t\tp {\n\t\t\tmax-width: 220px;\n\t\t\tline-height: 1.6em;\n\n\t\t\t// 14px are currently 1em line-height. Mixing units as '44px - 1.6em' does not work.\n\t\t\tpadding: #{math.div($clickable-area - 1.6 * 14px, 2)} 0;\n\n\t\t\tcursor: pointer;\n\t\t\ttext-align: left;\n\n\t\t\t// in case there are no spaces like long email addresses\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&__longtext {\n\t\t\tcursor: pointer;\n\t\t\t// allow the use of `\\n`\n\t\t\twhite-space: pre-wrap;\n\t\t}\n\n\t\t&__name {\n\t\t\tfont-weight: bold;\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\tmax-width: 100%;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=r},4825:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),n=a.n(o),i=a(3645),r=a.n(i)()(n());r.push([e.id,".material-design-icon[data-v-29452b76]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-items[data-v-29452b76]{display:flex;align-items:center}.action-items>button[data-v-29452b76]{margin-right:7px}.action-item[data-v-29452b76]{--open-background-color: var(--color-background-hover, $action-background-hover);position:relative;display:inline-block}.action-item.action-item--primary[data-v-29452b76]{--open-background-color: var(--color-primary-element-hover)}.action-item.action-item--secondary[data-v-29452b76]{--open-background-color: var(--color-primary-element-light-hover)}.action-item.action-item--error[data-v-29452b76]{--open-background-color: var(--color-error-hover)}.action-item.action-item--warning[data-v-29452b76]{--open-background-color: var(--color-warning-hover)}.action-item.action-item--success[data-v-29452b76]{--open-background-color: var(--color-success-hover)}.action-item.action-item--tertiary-no-background[data-v-29452b76]{--open-background-color: transparent}.action-item.action-item--open .action-item__menutoggle[data-v-29452b76]{background-color:var(--open-background-color)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,+BACC,YAAA,CACA,kBAAA,CAGA,sCACC,gBAAA,CAIF,8BACC,gFAAA,CACA,iBAAA,CACA,oBAAA,CAEA,mDACC,2DAAA,CAGD,qDACC,iEAAA,CAGD,iDACC,iDAAA,CAGD,mDACC,mDAAA,CAGD,mDACC,mDAAA,CAGD,kEACC,oCAAA,CAGD,yEACC,6CAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// Inline buttons\n.action-items {\n\tdisplay: flex;\n\talign-items: center;\n\n\t// Spacing between buttons\n\t& > button {\n\t\tmargin-right: math.div($icon-margin, 2);\n\t}\n}\n\n.action-item {\n\t--open-background-color: var(--color-background-hover, $action-background-hover);\n\tposition: relative;\n\tdisplay: inline-block;\n\n\t&.action-item--primary {\n\t\t--open-background-color: var(--color-primary-element-hover);\n\t}\n\n\t&.action-item--secondary {\n\t\t--open-background-color: var(--color-primary-element-light-hover);\n\t}\n\n\t&.action-item--error {\n\t\t--open-background-color: var(--color-error-hover);\n\t}\n\n\t&.action-item--warning {\n\t\t--open-background-color: var(--color-warning-hover);\n\t}\n\n\t&.action-item--success {\n\t\t--open-background-color: var(--color-success-hover);\n\t}\n\n\t&.action-item--tertiary-no-background {\n\t\t--open-background-color: transparent;\n\t}\n\n\t&.action-item--open .action-item__menutoggle {\n\t\tbackground-color: var(--open-background-color);\n\t}\n}\n"],sourceRoot:""}]);const s=r},4946:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),n=a.n(o),i=a(3645),r=a.n(i)()(n());r.push([e.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper{border-radius:var(--border-radius-large);overflow:hidden}.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper .v-popper__inner{border-radius:var(--border-radius-large);padding:4px;max-height:calc(50vh - 16px);overflow:auto}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcActions/NcActions.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCJD,kFACC,wCAAA,CACA,eAAA,CAEA,mGACC,wCAAA,CACA,WAAA,CACA,4BAAA,CACA,aAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n// We overwrote the popover base class, so we can style\n// the popover__inner for actions only.\n.v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper {\n\tborder-radius: var(--border-radius-large);\n\toverflow:hidden;\n\n\t.v-popper__inner {\n\t\tborder-radius: var(--border-radius-large);\n\t\tpadding: 4px;\n\t\tmax-height: calc(50vh - 16px);\n\t\toverflow: auto;\n\t}\n}\n"],sourceRoot:""}]);const s=r},8066:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),n=a.n(o),i=a(3645),r=a.n(i)()(n());r.push([e.id,".material-design-icon[data-v-4daa022a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-crumb[data-v-4daa022a]{background-image:none;display:inline-flex;height:44px;padding:0}.vue-crumb[data-v-4daa022a]:last-child{max-width:210px;font-weight:bold}.vue-crumb:last-child .vue-crumb__separator[data-v-4daa022a]{display:none}.vue-crumb>a[data-v-4daa022a]:hover,.vue-crumb>a[data-v-4daa022a]:focus{background-color:var(--color-background-dark);color:var(--color-main-text)}.vue-crumb--hidden[data-v-4daa022a]{display:none}.vue-crumb.vue-crumb--hovered>a[data-v-4daa022a]{background-color:var(--color-background-dark);color:var(--color-main-text)}.vue-crumb__separator[data-v-4daa022a]{padding:0;color:var(--color-text-maxcontrast)}.vue-crumb>a[data-v-4daa022a]{overflow:hidden;color:var(--color-text-maxcontrast);padding:12px;min-width:44px;max-width:100%;border-radius:var(--border-radius-pill);align-items:center;display:inline-flex;justify-content:center}.vue-crumb>a>span[data-v-4daa022a]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item{max-width:100%}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item .button-vue{padding:0 4px 0 16px}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item .button-vue__wrapper{flex-direction:row-reverse}.vue-crumb[data-v-4daa022a]:not(.dropdown) .action-item.action-item--open .action-item__menutoggle{background-color:var(--color-background-dark);color:var(--color-main-text)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcBreadcrumb/NcBreadcrumb.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,4BACC,qBAAA,CACA,mBAAA,CACA,WCmBgB,CDlBhB,SAAA,CAEA,uCACC,eAAA,CACA,gBAAA,CAGA,6DACC,YAAA,CAKF,wEAEC,6CAAA,CACA,4BAAA,CAGD,oCACC,YAAA,CAGD,iDACC,6CAAA,CACA,4BAAA,CAGD,uCACC,SAAA,CACA,mCAAA,CAGD,8BACC,eAAA,CACA,mCAAA,CACA,YAAA,CACA,cCnBe,CDoBf,cAAA,CACA,uCAAA,CACA,kBAAA,CACA,mBAAA,CACA,sBAAA,CAEA,mCACC,eAAA,CACA,sBAAA,CACA,kBAAA,CAMF,wDAEC,cAAA,CAEA,oEACC,oBAAA,CAEA,6EACC,0BAAA,CAKF,mGACC,6CAAA,CACA,4BAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.vue-crumb {\n\tbackground-image: none;\n\tdisplay: inline-flex;\n\theight: $clickable-area;\n\tpadding: 0;\n\n\t&:last-child {\n\t\tmax-width: 210px;\n\t\tfont-weight: bold;\n\n\t\t// Don't show breadcrumb separator for last crumb\n\t\t.vue-crumb__separator {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t// Hover and focus effect for crumbs\n\t& > a:hover,\n\t& > a:focus {\n\t\tbackground-color: var(--color-background-dark);\n\t\tcolor: var(--color-main-text);\n\t}\n\n\t&--hidden {\n\t\tdisplay: none;\n\t}\n\n\t&#{&}--hovered > a {\n\t\tbackground-color: var(--color-background-dark);\n\t\tcolor: var(--color-main-text);\n\t}\n\n\t&__separator {\n\t\tpadding: 0;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\t> a {\n\t\toverflow: hidden;\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tpadding: 12px;\n\t\tmin-width: $clickable-area;\n\t\tmax-width: 100%;\n\t\tborder-radius: var(--border-radius-pill);\n\t\talign-items: center;\n\t\tdisplay: inline-flex;\n\t\tjustify-content: center;\n\n\t\t> span {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n\n\t// Adjust action item appearance for crumbs with actions\n\t// to match other crumbs\n\t&:not(.dropdown) :deep(.action-item) {\n\t\t// Adjustments necessary to correctly shrink on small screens\n\t\tmax-width: 100%;\n\n\t\t.button-vue {\n\t\t\tpadding: 0 4px 0 16px;\n\n\t\t\t&__wrapper {\n\t\t\t\tflex-direction: row-reverse;\n\t\t\t}\n\t\t}\n\n\t\t// Adjust the background of the last crumb when the action is open\n\t\t&.action-item--open .action-item__menutoggle {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tcolor: var(--color-main-text);\n\t\t}\n\t}\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=r},1699:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),n=a.n(o),i=a(3645),r=a.n(i)()(n());r.push([e.id,".material-design-icon[data-v-26565e7c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.breadcrumb[data-v-26565e7c]{width:100%;flex-grow:1;display:inline-flex}.breadcrumb--collapsed .vue-crumb[data-v-26565e7c]:last-child{min-width:100px;flex-shrink:1}.breadcrumb nav[data-v-26565e7c]{flex-shrink:1;max-width:100%;min-width:228px}.breadcrumb .breadcrumb__crumbs[data-v-26565e7c]{max-width:100%}.breadcrumb .breadcrumb__crumbs[data-v-26565e7c],.breadcrumb .breadcrumb__actions[data-v-26565e7c]{display:inline-flex}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcBreadcrumbs/NcBreadcrumbs.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,6BACC,UAAA,CACA,WAAA,CACA,mBAAA,CAEA,8DACC,eAAA,CACA,aAAA,CAGD,iCACC,aAAA,CACA,cAAA,CAKA,eAAA,CAGD,iDACC,cAAA,CAGD,mGAEC,mBAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n.breadcrumb {\n\twidth: 100%;\n\tflex-grow: 1;\n\tdisplay: inline-flex;\n\n\t&--collapsed .vue-crumb:last-child {\n\t\tmin-width: 100px;\n\t\tflex-shrink: 1;\n\t}\n\n\tnav {\n\t\tflex-shrink: 1;\n\t\tmax-width: 100%;\n\t\t/**\n\t\t * This value is given by the min-width of the last crumb (100px) plus\n\t\t * two times the width of a crumb with an icon (first crumb and hidden crumbs actions).\n\t\t */\n\t\tmin-width: 228px;\n\t}\n\n\t& #{&}__crumbs {\n\t\tmax-width: 100%;\n\t}\n\n\t& #{&}__crumbs,\n\t& #{&}__actions {\n\t\tdisplay: inline-flex;\n\t}\n}\n"],sourceRoot:""}]);const s=r},7196:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),n=a.n(o),i=a(3645),r=a.n(i)()(n());r.push([e.id,".material-design-icon[data-v-4d05be2c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue[data-v-4d05be2c]{position:relative;width:fit-content;overflow:hidden;border:0;padding:0;font-size:var(--default-font-size);font-weight:bold;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:22px;transition-property:color,border-color,background-color;transition-duration:.1s;transition-timing-function:linear;color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue *[data-v-4d05be2c],.button-vue span[data-v-4d05be2c]{cursor:pointer}.button-vue[data-v-4d05be2c]:focus{outline:none}.button-vue[data-v-4d05be2c]:disabled{cursor:default;opacity:.5;filter:saturate(0.7)}.button-vue:disabled *[data-v-4d05be2c]{cursor:default}.button-vue[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-light-hover)}.button-vue[data-v-4d05be2c]:active{background-color:var(--color-primary-element-light)}.button-vue__wrapper[data-v-4d05be2c]{display:inline-flex;align-items:center;justify-content:center;width:100%}.button-vue__icon[data-v-4d05be2c]{height:44px;width:44px;min-height:44px;min-width:44px;display:flex;justify-content:center;align-items:center}.button-vue__text[data-v-4d05be2c]{font-weight:bold;margin-bottom:1px;padding:2px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.button-vue--icon-only[data-v-4d05be2c]{width:44px !important}.button-vue--text-only[data-v-4d05be2c]{padding:0 12px}.button-vue--text-only .button-vue__text[data-v-4d05be2c]{margin-left:4px;margin-right:4px}.button-vue--icon-and-text[data-v-4d05be2c]{padding:0 16px 0 4px}.button-vue--wide[data-v-4d05be2c]{width:100%}.button-vue[data-v-4d05be2c]:focus-visible{outline:2px solid var(--color-main-text) !important}.button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{outline:2px solid var(--color-primary-element-text);border-radius:var(--border-radius);background-color:rgba(0,0,0,0)}.button-vue--vue-primary[data-v-4d05be2c]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.button-vue--vue-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-hover)}.button-vue--vue-primary[data-v-4d05be2c]:active{background-color:var(--color-primary-element)}.button-vue--vue-secondary[data-v-4d05be2c]{color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue--vue-secondary[data-v-4d05be2c]:hover:not(:disabled){color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light-hover)}.button-vue--vue-tertiary[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color);background-color:var(--color-background-hover)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{color:var(--color-primary-element-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-success[data-v-4d05be2c]{background-color:var(--color-success);color:#fff}.button-vue--vue-success[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-success-hover)}.button-vue--vue-success[data-v-4d05be2c]:active{background-color:var(--color-success)}.button-vue--vue-warning[data-v-4d05be2c]{background-color:var(--color-warning);color:#fff}.button-vue--vue-warning[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-warning-hover)}.button-vue--vue-warning[data-v-4d05be2c]:active{background-color:var(--color-warning)}.button-vue--vue-error[data-v-4d05be2c]{background-color:var(--color-error);color:#fff}.button-vue--vue-error[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-error-hover)}.button-vue--vue-error[data-v-4d05be2c]:active{background-color:var(--color-error)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcButton/NcButton.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,QAAA,CACA,SAAA,CACA,kCAAA,CACA,gBAAA,CACA,eCcgB,CDbhB,cCagB,CDZhB,YAAA,CACA,kBAAA,CACA,sBAAA,CAGA,cAAA,CAKA,kBAAA,CACA,uDAAA,CACA,uBAAA,CACA,iCAAA,CAkBA,6CAAA,CACA,mDAAA,CA1BA,iEAEC,cAAA,CAQD,mCACC,YAAA,CAGD,sCACC,cAAA,CAIA,UCIiB,CDFjB,oBAAA,CALA,wCACC,cAAA,CAUF,kDACC,yDAAA,CAKD,oCACC,mDAAA,CAGD,sCACC,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAGD,mCACC,WCvCe,CDwCf,UCxCe,CDyCf,eCzCe,CD0Cf,cC1Ce,CD2Cf,YAAA,CACA,sBAAA,CACA,kBAAA,CAGD,mCACC,gBAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CAID,wCACC,qBAAA,CAID,wCACC,cAAA,CACA,0DACC,eAAA,CACA,gBAAA,CAKF,4CACC,oBAAA,CAID,mCACC,UAAA,CAGD,2CACC,mDAAA,CACA,+EACC,mDAAA,CACA,kCAAA,CACA,8BAAA,CAOF,0CACC,6CAAA,CACA,uCAAA,CACA,+DACC,mDAAA,CAID,iDACC,6CAAA,CAKF,4CACC,6CAAA,CACA,mDAAA,CACA,iEACC,6CAAA,CACA,yDAAA,CAKF,2CACC,4BAAA,CACA,8BAAA,CACA,gEACC,6BAAA,CACA,8CAAA,CAKF,yDACC,4BAAA,CACA,8BAAA,CACA,8EACC,8BAAA,CAKF,sDACC,uCAAA,CACA,8BAAA,CAEA,2EACC,8BAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,wCACC,mCAAA,CACA,UAAA,CACA,6DACC,yCAAA,CAID,+CACC,mCAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.button-vue {\n\tposition: relative;\n\twidth: fit-content;\n\toverflow: hidden;\n\tborder: 0;\n\tpadding: 0;\n\tfont-size: var(--default-font-size);\n\tfont-weight: bold;\n\tmin-height: $clickable-area;\n\tmin-width: $clickable-area;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t// Cursor pointer on element and all children\n\tcursor: pointer;\n\t& *,\n\tspan {\n\t\tcursor: pointer;\n\t}\n\tborder-radius: math.div($clickable-area, 2);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: 0.1s;\n\ttransition-timing-function: linear;\n\n\t// No outline feedback for focus. Handled with a toggled class in js (see data)\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t\t& * {\n\t\t\tcursor: default;\n\t\t}\n\t\topacity: $opacity_disabled;\n\t\t// Gives a wash out effect\n\t\tfilter: saturate($opacity_normal);\n\t}\n\n\t// Default button type\n\tcolor: var(--color-primary-element-light-text);\n\tbackground-color: var(--color-primary-element-light);\n\t&:hover:not(:disabled) {\n\t\tbackground-color: var(--color-primary-element-light-hover);\n\t}\n\n\t// Back to the default color for this button when active\n\t// TODO: add ripple effect\n\t&:active {\n\t\tbackground-color: var(--color-primary-element-light);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t}\n\n\t&__icon {\n\t\theight: $clickable-area;\n\t\twidth: $clickable-area;\n\t\tmin-height: $clickable-area;\n\t\tmin-width: $clickable-area;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n\n\t&__text {\n\t\tfont-weight: bold;\n\t\tmargin-bottom: 1px;\n\t\tpadding: 2px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t// Icon-only button\n\t&--icon-only {\n\t\twidth: $clickable-area !important;\n\t}\n\n\t// Text-only button\n\t&--text-only {\n\t\tpadding: 0 12px;\n\t\t& .button-vue__text {\n\t\t\tmargin-left: 4px;\n\t\t\tmargin-right: 4px;\n\t\t}\n\t}\n\n\t// Icon and text button\n\t&--icon-and-text {\n\t\tpadding: 0 16px 0 4px;\n\t}\n\n\t// Wide button spans the whole width of the container\n\t&--wide {\n\t\twidth: 100%;\n\t}\n\n\t&:focus-visible {\n\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t&.button-vue--vue-tertiary-on-primary {\n\t\t\toutline: 2px solid var(--color-primary-element-text);\n\t\t\tborder-radius: var(--border-radius);\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Button types\n\n\t// Primary\n\t&--vue-primary {\n\t\tbackground-color: var(--color-primary-element);\n\t\tcolor: var(--color-primary-element-text);\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t}\n\t}\n\n\t// Secondary\n\t&--vue-secondary {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-light);\n\t\t&:hover:not(:disabled) {\n\t\t\tcolor: var(--color-primary-element-light-text);\n\t\t\tbackground-color: var(--color-primary-element-light-hover);\n\t\t}\n\t}\n\n\t// Tertiary\n\t&--vue-tertiary {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color);\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Tertiary, no background\n\t&--vue-tertiary-no-background {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Tertiary on primary color (like the header)\n\t&--vue-tertiary-on-primary {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: transparent;\n\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Success\n\t&--vue-success {\n\t\tbackground-color: var(--color-success);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-success-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// : add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t}\n\n\t// Warning\n\t&--vue-warning {\n\t\tbackground-color: var(--color-warning);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-warning-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-warning);\n\t\t}\n\t}\n\n\t// Error\n\t&--vue-error {\n\t\tbackground-color: var(--color-error);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-error-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const s=r},1625:(e,t,a)=>{"use strict";a.d(t,{Z:()=>s});var o=a(7537),n=a.n(o),i=a(3645),r=a.n(i)()(n());r.push([e.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.resize-observer{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:rgba(0,0,0,0);pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper--theme-dropdown.v-popper__popper{z-index:100000;top:0;left:0;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-dropdown.v-popper__popper .v-popper__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius-large);overflow:hidden;background:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{left:-10px;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity var(--animation-quick);opacity:1}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcPopover/NcPopover.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,iBACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,aAAA,CACA,eAAA,CACA,SAAA,CAGD,wBACC,aAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,mBAAA,CACA,UAAA,CAMA,2CACC,cAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CAEA,sDAAA,CAEA,4DACC,SAAA,CACA,4BAAA,CACA,wCAAA,CACA,eAAA,CACA,uCAAA,CAGD,sEACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBA1BW,CA6BZ,kGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAGD,qGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAGD,oGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAGD,mGACC,WAAA,CACA,oBAAA,CACA,8CAAA,CAGD,6DACC,iBAAA,CACA,2EAAA,CACA,SAAA,CAGD,8DACC,kBAAA,CACA,yCAAA,CACA,SAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.resize-observer {\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\tz-index:-1;\n\twidth:100%;\n\theight:100%;\n\tborder:none;\n\tbackground-color:transparent;\n\tpointer-events:none;\n\tdisplay:block;\n\toverflow:hidden;\n\topacity:0\n}\n\n.resize-observer object {\n\tdisplay:block;\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\theight:100%;\n\twidth:100%;\n\toverflow:hidden;\n\tpointer-events:none;\n\tz-index:-1\n}\n\n$arrow-width: 10px;\n\n.v-popper--theme-dropdown {\n\t&.v-popper__popper {\n\t\tz-index: 100000;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tdisplay: block !important;\n\n\t\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t\t.v-popper__inner {\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-main-text);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t\toverflow: hidden;\n\t\t\tbackground: var(--color-main-background);\n\t\t}\n\n\t\t.v-popper__arrow-container {\n\t\t\tposition: absolute;\n\t\t\tz-index: 1;\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\tborder-style: solid;\n\t\t\tborder-color: transparent;\n\t\t\tborder-width: $arrow-width;\n\t\t}\n\n\t\t&[data-popper-placement^='top'] .v-popper__arrow-container {\n\t\t\tbottom: -$arrow-width;\n\t\t\tborder-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\n\t\t\ttop: -$arrow-width;\n\t\t\tborder-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='right'] .v-popper__arrow-container {\n\t\t\tleft: -$arrow-width;\n\t\t\tborder-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='left'] .v-popper__arrow-container {\n\t\t\tright: -$arrow-width;\n\t\t\tborder-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\n\t\t}\n\n\t\t&[aria-hidden='true'] {\n\t\t\tvisibility: hidden;\n\t\t\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&[aria-hidden='false'] {\n\t\t\tvisibility: visible;\n\t\t\ttransition: opacity var(--animation-quick);\n\t\t\topacity: 1;\n\t\t}\n\t}\n}\n\n"],sourceRoot:""}]);const s=r},3645:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var a="",o=void 0!==t[5];return t[4]&&(a+="@supports (".concat(t[4],") {")),t[2]&&(a+="@media ".concat(t[2]," {")),o&&(a+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),a+=e(t),o&&(a+="}"),t[2]&&(a+="}"),t[4]&&(a+="}"),a})).join("")},t.i=function(e,a,o,n,i){"string"==typeof e&&(e=[[null,e,void 0]]);var r={};if(o)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(r[l]=!0)}for(var c=0;c<e.length;c++){var d=[].concat(e[c]);o&&r[d[0]]||(void 0!==i&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=i),a&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=a):d[2]=a),n&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=n):d[4]="".concat(n)),t.push(d))}},t}},7537:e=>{"use strict";e.exports=function(e){var t=e[1],a=e[3];if(!a)return t;if("function"==typeof btoa){var o=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),n="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(o),i="/*# ".concat(n," */");return[t].concat([i]).join("\n")}return[t].join("\n")}},3379:e=>{"use strict";var t=[];function a(e){for(var a=-1,o=0;o<t.length;o++)if(t[o].identifier===e){a=o;break}return a}function o(e,o){for(var i={},r=[],s=0;s<e.length;s++){var l=e[s],c=o.base?l[0]+o.base:l[0],d=i[c]||0,u="".concat(c," ").concat(d);i[c]=d+1;var p=a(u),m={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==p)t[p].references++,t[p].updater(m);else{var A=n(m,o);o.byIndex=s,t.splice(s,0,{identifier:u,updater:A,references:1})}r.push(u)}return r}function n(e,t){var a=t.domAPI(t);a.update(e);return function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;a.update(e=t)}else a.remove()}}e.exports=function(e,n){var i=o(e=e||[],n=n||{});return function(e){e=e||[];for(var r=0;r<i.length;r++){var s=a(i[r]);t[s].references--}for(var l=o(e,n),c=0;c<i.length;c++){var d=a(i[c]);0===t[d].references&&(t[d].updater(),t.splice(d,1))}i=l}}},569:e=>{"use strict";var t={};e.exports=function(e,a){var o=function(e){if(void 0===t[e]){var a=document.querySelector(e);if(window.HTMLIFrameElement&&a instanceof window.HTMLIFrameElement)try{a=a.contentDocument.head}catch(e){a=null}t[e]=a}return t[e]}(e);if(!o)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");o.appendChild(a)}},9216:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},3565:(e,t,a)=>{"use strict";e.exports=function(e){var t=a.nc;t&&e.setAttribute("nonce",t)}},7795:e=>{"use strict";e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(a){!function(e,t,a){var o="";a.supports&&(o+="@supports (".concat(a.supports,") {")),a.media&&(o+="@media ".concat(a.media," {"));var n=void 0!==a.layer;n&&(o+="@layer".concat(a.layer.length>0?" ".concat(a.layer):""," {")),o+=a.css,n&&(o+="}"),a.media&&(o+="}"),a.supports&&(o+="}");var i=a.sourceMap;i&&"undefined"!=typeof btoa&&(o+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),t.styleTagTransform(o,e,t.options)}(t,e,a)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},4589:e=>{"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},9158:()=>{},5727:()=>{},6591:()=>{},1753:()=>{},2102:()=>{},2405:()=>{},1900:(e,t,a)=>{"use strict";function o(e,t,a,o,n,i,r,s){var l,c="function"==typeof e?e.options:e;if(t&&(c.render=t,c.staticRenderFns=a,c._compiled=!0),o&&(c.functional=!0),i&&(c._scopeId="data-v-"+i),r?(l=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),n&&n.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},c._ssrRegister=l):n&&(l=s?function(){n.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:n),l)if(c.functional){c._injectStyles=l;var d=c.render;c.render=function(e,t){return l.call(t),d(e,t)}}else{var u=c.beforeCreate;c.beforeCreate=u?[].concat(u,l):[l]}return{exports:e,options:c}}a.d(t,{Z:()=>o})},542:e=>{"use strict";e.exports=__webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.cjs")},7931:e=>{"use strict";e.exports=__webpack_require__(/*! @nextcloud/l10n/gettext */ "./node_modules/@nextcloud/l10n/dist/gettext.js")},3465:e=>{"use strict";e.exports=__webpack_require__(/*! debounce */ "./node_modules/debounce/index.js")},9454:e=>{"use strict";e.exports=__webpack_require__(/*! floating-vue */ "./node_modules/floating-vue/dist/floating-vue.es.js")},4505:e=>{"use strict";e.exports=__webpack_require__(/*! focus-trap */ "./node_modules/focus-trap/dist/focus-trap.esm.js")},2734:e=>{"use strict";e.exports=__webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js")},9044:e=>{"use strict";e.exports=__webpack_require__(/*! vue-material-design-icons/ChevronRight.vue */ "./node_modules/vue-material-design-icons/ChevronRight.vue")},1441:e=>{"use strict";e.exports=__webpack_require__(/*! vue-material-design-icons/DotsHorizontal.vue */ "./node_modules/vue-material-design-icons/DotsHorizontal.vue")}},t={};function a(o){var n=t[o];if(void 0!==n)return n.exports;var i=t[o]={id:o,exports:{}};return e[o](i,i.exports,a),i.exports}a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var o in t)a.o(t,o)&&!a.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.nc=void 0;var o={};return(()=>{"use strict";a.r(o),a.d(o,{default:()=>D});var e=a(8250),t=a(968),n=a(6969),i=a(8407),r=a(2734),s=a.n(r);const l=(e,t,a)=>{if(void 0!==e)for(let o=e.length-1;o>=0;o--){const n=e[o],i=!n.componentOptions&&n.tag&&-1===t.indexOf(n.tag),r=!!n.componentOptions&&"string"==typeof n.componentOptions.tag,l=r&&-1===t.indexOf(n.componentOptions.tag);(i||!r||l)&&((i||l)&&s().util.warn("".concat(i?n.tag:n.componentOptions.tag," is not allowed inside the ").concat(a.$options.name," component"),a),e.splice(o,1))}};var c=a(542);const d=__webpack_require__(/*! vue-material-design-icons/Folder.vue */ "./node_modules/vue-material-design-icons/Folder.vue");var u=a.n(d),p=a(3465),m=a.n(p);const A="vue-crumb",g={name:"NcBreadcrumbs",components:{NcActions:e.default,NcActionRouter:t.default,NcActionLink:n.default,NcBreadcrumb:i.default,IconFolder:u()},props:{rootIcon:{type:String,default:"icon-home"}},emits:["dropped"],data:()=>({hiddenCrumbs:[],hiddenIndices:[],menuBreadcrumbProps:{name:"",forceMenu:!0,disableDrop:!0,open:!1}}),beforeMount(){l(this.$slots.default,["NcBreadcrumb"],this)},beforeUpdate(){l(this.$slots.default,["NcBreadcrumb"],this)},created(){window.addEventListener("resize",m()((()=>{this.handleWindowResize()}),100)),(0,c.subscribe)("navigation-toggled",this.delayedResize)},mounted(){this.handleWindowResize()},updated(){this.delayedResize(),this.delayedHideCrumbs()},beforeDestroy(){window.removeEventListener("resize",this.handleWindowResize),(0,c.unsubscribe)("navigation-toggled",this.delayedResize)},methods:{delayedHideCrumbs(){this.$nextTick((()=>{const e=this.$slots.default||[];this.hideCrumbs(e)}))},closeActions(e){this.$refs.actionsBreadcrumb.$el.contains(e.relatedTarget)||(this.menuBreadcrumbProps.open=!1)},delayedResize(){this.$nextTick((()=>{this.handleWindowResize()}))},handleWindowResize(){const e=this.$slots.default||[];if(this.$refs.container){const t=e.length,a=[],o=this.$refs.container.offsetWidth;let n=this.getTotalWidth(e);this.$refs.breadcrumb__actions&&(n+=this.$refs.breadcrumb__actions.offsetWidth);let i=n-o;i+=i>0?64:0;let r=0;const s=Math.floor(t/2);for(;i>0&&r<t-2;){const o=s+(r%2?r+1:r)/2*Math.pow(-1,r+t%2);i-=this.getWidth(e[o].elm),a.push(o),r++}this.arraysEqual(this.hiddenIndices,a.sort(((e,t)=>e-t)))||(this.hiddenCrumbs=a.map((t=>e[t])),this.hiddenIndices=a)}},arraysEqual(e,t){if(e.length!==t.length)return!1;if(e===t)return!0;if(null===e||null===t)return!1;for(let a=0;a<e.length;++a)if(e[a]!==t[a])return!1;return!0},getTotalWidth(e){return e.reduce(((e,t,a)=>e+this.getWidth(t.elm)),0)},getWidth(e){if(!e.classList)return 0;const t=e.classList.contains("".concat(A,"--hidden"));e.style.minWidth="auto",e.classList.remove("".concat(A,"--hidden"));const a=e.offsetWidth;return t&&e.classList.add("".concat(A,"--hidden")),e.style.minWidth="",a},preventDefault:e=>(e.preventDefault&&e.preventDefault(),!1),dragStart(e){return this.preventDefault(e)},dropped(e,t,a){a||this.$emit("dropped",e,t),this.menuBreadcrumbProps.open=!1;return document.querySelectorAll(".".concat(A)).forEach((e=>{e.classList.remove("".concat(A,"--hovered"))})),this.preventDefault(e)},dragOver(e){return this.preventDefault(e)},dragEnter(e,t){if(!t&&e.target.closest){const t=e.target.closest(".".concat(A));if(t.classList&&t.classList.contains(A)){document.querySelectorAll(".".concat(A)).forEach((e=>{e.classList.remove("".concat(A,"--hovered"))})),t.classList.add("".concat(A,"--hovered"))}}},dragLeave(e,t){if(!t&&!e.target.contains(e.relatedTarget)&&e.target.closest){const t=e.target.closest(".".concat(A));if(t.contains(e.relatedTarget))return;t.classList&&t.classList.contains(A)&&t.classList.remove("".concat(A,"--hovered"))}},hideCrumbs(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;e.forEach(((e,a)=>{var o;null!=e&&null!==(o=e.elm)&&void 0!==o&&o.classList&&(this.hiddenIndices.includes(a+t)?e.elm.classList.add("".concat(A,"--hidden")):e.elm.classList.remove("".concat(A,"--hidden")))}))}},render(e){const t=this.$slots.default||[];if(0===t.length)return;s().set(t[0].componentOptions.propsData,"icon",this.rootIcon);let a=[];if(this.hiddenCrumbs.length){a=t.slice(0,Math.round(t.length/2)),this.hideCrumbs(a),a.push(e("NcBreadcrumb",{class:"dropdown",props:this.menuBreadcrumbProps,attrs:{"aria-hidden":!0},ref:"actionsBreadcrumb",key:"actions-breadcrumb-1",nativeOn:{dragstart:this.dragStart,dragenter:()=>{this.menuBreadcrumbProps.open=!0},dragleave:this.closeActions},on:{"update:open":e=>{this.menuBreadcrumbProps.open=e}}},this.hiddenCrumbs.map((t=>{const a=t.componentOptions.propsData.to,o=t.componentOptions.propsData.href,n=t.componentOptions.propsData.disableDrop,i=t.componentOptions.propsData.title,r=t.componentOptions.propsData.name;let s="NcActionLink",l=o;a&&(s="NcActionRouter",l=a);const c=e("IconFolder",{props:{size:20},slot:"icon"});return e(s,{class:A,props:{href:o,title:i,to:a},attrs:{draggable:!1},nativeOn:{dragstart:this.dragStart,drop:e=>this.dropped(e,l,n),dragover:this.dragOver,dragenter:e=>this.dragEnter(e,n),dragleave:e=>this.dragLeave(e,n)}},[c,r])}))));const o=t.slice(Math.round(t.length/2));a=a.concat(o),this.hideCrumbs(o,a.length-1)}else a=t,this.hideCrumbs(a);const o=[e("nav",{},[e("ul",{class:"breadcrumb__crumbs"},a)])];return this.$slots.actions&&o.push(e("div",{class:"breadcrumb__actions",ref:"breadcrumb__actions"},this.$slots.actions)),e("div",{class:["breadcrumb",{"breadcrumb--collapsed":this.hiddenCrumbs.length===t.length-2}],ref:"container"},o)}};var h=a(3379),v=a.n(h),b=a(7795),C=a.n(b),f=a(569),y=a.n(f),k=a(3565),w=a.n(k),S=a(9216),x=a.n(S),N=a(4589),z=a.n(N),j=a(1699),P={};P.styleTagTransform=z(),P.setAttributes=w(),P.insert=y().bind(null,"head"),P.domAPI=C(),P.insertStyleElement=x();v()(j.Z,P);j.Z&&j.Z.locals&&j.Z.locals;var E=a(1900),B=a(1753),_=a.n(B),T=(0,E.Z)(g,undefined,undefined,!1,null,"26565e7c",null);"function"==typeof _()&&_()(T);const D=T.exports})(),o})()));
+//# sourceMappingURL=NcBreadcrumbs.js.map
+
+/***/ }),
+
+/***/ "./node_modules/@nextcloud/vue/dist/Components/NcIconSvgWrapper.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@nextcloud/vue/dist/Components/NcIconSvgWrapper.js ***!
+ \*************************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+/*! For license information please see NcIconSvgWrapper.js.LICENSE.txt */
+!function(e,t){ true?module.exports=t():0}(self,(()=>(()=>{var e={8402:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(7537),o=n.n(r),a=n(3645),i=n.n(a)()(o());i.push([e.id,".material-design-icon[data-v-45b807d6]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.icon-vue[data-v-45b807d6]{display:flex;justify-content:center;align-items:center;width:44px;height:44px;opacity:1}.icon-vue[data-v-45b807d6] svg{fill:currentColor;max-width:20px;max-height:20px}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcIconSvgWrapper/NcIconSvgWrapper.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,2BACC,YAAA,CACA,sBAAA,CACA,kBAAA,CACA,UAAA,CACA,WAAA,CACA,SAAA,CAEA,+BACC,iBAAA,CACA,cAAA,CACA,eAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n.icon-vue {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\twidth: 44px;\n\theight: 44px;\n\topacity: 1;\n\n\t&:deep(svg) {\n\t\tfill: currentColor;\n\t\tmax-width: 20px;\n\t\tmax-height: 20px;\n\t}\n}\n"],sourceRoot:""}]);const s=i},3645:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,o,a){"string"==typeof e&&(e=[[null,e,void 0]]);var i={};if(r)for(var s=0;s<this.length;s++){var c=this[s][0];null!=c&&(i[c]=!0)}for(var u=0;u<e.length;u++){var p=[].concat(e[u]);r&&i[p[0]]||(void 0!==a&&(void 0===p[5]||(p[1]="@layer".concat(p[5].length>0?" ".concat(p[5]):""," {").concat(p[1],"}")),p[5]=a),n&&(p[2]?(p[1]="@media ".concat(p[2]," {").concat(p[1],"}"),p[2]=n):p[2]=n),o&&(p[4]?(p[1]="@supports (".concat(p[4],") {").concat(p[1],"}"),p[4]=o):p[4]="".concat(o)),t.push(p))}},t}},7537:e=>{"use strict";e.exports=function(e){var t=e[1],n=e[3];if(!n)return t;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),a="/*# ".concat(o," */");return[t].concat([a]).join("\n")}return[t].join("\n")}},3379:e=>{"use strict";var t=[];function n(e){for(var n=-1,r=0;r<t.length;r++)if(t[r].identifier===e){n=r;break}return n}function r(e,r){for(var a={},i=[],s=0;s<e.length;s++){var c=e[s],u=r.base?c[0]+r.base:c[0],p=a[u]||0,l="".concat(u," ").concat(p);a[u]=p+1;var d=n(l),f={css:c[1],media:c[2],sourceMap:c[3],supports:c[4],layer:c[5]};if(-1!==d)t[d].references++,t[d].updater(f);else{var v=o(f,r);r.byIndex=s,t.splice(s,0,{identifier:l,updater:v,references:1})}i.push(l)}return i}function o(e,t){var n=t.domAPI(t);n.update(e);return function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;n.update(e=t)}else n.remove()}}e.exports=function(e,o){var a=r(e=e||[],o=o||{});return function(e){e=e||[];for(var i=0;i<a.length;i++){var s=n(a[i]);t[s].references--}for(var c=r(e,o),u=0;u<a.length;u++){var p=n(a[u]);0===t[p].references&&(t[p].updater(),t.splice(p,1))}a=c}}},569:e=>{"use strict";var t={};e.exports=function(e,n){var r=function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}t[e]=n}return t[e]}(e);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},9216:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},3565:(e,t,n)=>{"use strict";e.exports=function(e){var t=n.nc;t&&e.setAttribute("nonce",t)}},7795:e=>{"use strict";e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(n){!function(e,t,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var a=n.sourceMap;a&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),t.styleTagTransform(r,e,t.options)}(t,e,n)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},4589:e=>{"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},1287:()=>{},1900:(e,t,n)=>{"use strict";function r(e,t,n,r,o,a,i,s){var c,u="function"==typeof e?e.options:e;if(t&&(u.render=t,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),a&&(u._scopeId="data-v-"+a),i?(c=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i)},u._ssrRegister=c):o&&(c=s?function(){o.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(u.functional){u._injectStyles=c;var p=u.render;u.render=function(e,t){return c.call(t),p(e,t)}}else{var l=u.beforeCreate;u.beforeCreate=l?[].concat(l,c):[c]}return{exports:e,options:u}}n.d(t,{Z:()=>r})}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var a=t[r]={id:r,exports:{}};return e[r](a,a.exports,n),a.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nc=void 0;var r={};return(()=>{"use strict";n.r(r),n.d(r,{default:()=>b});const e=__webpack_require__(/*! @skjnldsv/sanitize-svg */ "./node_modules/@skjnldsv/sanitize-svg/dist/index.js"),t={name:"NcIconSvgWrapper",props:{svg:{type:String,default:""},name:{type:String,default:""}},data:()=>({cleanSvg:""}),async beforeMount(){await this.sanitizeSVG()},methods:{async sanitizeSVG(){this.svg&&(this.cleanSvg=await(0,e.sanitizeSVG)(this.svg))}}};var o=n(3379),a=n.n(o),i=n(7795),s=n.n(i),c=n(569),u=n.n(c),p=n(3565),l=n.n(p),d=n(9216),f=n.n(d),v=n(4589),A=n.n(v),m=n(8402),h={};h.styleTagTransform=A(),h.setAttributes=l(),h.insert=u().bind(null,"head"),h.domAPI=s(),h.insertStyleElement=f();a()(m.Z,h);m.Z&&m.Z.locals&&m.Z.locals;var y=n(1900),g=n(1287),C=n.n(g),x=(0,y.Z)(t,(function(){var e=this;return(0,e._self._c)("span",{staticClass:"icon-vue",attrs:{role:"img","aria-hidden":!e.name,"aria-label":e.name},domProps:{innerHTML:e._s(e.cleanSvg)}})}),[],!1,null,"45b807d6",null);"function"==typeof C()&&C()(x);const b=x.exports})(),r})()));
+//# sourceMappingURL=NcIconSvgWrapper.js.map
+
+/***/ }),
+
+/***/ "./node_modules/@nextcloud/vue/dist/Components/NcInputField.js":
+/*!*********************************************************************!*\
+ !*** ./node_modules/@nextcloud/vue/dist/Components/NcInputField.js ***!
+ \*********************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+/*! For license information please see NcInputField.js.LICENSE.txt */
+!function(t,e){ true?module.exports=e():0}(self,(()=>(()=>{var t={4462:(t,e,n)=>{"use strict";n.d(e,{default:()=>y});const r={name:"NcButton",props:{disabled:{type:Boolean,default:!1},type:{type:String,validator:t=>-1!==["primary","secondary","tertiary","tertiary-no-background","tertiary-on-primary","error","warning","success"].indexOf(t),default:"secondary"},nativeType:{type:String,validator:t=>-1!==["submit","reset","button"].indexOf(t),default:"button"},wide:{type:Boolean,default:!1},ariaLabel:{type:String,default:null},href:{type:String,default:null},to:{type:[String,Object],default:null},exact:{type:Boolean,default:!1},ariaHidden:{type:Boolean,default:null}},render(t){var e,n,r,o,a,i=this;const l=null===(e=this.$slots.default)||void 0===e||null===(n=e[0])||void 0===n||null===(r=n.text)||void 0===r||null===(o=r.trim)||void 0===o?void 0:o.call(r),c=!!l,s=null===(a=this.$slots)||void 0===a?void 0:a.icon;l||this.ariaLabel||console.warn("You need to fill either the text or the ariaLabel props in the button component.",{text:l,ariaLabel:this.ariaLabel},this);const d=function(){let{navigate:e,isActive:n,isExactActive:r}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t(i.to||!i.href?"button":"a",{class:["button-vue",{"button-vue--icon-only":s&&!c,"button-vue--text-only":c&&!s,"button-vue--icon-and-text":s&&c,["button-vue--vue-".concat(i.type)]:i.type,"button-vue--wide":i.wide,active:n,"router-link-exact-active":r}],attrs:{"aria-label":i.ariaLabel,disabled:i.disabled,type:i.href?null:i.nativeType,role:i.href?"button":null,href:!i.to&&i.href?i.href:null,...i.$attrs},on:{...i.$listeners,click:t=>{var n,r;null===(n=i.$listeners)||void 0===n||null===(r=n.click)||void 0===r||r.call(n,t),null==e||e(t)}}},[t("span",{class:"button-vue__wrapper"},[s?t("span",{class:"button-vue__icon",attrs:{"aria-hidden":i.ariaHidden}},[i.$slots.icon]):null,c?t("span",{class:"button-vue__text"},[l]):null])])};return this.to?t("router-link",{props:{custom:!0,to:this.to,exact:this.exact},scopedSlots:{default:d}}):d()}};var o=n(3379),a=n.n(o),i=n(7795),l=n.n(i),c=n(569),s=n.n(c),d=n(3565),A=n.n(d),u=n(9216),p=n.n(u),C=n(4589),v=n.n(C),b=n(7196),f={};f.styleTagTransform=v(),f.setAttributes=A(),f.insert=s().bind(null,"head"),f.domAPI=l(),f.insertStyleElement=p();a()(b.Z,f);b.Z&&b.Z.locals&&b.Z.locals;var h=n(1900),g=n(2102),m=n.n(g),x=(0,h.Z)(r,undefined,undefined,!1,null,"4d05be2c",null);"function"==typeof m()&&m()(x);const y=x.exports},7196:(t,e,n)=>{"use strict";n.d(e,{Z:()=>l});var r=n(7537),o=n.n(r),a=n(3645),i=n.n(a)()(o());i.push([t.id,".material-design-icon[data-v-4d05be2c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue[data-v-4d05be2c]{position:relative;width:fit-content;overflow:hidden;border:0;padding:0;font-size:var(--default-font-size);font-weight:bold;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:22px;transition-property:color,border-color,background-color;transition-duration:.1s;transition-timing-function:linear;color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue *[data-v-4d05be2c],.button-vue span[data-v-4d05be2c]{cursor:pointer}.button-vue[data-v-4d05be2c]:focus{outline:none}.button-vue[data-v-4d05be2c]:disabled{cursor:default;opacity:.5;filter:saturate(0.7)}.button-vue:disabled *[data-v-4d05be2c]{cursor:default}.button-vue[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-light-hover)}.button-vue[data-v-4d05be2c]:active{background-color:var(--color-primary-element-light)}.button-vue__wrapper[data-v-4d05be2c]{display:inline-flex;align-items:center;justify-content:center;width:100%}.button-vue__icon[data-v-4d05be2c]{height:44px;width:44px;min-height:44px;min-width:44px;display:flex;justify-content:center;align-items:center}.button-vue__text[data-v-4d05be2c]{font-weight:bold;margin-bottom:1px;padding:2px 0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.button-vue--icon-only[data-v-4d05be2c]{width:44px !important}.button-vue--text-only[data-v-4d05be2c]{padding:0 12px}.button-vue--text-only .button-vue__text[data-v-4d05be2c]{margin-left:4px;margin-right:4px}.button-vue--icon-and-text[data-v-4d05be2c]{padding:0 16px 0 4px}.button-vue--wide[data-v-4d05be2c]{width:100%}.button-vue[data-v-4d05be2c]:focus-visible{outline:2px solid var(--color-main-text) !important}.button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{outline:2px solid var(--color-primary-element-text);border-radius:var(--border-radius);background-color:rgba(0,0,0,0)}.button-vue--vue-primary[data-v-4d05be2c]{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.button-vue--vue-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-primary-element-hover)}.button-vue--vue-primary[data-v-4d05be2c]:active{background-color:var(--color-primary-element)}.button-vue--vue-secondary[data-v-4d05be2c]{color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light)}.button-vue--vue-secondary[data-v-4d05be2c]:hover:not(:disabled){color:var(--color-primary-element-light-text);background-color:var(--color-primary-element-light-hover)}.button-vue--vue-tertiary[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color);background-color:var(--color-background-hover)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]{color:var(--color-main-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-no-background[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]{color:var(--color-primary-element-text);background-color:rgba(0,0,0,0)}.button-vue--vue-tertiary-on-primary[data-v-4d05be2c]:hover:not(:disabled){background-color:rgba(0,0,0,0)}.button-vue--vue-success[data-v-4d05be2c]{background-color:var(--color-success);color:#fff}.button-vue--vue-success[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-success-hover)}.button-vue--vue-success[data-v-4d05be2c]:active{background-color:var(--color-success)}.button-vue--vue-warning[data-v-4d05be2c]{background-color:var(--color-warning);color:#fff}.button-vue--vue-warning[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-warning-hover)}.button-vue--vue-warning[data-v-4d05be2c]:active{background-color:var(--color-warning)}.button-vue--vue-error[data-v-4d05be2c]{background-color:var(--color-error);color:#fff}.button-vue--vue-error[data-v-4d05be2c]:hover:not(:disabled){background-color:var(--color-error-hover)}.button-vue--vue-error[data-v-4d05be2c]:active{background-color:var(--color-error)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcButton/NcButton.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,6BACC,iBAAA,CACA,iBAAA,CACA,eAAA,CACA,QAAA,CACA,SAAA,CACA,kCAAA,CACA,gBAAA,CACA,eCcgB,CDbhB,cCagB,CDZhB,YAAA,CACA,kBAAA,CACA,sBAAA,CAGA,cAAA,CAKA,kBAAA,CACA,uDAAA,CACA,uBAAA,CACA,iCAAA,CAkBA,6CAAA,CACA,mDAAA,CA1BA,iEAEC,cAAA,CAQD,mCACC,YAAA,CAGD,sCACC,cAAA,CAIA,UCIiB,CDFjB,oBAAA,CALA,wCACC,cAAA,CAUF,kDACC,yDAAA,CAKD,oCACC,mDAAA,CAGD,sCACC,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAGD,mCACC,WCvCe,CDwCf,UCxCe,CDyCf,eCzCe,CD0Cf,cC1Ce,CD2Cf,YAAA,CACA,sBAAA,CACA,kBAAA,CAGD,mCACC,gBAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAAA,CAID,wCACC,qBAAA,CAID,wCACC,cAAA,CACA,0DACC,eAAA,CACA,gBAAA,CAKF,4CACC,oBAAA,CAID,mCACC,UAAA,CAGD,2CACC,mDAAA,CACA,+EACC,mDAAA,CACA,kCAAA,CACA,8BAAA,CAOF,0CACC,6CAAA,CACA,uCAAA,CACA,+DACC,mDAAA,CAID,iDACC,6CAAA,CAKF,4CACC,6CAAA,CACA,mDAAA,CACA,iEACC,6CAAA,CACA,yDAAA,CAKF,2CACC,4BAAA,CACA,8BAAA,CACA,gEACC,6BAAA,CACA,8CAAA,CAKF,yDACC,4BAAA,CACA,8BAAA,CACA,8EACC,8BAAA,CAKF,sDACC,uCAAA,CACA,8BAAA,CAEA,2EACC,8BAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,0CACC,qCAAA,CACA,UAAA,CACA,+DACC,2CAAA,CAID,iDACC,qCAAA,CAKF,wCACC,mCAAA,CACA,UAAA,CACA,6DACC,yCAAA,CAID,+CACC,mCAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.button-vue {\n\tposition: relative;\n\twidth: fit-content;\n\toverflow: hidden;\n\tborder: 0;\n\tpadding: 0;\n\tfont-size: var(--default-font-size);\n\tfont-weight: bold;\n\tmin-height: $clickable-area;\n\tmin-width: $clickable-area;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t// Cursor pointer on element and all children\n\tcursor: pointer;\n\t& *,\n\tspan {\n\t\tcursor: pointer;\n\t}\n\tborder-radius: math.div($clickable-area, 2);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: 0.1s;\n\ttransition-timing-function: linear;\n\n\t// No outline feedback for focus. Handled with a toggled class in js (see data)\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t\t& * {\n\t\t\tcursor: default;\n\t\t}\n\t\topacity: $opacity_disabled;\n\t\t// Gives a wash out effect\n\t\tfilter: saturate($opacity_normal);\n\t}\n\n\t// Default button type\n\tcolor: var(--color-primary-element-light-text);\n\tbackground-color: var(--color-primary-element-light);\n\t&:hover:not(:disabled) {\n\t\tbackground-color: var(--color-primary-element-light-hover);\n\t}\n\n\t// Back to the default color for this button when active\n\t// TODO: add ripple effect\n\t&:active {\n\t\tbackground-color: var(--color-primary-element-light);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t}\n\n\t&__icon {\n\t\theight: $clickable-area;\n\t\twidth: $clickable-area;\n\t\tmin-height: $clickable-area;\n\t\tmin-width: $clickable-area;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n\n\t&__text {\n\t\tfont-weight: bold;\n\t\tmargin-bottom: 1px;\n\t\tpadding: 2px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t// Icon-only button\n\t&--icon-only {\n\t\twidth: $clickable-area !important;\n\t}\n\n\t// Text-only button\n\t&--text-only {\n\t\tpadding: 0 12px;\n\t\t& .button-vue__text {\n\t\t\tmargin-left: 4px;\n\t\t\tmargin-right: 4px;\n\t\t}\n\t}\n\n\t// Icon and text button\n\t&--icon-and-text {\n\t\tpadding: 0 16px 0 4px;\n\t}\n\n\t// Wide button spans the whole width of the container\n\t&--wide {\n\t\twidth: 100%;\n\t}\n\n\t&:focus-visible {\n\t\toutline: 2px solid var(--color-main-text) !important;\n\t\t&.button-vue--vue-tertiary-on-primary {\n\t\t\toutline: 2px solid var(--color-primary-element-text);\n\t\t\tborder-radius: var(--border-radius);\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Button types\n\n\t// Primary\n\t&--vue-primary {\n\t\tbackground-color: var(--color-primary-element);\n\t\tcolor: var(--color-primary-element-text);\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t}\n\t}\n\n\t// Secondary\n\t&--vue-secondary {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-light);\n\t\t&:hover:not(:disabled) {\n\t\t\tcolor: var(--color-primary-element-light-text);\n\t\t\tbackground-color: var(--color-primary-element-light-hover);\n\t\t}\n\t}\n\n\t// Tertiary\n\t&--vue-tertiary {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color);\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Tertiary, no background\n\t&--vue-tertiary-no-background {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Tertiary on primary color (like the header)\n\t&--vue-tertiary-on-primary {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: transparent;\n\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Success\n\t&--vue-success {\n\t\tbackground-color: var(--color-success);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-success-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// : add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t}\n\n\t// Warning\n\t&--vue-warning {\n\t\tbackground-color: var(--color-warning);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-warning-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-warning);\n\t\t}\n\t}\n\n\t// Error\n\t&--vue-error {\n\t\tbackground-color: var(--color-error);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-error-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t}\n}\n\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const l=i},7783:(t,e,n)=>{"use strict";n.d(e,{Z:()=>l});var r=n(7537),o=n.n(r),a=n(3645),i=n.n(a)()(o());i.push([t.id,".material-design-icon[data-v-54e3932c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.input-field[data-v-54e3932c]{position:relative;width:100%;border-radius:var(--border-radius-large)}.input-field__main-wrapper[data-v-54e3932c]{height:36px;position:relative}.input-field__input[data-v-54e3932c]{margin:0;padding:0 12px;font-size:var(--default-font-size);background-color:var(--color-main-background);color:var(--color-main-text);border:2px solid var(--color-border-maxcontrast);height:36px !important;border-radius:var(--border-radius-large);text-overflow:ellipsis;cursor:pointer;width:100%;-webkit-appearance:textfield !important;-moz-appearance:textfield !important}.input-field__input[data-v-54e3932c]:active:not([disabled]),.input-field__input[data-v-54e3932c]:hover:not([disabled]),.input-field__input[data-v-54e3932c]:focus:not([disabled]){border-color:var(--color-primary-element)}.input-field__input[data-v-54e3932c]:focus{cursor:text}.input-field__input[data-v-54e3932c]:focus-visible{box-shadow:unset !important}.input-field__input--success[data-v-54e3932c]{border-color:var(--color-success) !important}.input-field__input--success[data-v-54e3932c]:focus-visible{box-shadow:#f8fafc 0px 0px 0px 2px,var(--color-primary-element) 0px 0px 0px 4px,rgba(0,0,0,.05) 0px 1px 2px 0px}.input-field__input--error[data-v-54e3932c]{border-color:var(--color-error) !important}.input-field__input--error[data-v-54e3932c]:focus-visible{box-shadow:#f8fafc 0px 0px 0px 2px,var(--color-primary-element) 0px 0px 0px 4px,rgba(0,0,0,.05) 0px 1px 2px 0px}.input-field__input--leading-icon[data-v-54e3932c]{padding-left:28px}.input-field__input--trailing-icon[data-v-54e3932c]{padding-right:28px}.input-field__label[data-v-54e3932c]{padding:4px 0;display:block}.input-field__label--hidden[data-v-54e3932c]{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.input-field__icon[data-v-54e3932c]{position:absolute;height:32px;width:32px;display:flex;align-items:center;justify-content:center;opacity:.7}.input-field__icon--leading[data-v-54e3932c]{bottom:2px;left:2px}.input-field__icon--trailing[data-v-54e3932c]{bottom:2px;right:2px}.input-field__clear-button.button-vue[data-v-54e3932c]{position:absolute;top:2px;right:1px;min-width:unset;min-height:unset;height:32px;width:32px !important;border-radius:var(--border-radius-large)}.input-field__helper-text-message[data-v-54e3932c]{padding:4px 0;display:flex;align-items:center}.input-field__helper-text-message__icon[data-v-54e3932c]{margin-right:8px;align-self:start;margin-top:4px}.input-field__helper-text-message--error[data-v-54e3932c]{color:var(--color-error-text)}.input-field__helper-text-message--success[data-v-54e3932c]{color:var(--color-success-text)}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcInputField/NcInputField.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,8BACC,iBAAA,CACA,UAAA,CACA,wCAAA,CAEA,4CACC,WAAA,CACA,iBAAA,CAGD,qCACC,QAAA,CACA,cAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,gDAAA,CACA,sBAAA,CACA,wCAAA,CACA,sBAAA,CACA,cAAA,CACA,UAAA,CACA,uCAAA,CACA,oCAAA,CAEA,kLAGC,yCAAA,CAGD,2CACC,WAAA,CAGD,mDACC,2BAAA,CAGD,8CACC,4CAAA,CACA,4DACC,+GAAA,CAIF,4CACC,0CAAA,CACA,0DACC,+GAAA,CAIF,mDACC,iBAAA,CAGD,oDACC,kBAAA,CAIF,qCACC,aAAA,CACA,aAAA,CAEA,6CACC,iBAAA,CACA,aAAA,CACA,QAAA,CACA,SAAA,CACA,UAAA,CACA,eAAA,CAIF,oCACC,iBAAA,CACA,WAAA,CACA,UAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,6CACC,UAAA,CACA,QAAA,CAGD,8CACC,UAAA,CACA,SAAA,CAIF,uDACC,iBAAA,CACA,OAAA,CACA,SAAA,CACA,eAAA,CACA,gBAAA,CACA,WAAA,CACA,qBAAA,CACA,wCAAA,CAGD,mDACC,aAAA,CACA,YAAA,CACA,kBAAA,CAEA,yDACC,gBAAA,CACA,gBAAA,CACA,cAAA,CAGD,0DACC,6BAAA,CAGD,4DACC,+BAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"f7c85e6\"; @import 'variables'; @import 'material-icons';\n\n\n.input-field {\n\tposition: relative;\n\twidth: 100%;\n\tborder-radius: var(--border-radius-large);\n\n\t&__main-wrapper {\n\t\theight: 36px;\n\t\tposition: relative;\n\t}\n\n\t&__input {\n\t\tmargin: 0;\n\t\tpadding: 0 12px;\n\t\tfont-size: var(--default-font-size);\n\t\tbackground-color: var(--color-main-background);\n\t\tcolor: var(--color-main-text);\n\t\tborder: 2px solid var(--color-border-maxcontrast);\n\t\theight: 36px !important;\n\t\tborder-radius: var(--border-radius-large);\n\t\ttext-overflow: ellipsis;\n\t\tcursor: pointer;\n\t\twidth: 100%;\n\t\t-webkit-appearance: textfield !important;\n\t\t-moz-appearance: textfield !important;\n\n\t\t&:active:not([disabled]),\n\t\t&:hover:not([disabled]),\n\t\t&:focus:not([disabled]) {\n\t\t\tborder-color: var(--color-primary-element);\n\t\t}\n\n\t\t&:focus {\n\t\t\tcursor: text;\n\t\t}\n\n\t\t&:focus-visible {\n\t\t\tbox-shadow: unset !important; // Override server rules\n\t\t}\n\n\t\t&--success {\n\t\t\tborder-color: var(--color-success) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--error {\n\t\t\tborder-color: var(--color-error) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--leading-icon {\n\t\t\tpadding-left: 28px;\n\t\t}\n\n\t\t&--trailing-icon {\n\t\t\tpadding-right: 28px;\n\t\t}\n\t}\n\n\t&__label {\n\t\tpadding: 4px 0;\n\t\tdisplay: block;\n\n\t\t&--hidden {\n\t\t\tposition: absolute;\n\t\t\tleft: -10000px;\n\t\t\ttop: auto;\n\t\t\twidth: 1px;\n\t\t\theight: 1px;\n\t\t\toverflow: hidden;\n\t\t}\n\t}\n\n\t&__icon {\n\t\tposition: absolute;\n\t\theight: 32px;\n\t\twidth: 32px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\topacity: 0.7;\n\t\t&--leading {\n\t\t\tbottom: 2px;\n\t\t\tleft: 2px;\n\t\t}\n\n\t\t&--trailing {\n\t\t\tbottom: 2px;\n\t\t\tright: 2px;\n\t\t}\n\t}\n\n\t&__clear-button.button-vue {\n\t\tposition: absolute;\n\t\ttop: 2px;\n\t\tright: 1px;\n\t\tmin-width: unset;\n\t\tmin-height: unset;\n\t\theight: 32px;\n\t\twidth: 32px !important;\n\t\tborder-radius: var(--border-radius-large);\n\t}\n\n\t&__helper-text-message {\n\t\tpadding: 4px 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\n\t\t&__icon {\n\t\t\tmargin-right: 8px;\n\t\t\talign-self: start;\n\t\t\tmargin-top: 4px;\n\t\t}\n\n\t\t&--error {\n\t\t\tcolor: var(--color-error-text);\n\t\t}\n\n\t\t&--success {\n\t\t\tcolor: var(--color-success-text);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const l=i},3645:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",r=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),r&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),r&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,r,o,a){"string"==typeof t&&(t=[[null,t,void 0]]);var i={};if(r)for(var l=0;l<this.length;l++){var c=this[l][0];null!=c&&(i[c]=!0)}for(var s=0;s<t.length;s++){var d=[].concat(t[s]);r&&i[d[0]]||(void 0!==a&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=a),n&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=n):d[2]=n),o&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=o):d[4]="".concat(o)),e.push(d))}},e}},7537:t=>{"use strict";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),a="/*# ".concat(o," */");return[e].concat([a]).join("\n")}return[e].join("\n")}},3379:t=>{"use strict";var e=[];function n(t){for(var n=-1,r=0;r<e.length;r++)if(e[r].identifier===t){n=r;break}return n}function r(t,r){for(var a={},i=[],l=0;l<t.length;l++){var c=t[l],s=r.base?c[0]+r.base:c[0],d=a[s]||0,A="".concat(s," ").concat(d);a[s]=d+1;var u=n(A),p={css:c[1],media:c[2],sourceMap:c[3],supports:c[4],layer:c[5]};if(-1!==u)e[u].references++,e[u].updater(p);else{var C=o(p,r);r.byIndex=l,e.splice(l,0,{identifier:A,updater:C,references:1})}i.push(A)}return i}function o(t,e){var n=e.domAPI(e);n.update(t);return function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,o){var a=r(t=t||[],o=o||{});return function(t){t=t||[];for(var i=0;i<a.length;i++){var l=n(a[i]);e[l].references--}for(var c=r(t,o),s=0;s<a.length;s++){var d=n(a[s]);0===e[d].references&&(e[d].updater(),e.splice(d,1))}a=c}}},569:t=>{"use strict";var e={};t.exports=function(t,n){var r=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},9216:t=>{"use strict";t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},3565:(t,e,n)=>{"use strict";t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:t=>{"use strict";t.exports=function(t){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var a=n.sourceMap;a&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),e.styleTagTransform(r,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:t=>{"use strict";t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},2102:()=>{},4348:()=>{},1900:(t,e,n)=>{"use strict";function r(t,e,n,r,o,a,i,l){var c,s="function"==typeof t?t.options:t;if(e&&(s.render=e,s.staticRenderFns=n,s._compiled=!0),r&&(s.functional=!0),a&&(s._scopeId="data-v-"+a),i?(c=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(i)},s._ssrRegister=c):o&&(c=l?function(){o.call(this,(s.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(s.functional){s._injectStyles=c;var d=s.render;s.render=function(t,e){return c.call(e),d(t,e)}}else{var A=s.beforeCreate;s.beforeCreate=A?[].concat(A,c):[c]}return{exports:t,options:s}}n.d(e,{Z:()=>r})}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var a=e[r]={id:r,exports:{}};return t[r](a,a.exports,n),a.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.nc=void 0;var r={};return(()=>{"use strict";n.r(r),n.d(r,{default:()=>D});var t=n(4462);const e=t=>Math.random().toString(36).replace(/[^a-z]+/g,"").slice(0,t||5),o=__webpack_require__(/*! vue-material-design-icons/AlertCircleOutline.vue */ "./node_modules/vue-material-design-icons/AlertCircleOutline.vue");var a=n.n(o);const i=__webpack_require__(/*! vue-material-design-icons/Check.vue */ "./node_modules/vue-material-design-icons/Check.vue");var l=n.n(i);const c={name:"NcInputField",components:{NcButton:t.default,AlertCircle:a(),Check:l()},inheritAttrs:!1,props:{value:{type:String,required:!0},type:{type:String,default:"text",validator:t=>["text","password","email","tel","url","search","number"].includes(t)},label:{type:String,default:void 0},labelOutside:{type:Boolean,default:!1},labelVisible:{type:Boolean,default:!1},placeholder:{type:String,default:void 0},showTrailingButton:{type:Boolean,default:!1},trailingButtonLabel:{type:String,default:""},success:{type:Boolean,default:!1},error:{type:Boolean,default:!1},helperText:{type:String,default:""},disabled:{type:Boolean,default:!1},inputClass:{type:[Object,String],default:""}},emits:["update:value","trailing-button-click"],computed:{computedId(){return this.$attrs.id&&""!==this.$attrs.id?this.$attrs.id:this.inputName},inputName:()=>"input"+e(),hasLeadingIcon(){return this.$slots.default},hasTrailingIcon(){return this.success},hasPlaceholder(){return""!==this.placeholder&&void 0!==this.placeholder},computedPlaceholder(){return this.labelVisible?this.hasPlaceholder?this.placeholder:"":this.hasPlaceholder?this.placeholder:this.label},isValidLabel(){const t=this.label||this.labelOutside;return t||console.warn("You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation."),t},ariaDescribedby(){const t=[];return this.helperText.length>0&&t.push("".concat(this.inputName,"-helper-text")),this.$attrs["aria-describedby"]&&t.push(this.$attrs["aria-describedby"]),t.join(" ")||null}},methods:{focus(){this.$refs.input.focus()},select(){this.$refs.input.select()},handleInput(t){this.$emit("update:value",t.target.value)},handleTrailingButtonClick(t){this.$emit("trailing-button-click",t)}}};var s=n(3379),d=n.n(s),A=n(7795),u=n.n(A),p=n(569),C=n.n(p),v=n(3565),b=n.n(v),f=n(9216),h=n.n(f),g=n(4589),m=n.n(g),x=n(7783),y={};y.styleTagTransform=m(),y.setAttributes=b(),y.insert=C().bind(null,"head"),y.domAPI=u(),y.insertStyleElement=h();d()(x.Z,y);x.Z&&x.Z.locals&&x.Z.locals;var _=n(1900),k=n(4348),w=n.n(k),B=(0,_.Z)(c,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"input-field"},[!t.labelOutside&&t.isValidLabel?e("label",{staticClass:"input-field__label",class:{"input-field__label--hidden":!t.labelVisible},attrs:{for:t.computedId}},[t._v("\n\t\t"+t._s(t.label)+"\n\t")]):t._e(),t._v(" "),e("div",{staticClass:"input-field__main-wrapper"},[e("input",t._g(t._b({ref:"input",staticClass:"input-field__input",class:[t.inputClass,{"input-field__input--trailing-icon":t.showTrailingButton||t.hasTrailingIcon,"input-field__input--leading-icon":t.hasLeadingIcon,"input-field__input--success":t.success,"input-field__input--error":t.error}],attrs:{id:t.computedId,type:t.type,disabled:t.disabled,placeholder:t.computedPlaceholder,"aria-describedby":t.ariaDescribedby,"aria-live":"polite"},domProps:{value:t.value},on:{input:t.handleInput}},"input",t.$attrs,!1),t.$listeners)),t._v(" "),e("div",{directives:[{name:"show",rawName:"v-show",value:t.hasLeadingIcon,expression:"hasLeadingIcon"}],staticClass:"input-field__icon input-field__icon--leading"},[t._t("default")],2),t._v(" "),t.showTrailingButton?e("NcButton",{staticClass:"input-field__clear-button",attrs:{type:"tertiary-no-background","aria-label":t.trailingButtonLabel,disabled:t.disabled},on:{click:t.handleTrailingButtonClick},scopedSlots:t._u([{key:"icon",fn:function(){return[t._t("trailing-button-icon")]},proxy:!0}],null,!0)}):t.success||t.error?e("div",{staticClass:"input-field__icon input-field__icon--trailing"},[t.success?e("Check",{attrs:{size:18}}):t.error?e("AlertCircle",{attrs:{size:18}}):t._e()],1):t._e()],1),t._v(" "),t.helperText.length>0?e("p",{staticClass:"input-field__helper-text-message",class:{"input-field__helper-text-message--error":t.error,"input-field__helper-text-message--success":t.success},attrs:{id:"".concat(t.inputName,"-helper-text")}},[t.success?e("Check",{staticClass:"input-field__helper-text-message__icon",attrs:{size:18}}):t.error?e("AlertCircle",{staticClass:"input-field__helper-text-message__icon",attrs:{size:18}}):t._e(),t._v("\n\t\t"+t._s(t.helperText)+"\n\t")],1):t._e()])}),[],!1,null,"54e3932c",null);"function"==typeof w()&&w()(B);const D=B.exports})(),r})()));
+//# sourceMappingURL=NcInputField.js.map
+
+/***/ }),
+
+/***/ "./node_modules/@vue/devtools-api/lib/esm/const.js":
+/*!*********************************************************!*\
+ !*** ./node_modules/@vue/devtools-api/lib/esm/const.js ***!
+ \*********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ HOOK_PLUGIN_SETTINGS_SET: function() { return /* binding */ HOOK_PLUGIN_SETTINGS_SET; },
+/* harmony export */ HOOK_SETUP: function() { return /* binding */ HOOK_SETUP; }
+/* harmony export */ });
+const HOOK_SETUP = 'devtools-plugin:setup';
+const HOOK_PLUGIN_SETTINGS_SET = 'plugin:settings:set';
+
+
+/***/ }),
+
+/***/ "./node_modules/@vue/devtools-api/lib/esm/env.js":
+/*!*******************************************************!*\
+ !*** ./node_modules/@vue/devtools-api/lib/esm/env.js ***!
+ \*******************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ getDevtoolsGlobalHook: function() { return /* binding */ getDevtoolsGlobalHook; },
+/* harmony export */ getTarget: function() { return /* binding */ getTarget; },
+/* harmony export */ isProxyAvailable: function() { return /* binding */ isProxyAvailable; }
+/* harmony export */ });
+function getDevtoolsGlobalHook() {
+ return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__;
+}
+function getTarget() {
+ // @ts-ignore
+ return (typeof navigator !== 'undefined' && typeof window !== 'undefined')
+ ? window
+ : typeof __webpack_require__.g !== 'undefined'
+ ? __webpack_require__.g
+ : {};
+}
+const isProxyAvailable = typeof Proxy === 'function';
+
+
+/***/ }),
+
+/***/ "./node_modules/@vue/devtools-api/lib/esm/index.js":
+/*!*********************************************************!*\
+ !*** ./node_modules/@vue/devtools-api/lib/esm/index.js ***!
+ \*********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ isPerformanceSupported: function() { return /* reexport safe */ _time_js__WEBPACK_IMPORTED_MODULE_0__.isPerformanceSupported; },
+/* harmony export */ now: function() { return /* reexport safe */ _time_js__WEBPACK_IMPORTED_MODULE_0__.now; },
+/* harmony export */ setupDevtoolsPlugin: function() { return /* binding */ setupDevtoolsPlugin; }
+/* harmony export */ });
+/* harmony import */ var _env_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./env.js */ "./node_modules/@vue/devtools-api/lib/esm/env.js");
+/* harmony import */ var _const_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./const.js */ "./node_modules/@vue/devtools-api/lib/esm/const.js");
+/* harmony import */ var _proxy_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./proxy.js */ "./node_modules/@vue/devtools-api/lib/esm/proxy.js");
+/* harmony import */ var _time_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./time.js */ "./node_modules/@vue/devtools-api/lib/esm/time.js");
+
+
+
+
+
+
+function setupDevtoolsPlugin(pluginDescriptor, setupFn) {
+ const descriptor = pluginDescriptor;
+ const target = (0,_env_js__WEBPACK_IMPORTED_MODULE_1__.getTarget)();
+ const hook = (0,_env_js__WEBPACK_IMPORTED_MODULE_1__.getDevtoolsGlobalHook)();
+ const enableProxy = _env_js__WEBPACK_IMPORTED_MODULE_1__.isProxyAvailable && descriptor.enableEarlyProxy;
+ if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {
+ hook.emit(_const_js__WEBPACK_IMPORTED_MODULE_2__.HOOK_SETUP, pluginDescriptor, setupFn);
+ }
+ else {
+ const proxy = enableProxy ? new _proxy_js__WEBPACK_IMPORTED_MODULE_3__.ApiProxy(descriptor, hook) : null;
+ const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];
+ list.push({
+ pluginDescriptor: descriptor,
+ setupFn,
+ proxy,
+ });
+ if (proxy)
+ setupFn(proxy.proxiedTarget);
+ }
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/@vue/devtools-api/lib/esm/proxy.js":
+/*!*********************************************************!*\
+ !*** ./node_modules/@vue/devtools-api/lib/esm/proxy.js ***!
+ \*********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ ApiProxy: function() { return /* binding */ ApiProxy; }
+/* harmony export */ });
+/* harmony import */ var _const_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./const.js */ "./node_modules/@vue/devtools-api/lib/esm/const.js");
+/* harmony import */ var _time_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./time.js */ "./node_modules/@vue/devtools-api/lib/esm/time.js");
+
+
+class ApiProxy {
+ constructor(plugin, hook) {
+ this.target = null;
+ this.targetQueue = [];
+ this.onQueue = [];
+ this.plugin = plugin;
+ this.hook = hook;
+ const defaultSettings = {};
+ if (plugin.settings) {
+ for (const id in plugin.settings) {
+ const item = plugin.settings[id];
+ defaultSettings[id] = item.defaultValue;
+ }
+ }
+ const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`;
+ let currentSettings = Object.assign({}, defaultSettings);
+ try {
+ const raw = localStorage.getItem(localSettingsSaveId);
+ const data = JSON.parse(raw);
+ Object.assign(currentSettings, data);
+ }
+ catch (e) {
+ // noop
+ }
+ this.fallbacks = {
+ getSettings() {
+ return currentSettings;
+ },
+ setSettings(value) {
+ try {
+ localStorage.setItem(localSettingsSaveId, JSON.stringify(value));
+ }
+ catch (e) {
+ // noop
+ }
+ currentSettings = value;
+ },
+ now() {
+ return (0,_time_js__WEBPACK_IMPORTED_MODULE_0__.now)();
+ },
+ };
+ if (hook) {
+ hook.on(_const_js__WEBPACK_IMPORTED_MODULE_1__.HOOK_PLUGIN_SETTINGS_SET, (pluginId, value) => {
+ if (pluginId === this.plugin.id) {
+ this.fallbacks.setSettings(value);
+ }
+ });
+ }
+ this.proxiedOn = new Proxy({}, {
+ get: (_target, prop) => {
+ if (this.target) {
+ return this.target.on[prop];
+ }
+ else {
+ return (...args) => {
+ this.onQueue.push({
+ method: prop,
+ args,
+ });
+ };
+ }
+ },
+ });
+ this.proxiedTarget = new Proxy({}, {
+ get: (_target, prop) => {
+ if (this.target) {
+ return this.target[prop];
+ }
+ else if (prop === 'on') {
+ return this.proxiedOn;
+ }
+ else if (Object.keys(this.fallbacks).includes(prop)) {
+ return (...args) => {
+ this.targetQueue.push({
+ method: prop,
+ args,
+ resolve: () => { },
+ });
+ return this.fallbacks[prop](...args);
+ };
+ }
+ else {
+ return (...args) => {
+ return new Promise(resolve => {
+ this.targetQueue.push({
+ method: prop,
+ args,
+ resolve,
+ });
+ });
+ };
+ }
+ },
+ });
+ }
+ async setRealTarget(target) {
+ this.target = target;
+ for (const item of this.onQueue) {
+ this.target.on[item.method](...item.args);
+ }
+ for (const item of this.targetQueue) {
+ item.resolve(await this.target[item.method](...item.args));
+ }
+ }
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/@vue/devtools-api/lib/esm/time.js":
+/*!********************************************************!*\
+ !*** ./node_modules/@vue/devtools-api/lib/esm/time.js ***!
+ \********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ isPerformanceSupported: function() { return /* binding */ isPerformanceSupported; },
+/* harmony export */ now: function() { return /* binding */ now; }
+/* harmony export */ });
+let supported;
+let perf;
+function isPerformanceSupported() {
+ var _a;
+ if (supported !== undefined) {
+ return supported;
+ }
+ if (typeof window !== 'undefined' && window.performance) {
+ supported = true;
+ perf = window.performance;
+ }
+ else if (typeof __webpack_require__.g !== 'undefined' && ((_a = __webpack_require__.g.perf_hooks) === null || _a === void 0 ? void 0 : _a.performance)) {
+ supported = true;
+ perf = __webpack_require__.g.perf_hooks.performance;
+ }
+ else {
+ supported = false;
+ }
+ return supported;
+}
+function now() {
+ return isPerformanceSupported() ? perf.now() : Date.now();
+}
+
+
+/***/ }),
+
+/***/ "./apps/files/src/legacy/filelistSearch.js":
+/*!*************************************************!*\
+ !*** ./apps/files/src/legacy/filelistSearch.js ***!
+ \*************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/*
+ * @copyright Copyright (c) 2021 Julius Härtl <jus@bitgrid.net>
+ *
+ * @author Julius Härtl <jus@bitgrid.net>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+(function () {
+ var FilesPlugin = {
+ attach: function attach(fileList) {
+ var _this = this;
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.subscribe)('nextcloud:unified-search.search', function (_ref) {
+ var query = _ref.query;
+ fileList.setFilter(query);
+ });
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.subscribe)('nextcloud:unified-search.reset', function () {
+ _this.query = null;
+ fileList.setFilter('');
+ });
+ }
+ };
+ window.OC.Plugins.register('OCA.Files.FileList', FilesPlugin);
+})();
+
+/***/ }),
+
+/***/ "./apps/files/src/logger.js":
+/*!**********************************!*\
+ !*** ./apps/files/src/logger.js ***!
+ \**********************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_logger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/logger */ "./node_modules/@nextcloud/logger/dist/index.js");
+/**
+ * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* harmony default export */ __webpack_exports__["default"] = ((0,_nextcloud_logger__WEBPACK_IMPORTED_MODULE_0__.getLoggerBuilder)().setApp('files').detectUser().build());
+
+/***/ }),
+
+/***/ "./apps/files/src/models/Setting.js":
+/*!******************************************!*\
+ !*** ./apps/files/src/models/Setting.js ***!
+ \******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ "default": function() { return /* binding */ Setting; }
+/* harmony export */ });
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+/**
+ * @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>
+ * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+var Setting = /*#__PURE__*/function () {
+ /**
+ * Create a new files app setting
+ *
+ * @since 19.0.0
+ * @param {string} name the name of this setting
+ * @param {object} component the component
+ * @param {Function} component.el function that returns an unmounted dom element to be added
+ * @param {Function} [component.open] callback for when setting is added
+ * @param {Function} [component.close] callback for when setting is closed
+ */
+ function Setting(name, _ref) {
+ var el = _ref.el,
+ open = _ref.open,
+ close = _ref.close;
+ _classCallCheck(this, Setting);
+ _defineProperty(this, "_close", void 0);
+ _defineProperty(this, "_el", void 0);
+ _defineProperty(this, "_name", void 0);
+ _defineProperty(this, "_open", void 0);
+ this._name = name;
+ this._el = el;
+ this._open = open;
+ this._close = close;
+ if (typeof this._open !== 'function') {
+ this._open = function () {};
+ }
+ if (typeof this._close !== 'function') {
+ this._close = function () {};
+ }
+ }
+ _createClass(Setting, [{
+ key: "name",
+ get: function get() {
+ return this._name;
+ }
+ }, {
+ key: "el",
+ get: function get() {
+ return this._el;
+ }
+ }, {
+ key: "open",
+ get: function get() {
+ return this._open;
+ }
+ }, {
+ key: "close",
+ get: function get() {
+ return this._close;
+ }
+ }]);
+ return Setting;
+}();
+
+
+/***/ }),
+
+/***/ "./apps/files/src/services/ServiceWorker.js":
+/*!**************************************************!*\
+ !*** ./apps/files/src/services/ServiceWorker.js ***!
+ \**************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+/* harmony default export */ __webpack_exports__["default"] = (function () {
+ if ('serviceWorker' in navigator) {
+ // Use the window load event to keep the page load performant
+ window.addEventListener('load', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var url, registration;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _context.prev = 0;
+ url = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateUrl)('/apps/files/preview-service-worker.js', {}, {
+ noRewrite: true
+ });
+ _context.next = 4;
+ return navigator.serviceWorker.register(url, {
+ scope: '/'
+ });
+ case 4:
+ registration = _context.sent;
+ _logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('SW registered: ', {
+ registration: registration
+ });
+ _context.next = 11;
+ break;
+ case 8:
+ _context.prev = 8;
+ _context.t0 = _context["catch"](0);
+ _logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].error('SW registration failed: ', {
+ error: _context.t0
+ });
+ case 11:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee, null, [[0, 8]]);
+ })));
+ } else {
+ _logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('Service Worker is not enabled on this browser.');
+ }
+});
+
+/***/ }),
+
+/***/ "./apps/files/src/services/Settings.js":
+/*!*********************************************!*\
+ !*** ./apps/files/src/services/Settings.js ***!
+ \*********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ "default": function() { return /* binding */ Settings; }
+/* harmony export */ });
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+/**
+ * @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+var Settings = /*#__PURE__*/function () {
+ function Settings() {
+ _classCallCheck(this, Settings);
+ _defineProperty(this, "_settings", void 0);
+ this._settings = [];
+ console.debug('OCA.Files.Settings initialized');
+ }
+
+ /**
+ * Register a new setting
+ *
+ * @since 19.0.0
+ * @param {OCA.Files.Settings.Setting} view element to add to settings
+ * @return {boolean} whether registering was successful
+ */
+ _createClass(Settings, [{
+ key: "register",
+ value: function register(view) {
+ if (this._settings.filter(function (e) {
+ return e.name === view.name;
+ }).length > 0) {
+ console.error('A setting with the same name is already registered');
+ return false;
+ }
+ this._settings.push(view);
+ return true;
+ }
+
+ /**
+ * All settings elements
+ *
+ * @return {OCA.Files.Settings.Setting[]} All currently registered settings
+ */
+ }, {
+ key: "settings",
+ get: function get() {
+ return this._settings;
+ }
+ }]);
+ return Settings;
+}();
+
+
+/***/ }),
+
+/***/ "./apps/files/src/services/Templates.js":
+/*!**********************************************!*\
+ !*** ./apps/files/src/services/Templates.js ***!
+ \**********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ createFromTemplate: function() { return /* binding */ createFromTemplate; },
+/* harmony export */ getTemplates: function() { return /* binding */ getTemplates; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2021 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+var getTemplates = /*#__PURE__*/function () {
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var response;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _context.next = 2;
+ return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_1__["default"].get((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateOcsUrl)('apps/files/api/v1/templates'));
+ case 2:
+ response = _context.sent;
+ return _context.abrupt("return", response.data.ocs.data);
+ case 4:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ return function getTemplates() {
+ return _ref.apply(this, arguments);
+ };
+}();
+
+/**
+ * Create a new file from a specified template
+ *
+ * @param {string} filePath The new file destination path
+ * @param {string} templatePath The template source path
+ * @param {string} templateType The template type e.g 'user'
+ */
+var createFromTemplate = /*#__PURE__*/function () {
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(filePath, templatePath, templateType) {
+ var response;
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ _context2.next = 2;
+ return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_1__["default"].post((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateOcsUrl)('apps/files/api/v1/templates/create'), {
+ filePath: filePath,
+ templatePath: templatePath,
+ templateType: templateType
+ });
+ case 2:
+ response = _context2.sent;
+ return _context2.abrupt("return", response.data.ocs.data);
+ case 4:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2);
+ }));
+ return function createFromTemplate(_x, _x2, _x3) {
+ return _ref2.apply(this, arguments);
+ };
+}();
+
+/***/ }),
+
+/***/ "./apps/files/src/templates.js":
+/*!*************************************!*\
+ !*** ./apps/files/src/templates.js ***!
+ \*************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_logger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/logger */ "./node_modules/@nextcloud/logger/dist/index.js");
+/* harmony import */ var _nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/initial-state */ "./node_modules/@nextcloud/initial-state/dist/index.es.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _utils_davUtils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/davUtils.js */ "./apps/files/src/utils/davUtils.js");
+/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _views_TemplatePicker_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./views/TemplatePicker.vue */ "./apps/files/src/views/TemplatePicker.vue");
+/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.mjs");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ * @author Julius Härtl <jus@bitgrid.net>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+
+
+
+
+
+
+
+// Set up logger
+var logger = (0,_nextcloud_logger__WEBPACK_IMPORTED_MODULE_0__.getLoggerBuilder)().setApp('files').detectUser().build();
+
+// Add translates functions
+vue__WEBPACK_IMPORTED_MODULE_8__["default"].mixin({
+ methods: {
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate,
+ n: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translatePlural
+ }
+});
+
+// Create document root
+var TemplatePickerRoot = document.createElement('div');
+TemplatePickerRoot.id = 'template-picker';
+document.body.appendChild(TemplatePickerRoot);
+
+// Retrieve and init templates
+var templates = (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_1__.loadState)('files', 'templates', []);
+var templatesPath = (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_1__.loadState)('files', 'templates_path', false);
+logger.debug('Templates providers', templates);
+logger.debug('Templates folder', {
+ templatesPath: templatesPath
+});
+
+// Init vue app
+var View = vue__WEBPACK_IMPORTED_MODULE_8__["default"].extend(_views_TemplatePicker_vue__WEBPACK_IMPORTED_MODULE_6__["default"]);
+var TemplatePicker = new View({
+ name: 'TemplatePicker',
+ propsData: {
+ logger: logger
+ }
+});
+TemplatePicker.$mount('#template-picker');
+
+// Init template engine after load to make sure it's the last injected entry
+window.addEventListener('DOMContentLoaded', function () {
+ if (!templatesPath) {
+ logger.debug('Templates folder not initialized');
+ var initTemplatesPlugin = {
+ attach: function attach(menu) {
+ // register the new menu entry
+ menu.addMenuEntry({
+ id: 'template-init',
+ displayName: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate)('files', 'Set up templates folder'),
+ templateName: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate)('files', 'Templates'),
+ iconClass: 'icon-template-add',
+ fileType: 'file',
+ actionLabel: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate)('files', 'Create new templates folder'),
+ actionHandler: function actionHandler(name) {
+ initTemplatesFolder(name);
+ menu.removeMenuEntry('template-init');
+ }
+ });
+ }
+ };
+ OC.Plugins.register('OCA.Files.NewFileMenu', initTemplatesPlugin);
+ }
+});
+
+// Init template files menu
+templates.forEach(function (provider, index) {
+ var newTemplatePlugin = {
+ attach: function attach(menu) {
+ var fileList = menu.fileList;
+
+ // only attach to main file list, public view is not supported yet
+ if (fileList.id !== 'files' && fileList.id !== 'files.public') {
+ return;
+ }
+
+ // register the new menu entry
+ menu.addMenuEntry({
+ id: "template-new-".concat(provider.app, "-").concat(index),
+ displayName: provider.label,
+ templateName: provider.label + provider.extension,
+ iconClass: provider.iconClass || 'icon-file',
+ fileType: 'file',
+ actionLabel: provider.actionLabel,
+ actionHandler: function actionHandler(name) {
+ TemplatePicker.open(name, provider);
+ }
+ });
+ }
+ };
+ OC.Plugins.register('OCA.Files.NewFileMenu', newTemplatePlugin);
+});
+
+/**
+ * Init the template directory
+ *
+ * @param {string} name the templates folder name
+ */
+var initTemplatesFolder = /*#__PURE__*/function () {
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(name) {
+ var templatePath, response;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ templatePath = ((0,_utils_davUtils_js__WEBPACK_IMPORTED_MODULE_4__.getCurrentDirectory)() + "/".concat(name)).replace('//', '/');
+ _context.prev = 1;
+ logger.debug('Initializing the templates directory', {
+ templatePath: templatePath
+ });
+ _context.next = 5;
+ return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_5__["default"].post((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_3__.generateOcsUrl)('apps/files/api/v1/templates/path'), {
+ templatePath: templatePath,
+ copySystemTemplates: true
+ });
+ case 5:
+ response = _context.sent;
+ // Go to template directory
+ OCA.Files.App.currentFileList.changeDirectory(templatePath, true, true);
+ templates = response.data.ocs.data.templates;
+ templatesPath = response.data.ocs.data.template_path;
+ _context.next = 15;
+ break;
+ case 11:
+ _context.prev = 11;
+ _context.t0 = _context["catch"](1);
+ logger.error('Unable to initialize the templates directory');
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_7__.showError)((0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate)('files', 'Unable to initialize the templates directory'));
+ case 15:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee, null, [[1, 11]]);
+ }));
+ return function initTemplatesFolder(_x) {
+ return _ref.apply(this, arguments);
+ };
+}();
+
+/***/ }),
+
+/***/ "./apps/files/src/utils/davUtils.js":
+/*!******************************************!*\
+ !*** ./apps/files/src/utils/davUtils.js ***!
+ \******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ getCurrentDirectory: function() { return /* binding */ getCurrentDirectory; },
+/* harmony export */ getRootPath: function() { return /* binding */ getRootPath; },
+/* harmony export */ getToken: function() { return /* binding */ getToken; },
+/* harmony export */ isPublic: function() { return /* binding */ isPublic; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.es.mjs");
+/**
+ * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+var getRootPath = function getRootPath() {
+ if ((0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)()) {
+ return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateRemoteUrl)("dav/files/".concat((0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)().uid));
+ } else {
+ return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateRemoteUrl)('webdav').replace('/remote.php', '/public.php');
+ }
+};
+var isPublic = function isPublic() {
+ return !(0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_1__.getCurrentUser)();
+};
+var getToken = function getToken() {
+ return document.getElementById('sharingToken') && document.getElementById('sharingToken').value;
+};
+
+/**
+ * Return the current directory, fallback to root
+ *
+ * @return {string}
+ */
+var getCurrentDirectory = function getCurrentDirectory() {
+ var _OCA;
+ var currentDirInfo = ((_OCA = OCA) === null || _OCA === void 0 || (_OCA = _OCA.Files) === null || _OCA === void 0 || (_OCA = _OCA.App) === null || _OCA === void 0 || (_OCA = _OCA.currentFileList) === null || _OCA === void 0 ? void 0 : _OCA.dirInfo) || {
+ path: '/',
+ name: ''
+ };
+
+ // Make sure we don't have double slashes
+ return "".concat(currentDirInfo.path, "/").concat(currentDirInfo.name).replace(/\/\//gi, '/');
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/utils/fileUtils.js":
+/*!*******************************************!*\
+ !*** ./apps/files/src/utils/fileUtils.js ***!
+ \*******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ encodeFilePath: function() { return /* binding */ encodeFilePath; },
+/* harmony export */ extractFilePaths: function() { return /* binding */ extractFilePaths; }
+/* harmony export */ });
+/**
+ * @copyright Copyright (c) 2021 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+var encodeFilePath = function encodeFilePath(path) {
+ var pathSections = (path.startsWith('/') ? path : "/".concat(path)).split('/');
+ var relativePath = '';
+ pathSections.forEach(function (section) {
+ if (section !== '') {
+ relativePath += '/' + encodeURIComponent(section);
+ }
+ });
+ return relativePath;
+};
+
+/**
+ * Extract dir and name from file path
+ *
+ * @param {string} path the full path
+ * @return {string[]} [dirPath, fileName]
+ */
+var extractFilePaths = function extractFilePaths(path) {
+ var pathSections = path.split('/');
+ var fileName = pathSections[pathSections.length - 1];
+ var dirPath = pathSections.slice(0, pathSections.length - 1).join('/');
+ return [dirPath, fileName];
+};
+
+
+/***/ }),
+
+/***/ "./core/src/OCP/accessibility.js":
+/*!***************************************!*\
+ !*** ./core/src/OCP/accessibility.js ***!
+ \***************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ setPageHeading: function() { return /* binding */ setPageHeading; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/initial-state */ "./node_modules/@nextcloud/initial-state/dist/index.es.mjs");
+/**
+ * @copyright Copyright (c) 2022 Joas Schilling <coding@schilljs.com>
+ *
+ * @author Joas Schilling <coding@schilljs.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+/**
+ * Set the page heading
+ *
+ * @param {string} heading page title from the history api
+ * @since 27.0.0
+ */
+function setPageHeading(heading) {
+ var headingEl = document.getElementById('page-heading-level-1');
+ if (headingEl) {
+ headingEl.textContent = heading;
+ }
+}
+/* harmony default export */ __webpack_exports__["default"] = ({
+ /**
+ * @return {boolean} Whether the user opted-out of shortcuts so that they should not be registered
+ */
+ disableKeyboardShortcuts: function disableKeyboardShortcuts() {
+ return (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_0__.loadState)('theming', 'shortcutsDisabled', false);
+ },
+ setPageHeading: setPageHeading
+});
+
+/***/ }),
+
+/***/ "./apps/files/src/actions/deleteAction.ts":
+/*!************************************************!*\
+ !*** ./apps/files/src/actions/deleteAction.ts ***!
+ \************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ action: function() { return /* binding */ action; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
+/* harmony import */ var _mdi_svg_svg_trash_can_svg_raw__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @mdi/svg/svg/trash-can.svg?raw */ "./node_modules/@mdi/svg/svg/trash-can.svg?raw");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+
+
+var action = new _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.FileAction({
+ id: 'delete',
+ displayName: function displayName(nodes, view) {
+ return view.id === 'trashbin' ? (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate)('files_trashbin', 'Delete permanently') : (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate)('files', 'Delete');
+ },
+ iconSvgInline: function iconSvgInline() {
+ return _mdi_svg_svg_trash_can_svg_raw__WEBPACK_IMPORTED_MODULE_4__;
+ },
+ enabled: function enabled(nodes) {
+ return nodes.length > 0 && nodes.map(function (node) {
+ return node.permissions;
+ }).every(function (permission) {
+ return (permission & _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.Permission.DELETE) !== 0;
+ });
+ },
+ exec: function exec(node) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _context.prev = 0;
+ _context.next = 3;
+ return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__["default"].delete(node.source);
+ case 3:
+ // Let's delete even if it's moved to the trashbin
+ // since it has been removed from the current view
+ // and changing the view will trigger a reload anyway.
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.emit)('files:node:deleted', node);
+ return _context.abrupt("return", true);
+ case 7:
+ _context.prev = 7;
+ _context.t0 = _context["catch"](0);
+ _logger_js__WEBPACK_IMPORTED_MODULE_5__["default"].error('Error while deleting a file', {
+ error: _context.t0,
+ source: node.source,
+ node: node
+ });
+ return _context.abrupt("return", false);
+ case 11:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee, null, [[0, 7]]);
+ }))();
+ },
+ execBatch: function execBatch(nodes, view, dir) {
+ var _this = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ return _context2.abrupt("return", Promise.all(nodes.map(function (node) {
+ return _this.exec(node, view, dir);
+ })));
+ case 1:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2);
+ }))();
+ },
+ order: 100
+});
+(0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.registerFileAction)(action);
+
+/***/ }),
+
+/***/ "./apps/files/src/actions/downloadAction.ts":
+/*!**************************************************!*\
+ !*** ./apps/files/src/actions/downloadAction.ts ***!
+ \**************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ action: function() { return /* binding */ action; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _mdi_svg_svg_arrow_down_svg_raw__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @mdi/svg/svg/arrow-down.svg?raw */ "./node_modules/@mdi/svg/svg/arrow-down.svg?raw");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+var triggerDownload = function triggerDownload(url) {
+ var hiddenElement = document.createElement('a');
+ hiddenElement.download = '';
+ hiddenElement.href = url;
+ hiddenElement.click();
+};
+var downloadNodes = function downloadNodes(dir, nodes) {
+ var secret = Math.random().toString(36).substring(2);
+ var url = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateUrl)('/apps/files/ajax/download.php?dir={dir}&files={files}&downloadStartSecret={secret}', {
+ dir: dir,
+ secret: secret,
+ files: JSON.stringify(nodes.map(function (node) {
+ return node.basename;
+ }))
+ });
+ triggerDownload(url);
+};
+var action = new _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.FileAction({
+ id: 'download',
+ displayName: function displayName() {
+ return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate)('files', 'Download');
+ },
+ iconSvgInline: function iconSvgInline() {
+ return _mdi_svg_svg_arrow_down_svg_raw__WEBPACK_IMPORTED_MODULE_3__;
+ },
+ enabled: function enabled(nodes) {
+ return nodes.length > 0 && nodes.map(function (node) {
+ return node.permissions;
+ }).every(function (permission) {
+ return (permission & _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.Permission.READ) !== 0;
+ });
+ },
+ exec: function exec(node, view, dir) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ if (!(node.type === _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.FileType.Folder)) {
+ _context.next = 3;
+ break;
+ }
+ downloadNodes(dir, [node]);
+ return _context.abrupt("return", null);
+ case 3:
+ triggerDownload(node.source);
+ return _context.abrupt("return", null);
+ case 5:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ },
+ execBatch: function execBatch(nodes, view, dir) {
+ var _this = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ if (!(nodes.length === 1)) {
+ _context2.next = 3;
+ break;
+ }
+ _this.exec(nodes[0], view, dir);
+ return _context2.abrupt("return", [null]);
+ case 3:
+ downloadNodes(dir, nodes);
+ return _context2.abrupt("return", new Array(nodes.length).fill(null));
+ case 5:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2);
+ }))();
+ },
+ order: 30
+});
+(0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.registerFileAction)(action);
+
+/***/ }),
+
+/***/ "./apps/files/src/actions/editLocallyAction.ts":
+/*!*****************************************************!*\
+ !*** ./apps/files/src/actions/editLocallyAction.ts ***!
+ \*****************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ action: function() { return /* binding */ action; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_paths__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/paths */ "./node_modules/@nextcloud/paths/dist/index.js");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.es.mjs");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
+/* harmony import */ var _mdi_svg_svg_laptop_svg_raw__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @mdi/svg/svg/laptop.svg?raw */ "./node_modules/@mdi/svg/svg/laptop.svg?raw");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+
+
+
+
+var openLocalClient = /*#__PURE__*/function () {
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(path) {
+ var link, _getCurrentUser, result, uid, url;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ link = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateOcsUrl)('apps/files/api/v1') + '/openlocaleditor?format=json';
+ _context.prev = 1;
+ _context.next = 4;
+ return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_6__["default"].post(link, {
+ path: path
+ });
+ case 4:
+ result = _context.sent;
+ uid = (_getCurrentUser = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid;
+ url = "nc://open/".concat(uid, "@") + window.location.host + (0,_nextcloud_paths__WEBPACK_IMPORTED_MODULE_0__.encodePath)(path);
+ url += '?token=' + result.data.ocs.data.token;
+ window.location.href = url;
+ _context.next = 14;
+ break;
+ case 11:
+ _context.prev = 11;
+ _context.t0 = _context["catch"](1);
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_4__.showError)((0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_5__.translate)('files', 'Failed to redirect to client'));
+ case 14:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee, null, [[1, 11]]);
+ }));
+ return function openLocalClient(_x) {
+ return _ref.apply(this, arguments);
+ };
+}();
+var action = new _nextcloud_files__WEBPACK_IMPORTED_MODULE_3__.FileAction({
+ id: 'edit-locally',
+ displayName: function displayName() {
+ return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_5__.translate)('files', 'Edit locally');
+ },
+ iconSvgInline: function iconSvgInline() {
+ return _mdi_svg_svg_laptop_svg_raw__WEBPACK_IMPORTED_MODULE_7__;
+ },
+ // Only works on single files
+ enabled: function enabled(nodes) {
+ // Only works on single node
+ if (nodes.length !== 1) {
+ return false;
+ }
+ return (nodes[0].permissions & _nextcloud_files__WEBPACK_IMPORTED_MODULE_3__.Permission.UPDATE) !== 0;
+ },
+ exec: function exec(node) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ openLocalClient(node.path);
+ return _context2.abrupt("return", null);
+ case 2:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2);
+ }))();
+ },
+ order: 25
+});
+if (!/Android|iPhone|iPad|iPod/i.test(navigator.userAgent)) {
+ (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_3__.registerFileAction)(action);
+}
+
+/***/ }),
+
+/***/ "./apps/files/src/actions/favoriteAction.ts":
+/*!**************************************************!*\
+ !*** ./apps/files/src/actions/favoriteAction.ts ***!
+ \**************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ action: function() { return /* binding */ action; },
+/* harmony export */ favoriteNode: function() { return /* binding */ favoriteNode; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _mdi_svg_svg_star_outline_svg_raw__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @mdi/svg/svg/star-outline.svg?raw */ "./node_modules/@mdi/svg/svg/star-outline.svg?raw");
+/* harmony import */ var _mdi_svg_svg_star_svg_raw__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @mdi/svg/svg/star.svg?raw */ "./node_modules/@mdi/svg/svg/star.svg?raw");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+
+
+
+
+
+// If any of the nodes is not favorited, we display the favorite action.
+var shouldFavorite = function shouldFavorite(nodes) {
+ return nodes.some(function (node) {
+ return node.attributes.favorite !== 1;
+ });
+};
+var favoriteNode = /*#__PURE__*/function () {
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(node, view, willFavorite) {
+ var url, _action;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _context.prev = 0;
+ // TODO: migrate to webdav tags plugin
+ url = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateUrl)('/apps/files/api/v1/files') + node.path;
+ _context.next = 4;
+ return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_4__["default"].post(url, {
+ tags: willFavorite ? [window.OC.TAG_FAVORITE] : []
+ });
+ case 4:
+ // Let's delete if we are in the favourites view
+ // AND if it is removed from the user favorites
+ // AND it's in the root of the favorites view
+ if (view.id === 'favorites' && !willFavorite && node.dirname === '/') {
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.emit)('files:node:deleted', node);
+ }
+ // Update the node webdav attribute
+ vue__WEBPACK_IMPORTED_MODULE_8__["default"].set(node.attributes, 'favorite', willFavorite ? 1 : 0);
+ // Dispatch event to whoever is interested
+ if (willFavorite) {
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.emit)('files:favorites:added', node);
+ } else {
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.emit)('files:favorites:removed', node);
+ }
+ return _context.abrupt("return", true);
+ case 10:
+ _context.prev = 10;
+ _context.t0 = _context["catch"](0);
+ _action = willFavorite ? 'adding a file to favourites' : 'removing a file from favourites';
+ _logger_js__WEBPACK_IMPORTED_MODULE_7__["default"].error('Error while ' + _action, {
+ error: _context.t0,
+ source: node.source,
+ node: node
+ });
+ return _context.abrupt("return", false);
+ case 15:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee, null, [[0, 10]]);
+ }));
+ return function favoriteNode(_x, _x2, _x3) {
+ return _ref.apply(this, arguments);
+ };
+}();
+var action = new _nextcloud_files__WEBPACK_IMPORTED_MODULE_2__.FileAction({
+ id: 'favorite',
+ displayName: function displayName(nodes) {
+ return shouldFavorite(nodes) ? (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_3__.translate)('files', 'Add to favorites') : (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_3__.translate)('files', 'Remove from favorites');
+ },
+ iconSvgInline: function iconSvgInline(nodes) {
+ return shouldFavorite(nodes) ? _mdi_svg_svg_star_outline_svg_raw__WEBPACK_IMPORTED_MODULE_5__ : _mdi_svg_svg_star_svg_raw__WEBPACK_IMPORTED_MODULE_6__;
+ },
+ enabled: function enabled(nodes) {
+ // We can only favorite nodes within files and with permissions
+ return !nodes.some(function (node) {
+ var _node$root, _node$root$startsWith;
+ return !((_node$root = node.root) !== null && _node$root !== void 0 && (_node$root$startsWith = _node$root.startsWith) !== null && _node$root$startsWith !== void 0 && _node$root$startsWith.call(_node$root, '/files'));
+ }) && nodes.every(function (node) {
+ return node.permissions !== _nextcloud_files__WEBPACK_IMPORTED_MODULE_2__.Permission.NONE;
+ });
+ },
+ exec: function exec(node, view) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
+ var willFavorite;
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ willFavorite = shouldFavorite([node]);
+ _context2.next = 3;
+ return favoriteNode(node, view, willFavorite);
+ case 3:
+ return _context2.abrupt("return", _context2.sent);
+ case 4:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2);
+ }))();
+ },
+ execBatch: function execBatch(nodes, view) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
+ var willFavorite;
+ return _regeneratorRuntime().wrap(function _callee4$(_context4) {
+ while (1) switch (_context4.prev = _context4.next) {
+ case 0:
+ willFavorite = shouldFavorite(nodes);
+ return _context4.abrupt("return", Promise.all(nodes.map( /*#__PURE__*/function () {
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(node) {
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
+ while (1) switch (_context3.prev = _context3.next) {
+ case 0:
+ _context3.next = 2;
+ return favoriteNode(node, view, willFavorite);
+ case 2:
+ return _context3.abrupt("return", _context3.sent);
+ case 3:
+ case "end":
+ return _context3.stop();
+ }
+ }, _callee3);
+ }));
+ return function (_x4) {
+ return _ref2.apply(this, arguments);
+ };
+ }())));
+ case 2:
+ case "end":
+ return _context4.stop();
+ }
+ }, _callee4);
+ }))();
+ },
+ order: -50
+});
+(0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_2__.registerFileAction)(action);
+
+/***/ }),
+
+/***/ "./apps/files/src/actions/openFolderAction.ts":
+/*!****************************************************!*\
+ !*** ./apps/files/src/actions/openFolderAction.ts ***!
+ \****************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ action: function() { return /* binding */ action; }
+/* harmony export */ });
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! path */ "./node_modules/path/path.js");
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _mdi_svg_svg_folder_svg_raw__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @mdi/svg/svg/folder.svg?raw */ "./node_modules/@mdi/svg/svg/folder.svg?raw");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+var action = new _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.FileAction({
+ id: 'open-folder',
+ displayName: function displayName(files) {
+ // Only works on single node
+ var displayName = files[0].attributes.displayName || files[0].basename;
+ return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate)('files', 'Open folder {displayName}', {
+ displayName: displayName
+ });
+ },
+ iconSvgInline: function iconSvgInline() {
+ return _mdi_svg_svg_folder_svg_raw__WEBPACK_IMPORTED_MODULE_3__;
+ },
+ enabled: function enabled(nodes) {
+ // Only works on single node
+ if (nodes.length !== 1) {
+ return false;
+ }
+ var node = nodes[0];
+ if (!node.isDavRessource) {
+ return false;
+ }
+ return node.type === _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.FileType.Folder && (node.permissions & _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.Permission.READ) !== 0;
+ },
+ exec: function exec(node, view, dir) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ if (!(!node || node.type !== _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.FileType.Folder)) {
+ _context.next = 2;
+ break;
+ }
+ return _context.abrupt("return", false);
+ case 2:
+ window.OCP.Files.Router.goToRoute(null, {
+ view: view.id,
+ fileid: undefined
+ }, {
+ dir: (0,path__WEBPACK_IMPORTED_MODULE_0__.join)(dir, node.basename),
+ fileid: undefined
+ });
+ return _context.abrupt("return", null);
+ case 4:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ },
+ // Main action if enabled, meaning folders only
+ default: _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.DefaultType.HIDDEN,
+ order: -100
+});
+(0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.registerFileAction)(action);
+
+/***/ }),
+
+/***/ "./apps/files/src/actions/openInFilesAction.ts":
+/*!*****************************************************!*\
+ !*** ./apps/files/src/actions/openInFilesAction.ts ***!
+ \*****************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ action: function() { return /* binding */ action; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+/**
+ * TODO: Move away from a redirect and handle
+ * navigation straight out of the recent view
+ */
+var action = new _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.FileAction({
+ id: 'open-in-files-recent',
+ displayName: function displayName() {
+ return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'Open in Files');
+ },
+ iconSvgInline: function iconSvgInline() {
+ return '';
+ },
+ enabled: function enabled(nodes, view) {
+ return view.id === 'recent';
+ },
+ exec: function exec(node) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var dir;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ dir = node.dirname;
+ if (node.type === _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.FileType.Folder) {
+ dir = dir + '/' + node.basename;
+ }
+ window.OCP.Files.Router.goToRoute(null,
+ // use default route
+ {
+ view: 'files',
+ fileid: node.fileid
+ }, {
+ dir: dir,
+ fileid: node.fileid
+ });
+ return _context.abrupt("return", null);
+ case 4:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ },
+ // Before openFolderAction
+ order: -1000,
+ default: _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.DefaultType.HIDDEN
+});
+(0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.registerFileAction)(action);
+
+/***/ }),
+
+/***/ "./apps/files/src/actions/renameAction.ts":
+/*!************************************************!*\
+ !*** ./apps/files/src/actions/renameAction.ts ***!
+ \************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ ACTION_DETAILS: function() { return /* binding */ ACTION_DETAILS; },
+/* harmony export */ action: function() { return /* binding */ action; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _mdi_svg_svg_pencil_svg_raw__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @mdi/svg/svg/pencil.svg?raw */ "./node_modules/@mdi/svg/svg/pencil.svg?raw");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+var ACTION_DETAILS = 'details';
+var action = new _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.FileAction({
+ id: 'rename',
+ displayName: function displayName() {
+ return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate)('files', 'Rename');
+ },
+ iconSvgInline: function iconSvgInline() {
+ return _mdi_svg_svg_pencil_svg_raw__WEBPACK_IMPORTED_MODULE_3__;
+ },
+ enabled: function enabled(nodes) {
+ return nodes.length > 0 && nodes.map(function (node) {
+ return node.permissions;
+ }).every(function (permission) {
+ return (permission & _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.Permission.UPDATE) !== 0;
+ });
+ },
+ exec: function exec(node) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ // Renaming is a built-in feature of the files app
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.emit)('files:node:rename', node);
+ return _context.abrupt("return", null);
+ case 2:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ },
+ order: 10
+});
+(0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.registerFileAction)(action);
+
+/***/ }),
+
+/***/ "./apps/files/src/actions/sidebarAction.ts":
+/*!*************************************************!*\
+ !*** ./apps/files/src/actions/sidebarAction.ts ***!
+ \*************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ ACTION_DETAILS: function() { return /* binding */ ACTION_DETAILS; },
+/* harmony export */ action: function() { return /* binding */ action; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _mdi_svg_svg_information_variant_svg_raw__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @mdi/svg/svg/information-variant.svg?raw */ "./node_modules/@mdi/svg/svg/information-variant.svg?raw");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+var ACTION_DETAILS = 'details';
+var action = new _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.FileAction({
+ id: ACTION_DETAILS,
+ displayName: function displayName() {
+ return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.translate)('files', 'Open details');
+ },
+ iconSvgInline: function iconSvgInline() {
+ return _mdi_svg_svg_information_variant_svg_raw__WEBPACK_IMPORTED_MODULE_2__;
+ },
+ // Sidebar currently supports user folder only, /files/USER
+ enabled: function enabled(nodes) {
+ var _window, _ref, _nodes$0$root;
+ // Only works on single node
+ if (nodes.length !== 1) {
+ return false;
+ }
+ if (!nodes[0]) {
+ return false;
+ }
+ // Only work if the sidebar is available
+ if (!((_window = window) !== null && _window !== void 0 && (_window = _window.OCA) !== null && _window !== void 0 && (_window = _window.Files) !== null && _window !== void 0 && _window.Sidebar)) {
+ return false;
+ }
+ return (_ref = ((_nodes$0$root = nodes[0].root) === null || _nodes$0$root === void 0 ? void 0 : _nodes$0$root.startsWith('/files/')) && nodes[0].permissions !== _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.Permission.NONE) !== null && _ref !== void 0 ? _ref : false;
+ },
+ exec: function exec(node, view) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _context.prev = 0;
+ _context.next = 3;
+ return window.OCA.Files.Sidebar.open(node.path);
+ case 3:
+ // Silently update current fileid
+ window.OCP.Files.Router.goToRoute(null, {
+ view: view.id,
+ fileid: node.fileid
+ }, {
+ dir: node.dirname
+ }, true);
+ return _context.abrupt("return", null);
+ case 7:
+ _context.prev = 7;
+ _context.t0 = _context["catch"](0);
+ _logger_js__WEBPACK_IMPORTED_MODULE_3__["default"].error('Error while opening sidebar', {
+ error: _context.t0
+ });
+ return _context.abrupt("return", false);
+ case 11:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee, null, [[0, 7]]);
+ }))();
+ },
+ order: -50
+});
+(0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.registerFileAction)(action);
+
+/***/ }),
+
+/***/ "./apps/files/src/actions/viewInFolderAction.ts":
+/*!******************************************************!*\
+ !*** ./apps/files/src/actions/viewInFolderAction.ts ***!
+ \******************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ action: function() { return /* binding */ action; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _mdi_svg_svg_folder_move_svg_raw__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @mdi/svg/svg/folder-move.svg?raw */ "./node_modules/@mdi/svg/svg/folder-move.svg?raw");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+var action = new _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.FileAction({
+ id: 'view-in-folder',
+ displayName: function displayName() {
+ return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.translate)('files', 'View in folder');
+ },
+ iconSvgInline: function iconSvgInline() {
+ return _mdi_svg_svg_folder_move_svg_raw__WEBPACK_IMPORTED_MODULE_2__;
+ },
+ enabled: function enabled(nodes) {
+ // Only works on single node
+ if (nodes.length !== 1) {
+ return false;
+ }
+ var node = nodes[0];
+ if (!node.isDavRessource) {
+ return false;
+ }
+ if (node.permissions === _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.Permission.NONE) {
+ return false;
+ }
+ return node.type === _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.FileType.File;
+ },
+ exec: function exec(node, view, dir) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ if (!(!node || node.type !== _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.FileType.File)) {
+ _context.next = 2;
+ break;
+ }
+ return _context.abrupt("return", false);
+ case 2:
+ window.OCP.Files.Router.goToRoute(null, {
+ view: 'files',
+ fileid: node.fileid
+ }, {
+ dir: node.dirname
+ });
+ return _context.abrupt("return", null);
+ case 4:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ },
+ order: 80
+});
+(0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.registerFileAction)(action);
+
+/***/ }),
+
+/***/ "./apps/files/src/main.ts":
+/*!********************************!*\
+ !*** ./apps/files/src/main.ts ***!
+ \********************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _templates_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./templates.js */ "./apps/files/src/templates.js");
+/* harmony import */ var _legacy_filelistSearch_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./legacy/filelistSearch.js */ "./apps/files/src/legacy/filelistSearch.js");
+/* harmony import */ var _actions_deleteAction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./actions/deleteAction */ "./apps/files/src/actions/deleteAction.ts");
+/* harmony import */ var _actions_downloadAction__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./actions/downloadAction */ "./apps/files/src/actions/downloadAction.ts");
+/* harmony import */ var _actions_editLocallyAction__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./actions/editLocallyAction */ "./apps/files/src/actions/editLocallyAction.ts");
+/* harmony import */ var _actions_favoriteAction__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./actions/favoriteAction */ "./apps/files/src/actions/favoriteAction.ts");
+/* harmony import */ var _actions_openFolderAction__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./actions/openFolderAction */ "./apps/files/src/actions/openFolderAction.ts");
+/* harmony import */ var _actions_openInFilesAction_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./actions/openInFilesAction.js */ "./apps/files/src/actions/openInFilesAction.ts");
+/* harmony import */ var _actions_renameAction__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./actions/renameAction */ "./apps/files/src/actions/renameAction.ts");
+/* harmony import */ var _actions_sidebarAction__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./actions/sidebarAction */ "./apps/files/src/actions/sidebarAction.ts");
+/* harmony import */ var _actions_viewInFolderAction__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./actions/viewInFolderAction */ "./apps/files/src/actions/viewInFolderAction.ts");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var pinia__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! pinia */ "./node_modules/pinia/dist/pinia.mjs");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _views_FilesList_vue__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./views/FilesList.vue */ "./apps/files/src/views/FilesList.vue");
+/* harmony import */ var _views_Navigation_vue__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./views/Navigation.vue */ "./apps/files/src/views/Navigation.vue");
+/* harmony import */ var _views_favorites__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./views/favorites */ "./apps/files/src/views/favorites.ts");
+/* harmony import */ var _views_recent__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./views/recent */ "./apps/files/src/views/recent.ts");
+/* harmony import */ var _views_files__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./views/files */ "./apps/files/src/views/files.ts");
+/* harmony import */ var _services_ServiceWorker_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./services/ServiceWorker.js */ "./apps/files/src/services/ServiceWorker.js");
+/* harmony import */ var _router_router__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./router/router */ "./apps/files/src/router/router.ts");
+/* harmony import */ var _services_RouterService__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./services/RouterService */ "./apps/files/src/services/RouterService.ts");
+/* harmony import */ var _models_Setting_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./models/Setting.js */ "./apps/files/src/models/Setting.js");
+/* harmony import */ var _services_Settings_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./services/Settings.js */ "./apps/files/src/services/Settings.js");
+var _window$OCA$Files, _window$OCP$Files;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+// Init private and public Files namespace
+window.OCA.Files = (_window$OCA$Files = window.OCA.Files) !== null && _window$OCA$Files !== void 0 ? _window$OCA$Files : {};
+window.OCP.Files = (_window$OCP$Files = window.OCP.Files) !== null && _window$OCP$Files !== void 0 ? _window$OCP$Files : {};
+// Expose router
+var Router = new _services_RouterService__WEBPACK_IMPORTED_MODULE_19__["default"](_router_router__WEBPACK_IMPORTED_MODULE_18__["default"]);
+Object.assign(window.OCP.Files, {
+ Router: Router
+});
+// Init Pinia store
+vue__WEBPACK_IMPORTED_MODULE_22__["default"].use(pinia__WEBPACK_IMPORTED_MODULE_23__.PiniaVuePlugin);
+var pinia = (0,pinia__WEBPACK_IMPORTED_MODULE_23__.createPinia)();
+// Init Navigation Service
+var Navigation = (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_11__.getNavigation)();
+vue__WEBPACK_IMPORTED_MODULE_22__["default"].prototype.$navigation = Navigation;
+// Init Files App Settings Service
+var Settings = new _services_Settings_js__WEBPACK_IMPORTED_MODULE_21__["default"]();
+Object.assign(window.OCA.Files, {
+ Settings: Settings
+});
+Object.assign(window.OCA.Files.Settings, {
+ Setting: _models_Setting_js__WEBPACK_IMPORTED_MODULE_20__["default"]
+});
+// Init Navigation View
+var View = vue__WEBPACK_IMPORTED_MODULE_22__["default"].extend(_views_Navigation_vue__WEBPACK_IMPORTED_MODULE_13__["default"]);
+var FilesNavigationRoot = new View({
+ name: 'FilesNavigationRoot',
+ propsData: {
+ Navigation: Navigation
+ },
+ router: _router_router__WEBPACK_IMPORTED_MODULE_18__["default"],
+ pinia: pinia
+});
+FilesNavigationRoot.$mount('#app-navigation-files');
+// Init content list view
+var ListView = vue__WEBPACK_IMPORTED_MODULE_22__["default"].extend(_views_FilesList_vue__WEBPACK_IMPORTED_MODULE_12__["default"]);
+var FilesList = new ListView({
+ name: 'FilesListRoot',
+ router: _router_router__WEBPACK_IMPORTED_MODULE_18__["default"],
+ pinia: pinia
+});
+FilesList.$mount('#app-content-vue');
+// Init legacy and new files views
+(0,_views_favorites__WEBPACK_IMPORTED_MODULE_14__["default"])();
+(0,_views_files__WEBPACK_IMPORTED_MODULE_16__["default"])();
+(0,_views_recent__WEBPACK_IMPORTED_MODULE_15__["default"])();
+// Register preview service worker
+(0,_services_ServiceWorker_js__WEBPACK_IMPORTED_MODULE_17__["default"])();
+
+/***/ }),
+
+/***/ "./apps/files/src/mixins/filesListWidth.ts":
+/*!*************************************************!*\
+ !*** ./apps/files/src/mixins/filesListWidth.ts ***!
+ \*************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_0__["default"].extend({
+ data: function data() {
+ return {
+ filesListWidth: null
+ };
+ },
+ created: function created() {
+ var _this = this;
+ var fileListEl = document.querySelector('#app-content-vue');
+ this.$resizeObserver = new ResizeObserver(function (entries) {
+ if (entries.length > 0 && entries[0].target === fileListEl) {
+ _this.filesListWidth = entries[0].contentRect.width;
+ }
+ });
+ this.$resizeObserver.observe(fileListEl);
+ },
+ beforeDestroy: function beforeDestroy() {
+ this.$resizeObserver.disconnect();
+ }
+}));
+
+/***/ }),
+
+/***/ "./apps/files/src/mixins/filesSorting.ts":
+/*!***********************************************!*\
+ !*** ./apps/files/src/mixins/filesSorting.ts ***!
+ \***********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var pinia__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! pinia */ "./node_modules/pinia/dist/pinia.mjs");
+/* harmony import */ var _store_viewConfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../store/viewConfig */ "./apps/files/src/store/viewConfig.ts");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_1__["default"].extend({
+ computed: _objectSpread(_objectSpread({}, (0,pinia__WEBPACK_IMPORTED_MODULE_2__.mapState)(_store_viewConfig__WEBPACK_IMPORTED_MODULE_0__.useViewConfigStore, ['getConfig', 'setSortingBy', 'toggleSortingDirection'])), {}, {
+ currentView: function currentView() {
+ return this.$navigation.active;
+ },
+ /**
+ * Get the sorting mode for the current view
+ */
+ sortingMode: function sortingMode() {
+ var _this$getConfig, _this$currentView;
+ return ((_this$getConfig = this.getConfig(this.currentView.id)) === null || _this$getConfig === void 0 ? void 0 : _this$getConfig.sorting_mode) || ((_this$currentView = this.currentView) === null || _this$currentView === void 0 ? void 0 : _this$currentView.defaultSortKey) || 'basename';
+ },
+ /**
+ * Get the sorting direction for the current view
+ */
+ isAscSorting: function isAscSorting() {
+ var _this$getConfig2;
+ var sortingDirection = (_this$getConfig2 = this.getConfig(this.currentView.id)) === null || _this$getConfig2 === void 0 ? void 0 : _this$getConfig2.sorting_direction;
+ return sortingDirection === 'asc';
+ }
+ }),
+ methods: {
+ toggleSortBy: function toggleSortBy(key) {
+ // If we're already sorting by this key, flip the direction
+ if (this.sortingMode === key) {
+ this.toggleSortingDirection(this.currentView.id);
+ return;
+ }
+ // else sort ASC by this new key
+ this.setSortingBy(key, this.currentView.id);
+ }
+ }
+}));
+
+/***/ }),
+
+/***/ "./apps/files/src/router/router.ts":
+/*!*****************************************!*\
+ !*** ./apps/files/src/router/router.ts ***!
+ \*****************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var query_string__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! query-string */ "./node_modules/query-string/index.js");
+/* harmony import */ var vue_router__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue-router */ "./node_modules/vue-router/dist/vue-router.esm.js");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/**
+ * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+vue__WEBPACK_IMPORTED_MODULE_2__["default"].use(vue_router__WEBPACK_IMPORTED_MODULE_3__["default"]);
+// Prevent router from throwing errors when we're already on the page we're trying to go to
+var originalPush = vue_router__WEBPACK_IMPORTED_MODULE_3__["default"].prototype.push;
+vue_router__WEBPACK_IMPORTED_MODULE_3__["default"].prototype.push = function push(to, onComplete, onAbort) {
+ if (onComplete || onAbort) return originalPush.call(this, to, onComplete, onAbort);
+ return originalPush.call(this, to).catch(function (err) {
+ return err;
+ });
+};
+var router = new vue_router__WEBPACK_IMPORTED_MODULE_3__["default"]({
+ mode: 'history',
+ // if index.php is in the url AND we got this far, then it's working:
+ // let's keep using index.php in the url
+ base: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateUrl)('/apps/files'),
+ linkActiveClass: 'active',
+ routes: [{
+ path: '/',
+ // Pretending we're using the default view
+ redirect: {
+ name: 'filelist'
+ }
+ }, {
+ path: '/:view/:fileid?',
+ name: 'filelist',
+ props: true
+ }],
+ // Custom stringifyQuery to prevent encoding of slashes in the url
+ stringifyQuery: function stringifyQuery(query) {
+ var result = query_string__WEBPACK_IMPORTED_MODULE_1__["default"].stringify(query).replace(/%2F/gmi, '/');
+ return result ? '?' + result : '';
+ }
+});
+/* harmony default export */ __webpack_exports__["default"] = (router);
+
+/***/ }),
+
+/***/ "./apps/files/src/services/DavProperties.ts":
+/*!**************************************************!*\
+ !*** ./apps/files/src/services/DavProperties.ts ***!
+ \**************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ getDavNameSpaces: function() { return /* binding */ getDavNameSpaces; },
+/* harmony export */ getDavProperties: function() { return /* binding */ getDavProperties; },
+/* harmony export */ getDefaultPropfind: function() { return /* binding */ getDefaultPropfind; },
+/* harmony export */ registerDavProperty: function() { return /* binding */ registerDavProperty; }
+/* harmony export */ });
+/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../logger */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+var defaultDavProperties = ['d:getcontentlength', 'd:getcontenttype', 'd:getetag', 'd:getlastmodified', 'd:quota-available-bytes', 'd:resourcetype', 'nc:has-preview', 'nc:is-encrypted', 'nc:mount-type', 'nc:share-attributes', 'oc:comments-unread', 'oc:favorite', 'oc:fileid', 'oc:owner-display-name', 'oc:owner-id', 'oc:permissions', 'oc:share-types', 'oc:size', 'ocs:share-permissions'];
+var defaultDavNamespaces = {
+ d: 'DAV:',
+ nc: 'http://nextcloud.org/ns',
+ oc: 'http://owncloud.org/ns',
+ ocs: 'http://open-collaboration-services.org/ns'
+};
+/**
+ * TODO: remove and move to @nextcloud/files
+ * @param prop
+ * @param namespace
+ */
+var registerDavProperty = function registerDavProperty(prop) {
+ var namespace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
+ nc: 'http://nextcloud.org/ns'
+ };
+ if (typeof window._nc_dav_properties === 'undefined') {
+ window._nc_dav_properties = defaultDavProperties;
+ window._nc_dav_namespaces = defaultDavNamespaces;
+ }
+ var namespaces = _objectSpread(_objectSpread({}, window._nc_dav_namespaces), namespace);
+ // Check duplicates
+ if (window._nc_dav_properties.find(function (search) {
+ return search === prop;
+ })) {
+ _logger__WEBPACK_IMPORTED_MODULE_0__["default"].error("".concat(prop, " already registered"), {
+ prop: prop
+ });
+ return;
+ }
+ if (prop.startsWith('<') || prop.split(':').length !== 2) {
+ _logger__WEBPACK_IMPORTED_MODULE_0__["default"].error("".concat(prop, " is not valid. See example: 'oc:fileid'"), {
+ prop: prop
+ });
+ return;
+ }
+ var ns = prop.split(':')[0];
+ if (!namespaces[ns]) {
+ _logger__WEBPACK_IMPORTED_MODULE_0__["default"].error("".concat(prop, " namespace unknown"), {
+ prop: prop,
+ namespaces: namespaces
+ });
+ return;
+ }
+ window._nc_dav_properties.push(prop);
+ window._nc_dav_namespaces = namespaces;
+};
+/**
+ * Get the registered dav properties
+ */
+var getDavProperties = function getDavProperties() {
+ if (typeof window._nc_dav_properties === 'undefined') {
+ window._nc_dav_properties = defaultDavProperties;
+ }
+ return window._nc_dav_properties.map(function (prop) {
+ return "<".concat(prop, " />");
+ }).join(' ');
+};
+/**
+ * Get the registered dav namespaces
+ */
+var getDavNameSpaces = function getDavNameSpaces() {
+ if (typeof window._nc_dav_namespaces === 'undefined') {
+ window._nc_dav_namespaces = defaultDavNamespaces;
+ }
+ return Object.keys(window._nc_dav_namespaces).map(function (ns) {
+ return "xmlns:".concat(ns, "=\"").concat(window._nc_dav_namespaces[ns], "\"");
+ }).join(' ');
+};
+/**
+ * Get the default PROPFIND request payload
+ */
+var getDefaultPropfind = function getDefaultPropfind() {
+ return "<?xml version=\"1.0\"?>\n\t\t<d:propfind ".concat(getDavNameSpaces(), ">\n\t\t\t<d:prop>\n\t\t\t\t").concat(getDavProperties(), "\n\t\t\t</d:prop>\n\t\t</d:propfind>");
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/services/Favorites.ts":
+/*!**********************************************!*\
+ !*** ./apps/files/src/services/Favorites.ts ***!
+ \**********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ getContents: function() { return /* binding */ getContents; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.es.mjs");
+/* harmony import */ var _WebdavClient__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./WebdavClient */ "./apps/files/src/services/WebdavClient.ts");
+/* harmony import */ var _DavProperties__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DavProperties */ "./apps/files/src/services/DavProperties.ts");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+
+
+
+
+
+var client = (0,_WebdavClient__WEBPACK_IMPORTED_MODULE_3__.getClient)();
+var reportPayload = "<?xml version=\"1.0\"?>\n<oc:filter-files ".concat((0,_DavProperties__WEBPACK_IMPORTED_MODULE_4__.getDavNameSpaces)(), ">\n\t<d:prop>\n\t\t").concat((0,_DavProperties__WEBPACK_IMPORTED_MODULE_4__.getDavProperties)(), "\n\t</d:prop>\n\t<oc:filter-rules>\n\t\t<oc:favorite>1</oc:favorite>\n\t</oc:filter-rules>\n</oc:filter-files>");
+var resultToNode = function resultToNode(node) {
+ var _getCurrentUser;
+ var props = node.props;
+ var permissions = (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.davParsePermissions)(props === null || props === void 0 ? void 0 : props.permissions);
+ var owner = (_getCurrentUser = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid;
+ var nodeData = {
+ id: (props === null || props === void 0 ? void 0 : props.fileid) || 0,
+ source: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateRemoteUrl)('dav' + _WebdavClient__WEBPACK_IMPORTED_MODULE_3__.rootPath + node.filename),
+ mtime: new Date(node.lastmod),
+ mime: node.mime,
+ size: (props === null || props === void 0 ? void 0 : props.size) || 0,
+ permissions: permissions,
+ owner: owner,
+ root: _WebdavClient__WEBPACK_IMPORTED_MODULE_3__.rootPath,
+ attributes: _objectSpread(_objectSpread(_objectSpread({}, node), props), {}, {
+ hasPreview: props === null || props === void 0 ? void 0 : props['has-preview']
+ })
+ };
+ delete nodeData.attributes.props;
+ return node.type === 'file' ? new _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.File(nodeData) : new _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.Folder(nodeData);
+};
+var getContents = /*#__PURE__*/function () {
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var _rootResponse;
+ var path,
+ propfindPayload,
+ rootResponse,
+ contentsResponse,
+ root,
+ contents,
+ _args = arguments;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ path = _args.length > 0 && _args[0] !== undefined ? _args[0] : '/';
+ propfindPayload = (0,_DavProperties__WEBPACK_IMPORTED_MODULE_4__.getDefaultPropfind)(); // Get root folder
+ if (!(path === '/')) {
+ _context.next = 6;
+ break;
+ }
+ _context.next = 5;
+ return client.stat(path, {
+ details: true,
+ data: (0,_DavProperties__WEBPACK_IMPORTED_MODULE_4__.getDefaultPropfind)()
+ });
+ case 5:
+ rootResponse = _context.sent;
+ case 6:
+ _context.next = 8;
+ return client.getDirectoryContents(path, {
+ details: true,
+ // Only filter favorites if we're at the root
+ data: path === '/' ? reportPayload : propfindPayload,
+ headers: {
+ // Patched in WebdavClient.ts
+ method: path === '/' ? 'REPORT' : 'PROPFIND'
+ },
+ includeSelf: true
+ });
+ case 8:
+ contentsResponse = _context.sent;
+ root = ((_rootResponse = rootResponse) === null || _rootResponse === void 0 ? void 0 : _rootResponse.data) || contentsResponse.data[0];
+ contents = contentsResponse.data.filter(function (node) {
+ return node.filename !== path;
+ });
+ return _context.abrupt("return", {
+ folder: resultToNode(root),
+ contents: contents.map(resultToNode)
+ });
+ case 12:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ return function getContents() {
+ return _ref.apply(this, arguments);
+ };
+}();
+
+/***/ }),
+
+/***/ "./apps/files/src/services/Files.ts":
+/*!******************************************!*\
+ !*** ./apps/files/src/services/Files.ts ***!
+ \******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ getContents: function() { return /* binding */ getContents; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.es.mjs");
+/* harmony import */ var _WebdavClient__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./WebdavClient */ "./apps/files/src/services/WebdavClient.ts");
+/* harmony import */ var _DavProperties__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DavProperties */ "./apps/files/src/services/DavProperties.ts");
+/* harmony import */ var _utils_hashUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/hashUtils */ "./apps/files/src/utils/hashUtils.ts");
+/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../logger */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+
+
+
+
+
+
+
+var client = (0,_WebdavClient__WEBPACK_IMPORTED_MODULE_3__.getClient)();
+var resultToNode = function resultToNode(node) {
+ var _getCurrentUser;
+ var props = node.props;
+ var permissions = (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.davParsePermissions)(props === null || props === void 0 ? void 0 : props.permissions);
+ var owner = (_getCurrentUser = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid;
+ var source = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateRemoteUrl)('dav' + _WebdavClient__WEBPACK_IMPORTED_MODULE_3__.rootPath + node.filename);
+ var id = (props === null || props === void 0 ? void 0 : props.fileid) < 0 ? (0,_utils_hashUtils__WEBPACK_IMPORTED_MODULE_5__.hashCode)(source) : (props === null || props === void 0 ? void 0 : props.fileid) || 0;
+ var nodeData = {
+ id: id,
+ source: source,
+ mtime: new Date(node.lastmod),
+ mime: node.mime,
+ size: (props === null || props === void 0 ? void 0 : props.size) || 0,
+ permissions: permissions,
+ owner: owner,
+ root: _WebdavClient__WEBPACK_IMPORTED_MODULE_3__.rootPath,
+ attributes: _objectSpread(_objectSpread(_objectSpread({}, node), props), {}, {
+ hasPreview: props === null || props === void 0 ? void 0 : props['has-preview'],
+ failed: (props === null || props === void 0 ? void 0 : props.fileid) < 0
+ })
+ };
+ delete nodeData.attributes.props;
+ return node.type === 'file' ? new _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.File(nodeData) : new _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.Folder(nodeData);
+};
+var getContents = /*#__PURE__*/function () {
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var path,
+ propfindPayload,
+ contentsResponse,
+ root,
+ contents,
+ _args = arguments;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ path = _args.length > 0 && _args[0] !== undefined ? _args[0] : '/';
+ propfindPayload = (0,_DavProperties__WEBPACK_IMPORTED_MODULE_4__.getDefaultPropfind)();
+ _context.next = 4;
+ return client.getDirectoryContents(path, {
+ details: true,
+ data: propfindPayload,
+ includeSelf: true
+ });
+ case 4:
+ contentsResponse = _context.sent;
+ root = contentsResponse.data[0];
+ contents = contentsResponse.data.slice(1);
+ if (!(root.filename !== path)) {
+ _context.next = 9;
+ break;
+ }
+ throw new Error('Root node does not match requested path');
+ case 9:
+ return _context.abrupt("return", {
+ folder: resultToNode(root),
+ contents: contents.map(function (result) {
+ try {
+ return resultToNode(result);
+ } catch (error) {
+ _logger__WEBPACK_IMPORTED_MODULE_6__["default"].error("Invalid node detected '".concat(result.basename, "'"), {
+ error: error
+ });
+ return null;
+ }
+ }).filter(Boolean)
+ });
+ case 10:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ return function getContents() {
+ return _ref.apply(this, arguments);
+ };
+}();
+
+/***/ }),
+
+/***/ "./apps/files/src/services/PreviewService.ts":
+/*!***************************************************!*\
+ !*** ./apps/files/src/services/PreviewService.ts ***!
+ \***************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ isCachedPreview: function() { return /* binding */ isCachedPreview; }
+/* harmony export */ });
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+// The preview service worker cache name (see webpack config)
+var SWCacheName = 'previews';
+/**
+ * Check if the preview is already cached by the service worker
+ */
+var isCachedPreview = function isCachedPreview(previewUrl) {
+ var _window, _window2;
+ if (!((_window = window) !== null && _window !== void 0 && (_window = _window.caches) !== null && _window !== void 0 && _window.open)) {
+ return Promise.resolve(false);
+ }
+ return (_window2 = window) === null || _window2 === void 0 || (_window2 = _window2.caches) === null || _window2 === void 0 ? void 0 : _window2.open(SWCacheName).then(function (cache) {
+ return cache.match(previewUrl).then(function (response) {
+ return !!response;
+ });
+ });
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/services/Recent.ts":
+/*!*******************************************!*\
+ !*** ./apps/files/src/services/Recent.ts ***!
+ \*******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ getContents: function() { return /* binding */ getContents; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.es.mjs");
+/* harmony import */ var _WebdavClient__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./WebdavClient */ "./apps/files/src/services/WebdavClient.ts");
+/* harmony import */ var _DavProperties__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./DavProperties */ "./apps/files/src/services/DavProperties.ts");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+var _getCurrentUser;
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+
+
+
+
+
+var client = (0,_WebdavClient__WEBPACK_IMPORTED_MODULE_3__.getClient)((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateRemoteUrl)('dav'));
+var lastTwoWeeksTimestamp = Math.round(Date.now() / 1000 - 60 * 60 * 24 * 14);
+var searchPayload = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<d:searchrequest ".concat((0,_DavProperties__WEBPACK_IMPORTED_MODULE_4__.getDavNameSpaces)(), "\n\txmlns:ns=\"https://github.com/icewind1991/SearchDAV/ns\">\n\t<d:basicsearch>\n\t\t<d:select>\n\t\t\t<d:prop>\n\t\t\t\t").concat((0,_DavProperties__WEBPACK_IMPORTED_MODULE_4__.getDavProperties)(), "\n\t\t\t</d:prop>\n\t\t</d:select>\n\t\t<d:from>\n\t\t\t<d:scope>\n\t\t\t\t<d:href>/files/").concat((_getCurrentUser = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid, "/</d:href>\n\t\t\t\t<d:depth>infinity</d:depth>\n\t\t\t</d:scope>\n\t\t</d:from>\n\t\t<d:where>\n\t\t\t<d:and>\n\t\t\t\t<d:or>\n\t\t\t\t\t<d:not>\n\t\t\t\t\t\t<d:eq>\n\t\t\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t\t\t<d:getcontenttype/>\n\t\t\t\t\t\t\t</d:prop>\n\t\t\t\t\t\t\t<d:literal>httpd/unix-directory</d:literal>\n\t\t\t\t\t\t</d:eq>\n\t\t\t\t\t</d:not>\n\t\t\t\t\t<d:eq>\n\t\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t\t<oc:size/>\n\t\t\t\t\t\t</d:prop>\n\t\t\t\t\t\t<d:literal>0</d:literal>\n\t\t\t\t\t</d:eq>\n\t\t\t\t</d:or>\n\t\t\t\t<d:gt>\n\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t<d:getlastmodified/>\n\t\t\t\t\t</d:prop>\n\t\t\t\t\t<d:literal>").concat(lastTwoWeeksTimestamp, "</d:literal>\n\t\t\t\t</d:gt>\n\t\t\t</d:and>\n\t\t</d:where>\n\t\t<d:orderby>\n\t\t\t<d:order>\n\t\t\t\t<d:prop>\n\t\t\t\t\t<d:getlastmodified/>\n\t\t\t\t</d:prop>\n\t\t\t\t<d:descending/>\n\t\t\t</d:order>\n\t\t</d:orderby>\n\t\t<d:limit>\n\t\t\t<d:nresults>100</d:nresults>\n\t\t\t<ns:firstresult>0</ns:firstresult>\n\t\t</d:limit>\n\t</d:basicsearch>\n</d:searchrequest>");
+var resultToNode = function resultToNode(node) {
+ var _getCurrentUser2;
+ var props = node.props;
+ var permissions = (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.davParsePermissions)(props === null || props === void 0 ? void 0 : props.permissions);
+ var owner = (_getCurrentUser2 = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser2 === void 0 ? void 0 : _getCurrentUser2.uid;
+ var nodeData = {
+ id: (props === null || props === void 0 ? void 0 : props.fileid) || 0,
+ source: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateRemoteUrl)('dav' + node.filename),
+ mtime: new Date(node.lastmod),
+ mime: node.mime,
+ size: (props === null || props === void 0 ? void 0 : props.size) || 0,
+ permissions: permissions,
+ owner: owner,
+ root: _WebdavClient__WEBPACK_IMPORTED_MODULE_3__.rootPath,
+ attributes: _objectSpread(_objectSpread(_objectSpread({}, node), props), {}, {
+ hasPreview: props === null || props === void 0 ? void 0 : props['has-preview']
+ })
+ };
+ delete nodeData.attributes.props;
+ return node.type === 'file' ? new _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.File(nodeData) : new _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.Folder(nodeData);
+};
+var getContents = /*#__PURE__*/function () {
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var _getCurrentUser3;
+ var path,
+ contentsResponse,
+ contents,
+ _args = arguments;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ path = _args.length > 0 && _args[0] !== undefined ? _args[0] : '/';
+ _context.next = 3;
+ return client.getDirectoryContents(path, {
+ details: true,
+ data: searchPayload,
+ headers: {
+ // Patched in WebdavClient.ts
+ method: 'SEARCH',
+ // Somehow it's needed to get the correct response
+ 'Content-Type': 'application/xml; charset=utf-8'
+ },
+ deep: true
+ });
+ case 3:
+ contentsResponse = _context.sent;
+ contents = contentsResponse.data;
+ return _context.abrupt("return", {
+ folder: new _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.Folder({
+ id: 0,
+ source: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateRemoteUrl)('dav' + _WebdavClient__WEBPACK_IMPORTED_MODULE_3__.rootPath),
+ root: _WebdavClient__WEBPACK_IMPORTED_MODULE_3__.rootPath,
+ owner: ((_getCurrentUser3 = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser3 === void 0 ? void 0 : _getCurrentUser3.uid) || null,
+ permissions: _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.Permission.READ
+ }),
+ contents: contents.map(resultToNode)
+ });
+ case 6:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ return function getContents() {
+ return _ref.apply(this, arguments);
+ };
+}();
+
+/***/ }),
+
+/***/ "./apps/files/src/services/RouterService.ts":
+/*!**************************************************!*\
+ !*** ./apps/files/src/services/RouterService.ts ***!
+ \**************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ "default": function() { return /* binding */ RouterService; }
+/* harmony export */ });
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
+function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+var RouterService = /*#__PURE__*/function () {
+ function RouterService(router) {
+ _classCallCheck(this, RouterService);
+ _defineProperty(this, "_router", void 0);
+ this._router = router;
+ }
+ _createClass(RouterService, [{
+ key: "name",
+ get: function get() {
+ return this._router.currentRoute.name;
+ }
+ }, {
+ key: "query",
+ get: function get() {
+ return this._router.currentRoute.query || {};
+ }
+ }, {
+ key: "params",
+ get: function get() {
+ return this._router.currentRoute.params || {};
+ }
+ /**
+ * Trigger a route change on the files app
+ *
+ * @param path the url path, eg: '/trashbin?dir=/Deleted'
+ * @param replace replace the current history
+ * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location
+ */
+ }, {
+ key: "goTo",
+ value: function goTo(path) {
+ var replace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
+ return this._router.push({
+ path: path,
+ replace: replace
+ });
+ }
+ /**
+ * Trigger a route change on the files App
+ *
+ * @param name the route name
+ * @param params the route parameters
+ * @param query the url query parameters
+ * @param replace replace the current history
+ * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location
+ */
+ }, {
+ key: "goToRoute",
+ value: function goToRoute(name, params, query, replace) {
+ return this._router.push({
+ name: name,
+ query: query,
+ params: params,
+ replace: replace
+ });
+ }
+ }]);
+ return RouterService;
+}();
+
+
+/***/ }),
+
+/***/ "./apps/files/src/services/WebdavClient.ts":
+/*!*************************************************!*\
+ !*** ./apps/files/src/services/WebdavClient.ts ***!
+ \*************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ defaultRootUrl: function() { return /* binding */ defaultRootUrl; },
+/* harmony export */ getClient: function() { return /* binding */ getClient; },
+/* harmony export */ rootPath: function() { return /* binding */ rootPath; }
+/* harmony export */ });
+/* harmony import */ var webdav__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! webdav */ "./node_modules/webdav/dist/web/index.js");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.es.mjs");
+/* harmony import */ var webdav_dist_node_request_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! webdav/dist/node/request.js */ "./node_modules/webdav/dist/node/request.js");
+var _getCurrentUser;
+
+
+
+
+var rootPath = "/files/".concat((_getCurrentUser = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getCurrentUser)()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid);
+var defaultRootUrl = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateRemoteUrl)('dav' + rootPath);
+var getClient = function getClient() {
+ var rootUrl = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultRootUrl;
+ var client = (0,webdav__WEBPACK_IMPORTED_MODULE_0__.createClient)(rootUrl, {
+ headers: {
+ requesttoken: (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_2__.getRequestToken)() || ''
+ }
+ });
+ /**
+ * Allow to override the METHOD to support dav REPORT
+ *
+ * @see https://github.com/perry-mitchell/webdav-client/blob/8d9694613c978ce7404e26a401c39a41f125f87f/source/request.ts
+ */
+ var patcher = (0,webdav__WEBPACK_IMPORTED_MODULE_0__.getPatcher)();
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+ // @ts-ignore
+ // https://github.com/perry-mitchell/hot-patcher/issues/6
+ patcher.patch('request', function (options) {
+ var _options$headers;
+ if ((_options$headers = options.headers) !== null && _options$headers !== void 0 && _options$headers.method) {
+ options.method = options.headers.method;
+ delete options.headers.method;
+ }
+ return (0,webdav_dist_node_request_js__WEBPACK_IMPORTED_MODULE_3__.request)(options);
+ });
+ return client;
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/store/actionsmenu.ts":
+/*!*********************************************!*\
+ !*** ./apps/files/src/store/actionsmenu.ts ***!
+ \*********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ useActionsMenuStore: function() { return /* binding */ useActionsMenuStore; }
+/* harmony export */ });
+/* harmony import */ var pinia__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! pinia */ "./node_modules/pinia/dist/pinia.mjs");
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+var useActionsMenuStore = (0,pinia__WEBPACK_IMPORTED_MODULE_0__.defineStore)('actionsmenu', {
+ state: function state() {
+ return {
+ opened: null
+ };
+ }
+});
+
+/***/ }),
+
+/***/ "./apps/files/src/store/files.ts":
+/*!***************************************!*\
+ !*** ./apps/files/src/store/files.ts ***!
+ \***************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ useFilesStore: function() { return /* binding */ useFilesStore; }
+/* harmony export */ });
+/* harmony import */ var pinia__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! pinia */ "./node_modules/pinia/dist/pinia.mjs");
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../logger */ "./apps/files/src/logger.js");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+
+
+
+
+var useFilesStore = function useFilesStore() {
+ var store = (0,pinia__WEBPACK_IMPORTED_MODULE_2__.defineStore)('files', {
+ state: function state() {
+ return {
+ files: {},
+ roots: {}
+ };
+ },
+ getters: {
+ /**
+ * Get a file or folder by id
+ */
+ getNode: function getNode(state) {
+ return function (id) {
+ return state.files[id];
+ };
+ },
+ /**
+ * Get a list of files or folders by their IDs
+ * Does not return undefined values
+ */
+ getNodes: function getNodes(state) {
+ return function (ids) {
+ return ids.map(function (id) {
+ return state.files[id];
+ }).filter(Boolean);
+ };
+ },
+ /**
+ * Get a file or folder by id
+ */
+ getRoot: function getRoot(state) {
+ return function (service) {
+ return state.roots[service];
+ };
+ }
+ },
+ actions: {
+ updateNodes: function updateNodes(nodes) {
+ // Update the store all at once
+ var files = nodes.reduce(function (acc, node) {
+ if (!node.fileid) {
+ _logger__WEBPACK_IMPORTED_MODULE_1__["default"].error('Trying to update/set a node without fileid', node);
+ return acc;
+ }
+ acc[node.fileid] = node;
+ return acc;
+ }, {});
+ vue__WEBPACK_IMPORTED_MODULE_3__["default"].set(this, 'files', _objectSpread(_objectSpread({}, this.files), files));
+ },
+ deleteNodes: function deleteNodes(nodes) {
+ var _this = this;
+ nodes.forEach(function (node) {
+ if (node.fileid) {
+ vue__WEBPACK_IMPORTED_MODULE_3__["default"].delete(_this.files, node.fileid);
+ }
+ });
+ },
+ setRoot: function setRoot(_ref) {
+ var service = _ref.service,
+ root = _ref.root;
+ vue__WEBPACK_IMPORTED_MODULE_3__["default"].set(this.roots, service, root);
+ },
+ onDeletedNode: function onDeletedNode(node) {
+ this.deleteNodes([node]);
+ }
+ }
+ });
+ var fileStore = store.apply(void 0, arguments);
+ // Make sure we only register the listeners once
+ if (!fileStore._initialized) {
+ // subscribe('files:node:created', fileStore.onCreatedNode)
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.subscribe)('files:node:deleted', fileStore.onDeletedNode);
+ // subscribe('files:node:moved', fileStore.onMovedNode)
+ // subscribe('files:node:updated', fileStore.onUpdatedNode)
+ fileStore._initialized = true;
+ }
+ return fileStore;
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/store/keyboard.ts":
+/*!******************************************!*\
+ !*** ./apps/files/src/store/keyboard.ts ***!
+ \******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ useKeyboardStore: function() { return /* binding */ useKeyboardStore; }
+/* harmony export */ });
+/* harmony import */ var pinia__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! pinia */ "./node_modules/pinia/dist/pinia.mjs");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+/**
+ * Observe various events and save the current
+ * special keys states. Useful for checking the
+ * current status of a key when executing a method.
+ */
+var useKeyboardStore = function useKeyboardStore() {
+ var store = (0,pinia__WEBPACK_IMPORTED_MODULE_0__.defineStore)('keyboard', {
+ state: function state() {
+ return {
+ altKey: false,
+ ctrlKey: false,
+ metaKey: false,
+ shiftKey: false
+ };
+ },
+ actions: {
+ onEvent: function onEvent(event) {
+ if (!event) {
+ event = window.event;
+ }
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this, 'altKey', !!event.altKey);
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this, 'ctrlKey', !!event.ctrlKey);
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this, 'metaKey', !!event.metaKey);
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this, 'shiftKey', !!event.shiftKey);
+ }
+ }
+ });
+ var keyboardStore = store.apply(void 0, arguments);
+ // Make sure we only register the listeners once
+ if (!keyboardStore._initialized) {
+ window.addEventListener('keydown', keyboardStore.onEvent);
+ window.addEventListener('keyup', keyboardStore.onEvent);
+ window.addEventListener('mousemove', keyboardStore.onEvent);
+ keyboardStore._initialized = true;
+ }
+ return keyboardStore;
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/store/paths.ts":
+/*!***************************************!*\
+ !*** ./apps/files/src/store/paths.ts ***!
+ \***************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ usePathsStore: function() { return /* binding */ usePathsStore; }
+/* harmony export */ });
+/* harmony import */ var pinia__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! pinia */ "./node_modules/pinia/dist/pinia.mjs");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+
+
+var usePathsStore = function usePathsStore() {
+ var store = (0,pinia__WEBPACK_IMPORTED_MODULE_0__.defineStore)('paths', {
+ state: function state() {
+ return {
+ paths: {}
+ };
+ },
+ getters: {
+ getPath: function getPath(state) {
+ return function (service, path) {
+ if (!state.paths[service]) {
+ return undefined;
+ }
+ return state.paths[service][path];
+ };
+ }
+ },
+ actions: {
+ addPath: function addPath(payload) {
+ // If it doesn't exists, init the service state
+ if (!this.paths[payload.service]) {
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this.paths, payload.service, {});
+ }
+ // Now we can set the provided path
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this.paths[payload.service], payload.path, payload.fileid);
+ }
+ }
+ });
+ var pathsStore = store.apply(void 0, arguments);
+ // Make sure we only register the listeners once
+ if (!pathsStore._initialized) {
+ // TODO: watch folders to update paths?
+ // subscribe('files:node:created', pathsStore.onCreatedNode)
+ // subscribe('files:node:deleted', pathsStore.onDeletedNode)
+ // subscribe('files:node:moved', pathsStore.onMovedNode)
+ pathsStore._initialized = true;
+ }
+ return pathsStore;
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/store/renaming.ts":
+/*!******************************************!*\
+ !*** ./apps/files/src/store/renaming.ts ***!
+ \******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ useRenamingStore: function() { return /* binding */ useRenamingStore; }
+/* harmony export */ });
+/* harmony import */ var pinia__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! pinia */ "./node_modules/pinia/dist/pinia.mjs");
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+var useRenamingStore = function useRenamingStore() {
+ var store = (0,pinia__WEBPACK_IMPORTED_MODULE_1__.defineStore)('renaming', {
+ state: function state() {
+ return {
+ renamingNode: undefined,
+ newName: ''
+ };
+ }
+ });
+ var renamingStore = store.apply(void 0, arguments);
+ // Make sure we only register the listeners once
+ if (!renamingStore._initialized) {
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.subscribe)('files:node:rename', function (node) {
+ renamingStore.renamingNode = node;
+ renamingStore.newName = node.basename;
+ });
+ renamingStore._initialized = true;
+ }
+ return renamingStore;
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/store/selection.ts":
+/*!*******************************************!*\
+ !*** ./apps/files/src/store/selection.ts ***!
+ \*******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ useSelectionStore: function() { return /* binding */ useSelectionStore; }
+/* harmony export */ });
+/* harmony import */ var pinia__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! pinia */ "./node_modules/pinia/dist/pinia.mjs");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+var useSelectionStore = (0,pinia__WEBPACK_IMPORTED_MODULE_0__.defineStore)('selection', {
+ state: function state() {
+ return {
+ selected: [],
+ lastSelection: [],
+ lastSelectedIndex: null
+ };
+ },
+ actions: {
+ /**
+ * Set the selection of fileIds
+ */
+ set: function set() {
+ var selection = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this, 'selected', selection);
+ },
+ /**
+ * Set the last selected index
+ */
+ setLastIndex: function setLastIndex() {
+ var lastSelectedIndex = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
+ // Update the last selection if we provided a new selection starting point
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this, 'lastSelection', lastSelectedIndex ? this.selected : []);
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this, 'lastSelectedIndex', lastSelectedIndex);
+ },
+ /**
+ * Reset the selection
+ */
+ reset: function reset() {
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this, 'selected', []);
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this, 'lastSelection', []);
+ vue__WEBPACK_IMPORTED_MODULE_1__["default"].set(this, 'lastSelectedIndex', null);
+ }
+ }
+});
+
+/***/ }),
+
+/***/ "./apps/files/src/store/userconfig.ts":
+/*!********************************************!*\
+ !*** ./apps/files/src/store/userconfig.ts ***!
+ \********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ useUserConfigStore: function() { return /* binding */ useUserConfigStore; }
+/* harmony export */ });
+/* harmony import */ var pinia__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! pinia */ "./node_modules/pinia/dist/pinia.mjs");
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/initial-state */ "./node_modules/@nextcloud/initial-state/dist/index.es.mjs");
+/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+
+
+
+
+
+
+var userConfig = (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_2__.loadState)('files', 'config', {
+ show_hidden: false,
+ crop_image_previews: true,
+ sort_favorites_first: true
+});
+var useUserConfigStore = function useUserConfigStore() {
+ var store = (0,pinia__WEBPACK_IMPORTED_MODULE_4__.defineStore)('userconfig', {
+ state: function state() {
+ return {
+ userConfig: userConfig
+ };
+ },
+ actions: {
+ /**
+ * Update the user config local store
+ */
+ onUpdate: function onUpdate(key, value) {
+ vue__WEBPACK_IMPORTED_MODULE_5__["default"].set(this.userConfig, key, value);
+ },
+ /**
+ * Update the user config local store AND on server side
+ */
+ update: function update(key, value) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _context.next = 2;
+ return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__["default"].put((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateUrl)('/apps/files/api/v1/config/' + key), {
+ value: value
+ });
+ case 2:
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.emit)('files:config:updated', {
+ key: key,
+ value: value
+ });
+ case 3:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ }
+ }
+ });
+ var userConfigStore = store.apply(void 0, arguments);
+ // Make sure we only register the listeners once
+ if (!userConfigStore._initialized) {
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.subscribe)('files:config:updated', function (_ref) {
+ var key = _ref.key,
+ value = _ref.value;
+ userConfigStore.onUpdate(key, value);
+ });
+ userConfigStore._initialized = true;
+ }
+ return userConfigStore;
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/store/viewConfig.ts":
+/*!********************************************!*\
+ !*** ./apps/files/src/store/viewConfig.ts ***!
+ \********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ useViewConfigStore: function() { return /* binding */ useViewConfigStore; }
+/* harmony export */ });
+/* harmony import */ var pinia__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! pinia */ "./node_modules/pinia/dist/pinia.mjs");
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/initial-state */ "./node_modules/@nextcloud/initial-state/dist/index.es.mjs");
+/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+
+
+var viewConfig = (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_2__.loadState)('files', 'viewConfigs', {});
+var useViewConfigStore = function useViewConfigStore() {
+ var store = (0,pinia__WEBPACK_IMPORTED_MODULE_4__.defineStore)('viewconfig', {
+ state: function state() {
+ return {
+ viewConfig: viewConfig
+ };
+ },
+ getters: {
+ getConfig: function getConfig(state) {
+ return function (view) {
+ return state.viewConfig[view] || {};
+ };
+ }
+ },
+ actions: {
+ /**
+ * Update the view config local store
+ */
+ onUpdate: function onUpdate(view, key, value) {
+ if (!this.viewConfig[view]) {
+ vue__WEBPACK_IMPORTED_MODULE_5__["default"].set(this.viewConfig, view, {});
+ }
+ vue__WEBPACK_IMPORTED_MODULE_5__["default"].set(this.viewConfig[view], key, value);
+ },
+ /**
+ * Update the view config local store AND on server side
+ */
+ update: function update(view, key, value) {
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _nextcloud_axios__WEBPACK_IMPORTED_MODULE_3__["default"].put((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.generateUrl)("/apps/files/api/v1/views/".concat(view, "/").concat(key)), {
+ value: value
+ });
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.emit)('files:viewconfig:updated', {
+ view: view,
+ key: key,
+ value: value
+ });
+ case 2:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ },
+ /**
+ * Set the sorting key AND sort by ASC
+ * The key param must be a valid key of a File object
+ * If not found, will be searched within the File attributes
+ */
+ setSortingBy: function setSortingBy() {
+ var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'basename';
+ var view = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'files';
+ // Save new config
+ this.update(view, 'sorting_mode', key);
+ this.update(view, 'sorting_direction', 'asc');
+ },
+ /**
+ * Toggle the sorting direction
+ */
+ toggleSortingDirection: function toggleSortingDirection() {
+ var view = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'files';
+ var config = this.getConfig(view) || {
+ sorting_direction: 'asc'
+ };
+ var newDirection = config.sorting_direction === 'asc' ? 'desc' : 'asc';
+ // Save new config
+ this.update(view, 'sorting_direction', newDirection);
+ }
+ }
+ });
+ var viewConfigStore = store.apply(void 0, arguments);
+ // Make sure we only register the listeners once
+ if (!viewConfigStore._initialized) {
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.subscribe)('files:viewconfig:updated', function (_ref) {
+ var view = _ref.view,
+ key = _ref.key,
+ value = _ref.value;
+ viewConfigStore.onUpdate(view, key, value);
+ });
+ viewConfigStore._initialized = true;
+ }
+ return viewConfigStore;
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/utils/hashUtils.ts":
+/*!*******************************************!*\
+ !*** ./apps/files/src/utils/hashUtils.ts ***!
+ \*******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ hashCode: function() { return /* binding */ hashCode; }
+/* harmony export */ });
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+var hashCode = function hashCode(str) {
+ return str.split('').reduce(function (a, b) {
+ a = (a << 5) - a + b.charCodeAt(0);
+ return a & a;
+ }, 0);
+};
+
+/***/ }),
+
+/***/ "./apps/files/src/views/favorites.ts":
+/*!*******************************************!*\
+ !*** ./apps/files/src/views/favorites.ts ***!
+ \*******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ generateFolderView: function() { return /* binding */ generateFolderView; },
+/* harmony export */ generateIdFromPath: function() { return /* binding */ generateIdFromPath; }
+/* harmony export */ });
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _mdi_svg_svg_folder_svg_raw__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @mdi/svg/svg/folder.svg?raw */ "./node_modules/@mdi/svg/svg/folder.svg?raw");
+/* harmony import */ var _mdi_svg_svg_star_svg_raw__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @mdi/svg/svg/star.svg?raw */ "./node_modules/@mdi/svg/svg/star.svg?raw");
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! path */ "./node_modules/path/path.js");
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _services_Favorites__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../services/Favorites */ "./apps/files/src/services/Favorites.ts");
+/* harmony import */ var _utils_hashUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/hashUtils */ "./apps/files/src/utils/hashUtils.ts");
+/* harmony import */ var _nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/initial-state */ "./node_modules/@nextcloud/initial-state/dist/index.es.mjs");
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../logger */ "./apps/files/src/logger.js");
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+
+
+
+
+
+var generateFolderView = function generateFolderView(folder) {
+ var index = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
+ return new _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_7__.View({
+ id: generateIdFromPath(folder),
+ name: (0,path__WEBPACK_IMPORTED_MODULE_3__.basename)(folder),
+ icon: _mdi_svg_svg_folder_svg_raw__WEBPACK_IMPORTED_MODULE_1__,
+ order: index,
+ params: {
+ dir: folder,
+ view: 'favorites'
+ },
+ parent: 'favorites',
+ columns: [],
+ getContents: _services_Favorites__WEBPACK_IMPORTED_MODULE_4__.getContents
+ });
+};
+var generateIdFromPath = function generateIdFromPath(path) {
+ return "favorite-".concat((0,_utils_hashUtils__WEBPACK_IMPORTED_MODULE_5__.hashCode)(path));
+};
+/* harmony default export */ __webpack_exports__["default"] = (function () {
+ // Load state in function for mock testing purposes
+ var favoriteFolders = (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_6__.loadState)('files', 'favoriteFolders', []);
+ var favoriteFoldersViews = favoriteFolders.map(function (folder, index) {
+ return generateFolderView(folder, index);
+ });
+ var Navigation = (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_7__.getNavigation)();
+ Navigation.register(new _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_7__.View({
+ id: 'favorites',
+ name: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'Favorites'),
+ caption: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'List of favorites files and folders.'),
+ emptyTitle: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'No favorites yet'),
+ emptyCaption: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'Files and folders you mark as favorite will show up here'),
+ icon: _mdi_svg_svg_star_svg_raw__WEBPACK_IMPORTED_MODULE_2__,
+ order: 5,
+ columns: [],
+ getContents: _services_Favorites__WEBPACK_IMPORTED_MODULE_4__.getContents
+ }));
+ favoriteFoldersViews.forEach(function (view) {
+ return Navigation.register(view);
+ });
+ /**
+ * Update favourites navigation when a new folder is added
+ */
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_7__.subscribe)('files:favorites:added', function (node) {
+ var _node$root;
+ if (node.type !== _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_7__.FileType.Folder) {
+ return;
+ }
+ // Sanity check
+ if (node.path === null || !((_node$root = node.root) !== null && _node$root !== void 0 && _node$root.startsWith('/files'))) {
+ _logger__WEBPACK_IMPORTED_MODULE_8__["default"].error('Favorite folder is not within user files root', {
+ node: node
+ });
+ return;
+ }
+ addPathToFavorites(node.path);
+ });
+ /**
+ * Remove favourites navigation when a folder is removed
+ */
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_7__.subscribe)('files:favorites:removed', function (node) {
+ var _node$root2;
+ if (node.type !== _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_7__.FileType.Folder) {
+ return;
+ }
+ // Sanity check
+ if (node.path === null || !((_node$root2 = node.root) !== null && _node$root2 !== void 0 && _node$root2.startsWith('/files'))) {
+ _logger__WEBPACK_IMPORTED_MODULE_8__["default"].error('Favorite folder is not within user files root', {
+ node: node
+ });
+ return;
+ }
+ removePathFromFavorites(node.path);
+ });
+ /**
+ * Sort the favorites paths array and
+ * update the order property of the existing views
+ */
+ var updateAndSortViews = function updateAndSortViews() {
+ favoriteFolders.sort(function (a, b) {
+ return a.localeCompare(b, (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.getLanguage)(), {
+ ignorePunctuation: true
+ });
+ });
+ favoriteFolders.forEach(function (folder, index) {
+ var view = favoriteFoldersViews.find(function (view) {
+ return view.id === generateIdFromPath(folder);
+ });
+ if (view) {
+ view.order = index;
+ }
+ });
+ };
+ // Add a folder to the favorites paths array and update the views
+ var addPathToFavorites = function addPathToFavorites(path) {
+ var view = generateFolderView(path);
+ // Skip if already exists
+ if (favoriteFolders.find(function (folder) {
+ return folder === path;
+ })) {
+ return;
+ }
+ // Update arrays
+ favoriteFolders.push(path);
+ favoriteFoldersViews.push(view);
+ // Update and sort views
+ updateAndSortViews();
+ Navigation.register(view);
+ };
+ // Remove a folder from the favorites paths array and update the views
+ var removePathFromFavorites = function removePathFromFavorites(path) {
+ var id = generateIdFromPath(path);
+ var index = favoriteFolders.findIndex(function (folder) {
+ return folder === path;
+ });
+ // Skip if not exists
+ if (index === -1) {
+ return;
+ }
+ // Update arrays
+ favoriteFolders.splice(index, 1);
+ favoriteFoldersViews.splice(index, 1);
+ // Update and sort views
+ Navigation.remove(id);
+ updateAndSortViews();
+ };
+});
+
+/***/ }),
+
+/***/ "./apps/files/src/views/files.ts":
+/*!***************************************!*\
+ !*** ./apps/files/src/views/files.ts ***!
+ \***************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _mdi_svg_svg_folder_svg_raw__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @mdi/svg/svg/folder.svg?raw */ "./node_modules/@mdi/svg/svg/folder.svg?raw");
+/* harmony import */ var _services_Files__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../services/Files */ "./apps/files/src/services/Files.ts");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = (function () {
+ var Navigation = (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_3__.getNavigation)();
+ Navigation.register(new _nextcloud_files__WEBPACK_IMPORTED_MODULE_3__.View({
+ id: 'files',
+ name: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'All files'),
+ caption: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'List of your files and folders.'),
+ icon: _mdi_svg_svg_folder_svg_raw__WEBPACK_IMPORTED_MODULE_1__,
+ order: 0,
+ getContents: _services_Files__WEBPACK_IMPORTED_MODULE_2__.getContents
+ }));
+});
+
+/***/ }),
+
+/***/ "./apps/files/src/views/recent.ts":
+/*!****************************************!*\
+ !*** ./apps/files/src/views/recent.ts ***!
+ \****************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _mdi_svg_svg_history_svg_raw__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @mdi/svg/svg/history.svg?raw */ "./node_modules/@mdi/svg/svg/history.svg?raw");
+/* harmony import */ var _services_Recent__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../services/Recent */ "./apps/files/src/services/Recent.ts");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/**
+ * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @author John Molakvoæ <skjnldsv@protonmail.com>
+ *
+ * @license AGPL-3.0-or-later
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = (function () {
+ var Navigation = (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_3__.getNavigation)();
+ Navigation.register(new _nextcloud_files__WEBPACK_IMPORTED_MODULE_3__.View({
+ id: 'recent',
+ name: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'Recent'),
+ caption: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'List of recently modified files and folders.'),
+ emptyTitle: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'No recently modified files'),
+ emptyCaption: (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', 'Files and folders you recently modified will show up here.'),
+ icon: _mdi_svg_svg_history_svg_raw__WEBPACK_IMPORTED_MODULE_1__,
+ order: 2,
+ defaultSortKey: 'mtime',
+ getContents: _services_Recent__WEBPACK_IMPORTED_MODULE_2__.getContents
+ }));
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts&":
+/*!**************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts& ***!
+ \**************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+/**
+ * This component is used to render custom
+ * elements provided by an API. Vue doesn't allow
+ * to directly render an HTMLElement, so we can do
+ * this magic here.
+ */
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'CustomElementRender',
+ props: {
+ source: {
+ type: Object,
+ required: true
+ },
+ currentView: {
+ type: Object,
+ required: true
+ },
+ render: {
+ type: Function,
+ required: true
+ }
+ },
+ watch: {
+ source: function source() {
+ this.updateRootElement();
+ },
+ currentView: function currentView() {
+ this.updateRootElement();
+ }
+ },
+ mounted: function mounted() {
+ this.updateRootElement();
+ },
+ methods: {
+ updateRootElement: function updateRootElement() {
+ var _this = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var span, element;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ span = document.createElement('span');
+ _this.$el.replaceWith(span);
+ _this.$el = span;
+ _context.next = 5;
+ return _this.render(_this.source, _this.currentView);
+ case 5:
+ element = _context.sent;
+ if (element) {
+ _this.$el.replaceWith(element);
+ _this.$el = element;
+ }
+ case 7:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ }
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts&":
+/*!****************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts& ***!
+ \****************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var cancelable_promise__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! cancelable-promise */ "./node_modules/cancelable-promise/umd/CancelablePromise.js");
+/* harmony import */ var cancelable_promise__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(cancelable_promise__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! debounce */ "./node_modules/debounce/index.js");
+/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(debounce__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! path */ "./node_modules/path/path.js");
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _vueuse_components__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! @vueuse/components */ "./node_modules/@vueuse/components/index.mjs");
+/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
+/* harmony import */ var vue_material_design_icons_File_vue__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! vue-material-design-icons/File.vue */ "./node_modules/vue-material-design-icons/File.vue");
+/* harmony import */ var vue_material_design_icons_Folder_vue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! vue-material-design-icons/Folder.vue */ "./node_modules/vue-material-design-icons/Folder.vue");
+/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @nextcloud/moment */ "./node_modules/@nextcloud/moment/dist/index.js");
+/* harmony import */ var _nextcloud_moment__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_moment__WEBPACK_IMPORTED_MODULE_11__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcActionButton_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcActionButton.js */ "./node_modules/@nextcloud/vue/dist/Components/NcActionButton.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcActionButton_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcActionButton_js__WEBPACK_IMPORTED_MODULE_12__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcActions_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcActions.js */ "./node_modules/@nextcloud/vue/dist/Components/NcActions.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcActions_js__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcActions_js__WEBPACK_IMPORTED_MODULE_13__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js */ "./node_modules/@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_14__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcLoadingIcon.js */ "./node_modules/@nextcloud/vue/dist/Components/NcLoadingIcon.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_15__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcTextField.js */ "./node_modules/@nextcloud/vue/dist/Components/NcTextField.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_16__);
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _actions_sidebarAction_ts__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../actions/sidebarAction.ts */ "./apps/files/src/actions/sidebarAction.ts");
+/* harmony import */ var _utils_hashUtils_ts__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../utils/hashUtils.ts */ "./apps/files/src/utils/hashUtils.ts");
+/* harmony import */ var _services_PreviewService_ts__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../services/PreviewService.ts */ "./apps/files/src/services/PreviewService.ts");
+/* harmony import */ var _store_actionsmenu_ts__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../store/actionsmenu.ts */ "./apps/files/src/store/actionsmenu.ts");
+/* harmony import */ var _store_files_ts__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../store/files.ts */ "./apps/files/src/store/files.ts");
+/* harmony import */ var _store_keyboard_ts__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../store/keyboard.ts */ "./apps/files/src/store/keyboard.ts");
+/* harmony import */ var _store_renaming_ts__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../store/renaming.ts */ "./apps/files/src/store/renaming.ts");
+/* harmony import */ var _store_selection_ts__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../store/selection.ts */ "./apps/files/src/store/selection.ts");
+/* harmony import */ var _store_userconfig_ts__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../store/userconfig.ts */ "./apps/files/src/store/userconfig.ts");
+/* harmony import */ var _CustomElementRender_vue__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./CustomElementRender.vue */ "./apps/files/src/components/CustomElementRender.vue");
+/* harmony import */ var _CustomSvgIconRender_vue__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./CustomSvgIconRender.vue */ "./apps/files/src/components/CustomSvgIconRender.vue");
+/* harmony import */ var _FavoriteIcon_vue__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./FavoriteIcon.vue */ "./apps/files/src/components/FavoriteIcon.vue");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
+function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
+function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
+function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
+function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
+function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+// The registered actions list
+var actions = (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_5__.getFileActions)();
+vue__WEBPACK_IMPORTED_MODULE_30__["default"].directive('onClickOutside', _vueuse_components__WEBPACK_IMPORTED_MODULE_31__.vOnClickOutside);
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_30__["default"].extend({
+ name: 'FileEntry',
+ components: {
+ CustomElementRender: _CustomElementRender_vue__WEBPACK_IMPORTED_MODULE_26__["default"],
+ CustomSvgIconRender: _CustomSvgIconRender_vue__WEBPACK_IMPORTED_MODULE_27__["default"],
+ FavoriteIcon: _FavoriteIcon_vue__WEBPACK_IMPORTED_MODULE_28__["default"],
+ FileIcon: vue_material_design_icons_File_vue__WEBPACK_IMPORTED_MODULE_9__["default"],
+ FolderIcon: vue_material_design_icons_Folder_vue__WEBPACK_IMPORTED_MODULE_10__["default"],
+ NcActionButton: (_nextcloud_vue_dist_Components_NcActionButton_js__WEBPACK_IMPORTED_MODULE_12___default()),
+ NcActions: (_nextcloud_vue_dist_Components_NcActions_js__WEBPACK_IMPORTED_MODULE_13___default()),
+ NcCheckboxRadioSwitch: (_nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_14___default()),
+ NcLoadingIcon: (_nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_15___default()),
+ NcTextField: (_nextcloud_vue_dist_Components_NcTextField_js__WEBPACK_IMPORTED_MODULE_16___default())
+ },
+ props: {
+ visible: {
+ type: Boolean,
+ default: false
+ },
+ isMtimeAvailable: {
+ type: Boolean,
+ default: false
+ },
+ isSizeAvailable: {
+ type: Boolean,
+ default: false
+ },
+ source: {
+ type: Object,
+ required: true
+ },
+ index: {
+ type: Number,
+ required: true
+ },
+ nodes: {
+ type: Array,
+ required: true
+ },
+ filesListWidth: {
+ type: Number,
+ default: 0
+ }
+ },
+ setup: function setup() {
+ var actionsMenuStore = (0,_store_actionsmenu_ts__WEBPACK_IMPORTED_MODULE_20__.useActionsMenuStore)();
+ var filesStore = (0,_store_files_ts__WEBPACK_IMPORTED_MODULE_21__.useFilesStore)();
+ var keyboardStore = (0,_store_keyboard_ts__WEBPACK_IMPORTED_MODULE_22__.useKeyboardStore)();
+ var renamingStore = (0,_store_renaming_ts__WEBPACK_IMPORTED_MODULE_23__.useRenamingStore)();
+ var selectionStore = (0,_store_selection_ts__WEBPACK_IMPORTED_MODULE_24__.useSelectionStore)();
+ var userConfigStore = (0,_store_userconfig_ts__WEBPACK_IMPORTED_MODULE_25__.useUserConfigStore)();
+ return {
+ actionsMenuStore: actionsMenuStore,
+ filesStore: filesStore,
+ keyboardStore: keyboardStore,
+ renamingStore: renamingStore,
+ selectionStore: selectionStore,
+ userConfigStore: userConfigStore
+ };
+ },
+ data: function data() {
+ return {
+ backgroundFailed: false,
+ backgroundImage: '',
+ loading: ''
+ };
+ },
+ computed: {
+ userConfig: function userConfig() {
+ return this.userConfigStore.userConfig;
+ },
+ currentView: function currentView() {
+ return this.$navigation.active;
+ },
+ columns: function columns() {
+ var _this$currentView;
+ // Hide columns if the list is too small
+ if (this.filesListWidth < 512) {
+ return [];
+ }
+ return ((_this$currentView = this.currentView) === null || _this$currentView === void 0 ? void 0 : _this$currentView.columns) || [];
+ },
+ currentDir: function currentDir() {
+ var _this$$route;
+ // Remove any trailing slash but leave root slash
+ return (((_this$$route = this.$route) === null || _this$$route === void 0 || (_this$$route = _this$$route.query) === null || _this$$route === void 0 ? void 0 : _this$$route.dir) || '/').replace(/^(.+)\/$/, '$1');
+ },
+ currentFileId: function currentFileId() {
+ return this.$route.params.fileid || this.$route.query.fileid || null;
+ },
+ fileid: function fileid() {
+ var _this$source, _this$source$toString;
+ return (_this$source = this.source) === null || _this$source === void 0 || (_this$source = _this$source.fileid) === null || _this$source === void 0 || (_this$source$toString = _this$source.toString) === null || _this$source$toString === void 0 ? void 0 : _this$source$toString.call(_this$source);
+ },
+ extension: function extension() {
+ var _this$source$attribut;
+ if ((_this$source$attribut = this.source.attributes) !== null && _this$source$attribut !== void 0 && _this$source$attribut.displayName) {
+ return (0,path__WEBPACK_IMPORTED_MODULE_3__.extname)(this.source.attributes.displayName);
+ }
+ return this.source.extension || '';
+ },
+ displayName: function displayName() {
+ var ext = this.extension;
+ var name = this.source.attributes.displayName || this.source.basename;
+ // Strip extension from name if defined
+ return !ext ? name : name.slice(0, 0 - ext.length);
+ },
+ size: function size() {
+ var size = parseInt(this.source.size, 10) || 0;
+ if (typeof size !== 'number' || size < 0) {
+ return this.t('files', 'Pending');
+ }
+ return (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_5__.formatFileSize)(size, true);
+ },
+ sizeOpacity: function sizeOpacity() {
+ // Whatever theme is active, the contrast will pass WCAG AA
+ // with color main text over main background and an opacity of 0.7
+ var minOpacity = 0.7;
+ var maxOpacitySize = 10 * 1024 * 1024;
+ var size = parseInt(this.source.size, 10) || 0;
+ if (!size || size < 0) {
+ return minOpacity;
+ }
+ return minOpacity + (1 - minOpacity) * Math.pow(this.source.size / maxOpacitySize, 2);
+ },
+ mtime: function mtime() {
+ if (this.source.mtime) {
+ return _nextcloud_moment__WEBPACK_IMPORTED_MODULE_11___default()(this.source.mtime).fromNow();
+ }
+ return this.t('files_trashbin', 'A long time ago');
+ },
+ mtimeTitle: function mtimeTitle() {
+ if (this.source.mtime) {
+ return _nextcloud_moment__WEBPACK_IMPORTED_MODULE_11___default()(this.source.mtime).format('LLL');
+ }
+ return '';
+ },
+ linkTo: function linkTo() {
+ var _this$source2;
+ if (this.source.attributes.failed) {
+ return {
+ title: this.t('files', 'This node is unavailable'),
+ is: 'span'
+ };
+ }
+ if (this.enabledDefaultActions.length > 0) {
+ var action = this.enabledDefaultActions[0];
+ var displayName = action.displayName([this.source], this.currentView);
+ return {
+ title: displayName,
+ role: 'button'
+ };
+ }
+ if (((_this$source2 = this.source) === null || _this$source2 === void 0 ? void 0 : _this$source2.permissions) & _nextcloud_files__WEBPACK_IMPORTED_MODULE_5__.Permission.READ) {
+ return {
+ download: this.source.basename,
+ href: this.source.source,
+ title: this.t('files', 'Download file {name}', {
+ name: this.displayName
+ })
+ };
+ }
+ return {
+ is: 'span'
+ };
+ },
+ selectedFiles: function selectedFiles() {
+ return this.selectionStore.selected;
+ },
+ isSelected: function isSelected() {
+ return this.selectedFiles.includes(this.fileid);
+ },
+ cropPreviews: function cropPreviews() {
+ return this.userConfig.crop_image_previews;
+ },
+ previewUrl: function previewUrl() {
+ if (this.source.type === _nextcloud_files__WEBPACK_IMPORTED_MODULE_5__.FileType.Folder) {
+ return null;
+ }
+ try {
+ var previewUrl = this.source.attributes.previewUrl || (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_4__.generateUrl)('/core/preview?fileId={fileid}', {
+ fileid: this.source.fileid
+ });
+ var url = new URL(window.location.origin + previewUrl);
+ // Request tiny previews
+ url.searchParams.set('x', '32');
+ url.searchParams.set('y', '32');
+ url.searchParams.set('mimeFallback', 'true');
+ // Handle cropping
+ url.searchParams.set('a', this.cropPreviews === true ? '0' : '1');
+ return url.href;
+ } catch (e) {
+ return null;
+ }
+ },
+ // Sorted actions that are enabled for this node
+ enabledActions: function enabledActions() {
+ var _this = this;
+ if (this.source.attributes.failed) {
+ return [];
+ }
+ return actions.filter(function (action) {
+ return !action.enabled || action.enabled([_this.source], _this.currentView);
+ }).sort(function (a, b) {
+ return (a.order || 0) - (b.order || 0);
+ });
+ },
+ // Enabled action that are displayed inline
+ enabledInlineActions: function enabledInlineActions() {
+ var _this2 = this;
+ if (this.filesListWidth < 768) {
+ return [];
+ }
+ return this.enabledActions.filter(function (action) {
+ var _action$inline;
+ return action === null || action === void 0 || (_action$inline = action.inline) === null || _action$inline === void 0 ? void 0 : _action$inline.call(action, _this2.source, _this2.currentView);
+ });
+ },
+ // Enabled action that are displayed inline with a custom render function
+ enabledRenderActions: function enabledRenderActions() {
+ if (!this.visible) {
+ return [];
+ }
+ return this.enabledActions.filter(function (action) {
+ return typeof action.renderInline === 'function';
+ });
+ },
+ // Default actions
+ enabledDefaultActions: function enabledDefaultActions() {
+ return this.enabledActions.filter(function (action) {
+ return !!(action !== null && action !== void 0 && action.default);
+ });
+ },
+ // Actions shown in the menu
+ enabledMenuActions: function enabledMenuActions() {
+ return [].concat(_toConsumableArray(this.enabledInlineActions), _toConsumableArray(this.enabledActions.filter(function (action) {
+ return action.default !== _nextcloud_files__WEBPACK_IMPORTED_MODULE_5__.DefaultType.HIDDEN && typeof action.renderInline !== 'function';
+ }))).filter(function (value, index, self) {
+ // Then we filter duplicates to prevent inline actions to be shown twice
+ return index === self.findIndex(function (action) {
+ return action.id === value.id;
+ });
+ });
+ },
+ openedMenu: {
+ get: function get() {
+ return this.actionsMenuStore.opened === this.uniqueId;
+ },
+ set: function set(opened) {
+ this.actionsMenuStore.opened = opened ? this.uniqueId : null;
+ }
+ },
+ uniqueId: function uniqueId() {
+ return (0,_utils_hashUtils_ts__WEBPACK_IMPORTED_MODULE_18__.hashCode)(this.source.source);
+ },
+ isFavorite: function isFavorite() {
+ return this.source.attributes.favorite === 1;
+ },
+ isRenaming: function isRenaming() {
+ return this.renamingStore.renamingNode === this.source;
+ },
+ isRenamingSmallScreen: function isRenamingSmallScreen() {
+ return this.isRenaming && this.filesListWidth < 512;
+ },
+ newName: {
+ get: function get() {
+ return this.renamingStore.newName;
+ },
+ set: function set(newName) {
+ this.renamingStore.newName = newName;
+ }
+ },
+ isActive: function isActive() {
+ var _this$currentFileId, _this$currentFileId$t;
+ return this.fileid === ((_this$currentFileId = this.currentFileId) === null || _this$currentFileId === void 0 || (_this$currentFileId$t = _this$currentFileId.toString) === null || _this$currentFileId$t === void 0 ? void 0 : _this$currentFileId$t.call(_this$currentFileId));
+ }
+ },
+ watch: {
+ /**
+ * When the source changes, reset the preview
+ * and fetch the new one.
+ */
+ source: function source() {
+ this.resetState();
+ this.debounceIfNotCached();
+ },
+ /**
+ * If renaming starts, select the file name
+ * in the input, without the extension.
+ */
+ isRenaming: function isRenaming() {
+ this.startRenaming();
+ }
+ },
+ /**
+ * The row is mounted once and reused as we scroll.
+ */
+ mounted: function mounted() {
+ // ⚠ Init the debounce function on mount and
+ // not when the module is imported to
+ // avoid sharing between recycled components
+ this.debounceGetPreview = (0,debounce__WEBPACK_IMPORTED_MODULE_1__.debounce)(function () {
+ this.fetchAndApplyPreview();
+ }, 150, false);
+ // Fetch the preview on init
+ this.debounceIfNotCached();
+ },
+ beforeDestroy: function beforeDestroy() {
+ this.resetState();
+ },
+ methods: {
+ debounceIfNotCached: function debounceIfNotCached() {
+ var _this3 = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var isCached;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ if (_this3.previewUrl) {
+ _context.next = 2;
+ break;
+ }
+ return _context.abrupt("return");
+ case 2:
+ _context.next = 4;
+ return (0,_services_PreviewService_ts__WEBPACK_IMPORTED_MODULE_19__.isCachedPreview)(_this3.previewUrl);
+ case 4:
+ isCached = _context.sent;
+ if (!isCached) {
+ _context.next = 9;
+ break;
+ }
+ _this3.backgroundImage = "url(".concat(_this3.previewUrl, ")");
+ _this3.backgroundFailed = false;
+ return _context.abrupt("return");
+ case 9:
+ // We don't have this preview cached or it expired, requesting it
+ _this3.debounceGetPreview();
+ case 10:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ },
+ fetchAndApplyPreview: function fetchAndApplyPreview() {
+ var _this4 = this;
+ // Ignore if no preview
+ if (!this.previewUrl) {
+ return;
+ }
+ // If any image is being processed, reset it
+ if (this.previewPromise) {
+ this.clearImg();
+ }
+ // Store the promise to be able to cancel it
+ this.previewPromise = new cancelable_promise__WEBPACK_IMPORTED_MODULE_0__.CancelablePromise(function (resolve, reject, onCancel) {
+ var img = new Image();
+ // If visible, load the preview with higher priority
+ img.fetchpriority = _this4.visible ? 'high' : 'auto';
+ img.onload = function () {
+ _this4.backgroundImage = "url(".concat(_this4.previewUrl, ")");
+ _this4.backgroundFailed = false;
+ resolve(img);
+ };
+ img.onerror = function () {
+ _this4.backgroundFailed = true;
+ reject(img);
+ };
+ img.src = _this4.previewUrl;
+ // Image loading has been canceled
+ onCancel(function () {
+ img.onerror = null;
+ img.onload = null;
+ img.src = '';
+ });
+ });
+ },
+ resetState: function resetState() {
+ // Reset loading state
+ this.loading = '';
+ // Reset the preview
+ this.clearImg();
+ // Close menu
+ this.openedMenu = false;
+ },
+ clearImg: function clearImg() {
+ this.backgroundImage = '';
+ this.backgroundFailed = false;
+ if (this.previewPromise) {
+ this.previewPromise.cancel();
+ this.previewPromise = null;
+ }
+ },
+ onActionClick: function onActionClick(action) {
+ var _this5 = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
+ var displayName, success;
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ displayName = action.displayName([_this5.source], _this5.currentView);
+ _context2.prev = 1;
+ // Set the loading marker
+ _this5.loading = action.id;
+ vue__WEBPACK_IMPORTED_MODULE_30__["default"].set(_this5.source, '_loading', true);
+ _context2.next = 6;
+ return action.exec(_this5.source, _this5.currentView, _this5.currentDir);
+ case 6:
+ success = _context2.sent;
+ if (!(success === null)) {
+ _context2.next = 9;
+ break;
+ }
+ return _context2.abrupt("return");
+ case 9:
+ if (!success) {
+ _context2.next = 12;
+ break;
+ }
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_6__.showSuccess)(_this5.t('files', '"{displayName}" action executed successfully', {
+ displayName: displayName
+ }));
+ return _context2.abrupt("return");
+ case 12:
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_6__.showError)(_this5.t('files', '"{displayName}" action failed', {
+ displayName: displayName
+ }));
+ _context2.next = 19;
+ break;
+ case 15:
+ _context2.prev = 15;
+ _context2.t0 = _context2["catch"](1);
+ _logger_js__WEBPACK_IMPORTED_MODULE_29__["default"].error('Error while executing action', {
+ action: action,
+ e: _context2.t0
+ });
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_6__.showError)(_this5.t('files', '"{displayName}" action failed', {
+ displayName: displayName
+ }));
+ case 19:
+ _context2.prev = 19;
+ // Reset the loading marker
+ _this5.loading = '';
+ vue__WEBPACK_IMPORTED_MODULE_30__["default"].set(_this5.source, '_loading', false);
+ return _context2.finish(19);
+ case 23:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2, null, [[1, 15, 19, 23]]);
+ }))();
+ },
+ execDefaultAction: function execDefaultAction(event) {
+ if (this.enabledDefaultActions.length > 0) {
+ event.preventDefault();
+ event.stopPropagation();
+ // Execute the first default action if any
+ this.enabledDefaultActions[0].exec(this.source, this.currentView, this.currentDir);
+ }
+ },
+ openDetailsIfAvailable: function openDetailsIfAvailable(event) {
+ var detailsAction = this.enabledActions.find(function (action) {
+ return action.id === _actions_sidebarAction_ts__WEBPACK_IMPORTED_MODULE_17__.ACTION_DETAILS;
+ });
+ if (detailsAction) {
+ event.preventDefault();
+ event.stopPropagation();
+ detailsAction.exec(this.source, this.currentView);
+ }
+ },
+ onSelectionChange: function onSelectionChange(selection) {
+ var _this$keyboardStore,
+ _this6 = this;
+ var newSelectedIndex = this.index;
+ var lastSelectedIndex = this.selectionStore.lastSelectedIndex;
+ // Get the last selected and select all files in between
+ if ((_this$keyboardStore = this.keyboardStore) !== null && _this$keyboardStore !== void 0 && _this$keyboardStore.shiftKey && lastSelectedIndex !== null) {
+ var isAlreadySelected = this.selectedFiles.includes(this.fileid);
+ var start = Math.min(newSelectedIndex, lastSelectedIndex);
+ var end = Math.max(lastSelectedIndex, newSelectedIndex);
+ var lastSelection = this.selectionStore.lastSelection;
+ var filesToSelect = this.nodes.map(function (file) {
+ var _file$fileid, _file$fileid$toString;
+ return (_file$fileid = file.fileid) === null || _file$fileid === void 0 || (_file$fileid$toString = _file$fileid.toString) === null || _file$fileid$toString === void 0 ? void 0 : _file$fileid$toString.call(_file$fileid);
+ }).slice(start, end + 1);
+ // If already selected, update the new selection _without_ the current file
+ var _selection = [].concat(_toConsumableArray(lastSelection), _toConsumableArray(filesToSelect)).filter(function (fileId) {
+ return !isAlreadySelected || fileId !== _this6.fileid;
+ });
+ _logger_js__WEBPACK_IMPORTED_MODULE_29__["default"].debug('Shift key pressed, selecting all files in between', {
+ start: start,
+ end: end,
+ filesToSelect: filesToSelect,
+ isAlreadySelected: isAlreadySelected
+ });
+ // Keep previous lastSelectedIndex to be use for further shift selections
+ this.selectionStore.set(_selection);
+ return;
+ }
+ _logger_js__WEBPACK_IMPORTED_MODULE_29__["default"].debug('Updating selection', {
+ selection: selection
+ });
+ this.selectionStore.set(selection);
+ this.selectionStore.setLastIndex(newSelectedIndex);
+ },
+ // Open the actions menu on right click
+ onRightClick: function onRightClick(event) {
+ // If already opened, fallback to default browser
+ if (this.openedMenu) {
+ return;
+ }
+ // If the clicked row is in the selection, open global menu
+ var isMoreThanOneSelected = this.selectedFiles.length > 1;
+ this.actionsMenuStore.opened = this.isSelected && isMoreThanOneSelected ? 'global' : this.uniqueId;
+ // Prevent any browser defaults
+ event.preventDefault();
+ event.stopPropagation();
+ },
+ /**
+ * Check if the file name is valid and update the
+ * input validity using browser's native validation.
+ * @param event the keyup event
+ */
+ checkInputValidity: function checkInputValidity(event) {
+ var _this$newName$trim, _this$newName;
+ var input = event === null || event === void 0 ? void 0 : event.target;
+ var newName = ((_this$newName$trim = (_this$newName = this.newName).trim) === null || _this$newName$trim === void 0 ? void 0 : _this$newName$trim.call(_this$newName)) || '';
+ try {
+ this.isFileNameValid(newName);
+ input.setCustomValidity('');
+ input.title = '';
+ } catch (e) {
+ input.setCustomValidity(e.message);
+ input.title = e.message;
+ } finally {
+ input.reportValidity();
+ }
+ },
+ isFileNameValid: function isFileNameValid(name) {
+ var trimmedName = name.trim();
+ if (trimmedName === '.' || trimmedName === '..') {
+ throw new Error(this.t('files', '"{name}" is an invalid file name.', {
+ name: name
+ }));
+ } else if (trimmedName.length === 0) {
+ throw new Error(this.t('files', 'File name cannot be empty.'));
+ } else if (trimmedName.indexOf('/') !== -1) {
+ throw new Error(this.t('files', '"/" is not allowed inside a file name.'));
+ } else if (trimmedName.match(OC.config.blacklist_files_regex)) {
+ throw new Error(this.t('files', '"{name}" is not an allowed filetype.', {
+ name: name
+ }));
+ } else if (this.checkIfNodeExists(name)) {
+ throw new Error(this.t('files', '{newName} already exists.', {
+ newName: name
+ }));
+ }
+ return true;
+ },
+ checkIfNodeExists: function checkIfNodeExists(name) {
+ var _this7 = this;
+ return this.nodes.find(function (node) {
+ return node.basename === name && node !== _this7.source;
+ });
+ },
+ startRenaming: function startRenaming() {
+ var _this8 = this;
+ this.checkInputValidity();
+ this.$nextTick(function () {
+ var _this8$$refs$renameIn;
+ var extLength = (_this8.source.extension || '').length;
+ var length = _this8.source.basename.length - extLength;
+ var input = (_this8$$refs$renameIn = _this8.$refs.renameInput) === null || _this8$$refs$renameIn === void 0 || (_this8$$refs$renameIn = _this8$$refs$renameIn.$refs) === null || _this8$$refs$renameIn === void 0 || (_this8$$refs$renameIn = _this8$$refs$renameIn.inputField) === null || _this8$$refs$renameIn === void 0 || (_this8$$refs$renameIn = _this8$$refs$renameIn.$refs) === null || _this8$$refs$renameIn === void 0 ? void 0 : _this8$$refs$renameIn.input;
+ if (!input) {
+ _logger_js__WEBPACK_IMPORTED_MODULE_29__["default"].error('Could not find the rename input');
+ return;
+ }
+ input.setSelectionRange(0, length);
+ input.focus();
+ });
+ },
+ stopRenaming: function stopRenaming() {
+ if (!this.isRenaming) {
+ return;
+ }
+ // Reset the renaming store
+ this.renamingStore.$reset();
+ },
+ // Rename and move the file
+ onRename: function onRename() {
+ var _this9 = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
+ var _this9$newName$trim, _this9$newName;
+ var oldName, oldSource, newName, _error$response, _error$response2;
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
+ while (1) switch (_context3.prev = _context3.next) {
+ case 0:
+ oldName = _this9.source.basename;
+ oldSource = _this9.source.source;
+ newName = ((_this9$newName$trim = (_this9$newName = _this9.newName).trim) === null || _this9$newName$trim === void 0 ? void 0 : _this9$newName$trim.call(_this9$newName)) || '';
+ if (!(newName === '')) {
+ _context3.next = 6;
+ break;
+ }
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_6__.showError)(_this9.t('files', 'Name cannot be empty'));
+ return _context3.abrupt("return");
+ case 6:
+ if (!(oldName === newName)) {
+ _context3.next = 9;
+ break;
+ }
+ _this9.stopRenaming();
+ return _context3.abrupt("return");
+ case 9:
+ if (!_this9.checkIfNodeExists(newName)) {
+ _context3.next = 12;
+ break;
+ }
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_6__.showError)(_this9.t('files', 'Another entry with the same name already exists'));
+ return _context3.abrupt("return");
+ case 12:
+ // Set loading state
+ _this9.loading = 'renaming';
+ vue__WEBPACK_IMPORTED_MODULE_30__["default"].set(_this9.source, '_loading', true);
+ // Update node
+ _this9.source.rename(newName);
+ _context3.prev = 15;
+ _context3.next = 18;
+ return (0,_nextcloud_axios__WEBPACK_IMPORTED_MODULE_8__["default"])({
+ method: 'MOVE',
+ url: oldSource,
+ headers: {
+ Destination: encodeURI(_this9.source.source)
+ }
+ });
+ case 18:
+ // Success 🎉
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_2__.emit)('files:node:updated', _this9.source);
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_2__.emit)('files:node:renamed', _this9.source);
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_6__.showSuccess)(_this9.t('files', 'Renamed "{oldName}" to "{newName}"', {
+ oldName: oldName,
+ newName: newName
+ }));
+ _this9.stopRenaming();
+ _this9.$nextTick(function () {
+ _this9.$refs.basename.focus();
+ });
+ _context3.next = 39;
+ break;
+ case 25:
+ _context3.prev = 25;
+ _context3.t0 = _context3["catch"](15);
+ _logger_js__WEBPACK_IMPORTED_MODULE_29__["default"].error('Error while renaming file', {
+ error: _context3.t0
+ });
+ _this9.source.rename(oldName);
+ _this9.$refs.renameInput.focus();
+ // TODO: 409 means current folder does not exist, redirect ?
+ if (!((_context3.t0 === null || _context3.t0 === void 0 || (_error$response = _context3.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.status) === 404)) {
+ _context3.next = 35;
+ break;
+ }
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_6__.showError)(_this9.t('files', 'Could not rename "{oldName}", it does not exist any more', {
+ oldName: oldName
+ }));
+ return _context3.abrupt("return");
+ case 35:
+ if (!((_context3.t0 === null || _context3.t0 === void 0 || (_error$response2 = _context3.t0.response) === null || _error$response2 === void 0 ? void 0 : _error$response2.status) === 412)) {
+ _context3.next = 38;
+ break;
+ }
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_6__.showError)(_this9.t('files', 'The name "{newName}"" is already used in the folder "{dir}". Please choose a different name.', {
+ newName: newName,
+ dir: _this9.currentDir
+ }));
+ return _context3.abrupt("return");
+ case 38:
+ // Unknown error
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_6__.showError)(_this9.t('files', 'Could not rename "{oldName}"', {
+ oldName: oldName
+ }));
+ case 39:
+ _context3.prev = 39;
+ _this9.loading = false;
+ vue__WEBPACK_IMPORTED_MODULE_30__["default"].set(_this9.source, '_loading', false);
+ return _context3.finish(39);
+ case 43:
+ case "end":
+ return _context3.stop();
+ }
+ }, _callee3, null, [[15, 25, 39, 43]]);
+ }))();
+ },
+ /**
+ * Making this a function in case the files-list
+ * reference changes in the future. That way we're
+ * sure there is one at the time we call it.
+ */
+ getBoundariesElement: function getBoundariesElement() {
+ return document.querySelector('.app-content > .files-list');
+ },
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_7__.translate,
+ formatFileSize: _nextcloud_files__WEBPACK_IMPORTED_MODULE_5__.formatFileSize
+ }
+}));
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts&":
+/*!**********************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts& ***!
+ \**********************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+/**
+ * This component is used to render custom
+ * elements provided by an API. Vue doesn't allow
+ * to directly render an HTMLElement, so we can do
+ * this magic here.
+ */
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'FilesListHeader',
+ props: {
+ header: {
+ type: Object,
+ required: true
+ },
+ currentFolder: {
+ type: Object,
+ required: true
+ },
+ currentView: {
+ type: Object,
+ required: true
+ }
+ },
+ computed: {
+ enabled: function enabled() {
+ return this.header.enabled(this.currentFolder, this.currentView);
+ }
+ },
+ watch: {
+ enabled: function enabled(_enabled) {
+ if (!_enabled) {
+ return;
+ }
+ this.header.updated(this.currentFolder, this.currentView);
+ }
+ },
+ mounted: function mounted() {
+ console.debug('Mounted', this.header.id);
+ this.header.render(this.$refs.mount, this.currentFolder, this.currentView);
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts&":
+/*!***************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts& ***!
+ \***************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _store_files_ts__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../store/files.ts */ "./apps/files/src/store/files.ts");
+/* harmony import */ var _store_paths_ts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../store/paths.ts */ "./apps/files/src/store/paths.ts");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_4__["default"].extend({
+ name: 'FilesListTableFooter',
+ components: {},
+ props: {
+ isMtimeAvailable: {
+ type: Boolean,
+ default: false
+ },
+ isSizeAvailable: {
+ type: Boolean,
+ default: false
+ },
+ nodes: {
+ type: Array,
+ required: true
+ },
+ summary: {
+ type: String,
+ default: ''
+ },
+ filesListWidth: {
+ type: Number,
+ default: 0
+ }
+ },
+ setup: function setup() {
+ var pathsStore = (0,_store_paths_ts__WEBPACK_IMPORTED_MODULE_3__.usePathsStore)();
+ var filesStore = (0,_store_files_ts__WEBPACK_IMPORTED_MODULE_2__.useFilesStore)();
+ return {
+ filesStore: filesStore,
+ pathsStore: pathsStore
+ };
+ },
+ computed: {
+ currentView: function currentView() {
+ return this.$navigation.active;
+ },
+ dir: function dir() {
+ var _this$$route;
+ // Remove any trailing slash but leave root slash
+ return (((_this$$route = this.$route) === null || _this$$route === void 0 || (_this$$route = _this$$route.query) === null || _this$$route === void 0 ? void 0 : _this$$route.dir) || '/').replace(/^(.+)\/$/, '$1');
+ },
+ currentFolder: function currentFolder() {
+ var _this$currentView;
+ if (!((_this$currentView = this.currentView) !== null && _this$currentView !== void 0 && _this$currentView.id)) {
+ return;
+ }
+ if (this.dir === '/') {
+ return this.filesStore.getRoot(this.currentView.id);
+ }
+ var fileId = this.pathsStore.getPath(this.currentView.id, this.dir);
+ return this.filesStore.getNode(fileId);
+ },
+ columns: function columns() {
+ var _this$currentView2;
+ // Hide columns if the list is too small
+ if (this.filesListWidth < 512) {
+ return [];
+ }
+ return ((_this$currentView2 = this.currentView) === null || _this$currentView2 === void 0 ? void 0 : _this$currentView2.columns) || [];
+ },
+ totalSize: function totalSize() {
+ var _this$currentFolder;
+ // If we have the size already, let's use it
+ if ((_this$currentFolder = this.currentFolder) !== null && _this$currentFolder !== void 0 && _this$currentFolder.size) {
+ return (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.formatFileSize)(this.currentFolder.size, true);
+ }
+ // Otherwise let's compute it
+ return (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.formatFileSize)(this.nodes.reduce(function (total, node) {
+ return total + node.size || 0;
+ }, 0), true);
+ }
+ },
+ methods: {
+ classForColumn: function classForColumn(column) {
+ return _defineProperty({
+ 'files-list__row-column-custom': true
+ }, "files-list__row-".concat(this.currentView.id, "-").concat(column.id), true);
+ },
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.translate
+ }
+}));
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts&":
+/*!***************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts& ***!
+ \***************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js */ "./node_modules/@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _store_files_ts__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../store/files.ts */ "./apps/files/src/store/files.ts");
+/* harmony import */ var _store_selection_ts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../store/selection.ts */ "./apps/files/src/store/selection.ts");
+/* harmony import */ var _FilesListTableHeaderActions_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./FilesListTableHeaderActions.vue */ "./apps/files/src/components/FilesListTableHeaderActions.vue");
+/* harmony import */ var _FilesListTableHeaderButton_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./FilesListTableHeaderButton.vue */ "./apps/files/src/components/FilesListTableHeaderButton.vue");
+/* harmony import */ var _mixins_filesSorting_ts__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../mixins/filesSorting.ts */ "./apps/files/src/mixins/filesSorting.ts");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+
+
+
+
+
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_8__["default"].extend({
+ name: 'FilesListTableHeader',
+ components: {
+ FilesListTableHeaderButton: _FilesListTableHeaderButton_vue__WEBPACK_IMPORTED_MODULE_5__["default"],
+ NcCheckboxRadioSwitch: (_nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_1___default()),
+ FilesListTableHeaderActions: _FilesListTableHeaderActions_vue__WEBPACK_IMPORTED_MODULE_4__["default"]
+ },
+ mixins: [_mixins_filesSorting_ts__WEBPACK_IMPORTED_MODULE_6__["default"]],
+ props: {
+ isMtimeAvailable: {
+ type: Boolean,
+ default: false
+ },
+ isSizeAvailable: {
+ type: Boolean,
+ default: false
+ },
+ nodes: {
+ type: Array,
+ required: true
+ },
+ filesListWidth: {
+ type: Number,
+ default: 0
+ }
+ },
+ setup: function setup() {
+ var filesStore = (0,_store_files_ts__WEBPACK_IMPORTED_MODULE_2__.useFilesStore)();
+ var selectionStore = (0,_store_selection_ts__WEBPACK_IMPORTED_MODULE_3__.useSelectionStore)();
+ return {
+ filesStore: filesStore,
+ selectionStore: selectionStore
+ };
+ },
+ computed: {
+ currentView: function currentView() {
+ return this.$navigation.active;
+ },
+ columns: function columns() {
+ var _this$currentView;
+ // Hide columns if the list is too small
+ if (this.filesListWidth < 512) {
+ return [];
+ }
+ return ((_this$currentView = this.currentView) === null || _this$currentView === void 0 ? void 0 : _this$currentView.columns) || [];
+ },
+ dir: function dir() {
+ var _this$$route;
+ // Remove any trailing slash but leave root slash
+ return (((_this$$route = this.$route) === null || _this$$route === void 0 || (_this$$route = _this$$route.query) === null || _this$$route === void 0 ? void 0 : _this$$route.dir) || '/').replace(/^(.+)\/$/, '$1');
+ },
+ selectAllBind: function selectAllBind() {
+ var label = this.isNoneSelected || this.isSomeSelected ? this.t('files', 'Select all') : this.t('files', 'Unselect all');
+ return {
+ 'aria-label': label,
+ checked: this.isAllSelected,
+ indeterminate: this.isSomeSelected,
+ title: label
+ };
+ },
+ selectedNodes: function selectedNodes() {
+ return this.selectionStore.selected;
+ },
+ isAllSelected: function isAllSelected() {
+ return this.selectedNodes.length === this.nodes.length;
+ },
+ isNoneSelected: function isNoneSelected() {
+ return this.selectedNodes.length === 0;
+ },
+ isSomeSelected: function isSomeSelected() {
+ return !this.isAllSelected && !this.isNoneSelected;
+ }
+ },
+ methods: {
+ classForColumn: function classForColumn(column) {
+ return _defineProperty({
+ 'files-list__column': true,
+ 'files-list__column--sortable': !!column.sort,
+ 'files-list__row-column-custom': true
+ }, "files-list__row-".concat(this.currentView.id, "-").concat(column.id), true);
+ },
+ onToggleAll: function onToggleAll(selected) {
+ if (selected) {
+ var selection = this.nodes.map(function (node) {
+ return node.fileid.toString();
+ });
+ _logger_js__WEBPACK_IMPORTED_MODULE_7__["default"].debug('Added all nodes to selection', {
+ selection: selection
+ });
+ this.selectionStore.setLastIndex(null);
+ this.selectionStore.set(selection);
+ } else {
+ _logger_js__WEBPACK_IMPORTED_MODULE_7__["default"].debug('Cleared selection');
+ this.selectionStore.reset();
+ }
+ },
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate
+ }
+}));
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts&":
+/*!**********************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts& ***!
+ \**********************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcActionButton_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcActionButton.js */ "./node_modules/@nextcloud/vue/dist/Components/NcActionButton.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcActionButton_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcActionButton_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcActions_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcActions.js */ "./node_modules/@nextcloud/vue/dist/Components/NcActions.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcActions_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcActions_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcLoadingIcon.js */ "./node_modules/@nextcloud/vue/dist/Components/NcLoadingIcon.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _store_actionsmenu_ts__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../store/actionsmenu.ts */ "./apps/files/src/store/actionsmenu.ts");
+/* harmony import */ var _store_files_ts__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../store/files.ts */ "./apps/files/src/store/files.ts");
+/* harmony import */ var _store_selection_ts__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../store/selection.ts */ "./apps/files/src/store/selection.ts");
+/* harmony import */ var _mixins_filesListWidth_ts__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../mixins/filesListWidth.ts */ "./apps/files/src/mixins/filesListWidth.ts");
+/* harmony import */ var _CustomSvgIconRender_vue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./CustomSvgIconRender.vue */ "./apps/files/src/components/CustomSvgIconRender.vue");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+
+
+
+
+
+
+
+
+
+
+
+
+
+// The registered actions list
+var actions = (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_0__.getFileActions)();
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_12__["default"].extend({
+ name: 'FilesListTableHeaderActions',
+ components: {
+ CustomSvgIconRender: _CustomSvgIconRender_vue__WEBPACK_IMPORTED_MODULE_10__["default"],
+ NcActions: (_nextcloud_vue_dist_Components_NcActions_js__WEBPACK_IMPORTED_MODULE_4___default()),
+ NcActionButton: (_nextcloud_vue_dist_Components_NcActionButton_js__WEBPACK_IMPORTED_MODULE_3___default()),
+ NcLoadingIcon: (_nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_5___default())
+ },
+ mixins: [_mixins_filesListWidth_ts__WEBPACK_IMPORTED_MODULE_9__["default"]],
+ props: {
+ currentView: {
+ type: Object,
+ required: true
+ },
+ selectedNodes: {
+ type: Array,
+ default: function _default() {
+ return [];
+ }
+ }
+ },
+ setup: function setup() {
+ var actionsMenuStore = (0,_store_actionsmenu_ts__WEBPACK_IMPORTED_MODULE_6__.useActionsMenuStore)();
+ var filesStore = (0,_store_files_ts__WEBPACK_IMPORTED_MODULE_7__.useFilesStore)();
+ var selectionStore = (0,_store_selection_ts__WEBPACK_IMPORTED_MODULE_8__.useSelectionStore)();
+ return {
+ actionsMenuStore: actionsMenuStore,
+ filesStore: filesStore,
+ selectionStore: selectionStore
+ };
+ },
+ data: function data() {
+ return {
+ loading: null
+ };
+ },
+ computed: {
+ dir: function dir() {
+ var _this$$route;
+ // Remove any trailing slash but leave root slash
+ return (((_this$$route = this.$route) === null || _this$$route === void 0 || (_this$$route = _this$$route.query) === null || _this$$route === void 0 ? void 0 : _this$$route.dir) || '/').replace(/^(.+)\/$/, '$1');
+ },
+ enabledActions: function enabledActions() {
+ var _this = this;
+ return actions.filter(function (action) {
+ return action.execBatch;
+ }).filter(function (action) {
+ return !action.enabled || action.enabled(_this.nodes, _this.currentView);
+ }).sort(function (a, b) {
+ return (a.order || 0) - (b.order || 0);
+ });
+ },
+ nodes: function nodes() {
+ var _this2 = this;
+ return this.selectedNodes.map(function (fileid) {
+ return _this2.getNode(fileid);
+ }).filter(function (node) {
+ return node;
+ });
+ },
+ areSomeNodesLoading: function areSomeNodesLoading() {
+ return this.nodes.some(function (node) {
+ return node._loading;
+ });
+ },
+ openedMenu: {
+ get: function get() {
+ return this.actionsMenuStore.opened === 'global';
+ },
+ set: function set(opened) {
+ this.actionsMenuStore.opened = opened ? 'global' : null;
+ }
+ },
+ inlineActions: function inlineActions() {
+ if (this.filesListWidth < 512) {
+ return 0;
+ }
+ if (this.filesListWidth < 768) {
+ return 1;
+ }
+ if (this.filesListWidth < 1024) {
+ return 2;
+ }
+ return 3;
+ }
+ },
+ methods: {
+ /**
+ * Get a cached note from the store
+ *
+ * @param {number} fileId the file id to get
+ * @return {Folder|File}
+ */
+ getNode: function getNode(fileId) {
+ return this.filesStore.getNode(fileId);
+ },
+ onActionClick: function onActionClick(action) {
+ var _this3 = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var displayName, selectionIds, results, failedIds;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ displayName = action.displayName(_this3.nodes, _this3.currentView);
+ selectionIds = _this3.selectedNodes;
+ _context.prev = 2;
+ // Set loading markers
+ _this3.loading = action.id;
+ _this3.nodes.forEach(function (node) {
+ vue__WEBPACK_IMPORTED_MODULE_12__["default"].set(node, '_loading', true);
+ });
+ // Dispatch action execution
+ _context.next = 7;
+ return action.execBatch(_this3.nodes, _this3.currentView, _this3.dir);
+ case 7:
+ results = _context.sent;
+ if (results.some(function (result) {
+ return result !== null;
+ })) {
+ _context.next = 11;
+ break;
+ }
+ // If the actions returned null, we stay silent
+ _this3.selectionStore.reset();
+ return _context.abrupt("return");
+ case 11:
+ if (!results.some(function (result) {
+ return result === false;
+ })) {
+ _context.next = 16;
+ break;
+ }
+ // Remove the failed ids from the selection
+ failedIds = selectionIds.filter(function (fileid, index) {
+ return results[index] === false;
+ });
+ _this3.selectionStore.set(failedIds);
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__.showError)(_this3.t('files', '"{displayName}" failed on some elements ', {
+ displayName: displayName
+ }));
+ return _context.abrupt("return");
+ case 16:
+ // Show success message and clear selection
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__.showSuccess)(_this3.t('files', '"{displayName}" batch action executed successfully', {
+ displayName: displayName
+ }));
+ _this3.selectionStore.reset();
+ _context.next = 24;
+ break;
+ case 20:
+ _context.prev = 20;
+ _context.t0 = _context["catch"](2);
+ _logger_js__WEBPACK_IMPORTED_MODULE_11__["default"].error('Error while executing action', {
+ action: action,
+ e: _context.t0
+ });
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__.showError)(_this3.t('files', '"{displayName}" action failed', {
+ displayName: displayName
+ }));
+ case 24:
+ _context.prev = 24;
+ // Remove loading markers
+ _this3.loading = null;
+ _this3.nodes.forEach(function (node) {
+ vue__WEBPACK_IMPORTED_MODULE_12__["default"].set(node, '_loading', false);
+ });
+ return _context.finish(24);
+ case 28:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee, null, [[2, 20, 24, 28]]);
+ }))();
+ },
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_2__.translate
+ }
+}));
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts&":
+/*!*********************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts& ***!
+ \*********************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var vue_material_design_icons_MenuDown_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/MenuDown.vue */ "./node_modules/vue-material-design-icons/MenuDown.vue");
+/* harmony import */ var vue_material_design_icons_MenuUp_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue-material-design-icons/MenuUp.vue */ "./node_modules/vue-material-design-icons/MenuUp.vue");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcButton.js */ "./node_modules/@nextcloud/vue/dist/Components/NcButton.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _mixins_filesSorting_ts__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../mixins/filesSorting.ts */ "./apps/files/src/mixins/filesSorting.ts");
+
+
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_5__["default"].extend({
+ name: 'FilesListTableHeaderButton',
+ components: {
+ MenuDown: vue_material_design_icons_MenuDown_vue__WEBPACK_IMPORTED_MODULE_1__["default"],
+ MenuUp: vue_material_design_icons_MenuUp_vue__WEBPACK_IMPORTED_MODULE_2__["default"],
+ NcButton: (_nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_3___default())
+ },
+ mixins: [_mixins_filesSorting_ts__WEBPACK_IMPORTED_MODULE_4__["default"]],
+ props: {
+ name: {
+ type: String,
+ required: true
+ },
+ mode: {
+ type: String,
+ required: true
+ }
+ },
+ methods: {
+ sortAriaLabel: function sortAriaLabel(column) {
+ var direction = this.isAscSorting ? this.t('files', 'ascending') : this.t('files', 'descending');
+ return this.t('files', 'Sort list by {column} ({direction})', {
+ column: column,
+ direction: direction
+ });
+ },
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate
+ }
+}));
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts&":
+/*!***********************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts& ***!
+ \***********************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.mjs");
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _VirtualList_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./VirtualList.vue */ "./apps/files/src/components/VirtualList.vue");
+/* harmony import */ var _actions_sidebarAction_ts__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../actions/sidebarAction.ts */ "./apps/files/src/actions/sidebarAction.ts");
+/* harmony import */ var _FileEntry_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./FileEntry.vue */ "./apps/files/src/components/FileEntry.vue");
+/* harmony import */ var _FilesListHeader_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./FilesListHeader.vue */ "./apps/files/src/components/FilesListHeader.vue");
+/* harmony import */ var _FilesListTableFooter_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./FilesListTableFooter.vue */ "./apps/files/src/components/FilesListTableFooter.vue");
+/* harmony import */ var _FilesListTableHeader_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./FilesListTableHeader.vue */ "./apps/files/src/components/FilesListTableHeader.vue");
+/* harmony import */ var _mixins_filesListWidth_ts__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../mixins/filesListWidth.ts */ "./apps/files/src/mixins/filesListWidth.ts");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
+function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
+function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
+function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
+function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
+function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
+
+
+
+
+
+
+
+
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_11__["default"].extend({
+ name: 'FilesListVirtual',
+ components: {
+ FilesListHeader: _FilesListHeader_vue__WEBPACK_IMPORTED_MODULE_6__["default"],
+ FilesListTableHeader: _FilesListTableHeader_vue__WEBPACK_IMPORTED_MODULE_8__["default"],
+ FilesListTableFooter: _FilesListTableFooter_vue__WEBPACK_IMPORTED_MODULE_7__["default"],
+ VirtualList: _VirtualList_vue__WEBPACK_IMPORTED_MODULE_3__["default"]
+ },
+ mixins: [_mixins_filesListWidth_ts__WEBPACK_IMPORTED_MODULE_9__["default"]],
+ props: {
+ currentView: {
+ type: Object,
+ required: true
+ },
+ currentFolder: {
+ type: Object,
+ required: true
+ },
+ nodes: {
+ type: Array,
+ required: true
+ }
+ },
+ data: function data() {
+ return {
+ FileEntry: _FileEntry_vue__WEBPACK_IMPORTED_MODULE_5__["default"],
+ headers: (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.getFileListHeaders)(),
+ scrollToIndex: 0
+ };
+ },
+ computed: {
+ files: function files() {
+ return this.nodes.filter(function (node) {
+ return node.type === 'file';
+ });
+ },
+ fileId: function fileId() {
+ return parseInt(this.$route.params.fileid || this.$route.query.fileid) || null;
+ },
+ summaryFile: function summaryFile() {
+ var count = this.files.length;
+ return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translatePlural)('files', '{count} file', '{count} files', count, {
+ count: count
+ });
+ },
+ summaryFolder: function summaryFolder() {
+ var count = this.nodes.length - this.files.length;
+ return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translatePlural)('files', '{count} folder', '{count} folders', count, {
+ count: count
+ });
+ },
+ summary: function summary() {
+ return (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('files', '{summaryFile} and {summaryFolder}', this);
+ },
+ isMtimeAvailable: function isMtimeAvailable() {
+ // Hide mtime column on narrow screens
+ if (this.filesListWidth < 768) {
+ return false;
+ }
+ return this.nodes.some(function (node) {
+ return node.mtime !== undefined;
+ });
+ },
+ isSizeAvailable: function isSizeAvailable() {
+ // Hide size column on narrow screens
+ if (this.filesListWidth < 768) {
+ return false;
+ }
+ return this.nodes.some(function (node) {
+ return node.attributes.size !== undefined;
+ });
+ },
+ sortedHeaders: function sortedHeaders() {
+ if (!this.currentFolder || !this.currentView) {
+ return [];
+ }
+ return _toConsumableArray(this.headers).sort(function (a, b) {
+ return a.order - b.order;
+ });
+ }
+ },
+ mounted: function mounted() {
+ var _this = this;
+ // Scroll to the file if it's in the url
+ if (this.fileId) {
+ var index = this.nodes.findIndex(function (node) {
+ return node.fileid === _this.fileId;
+ });
+ if (index === -1) {
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_2__.showError)(this.t('files', 'File not found'));
+ }
+ this.scrollToIndex = Math.max(0, index);
+ }
+ // Open the file sidebar if we have the room for it
+ if (document.documentElement.clientWidth > 1024) {
+ var _sidebarAction$enable;
+ // Open the sidebar on the file if it's in the url and
+ // we're just loaded the app for the first time.
+ var node = this.nodes.find(function (n) {
+ return n.fileid === _this.fileId;
+ });
+ if (node && _actions_sidebarAction_ts__WEBPACK_IMPORTED_MODULE_4__.action !== null && _actions_sidebarAction_ts__WEBPACK_IMPORTED_MODULE_4__.action !== void 0 && (_sidebarAction$enable = _actions_sidebarAction_ts__WEBPACK_IMPORTED_MODULE_4__.action.enabled) !== null && _sidebarAction$enable !== void 0 && _sidebarAction$enable.call(_actions_sidebarAction_ts__WEBPACK_IMPORTED_MODULE_4__.action, [node], this.currentView)) {
+ _logger_js__WEBPACK_IMPORTED_MODULE_10__["default"].debug('Opening sidebar on file ' + node.path, {
+ node: node
+ });
+ _actions_sidebarAction_ts__WEBPACK_IMPORTED_MODULE_4__.action.exec(node, this.currentView, this.currentFolder);
+ }
+ }
+ },
+ methods: {
+ getFileId: function getFileId(node) {
+ return node.fileid;
+ },
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate
+ }
+}));
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts&":
+/*!******************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts& ***!
+ \******************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! debounce */ "./node_modules/debounce/index.js");
+/* harmony import */ var debounce__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(debounce__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+
+
+
+// Items to render before and after the visible area
+var bufferItems = 3;
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_2__["default"].extend({
+ name: 'VirtualList',
+ props: {
+ dataComponent: {
+ type: [Object, Function],
+ required: true
+ },
+ dataKey: {
+ type: String,
+ required: true
+ },
+ dataSources: {
+ type: Array,
+ required: true
+ },
+ itemHeight: {
+ type: Number,
+ required: true
+ },
+ extraProps: {
+ type: Object,
+ default: function _default() {
+ return {};
+ }
+ },
+ scrollToIndex: {
+ type: Number,
+ default: 0
+ }
+ },
+ data: function data() {
+ return {
+ bufferItems: bufferItems,
+ index: this.scrollToIndex,
+ beforeHeight: 0,
+ headerHeight: 0,
+ tableHeight: 0,
+ resizeObserver: null
+ };
+ },
+ computed: {
+ // Wait for measurements to be done before rendering
+ isReady: function isReady() {
+ return this.tableHeight > 0;
+ },
+ startIndex: function startIndex() {
+ return Math.max(0, this.index - bufferItems);
+ },
+ shownItems: function shownItems() {
+ return Math.ceil((this.tableHeight - this.headerHeight) / this.itemHeight) + bufferItems * 2;
+ },
+ renderedItems: function renderedItems() {
+ if (!this.isReady) {
+ return [];
+ }
+ return this.dataSources.slice(this.startIndex, this.startIndex + this.shownItems);
+ },
+ tbodyStyle: function tbodyStyle() {
+ var isOverScrolled = this.startIndex + this.shownItems > this.dataSources.length;
+ var lastIndex = this.dataSources.length - this.startIndex - this.shownItems;
+ var hiddenAfterItems = Math.min(this.dataSources.length - this.startIndex, lastIndex);
+ return {
+ paddingTop: "".concat(this.startIndex * this.itemHeight, "px"),
+ paddingBottom: isOverScrolled ? 0 : "".concat(hiddenAfterItems * this.itemHeight, "px")
+ };
+ }
+ },
+ watch: {
+ scrollToIndex: function scrollToIndex() {
+ this.index = this.scrollToIndex;
+ this.$el.scrollTop = this.index * this.itemHeight + this.beforeHeight;
+ }
+ },
+ mounted: function mounted() {
+ var _this$$refs,
+ _this$$refs2,
+ _this$$refs3,
+ _this = this;
+ var before = (_this$$refs = this.$refs) === null || _this$$refs === void 0 ? void 0 : _this$$refs.before;
+ var root = this.$el;
+ var tfoot = (_this$$refs2 = this.$refs) === null || _this$$refs2 === void 0 ? void 0 : _this$$refs2.tfoot;
+ var thead = (_this$$refs3 = this.$refs) === null || _this$$refs3 === void 0 ? void 0 : _this$$refs3.thead;
+ this.resizeObserver = new ResizeObserver((0,debounce__WEBPACK_IMPORTED_MODULE_0__.debounce)(function () {
+ var _before$clientHeight, _thead$clientHeight, _root$clientHeight;
+ _this.beforeHeight = (_before$clientHeight = before === null || before === void 0 ? void 0 : before.clientHeight) !== null && _before$clientHeight !== void 0 ? _before$clientHeight : 0;
+ _this.headerHeight = (_thead$clientHeight = thead === null || thead === void 0 ? void 0 : thead.clientHeight) !== null && _thead$clientHeight !== void 0 ? _thead$clientHeight : 0;
+ _this.tableHeight = (_root$clientHeight = root === null || root === void 0 ? void 0 : root.clientHeight) !== null && _root$clientHeight !== void 0 ? _root$clientHeight : 0;
+ _logger_js__WEBPACK_IMPORTED_MODULE_1__["default"].debug('VirtualList resizeObserver updated');
+ _this.onScroll();
+ }, 100, false));
+ this.resizeObserver.observe(before);
+ this.resizeObserver.observe(root);
+ this.resizeObserver.observe(tfoot);
+ this.resizeObserver.observe(thead);
+ this.$el.addEventListener('scroll', this.onScroll);
+ if (this.scrollToIndex) {
+ this.$el.scrollTop = this.index * this.itemHeight + this.beforeHeight;
+ }
+ },
+ beforeDestroy: function beforeDestroy() {
+ if (this.resizeObserver) {
+ this.resizeObserver.disconnect();
+ }
+ },
+ methods: {
+ onScroll: function onScroll() {
+ // Max 0 to prevent negative index
+ this.index = Math.max(0, Math.round((this.$el.scrollTop - this.beforeHeight) / this.itemHeight));
+ }
+ }
+}));
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/FilesList.vue?vue&type=script&lang=ts&":
+/*!***********************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/FilesList.vue?vue&type=script&lang=ts& ***!
+ \***********************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! path */ "./node_modules/path/path.js");
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var natural_orderby__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! natural-orderby */ "./node_modules/natural-orderby/dist/index.js");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppContent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcAppContent.js */ "./node_modules/@nextcloud/vue/dist/Components/NcAppContent.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppContent_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcAppContent_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcButton.js */ "./node_modules/@nextcloud/vue/dist/Components/NcButton.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcEmptyContent_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcEmptyContent.js */ "./node_modules/@nextcloud/vue/dist/Components/NcEmptyContent.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcEmptyContent_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcEmptyContent_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcIconSvgWrapper_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcIconSvgWrapper.js */ "./node_modules/@nextcloud/vue/dist/Components/NcIconSvgWrapper.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcIconSvgWrapper_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcIconSvgWrapper_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcLoadingIcon.js */ "./node_modules/@nextcloud/vue/dist/Components/NcLoadingIcon.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_6__);
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _store_files_ts__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../store/files.ts */ "./apps/files/src/store/files.ts");
+/* harmony import */ var _store_paths_ts__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../store/paths.ts */ "./apps/files/src/store/paths.ts");
+/* harmony import */ var _store_selection_ts__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../store/selection.ts */ "./apps/files/src/store/selection.ts");
+/* harmony import */ var _store_userconfig_ts__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../store/userconfig.ts */ "./apps/files/src/store/userconfig.ts");
+/* harmony import */ var _store_viewConfig_ts__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../store/viewConfig.ts */ "./apps/files/src/store/viewConfig.ts");
+/* harmony import */ var _components_BreadCrumbs_vue__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../components/BreadCrumbs.vue */ "./apps/files/src/components/BreadCrumbs.vue");
+/* harmony import */ var _components_FilesListVirtual_vue__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../components/FilesListVirtual.vue */ "./apps/files/src/components/FilesListVirtual.vue");
+/* harmony import */ var _mixins_filesSorting_ts__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../mixins/filesSorting.ts */ "./apps/files/src/mixins/filesSorting.ts");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
+function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
+function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
+function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
+function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
+function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_16__["default"].extend({
+ name: 'FilesList',
+ components: {
+ BreadCrumbs: _components_BreadCrumbs_vue__WEBPACK_IMPORTED_MODULE_12__["default"],
+ FilesListVirtual: _components_FilesListVirtual_vue__WEBPACK_IMPORTED_MODULE_13__["default"],
+ NcAppContent: (_nextcloud_vue_dist_Components_NcAppContent_js__WEBPACK_IMPORTED_MODULE_2___default()),
+ NcButton: (_nextcloud_vue_dist_Components_NcButton_js__WEBPACK_IMPORTED_MODULE_3___default()),
+ NcEmptyContent: (_nextcloud_vue_dist_Components_NcEmptyContent_js__WEBPACK_IMPORTED_MODULE_4___default()),
+ NcIconSvgWrapper: (_nextcloud_vue_dist_Components_NcIconSvgWrapper_js__WEBPACK_IMPORTED_MODULE_5___default()),
+ NcLoadingIcon: (_nextcloud_vue_dist_Components_NcLoadingIcon_js__WEBPACK_IMPORTED_MODULE_6___default())
+ },
+ mixins: [_mixins_filesSorting_ts__WEBPACK_IMPORTED_MODULE_14__["default"]],
+ setup: function setup() {
+ var filesStore = (0,_store_files_ts__WEBPACK_IMPORTED_MODULE_7__.useFilesStore)();
+ var pathsStore = (0,_store_paths_ts__WEBPACK_IMPORTED_MODULE_8__.usePathsStore)();
+ var selectionStore = (0,_store_selection_ts__WEBPACK_IMPORTED_MODULE_9__.useSelectionStore)();
+ var userConfigStore = (0,_store_userconfig_ts__WEBPACK_IMPORTED_MODULE_10__.useUserConfigStore)();
+ var viewConfigStore = (0,_store_viewConfig_ts__WEBPACK_IMPORTED_MODULE_11__.useViewConfigStore)();
+ return {
+ filesStore: filesStore,
+ pathsStore: pathsStore,
+ selectionStore: selectionStore,
+ userConfigStore: userConfigStore,
+ viewConfigStore: viewConfigStore
+ };
+ },
+ data: function data() {
+ return {
+ loading: true,
+ promise: null
+ };
+ },
+ computed: {
+ userConfig: function userConfig() {
+ return this.userConfigStore.userConfig;
+ },
+ currentView: function currentView() {
+ return this.$navigation.active || this.$navigation.views.find(function (view) {
+ return view.id === 'files';
+ });
+ },
+ /**
+ * The current directory query.
+ */
+ dir: function dir() {
+ var _this$$route;
+ // Remove any trailing slash but leave root slash
+ return (((_this$$route = this.$route) === null || _this$$route === void 0 || (_this$$route = _this$$route.query) === null || _this$$route === void 0 ? void 0 : _this$$route.dir) || '/').replace(/^(.+)\/$/, '$1');
+ },
+ /**
+ * The current folder.
+ */
+ currentFolder: function currentFolder() {
+ var _this$currentView;
+ if (!((_this$currentView = this.currentView) !== null && _this$currentView !== void 0 && _this$currentView.id)) {
+ return;
+ }
+ if (this.dir === '/') {
+ return this.filesStore.getRoot(this.currentView.id);
+ }
+ var fileId = this.pathsStore.getPath(this.currentView.id, this.dir);
+ return this.filesStore.getNode(fileId);
+ },
+ /**
+ * The current directory contents.
+ */
+ dirContentsSorted: function dirContentsSorted() {
+ var _this$currentView2,
+ _this = this;
+ if (!this.currentView) {
+ return [];
+ }
+ var customColumn = (((_this$currentView2 = this.currentView) === null || _this$currentView2 === void 0 ? void 0 : _this$currentView2.columns) || []).find(function (column) {
+ return column.id === _this.sortingMode;
+ });
+ // Custom column must provide their own sorting methods
+ if (customColumn !== null && customColumn !== void 0 && customColumn.sort && typeof customColumn.sort === 'function') {
+ var results = _toConsumableArray(this.dirContents).sort(customColumn.sort);
+ return this.isAscSorting ? results : results.reverse();
+ }
+ var identifiers = [].concat(_toConsumableArray(this.userConfig.sort_favorites_first ? [function (v) {
+ var _v$attributes;
+ return ((_v$attributes = v.attributes) === null || _v$attributes === void 0 ? void 0 : _v$attributes.favorite) !== 1;
+ }] : []), _toConsumableArray(this.sortingMode === 'basename' ? [function (v) {
+ return v.type !== 'folder';
+ }] : []), _toConsumableArray(this.sortingMode !== 'basename' ? [function (v) {
+ return v[_this.sortingMode];
+ }] : []), [
+ // Use displayName if available, fallback to name
+ function (v) {
+ var _v$attributes2;
+ return ((_v$attributes2 = v.attributes) === null || _v$attributes2 === void 0 ? void 0 : _v$attributes2.displayName) || v.basename;
+ },
+ // Finally, use basename if all previous sorting methods failed
+ function (v) {
+ return v.basename;
+ }]);
+ var orders = new Array(identifiers.length).fill(this.isAscSorting ? 'asc' : 'desc');
+ return (0,natural_orderby__WEBPACK_IMPORTED_MODULE_17__.orderBy)(_toConsumableArray(this.dirContents), identifiers, orders);
+ },
+ dirContents: function dirContents() {
+ var _this$currentFolder;
+ return (((_this$currentFolder = this.currentFolder) === null || _this$currentFolder === void 0 ? void 0 : _this$currentFolder._children) || []).map(this.getNode).filter(function (file) {
+ return file;
+ });
+ },
+ /**
+ * The current directory is empty.
+ */
+ isEmptyDir: function isEmptyDir() {
+ return this.dirContents.length === 0;
+ },
+ /**
+ * We are refreshing the current directory.
+ * But we already have a cached version of it
+ * that is not empty.
+ */
+ isRefreshing: function isRefreshing() {
+ return this.currentFolder !== undefined && !this.isEmptyDir && this.loading;
+ },
+ /**
+ * Route to the previous directory.
+ */
+ toPreviousDir: function toPreviousDir() {
+ var dir = this.dir.split('/').slice(0, -1).join('/') || '/';
+ return _objectSpread(_objectSpread({}, this.$route), {}, {
+ query: {
+ dir: dir
+ }
+ });
+ }
+ },
+ watch: {
+ currentView: function currentView(newView, oldView) {
+ if ((newView === null || newView === void 0 ? void 0 : newView.id) === (oldView === null || oldView === void 0 ? void 0 : oldView.id)) {
+ return;
+ }
+ _logger_js__WEBPACK_IMPORTED_MODULE_15__["default"].debug('View changed', {
+ newView: newView,
+ oldView: oldView
+ });
+ this.selectionStore.reset();
+ this.fetchContent();
+ },
+ dir: function dir(newDir, oldDir) {
+ var _this$$refs;
+ _logger_js__WEBPACK_IMPORTED_MODULE_15__["default"].debug('Directory changed', {
+ newDir: newDir,
+ oldDir: oldDir
+ });
+ // TODO: preserve selection on browsing?
+ this.selectionStore.reset();
+ this.fetchContent();
+ // Scroll to top, force virtual scroller to re-render
+ if ((_this$$refs = this.$refs) !== null && _this$$refs !== void 0 && (_this$$refs = _this$$refs.filesListVirtual) !== null && _this$$refs !== void 0 && _this$$refs.$el) {
+ this.$refs.filesListVirtual.$el.scrollTop = 0;
+ }
+ }
+ },
+ methods: {
+ fetchContent: function fetchContent() {
+ var _this2 = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var _this2$promise;
+ var dir, currentView, _yield$_this2$promise, folder, contents, folders;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _this2.loading = true;
+ dir = _this2.dir;
+ currentView = _this2.currentView; // If we have a cancellable promise ongoing, cancel it
+ if (typeof ((_this2$promise = _this2.promise) === null || _this2$promise === void 0 ? void 0 : _this2$promise.cancel) === 'function') {
+ _this2.promise.cancel();
+ _logger_js__WEBPACK_IMPORTED_MODULE_15__["default"].debug('Cancelled previous ongoing fetch');
+ }
+ // Fetch the current dir contents
+ _this2.promise = currentView.getContents(dir);
+ _context.prev = 5;
+ _context.next = 8;
+ return _this2.promise;
+ case 8:
+ _yield$_this2$promise = _context.sent;
+ folder = _yield$_this2$promise.folder;
+ contents = _yield$_this2$promise.contents;
+ _logger_js__WEBPACK_IMPORTED_MODULE_15__["default"].debug('Fetched contents', {
+ dir: dir,
+ folder: folder,
+ contents: contents
+ });
+ // Update store
+ _this2.filesStore.updateNodes(contents);
+ // Define current directory children
+ folder._children = contents.map(function (node) {
+ return node.fileid;
+ });
+ // If we're in the root dir, define the root
+ if (dir === '/') {
+ _this2.filesStore.setRoot({
+ service: currentView.id,
+ root: folder
+ });
+ } else {
+ // Otherwise, add the folder to the store
+ if (folder.fileid) {
+ _this2.filesStore.updateNodes([folder]);
+ _this2.pathsStore.addPath({
+ service: currentView.id,
+ fileid: folder.fileid,
+ path: dir
+ });
+ } else {
+ // If we're here, the view API messed up
+ _logger_js__WEBPACK_IMPORTED_MODULE_15__["default"].error('Invalid root folder returned', {
+ dir: dir,
+ folder: folder,
+ currentView: currentView
+ });
+ }
+ }
+ // Update paths store
+ folders = contents.filter(function (node) {
+ return node.type === 'folder';
+ });
+ folders.forEach(function (node) {
+ _this2.pathsStore.addPath({
+ service: currentView.id,
+ fileid: node.fileid,
+ path: (0,path__WEBPACK_IMPORTED_MODULE_0__.join)(dir, node.basename)
+ });
+ });
+ _context.next = 22;
+ break;
+ case 19:
+ _context.prev = 19;
+ _context.t0 = _context["catch"](5);
+ _logger_js__WEBPACK_IMPORTED_MODULE_15__["default"].error('Error while fetching content', {
+ error: _context.t0
+ });
+ case 22:
+ _context.prev = 22;
+ _this2.loading = false;
+ return _context.finish(22);
+ case 25:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee, null, [[5, 19, 22, 25]]);
+ }))();
+ },
+ /**
+ * Get a cached note from the store
+ *
+ * @param {number} fileId the file id to get
+ * @return {Folder|File}
+ */
+ getNode: function getNode(fileId) {
+ return this.filesStore.getNode(fileId);
+ },
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.translate
+ }
+}));
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Navigation.vue?vue&type=script&lang=ts&":
+/*!************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Navigation.vue?vue&type=script&lang=ts& ***!
+ \************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var vue_material_design_icons_Cog_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue-material-design-icons/Cog.vue */ "./node_modules/vue-material-design-icons/Cog.vue");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppNavigation_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcAppNavigation.js */ "./node_modules/@nextcloud/vue/dist/Components/NcAppNavigation.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppNavigation_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcAppNavigation_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppNavigationItem_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcAppNavigationItem.js */ "./node_modules/@nextcloud/vue/dist/Components/NcAppNavigationItem.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppNavigationItem_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcAppNavigationItem_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcIconSvgWrapper_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcIconSvgWrapper.js */ "./node_modules/@nextcloud/vue/dist/Components/NcIconSvgWrapper.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcIconSvgWrapper_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcIconSvgWrapper_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _core_src_OCP_accessibility_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../core/src/OCP/accessibility.js */ "./core/src/OCP/accessibility.js");
+/* harmony import */ var _store_viewConfig_ts__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../store/viewConfig.ts */ "./apps/files/src/store/viewConfig.ts");
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+/* harmony import */ var _components_NavigationQuota_vue__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../components/NavigationQuota.vue */ "./apps/files/src/components/NavigationQuota.vue");
+/* harmony import */ var _Settings_vue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./Settings.vue */ "./apps/files/src/views/Settings.vue");
+function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
+function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
+function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
+function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
+function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
+function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
+
+
+
+
+
+
+
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'Navigation',
+ components: {
+ Cog: vue_material_design_icons_Cog_vue__WEBPACK_IMPORTED_MODULE_2__["default"],
+ NavigationQuota: _components_NavigationQuota_vue__WEBPACK_IMPORTED_MODULE_9__["default"],
+ NcAppNavigation: (_nextcloud_vue_dist_Components_NcAppNavigation_js__WEBPACK_IMPORTED_MODULE_3___default()),
+ NcAppNavigationItem: (_nextcloud_vue_dist_Components_NcAppNavigationItem_js__WEBPACK_IMPORTED_MODULE_4___default()),
+ NcIconSvgWrapper: (_nextcloud_vue_dist_Components_NcIconSvgWrapper_js__WEBPACK_IMPORTED_MODULE_5___default()),
+ SettingsModal: _Settings_vue__WEBPACK_IMPORTED_MODULE_10__["default"]
+ },
+ props: {
+ // eslint-disable-next-line vue/prop-name-casing
+ Navigation: {
+ type: Object,
+ required: true
+ }
+ },
+ setup: function setup() {
+ var viewConfigStore = (0,_store_viewConfig_ts__WEBPACK_IMPORTED_MODULE_7__.useViewConfigStore)();
+ return {
+ viewConfigStore: viewConfigStore
+ };
+ },
+ data: function data() {
+ return {
+ settingsOpened: false
+ };
+ },
+ computed: {
+ currentViewId: function currentViewId() {
+ var _this$$route;
+ return ((_this$$route = this.$route) === null || _this$$route === void 0 || (_this$$route = _this$$route.params) === null || _this$$route === void 0 ? void 0 : _this$$route.view) || 'files';
+ },
+ currentView: function currentView() {
+ var _this = this;
+ return this.views.find(function (view) {
+ return view.id === _this.currentViewId;
+ });
+ },
+ views: function views() {
+ return this.Navigation.views;
+ },
+ parentViews: function parentViews() {
+ return this.views
+ // filter child views
+ .filter(function (view) {
+ return !view.parent;
+ })
+ // sort views by order
+ .sort(function (a, b) {
+ return a.order - b.order;
+ });
+ },
+ childViews: function childViews() {
+ return this.views
+ // filter parent views
+ .filter(function (view) {
+ return !!view.parent;
+ })
+ // create a map of parents and their children
+ .reduce(function (list, view) {
+ list[view.parent] = [].concat(_toConsumableArray(list[view.parent] || []), [view]);
+ // Sort children by order
+ list[view.parent].sort(function (a, b) {
+ return a.order - b.order;
+ });
+ return list;
+ }, {});
+ }
+ },
+ watch: {
+ currentView: function currentView(view, oldView) {
+ if (view.id !== (oldView === null || oldView === void 0 ? void 0 : oldView.id)) {
+ this.Navigation.setActive(view);
+ _logger_js__WEBPACK_IMPORTED_MODULE_8__["default"].debug('Navigation changed', {
+ id: view.id,
+ view: view
+ });
+ this.showView(view);
+ }
+ }
+ },
+ beforeMount: function beforeMount() {
+ if (this.currentView) {
+ _logger_js__WEBPACK_IMPORTED_MODULE_8__["default"].debug('Navigation mounted. Showing requested view', {
+ view: this.currentView
+ });
+ this.showView(this.currentView);
+ }
+ },
+ methods: {
+ showView: function showView(view) {
+ var _window, _window$close;
+ // Closing any opened sidebar
+ (_window = window) === null || _window === void 0 || (_window = _window.OCA) === null || _window === void 0 || (_window = _window.Files) === null || _window === void 0 || (_window = _window.Sidebar) === null || _window === void 0 || (_window$close = _window.close) === null || _window$close === void 0 ? void 0 : _window$close.call(_window);
+ this.Navigation.setActive(view);
+ (0,_core_src_OCP_accessibility_js__WEBPACK_IMPORTED_MODULE_6__.setPageHeading)(view.name);
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_0__.emit)('files:navigation:changed', view);
+ },
+ /**
+ * Expand/collapse a a view with children and permanently
+ * save this setting in the server.
+ */
+ onToggleExpand: function onToggleExpand(view) {
+ // Invert state
+ var isExpanded = this.isExpanded(view);
+ // Update the view expanded state, might not be necessary
+ view.expanded = !isExpanded;
+ this.viewConfigStore.update(view.id, 'expanded', !isExpanded);
+ },
+ /**
+ * Check if a view is expanded by user config
+ * or fallback to the default value.
+ */
+ isExpanded: function isExpanded(view) {
+ var _this$viewConfigStore;
+ return typeof ((_this$viewConfigStore = this.viewConfigStore.getConfig(view.id)) === null || _this$viewConfigStore === void 0 ? void 0 : _this$viewConfigStore.expanded) === 'boolean' ? this.viewConfigStore.getConfig(view.id).expanded === true : view.expanded === true;
+ },
+ /**
+ * Generate the route to a view
+ */
+ generateToNavigation: function generateToNavigation(view) {
+ if (view.params) {
+ var _view$params = view.params,
+ dir = _view$params.dir,
+ fileid = _view$params.fileid;
+ return {
+ name: 'filelist',
+ params: view.params,
+ query: {
+ dir: dir,
+ fileid: fileid
+ }
+ };
+ }
+ return {
+ name: 'filelist',
+ params: {
+ view: view.id
+ }
+ };
+ },
+ /**
+ * Open the settings modal
+ */
+ openSettings: function openSettings() {
+ this.settingsOpened = true;
+ },
+ /**
+ * Close the settings modal
+ */
+ onSettingsClose: function onSettingsClose() {
+ this.settingsOpened = false;
+ },
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_1__.translate
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=js&":
+/*!********************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=js& ***!
+ \********************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! path */ "./node_modules/path/path.js");
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var vue_material_design_icons_Home_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/Home.vue */ "./node_modules/vue-material-design-icons/Home.vue");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcBreadcrumb_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcBreadcrumb.js */ "./node_modules/@nextcloud/vue/dist/Components/NcBreadcrumb.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcBreadcrumb_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcBreadcrumb_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcBreadcrumbs_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcBreadcrumbs.js */ "./node_modules/@nextcloud/vue/dist/Components/NcBreadcrumbs.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcBreadcrumbs_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcBreadcrumbs_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+/* harmony import */ var _store_files_ts__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../store/files.ts */ "./apps/files/src/store/files.ts");
+/* harmony import */ var _store_paths_ts__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../store/paths.ts */ "./apps/files/src/store/paths.ts");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
+function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
+function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
+function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
+function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
+function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
+function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
+function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
+
+
+
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = (vue__WEBPACK_IMPORTED_MODULE_6__["default"].extend({
+ name: 'BreadCrumbs',
+ components: {
+ Home: vue_material_design_icons_Home_vue__WEBPACK_IMPORTED_MODULE_1__["default"],
+ NcBreadcrumbs: (_nextcloud_vue_dist_Components_NcBreadcrumbs_js__WEBPACK_IMPORTED_MODULE_3___default()),
+ NcBreadcrumb: (_nextcloud_vue_dist_Components_NcBreadcrumb_js__WEBPACK_IMPORTED_MODULE_2___default())
+ },
+ props: {
+ path: {
+ type: String,
+ default: '/'
+ }
+ },
+ setup: function setup() {
+ var filesStore = (0,_store_files_ts__WEBPACK_IMPORTED_MODULE_4__.useFilesStore)();
+ var pathsStore = (0,_store_paths_ts__WEBPACK_IMPORTED_MODULE_5__.usePathsStore)();
+ return {
+ filesStore: filesStore,
+ pathsStore: pathsStore
+ };
+ },
+ computed: {
+ currentView: function currentView() {
+ return this.$navigation.active;
+ },
+ dirs: function dirs() {
+ var cumulativePath = function cumulativePath(acc) {
+ return function (value) {
+ return acc += "".concat(value, "/");
+ };
+ };
+ // Generate a cumulative path for each path segment: ['/', '/foo', '/foo/bar', ...] etc
+ var paths = this.path.split('/').filter(Boolean).map(cumulativePath('/'));
+ // Strip away trailing slash
+ return ['/'].concat(_toConsumableArray(paths.map(function (path) {
+ return path.replace(/^(.+)\/$/, '$1');
+ })));
+ },
+ sections: function sections() {
+ var _this = this;
+ return this.dirs.map(function (dir) {
+ var to = _objectSpread(_objectSpread({}, _this.$route), {}, {
+ query: {
+ dir: dir
+ }
+ });
+ return {
+ dir: dir,
+ exact: true,
+ name: _this.getDirDisplayName(dir),
+ to: to
+ };
+ });
+ }
+ },
+ methods: {
+ getNodeFromId: function getNodeFromId(id) {
+ return this.filesStore.getNode(id);
+ },
+ getFileIdFromPath: function getFileIdFromPath(path) {
+ var _this$currentView;
+ return this.pathsStore.getPath((_this$currentView = this.currentView) === null || _this$currentView === void 0 ? void 0 : _this$currentView.id, path);
+ },
+ getDirDisplayName: function getDirDisplayName(path) {
+ var _node$attributes;
+ if (path === '/') {
+ return t('files', 'Home');
+ }
+ var fileId = this.getFileIdFromPath(path);
+ var node = this.getNodeFromId(fileId);
+ return (node === null || node === void 0 || (_node$attributes = node.attributes) === null || _node$attributes === void 0 ? void 0 : _node$attributes.displayName) || (0,path__WEBPACK_IMPORTED_MODULE_0__.basename)(path);
+ },
+ onClick: function onClick(to) {
+ var _to$query;
+ if ((to === null || to === void 0 || (_to$query = to.query) === null || _to$query === void 0 ? void 0 : _to$query.dir) === this.$route.query.dir) {
+ this.$emit('reload');
+ }
+ },
+ ariaLabel: function ariaLabel(section) {
+ var _section$to;
+ if ((section === null || section === void 0 || (_section$to = section.to) === null || _section$to === void 0 || (_section$to = _section$to.query) === null || _section$to === void 0 ? void 0 : _section$to.dir) === this.$route.query.dir) {
+ return t('files', 'Reload current directory');
+ }
+ return t('files', 'Go to the "{dir}" directory', section);
+ }
+ }
+}));
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=script&lang=js&":
+/*!****************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=script&lang=js& ***!
+ \****************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var dompurify__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! dompurify */ "./node_modules/dompurify/dist/purify.js");
+/* harmony import */ var dompurify__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(dompurify__WEBPACK_IMPORTED_MODULE_0__);
+// eslint-disable-next-line import/named
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'CustomSvgIconRender',
+ props: {
+ svg: {
+ type: String,
+ required: true
+ }
+ },
+ watch: {
+ svg: function svg() {
+ this.$el.innerHTML = (0,dompurify__WEBPACK_IMPORTED_MODULE_0__.sanitize)(this.svg);
+ }
+ },
+ mounted: function mounted() {
+ this.$el.innerHTML = (0,dompurify__WEBPACK_IMPORTED_MODULE_0__.sanitize)(this.svg);
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FavoriteIcon.vue?vue&type=script&lang=js&":
+/*!*********************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FavoriteIcon.vue?vue&type=script&lang=js& ***!
+ \*********************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _mdi_svg_svg_star_svg_raw__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @mdi/svg/svg/star.svg?raw */ "./node_modules/@mdi/svg/svg/star.svg?raw");
+/* harmony import */ var _CustomSvgIconRender_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CustomSvgIconRender.vue */ "./apps/files/src/components/CustomSvgIconRender.vue");
+
+
+
+/**
+ * A favorite icon to be used for overlaying favorite entries like the file preview / icon
+ * It has a stroke around the star icon to ensure enough contrast for accessibility.
+ *
+ * If the background has a hover state you might want to also apply it to the stroke like this:
+ * ```scss
+ * .parent:hover :deep(.favorite-marker-icon svg path) {
+ * stroke: var(--color-background-hover);
+ * }
+ * ```
+ */
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'FavoriteIcon',
+ components: {
+ CustomSvgIconRender: _CustomSvgIconRender_vue__WEBPACK_IMPORTED_MODULE_1__["default"]
+ },
+ data: function data() {
+ return {
+ StarSvg: _mdi_svg_svg_star_svg_raw__WEBPACK_IMPORTED_MODULE_0__
+ };
+ },
+ mounted: function mounted() {
+ // MDI default viewbox is "0 0 24 24" but we add a stroke of 10px so we must adjust it
+ var el = this.$el.querySelector('svg');
+ el.setAttribute('viewBox', '-4 -4 30 30');
+ el.setAttribute('width', '25');
+ el.setAttribute('height', '25');
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js&":
+/*!************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js& ***!
+ \************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var throttle_debounce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! throttle-debounce */ "./node_modules/throttle-debounce/esm/index.js");
+/* harmony import */ var _nextcloud_files__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/files */ "./node_modules/@nextcloud/files/dist/index.mjs");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/initial-state */ "./node_modules/@nextcloud/initial-state/dist/index.es.mjs");
+/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.mjs");
+/* harmony import */ var _nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @nextcloud/event-bus */ "./node_modules/@nextcloud/event-bus/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _nextcloud_axios__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @nextcloud/axios */ "./node_modules/@nextcloud/axios/dist/index.es.mjs");
+/* harmony import */ var vue_material_design_icons_ChartPie_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! vue-material-design-icons/ChartPie.vue */ "./node_modules/vue-material-design-icons/ChartPie.vue");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppNavigationItem_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcAppNavigationItem.js */ "./node_modules/@nextcloud/vue/dist/Components/NcAppNavigationItem.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppNavigationItem_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcAppNavigationItem_js__WEBPACK_IMPORTED_MODULE_9__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcProgressBar_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcProgressBar.js */ "./node_modules/@nextcloud/vue/dist/Components/NcProgressBar.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcProgressBar_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcProgressBar_js__WEBPACK_IMPORTED_MODULE_10__);
+/* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../logger.js */ "./apps/files/src/logger.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+
+
+
+
+
+
+
+
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'NavigationQuota',
+ components: {
+ ChartPie: vue_material_design_icons_ChartPie_vue__WEBPACK_IMPORTED_MODULE_8__["default"],
+ NcAppNavigationItem: (_nextcloud_vue_dist_Components_NcAppNavigationItem_js__WEBPACK_IMPORTED_MODULE_9___default()),
+ NcProgressBar: (_nextcloud_vue_dist_Components_NcProgressBar_js__WEBPACK_IMPORTED_MODULE_10___default())
+ },
+ data: function data() {
+ return {
+ loadingStorageStats: false,
+ storageStats: (0,_nextcloud_initial_state__WEBPACK_IMPORTED_MODULE_3__.loadState)('files', 'storageStats', null)
+ };
+ },
+ computed: {
+ storageStatsTitle: function storageStatsTitle() {
+ var _this$storageStats, _this$storageStats2, _this$storageStats3;
+ var usedQuotaByte = (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.formatFileSize)((_this$storageStats = this.storageStats) === null || _this$storageStats === void 0 ? void 0 : _this$storageStats.used);
+ var quotaByte = (0,_nextcloud_files__WEBPACK_IMPORTED_MODULE_1__.formatFileSize)((_this$storageStats2 = this.storageStats) === null || _this$storageStats2 === void 0 ? void 0 : _this$storageStats2.quota);
+
+ // If no quota set
+ if (((_this$storageStats3 = this.storageStats) === null || _this$storageStats3 === void 0 ? void 0 : _this$storageStats3.quota) < 0) {
+ return this.t('files', '{usedQuotaByte} used', {
+ usedQuotaByte: usedQuotaByte
+ });
+ }
+ return this.t('files', '{used} of {quota} used', {
+ used: usedQuotaByte,
+ quota: quotaByte
+ });
+ },
+ storageStatsTooltip: function storageStatsTooltip() {
+ if (!this.storageStats.relative) {
+ return '';
+ }
+ return this.t('files', '{relative}% used', this.storageStats);
+ }
+ },
+ beforeMount: function beforeMount() {
+ /**
+ * Update storage stats every minute
+ * TODO: remove when all views are migrated to Vue
+ */
+ setInterval(this.throttleUpdateStorageStats, 60 * 1000);
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_5__.subscribe)('files:node:created', this.throttleUpdateStorageStats);
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_5__.subscribe)('files:node:deleted', this.throttleUpdateStorageStats);
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_5__.subscribe)('files:node:moved', this.throttleUpdateStorageStats);
+ (0,_nextcloud_event_bus__WEBPACK_IMPORTED_MODULE_5__.subscribe)('files:node:updated', this.throttleUpdateStorageStats);
+ },
+ methods: {
+ // From user input
+ debounceUpdateStorageStats: (0,throttle_debounce__WEBPACK_IMPORTED_MODULE_0__.debounce)(200, function (event) {
+ this.updateStorageStats(event);
+ }),
+ // From interval or event bus
+ throttleUpdateStorageStats: (0,throttle_debounce__WEBPACK_IMPORTED_MODULE_0__.throttle)(1000, function (event) {
+ this.updateStorageStats(event);
+ }),
+ /**
+ * Update the storage stats
+ * Throttled at max 1 refresh per minute
+ *
+ * @param {Event} [event = null] if user interaction
+ */
+ updateStorageStats: function updateStorageStats() {
+ var _arguments = arguments,
+ _this = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var event, _response$data, response;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ event = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : null;
+ if (!_this.loadingStorageStats) {
+ _context.next = 3;
+ break;
+ }
+ return _context.abrupt("return");
+ case 3:
+ _this.loadingStorageStats = true;
+ _context.prev = 4;
+ _context.next = 7;
+ return _nextcloud_axios__WEBPACK_IMPORTED_MODULE_7__["default"].get((0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_2__.generateUrl)('/apps/files/api/v1/stats'));
+ case 7:
+ response = _context.sent;
+ if (response !== null && response !== void 0 && (_response$data = response.data) !== null && _response$data !== void 0 && _response$data.data) {
+ _context.next = 10;
+ break;
+ }
+ throw new Error('Invalid storage stats');
+ case 10:
+ _this.storageStats = response.data.data;
+ _context.next = 17;
+ break;
+ case 13:
+ _context.prev = 13;
+ _context.t0 = _context["catch"](4);
+ _logger_js__WEBPACK_IMPORTED_MODULE_11__["default"].error('Could not refresh storage stats', {
+ error: _context.t0
+ });
+ // Only show to the user if it was manually triggered
+ if (event) {
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_4__.showError)(t('files', 'Could not refresh storage stats'));
+ }
+ case 17:
+ _context.prev = 17;
+ _this.loadingStorageStats = false;
+ return _context.finish(17);
+ case 20:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee, null, [[4, 13, 17, 20]]);
+ }))();
+ },
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_6__.translate
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/Setting.vue?vue&type=script&lang=js&":
+/*!****************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/Setting.vue?vue&type=script&lang=js& ***!
+ \****************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'Setting',
+ props: {
+ el: {
+ type: Function,
+ required: true
+ }
+ },
+ mounted: function mounted() {
+ this.$el.appendChild(this.el());
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js&":
+/*!************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js& ***!
+ \************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/fileUtils.js */ "./apps/files/src/utils/fileUtils.js");
+/* harmony import */ var _utils_davUtils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/davUtils.js */ "./apps/files/src/utils/davUtils.js");
+
+
+
+
+// preview width generation
+var previewWidth = 256;
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'TemplatePreview',
+ inheritAttrs: false,
+ props: {
+ basename: {
+ type: String,
+ required: true
+ },
+ checked: {
+ type: Boolean,
+ default: false
+ },
+ fileid: {
+ type: [String, Number],
+ required: true
+ },
+ filename: {
+ type: String,
+ required: true
+ },
+ previewUrl: {
+ type: String,
+ default: null
+ },
+ hasPreview: {
+ type: Boolean,
+ default: true
+ },
+ mime: {
+ type: String,
+ required: true
+ },
+ ratio: {
+ type: Number,
+ default: null
+ }
+ },
+ data: function data() {
+ return {
+ failedPreview: false
+ };
+ },
+ computed: {
+ /**
+ * Strip away extension from name
+ *
+ * @return {string}
+ */
+ nameWithoutExt: function nameWithoutExt() {
+ return this.basename.indexOf('.') > -1 ? this.basename.split('.').slice(0, -1).join('.') : this.basename;
+ },
+ id: function id() {
+ return "template-picker-".concat(this.fileid);
+ },
+ realPreviewUrl: function realPreviewUrl() {
+ // If original preview failed, fallback to mime icon
+ if (this.failedPreview && this.mimeIcon) {
+ return this.mimeIcon;
+ }
+ if (this.previewUrl) {
+ return this.previewUrl;
+ }
+ // TODO: find a nicer standard way of doing this?
+ if ((0,_utils_davUtils_js__WEBPACK_IMPORTED_MODULE_2__.isPublic)()) {
+ return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateUrl)("/apps/files_sharing/publicpreview/".concat((0,_utils_davUtils_js__WEBPACK_IMPORTED_MODULE_2__.getToken)(), "?fileId=").concat(this.fileid, "&file=").concat((0,_utils_fileUtils_js__WEBPACK_IMPORTED_MODULE_1__.encodeFilePath)(this.filename), "&x=").concat(previewWidth, "&y=").concat(previewWidth, "&a=1"));
+ }
+ return (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_0__.generateUrl)("/core/preview?fileId=".concat(this.fileid, "&x=").concat(previewWidth, "&y=").concat(previewWidth, "&a=1"));
+ },
+ mimeIcon: function mimeIcon() {
+ return OC.MimeType.getIconUrl(this.mime);
+ }
+ },
+ methods: {
+ onCheck: function onCheck() {
+ this.$emit('check', this.fileid);
+ },
+ onFailure: function onFailure() {
+ this.failedPreview = true;
+ }
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Settings.vue?vue&type=script&lang=js&":
+/*!************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Settings.vue?vue&type=script&lang=js& ***!
+ \************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppSettingsDialog_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcAppSettingsDialog.js */ "./node_modules/@nextcloud/vue/dist/Components/NcAppSettingsDialog.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppSettingsDialog_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcAppSettingsDialog_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppSettingsSection_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcAppSettingsSection.js */ "./node_modules/@nextcloud/vue/dist/Components/NcAppSettingsSection.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcAppSettingsSection_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcAppSettingsSection_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js */ "./node_modules/@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var vue_material_design_icons_Clipboard_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue-material-design-icons/Clipboard.vue */ "./node_modules/vue-material-design-icons/Clipboard.vue");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcInputField_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcInputField.js */ "./node_modules/@nextcloud/vue/dist/Components/NcInputField.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcInputField_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcInputField_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _components_Setting_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../components/Setting.vue */ "./apps/files/src/components/Setting.vue");
+/* harmony import */ var _nextcloud_router__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @nextcloud/router */ "./node_modules/@nextcloud/router/dist/index.js");
+/* harmony import */ var _nextcloud_auth__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @nextcloud/auth */ "./node_modules/@nextcloud/auth/dist/index.es.mjs");
+/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.mjs");
+/* harmony import */ var _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @nextcloud/l10n */ "./node_modules/@nextcloud/l10n/dist/index.mjs");
+/* harmony import */ var _store_userconfig_ts__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../store/userconfig.ts */ "./apps/files/src/store/userconfig.ts");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+
+
+
+
+
+
+
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'Settings',
+ components: {
+ Clipboard: vue_material_design_icons_Clipboard_vue__WEBPACK_IMPORTED_MODULE_3__["default"],
+ NcAppSettingsDialog: (_nextcloud_vue_dist_Components_NcAppSettingsDialog_js__WEBPACK_IMPORTED_MODULE_0___default()),
+ NcAppSettingsSection: (_nextcloud_vue_dist_Components_NcAppSettingsSection_js__WEBPACK_IMPORTED_MODULE_1___default()),
+ NcCheckboxRadioSwitch: (_nextcloud_vue_dist_Components_NcCheckboxRadioSwitch_js__WEBPACK_IMPORTED_MODULE_2___default()),
+ NcInputField: (_nextcloud_vue_dist_Components_NcInputField_js__WEBPACK_IMPORTED_MODULE_4___default()),
+ Setting: _components_Setting_vue__WEBPACK_IMPORTED_MODULE_5__["default"]
+ },
+ props: {
+ open: {
+ type: Boolean,
+ default: false
+ }
+ },
+ setup: function setup() {
+ var userConfigStore = (0,_store_userconfig_ts__WEBPACK_IMPORTED_MODULE_10__.useUserConfigStore)();
+ return {
+ userConfigStore: userConfigStore
+ };
+ },
+ data: function data() {
+ var _window$OCA, _getCurrentUser;
+ return {
+ // Settings API
+ settings: ((_window$OCA = window.OCA) === null || _window$OCA === void 0 || (_window$OCA = _window$OCA.Files) === null || _window$OCA === void 0 || (_window$OCA = _window$OCA.Settings) === null || _window$OCA === void 0 ? void 0 : _window$OCA.settings) || [],
+ // Webdav infos
+ webdavUrl: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_6__.generateRemoteUrl)('dav/files/' + encodeURIComponent((_getCurrentUser = (0,_nextcloud_auth__WEBPACK_IMPORTED_MODULE_7__.getCurrentUser)()) === null || _getCurrentUser === void 0 ? void 0 : _getCurrentUser.uid)),
+ webdavDocs: 'https://docs.nextcloud.com/server/stable/go.php?to=user-webdav',
+ appPasswordUrl: (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_6__.generateUrl)('/settings/user/security#generate-app-token-section'),
+ webdavUrlCopied: false
+ };
+ },
+ computed: {
+ userConfig: function userConfig() {
+ return this.userConfigStore.userConfig;
+ }
+ },
+ beforeMount: function beforeMount() {
+ // Update the settings API entries state
+ this.settings.forEach(function (setting) {
+ return setting.open();
+ });
+ },
+ beforeDestroy: function beforeDestroy() {
+ // Update the settings API entries state
+ this.settings.forEach(function (setting) {
+ return setting.close();
+ });
+ },
+ methods: {
+ onClose: function onClose() {
+ this.$emit('close');
+ },
+ setConfig: function setConfig(key, value) {
+ this.userConfigStore.update(key, value);
+ },
+ copyCloudId: function copyCloudId() {
+ var _this = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ document.querySelector('input#webdav-url-input').select();
+ if (navigator.clipboard) {
+ _context.next = 4;
+ break;
+ }
+ // Clipboard API not available
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_8__.showError)(t('files', 'Clipboard is not available'));
+ return _context.abrupt("return");
+ case 4:
+ _context.next = 6;
+ return navigator.clipboard.writeText(_this.webdavUrl);
+ case 6:
+ _this.webdavUrlCopied = true;
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_8__.showSuccess)(t('files', 'WebDAV URL copied to clipboard'));
+ setTimeout(function () {
+ _this.webdavUrlCopied = false;
+ }, 5000);
+ case 9:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ },
+ t: _nextcloud_l10n__WEBPACK_IMPORTED_MODULE_9__.translate
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=js&":
+/*!******************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=js& ***!
+ \******************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! path */ "./node_modules/path/path.js");
+/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/dialogs */ "./node_modules/@nextcloud/dialogs/dist/index.mjs");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcEmptyContent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcEmptyContent.js */ "./node_modules/@nextcloud/vue/dist/Components/NcEmptyContent.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcEmptyContent_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcEmptyContent_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _nextcloud_vue_dist_Components_NcModal_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcModal.js */ "./node_modules/@nextcloud/vue/dist/Components/NcModal.js");
+/* harmony import */ var _nextcloud_vue_dist_Components_NcModal_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_nextcloud_vue_dist_Components_NcModal_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _utils_davUtils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/davUtils.js */ "./apps/files/src/utils/davUtils.js");
+/* harmony import */ var _services_Templates_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../services/Templates.js */ "./apps/files/src/services/Templates.js");
+/* harmony import */ var _components_TemplatePreview_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../components/TemplatePreview.vue */ "./apps/files/src/components/TemplatePreview.vue");
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
+function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
+
+
+
+
+
+
+
+var border = 2;
+var margin = 8;
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: 'TemplatePicker',
+ components: {
+ NcEmptyContent: (_nextcloud_vue_dist_Components_NcEmptyContent_js__WEBPACK_IMPORTED_MODULE_2___default()),
+ NcModal: (_nextcloud_vue_dist_Components_NcModal_js__WEBPACK_IMPORTED_MODULE_3___default()),
+ TemplatePreview: _components_TemplatePreview_vue__WEBPACK_IMPORTED_MODULE_6__["default"]
+ },
+ props: {
+ logger: {
+ type: Object,
+ required: true
+ }
+ },
+ data: function data() {
+ return {
+ // Check empty template by default
+ checked: -1,
+ loading: false,
+ name: null,
+ opened: false,
+ provider: null
+ };
+ },
+ computed: {
+ /**
+ * Strip away extension from name
+ *
+ * @return {string}
+ */
+ nameWithoutExt: function nameWithoutExt() {
+ return this.name.indexOf('.') > -1 ? this.name.split('.').slice(0, -1).join('.') : this.name;
+ },
+ emptyTemplate: function emptyTemplate() {
+ var _this$provider, _this$provider2;
+ return {
+ basename: t('files', 'Blank'),
+ fileid: -1,
+ filename: this.t('files', 'Blank'),
+ hasPreview: false,
+ mime: ((_this$provider = this.provider) === null || _this$provider === void 0 ? void 0 : _this$provider.mimetypes[0]) || ((_this$provider2 = this.provider) === null || _this$provider2 === void 0 ? void 0 : _this$provider2.mimetypes)
+ };
+ },
+ selectedTemplate: function selectedTemplate() {
+ var _this = this;
+ return this.provider.templates.find(function (template) {
+ return template.fileid === _this.checked;
+ });
+ },
+ /**
+ * Style css vars bin,d
+ *
+ * @return {object}
+ */
+ style: function style() {
+ // Fallback to 16:9 landscape ratio
+ var ratio = this.provider.ratio ? this.provider.ratio : 1.77;
+ // Landscape templates should be wider than tall ones
+ // We fit 3 templates per row at max for landscape and 4 for portrait
+ var width = ratio > 1 ? margin * 30 : margin * 20;
+ return {
+ '--margin': margin + 'px',
+ '--width': width + 'px',
+ '--border': border + 'px',
+ '--fullwidth': width + 2 * margin + 2 * border + 'px',
+ '--height': this.provider.ratio ? Math.round(width / this.provider.ratio) + 'px' : null
+ };
+ }
+ },
+ methods: {
+ /**
+ * Open the picker
+ *
+ * @param {string} name the file name to create
+ * @param {object} provider the template provider picked
+ */
+ open: function open(name, provider) {
+ var _this2 = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ var templates, fetchedProvider;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _this2.checked = _this2.emptyTemplate.fileid;
+ _this2.name = name;
+ _this2.provider = provider;
+ _context.next = 5;
+ return (0,_services_Templates_js__WEBPACK_IMPORTED_MODULE_5__.getTemplates)();
+ case 5:
+ templates = _context.sent;
+ fetchedProvider = templates.find(function (fetchedProvider) {
+ return fetchedProvider.app === provider.app && fetchedProvider.label === provider.label;
+ });
+ if (!(fetchedProvider === null)) {
+ _context.next = 9;
+ break;
+ }
+ throw new Error('Failed to match provider in results');
+ case 9:
+ _this2.provider = fetchedProvider;
+
+ // If there is no templates available, just create an empty file
+ if (!(fetchedProvider.templates.length === 0)) {
+ _context.next = 13;
+ break;
+ }
+ _this2.onSubmit();
+ return _context.abrupt("return");
+ case 13:
+ // Else, open the picker
+ _this2.opened = true;
+ case 14:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }))();
+ },
+ /**
+ * Close the picker and reset variables
+ */
+ close: function close() {
+ this.checked = this.emptyTemplate.fileid;
+ this.loading = false;
+ this.name = null;
+ this.opened = false;
+ this.provider = null;
+ },
+ /**
+ * Manages the radio template picker change
+ *
+ * @param {number} fileid the selected template file id
+ */
+ onCheck: function onCheck(fileid) {
+ this.checked = fileid;
+ },
+ onSubmit: function onSubmit() {
+ var _this3 = this;
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
+ var _OCA;
+ var currentDirectory, fileList, _this3$provider, _this3$provider2, _this3$selectedTempla, _this3$selectedTempla2, fileInfo, data, model, fileAction;
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ _this3.loading = true;
+ currentDirectory = (0,_utils_davUtils_js__WEBPACK_IMPORTED_MODULE_4__.getCurrentDirectory)();
+ fileList = (_OCA = OCA) === null || _OCA === void 0 || (_OCA = _OCA.Files) === null || _OCA === void 0 || (_OCA = _OCA.App) === null || _OCA === void 0 ? void 0 : _OCA.currentFileList; // If the file doesn't have an extension, add the default one
+ if (_this3.nameWithoutExt === _this3.name) {
+ _this3.logger.debug('Fixed invalid filename', {
+ name: _this3.name,
+ extension: (_this3$provider = _this3.provider) === null || _this3$provider === void 0 ? void 0 : _this3$provider.extension
+ });
+ _this3.name = _this3.name + ((_this3$provider2 = _this3.provider) === null || _this3$provider2 === void 0 ? void 0 : _this3$provider2.extension);
+ }
+ _context2.prev = 4;
+ _context2.next = 7;
+ return (0,_services_Templates_js__WEBPACK_IMPORTED_MODULE_5__.createFromTemplate)((0,path__WEBPACK_IMPORTED_MODULE_0__.normalize)("".concat(currentDirectory, "/").concat(_this3.name)), (_this3$selectedTempla = _this3.selectedTemplate) === null || _this3$selectedTempla === void 0 ? void 0 : _this3$selectedTempla.filename, (_this3$selectedTempla2 = _this3.selectedTemplate) === null || _this3$selectedTempla2 === void 0 ? void 0 : _this3$selectedTempla2.templateType);
+ case 7:
+ fileInfo = _context2.sent;
+ _this3.logger.debug('Created new file', fileInfo);
+
+ // Fetch FileInfo and model
+ _context2.next = 11;
+ return fileList === null || fileList === void 0 ? void 0 : fileList.addAndFetchFileInfo(_this3.name).then(function (status, data) {
+ return data;
+ });
+ case 11:
+ data = _context2.sent;
+ model = new OCA.Files.FileInfoModel(data, {
+ filesClient: fileList === null || fileList === void 0 ? void 0 : fileList.filesClient
+ }); // Run default action
+ fileAction = OCA.Files.fileActions.getDefaultFileAction(fileInfo.mime, 'file', OC.PERMISSION_ALL);
+ if (fileAction) {
+ fileAction.action(fileInfo.basename, {
+ $file: fileList === null || fileList === void 0 ? void 0 : fileList.findFileEl(_this3.name),
+ dir: currentDirectory,
+ fileList: fileList,
+ fileActions: fileList === null || fileList === void 0 ? void 0 : fileList.fileActions,
+ fileInfoModel: model
+ });
+ }
+ _this3.close();
+ _context2.next = 23;
+ break;
+ case 18:
+ _context2.prev = 18;
+ _context2.t0 = _context2["catch"](4);
+ _this3.logger.error('Error while creating the new file from template');
+ console.error(_context2.t0);
+ (0,_nextcloud_dialogs__WEBPACK_IMPORTED_MODULE_1__.showError)(_this3.t('files', 'Unable to create new file from template'));
+ case 23:
+ _context2.prev = 23;
+ _this3.loading = false;
+ return _context2.finish(23);
+ case 26:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2, null, [[4, 18, 23, 26]]);
+ }))();
+ }
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/BreadCrumbs.vue?vue&type=template&id=9f0aa34e&scoped=true&":
+/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/BreadCrumbs.vue?vue&type=template&id=9f0aa34e&scoped=true& ***!
+ \*******************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c,
+ _setup = _vm._self._setupProxy;
+ return _c("NcBreadcrumbs", {
+ attrs: {
+ "data-cy-files-content-breadcrumbs": ""
+ }
+ }, _vm._l(_vm.sections, function (section, index) {
+ return _c("NcBreadcrumb", _vm._b({
+ key: section.dir,
+ attrs: {
+ "aria-label": _vm.ariaLabel(section),
+ title: _vm.ariaLabel(section)
+ },
+ nativeOn: {
+ click: function click($event) {
+ return _vm.onClick(section.to);
+ }
+ },
+ scopedSlots: _vm._u([index === 0 ? {
+ key: "icon",
+ fn: function fn() {
+ return [_c("Home", {
+ attrs: {
+ size: 20
+ }
+ })];
+ },
+ proxy: true
+ } : null], null, true)
+ }, "NcBreadcrumb", section, false));
+ }), 1);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomElementRender.vue?vue&type=template&id=d4c538ac&":
+/*!***************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomElementRender.vue?vue&type=template&id=d4c538ac& ***!
+ \***************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c;
+ return _c("span");
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=template&id=6c70146b&scoped=true&":
+/*!***************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=template&id=6c70146b&scoped=true& ***!
+ \***************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c;
+ return _c("span", {
+ staticClass: "custom-svg-icon"
+ });
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FavoriteIcon.vue?vue&type=template&id=8f8f00c8&scoped=true&":
+/*!********************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FavoriteIcon.vue?vue&type=template&id=8f8f00c8&scoped=true& ***!
+ \********************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c;
+ return _c("CustomSvgIconRender", {
+ staticClass: "favorite-marker-icon",
+ attrs: {
+ svg: _vm.StarSvg
+ }
+ });
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=template&id=24fe7eff&scoped=true&":
+/*!*****************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=template&id=24fe7eff&scoped=true& ***!
+ \*****************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c,
+ _setup = _vm._self._setupProxy;
+ return _c("tr", {
+ staticClass: "list__row",
+ class: {
+ "files-list__row--visible": _vm.visible,
+ "files-list__row--active": _vm.isActive
+ },
+ attrs: {
+ "data-cy-files-list-row": "",
+ "data-cy-files-list-row-fileid": _vm.fileid,
+ "data-cy-files-list-row-name": _vm.source.basename
+ },
+ on: {
+ contextmenu: _vm.onRightClick
+ }
+ }, [_vm.source.attributes.failed ? _c("span", {
+ staticClass: "files-list__row--failed"
+ }) : _vm._e(), _vm._v(" "), _c("td", {
+ staticClass: "files-list__row-checkbox"
+ }, [_vm.visible ? _c("NcCheckboxRadioSwitch", {
+ attrs: {
+ "aria-label": _vm.t("files", "Select the row for {displayName}", {
+ displayName: _vm.displayName
+ }),
+ checked: _vm.selectedFiles,
+ value: _vm.fileid,
+ name: "selectedFiles"
+ },
+ on: {
+ "update:checked": _vm.onSelectionChange
+ }
+ }) : _vm._e()], 1), _vm._v(" "), _c("td", {
+ staticClass: "files-list__row-name",
+ attrs: {
+ "data-cy-files-list-row-name": ""
+ }
+ }, [_c("span", {
+ staticClass: "files-list__row-icon",
+ on: {
+ click: _vm.execDefaultAction
+ }
+ }, [_vm.source.type === "folder" ? _c("FolderIcon") : _vm.previewUrl && !_vm.backgroundFailed ? _c("span", {
+ ref: "previewImg",
+ staticClass: "files-list__row-icon-preview",
+ style: {
+ backgroundImage: _vm.backgroundImage
+ }
+ }) : _c("FileIcon"), _vm._v(" "), _vm.isFavorite ? _c("span", {
+ staticClass: "files-list__row-icon-favorite",
+ attrs: {
+ "aria-label": _vm.t("files", "Favorite")
+ }
+ }, [_c("FavoriteIcon", {
+ attrs: {
+ "aria-hidden": true
+ }
+ })], 1) : _vm._e()], 1), _vm._v(" "), _c("form", {
+ directives: [{
+ name: "show",
+ rawName: "v-show",
+ value: _vm.isRenaming,
+ expression: "isRenaming"
+ }, {
+ name: "on-click-outside",
+ rawName: "v-on-click-outside",
+ value: _vm.stopRenaming,
+ expression: "stopRenaming"
+ }],
+ staticClass: "files-list__row-rename",
+ attrs: {
+ "aria-hidden": !_vm.isRenaming,
+ "aria-label": _vm.t("files", "Rename file")
+ },
+ on: {
+ submit: function submit($event) {
+ $event.preventDefault();
+ $event.stopPropagation();
+ return _vm.onRename.apply(null, arguments);
+ }
+ }
+ }, [_c("NcTextField", {
+ ref: "renameInput",
+ attrs: {
+ "aria-label": _vm.t("files", "File name"),
+ autofocus: true,
+ minlength: 1,
+ required: true,
+ value: _vm.newName,
+ enterkeyhint: "done"
+ },
+ on: {
+ "update:value": function updateValue($event) {
+ _vm.newName = $event;
+ },
+ keyup: [_vm.checkInputValidity, function ($event) {
+ if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "esc", 27, $event.key, ["Esc", "Escape"])) return null;
+ return _vm.stopRenaming.apply(null, arguments);
+ }]
+ }
+ })], 1), _vm._v(" "), _c("a", _vm._b({
+ directives: [{
+ name: "show",
+ rawName: "v-show",
+ value: !_vm.isRenaming,
+ expression: "!isRenaming"
+ }],
+ ref: "basename",
+ staticClass: "files-list__row-name-link",
+ attrs: {
+ "aria-hidden": _vm.isRenaming,
+ "data-cy-files-list-row-name-link": ""
+ },
+ on: {
+ click: _vm.execDefaultAction
+ }
+ }, "a", _vm.linkTo, false), [_c("span", {
+ staticClass: "files-list__row-name-text"
+ }, [_c("span", {
+ staticClass: "files-list__row-name-",
+ domProps: {
+ textContent: _vm._s(_vm.displayName)
+ }
+ }), _vm._v(" "), _c("span", {
+ staticClass: "files-list__row-name-ext",
+ domProps: {
+ textContent: _vm._s(_vm.extension)
+ }
+ })])])]), _vm._v(" "), _c("td", {
+ directives: [{
+ name: "show",
+ rawName: "v-show",
+ value: !_vm.isRenamingSmallScreen,
+ expression: "!isRenamingSmallScreen"
+ }],
+ staticClass: "files-list__row-actions",
+ class: "files-list__row-actions-".concat(_vm.uniqueId),
+ attrs: {
+ "data-cy-files-list-row-actions": ""
+ }
+ }, [_vm._l(_vm.enabledRenderActions, function (action) {
+ return _c("CustomElementRender", {
+ key: action.id,
+ attrs: {
+ "current-view": _vm.currentView,
+ render: action.renderInline,
+ source: _vm.source
+ }
+ });
+ }), _vm._v(" "), _vm.visible ? _c("NcActions", {
+ ref: "actionsMenu",
+ attrs: {
+ "boundaries-element": _vm.getBoundariesElement(),
+ container: _vm.getBoundariesElement(),
+ disabled: _vm.source._loading,
+ "force-name": true,
+ "force-menu": _vm.enabledInlineActions.length === 0 /* forceMenu only if no inline actions */,
+ inline: _vm.enabledInlineActions.length,
+ open: _vm.openedMenu
+ },
+ on: {
+ "update:open": function updateOpen($event) {
+ _vm.openedMenu = $event;
+ }
+ }
+ }, _vm._l(_vm.enabledMenuActions, function (action) {
+ return _c("NcActionButton", {
+ key: action.id,
+ class: "files-list__row-action-" + action.id,
+ attrs: {
+ "close-after-click": true,
+ "data-cy-files-list-row-action": action.id
+ },
+ on: {
+ click: function click($event) {
+ return _vm.onActionClick(action);
+ }
+ },
+ scopedSlots: _vm._u([{
+ key: "icon",
+ fn: function fn() {
+ return [_vm.loading === action.id ? _c("NcLoadingIcon", {
+ attrs: {
+ size: 18
+ }
+ }) : _c("CustomSvgIconRender", {
+ attrs: {
+ svg: action.iconSvgInline([_vm.source], _vm.currentView)
+ }
+ })];
+ },
+ proxy: true
+ }], null, true)
+ }, [_vm._v("\n\t\t\t\t" + _vm._s(action.displayName([_vm.source], _vm.currentView)) + "\n\t\t\t")]);
+ }), 1) : _vm._e()], 2), _vm._v(" "), _vm.isSizeAvailable ? _c("td", {
+ staticClass: "files-list__row-size",
+ style: {
+ opacity: _vm.sizeOpacity
+ },
+ attrs: {
+ "data-cy-files-list-row-size": ""
+ },
+ on: {
+ click: _vm.openDetailsIfAvailable
+ }
+ }, [_c("span", [_vm._v(_vm._s(_vm.size))])]) : _vm._e(), _vm._v(" "), _vm.isMtimeAvailable ? _c("td", {
+ staticClass: "files-list__row-mtime",
+ attrs: {
+ "data-cy-files-list-row-mtime": ""
+ },
+ on: {
+ click: _vm.openDetailsIfAvailable
+ }
+ }, [_c("span", [_vm._v(_vm._s(_vm.mtime))])]) : _vm._e(), _vm._v(" "), _vm._l(_vm.columns, function (column) {
+ var _vm$currentView;
+ return _c("td", {
+ key: column.id,
+ staticClass: "files-list__row-column-custom",
+ class: "files-list__row-".concat((_vm$currentView = _vm.currentView) === null || _vm$currentView === void 0 ? void 0 : _vm$currentView.id, "-").concat(column.id),
+ attrs: {
+ "data-cy-files-list-row-column-custom": column.id
+ },
+ on: {
+ click: _vm.openDetailsIfAvailable
+ }
+ }, [_vm.visible ? _c("CustomElementRender", {
+ attrs: {
+ "current-view": _vm.currentView,
+ render: column.render,
+ source: _vm.source
+ }
+ }) : _vm._e()], 1);
+ })], 2);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListHeader.vue?vue&type=template&id=4db1368b&":
+/*!***********************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListHeader.vue?vue&type=template&id=4db1368b& ***!
+ \***********************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c;
+ return _c("div", {
+ directives: [{
+ name: "show",
+ rawName: "v-show",
+ value: _vm.enabled,
+ expression: "enabled"
+ }],
+ class: "files-list__header-".concat(_vm.header.id)
+ }, [_c("span", {
+ ref: "mount"
+ })]);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableFooter.vue?vue&type=template&id=29c3a0fb&scoped=true&":
+/*!****************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableFooter.vue?vue&type=template&id=29c3a0fb&scoped=true& ***!
+ \****************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c,
+ _setup = _vm._self._setupProxy;
+ return _c("tr", [_c("th", {
+ staticClass: "files-list__row-checkbox"
+ }, [_c("span", {
+ staticClass: "hidden-visually"
+ }, [_vm._v(_vm._s(_vm.t("files", "Total rows summary")))])]), _vm._v(" "), _c("td", {
+ staticClass: "files-list__row-name"
+ }, [_c("span", {
+ staticClass: "files-list__row-icon"
+ }), _vm._v(" "), _c("span", [_vm._v(_vm._s(_vm.summary))])]), _vm._v(" "), _c("td", {
+ staticClass: "files-list__row-actions"
+ }), _vm._v(" "), _vm.isSizeAvailable ? _c("td", {
+ staticClass: "files-list__column files-list__row-size"
+ }, [_c("span", [_vm._v(_vm._s(_vm.totalSize))])]) : _vm._e(), _vm._v(" "), _vm.isMtimeAvailable ? _c("td", {
+ staticClass: "files-list__column files-list__row-mtime"
+ }) : _vm._e(), _vm._v(" "), _vm._l(_vm.columns, function (column) {
+ var _column$summary;
+ return _c("th", {
+ key: column.id,
+ class: _vm.classForColumn(column)
+ }, [_c("span", [_vm._v(_vm._s((_column$summary = column.summary) === null || _column$summary === void 0 ? void 0 : _column$summary.call(column, _vm.nodes, _vm.currentView)))])]);
+ })], 2);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeader.vue?vue&type=template&id=4af604ed&scoped=true&":
+/*!****************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeader.vue?vue&type=template&id=4af604ed&scoped=true& ***!
+ \****************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c,
+ _setup = _vm._self._setupProxy;
+ return _c("tr", {
+ staticClass: "files-list__row-head"
+ }, [_c("th", {
+ staticClass: "files-list__column files-list__row-checkbox"
+ }, [_c("NcCheckboxRadioSwitch", _vm._b({
+ on: {
+ "update:checked": _vm.onToggleAll
+ }
+ }, "NcCheckboxRadioSwitch", _vm.selectAllBind, false))], 1), _vm._v(" "), !_vm.isNoneSelected ? _c("FilesListTableHeaderActions", {
+ attrs: {
+ "current-view": _vm.currentView,
+ "selected-nodes": _vm.selectedNodes
+ }
+ }) : [_c("th", {
+ staticClass: "files-list__column files-list__row-name files-list__column--sortable",
+ on: {
+ click: function click($event) {
+ $event.stopPropagation();
+ $event.preventDefault();
+ return _vm.toggleSortBy("basename");
+ }
+ }
+ }, [_c("span", {
+ staticClass: "files-list__row-icon"
+ }), _vm._v(" "), _c("FilesListTableHeaderButton", {
+ attrs: {
+ name: _vm.t("files", "Name"),
+ mode: "basename"
+ }
+ })], 1), _vm._v(" "), _c("th", {
+ staticClass: "files-list__row-actions"
+ }), _vm._v(" "), _vm.isSizeAvailable ? _c("th", {
+ staticClass: "files-list__column files-list__row-size",
+ class: {
+ "files-list__column--sortable": _vm.isSizeAvailable
+ }
+ }, [_c("FilesListTableHeaderButton", {
+ attrs: {
+ name: _vm.t("files", "Size"),
+ mode: "size"
+ }
+ })], 1) : _vm._e(), _vm._v(" "), _vm.isMtimeAvailable ? _c("th", {
+ staticClass: "files-list__column files-list__row-mtime",
+ class: {
+ "files-list__column--sortable": _vm.isMtimeAvailable
+ }
+ }, [_c("FilesListTableHeaderButton", {
+ attrs: {
+ name: _vm.t("files", "Modified"),
+ mode: "mtime"
+ }
+ })], 1) : _vm._e(), _vm._v(" "), _vm._l(_vm.columns, function (column) {
+ return _c("th", {
+ key: column.id,
+ class: _vm.classForColumn(column)
+ }, [!!column.sort ? _c("FilesListTableHeaderButton", {
+ attrs: {
+ name: column.title,
+ mode: column.id
+ }
+ }) : _c("span", [_vm._v("\n\t\t\t\t" + _vm._s(column.title) + "\n\t\t\t")])], 1);
+ })]], 2);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=template&id=25a39e00&scoped=true&":
+/*!***********************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=template&id=25a39e00&scoped=true& ***!
+ \***********************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c,
+ _setup = _vm._self._setupProxy;
+ return _c("th", {
+ staticClass: "files-list__column files-list__row-actions-batch",
+ attrs: {
+ colspan: "2"
+ }
+ }, [_c("NcActions", {
+ ref: "actionsMenu",
+ attrs: {
+ disabled: !!_vm.loading || _vm.areSomeNodesLoading,
+ "force-name": true,
+ inline: _vm.inlineActions,
+ "menu-name": _vm.inlineActions <= 1 ? _vm.t("files", "Actions") : null,
+ open: _vm.openedMenu
+ },
+ on: {
+ "update:open": function updateOpen($event) {
+ _vm.openedMenu = $event;
+ }
+ }
+ }, _vm._l(_vm.enabledActions, function (action) {
+ return _c("NcActionButton", {
+ key: action.id,
+ class: "files-list__row-actions-batch-" + action.id,
+ on: {
+ click: function click($event) {
+ return _vm.onActionClick(action);
+ }
+ },
+ scopedSlots: _vm._u([{
+ key: "icon",
+ fn: function fn() {
+ return [_vm.loading === action.id ? _c("NcLoadingIcon", {
+ attrs: {
+ size: 18
+ }
+ }) : _c("CustomSvgIconRender", {
+ attrs: {
+ svg: action.iconSvgInline(_vm.nodes, _vm.currentView)
+ }
+ })];
+ },
+ proxy: true
+ }], null, true)
+ }, [_vm._v("\n\t\t\t" + _vm._s(action.displayName(_vm.nodes, _vm.currentView)) + "\n\t\t")]);
+ }), 1)], 1);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=template&id=432b4b7f&":
+/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=template&id=432b4b7f& ***!
+ \**********************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c,
+ _setup = _vm._self._setupProxy;
+ return _c("NcButton", {
+ staticClass: "files-list__column-sort-button",
+ class: {
+ "files-list__column-sort-button--active": _vm.sortingMode === _vm.mode
+ },
+ attrs: {
+ "aria-label": _vm.sortAriaLabel(_vm.name),
+ type: "tertiary"
+ },
+ on: {
+ click: function click($event) {
+ $event.stopPropagation();
+ $event.preventDefault();
+ return _vm.toggleSortBy(_vm.mode);
+ }
+ }
+ }, [_vm.sortingMode !== _vm.mode || _vm.isAscSorting ? _c("MenuUp", {
+ attrs: {
+ slot: "icon"
+ },
+ slot: "icon"
+ }) : _c("MenuDown", {
+ attrs: {
+ slot: "icon"
+ },
+ slot: "icon"
+ }), _vm._v("\n\t" + _vm._s(_vm.name) + "\n")], 1);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListVirtual.vue?vue&type=template&id=2d34be06&scoped=true&":
+/*!************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListVirtual.vue?vue&type=template&id=2d34be06&scoped=true& ***!
+ \************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c,
+ _setup = _vm._self._setupProxy;
+ return _c("VirtualList", {
+ attrs: {
+ "data-component": _vm.FileEntry,
+ "data-key": "source",
+ "data-sources": _vm.nodes,
+ "item-height": 56,
+ "extra-props": {
+ isMtimeAvailable: _vm.isMtimeAvailable,
+ isSizeAvailable: _vm.isSizeAvailable,
+ nodes: _vm.nodes,
+ filesListWidth: _vm.filesListWidth
+ },
+ "scroll-to-index": _vm.scrollToIndex
+ },
+ scopedSlots: _vm._u([{
+ key: "before",
+ fn: function fn() {
+ return [_c("caption", {
+ staticClass: "hidden-visually"
+ }, [_vm._v("\n\t\t\t" + _vm._s(_vm.currentView.caption || _vm.t("files", "List of files and folders.")) + "\n\t\t\t" + _vm._s(_vm.t("files", "This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list.")) + "\n\t\t")]), _vm._v(" "), _vm._l(_vm.sortedHeaders, function (header) {
+ return _c("FilesListHeader", {
+ key: header.id,
+ attrs: {
+ "current-folder": _vm.currentFolder,
+ "current-view": _vm.currentView,
+ header: header
+ }
+ });
+ })];
+ },
+ proxy: true
+ }, {
+ key: "header",
+ fn: function fn() {
+ return [_c("FilesListTableHeader", {
+ attrs: {
+ "files-list-width": _vm.filesListWidth,
+ "is-mtime-available": _vm.isMtimeAvailable,
+ "is-size-available": _vm.isSizeAvailable,
+ nodes: _vm.nodes
+ }
+ })];
+ },
+ proxy: true
+ }, {
+ key: "footer",
+ fn: function fn() {
+ return [_c("FilesListTableFooter", {
+ attrs: {
+ "files-list-width": _vm.filesListWidth,
+ "is-mtime-available": _vm.isMtimeAvailable,
+ "is-size-available": _vm.isSizeAvailable,
+ nodes: _vm.nodes,
+ summary: _vm.summary
+ }
+ })];
+ },
+ proxy: true
+ }])
+ });
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/NavigationQuota.vue?vue&type=template&id=6f96f0a6&scoped=true&":
+/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/NavigationQuota.vue?vue&type=template&id=6f96f0a6&scoped=true& ***!
+ \***********************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c;
+ return _vm.storageStats ? _c("NcAppNavigationItem", {
+ staticClass: "app-navigation-entry__settings-quota",
+ class: {
+ "app-navigation-entry__settings-quota--not-unlimited": _vm.storageStats.quota >= 0
+ },
+ attrs: {
+ "aria-label": _vm.t("files", "Storage informations"),
+ loading: _vm.loadingStorageStats,
+ name: _vm.storageStatsTitle,
+ title: _vm.storageStatsTooltip,
+ "data-cy-files-navigation-settings-quota": ""
+ },
+ on: {
+ click: function click($event) {
+ $event.stopPropagation();
+ $event.preventDefault();
+ return _vm.debounceUpdateStorageStats.apply(null, arguments);
+ }
+ }
+ }, [_c("ChartPie", {
+ attrs: {
+ slot: "icon",
+ size: 20
+ },
+ slot: "icon"
+ }), _vm._v(" "), _vm.storageStats.quota >= 0 ? _c("NcProgressBar", {
+ attrs: {
+ slot: "extra",
+ error: _vm.storageStats.relative > 80,
+ value: Math.min(_vm.storageStats.relative, 100)
+ },
+ slot: "extra"
+ }) : _vm._e()], 1) : _vm._e();
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/Setting.vue?vue&type=template&id=a0773f8e&":
+/*!***************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/Setting.vue?vue&type=template&id=a0773f8e& ***!
+ \***************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c;
+ return _c("div");
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/TemplatePreview.vue?vue&type=template&id=14e703d7&scoped=true&":
+/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/TemplatePreview.vue?vue&type=template&id=14e703d7&scoped=true& ***!
+ \***********************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c;
+ return _c("li", {
+ staticClass: "template-picker__item"
+ }, [_c("input", {
+ staticClass: "radio",
+ attrs: {
+ id: _vm.id,
+ type: "radio",
+ name: "template-picker"
+ },
+ domProps: {
+ checked: _vm.checked
+ },
+ on: {
+ change: _vm.onCheck
+ }
+ }), _vm._v(" "), _c("label", {
+ staticClass: "template-picker__label",
+ attrs: {
+ for: _vm.id
+ }
+ }, [_c("div", {
+ staticClass: "template-picker__preview",
+ class: _vm.failedPreview ? "template-picker__preview--failed" : ""
+ }, [_c("img", {
+ staticClass: "template-picker__image",
+ attrs: {
+ src: _vm.realPreviewUrl,
+ alt: "",
+ draggable: "false"
+ },
+ on: {
+ error: _vm.onFailure
+ }
+ })]), _vm._v(" "), _c("span", {
+ staticClass: "template-picker__title"
+ }, [_vm._v("\n\t\t\t" + _vm._s(_vm.nameWithoutExt) + "\n\t\t")])])]);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/VirtualList.vue?vue&type=template&id=24416332&scoped=true&":
+/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/VirtualList.vue?vue&type=template&id=24416332&scoped=true& ***!
+ \*******************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c,
+ _setup = _vm._self._setupProxy;
+ return _c("table", {
+ staticClass: "files-list",
+ attrs: {
+ "data-cy-files-list": ""
+ }
+ }, [_c("div", {
+ ref: "before",
+ staticClass: "files-list__before"
+ }, [_vm._t("before")], 2), _vm._v(" "), _c("thead", {
+ ref: "thead",
+ staticClass: "files-list__thead",
+ attrs: {
+ "data-cy-files-list-thead": ""
+ }
+ }, [_vm._t("header")], 2), _vm._v(" "), _c("tbody", {
+ staticClass: "files-list__tbody",
+ style: _vm.tbodyStyle,
+ attrs: {
+ "data-cy-files-list-tbody": ""
+ }
+ }, _vm._l(_vm.renderedItems, function (item, i) {
+ return _c(_vm.dataComponent, _vm._b({
+ key: i,
+ tag: "component",
+ attrs: {
+ visible: (i >= _vm.bufferItems || _vm.index <= _vm.bufferItems) && i < _vm.shownItems - _vm.bufferItems,
+ source: item,
+ index: i
+ }
+ }, "component", _vm.extraProps, false));
+ }), 1), _vm._v(" "), _c("tfoot", {
+ directives: [{
+ name: "show",
+ rawName: "v-show",
+ value: _vm.isReady,
+ expression: "isReady"
+ }],
+ ref: "tfoot",
+ staticClass: "files-list__tfoot",
+ attrs: {
+ "data-cy-files-list-tfoot": ""
+ }
+ }, [_vm._t("footer")], 2)]);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/FilesList.vue?vue&type=template&id=02e51922&scoped=true&":
+/*!************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/FilesList.vue?vue&type=template&id=02e51922&scoped=true& ***!
+ \************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm$currentView, _vm$currentView2;
+ var _vm = this,
+ _c = _vm._self._c,
+ _setup = _vm._self._setupProxy;
+ return _c("NcAppContent", {
+ attrs: {
+ "data-cy-files-content": ""
+ }
+ }, [_c("div", {
+ staticClass: "files-list__header"
+ }, [_c("BreadCrumbs", {
+ attrs: {
+ path: _vm.dir
+ },
+ on: {
+ reload: _vm.fetchContent
+ }
+ }), _vm._v(" "), _vm.isRefreshing ? _c("NcLoadingIcon", {
+ staticClass: "files-list__refresh-icon"
+ }) : _vm._e()], 1), _vm._v(" "), _vm.loading && !_vm.isRefreshing ? _c("NcLoadingIcon", {
+ staticClass: "files-list__loading-icon",
+ attrs: {
+ size: 38,
+ name: _vm.t("files", "Loading current folder")
+ }
+ }) : !_vm.loading && _vm.isEmptyDir ? _c("NcEmptyContent", {
+ attrs: {
+ name: ((_vm$currentView = _vm.currentView) === null || _vm$currentView === void 0 ? void 0 : _vm$currentView.emptyTitle) || _vm.t("files", "No files in here"),
+ description: ((_vm$currentView2 = _vm.currentView) === null || _vm$currentView2 === void 0 ? void 0 : _vm$currentView2.emptyCaption) || _vm.t("files", "Upload some content or sync with your devices!"),
+ "data-cy-files-content-empty": ""
+ },
+ scopedSlots: _vm._u([{
+ key: "action",
+ fn: function fn() {
+ return [_vm.dir !== "/" ? _c("NcButton", {
+ attrs: {
+ "aria-label": "t('files', 'Go to the previous folder')",
+ type: "primary",
+ to: _vm.toPreviousDir
+ }
+ }, [_vm._v("\n\t\t\t\t" + _vm._s(_vm.t("files", "Go back")) + "\n\t\t\t")]) : _vm._e()];
+ },
+ proxy: true
+ }, {
+ key: "icon",
+ fn: function fn() {
+ return [_c("NcIconSvgWrapper", {
+ attrs: {
+ svg: _vm.currentView.icon
+ }
+ })];
+ },
+ proxy: true
+ }])
+ }) : _c("FilesListVirtual", {
+ ref: "filesListVirtual",
+ attrs: {
+ "current-folder": _vm.currentFolder,
+ "current-view": _vm.currentView,
+ nodes: _vm.dirContentsSorted
+ }
+ })], 1);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Navigation.vue?vue&type=template&id=a8628012&scoped=true&":
+/*!*************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Navigation.vue?vue&type=template&id=a8628012&scoped=true& ***!
+ \*************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c;
+ return _c("NcAppNavigation", {
+ attrs: {
+ "data-cy-files-navigation": ""
+ },
+ scopedSlots: _vm._u([{
+ key: "list",
+ fn: function fn() {
+ return _vm._l(_vm.parentViews, function (view) {
+ return _c("NcAppNavigationItem", {
+ key: view.id,
+ attrs: {
+ "allow-collapse": true,
+ "data-cy-files-navigation-item": view.id,
+ icon: view.iconClass,
+ open: _vm.isExpanded(view),
+ pinned: view.sticky,
+ name: view.name,
+ to: _vm.generateToNavigation(view)
+ },
+ on: {
+ "update:open": function updateOpen($event) {
+ return _vm.onToggleExpand(view);
+ }
+ }
+ }, [view.icon ? _c("NcIconSvgWrapper", {
+ attrs: {
+ slot: "icon",
+ svg: view.icon
+ },
+ slot: "icon"
+ }) : _vm._e(), _vm._v(" "), _vm._l(_vm.childViews[view.id], function (child) {
+ return _c("NcAppNavigationItem", {
+ key: child.id,
+ attrs: {
+ "data-cy-files-navigation-item": child.id,
+ exact: true,
+ icon: child.iconClass,
+ name: child.name,
+ to: _vm.generateToNavigation(child)
+ }
+ }, [child.icon ? _c("NcIconSvgWrapper", {
+ attrs: {
+ slot: "icon",
+ svg: child.icon
+ },
+ slot: "icon"
+ }) : _vm._e()], 1);
+ })], 2);
+ });
+ },
+ proxy: true
+ }, {
+ key: "footer",
+ fn: function fn() {
+ return [_c("ul", {
+ staticClass: "app-navigation-entry__settings"
+ }, [_c("NavigationQuota"), _vm._v(" "), _c("NcAppNavigationItem", {
+ attrs: {
+ "aria-label": _vm.t("files", "Open the files app settings"),
+ name: _vm.t("files", "Files settings"),
+ "data-cy-files-navigation-settings-button": ""
+ },
+ on: {
+ click: function click($event) {
+ $event.preventDefault();
+ $event.stopPropagation();
+ return _vm.openSettings.apply(null, arguments);
+ }
+ }
+ }, [_c("Cog", {
+ attrs: {
+ slot: "icon",
+ size: 20
+ },
+ slot: "icon"
+ })], 1)], 1)];
+ },
+ proxy: true
+ }])
+ }, [_vm._v(" "), _vm._v(" "), _c("SettingsModal", {
+ attrs: {
+ open: _vm.settingsOpened,
+ "data-cy-files-navigation-settings": ""
+ },
+ on: {
+ close: _vm.onSettingsClose
+ }
+ })], 1);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Settings.vue?vue&type=template&id=de32ad74&scoped=true&":
+/*!***********************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Settings.vue?vue&type=template&id=de32ad74&scoped=true& ***!
+ \***********************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c;
+ return _c("NcAppSettingsDialog", {
+ attrs: {
+ open: _vm.open,
+ "show-navigation": true,
+ name: _vm.t("files", "Files settings")
+ },
+ on: {
+ "update:open": _vm.onClose
+ }
+ }, [_c("NcAppSettingsSection", {
+ attrs: {
+ id: "settings",
+ name: _vm.t("files", "Files settings")
+ }
+ }, [_c("NcCheckboxRadioSwitch", {
+ attrs: {
+ checked: _vm.userConfig.sort_favorites_first
+ },
+ on: {
+ "update:checked": function updateChecked($event) {
+ return _vm.setConfig("sort_favorites_first", $event);
+ }
+ }
+ }, [_vm._v("\n\t\t\t" + _vm._s(_vm.t("files", "Sort favorites first")) + "\n\t\t")]), _vm._v(" "), _c("NcCheckboxRadioSwitch", {
+ attrs: {
+ checked: _vm.userConfig.show_hidden
+ },
+ on: {
+ "update:checked": function updateChecked($event) {
+ return _vm.setConfig("show_hidden", $event);
+ }
+ }
+ }, [_vm._v("\n\t\t\t" + _vm._s(_vm.t("files", "Show hidden files")) + "\n\t\t")]), _vm._v(" "), _c("NcCheckboxRadioSwitch", {
+ attrs: {
+ checked: _vm.userConfig.crop_image_previews
+ },
+ on: {
+ "update:checked": function updateChecked($event) {
+ return _vm.setConfig("crop_image_previews", $event);
+ }
+ }
+ }, [_vm._v("\n\t\t\t" + _vm._s(_vm.t("files", "Crop image previews")) + "\n\t\t")])], 1), _vm._v(" "), _vm.settings.length !== 0 ? _c("NcAppSettingsSection", {
+ attrs: {
+ id: "more-settings",
+ name: _vm.t("files", "Additional settings")
+ }
+ }, [_vm._l(_vm.settings, function (setting) {
+ return [_c("Setting", {
+ key: setting.name,
+ attrs: {
+ el: setting.el
+ }
+ })];
+ })], 2) : _vm._e(), _vm._v(" "), _c("NcAppSettingsSection", {
+ attrs: {
+ id: "webdav",
+ name: _vm.t("files", "WebDAV")
+ }
+ }, [_c("NcInputField", {
+ attrs: {
+ id: "webdav-url-input",
+ "show-trailing-button": true,
+ success: _vm.webdavUrlCopied,
+ "trailing-button-label": _vm.t("files", "Copy to clipboard"),
+ value: _vm.webdavUrl,
+ readonly: "readonly",
+ type: "url"
+ },
+ on: {
+ focus: function focus($event) {
+ return $event.target.select();
+ },
+ "trailing-button-click": _vm.copyCloudId
+ },
+ scopedSlots: _vm._u([{
+ key: "trailing-button-icon",
+ fn: function fn() {
+ return [_c("Clipboard", {
+ attrs: {
+ size: 20
+ }
+ })];
+ },
+ proxy: true
+ }])
+ }), _vm._v(" "), _c("em", [_c("a", {
+ staticClass: "setting-link",
+ attrs: {
+ href: _vm.webdavDocs,
+ target: "_blank",
+ rel: "noreferrer noopener"
+ }
+ }, [_vm._v("\n\t\t\t\t" + _vm._s(_vm.t("files", "Use this address to access your Files via WebDAV")) + " ↗\n\t\t\t")])]), _vm._v(" "), _c("br"), _vm._v(" "), _c("em", [_c("a", {
+ staticClass: "setting-link",
+ attrs: {
+ href: _vm.appPasswordUrl
+ }
+ }, [_vm._v("\n\t\t\t\t" + _vm._s(_vm.t("files", "If you have enabled 2FA, you must create and use a new app password by clicking here.")) + " ↗\n\t\t\t")])])], 1)], 1);
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/TemplatePicker.vue?vue&type=template&id=70b9a7ea&scoped=true&":
+/*!*****************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/TemplatePicker.vue?vue&type=template&id=70b9a7ea&scoped=true& ***!
+ \*****************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c;
+ return _vm.opened ? _c("NcModal", {
+ staticClass: "templates-picker",
+ attrs: {
+ "clear-view-delay": -1,
+ size: "large"
+ },
+ on: {
+ close: _vm.close
+ }
+ }, [_c("form", {
+ staticClass: "templates-picker__form",
+ style: _vm.style,
+ on: {
+ submit: function submit($event) {
+ $event.preventDefault();
+ $event.stopPropagation();
+ return _vm.onSubmit.apply(null, arguments);
+ }
+ }
+ }, [_c("h2", [_vm._v(_vm._s(_vm.t("files", "Pick a template for {name}", {
+ name: _vm.nameWithoutExt
+ })))]), _vm._v(" "), _c("ul", {
+ staticClass: "templates-picker__list"
+ }, [_c("TemplatePreview", _vm._b({
+ attrs: {
+ checked: _vm.checked === _vm.emptyTemplate.fileid
+ },
+ on: {
+ check: _vm.onCheck
+ }
+ }, "TemplatePreview", _vm.emptyTemplate, false)), _vm._v(" "), _vm._l(_vm.provider.templates, function (template) {
+ return _c("TemplatePreview", _vm._b({
+ key: template.fileid,
+ attrs: {
+ checked: _vm.checked === template.fileid,
+ ratio: _vm.provider.ratio
+ },
+ on: {
+ check: _vm.onCheck
+ }
+ }, "TemplatePreview", template, false));
+ })], 2), _vm._v(" "), _c("div", {
+ staticClass: "templates-picker__buttons"
+ }, [_c("input", {
+ staticClass: "primary",
+ attrs: {
+ type: "submit",
+ "aria-label": _vm.t("files", "Create a new file with the selected template")
+ },
+ domProps: {
+ value: _vm.t("files", "Create")
+ }
+ })])]), _vm._v(" "), _vm.loading ? _c("NcEmptyContent", {
+ staticClass: "templates-picker__loading",
+ attrs: {
+ icon: "icon-loading"
+ }
+ }, [_vm._v("\n\t\t" + _vm._s(_vm.t("files", "Creating file")) + "\n\t")]) : _vm._e()], 1) : _vm._e();
+};
+var staticRenderFns = [];
+render._withStripped = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/cancelable-promise/umd/CancelablePromise.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/cancelable-promise/umd/CancelablePromise.js ***!
+ \******************************************************************/
+/***/ (function(module, exports, __webpack_require__) {
+
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
+
+(function (global, factory) {
+ if (true) {
+ !(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
+ __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
+ (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
+ __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
+ } else { var mod; }
+})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports) {
+ "use strict";
+
+ Object.defineProperty(_exports, "__esModule", {
+ value: true
+ });
+ _exports.CancelablePromise = void 0;
+ _exports.cancelable = cancelable;
+ _exports.default = void 0;
+ _exports.isCancelablePromise = isCancelablePromise;
+
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
+
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
+
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
+
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
+
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
+
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
+
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
+
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
+
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
+
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
+
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
+
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
+
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
+ function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
+
+ function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
+
+ function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
+
+ function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
+
+ function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
+
+ function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
+
+ function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
+
+ var toStringTag = typeof Symbol !== 'undefined' ? Symbol.toStringTag : '@@toStringTag';
+
+ var _internals = /*#__PURE__*/new WeakMap();
+
+ var _promise = /*#__PURE__*/new WeakMap();
+
+ var CancelablePromiseInternal = /*#__PURE__*/function () {
+ function CancelablePromiseInternal(_ref) {
+ var _ref$executor = _ref.executor,
+ executor = _ref$executor === void 0 ? function () {} : _ref$executor,
+ _ref$internals = _ref.internals,
+ internals = _ref$internals === void 0 ? defaultInternals() : _ref$internals,
+ _ref$promise = _ref.promise,
+ promise = _ref$promise === void 0 ? new Promise(function (resolve, reject) {
+ return executor(resolve, reject, function (onCancel) {
+ internals.onCancelList.push(onCancel);
+ });
+ }) : _ref$promise;
+
+ _classCallCheck(this, CancelablePromiseInternal);
+
+ _classPrivateFieldInitSpec(this, _internals, {
+ writable: true,
+ value: void 0
+ });
+
+ _classPrivateFieldInitSpec(this, _promise, {
+ writable: true,
+ value: void 0
+ });
+
+ _defineProperty(this, toStringTag, 'CancelablePromise');
+
+ this.cancel = this.cancel.bind(this);
+
+ _classPrivateFieldSet(this, _internals, internals);
+
+ _classPrivateFieldSet(this, _promise, promise || new Promise(function (resolve, reject) {
+ return executor(resolve, reject, function (onCancel) {
+ internals.onCancelList.push(onCancel);
+ });
+ }));
+ }
+
+ _createClass(CancelablePromiseInternal, [{
+ key: "then",
+ value: function then(onfulfilled, onrejected) {
+ return makeCancelable(_classPrivateFieldGet(this, _promise).then(createCallback(onfulfilled, _classPrivateFieldGet(this, _internals)), createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));
+ }
+ }, {
+ key: "catch",
+ value: function _catch(onrejected) {
+ return makeCancelable(_classPrivateFieldGet(this, _promise).catch(createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));
+ }
+ }, {
+ key: "finally",
+ value: function _finally(onfinally, runWhenCanceled) {
+ var _this = this;
+
+ if (runWhenCanceled) {
+ _classPrivateFieldGet(this, _internals).onCancelList.push(onfinally);
+ }
+
+ return makeCancelable(_classPrivateFieldGet(this, _promise).finally(createCallback(function () {
+ if (onfinally) {
+ if (runWhenCanceled) {
+ _classPrivateFieldGet(_this, _internals).onCancelList = _classPrivateFieldGet(_this, _internals).onCancelList.filter(function (callback) {
+ return callback !== onfinally;
+ });
+ }
+
+ return onfinally();
+ }
+ }, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals));
+ }
+ }, {
+ key: "cancel",
+ value: function cancel() {
+ _classPrivateFieldGet(this, _internals).isCanceled = true;
+
+ var callbacks = _classPrivateFieldGet(this, _internals).onCancelList;
+
+ _classPrivateFieldGet(this, _internals).onCancelList = [];
+
+ var _iterator = _createForOfIteratorHelper(callbacks),
+ _step;
+
+ try {
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
+ var callback = _step.value;
+
+ if (typeof callback === 'function') {
+ try {
+ callback();
+ } catch (err) {
+ console.error(err);
+ }
+ }
+ }
+ } catch (err) {
+ _iterator.e(err);
+ } finally {
+ _iterator.f();
+ }
+ }
+ }, {
+ key: "isCanceled",
+ value: function isCanceled() {
+ return _classPrivateFieldGet(this, _internals).isCanceled === true;
+ }
+ }]);
+
+ return CancelablePromiseInternal;
+ }();
+
+ var CancelablePromise = /*#__PURE__*/function (_CancelablePromiseInt) {
+ _inherits(CancelablePromise, _CancelablePromiseInt);
+
+ var _super = _createSuper(CancelablePromise);
+
+ function CancelablePromise(executor) {
+ _classCallCheck(this, CancelablePromise);
+
+ return _super.call(this, {
+ executor: executor
+ });
+ }
+
+ return _createClass(CancelablePromise);
+ }(CancelablePromiseInternal);
+
+ _exports.CancelablePromise = CancelablePromise;
+
+ _defineProperty(CancelablePromise, "all", function all(iterable) {
+ return makeAllCancelable(iterable, Promise.all(iterable));
+ });
+
+ _defineProperty(CancelablePromise, "allSettled", function allSettled(iterable) {
+ return makeAllCancelable(iterable, Promise.allSettled(iterable));
+ });
+
+ _defineProperty(CancelablePromise, "any", function any(iterable) {
+ return makeAllCancelable(iterable, Promise.any(iterable));
+ });
+
+ _defineProperty(CancelablePromise, "race", function race(iterable) {
+ return makeAllCancelable(iterable, Promise.race(iterable));
+ });
+
+ _defineProperty(CancelablePromise, "resolve", function resolve(value) {
+ return cancelable(Promise.resolve(value));
+ });
+
+ _defineProperty(CancelablePromise, "reject", function reject(reason) {
+ return cancelable(Promise.reject(reason));
+ });
+
+ _defineProperty(CancelablePromise, "isCancelable", isCancelablePromise);
+
+ var _default = CancelablePromise;
+ _exports.default = _default;
+
+ function cancelable(promise) {
+ return makeCancelable(promise, defaultInternals());
+ }
+
+ function isCancelablePromise(promise) {
+ return promise instanceof CancelablePromise || promise instanceof CancelablePromiseInternal;
+ }
+
+ function createCallback(onResult, internals) {
+ if (onResult) {
+ return function (arg) {
+ if (!internals.isCanceled) {
+ var result = onResult(arg);
+
+ if (isCancelablePromise(result)) {
+ internals.onCancelList.push(result.cancel);
+ }
+
+ return result;
+ }
+
+ return arg;
+ };
+ }
+ }
+
+ function makeCancelable(promise, internals) {
+ return new CancelablePromiseInternal({
+ internals: internals,
+ promise: promise
+ });
+ }
+
+ function makeAllCancelable(iterable, promise) {
+ var internals = defaultInternals();
+ internals.onCancelList.push(function () {
+ var _iterator2 = _createForOfIteratorHelper(iterable),
+ _step2;
+
+ try {
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
+ var resolvable = _step2.value;
+
+ if (isCancelablePromise(resolvable)) {
+ resolvable.cancel();
+ }
+ }
+ } catch (err) {
+ _iterator2.e(err);
+ } finally {
+ _iterator2.f();
+ }
+ });
+ return new CancelablePromiseInternal({
+ internals: internals,
+ promise: promise
+ });
+ }
+
+ function defaultInternals() {
+ return {
+ isCanceled: false,
+ onCancelList: []
+ };
+ }
+});
+//# sourceMappingURL=CancelablePromise.js.map
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true&":
+/*!**************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true& ***!
+ \**************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".breadcrumb[data-v-9f0aa34e] {\n flex: 1 1 100% !important;\n width: 100%;\n}\n.breadcrumb[data-v-9f0aa34e] a {\n cursor: pointer !important;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true&":
+/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true& ***!
+ \**********************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".custom-svg-icon[data-v-6c70146b] {\n display: flex;\n align-items: center;\n align-self: center;\n justify-content: center;\n justify-self: center;\n width: 44px;\n height: 44px;\n opacity: 1;\n}\n.custom-svg-icon[data-v-6c70146b] svg {\n height: 22px;\n width: 22px;\n fill: currentColor;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true&":
+/*!***************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true& ***!
+ \***************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".favorite-marker-icon[data-v-8f8f00c8] {\n color: #a08b00;\n width: fit-content;\n height: fit-content;\n}\n.favorite-marker-icon[data-v-8f8f00c8] svg {\n width: 26px;\n height: 26px;\n}\n.favorite-marker-icon[data-v-8f8f00c8] svg path {\n stroke: var(--color-main-background);\n stroke-width: 8px;\n stroke-linejoin: round;\n paint-order: stroke;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss&":
+/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss& ***!
+ \************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, "/* Hover effect on tbody lines only */\ntr[data-v-24fe7eff]:hover, tr[data-v-24fe7eff]:focus, tr[data-v-24fe7eff]:visible {\n background-color: var(--color-background-dark);\n}\n\n/* Preview not loaded animation effect */\n.files-list__row-icon-preview[data-v-24fe7eff]:not([style*=background]) {\n background: var(--color-loading-dark);\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss&":
+/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss& ***!
+ \***********************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, "tr[data-v-29c3a0fb] {\n padding-bottom: 300px;\n border-top: 1px solid var(--color-border);\n background-color: transparent !important;\n border-bottom: none !important;\n}\ntd[data-v-29c3a0fb] {\n user-select: none;\n color: var(--color-text-maxcontrast) !important;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss&":
+/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss& ***!
+ \***********************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".files-list__column[data-v-4af604ed] {\n user-select: none;\n color: var(--color-text-maxcontrast) !important;\n}\n.files-list__column--sortable[data-v-4af604ed] {\n cursor: pointer;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss&":
+/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss& ***!
+ \******************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".files-list__row-actions-batch[data-v-25a39e00] {\n flex: 1 1 100% !important;\n}\n.files-list__row-actions-batch[data-v-25a39e00] .button-vue__wrapper {\n width: 100%;\n}\n.files-list__row-actions-batch[data-v-25a39e00] .button-vue__wrapper span.button-vue__text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss&":
+/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss& ***!
+ \*****************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".files-list__column-sort-button {\n margin: 0 calc(var(--cell-margin) * -1);\n padding: 0 4px 0 16px !important;\n}\n.files-list__column-sort-button .button-vue__wrapper {\n flex-direction: row-reverse;\n width: 100%;\n}\n.files-list__column-sort-button .button-vue__icon {\n transition-timing-function: linear;\n transition-duration: 0.1s;\n transition-property: opacity;\n opacity: 0;\n}\n.files-list__column-sort-button .button-vue__text {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.files-list__column-sort-button--active .button-vue__icon, .files-list__column-sort-button:hover .button-vue__icon, .files-list__column-sort-button:focus .button-vue__icon, .files-list__column-sort-button:active .button-vue__icon {\n opacity: 1 !important;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss&":
+/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss& ***!
+ \*******************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".files-list[data-v-2d34be06] {\n --row-height: 55px;\n --cell-margin: 14px;\n --checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\n --checkbox-size: 24px;\n --clickable-area: 44px;\n --icon-preview-size: 32px;\n display: block;\n overflow: auto;\n height: 100%;\n}\n.files-list[data-v-2d34be06] tbody {\n display: flex;\n flex-direction: column;\n width: 100%;\n position: relative;\n}\n.files-list[data-v-2d34be06] .files-list__before {\n display: flex;\n flex-direction: column;\n}\n.files-list[data-v-2d34be06] .files-list__thead {\n position: sticky;\n z-index: 10;\n top: 0;\n}\n.files-list[data-v-2d34be06] .files-list__thead,\n.files-list[data-v-2d34be06] .files-list__tfoot {\n display: flex;\n width: 100%;\n background-color: var(--color-main-background);\n}\n.files-list[data-v-2d34be06] tr {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n user-select: none;\n border-bottom: 1px solid var(--color-border);\n user-select: none;\n}\n.files-list[data-v-2d34be06] td, .files-list[data-v-2d34be06] th {\n display: flex;\n align-items: center;\n flex: 0 0 auto;\n justify-content: left;\n width: var(--row-height);\n height: var(--row-height);\n margin: 0;\n padding: 0;\n color: var(--color-text-maxcontrast);\n border: none;\n}\n.files-list[data-v-2d34be06] td span, .files-list[data-v-2d34be06] th span {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.files-list[data-v-2d34be06] .files-list__row--failed {\n position: absolute;\n display: block;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n opacity: 0.1;\n z-index: -1;\n background: var(--color-error);\n}\n.files-list[data-v-2d34be06] .files-list__row-checkbox {\n justify-content: center;\n}\n.files-list[data-v-2d34be06] .files-list__row-checkbox .checkbox-radio-switch {\n display: flex;\n justify-content: center;\n --icon-size: var(--checkbox-size);\n}\n.files-list[data-v-2d34be06] .files-list__row-checkbox .checkbox-radio-switch label.checkbox-radio-switch__label {\n width: var(--clickable-area);\n height: var(--clickable-area);\n margin: 0;\n padding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\n}\n.files-list[data-v-2d34be06] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon {\n margin: 0 !important;\n}\n.files-list[data-v-2d34be06] .files-list__row:hover, .files-list[data-v-2d34be06] .files-list__row:focus, .files-list[data-v-2d34be06] .files-list__row:active, .files-list[data-v-2d34be06] .files-list__row--active {\n background-color: var(--color-background-dark);\n}\n.files-list[data-v-2d34be06] .files-list__row:hover .favorite-marker-icon svg path, .files-list[data-v-2d34be06] .files-list__row:focus .favorite-marker-icon svg path, .files-list[data-v-2d34be06] .files-list__row:active .favorite-marker-icon svg path, .files-list[data-v-2d34be06] .files-list__row--active .favorite-marker-icon svg path {\n stroke: var(--color-background-dark);\n}\n.files-list[data-v-2d34be06] .files-list__row-icon {\n position: relative;\n display: flex;\n overflow: visible;\n align-items: center;\n flex: 0 0 var(--icon-preview-size);\n justify-content: center;\n width: var(--icon-preview-size);\n height: 100%;\n margin-right: var(--checkbox-padding);\n color: var(--color-primary-element);\n}\n.files-list[data-v-2d34be06] .files-list__row-icon * {\n cursor: pointer;\n}\n.files-list[data-v-2d34be06] .files-list__row-icon > span {\n justify-content: flex-start;\n}\n.files-list[data-v-2d34be06] .files-list__row-icon > span:not(.files-list__row-icon-favorite) svg {\n width: var(--icon-preview-size);\n height: var(--icon-preview-size);\n}\n.files-list[data-v-2d34be06] .files-list__row-icon-preview {\n overflow: hidden;\n width: var(--icon-preview-size);\n height: var(--icon-preview-size);\n border-radius: var(--border-radius);\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n}\n.files-list[data-v-2d34be06] .files-list__row-icon-favorite {\n position: absolute;\n top: 0px;\n right: -10px;\n}\n.files-list[data-v-2d34be06] .files-list__row-name {\n overflow: hidden;\n flex: 1 1 auto;\n}\n.files-list[data-v-2d34be06] .files-list__row-name a {\n display: flex;\n align-items: center;\n width: 100%;\n height: 100%;\n min-width: 0;\n}\n.files-list[data-v-2d34be06] .files-list__row-name a:focus-visible {\n outline: none;\n}\n.files-list[data-v-2d34be06] .files-list__row-name a:focus .files-list__row-name-text, .files-list[data-v-2d34be06] .files-list__row-name a:focus-visible .files-list__row-name-text {\n outline: 2px solid var(--color-main-text) !important;\n border-radius: 20px;\n}\n.files-list[data-v-2d34be06] .files-list__row-name .files-list__row-name-text {\n color: var(--color-main-text);\n padding: 5px 10px;\n margin-left: -10px;\n display: inline-flex;\n}\n.files-list[data-v-2d34be06] .files-list__row-name .files-list__row-name-ext {\n color: var(--color-text-maxcontrast);\n}\n.files-list[data-v-2d34be06] .files-list__row-rename {\n width: 100%;\n max-width: 600px;\n}\n.files-list[data-v-2d34be06] .files-list__row-rename input {\n width: 100%;\n margin-left: -8px;\n padding: 2px 6px;\n border-width: 2px;\n}\n.files-list[data-v-2d34be06] .files-list__row-rename input:invalid {\n border-color: var(--color-error);\n color: red;\n}\n.files-list[data-v-2d34be06] .files-list__row-actions {\n width: auto;\n}\n.files-list[data-v-2d34be06] .files-list__row-actions ~ td, .files-list[data-v-2d34be06] .files-list__row-actions ~ th {\n margin: 0 var(--cell-margin);\n}\n.files-list[data-v-2d34be06] .files-list__row-actions button .button-vue__text {\n font-weight: normal;\n}\n.files-list[data-v-2d34be06] .files-list__row-actions button:not(:hover, :focus, :active) .button-vue__wrapper {\n color: var(--color-text-maxcontrast);\n}\n.files-list[data-v-2d34be06] .files-list__row-mtime,\n.files-list[data-v-2d34be06] .files-list__row-size {\n justify-content: flex-end;\n width: calc(var(--row-height) * 1.5);\n color: var(--color-main-text);\n}\n.files-list[data-v-2d34be06] .files-list__row-mtime .files-list__column-sort-button,\n.files-list[data-v-2d34be06] .files-list__row-size .files-list__column-sort-button {\n padding: 0 16px 0 4px !important;\n}\n.files-list[data-v-2d34be06] .files-list__row-mtime .files-list__column-sort-button .button-vue__wrapper,\n.files-list[data-v-2d34be06] .files-list__row-size .files-list__column-sort-button .button-vue__wrapper {\n flex-direction: row;\n}\n.files-list[data-v-2d34be06] .files-list__row-mtime {\n width: calc(var(--row-height) * 2);\n}\n.files-list[data-v-2d34be06] .files-list__row-column-custom {\n width: calc(var(--row-height) * 2);\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true&":
+/*!******************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true& ***!
+ \******************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".app-navigation-entry__settings-quota--not-unlimited[data-v-6f96f0a6] .app-navigation-entry__name {\n margin-top: -6px;\n}\n.app-navigation-entry__settings-quota progress[data-v-6f96f0a6] {\n position: absolute;\n bottom: 12px;\n margin-left: 44px;\n width: calc(100% - 44px - 22px);\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true&":
+/*!******************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true& ***!
+ \******************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".template-picker__item[data-v-14e703d7] {\n display: flex;\n}\n.template-picker__label[data-v-14e703d7] {\n display: flex;\n align-items: center;\n flex: 1 1;\n flex-direction: column;\n}\n.template-picker__label[data-v-14e703d7], .template-picker__label *[data-v-14e703d7] {\n cursor: pointer;\n user-select: none;\n}\n.template-picker__label[data-v-14e703d7]::before {\n display: none !important;\n}\n.template-picker__preview[data-v-14e703d7] {\n display: block;\n overflow: hidden;\n flex: 1 1;\n width: var(--width);\n min-height: var(--height);\n max-height: var(--height);\n padding: 0;\n border: var(--border) solid var(--color-border);\n border-radius: var(--border-radius-large);\n}\ninput:checked + label > .template-picker__preview[data-v-14e703d7] {\n border-color: var(--color-primary-element);\n}\n.template-picker__preview--failed[data-v-14e703d7] {\n display: flex;\n}\n.template-picker__image[data-v-14e703d7] {\n max-width: 100%;\n background-color: var(--color-main-background);\n object-fit: cover;\n}\n.template-picker__preview--failed .template-picker__image[data-v-14e703d7] {\n width: calc(var(--margin) * 8);\n margin: auto;\n background-color: transparent !important;\n object-fit: initial;\n}\n.template-picker__title[data-v-14e703d7] {\n overflow: hidden;\n max-width: calc(var(--width) + 4px);\n padding: var(--margin);\n white-space: nowrap;\n text-overflow: ellipsis;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss&":
+/*!*******************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss& ***!
+ \*******************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".app-content[data-v-02e51922] {\n display: flex;\n overflow: hidden;\n flex-direction: column;\n max-height: 100%;\n}\n.files-list__header[data-v-02e51922] {\n display: flex;\n align-content: center;\n flex: 0 0;\n margin: 4px 4px 4px 50px;\n}\n.files-list__header > *[data-v-02e51922] {\n flex: 0 0;\n}\n.files-list__refresh-icon[data-v-02e51922] {\n flex: 0 0 44px;\n width: 44px;\n height: 44px;\n}\n.files-list__loading-icon[data-v-02e51922] {\n margin: auto;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss&":
+/*!********************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss& ***!
+ \********************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".app-navigation[data-v-a8628012] .app-navigation-entry-icon {\n background-repeat: no-repeat;\n background-position: center;\n}\n.app-navigation > ul.app-navigation__list[data-v-a8628012] {\n padding-bottom: var(--default-grid-baseline, 4px);\n}\n.app-navigation-entry__settings[data-v-a8628012] {\n height: auto !important;\n overflow: hidden !important;\n padding-top: 0 !important;\n flex: 0 0 auto;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/views/Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true&":
+/*!******************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/views/Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true& ***!
+ \******************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".setting-link[data-v-de32ad74]:hover {\n text-decoration: underline;\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./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!./apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true&":
+/*!************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./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!./apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true& ***!
+ \************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, ".templates-picker__form[data-v-70b9a7ea] {\n padding: calc(var(--margin) * 2);\n padding-bottom: 0;\n}\n.templates-picker__form h2[data-v-70b9a7ea] {\n text-align: center;\n font-weight: bold;\n margin: var(--margin) 0 calc(var(--margin) * 2);\n}\n.templates-picker__list[data-v-70b9a7ea] {\n display: grid;\n grid-gap: calc(var(--margin) * 2);\n grid-auto-columns: 1fr;\n max-width: calc(var(--fullwidth) * 6);\n grid-template-columns: repeat(auto-fit, var(--fullwidth));\n grid-auto-rows: 1fr;\n justify-content: center;\n}\n.templates-picker__buttons[data-v-70b9a7ea] {\n display: flex;\n justify-content: end;\n padding: calc(var(--margin) * 2) var(--margin);\n position: sticky;\n bottom: 0;\n background-image: linear-gradient(0, var(--gradient-main-background));\n}\n.templates-picker__buttons button[data-v-70b9a7ea], .templates-picker__buttons input[type=submit][data-v-70b9a7ea] {\n height: 44px;\n}\n.templates-picker[data-v-70b9a7ea] .modal-container {\n position: relative;\n}\n.templates-picker__loading[data-v-70b9a7ea] {\n position: absolute;\n top: 0;\n left: 0;\n justify-content: center;\n width: 100%;\n height: 100%;\n margin: 0;\n background-color: var(--color-main-background-translucent);\n}", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css&":
+/*!********************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css& ***!
+ \********************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
+// Imports
+
+
+var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
+// Module
+___CSS_LOADER_EXPORT___.push([module.id, "\n/* @keyframes preview-gradient-fade {\n 0% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n 100% {\n opacity: 1;\n }\n} */\n", ""]);
+// Exports
+/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
+
+
+/***/ }),
+
+/***/ "./node_modules/moment/locale sync recursive ^\\.\\/.*$":
+/*!***************************************************!*\
+ !*** ./node_modules/moment/locale/ sync ^\.\/.*$ ***!
+ \***************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+var map = {
+ "./af": "./node_modules/moment/locale/af.js",
+ "./af.js": "./node_modules/moment/locale/af.js",
+ "./ar": "./node_modules/moment/locale/ar.js",
+ "./ar-dz": "./node_modules/moment/locale/ar-dz.js",
+ "./ar-dz.js": "./node_modules/moment/locale/ar-dz.js",
+ "./ar-kw": "./node_modules/moment/locale/ar-kw.js",
+ "./ar-kw.js": "./node_modules/moment/locale/ar-kw.js",
+ "./ar-ly": "./node_modules/moment/locale/ar-ly.js",
+ "./ar-ly.js": "./node_modules/moment/locale/ar-ly.js",
+ "./ar-ma": "./node_modules/moment/locale/ar-ma.js",
+ "./ar-ma.js": "./node_modules/moment/locale/ar-ma.js",
+ "./ar-sa": "./node_modules/moment/locale/ar-sa.js",
+ "./ar-sa.js": "./node_modules/moment/locale/ar-sa.js",
+ "./ar-tn": "./node_modules/moment/locale/ar-tn.js",
+ "./ar-tn.js": "./node_modules/moment/locale/ar-tn.js",
+ "./ar.js": "./node_modules/moment/locale/ar.js",
+ "./az": "./node_modules/moment/locale/az.js",
+ "./az.js": "./node_modules/moment/locale/az.js",
+ "./be": "./node_modules/moment/locale/be.js",
+ "./be.js": "./node_modules/moment/locale/be.js",
+ "./bg": "./node_modules/moment/locale/bg.js",
+ "./bg.js": "./node_modules/moment/locale/bg.js",
+ "./bm": "./node_modules/moment/locale/bm.js",
+ "./bm.js": "./node_modules/moment/locale/bm.js",
+ "./bn": "./node_modules/moment/locale/bn.js",
+ "./bn-bd": "./node_modules/moment/locale/bn-bd.js",
+ "./bn-bd.js": "./node_modules/moment/locale/bn-bd.js",
+ "./bn.js": "./node_modules/moment/locale/bn.js",
+ "./bo": "./node_modules/moment/locale/bo.js",
+ "./bo.js": "./node_modules/moment/locale/bo.js",
+ "./br": "./node_modules/moment/locale/br.js",
+ "./br.js": "./node_modules/moment/locale/br.js",
+ "./bs": "./node_modules/moment/locale/bs.js",
+ "./bs.js": "./node_modules/moment/locale/bs.js",
+ "./ca": "./node_modules/moment/locale/ca.js",
+ "./ca.js": "./node_modules/moment/locale/ca.js",
+ "./cs": "./node_modules/moment/locale/cs.js",
+ "./cs.js": "./node_modules/moment/locale/cs.js",
+ "./cv": "./node_modules/moment/locale/cv.js",
+ "./cv.js": "./node_modules/moment/locale/cv.js",
+ "./cy": "./node_modules/moment/locale/cy.js",
+ "./cy.js": "./node_modules/moment/locale/cy.js",
+ "./da": "./node_modules/moment/locale/da.js",
+ "./da.js": "./node_modules/moment/locale/da.js",
+ "./de": "./node_modules/moment/locale/de.js",
+ "./de-at": "./node_modules/moment/locale/de-at.js",
+ "./de-at.js": "./node_modules/moment/locale/de-at.js",
+ "./de-ch": "./node_modules/moment/locale/de-ch.js",
+ "./de-ch.js": "./node_modules/moment/locale/de-ch.js",
+ "./de.js": "./node_modules/moment/locale/de.js",
+ "./dv": "./node_modules/moment/locale/dv.js",
+ "./dv.js": "./node_modules/moment/locale/dv.js",
+ "./el": "./node_modules/moment/locale/el.js",
+ "./el.js": "./node_modules/moment/locale/el.js",
+ "./en-au": "./node_modules/moment/locale/en-au.js",
+ "./en-au.js": "./node_modules/moment/locale/en-au.js",
+ "./en-ca": "./node_modules/moment/locale/en-ca.js",
+ "./en-ca.js": "./node_modules/moment/locale/en-ca.js",
+ "./en-gb": "./node_modules/moment/locale/en-gb.js",
+ "./en-gb.js": "./node_modules/moment/locale/en-gb.js",
+ "./en-ie": "./node_modules/moment/locale/en-ie.js",
+ "./en-ie.js": "./node_modules/moment/locale/en-ie.js",
+ "./en-il": "./node_modules/moment/locale/en-il.js",
+ "./en-il.js": "./node_modules/moment/locale/en-il.js",
+ "./en-in": "./node_modules/moment/locale/en-in.js",
+ "./en-in.js": "./node_modules/moment/locale/en-in.js",
+ "./en-nz": "./node_modules/moment/locale/en-nz.js",
+ "./en-nz.js": "./node_modules/moment/locale/en-nz.js",
+ "./en-sg": "./node_modules/moment/locale/en-sg.js",
+ "./en-sg.js": "./node_modules/moment/locale/en-sg.js",
+ "./eo": "./node_modules/moment/locale/eo.js",
+ "./eo.js": "./node_modules/moment/locale/eo.js",
+ "./es": "./node_modules/moment/locale/es.js",
+ "./es-do": "./node_modules/moment/locale/es-do.js",
+ "./es-do.js": "./node_modules/moment/locale/es-do.js",
+ "./es-mx": "./node_modules/moment/locale/es-mx.js",
+ "./es-mx.js": "./node_modules/moment/locale/es-mx.js",
+ "./es-us": "./node_modules/moment/locale/es-us.js",
+ "./es-us.js": "./node_modules/moment/locale/es-us.js",
+ "./es.js": "./node_modules/moment/locale/es.js",
+ "./et": "./node_modules/moment/locale/et.js",
+ "./et.js": "./node_modules/moment/locale/et.js",
+ "./eu": "./node_modules/moment/locale/eu.js",
+ "./eu.js": "./node_modules/moment/locale/eu.js",
+ "./fa": "./node_modules/moment/locale/fa.js",
+ "./fa.js": "./node_modules/moment/locale/fa.js",
+ "./fi": "./node_modules/moment/locale/fi.js",
+ "./fi.js": "./node_modules/moment/locale/fi.js",
+ "./fil": "./node_modules/moment/locale/fil.js",
+ "./fil.js": "./node_modules/moment/locale/fil.js",
+ "./fo": "./node_modules/moment/locale/fo.js",
+ "./fo.js": "./node_modules/moment/locale/fo.js",
+ "./fr": "./node_modules/moment/locale/fr.js",
+ "./fr-ca": "./node_modules/moment/locale/fr-ca.js",
+ "./fr-ca.js": "./node_modules/moment/locale/fr-ca.js",
+ "./fr-ch": "./node_modules/moment/locale/fr-ch.js",
+ "./fr-ch.js": "./node_modules/moment/locale/fr-ch.js",
+ "./fr.js": "./node_modules/moment/locale/fr.js",
+ "./fy": "./node_modules/moment/locale/fy.js",
+ "./fy.js": "./node_modules/moment/locale/fy.js",
+ "./ga": "./node_modules/moment/locale/ga.js",
+ "./ga.js": "./node_modules/moment/locale/ga.js",
+ "./gd": "./node_modules/moment/locale/gd.js",
+ "./gd.js": "./node_modules/moment/locale/gd.js",
+ "./gl": "./node_modules/moment/locale/gl.js",
+ "./gl.js": "./node_modules/moment/locale/gl.js",
+ "./gom-deva": "./node_modules/moment/locale/gom-deva.js",
+ "./gom-deva.js": "./node_modules/moment/locale/gom-deva.js",
+ "./gom-latn": "./node_modules/moment/locale/gom-latn.js",
+ "./gom-latn.js": "./node_modules/moment/locale/gom-latn.js",
+ "./gu": "./node_modules/moment/locale/gu.js",
+ "./gu.js": "./node_modules/moment/locale/gu.js",
+ "./he": "./node_modules/moment/locale/he.js",
+ "./he.js": "./node_modules/moment/locale/he.js",
+ "./hi": "./node_modules/moment/locale/hi.js",
+ "./hi.js": "./node_modules/moment/locale/hi.js",
+ "./hr": "./node_modules/moment/locale/hr.js",
+ "./hr.js": "./node_modules/moment/locale/hr.js",
+ "./hu": "./node_modules/moment/locale/hu.js",
+ "./hu.js": "./node_modules/moment/locale/hu.js",
+ "./hy-am": "./node_modules/moment/locale/hy-am.js",
+ "./hy-am.js": "./node_modules/moment/locale/hy-am.js",
+ "./id": "./node_modules/moment/locale/id.js",
+ "./id.js": "./node_modules/moment/locale/id.js",
+ "./is": "./node_modules/moment/locale/is.js",
+ "./is.js": "./node_modules/moment/locale/is.js",
+ "./it": "./node_modules/moment/locale/it.js",
+ "./it-ch": "./node_modules/moment/locale/it-ch.js",
+ "./it-ch.js": "./node_modules/moment/locale/it-ch.js",
+ "./it.js": "./node_modules/moment/locale/it.js",
+ "./ja": "./node_modules/moment/locale/ja.js",
+ "./ja.js": "./node_modules/moment/locale/ja.js",
+ "./jv": "./node_modules/moment/locale/jv.js",
+ "./jv.js": "./node_modules/moment/locale/jv.js",
+ "./ka": "./node_modules/moment/locale/ka.js",
+ "./ka.js": "./node_modules/moment/locale/ka.js",
+ "./kk": "./node_modules/moment/locale/kk.js",
+ "./kk.js": "./node_modules/moment/locale/kk.js",
+ "./km": "./node_modules/moment/locale/km.js",
+ "./km.js": "./node_modules/moment/locale/km.js",
+ "./kn": "./node_modules/moment/locale/kn.js",
+ "./kn.js": "./node_modules/moment/locale/kn.js",
+ "./ko": "./node_modules/moment/locale/ko.js",
+ "./ko.js": "./node_modules/moment/locale/ko.js",
+ "./ku": "./node_modules/moment/locale/ku.js",
+ "./ku.js": "./node_modules/moment/locale/ku.js",
+ "./ky": "./node_modules/moment/locale/ky.js",
+ "./ky.js": "./node_modules/moment/locale/ky.js",
+ "./lb": "./node_modules/moment/locale/lb.js",
+ "./lb.js": "./node_modules/moment/locale/lb.js",
+ "./lo": "./node_modules/moment/locale/lo.js",
+ "./lo.js": "./node_modules/moment/locale/lo.js",
+ "./lt": "./node_modules/moment/locale/lt.js",
+ "./lt.js": "./node_modules/moment/locale/lt.js",
+ "./lv": "./node_modules/moment/locale/lv.js",
+ "./lv.js": "./node_modules/moment/locale/lv.js",
+ "./me": "./node_modules/moment/locale/me.js",
+ "./me.js": "./node_modules/moment/locale/me.js",
+ "./mi": "./node_modules/moment/locale/mi.js",
+ "./mi.js": "./node_modules/moment/locale/mi.js",
+ "./mk": "./node_modules/moment/locale/mk.js",
+ "./mk.js": "./node_modules/moment/locale/mk.js",
+ "./ml": "./node_modules/moment/locale/ml.js",
+ "./ml.js": "./node_modules/moment/locale/ml.js",
+ "./mn": "./node_modules/moment/locale/mn.js",
+ "./mn.js": "./node_modules/moment/locale/mn.js",
+ "./mr": "./node_modules/moment/locale/mr.js",
+ "./mr.js": "./node_modules/moment/locale/mr.js",
+ "./ms": "./node_modules/moment/locale/ms.js",
+ "./ms-my": "./node_modules/moment/locale/ms-my.js",
+ "./ms-my.js": "./node_modules/moment/locale/ms-my.js",
+ "./ms.js": "./node_modules/moment/locale/ms.js",
+ "./mt": "./node_modules/moment/locale/mt.js",
+ "./mt.js": "./node_modules/moment/locale/mt.js",
+ "./my": "./node_modules/moment/locale/my.js",
+ "./my.js": "./node_modules/moment/locale/my.js",
+ "./nb": "./node_modules/moment/locale/nb.js",
+ "./nb.js": "./node_modules/moment/locale/nb.js",
+ "./ne": "./node_modules/moment/locale/ne.js",
+ "./ne.js": "./node_modules/moment/locale/ne.js",
+ "./nl": "./node_modules/moment/locale/nl.js",
+ "./nl-be": "./node_modules/moment/locale/nl-be.js",
+ "./nl-be.js": "./node_modules/moment/locale/nl-be.js",
+ "./nl.js": "./node_modules/moment/locale/nl.js",
+ "./nn": "./node_modules/moment/locale/nn.js",
+ "./nn.js": "./node_modules/moment/locale/nn.js",
+ "./oc-lnc": "./node_modules/moment/locale/oc-lnc.js",
+ "./oc-lnc.js": "./node_modules/moment/locale/oc-lnc.js",
+ "./pa-in": "./node_modules/moment/locale/pa-in.js",
+ "./pa-in.js": "./node_modules/moment/locale/pa-in.js",
+ "./pl": "./node_modules/moment/locale/pl.js",
+ "./pl.js": "./node_modules/moment/locale/pl.js",
+ "./pt": "./node_modules/moment/locale/pt.js",
+ "./pt-br": "./node_modules/moment/locale/pt-br.js",
+ "./pt-br.js": "./node_modules/moment/locale/pt-br.js",
+ "./pt.js": "./node_modules/moment/locale/pt.js",
+ "./ro": "./node_modules/moment/locale/ro.js",
+ "./ro.js": "./node_modules/moment/locale/ro.js",
+ "./ru": "./node_modules/moment/locale/ru.js",
+ "./ru.js": "./node_modules/moment/locale/ru.js",
+ "./sd": "./node_modules/moment/locale/sd.js",
+ "./sd.js": "./node_modules/moment/locale/sd.js",
+ "./se": "./node_modules/moment/locale/se.js",
+ "./se.js": "./node_modules/moment/locale/se.js",
+ "./si": "./node_modules/moment/locale/si.js",
+ "./si.js": "./node_modules/moment/locale/si.js",
+ "./sk": "./node_modules/moment/locale/sk.js",
+ "./sk.js": "./node_modules/moment/locale/sk.js",
+ "./sl": "./node_modules/moment/locale/sl.js",
+ "./sl.js": "./node_modules/moment/locale/sl.js",
+ "./sq": "./node_modules/moment/locale/sq.js",
+ "./sq.js": "./node_modules/moment/locale/sq.js",
+ "./sr": "./node_modules/moment/locale/sr.js",
+ "./sr-cyrl": "./node_modules/moment/locale/sr-cyrl.js",
+ "./sr-cyrl.js": "./node_modules/moment/locale/sr-cyrl.js",
+ "./sr.js": "./node_modules/moment/locale/sr.js",
+ "./ss": "./node_modules/moment/locale/ss.js",
+ "./ss.js": "./node_modules/moment/locale/ss.js",
+ "./sv": "./node_modules/moment/locale/sv.js",
+ "./sv.js": "./node_modules/moment/locale/sv.js",
+ "./sw": "./node_modules/moment/locale/sw.js",
+ "./sw.js": "./node_modules/moment/locale/sw.js",
+ "./ta": "./node_modules/moment/locale/ta.js",
+ "./ta.js": "./node_modules/moment/locale/ta.js",
+ "./te": "./node_modules/moment/locale/te.js",
+ "./te.js": "./node_modules/moment/locale/te.js",
+ "./tet": "./node_modules/moment/locale/tet.js",
+ "./tet.js": "./node_modules/moment/locale/tet.js",
+ "./tg": "./node_modules/moment/locale/tg.js",
+ "./tg.js": "./node_modules/moment/locale/tg.js",
+ "./th": "./node_modules/moment/locale/th.js",
+ "./th.js": "./node_modules/moment/locale/th.js",
+ "./tk": "./node_modules/moment/locale/tk.js",
+ "./tk.js": "./node_modules/moment/locale/tk.js",
+ "./tl-ph": "./node_modules/moment/locale/tl-ph.js",
+ "./tl-ph.js": "./node_modules/moment/locale/tl-ph.js",
+ "./tlh": "./node_modules/moment/locale/tlh.js",
+ "./tlh.js": "./node_modules/moment/locale/tlh.js",
+ "./tr": "./node_modules/moment/locale/tr.js",
+ "./tr.js": "./node_modules/moment/locale/tr.js",
+ "./tzl": "./node_modules/moment/locale/tzl.js",
+ "./tzl.js": "./node_modules/moment/locale/tzl.js",
+ "./tzm": "./node_modules/moment/locale/tzm.js",
+ "./tzm-latn": "./node_modules/moment/locale/tzm-latn.js",
+ "./tzm-latn.js": "./node_modules/moment/locale/tzm-latn.js",
+ "./tzm.js": "./node_modules/moment/locale/tzm.js",
+ "./ug-cn": "./node_modules/moment/locale/ug-cn.js",
+ "./ug-cn.js": "./node_modules/moment/locale/ug-cn.js",
+ "./uk": "./node_modules/moment/locale/uk.js",
+ "./uk.js": "./node_modules/moment/locale/uk.js",
+ "./ur": "./node_modules/moment/locale/ur.js",
+ "./ur.js": "./node_modules/moment/locale/ur.js",
+ "./uz": "./node_modules/moment/locale/uz.js",
+ "./uz-latn": "./node_modules/moment/locale/uz-latn.js",
+ "./uz-latn.js": "./node_modules/moment/locale/uz-latn.js",
+ "./uz.js": "./node_modules/moment/locale/uz.js",
+ "./vi": "./node_modules/moment/locale/vi.js",
+ "./vi.js": "./node_modules/moment/locale/vi.js",
+ "./x-pseudo": "./node_modules/moment/locale/x-pseudo.js",
+ "./x-pseudo.js": "./node_modules/moment/locale/x-pseudo.js",
+ "./yo": "./node_modules/moment/locale/yo.js",
+ "./yo.js": "./node_modules/moment/locale/yo.js",
+ "./zh-cn": "./node_modules/moment/locale/zh-cn.js",
+ "./zh-cn.js": "./node_modules/moment/locale/zh-cn.js",
+ "./zh-hk": "./node_modules/moment/locale/zh-hk.js",
+ "./zh-hk.js": "./node_modules/moment/locale/zh-hk.js",
+ "./zh-mo": "./node_modules/moment/locale/zh-mo.js",
+ "./zh-mo.js": "./node_modules/moment/locale/zh-mo.js",
+ "./zh-tw": "./node_modules/moment/locale/zh-tw.js",
+ "./zh-tw.js": "./node_modules/moment/locale/zh-tw.js"
+};
+
+
+function webpackContext(req) {
+ var id = webpackContextResolve(req);
+ return __webpack_require__(id);
+}
+function webpackContextResolve(req) {
+ if(!__webpack_require__.o(map, req)) {
+ var e = new Error("Cannot find module '" + req + "'");
+ e.code = 'MODULE_NOT_FOUND';
+ throw e;
+ }
+ return map[req];
+}
+webpackContext.keys = function webpackContextKeys() {
+ return Object.keys(map);
+};
+webpackContext.resolve = webpackContextResolve;
+module.exports = webpackContext;
+webpackContext.id = "./node_modules/moment/locale sync recursive ^\\.\\/.*$";
+
+/***/ }),
+
+/***/ "./node_modules/natural-orderby/dist/index.js":
+/*!****************************************************!*\
+ !*** ./node_modules/natural-orderby/dist/index.js ***!
+ \****************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ compare: function() { return /* binding */ compare; },
+/* harmony export */ orderBy: function() { return /* binding */ orderBy; }
+/* harmony export */ });
+/**
+ * natural-orderby v3.0.2
+ *
+ * Copyright (c) Olaf Ennen
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE.md file in the root directory of this source tree.
+ *
+ * @license MIT
+ */
+var compareNumbers = function compareNumbers(numberA, numberB) {
+ if (numberA < numberB) {
+ return -1;
+ }
+ if (numberA > numberB) {
+ return 1;
+ }
+ return 0;
+};
+
+var compareUnicode = function compareUnicode(stringA, stringB) {
+ var result = stringA.localeCompare(stringB);
+ return result ? result / Math.abs(result) : 0;
+};
+
+var RE_NUMBERS = /(^0x[\da-fA-F]+$|^([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?(?!\.\d+)(?=\D|\s|$))|\d+)/g;
+var RE_LEADING_OR_TRAILING_WHITESPACES = /^\s+|\s+$/g; // trim pre-post whitespace
+var RE_WHITESPACES = /\s+/g; // normalize all whitespace to single ' ' character
+var RE_INT_OR_FLOAT = /^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/; // identify integers and floats
+var RE_DATE = /(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[/-]\d{1,4}[/-]\d{1,4}|^\w+, \w+ \d+, \d{4})/; // identify date strings
+var RE_LEADING_ZERO = /^0+[1-9]{1}[0-9]*$/;
+// eslint-disable-next-line no-control-regex
+var RE_UNICODE_CHARACTERS = /[^\x00-\x80]/;
+
+var stringCompare = function stringCompare(stringA, stringB) {
+ if (stringA < stringB) {
+ return -1;
+ }
+ if (stringA > stringB) {
+ return 1;
+ }
+ return 0;
+};
+
+var compareChunks = function compareChunks(chunksA, chunksB) {
+ var lengthA = chunksA.length;
+ var lengthB = chunksB.length;
+ var size = Math.min(lengthA, lengthB);
+ for (var i = 0; i < size; i++) {
+ var chunkA = chunksA[i];
+ var chunkB = chunksB[i];
+ if (chunkA.normalizedString !== chunkB.normalizedString) {
+ if (chunkA.normalizedString === '' !== (chunkB.normalizedString === '')) {
+ // empty strings have lowest value
+ return chunkA.normalizedString === '' ? -1 : 1;
+ }
+ if (chunkA.parsedNumber !== undefined && chunkB.parsedNumber !== undefined) {
+ // compare numbers
+ var result = compareNumbers(chunkA.parsedNumber, chunkB.parsedNumber);
+ if (result === 0) {
+ // compare string value, if parsed numbers are equal
+ // Example:
+ // chunkA = { parsedNumber: 1, normalizedString: "001" }
+ // chunkB = { parsedNumber: 1, normalizedString: "01" }
+ // chunkA.parsedNumber === chunkB.parsedNumber
+ // chunkA.normalizedString < chunkB.normalizedString
+ return stringCompare(chunkA.normalizedString, chunkB.normalizedString);
+ }
+ return result;
+ } else if (chunkA.parsedNumber !== undefined || chunkB.parsedNumber !== undefined) {
+ // number < string
+ return chunkA.parsedNumber !== undefined ? -1 : 1;
+ } else if (RE_UNICODE_CHARACTERS.test(chunkA.normalizedString + chunkB.normalizedString)) {
+ // use locale comparison only if one of the chunks contains unicode characters
+ return compareUnicode(chunkA.normalizedString, chunkB.normalizedString);
+ } else {
+ // use common string comparison for performance reason
+ return stringCompare(chunkA.normalizedString, chunkB.normalizedString);
+ }
+ }
+ }
+ // if the chunks are equal so far, the one which has more chunks is greater than the other one
+ if (lengthA > size || lengthB > size) {
+ return lengthA <= size ? -1 : 1;
+ }
+ return 0;
+};
+
+var compareOtherTypes = function compareOtherTypes(valueA, valueB) {
+ if (!valueA.chunks ? valueB.chunks : !valueB.chunks) {
+ return !valueA.chunks ? 1 : -1;
+ }
+ if (valueA.isNaN ? !valueB.isNaN : valueB.isNaN) {
+ return valueA.isNaN ? -1 : 1;
+ }
+ if (valueA.isSymbol ? !valueB.isSymbol : valueB.isSymbol) {
+ return valueA.isSymbol ? -1 : 1;
+ }
+ if (valueA.isObject ? !valueB.isObject : valueB.isObject) {
+ return valueA.isObject ? -1 : 1;
+ }
+ if (valueA.isArray ? !valueB.isArray : valueB.isArray) {
+ return valueA.isArray ? -1 : 1;
+ }
+ if (valueA.isFunction ? !valueB.isFunction : valueB.isFunction) {
+ return valueA.isFunction ? -1 : 1;
+ }
+ if (valueA.isNull ? !valueB.isNull : valueB.isNull) {
+ return valueA.isNull ? -1 : 1;
+ }
+ return 0;
+};
+
+var compareValues = function compareValues(valueA, valueB) {
+ if (valueA.value === valueB.value) {
+ return 0;
+ }
+ if (valueA.parsedNumber !== undefined && valueB.parsedNumber !== undefined) {
+ return compareNumbers(valueA.parsedNumber, valueB.parsedNumber);
+ }
+ if (valueA.chunks && valueB.chunks) {
+ return compareChunks(valueA.chunks, valueB.chunks);
+ }
+ return compareOtherTypes(valueA, valueB);
+};
+
+var normalizeAlphaChunk = function normalizeAlphaChunk(chunk) {
+ return chunk.replace(RE_WHITESPACES, ' ').replace(RE_LEADING_OR_TRAILING_WHITESPACES, '');
+};
+
+var parseNumber = function parseNumber(value) {
+ if (value.length !== 0) {
+ var parsedNumber = Number(value);
+ if (!Number.isNaN(parsedNumber)) {
+ return parsedNumber;
+ }
+ }
+ return undefined;
+};
+
+var normalizeNumericChunk = function normalizeNumericChunk(chunk, index, chunks) {
+ if (RE_INT_OR_FLOAT.test(chunk)) {
+ // don´t parse a number, if there´s a preceding decimal point
+ // to keep significance
+ // e.g. 1.0020, 1.020
+ if (!RE_LEADING_ZERO.test(chunk) || index === 0 || chunks[index - 1] !== '.') {
+ return parseNumber(chunk) || 0;
+ }
+ }
+ return undefined;
+};
+
+var createChunkMap = function createChunkMap(chunk, index, chunks) {
+ return {
+ parsedNumber: normalizeNumericChunk(chunk, index, chunks),
+ normalizedString: normalizeAlphaChunk(chunk)
+ };
+};
+
+var createChunks = function createChunks(value) {
+ return value.replace(RE_NUMBERS, '\0$1\0').replace(/\0$/, '').replace(/^\0/, '').split('\0');
+};
+
+var createChunkMaps = function createChunkMaps(value) {
+ var chunksMaps = createChunks(value).map(createChunkMap);
+ return chunksMaps;
+};
+
+var isFunction = function isFunction(value) {
+ return typeof value === 'function';
+};
+
+var isNaN = function isNaN(value) {
+ return Number.isNaN(value) || value instanceof Number && Number.isNaN(value.valueOf());
+};
+
+var isNull = function isNull(value) {
+ return value === null;
+};
+
+var isObject = function isObject(value) {
+ return value !== null && typeof value === 'object' && !Array.isArray(value) && !(value instanceof Number) && !(value instanceof String) && !(value instanceof Boolean) && !(value instanceof Date);
+};
+
+var isSymbol = function isSymbol(value) {
+ return typeof value === 'symbol';
+};
+
+var isUndefined = function isUndefined(value) {
+ return value === undefined;
+};
+
+var parseDate = function parseDate(value) {
+ try {
+ var parsedDate = Date.parse(value);
+ if (!Number.isNaN(parsedDate)) {
+ if (RE_DATE.test(value)) {
+ return parsedDate;
+ }
+ }
+ return undefined;
+ } catch (_unused) {
+ return undefined;
+ }
+};
+
+var numberify = function numberify(value) {
+ var parsedNumber = parseNumber(value);
+ if (parsedNumber !== undefined) {
+ return parsedNumber;
+ }
+ return parseDate(value);
+};
+
+var stringify = function stringify(value) {
+ if (typeof value === 'boolean' || value instanceof Boolean) {
+ return Number(value).toString();
+ }
+ if (typeof value === 'number' || value instanceof Number) {
+ return value.toString();
+ }
+ if (value instanceof Date) {
+ return value.getTime().toString();
+ }
+ if (typeof value === 'string' || value instanceof String) {
+ return value.toLowerCase().replace(RE_LEADING_OR_TRAILING_WHITESPACES, '');
+ }
+ return '';
+};
+
+var getMappedValueRecord = function getMappedValueRecord(value) {
+ if (typeof value === 'string' || value instanceof String || (typeof value === 'number' || value instanceof Number) && !isNaN(value) || typeof value === 'boolean' || value instanceof Boolean || value instanceof Date) {
+ var stringValue = stringify(value);
+ var parsedNumber = numberify(stringValue);
+ var chunks = createChunkMaps(parsedNumber ? "" + parsedNumber : stringValue);
+ return {
+ parsedNumber: parsedNumber,
+ chunks: chunks,
+ value: value
+ };
+ }
+ return {
+ isArray: Array.isArray(value),
+ isFunction: isFunction(value),
+ isNaN: isNaN(value),
+ isNull: isNull(value),
+ isObject: isObject(value),
+ isSymbol: isSymbol(value),
+ isUndefined: isUndefined(value),
+ value: value
+ };
+};
+
+var baseCompare = function baseCompare(options) {
+ return function (valueA, valueB) {
+ var a = getMappedValueRecord(valueA);
+ var b = getMappedValueRecord(valueB);
+ var result = compareValues(a, b);
+ return result * (options.order === 'desc' ? -1 : 1);
+ };
+};
+
+var isValidOrder = function isValidOrder(value) {
+ return typeof value === 'string' && (value === 'asc' || value === 'desc');
+};
+var getOptions = function getOptions(customOptions) {
+ var order = 'asc';
+ if (typeof customOptions === 'string' && isValidOrder(customOptions)) {
+ order = customOptions;
+ } else if (customOptions && typeof customOptions === 'object' && customOptions.order && isValidOrder(customOptions.order)) {
+ order = customOptions.order;
+ }
+ return {
+ order: order
+ };
+};
+
+/**
+ * Creates a compare function that defines the natural sort order considering
+ * the given `options` which may be passed to [`Array.prototype.sort()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort).
+ */
+function compare(options) {
+ var validatedOptions = getOptions(options);
+ return baseCompare(validatedOptions);
+}
+
+var compareMultiple = function compareMultiple(recordA, recordB, orders) {
+ var indexA = recordA.index,
+ valuesA = recordA.values;
+ var indexB = recordB.index,
+ valuesB = recordB.values;
+ var length = valuesA.length;
+ var ordersLength = orders.length;
+ for (var i = 0; i < length; i++) {
+ var order = i < ordersLength ? orders[i] : null;
+ if (order && typeof order === 'function') {
+ var result = order(valuesA[i].value, valuesB[i].value);
+ if (result) {
+ return result;
+ }
+ } else {
+ var _result = compareValues(valuesA[i], valuesB[i]);
+ if (_result) {
+ return _result * (order === 'desc' ? -1 : 1);
+ }
+ }
+ }
+ return indexA - indexB;
+};
+
+var createIdentifierFn = function createIdentifierFn(identifier) {
+ if (typeof identifier === 'function') {
+ // identifier is already a lookup function
+ return identifier;
+ }
+ return function (value) {
+ if (Array.isArray(value)) {
+ var index = Number(identifier);
+ if (Number.isInteger(index)) {
+ return value[index];
+ }
+ } else if (value && typeof value === 'object') {
+ var result = Object.getOwnPropertyDescriptor(value, identifier);
+ return result == null ? void 0 : result.value;
+ }
+ return value;
+ };
+};
+
+var getElementByIndex = function getElementByIndex(collection, index) {
+ return collection[index];
+};
+
+var getValueByIdentifier = function getValueByIdentifier(value, getValue) {
+ return getValue(value);
+};
+
+var baseOrderBy = function baseOrderBy(collection, identifiers, orders) {
+ var identifierFns = identifiers.length ? identifiers.map(createIdentifierFn) : [function (value) {
+ return value;
+ }];
+
+ // temporary array holds elements with position and sort-values
+ var mappedCollection = collection.map(function (element, index) {
+ var values = identifierFns.map(function (identifier) {
+ return getValueByIdentifier(element, identifier);
+ }).map(getMappedValueRecord);
+ return {
+ index: index,
+ values: values
+ };
+ });
+
+ // iterate over values and compare values until a != b or last value reached
+ mappedCollection.sort(function (recordA, recordB) {
+ return compareMultiple(recordA, recordB, orders);
+ });
+ return mappedCollection.map(function (element) {
+ return getElementByIndex(collection, element.index);
+ });
+};
+
+var getIdentifiers = function getIdentifiers(identifiers) {
+ if (!identifiers) {
+ return [];
+ }
+ var identifierList = !Array.isArray(identifiers) ? [identifiers] : [].concat(identifiers);
+ if (identifierList.some(function (identifier) {
+ return typeof identifier !== 'string' && typeof identifier !== 'number' && typeof identifier !== 'function';
+ })) {
+ return [];
+ }
+ return identifierList;
+};
+
+var getOrders = function getOrders(orders) {
+ if (!orders) {
+ return [];
+ }
+ var orderList = !Array.isArray(orders) ? [orders] : [].concat(orders);
+ if (orderList.some(function (order) {
+ return order !== 'asc' && order !== 'desc' && typeof order !== 'function';
+ })) {
+ return [];
+ }
+ return orderList;
+};
+
+/**
+ * Creates an array of elements, natural sorted by specified identifiers and
+ * the corresponding sort orders. This method implements a stable sort
+ * algorithm, which means the original sort order of equal elements is
+ * preserved.
+ */
+function orderBy(collection, identifiers, orders) {
+ if (!collection || !Array.isArray(collection)) {
+ return [];
+ }
+ var validatedIdentifiers = getIdentifiers(identifiers);
+ var validatedOrders = getOrders(orders);
+ return baseOrderBy(collection, validatedIdentifiers, validatedOrders);
+}
+
+
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true&":
+/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true& ***!
+ \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_BreadCrumbs_vue_vue_type_style_index_0_id_9f0aa34e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true& */ "./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!./apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_BreadCrumbs_vue_vue_type_style_index_0_id_9f0aa34e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_BreadCrumbs_vue_vue_type_style_index_0_id_9f0aa34e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_BreadCrumbs_vue_vue_type_style_index_0_id_9f0aa34e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_BreadCrumbs_vue_vue_type_style_index_0_id_9f0aa34e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true&":
+/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true& ***!
+ \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_CustomSvgIconRender_vue_vue_type_style_index_0_id_6c70146b_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true& */ "./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!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_CustomSvgIconRender_vue_vue_type_style_index_0_id_6c70146b_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_CustomSvgIconRender_vue_vue_type_style_index_0_id_6c70146b_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_CustomSvgIconRender_vue_vue_type_style_index_0_id_6c70146b_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_CustomSvgIconRender_vue_vue_type_style_index_0_id_6c70146b_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true&":
+/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true& ***!
+ \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_FavoriteIcon_vue_vue_type_style_index_0_id_8f8f00c8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true& */ "./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!./apps/files/src/components/FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FavoriteIcon_vue_vue_type_style_index_0_id_8f8f00c8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_FavoriteIcon_vue_vue_type_style_index_0_id_8f8f00c8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FavoriteIcon_vue_vue_type_style_index_0_id_8f8f00c8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FavoriteIcon_vue_vue_type_style_index_0_id_8f8f00c8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss&":
+/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss& ***!
+ \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_FileEntry_vue_vue_type_style_index_0_id_24fe7eff_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss& */ "./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!./apps/files/src/components/FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FileEntry_vue_vue_type_style_index_0_id_24fe7eff_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_FileEntry_vue_vue_type_style_index_0_id_24fe7eff_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FileEntry_vue_vue_type_style_index_0_id_24fe7eff_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FileEntry_vue_vue_type_style_index_0_id_24fe7eff_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss&":
+/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss& ***!
+ \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_FilesListTableFooter_vue_vue_type_style_index_0_id_29c3a0fb_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss& */ "./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!./apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FilesListTableFooter_vue_vue_type_style_index_0_id_29c3a0fb_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_FilesListTableFooter_vue_vue_type_style_index_0_id_29c3a0fb_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FilesListTableFooter_vue_vue_type_style_index_0_id_29c3a0fb_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FilesListTableFooter_vue_vue_type_style_index_0_id_29c3a0fb_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss&":
+/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss& ***!
+ \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_FilesListTableHeader_vue_vue_type_style_index_0_id_4af604ed_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss& */ "./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!./apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FilesListTableHeader_vue_vue_type_style_index_0_id_4af604ed_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_FilesListTableHeader_vue_vue_type_style_index_0_id_4af604ed_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FilesListTableHeader_vue_vue_type_style_index_0_id_4af604ed_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FilesListTableHeader_vue_vue_type_style_index_0_id_4af604ed_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss&":
+/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss& ***!
+ \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_FilesListTableHeaderActions_vue_vue_type_style_index_0_id_25a39e00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss& */ "./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!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FilesListTableHeaderActions_vue_vue_type_style_index_0_id_25a39e00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_FilesListTableHeaderActions_vue_vue_type_style_index_0_id_25a39e00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FilesListTableHeaderActions_vue_vue_type_style_index_0_id_25a39e00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FilesListTableHeaderActions_vue_vue_type_style_index_0_id_25a39e00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss&":
+/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss& ***!
+ \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_FilesListTableHeaderButton_vue_vue_type_style_index_0_id_432b4b7f_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss& */ "./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!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FilesListTableHeaderButton_vue_vue_type_style_index_0_id_432b4b7f_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_FilesListTableHeaderButton_vue_vue_type_style_index_0_id_432b4b7f_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FilesListTableHeaderButton_vue_vue_type_style_index_0_id_432b4b7f_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FilesListTableHeaderButton_vue_vue_type_style_index_0_id_432b4b7f_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss&":
+/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss& ***!
+ \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_FilesListVirtual_vue_vue_type_style_index_0_id_2d34be06_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss& */ "./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!./apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FilesListVirtual_vue_vue_type_style_index_0_id_2d34be06_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_FilesListVirtual_vue_vue_type_style_index_0_id_2d34be06_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FilesListVirtual_vue_vue_type_style_index_0_id_2d34be06_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FilesListVirtual_vue_vue_type_style_index_0_id_2d34be06_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true&":
+/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true& ***!
+ \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_NavigationQuota_vue_vue_type_style_index_0_id_6f96f0a6_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true& */ "./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!./apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_NavigationQuota_vue_vue_type_style_index_0_id_6f96f0a6_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_NavigationQuota_vue_vue_type_style_index_0_id_6f96f0a6_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_NavigationQuota_vue_vue_type_style_index_0_id_6f96f0a6_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_NavigationQuota_vue_vue_type_style_index_0_id_6f96f0a6_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true&":
+/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true& ***!
+ \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_TemplatePreview_vue_vue_type_style_index_0_id_14e703d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true& */ "./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!./apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_TemplatePreview_vue_vue_type_style_index_0_id_14e703d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_TemplatePreview_vue_vue_type_style_index_0_id_14e703d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_TemplatePreview_vue_vue_type_style_index_0_id_14e703d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_TemplatePreview_vue_vue_type_style_index_0_id_14e703d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss&":
+/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss& ***!
+ \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_FilesList_vue_vue_type_style_index_0_id_02e51922_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss& */ "./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!./apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_FilesList_vue_vue_type_style_index_0_id_02e51922_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_FilesList_vue_vue_type_style_index_0_id_02e51922_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_FilesList_vue_vue_type_style_index_0_id_02e51922_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_FilesList_vue_vue_type_style_index_0_id_02e51922_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss&":
+/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss& ***!
+ \************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_Navigation_vue_vue_type_style_index_0_id_a8628012_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss& */ "./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!./apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_Navigation_vue_vue_type_style_index_0_id_a8628012_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_Navigation_vue_vue_type_style_index_0_id_a8628012_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_Navigation_vue_vue_type_style_index_0_id_a8628012_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_Navigation_vue_vue_type_style_index_0_id_a8628012_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true&":
+/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true& ***!
+ \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_Settings_vue_vue_type_style_index_0_id_de32ad74_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true& */ "./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!./apps/files/src/views/Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_Settings_vue_vue_type_style_index_0_id_de32ad74_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_Settings_vue_vue_type_style_index_0_id_de32ad74_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_Settings_vue_vue_type_style_index_0_id_de32ad74_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_Settings_vue_vue_type_style_index_0_id_de32ad74_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true&":
+/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true& ***!
+ \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _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_TemplatePicker_vue_vue_type_style_index_0_id_70b9a7ea_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../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!./TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true& */ "./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!./apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_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_TemplatePicker_vue_vue_type_style_index_0_id_70b9a7ea_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_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_TemplatePicker_vue_vue_type_style_index_0_id_70b9a7ea_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"] && _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_TemplatePicker_vue_vue_type_style_index_0_id_70b9a7ea_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _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_TemplatePicker_vue_vue_type_style_index_0_id_70b9a7ea_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css&":
+/*!************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css& ***!
+ \************************************************************************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
+/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
+/* harmony import */ var _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_style_index_1_id_24fe7eff_lang_css___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css& */ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css&");
+
+
+
+
+
+
+
+
+
+
+
+var options = {};
+
+options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
+options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());
+
+ options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
+
+options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
+options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());
+
+var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_style_index_1_id_24fe7eff_lang_css___WEBPACK_IMPORTED_MODULE_6__["default"], options);
+
+
+
+
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_style_index_1_id_24fe7eff_lang_css___WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_style_index_1_id_24fe7eff_lang_css___WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_style_index_1_id_24fe7eff_lang_css___WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/BreadCrumbs.vue":
+/*!***************************************************!*\
+ !*** ./apps/files/src/components/BreadCrumbs.vue ***!
+ \***************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _BreadCrumbs_vue_vue_type_template_id_9f0aa34e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./BreadCrumbs.vue?vue&type=template&id=9f0aa34e&scoped=true& */ "./apps/files/src/components/BreadCrumbs.vue?vue&type=template&id=9f0aa34e&scoped=true&");
+/* harmony import */ var _BreadCrumbs_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./BreadCrumbs.vue?vue&type=script&lang=js& */ "./apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=js&");
+/* harmony import */ var _BreadCrumbs_vue_vue_type_style_index_0_id_9f0aa34e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true& */ "./apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _BreadCrumbs_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _BreadCrumbs_vue_vue_type_template_id_9f0aa34e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _BreadCrumbs_vue_vue_type_template_id_9f0aa34e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "9f0aa34e",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/BreadCrumbs.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/CustomElementRender.vue":
+/*!***********************************************************!*\
+ !*** ./apps/files/src/components/CustomElementRender.vue ***!
+ \***********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _CustomElementRender_vue_vue_type_template_id_d4c538ac___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CustomElementRender.vue?vue&type=template&id=d4c538ac& */ "./apps/files/src/components/CustomElementRender.vue?vue&type=template&id=d4c538ac&");
+/* harmony import */ var _CustomElementRender_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CustomElementRender.vue?vue&type=script&lang=ts& */ "./apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+;
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _CustomElementRender_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _CustomElementRender_vue_vue_type_template_id_d4c538ac___WEBPACK_IMPORTED_MODULE_0__.render,
+ _CustomElementRender_vue_vue_type_template_id_d4c538ac___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/CustomElementRender.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/CustomSvgIconRender.vue":
+/*!***********************************************************!*\
+ !*** ./apps/files/src/components/CustomSvgIconRender.vue ***!
+ \***********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _CustomSvgIconRender_vue_vue_type_template_id_6c70146b_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CustomSvgIconRender.vue?vue&type=template&id=6c70146b&scoped=true& */ "./apps/files/src/components/CustomSvgIconRender.vue?vue&type=template&id=6c70146b&scoped=true&");
+/* harmony import */ var _CustomSvgIconRender_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CustomSvgIconRender.vue?vue&type=script&lang=js& */ "./apps/files/src/components/CustomSvgIconRender.vue?vue&type=script&lang=js&");
+/* harmony import */ var _CustomSvgIconRender_vue_vue_type_style_index_0_id_6c70146b_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true& */ "./apps/files/src/components/CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _CustomSvgIconRender_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _CustomSvgIconRender_vue_vue_type_template_id_6c70146b_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _CustomSvgIconRender_vue_vue_type_template_id_6c70146b_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "6c70146b",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/CustomSvgIconRender.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FavoriteIcon.vue":
+/*!****************************************************!*\
+ !*** ./apps/files/src/components/FavoriteIcon.vue ***!
+ \****************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _FavoriteIcon_vue_vue_type_template_id_8f8f00c8_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FavoriteIcon.vue?vue&type=template&id=8f8f00c8&scoped=true& */ "./apps/files/src/components/FavoriteIcon.vue?vue&type=template&id=8f8f00c8&scoped=true&");
+/* harmony import */ var _FavoriteIcon_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FavoriteIcon.vue?vue&type=script&lang=js& */ "./apps/files/src/components/FavoriteIcon.vue?vue&type=script&lang=js&");
+/* harmony import */ var _FavoriteIcon_vue_vue_type_style_index_0_id_8f8f00c8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true& */ "./apps/files/src/components/FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _FavoriteIcon_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _FavoriteIcon_vue_vue_type_template_id_8f8f00c8_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _FavoriteIcon_vue_vue_type_template_id_8f8f00c8_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "8f8f00c8",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/FavoriteIcon.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FileEntry.vue":
+/*!*************************************************!*\
+ !*** ./apps/files/src/components/FileEntry.vue ***!
+ \*************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _FileEntry_vue_vue_type_template_id_24fe7eff_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FileEntry.vue?vue&type=template&id=24fe7eff&scoped=true& */ "./apps/files/src/components/FileEntry.vue?vue&type=template&id=24fe7eff&scoped=true&");
+/* harmony import */ var _FileEntry_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FileEntry.vue?vue&type=script&lang=ts& */ "./apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _FileEntry_vue_vue_type_style_index_0_id_24fe7eff_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss& */ "./apps/files/src/components/FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss&");
+/* harmony import */ var _FileEntry_vue_vue_type_style_index_1_id_24fe7eff_lang_css___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css& */ "./apps/files/src/components/FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_4__["default"])(
+ _FileEntry_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _FileEntry_vue_vue_type_template_id_24fe7eff_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _FileEntry_vue_vue_type_template_id_24fe7eff_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "24fe7eff",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/FileEntry.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListHeader.vue":
+/*!*******************************************************!*\
+ !*** ./apps/files/src/components/FilesListHeader.vue ***!
+ \*******************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _FilesListHeader_vue_vue_type_template_id_4db1368b___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesListHeader.vue?vue&type=template&id=4db1368b& */ "./apps/files/src/components/FilesListHeader.vue?vue&type=template&id=4db1368b&");
+/* harmony import */ var _FilesListHeader_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesListHeader.vue?vue&type=script&lang=ts& */ "./apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+;
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _FilesListHeader_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _FilesListHeader_vue_vue_type_template_id_4db1368b___WEBPACK_IMPORTED_MODULE_0__.render,
+ _FilesListHeader_vue_vue_type_template_id_4db1368b___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/FilesListHeader.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableFooter.vue":
+/*!************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableFooter.vue ***!
+ \************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _FilesListTableFooter_vue_vue_type_template_id_29c3a0fb_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesListTableFooter.vue?vue&type=template&id=29c3a0fb&scoped=true& */ "./apps/files/src/components/FilesListTableFooter.vue?vue&type=template&id=29c3a0fb&scoped=true&");
+/* harmony import */ var _FilesListTableFooter_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesListTableFooter.vue?vue&type=script&lang=ts& */ "./apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _FilesListTableFooter_vue_vue_type_style_index_0_id_29c3a0fb_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss& */ "./apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _FilesListTableFooter_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _FilesListTableFooter_vue_vue_type_template_id_29c3a0fb_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _FilesListTableFooter_vue_vue_type_template_id_29c3a0fb_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "29c3a0fb",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/FilesListTableFooter.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeader.vue":
+/*!************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeader.vue ***!
+ \************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _FilesListTableHeader_vue_vue_type_template_id_4af604ed_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesListTableHeader.vue?vue&type=template&id=4af604ed&scoped=true& */ "./apps/files/src/components/FilesListTableHeader.vue?vue&type=template&id=4af604ed&scoped=true&");
+/* harmony import */ var _FilesListTableHeader_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesListTableHeader.vue?vue&type=script&lang=ts& */ "./apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _FilesListTableHeader_vue_vue_type_style_index_0_id_4af604ed_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss& */ "./apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _FilesListTableHeader_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _FilesListTableHeader_vue_vue_type_template_id_4af604ed_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _FilesListTableHeader_vue_vue_type_template_id_4af604ed_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "4af604ed",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/FilesListTableHeader.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeaderActions.vue":
+/*!*******************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeaderActions.vue ***!
+ \*******************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _FilesListTableHeaderActions_vue_vue_type_template_id_25a39e00_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesListTableHeaderActions.vue?vue&type=template&id=25a39e00&scoped=true& */ "./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=template&id=25a39e00&scoped=true&");
+/* harmony import */ var _FilesListTableHeaderActions_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesListTableHeaderActions.vue?vue&type=script&lang=ts& */ "./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _FilesListTableHeaderActions_vue_vue_type_style_index_0_id_25a39e00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss& */ "./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _FilesListTableHeaderActions_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _FilesListTableHeaderActions_vue_vue_type_template_id_25a39e00_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _FilesListTableHeaderActions_vue_vue_type_template_id_25a39e00_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "25a39e00",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/FilesListTableHeaderActions.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeaderButton.vue":
+/*!******************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeaderButton.vue ***!
+ \******************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _FilesListTableHeaderButton_vue_vue_type_template_id_432b4b7f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesListTableHeaderButton.vue?vue&type=template&id=432b4b7f& */ "./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=template&id=432b4b7f&");
+/* harmony import */ var _FilesListTableHeaderButton_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesListTableHeaderButton.vue?vue&type=script&lang=ts& */ "./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _FilesListTableHeaderButton_vue_vue_type_style_index_0_id_432b4b7f_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss& */ "./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _FilesListTableHeaderButton_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _FilesListTableHeaderButton_vue_vue_type_template_id_432b4b7f___WEBPACK_IMPORTED_MODULE_0__.render,
+ _FilesListTableHeaderButton_vue_vue_type_template_id_432b4b7f___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/FilesListTableHeaderButton.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListVirtual.vue":
+/*!********************************************************!*\
+ !*** ./apps/files/src/components/FilesListVirtual.vue ***!
+ \********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _FilesListVirtual_vue_vue_type_template_id_2d34be06_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesListVirtual.vue?vue&type=template&id=2d34be06&scoped=true& */ "./apps/files/src/components/FilesListVirtual.vue?vue&type=template&id=2d34be06&scoped=true&");
+/* harmony import */ var _FilesListVirtual_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesListVirtual.vue?vue&type=script&lang=ts& */ "./apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _FilesListVirtual_vue_vue_type_style_index_0_id_2d34be06_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss& */ "./apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _FilesListVirtual_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _FilesListVirtual_vue_vue_type_template_id_2d34be06_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _FilesListVirtual_vue_vue_type_template_id_2d34be06_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "2d34be06",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/FilesListVirtual.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/NavigationQuota.vue":
+/*!*******************************************************!*\
+ !*** ./apps/files/src/components/NavigationQuota.vue ***!
+ \*******************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _NavigationQuota_vue_vue_type_template_id_6f96f0a6_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./NavigationQuota.vue?vue&type=template&id=6f96f0a6&scoped=true& */ "./apps/files/src/components/NavigationQuota.vue?vue&type=template&id=6f96f0a6&scoped=true&");
+/* harmony import */ var _NavigationQuota_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./NavigationQuota.vue?vue&type=script&lang=js& */ "./apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js&");
+/* harmony import */ var _NavigationQuota_vue_vue_type_style_index_0_id_6f96f0a6_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true& */ "./apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _NavigationQuota_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _NavigationQuota_vue_vue_type_template_id_6f96f0a6_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _NavigationQuota_vue_vue_type_template_id_6f96f0a6_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "6f96f0a6",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/NavigationQuota.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/Setting.vue":
+/*!***********************************************!*\
+ !*** ./apps/files/src/components/Setting.vue ***!
+ \***********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _Setting_vue_vue_type_template_id_a0773f8e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Setting.vue?vue&type=template&id=a0773f8e& */ "./apps/files/src/components/Setting.vue?vue&type=template&id=a0773f8e&");
+/* harmony import */ var _Setting_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Setting.vue?vue&type=script&lang=js& */ "./apps/files/src/components/Setting.vue?vue&type=script&lang=js&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+;
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _Setting_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _Setting_vue_vue_type_template_id_a0773f8e___WEBPACK_IMPORTED_MODULE_0__.render,
+ _Setting_vue_vue_type_template_id_a0773f8e___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/Setting.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/TemplatePreview.vue":
+/*!*******************************************************!*\
+ !*** ./apps/files/src/components/TemplatePreview.vue ***!
+ \*******************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _TemplatePreview_vue_vue_type_template_id_14e703d7_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TemplatePreview.vue?vue&type=template&id=14e703d7&scoped=true& */ "./apps/files/src/components/TemplatePreview.vue?vue&type=template&id=14e703d7&scoped=true&");
+/* harmony import */ var _TemplatePreview_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TemplatePreview.vue?vue&type=script&lang=js& */ "./apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js&");
+/* harmony import */ var _TemplatePreview_vue_vue_type_style_index_0_id_14e703d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true& */ "./apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _TemplatePreview_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _TemplatePreview_vue_vue_type_template_id_14e703d7_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _TemplatePreview_vue_vue_type_template_id_14e703d7_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "14e703d7",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/TemplatePreview.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/VirtualList.vue":
+/*!***************************************************!*\
+ !*** ./apps/files/src/components/VirtualList.vue ***!
+ \***************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _VirtualList_vue_vue_type_template_id_24416332_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./VirtualList.vue?vue&type=template&id=24416332&scoped=true& */ "./apps/files/src/components/VirtualList.vue?vue&type=template&id=24416332&scoped=true&");
+/* harmony import */ var _VirtualList_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VirtualList.vue?vue&type=script&lang=ts& */ "./apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+;
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _VirtualList_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _VirtualList_vue_vue_type_template_id_24416332_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _VirtualList_vue_vue_type_template_id_24416332_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "24416332",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/components/VirtualList.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/views/FilesList.vue":
+/*!********************************************!*\
+ !*** ./apps/files/src/views/FilesList.vue ***!
+ \********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _FilesList_vue_vue_type_template_id_02e51922_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FilesList.vue?vue&type=template&id=02e51922&scoped=true& */ "./apps/files/src/views/FilesList.vue?vue&type=template&id=02e51922&scoped=true&");
+/* harmony import */ var _FilesList_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FilesList.vue?vue&type=script&lang=ts& */ "./apps/files/src/views/FilesList.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _FilesList_vue_vue_type_style_index_0_id_02e51922_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss& */ "./apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _FilesList_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _FilesList_vue_vue_type_template_id_02e51922_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _FilesList_vue_vue_type_template_id_02e51922_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "02e51922",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/views/FilesList.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/views/Navigation.vue":
+/*!*********************************************!*\
+ !*** ./apps/files/src/views/Navigation.vue ***!
+ \*********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _Navigation_vue_vue_type_template_id_a8628012_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Navigation.vue?vue&type=template&id=a8628012&scoped=true& */ "./apps/files/src/views/Navigation.vue?vue&type=template&id=a8628012&scoped=true&");
+/* harmony import */ var _Navigation_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Navigation.vue?vue&type=script&lang=ts& */ "./apps/files/src/views/Navigation.vue?vue&type=script&lang=ts&");
+/* harmony import */ var _Navigation_vue_vue_type_style_index_0_id_a8628012_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss& */ "./apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _Navigation_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _Navigation_vue_vue_type_template_id_a8628012_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _Navigation_vue_vue_type_template_id_a8628012_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "a8628012",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/views/Navigation.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/views/Settings.vue":
+/*!*******************************************!*\
+ !*** ./apps/files/src/views/Settings.vue ***!
+ \*******************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _Settings_vue_vue_type_template_id_de32ad74_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Settings.vue?vue&type=template&id=de32ad74&scoped=true& */ "./apps/files/src/views/Settings.vue?vue&type=template&id=de32ad74&scoped=true&");
+/* harmony import */ var _Settings_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Settings.vue?vue&type=script&lang=js& */ "./apps/files/src/views/Settings.vue?vue&type=script&lang=js&");
+/* harmony import */ var _Settings_vue_vue_type_style_index_0_id_de32ad74_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true& */ "./apps/files/src/views/Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _Settings_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _Settings_vue_vue_type_template_id_de32ad74_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _Settings_vue_vue_type_template_id_de32ad74_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "de32ad74",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/views/Settings.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./apps/files/src/views/TemplatePicker.vue":
+/*!*************************************************!*\
+ !*** ./apps/files/src/views/TemplatePicker.vue ***!
+ \*************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _TemplatePicker_vue_vue_type_template_id_70b9a7ea_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TemplatePicker.vue?vue&type=template&id=70b9a7ea&scoped=true& */ "./apps/files/src/views/TemplatePicker.vue?vue&type=template&id=70b9a7ea&scoped=true&");
+/* harmony import */ var _TemplatePicker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TemplatePicker.vue?vue&type=script&lang=js& */ "./apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=js&");
+/* harmony import */ var _TemplatePicker_vue_vue_type_style_index_0_id_70b9a7ea_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true& */ "./apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+;
+
+
+/* normalize component */
+
+var component = (0,_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _TemplatePicker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _TemplatePicker_vue_vue_type_template_id_70b9a7ea_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render,
+ _TemplatePicker_vue_vue_type_template_id_70b9a7ea_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ "70b9a7ea",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "apps/files/src/views/TemplatePicker.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/ChartPie.vue":
+/*!*************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/ChartPie.vue ***!
+ \*************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _ChartPie_vue_vue_type_template_id_6a3f71fa___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ChartPie.vue?vue&type=template&id=6a3f71fa& */ "./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=6a3f71fa&");
+/* harmony import */ var _ChartPie_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ChartPie.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js&");
+/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+;
+var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _ChartPie_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _ChartPie_vue_vue_type_template_id_6a3f71fa___WEBPACK_IMPORTED_MODULE_0__.render,
+ _ChartPie_vue_vue_type_template_id_6a3f71fa___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "node_modules/vue-material-design-icons/ChartPie.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js&":
+/*!*************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js& ***!
+ \*************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "ChartPieIcon",
+ emits: ['click'],
+ props: {
+ title: {
+ type: String,
+ },
+ fillColor: {
+ type: String,
+ default: "currentColor"
+ },
+ size: {
+ type: Number,
+ default: 24
+ }
+ }
+});
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/Clipboard.vue":
+/*!**************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/Clipboard.vue ***!
+ \**************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _Clipboard_vue_vue_type_template_id_54521e1a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Clipboard.vue?vue&type=template&id=54521e1a& */ "./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=template&id=54521e1a&");
+/* harmony import */ var _Clipboard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Clipboard.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=script&lang=js&");
+/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+;
+var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _Clipboard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _Clipboard_vue_vue_type_template_id_54521e1a___WEBPACK_IMPORTED_MODULE_0__.render,
+ _Clipboard_vue_vue_type_template_id_54521e1a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "node_modules/vue-material-design-icons/Clipboard.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=script&lang=js&":
+/*!**************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=script&lang=js& ***!
+ \**************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "ClipboardIcon",
+ emits: ['click'],
+ props: {
+ title: {
+ type: String,
+ },
+ fillColor: {
+ type: String,
+ default: "currentColor"
+ },
+ size: {
+ type: Number,
+ default: 24
+ }
+ }
+});
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/File.vue":
+/*!*********************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/File.vue ***!
+ \*********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _File_vue_vue_type_template_id_5b1c5da8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./File.vue?vue&type=template&id=5b1c5da8& */ "./node_modules/vue-material-design-icons/File.vue?vue&type=template&id=5b1c5da8&");
+/* harmony import */ var _File_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./File.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js&");
+/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+;
+var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _File_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _File_vue_vue_type_template_id_5b1c5da8___WEBPACK_IMPORTED_MODULE_0__.render,
+ _File_vue_vue_type_template_id_5b1c5da8___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "node_modules/vue-material-design-icons/File.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js&":
+/*!*********************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js& ***!
+ \*********************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "FileIcon",
+ emits: ['click'],
+ props: {
+ title: {
+ type: String,
+ },
+ fillColor: {
+ type: String,
+ default: "currentColor"
+ },
+ size: {
+ type: Number,
+ default: 24
+ }
+ }
+});
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/Home.vue":
+/*!*********************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/Home.vue ***!
+ \*********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _Home_vue_vue_type_template_id_69f8f38b___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Home.vue?vue&type=template&id=69f8f38b& */ "./node_modules/vue-material-design-icons/Home.vue?vue&type=template&id=69f8f38b&");
+/* harmony import */ var _Home_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Home.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/Home.vue?vue&type=script&lang=js&");
+/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+;
+var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _Home_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _Home_vue_vue_type_template_id_69f8f38b___WEBPACK_IMPORTED_MODULE_0__.render,
+ _Home_vue_vue_type_template_id_69f8f38b___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "node_modules/vue-material-design-icons/Home.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Home.vue?vue&type=script&lang=js&":
+/*!*********************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Home.vue?vue&type=script&lang=js& ***!
+ \*********************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "HomeIcon",
+ emits: ['click'],
+ props: {
+ title: {
+ type: String,
+ },
+ fillColor: {
+ type: String,
+ default: "currentColor"
+ },
+ size: {
+ type: Number,
+ default: 24
+ }
+ }
+});
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/MenuDown.vue":
+/*!*************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/MenuDown.vue ***!
+ \*************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _MenuDown_vue_vue_type_template_id_23154a4d___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./MenuDown.vue?vue&type=template&id=23154a4d& */ "./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=template&id=23154a4d&");
+/* harmony import */ var _MenuDown_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./MenuDown.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=script&lang=js&");
+/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+;
+var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _MenuDown_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _MenuDown_vue_vue_type_template_id_23154a4d___WEBPACK_IMPORTED_MODULE_0__.render,
+ _MenuDown_vue_vue_type_template_id_23154a4d___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "node_modules/vue-material-design-icons/MenuDown.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=script&lang=js&":
+/*!*************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=script&lang=js& ***!
+ \*************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "MenuDownIcon",
+ emits: ['click'],
+ props: {
+ title: {
+ type: String,
+ },
+ fillColor: {
+ type: String,
+ default: "currentColor"
+ },
+ size: {
+ type: Number,
+ default: 24
+ }
+ }
+});
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/MenuUp.vue":
+/*!***********************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/MenuUp.vue ***!
+ \***********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _MenuUp_vue_vue_type_template_id_7aab0ef4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./MenuUp.vue?vue&type=template&id=7aab0ef4& */ "./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=template&id=7aab0ef4&");
+/* harmony import */ var _MenuUp_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./MenuUp.vue?vue&type=script&lang=js& */ "./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=script&lang=js&");
+/* harmony import */ var _vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+;
+var component = (0,_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _MenuUp_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _MenuUp_vue_vue_type_template_id_7aab0ef4___WEBPACK_IMPORTED_MODULE_0__.render,
+ _MenuUp_vue_vue_type_template_id_7aab0ef4___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns,
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "node_modules/vue-material-design-icons/MenuUp.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=script&lang=js&":
+/*!***********************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=script&lang=js& ***!
+ \***********************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "MenuUpIcon",
+ emits: ['click'],
+ props: {
+ title: {
+ type: String,
+ },
+ fillColor: {
+ type: String,
+ default: "currentColor"
+ },
+ size: {
+ type: Number,
+ default: 24
+ }
+ }
+});
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts&":
+/*!************************************************************************************!*\
+ !*** ./apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts& ***!
+ \************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_CustomElementRender_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_CustomElementRender_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts&":
+/*!**************************************************************************!*\
+ !*** ./apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts& ***!
+ \**************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts&":
+/*!********************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts& ***!
+ \********************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListHeader_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListHeader_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts&":
+/*!*************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts& ***!
+ \*************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableFooter_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableFooter_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts&":
+/*!*************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts& ***!
+ \*************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeader_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeader_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts&":
+/*!********************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts& ***!
+ \********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeaderActions_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeaderActions_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts&":
+/*!*******************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts& ***!
+ \*******************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeaderButton_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeaderButton_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts&":
+/*!*********************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts& ***!
+ \*********************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListVirtual_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListVirtual_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts&":
+/*!****************************************************************************!*\
+ !*** ./apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts& ***!
+ \****************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualList_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualList_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/views/FilesList.vue?vue&type=script&lang=ts&":
+/*!*********************************************************************!*\
+ !*** ./apps/files/src/views/FilesList.vue?vue&type=script&lang=ts& ***!
+ \*********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesList_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/FilesList.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesList_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/views/Navigation.vue?vue&type=script&lang=ts&":
+/*!**********************************************************************!*\
+ !*** ./apps/files/src/views/Navigation.vue?vue&type=script&lang=ts& ***!
+ \**********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_Navigation_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts& */ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Navigation.vue?vue&type=script&lang=ts&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_4_use_1_node_modules_vue_loader_lib_index_js_vue_loader_options_Navigation_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=js&":
+/*!****************************************************************************!*\
+ !*** ./apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=js& ***!
+ \****************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_BreadCrumbs_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_BreadCrumbs_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/CustomSvgIconRender.vue?vue&type=script&lang=js&":
+/*!************************************************************************************!*\
+ !*** ./apps/files/src/components/CustomSvgIconRender.vue?vue&type=script&lang=js& ***!
+ \************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CustomSvgIconRender_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomSvgIconRender.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_CustomSvgIconRender_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FavoriteIcon.vue?vue&type=script&lang=js&":
+/*!*****************************************************************************!*\
+ !*** ./apps/files/src/components/FavoriteIcon.vue?vue&type=script&lang=js& ***!
+ \*****************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FavoriteIcon_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FavoriteIcon.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FavoriteIcon_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js&":
+/*!********************************************************************************!*\
+ !*** ./apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js& ***!
+ \********************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_NavigationQuota_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_NavigationQuota_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/Setting.vue?vue&type=script&lang=js&":
+/*!************************************************************************!*\
+ !*** ./apps/files/src/components/Setting.vue?vue&type=script&lang=js& ***!
+ \************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Setting_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/Setting.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Setting_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js&":
+/*!********************************************************************************!*\
+ !*** ./apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js& ***!
+ \********************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TemplatePreview_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/TemplatePreview.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TemplatePreview_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/views/Settings.vue?vue&type=script&lang=js&":
+/*!********************************************************************!*\
+ !*** ./apps/files/src/views/Settings.vue?vue&type=script&lang=js& ***!
+ \********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Settings_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Settings.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Settings_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=js&":
+/*!**************************************************************************!*\
+ !*** ./apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=js& ***!
+ \**************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TemplatePicker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePicker.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/TemplatePicker.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_TemplatePicker_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./apps/files/src/components/BreadCrumbs.vue?vue&type=template&id=9f0aa34e&scoped=true&":
+/*!**********************************************************************************************!*\
+ !*** ./apps/files/src/components/BreadCrumbs.vue?vue&type=template&id=9f0aa34e&scoped=true& ***!
+ \**********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_BreadCrumbs_vue_vue_type_template_id_9f0aa34e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_BreadCrumbs_vue_vue_type_template_id_9f0aa34e_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_BreadCrumbs_vue_vue_type_template_id_9f0aa34e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=template&id=9f0aa34e&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/BreadCrumbs.vue?vue&type=template&id=9f0aa34e&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/CustomElementRender.vue?vue&type=template&id=d4c538ac&":
+/*!******************************************************************************************!*\
+ !*** ./apps/files/src/components/CustomElementRender.vue?vue&type=template&id=d4c538ac& ***!
+ \******************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_CustomElementRender_vue_vue_type_template_id_d4c538ac___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_CustomElementRender_vue_vue_type_template_id_d4c538ac___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_CustomElementRender_vue_vue_type_template_id_d4c538ac___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=template&id=d4c538ac& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomElementRender.vue?vue&type=template&id=d4c538ac&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/CustomSvgIconRender.vue?vue&type=template&id=6c70146b&scoped=true&":
+/*!******************************************************************************************************!*\
+ !*** ./apps/files/src/components/CustomSvgIconRender.vue?vue&type=template&id=6c70146b&scoped=true& ***!
+ \******************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_CustomSvgIconRender_vue_vue_type_template_id_6c70146b_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_CustomSvgIconRender_vue_vue_type_template_id_6c70146b_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_CustomSvgIconRender_vue_vue_type_template_id_6c70146b_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomSvgIconRender.vue?vue&type=template&id=6c70146b&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=template&id=6c70146b&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FavoriteIcon.vue?vue&type=template&id=8f8f00c8&scoped=true&":
+/*!***********************************************************************************************!*\
+ !*** ./apps/files/src/components/FavoriteIcon.vue?vue&type=template&id=8f8f00c8&scoped=true& ***!
+ \***********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FavoriteIcon_vue_vue_type_template_id_8f8f00c8_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FavoriteIcon_vue_vue_type_template_id_8f8f00c8_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FavoriteIcon_vue_vue_type_template_id_8f8f00c8_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=template&id=8f8f00c8&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FavoriteIcon.vue?vue&type=template&id=8f8f00c8&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FileEntry.vue?vue&type=template&id=24fe7eff&scoped=true&":
+/*!********************************************************************************************!*\
+ !*** ./apps/files/src/components/FileEntry.vue?vue&type=template&id=24fe7eff&scoped=true& ***!
+ \********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_template_id_24fe7eff_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_template_id_24fe7eff_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_template_id_24fe7eff_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=template&id=24fe7eff&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=template&id=24fe7eff&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListHeader.vue?vue&type=template&id=4db1368b&":
+/*!**************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListHeader.vue?vue&type=template&id=4db1368b& ***!
+ \**************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListHeader_vue_vue_type_template_id_4db1368b___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListHeader_vue_vue_type_template_id_4db1368b___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListHeader_vue_vue_type_template_id_4db1368b___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=template&id=4db1368b& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListHeader.vue?vue&type=template&id=4db1368b&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableFooter.vue?vue&type=template&id=29c3a0fb&scoped=true&":
+/*!*******************************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableFooter.vue?vue&type=template&id=29c3a0fb&scoped=true& ***!
+ \*******************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableFooter_vue_vue_type_template_id_29c3a0fb_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableFooter_vue_vue_type_template_id_29c3a0fb_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableFooter_vue_vue_type_template_id_29c3a0fb_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=template&id=29c3a0fb&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableFooter.vue?vue&type=template&id=29c3a0fb&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeader.vue?vue&type=template&id=4af604ed&scoped=true&":
+/*!*******************************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeader.vue?vue&type=template&id=4af604ed&scoped=true& ***!
+ \*******************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeader_vue_vue_type_template_id_4af604ed_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeader_vue_vue_type_template_id_4af604ed_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeader_vue_vue_type_template_id_4af604ed_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=template&id=4af604ed&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeader.vue?vue&type=template&id=4af604ed&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=template&id=25a39e00&scoped=true&":
+/*!**************************************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=template&id=25a39e00&scoped=true& ***!
+ \**************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeaderActions_vue_vue_type_template_id_25a39e00_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeaderActions_vue_vue_type_template_id_25a39e00_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeaderActions_vue_vue_type_template_id_25a39e00_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=template&id=25a39e00&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=template&id=25a39e00&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=template&id=432b4b7f&":
+/*!*************************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=template&id=432b4b7f& ***!
+ \*************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeaderButton_vue_vue_type_template_id_432b4b7f___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeaderButton_vue_vue_type_template_id_432b4b7f___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListTableHeaderButton_vue_vue_type_template_id_432b4b7f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=template&id=432b4b7f& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=template&id=432b4b7f&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListVirtual.vue?vue&type=template&id=2d34be06&scoped=true&":
+/*!***************************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListVirtual.vue?vue&type=template&id=2d34be06&scoped=true& ***!
+ \***************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListVirtual_vue_vue_type_template_id_2d34be06_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListVirtual_vue_vue_type_template_id_2d34be06_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesListVirtual_vue_vue_type_template_id_2d34be06_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=template&id=2d34be06&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FilesListVirtual.vue?vue&type=template&id=2d34be06&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/NavigationQuota.vue?vue&type=template&id=6f96f0a6&scoped=true&":
+/*!**************************************************************************************************!*\
+ !*** ./apps/files/src/components/NavigationQuota.vue?vue&type=template&id=6f96f0a6&scoped=true& ***!
+ \**************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_NavigationQuota_vue_vue_type_template_id_6f96f0a6_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_NavigationQuota_vue_vue_type_template_id_6f96f0a6_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_NavigationQuota_vue_vue_type_template_id_6f96f0a6_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=template&id=6f96f0a6&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/NavigationQuota.vue?vue&type=template&id=6f96f0a6&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/Setting.vue?vue&type=template&id=a0773f8e&":
+/*!******************************************************************************!*\
+ !*** ./apps/files/src/components/Setting.vue?vue&type=template&id=a0773f8e& ***!
+ \******************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Setting_vue_vue_type_template_id_a0773f8e___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Setting_vue_vue_type_template_id_a0773f8e___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Setting_vue_vue_type_template_id_a0773f8e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=template&id=a0773f8e& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/Setting.vue?vue&type=template&id=a0773f8e&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/TemplatePreview.vue?vue&type=template&id=14e703d7&scoped=true&":
+/*!**************************************************************************************************!*\
+ !*** ./apps/files/src/components/TemplatePreview.vue?vue&type=template&id=14e703d7&scoped=true& ***!
+ \**************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_TemplatePreview_vue_vue_type_template_id_14e703d7_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_TemplatePreview_vue_vue_type_template_id_14e703d7_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_TemplatePreview_vue_vue_type_template_id_14e703d7_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePreview.vue?vue&type=template&id=14e703d7&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/TemplatePreview.vue?vue&type=template&id=14e703d7&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/VirtualList.vue?vue&type=template&id=24416332&scoped=true&":
+/*!**********************************************************************************************!*\
+ !*** ./apps/files/src/components/VirtualList.vue?vue&type=template&id=24416332&scoped=true& ***!
+ \**********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualList_vue_vue_type_template_id_24416332_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualList_vue_vue_type_template_id_24416332_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_VirtualList_vue_vue_type_template_id_24416332_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=template&id=24416332&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/VirtualList.vue?vue&type=template&id=24416332&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/views/FilesList.vue?vue&type=template&id=02e51922&scoped=true&":
+/*!***************************************************************************************!*\
+ !*** ./apps/files/src/views/FilesList.vue?vue&type=template&id=02e51922&scoped=true& ***!
+ \***************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesList_vue_vue_type_template_id_02e51922_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesList_vue_vue_type_template_id_02e51922_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_FilesList_vue_vue_type_template_id_02e51922_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=template&id=02e51922&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/FilesList.vue?vue&type=template&id=02e51922&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/views/Navigation.vue?vue&type=template&id=a8628012&scoped=true&":
+/*!****************************************************************************************!*\
+ !*** ./apps/files/src/views/Navigation.vue?vue&type=template&id=a8628012&scoped=true& ***!
+ \****************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Navigation_vue_vue_type_template_id_a8628012_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Navigation_vue_vue_type_template_id_a8628012_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Navigation_vue_vue_type_template_id_a8628012_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=template&id=a8628012&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Navigation.vue?vue&type=template&id=a8628012&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/views/Settings.vue?vue&type=template&id=de32ad74&scoped=true&":
+/*!**************************************************************************************!*\
+ !*** ./apps/files/src/views/Settings.vue?vue&type=template&id=de32ad74&scoped=true& ***!
+ \**************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Settings_vue_vue_type_template_id_de32ad74_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Settings_vue_vue_type_template_id_de32ad74_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Settings_vue_vue_type_template_id_de32ad74_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=template&id=de32ad74&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/Settings.vue?vue&type=template&id=de32ad74&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/views/TemplatePicker.vue?vue&type=template&id=70b9a7ea&scoped=true&":
+/*!********************************************************************************************!*\
+ !*** ./apps/files/src/views/TemplatePicker.vue?vue&type=template&id=70b9a7ea&scoped=true& ***!
+ \********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_TemplatePicker_vue_vue_type_template_id_70b9a7ea_scoped_true___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_TemplatePicker_vue_vue_type_template_id_70b9a7ea_scoped_true___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_lib_index_js_vue_loader_options_TemplatePicker_vue_vue_type_template_id_70b9a7ea_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplatePicker.vue?vue&type=template&id=70b9a7ea&scoped=true& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/views/TemplatePicker.vue?vue&type=template&id=70b9a7ea&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true&":
+/*!*************************************************************************************************************!*\
+ !*** ./apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true& ***!
+ \*************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_BreadCrumbs_vue_vue_type_style_index_0_id_9f0aa34e_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=9f0aa34e&lang=scss&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true&":
+/*!*********************************************************************************************************************!*\
+ !*** ./apps/files/src/components/CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true& ***!
+ \*********************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_CustomSvgIconRender_vue_vue_type_style_index_0_id_6c70146b_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/CustomSvgIconRender.vue?vue&type=style&index=0&id=6c70146b&lang=scss&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true&":
+/*!**************************************************************************************************************!*\
+ !*** ./apps/files/src/components/FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true& ***!
+ \**************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FavoriteIcon_vue_vue_type_style_index_0_id_8f8f00c8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FavoriteIcon.vue?vue&type=style&index=0&id=8f8f00c8&lang=scss&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss&":
+/*!***********************************************************************************************************!*\
+ !*** ./apps/files/src/components/FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss& ***!
+ \***********************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FileEntry_vue_vue_type_style_index_0_id_24fe7eff_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FileEntry.vue?vue&type=style&index=0&id=24fe7eff&scoped=true&lang=scss&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss&":
+/*!**********************************************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss& ***!
+ \**********************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FilesListTableFooter_vue_vue_type_style_index_0_id_29c3a0fb_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=29c3a0fb&scoped=true&lang=scss&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss&":
+/*!**********************************************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss& ***!
+ \**********************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FilesListTableHeader_vue_vue_type_style_index_0_id_4af604ed_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=4af604ed&scoped=true&lang=scss&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss&":
+/*!*****************************************************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss& ***!
+ \*****************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FilesListTableHeaderActions_vue_vue_type_style_index_0_id_25a39e00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=25a39e00&scoped=true&lang=scss&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss&":
+/*!****************************************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss& ***!
+ \****************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FilesListTableHeaderButton_vue_vue_type_style_index_0_id_432b4b7f_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=432b4b7f&lang=scss&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss&":
+/*!******************************************************************************************************************!*\
+ !*** ./apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss& ***!
+ \******************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FilesListVirtual_vue_vue_type_style_index_0_id_2d34be06_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=2d34be06&scoped=true&lang=scss&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true&":
+/*!*****************************************************************************************************************!*\
+ !*** ./apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true& ***!
+ \*****************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_NavigationQuota_vue_vue_type_style_index_0_id_6f96f0a6_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=6f96f0a6&lang=scss&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true&":
+/*!*****************************************************************************************************************!*\
+ !*** ./apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true& ***!
+ \*****************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_TemplatePreview_vue_vue_type_style_index_0_id_14e703d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/components/TemplatePreview.vue?vue&type=style&index=0&id=14e703d7&lang=scss&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss&":
+/*!******************************************************************************************************!*\
+ !*** ./apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss& ***!
+ \******************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_FilesList_vue_vue_type_style_index_0_id_02e51922_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=02e51922&scoped=true&lang=scss&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss&":
+/*!*******************************************************************************************************!*\
+ !*** ./apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss& ***!
+ \*******************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_Navigation_vue_vue_type_style_index_0_id_a8628012_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=a8628012&scoped=true&lang=scss&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/views/Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true&":
+/*!*****************************************************************************************************!*\
+ !*** ./apps/files/src/views/Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true& ***!
+ \*****************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_Settings_vue_vue_type_style_index_0_id_de32ad74_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/Settings.vue?vue&type=style&index=0&id=de32ad74&lang=scss&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true&":
+/*!***********************************************************************************************************!*\
+ !*** ./apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true& ***!
+ \***********************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_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_TemplatePicker_vue_vue_type_style_index_0_id_70b9a7ea_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../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!./TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true& */ "./node_modules/style-loader/dist/cjs.js!./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!./apps/files/src/views/TemplatePicker.vue?vue&type=style&index=0&id=70b9a7ea&lang=scss&scoped=true&");
+
+
+/***/ }),
+
+/***/ "./apps/files/src/components/FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css&":
+/*!**********************************************************************************************!*\
+ !*** ./apps/files/src/components/FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css& ***!
+ \**********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileEntry_vue_vue_type_style_index_1_id_24fe7eff_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css& */ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./apps/files/src/components/FileEntry.vue?vue&type=style&index=1&id=24fe7eff&lang=css&");
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js&":
+/*!**************************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js& ***!
+ \**************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_ChartPie_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_vue_loader_lib_index_js_vue_loader_options_ChartPie_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=script&lang=js&":
+/*!***************************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=script&lang=js& ***!
+ \***************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_Clipboard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./Clipboard.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_vue_loader_lib_index_js_vue_loader_options_Clipboard_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js&":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js& ***!
+ \**********************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_File_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_vue_loader_lib_index_js_vue_loader_options_File_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/Home.vue?vue&type=script&lang=js&":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/Home.vue?vue&type=script&lang=js& ***!
+ \**********************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_Home_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Home.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_vue_loader_lib_index_js_vue_loader_options_Home_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=script&lang=js&":
+/*!**************************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=script&lang=js& ***!
+ \**************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_MenuDown_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./MenuDown.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_vue_loader_lib_index_js_vue_loader_options_MenuDown_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=script&lang=js&":
+/*!************************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=script&lang=js& ***!
+ \************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _vue_loader_lib_index_js_vue_loader_options_MenuUp_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/index.js??vue-loader-options!./MenuUp.vue?vue&type=script&lang=js& */ "./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=script&lang=js&");
+ /* harmony default export */ __webpack_exports__["default"] = (_vue_loader_lib_index_js_vue_loader_options_MenuUp_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=6a3f71fa&":
+/*!********************************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=6a3f71fa& ***!
+ \********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_ChartPie_vue_vue_type_template_id_6a3f71fa___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_ChartPie_vue_vue_type_template_id_6a3f71fa___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_ChartPie_vue_vue_type_template_id_6a3f71fa___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=template&id=6a3f71fa& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=6a3f71fa&");
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=template&id=54521e1a&":
+/*!*********************************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=template&id=54521e1a& ***!
+ \*********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_Clipboard_vue_vue_type_template_id_54521e1a___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_Clipboard_vue_vue_type_template_id_54521e1a___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_Clipboard_vue_vue_type_template_id_54521e1a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../vue-loader/lib/index.js??vue-loader-options!./Clipboard.vue?vue&type=template&id=54521e1a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=template&id=54521e1a&");
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/File.vue?vue&type=template&id=5b1c5da8&":
+/*!****************************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/File.vue?vue&type=template&id=5b1c5da8& ***!
+ \****************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_File_vue_vue_type_template_id_5b1c5da8___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_File_vue_vue_type_template_id_5b1c5da8___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_File_vue_vue_type_template_id_5b1c5da8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=template&id=5b1c5da8& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/File.vue?vue&type=template&id=5b1c5da8&");
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/Home.vue?vue&type=template&id=69f8f38b&":
+/*!****************************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/Home.vue?vue&type=template&id=69f8f38b& ***!
+ \****************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_Home_vue_vue_type_template_id_69f8f38b___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_Home_vue_vue_type_template_id_69f8f38b___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_Home_vue_vue_type_template_id_69f8f38b___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=template&id=69f8f38b& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Home.vue?vue&type=template&id=69f8f38b&");
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=template&id=23154a4d&":
+/*!********************************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=template&id=23154a4d& ***!
+ \********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_MenuDown_vue_vue_type_template_id_23154a4d___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_MenuDown_vue_vue_type_template_id_23154a4d___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_MenuDown_vue_vue_type_template_id_23154a4d___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../vue-loader/lib/index.js??vue-loader-options!./MenuDown.vue?vue&type=template&id=23154a4d& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=template&id=23154a4d&");
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=template&id=7aab0ef4&":
+/*!******************************************************************************************!*\
+ !*** ./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=template&id=7aab0ef4& ***!
+ \******************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_MenuUp_vue_vue_type_template_id_7aab0ef4___WEBPACK_IMPORTED_MODULE_0__.render; },
+/* harmony export */ staticRenderFns: function() { return /* reexport safe */ _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_MenuUp_vue_vue_type_template_id_7aab0ef4___WEBPACK_IMPORTED_MODULE_0__.staticRenderFns; }
+/* harmony export */ });
+/* harmony import */ var _vue_loader_lib_loaders_templateLoader_js_ruleSet_1_rules_3_vue_loader_lib_index_js_vue_loader_options_MenuUp_vue_vue_type_template_id_7aab0ef4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!../vue-loader/lib/index.js??vue-loader-options!./MenuUp.vue?vue&type=template&id=7aab0ef4& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=template&id=7aab0ef4&");
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=6a3f71fa&":
+/*!************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=6a3f71fa& ***!
+ \************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c
+ return _c(
+ "span",
+ _vm._b(
+ {
+ staticClass: "material-design-icon chart-pie-icon",
+ attrs: {
+ "aria-hidden": !_vm.title,
+ "aria-label": _vm.title,
+ role: "img",
+ },
+ on: {
+ click: function ($event) {
+ return _vm.$emit("click", $event)
+ },
+ },
+ },
+ "span",
+ _vm.$attrs,
+ false
+ ),
+ [
+ _c(
+ "svg",
+ {
+ staticClass: "material-design-icon__svg",
+ attrs: {
+ fill: _vm.fillColor,
+ width: _vm.size,
+ height: _vm.size,
+ viewBox: "0 0 24 24",
+ },
+ },
+ [
+ _c(
+ "path",
+ {
+ attrs: {
+ d: "M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z",
+ },
+ },
+ [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]
+ ),
+ ]
+ ),
+ ]
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=template&id=54521e1a&":
+/*!*************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Clipboard.vue?vue&type=template&id=54521e1a& ***!
+ \*************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c
+ return _c(
+ "span",
+ _vm._b(
+ {
+ staticClass: "material-design-icon clipboard-icon",
+ attrs: {
+ "aria-hidden": !_vm.title,
+ "aria-label": _vm.title,
+ role: "img",
+ },
+ on: {
+ click: function ($event) {
+ return _vm.$emit("click", $event)
+ },
+ },
+ },
+ "span",
+ _vm.$attrs,
+ false
+ ),
+ [
+ _c(
+ "svg",
+ {
+ staticClass: "material-design-icon__svg",
+ attrs: {
+ fill: _vm.fillColor,
+ width: _vm.size,
+ height: _vm.size,
+ viewBox: "0 0 24 24",
+ },
+ },
+ [
+ _c(
+ "path",
+ {
+ attrs: {
+ d: "M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3",
+ },
+ },
+ [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]
+ ),
+ ]
+ ),
+ ]
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/File.vue?vue&type=template&id=5b1c5da8&":
+/*!********************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/File.vue?vue&type=template&id=5b1c5da8& ***!
+ \********************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c
+ return _c(
+ "span",
+ _vm._b(
+ {
+ staticClass: "material-design-icon file-icon",
+ attrs: {
+ "aria-hidden": !_vm.title,
+ "aria-label": _vm.title,
+ role: "img",
+ },
+ on: {
+ click: function ($event) {
+ return _vm.$emit("click", $event)
+ },
+ },
+ },
+ "span",
+ _vm.$attrs,
+ false
+ ),
+ [
+ _c(
+ "svg",
+ {
+ staticClass: "material-design-icon__svg",
+ attrs: {
+ fill: _vm.fillColor,
+ width: _vm.size,
+ height: _vm.size,
+ viewBox: "0 0 24 24",
+ },
+ },
+ [
+ _c(
+ "path",
+ {
+ attrs: {
+ d: "M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z",
+ },
+ },
+ [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]
+ ),
+ ]
+ ),
+ ]
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Home.vue?vue&type=template&id=69f8f38b&":
+/*!********************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/Home.vue?vue&type=template&id=69f8f38b& ***!
+ \********************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c
+ return _c(
+ "span",
+ _vm._b(
+ {
+ staticClass: "material-design-icon home-icon",
+ attrs: {
+ "aria-hidden": !_vm.title,
+ "aria-label": _vm.title,
+ role: "img",
+ },
+ on: {
+ click: function ($event) {
+ return _vm.$emit("click", $event)
+ },
+ },
+ },
+ "span",
+ _vm.$attrs,
+ false
+ ),
+ [
+ _c(
+ "svg",
+ {
+ staticClass: "material-design-icon__svg",
+ attrs: {
+ fill: _vm.fillColor,
+ width: _vm.size,
+ height: _vm.size,
+ viewBox: "0 0 24 24",
+ },
+ },
+ [
+ _c(
+ "path",
+ { attrs: { d: "M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z" } },
+ [_vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e()]
+ ),
+ ]
+ ),
+ ]
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=template&id=23154a4d&":
+/*!************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuDown.vue?vue&type=template&id=23154a4d& ***!
+ \************************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c
+ return _c(
+ "span",
+ _vm._b(
+ {
+ staticClass: "material-design-icon menu-down-icon",
+ attrs: {
+ "aria-hidden": !_vm.title,
+ "aria-label": _vm.title,
+ role: "img",
+ },
+ on: {
+ click: function ($event) {
+ return _vm.$emit("click", $event)
+ },
+ },
+ },
+ "span",
+ _vm.$attrs,
+ false
+ ),
+ [
+ _c(
+ "svg",
+ {
+ staticClass: "material-design-icon__svg",
+ attrs: {
+ fill: _vm.fillColor,
+ width: _vm.size,
+ height: _vm.size,
+ viewBox: "0 0 24 24",
+ },
+ },
+ [
+ _c("path", { attrs: { d: "M7,10L12,15L17,10H7Z" } }, [
+ _vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e(),
+ ]),
+ ]
+ ),
+ ]
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=template&id=7aab0ef4&":
+/*!**********************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./node_modules/vue-material-design-icons/MenuUp.vue?vue&type=template&id=7aab0ef4& ***!
+ \**********************************************************************************************************************************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ render: function() { return /* binding */ render; },
+/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }
+/* harmony export */ });
+var render = function render() {
+ var _vm = this,
+ _c = _vm._self._c
+ return _c(
+ "span",
+ _vm._b(
+ {
+ staticClass: "material-design-icon menu-up-icon",
+ attrs: {
+ "aria-hidden": !_vm.title,
+ "aria-label": _vm.title,
+ role: "img",
+ },
+ on: {
+ click: function ($event) {
+ return _vm.$emit("click", $event)
+ },
+ },
+ },
+ "span",
+ _vm.$attrs,
+ false
+ ),
+ [
+ _c(
+ "svg",
+ {
+ staticClass: "material-design-icon__svg",
+ attrs: {
+ fill: _vm.fillColor,
+ width: _vm.size,
+ height: _vm.size,
+ viewBox: "0 0 24 24",
+ },
+ },
+ [
+ _c("path", { attrs: { d: "M7,15L12,10L17,15H7Z" } }, [
+ _vm.title ? _c("title", [_vm._v(_vm._s(_vm.title))]) : _vm._e(),
+ ]),
+ ]
+ ),
+ ]
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-router/dist/vue-router.esm.js":
+/*!********************************************************!*\
+ !*** ./node_modules/vue-router/dist/vue-router.esm.js ***!
+ \********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ NavigationFailureType: function() { return /* binding */ NavigationFailureType; },
+/* harmony export */ RouterLink: function() { return /* binding */ Link; },
+/* harmony export */ RouterView: function() { return /* binding */ View; },
+/* harmony export */ START_LOCATION: function() { return /* binding */ START; },
+/* harmony export */ "default": function() { return /* binding */ VueRouter$1; },
+/* harmony export */ isNavigationFailure: function() { return /* binding */ isNavigationFailure; },
+/* harmony export */ version: function() { return /* binding */ version; }
+/* harmony export */ });
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+/*!
+ * vue-router v3.6.5
+ * (c) 2022 Evan You
+ * @license MIT
+ */
+/* */
+
+function assert (condition, message) {
+ if (!condition) {
+ throw new Error(("[vue-router] " + message))
+ }
+}
+
+function warn (condition, message) {
+ if (!condition) {
+ typeof console !== 'undefined' && console.warn(("[vue-router] " + message));
+ }
+}
+
+function extend (a, b) {
+ for (var key in b) {
+ a[key] = b[key];
+ }
+ return a
+}
+
+/* */
+
+var encodeReserveRE = /[!'()*]/g;
+var encodeReserveReplacer = function (c) { return '%' + c.charCodeAt(0).toString(16); };
+var commaRE = /%2C/g;
+
+// fixed encodeURIComponent which is more conformant to RFC3986:
+// - escapes [!'()*]
+// - preserve commas
+var encode = function (str) { return encodeURIComponent(str)
+ .replace(encodeReserveRE, encodeReserveReplacer)
+ .replace(commaRE, ','); };
+
+function decode (str) {
+ try {
+ return decodeURIComponent(str)
+ } catch (err) {
+ if (true) {
+ warn(false, ("Error decoding \"" + str + "\". Leaving it intact."));
+ }
+ }
+ return str
+}
+
+function resolveQuery (
+ query,
+ extraQuery,
+ _parseQuery
+) {
+ if ( extraQuery === void 0 ) extraQuery = {};
+
+ var parse = _parseQuery || parseQuery;
+ var parsedQuery;
+ try {
+ parsedQuery = parse(query || '');
+ } catch (e) {
+ true && warn(false, e.message);
+ parsedQuery = {};
+ }
+ for (var key in extraQuery) {
+ var value = extraQuery[key];
+ parsedQuery[key] = Array.isArray(value)
+ ? value.map(castQueryParamValue)
+ : castQueryParamValue(value);
+ }
+ return parsedQuery
+}
+
+var castQueryParamValue = function (value) { return (value == null || typeof value === 'object' ? value : String(value)); };
+
+function parseQuery (query) {
+ var res = {};
+
+ query = query.trim().replace(/^(\?|#|&)/, '');
+
+ if (!query) {
+ return res
+ }
+
+ query.split('&').forEach(function (param) {
+ var parts = param.replace(/\+/g, ' ').split('=');
+ var key = decode(parts.shift());
+ var val = parts.length > 0 ? decode(parts.join('=')) : null;
+
+ if (res[key] === undefined) {
+ res[key] = val;
+ } else if (Array.isArray(res[key])) {
+ res[key].push(val);
+ } else {
+ res[key] = [res[key], val];
+ }
+ });
+
+ return res
+}
+
+function stringifyQuery (obj) {
+ var res = obj
+ ? Object.keys(obj)
+ .map(function (key) {
+ var val = obj[key];
+
+ if (val === undefined) {
+ return ''
+ }
+
+ if (val === null) {
+ return encode(key)
+ }
+
+ if (Array.isArray(val)) {
+ var result = [];
+ val.forEach(function (val2) {
+ if (val2 === undefined) {
+ return
+ }
+ if (val2 === null) {
+ result.push(encode(key));
+ } else {
+ result.push(encode(key) + '=' + encode(val2));
+ }
+ });
+ return result.join('&')
+ }
+
+ return encode(key) + '=' + encode(val)
+ })
+ .filter(function (x) { return x.length > 0; })
+ .join('&')
+ : null;
+ return res ? ("?" + res) : ''
+}
+
+/* */
+
+var trailingSlashRE = /\/?$/;
+
+function createRoute (
+ record,
+ location,
+ redirectedFrom,
+ router
+) {
+ var stringifyQuery = router && router.options.stringifyQuery;
+
+ var query = location.query || {};
+ try {
+ query = clone(query);
+ } catch (e) {}
+
+ var route = {
+ name: location.name || (record && record.name),
+ meta: (record && record.meta) || {},
+ path: location.path || '/',
+ hash: location.hash || '',
+ query: query,
+ params: location.params || {},
+ fullPath: getFullPath(location, stringifyQuery),
+ matched: record ? formatMatch(record) : []
+ };
+ if (redirectedFrom) {
+ route.redirectedFrom = getFullPath(redirectedFrom, stringifyQuery);
+ }
+ return Object.freeze(route)
+}
+
+function clone (value) {
+ if (Array.isArray(value)) {
+ return value.map(clone)
+ } else if (value && typeof value === 'object') {
+ var res = {};
+ for (var key in value) {
+ res[key] = clone(value[key]);
+ }
+ return res
+ } else {
+ return value
+ }
+}
+
+// the starting route that represents the initial state
+var START = createRoute(null, {
+ path: '/'
+});
+
+function formatMatch (record) {
+ var res = [];
+ while (record) {
+ res.unshift(record);
+ record = record.parent;
+ }
+ return res
+}
+
+function getFullPath (
+ ref,
+ _stringifyQuery
+) {
+ var path = ref.path;
+ var query = ref.query; if ( query === void 0 ) query = {};
+ var hash = ref.hash; if ( hash === void 0 ) hash = '';
+
+ var stringify = _stringifyQuery || stringifyQuery;
+ return (path || '/') + stringify(query) + hash
+}
+
+function isSameRoute (a, b, onlyPath) {
+ if (b === START) {
+ return a === b
+ } else if (!b) {
+ return false
+ } else if (a.path && b.path) {
+ return a.path.replace(trailingSlashRE, '') === b.path.replace(trailingSlashRE, '') && (onlyPath ||
+ a.hash === b.hash &&
+ isObjectEqual(a.query, b.query))
+ } else if (a.name && b.name) {
+ return (
+ a.name === b.name &&
+ (onlyPath || (
+ a.hash === b.hash &&
+ isObjectEqual(a.query, b.query) &&
+ isObjectEqual(a.params, b.params))
+ )
+ )
+ } else {
+ return false
+ }
+}
+
+function isObjectEqual (a, b) {
+ if ( a === void 0 ) a = {};
+ if ( b === void 0 ) b = {};
+
+ // handle null value #1566
+ if (!a || !b) { return a === b }
+ var aKeys = Object.keys(a).sort();
+ var bKeys = Object.keys(b).sort();
+ if (aKeys.length !== bKeys.length) {
+ return false
+ }
+ return aKeys.every(function (key, i) {
+ var aVal = a[key];
+ var bKey = bKeys[i];
+ if (bKey !== key) { return false }
+ var bVal = b[key];
+ // query values can be null and undefined
+ if (aVal == null || bVal == null) { return aVal === bVal }
+ // check nested equality
+ if (typeof aVal === 'object' && typeof bVal === 'object') {
+ return isObjectEqual(aVal, bVal)
+ }
+ return String(aVal) === String(bVal)
+ })
+}
+
+function isIncludedRoute (current, target) {
+ return (
+ current.path.replace(trailingSlashRE, '/').indexOf(
+ target.path.replace(trailingSlashRE, '/')
+ ) === 0 &&
+ (!target.hash || current.hash === target.hash) &&
+ queryIncludes(current.query, target.query)
+ )
+}
+
+function queryIncludes (current, target) {
+ for (var key in target) {
+ if (!(key in current)) {
+ return false
+ }
+ }
+ return true
+}
+
+function handleRouteEntered (route) {
+ for (var i = 0; i < route.matched.length; i++) {
+ var record = route.matched[i];
+ for (var name in record.instances) {
+ var instance = record.instances[name];
+ var cbs = record.enteredCbs[name];
+ if (!instance || !cbs) { continue }
+ delete record.enteredCbs[name];
+ for (var i$1 = 0; i$1 < cbs.length; i$1++) {
+ if (!instance._isBeingDestroyed) { cbs[i$1](instance); }
+ }
+ }
+ }
+}
+
+var View = {
+ name: 'RouterView',
+ functional: true,
+ props: {
+ name: {
+ type: String,
+ default: 'default'
+ }
+ },
+ render: function render (_, ref) {
+ var props = ref.props;
+ var children = ref.children;
+ var parent = ref.parent;
+ var data = ref.data;
+
+ // used by devtools to display a router-view badge
+ data.routerView = true;
+
+ // directly use parent context's createElement() function
+ // so that components rendered by router-view can resolve named slots
+ var h = parent.$createElement;
+ var name = props.name;
+ var route = parent.$route;
+ var cache = parent._routerViewCache || (parent._routerViewCache = {});
+
+ // determine current view depth, also check to see if the tree
+ // has been toggled inactive but kept-alive.
+ var depth = 0;
+ var inactive = false;
+ while (parent && parent._routerRoot !== parent) {
+ var vnodeData = parent.$vnode ? parent.$vnode.data : {};
+ if (vnodeData.routerView) {
+ depth++;
+ }
+ if (vnodeData.keepAlive && parent._directInactive && parent._inactive) {
+ inactive = true;
+ }
+ parent = parent.$parent;
+ }
+ data.routerViewDepth = depth;
+
+ // render previous view if the tree is inactive and kept-alive
+ if (inactive) {
+ var cachedData = cache[name];
+ var cachedComponent = cachedData && cachedData.component;
+ if (cachedComponent) {
+ // #2301
+ // pass props
+ if (cachedData.configProps) {
+ fillPropsinData(cachedComponent, data, cachedData.route, cachedData.configProps);
+ }
+ return h(cachedComponent, data, children)
+ } else {
+ // render previous empty view
+ return h()
+ }
+ }
+
+ var matched = route.matched[depth];
+ var component = matched && matched.components[name];
+
+ // render empty node if no matched route or no config component
+ if (!matched || !component) {
+ cache[name] = null;
+ return h()
+ }
+
+ // cache component
+ cache[name] = { component: component };
+
+ // attach instance registration hook
+ // this will be called in the instance's injected lifecycle hooks
+ data.registerRouteInstance = function (vm, val) {
+ // val could be undefined for unregistration
+ var current = matched.instances[name];
+ if (
+ (val && current !== vm) ||
+ (!val && current === vm)
+ ) {
+ matched.instances[name] = val;
+ }
+ }
+
+ // also register instance in prepatch hook
+ // in case the same component instance is reused across different routes
+ ;(data.hook || (data.hook = {})).prepatch = function (_, vnode) {
+ matched.instances[name] = vnode.componentInstance;
+ };
+
+ // register instance in init hook
+ // in case kept-alive component be actived when routes changed
+ data.hook.init = function (vnode) {
+ if (vnode.data.keepAlive &&
+ vnode.componentInstance &&
+ vnode.componentInstance !== matched.instances[name]
+ ) {
+ matched.instances[name] = vnode.componentInstance;
+ }
+
+ // if the route transition has already been confirmed then we weren't
+ // able to call the cbs during confirmation as the component was not
+ // registered yet, so we call it here.
+ handleRouteEntered(route);
+ };
+
+ var configProps = matched.props && matched.props[name];
+ // save route and configProps in cache
+ if (configProps) {
+ extend(cache[name], {
+ route: route,
+ configProps: configProps
+ });
+ fillPropsinData(component, data, route, configProps);
+ }
+
+ return h(component, data, children)
+ }
+};
+
+function fillPropsinData (component, data, route, configProps) {
+ // resolve props
+ var propsToPass = data.props = resolveProps(route, configProps);
+ if (propsToPass) {
+ // clone to prevent mutation
+ propsToPass = data.props = extend({}, propsToPass);
+ // pass non-declared props as attrs
+ var attrs = data.attrs = data.attrs || {};
+ for (var key in propsToPass) {
+ if (!component.props || !(key in component.props)) {
+ attrs[key] = propsToPass[key];
+ delete propsToPass[key];
+ }
+ }
+ }
+}
+
+function resolveProps (route, config) {
+ switch (typeof config) {
+ case 'undefined':
+ return
+ case 'object':
+ return config
+ case 'function':
+ return config(route)
+ case 'boolean':
+ return config ? route.params : undefined
+ default:
+ if (true) {
+ warn(
+ false,
+ "props in \"" + (route.path) + "\" is a " + (typeof config) + ", " +
+ "expecting an object, function or boolean."
+ );
+ }
+ }
+}
+
+/* */
+
+function resolvePath (
+ relative,
+ base,
+ append
+) {
+ var firstChar = relative.charAt(0);
+ if (firstChar === '/') {
+ return relative
+ }
+
+ if (firstChar === '?' || firstChar === '#') {
+ return base + relative
+ }
+
+ var stack = base.split('/');
+
+ // remove trailing segment if:
+ // - not appending
+ // - appending to trailing slash (last segment is empty)
+ if (!append || !stack[stack.length - 1]) {
+ stack.pop();
+ }
+
+ // resolve relative path
+ var segments = relative.replace(/^\//, '').split('/');
+ for (var i = 0; i < segments.length; i++) {
+ var segment = segments[i];
+ if (segment === '..') {
+ stack.pop();
+ } else if (segment !== '.') {
+ stack.push(segment);
+ }
+ }
+
+ // ensure leading slash
+ if (stack[0] !== '') {
+ stack.unshift('');
+ }
+
+ return stack.join('/')
+}
+
+function parsePath (path) {
+ var hash = '';
+ var query = '';
+
+ var hashIndex = path.indexOf('#');
+ if (hashIndex >= 0) {
+ hash = path.slice(hashIndex);
+ path = path.slice(0, hashIndex);
+ }
+
+ var queryIndex = path.indexOf('?');
+ if (queryIndex >= 0) {
+ query = path.slice(queryIndex + 1);
+ path = path.slice(0, queryIndex);
+ }
+
+ return {
+ path: path,
+ query: query,
+ hash: hash
+ }
+}
+
+function cleanPath (path) {
+ return path.replace(/\/(?:\s*\/)+/g, '/')
+}
+
+var isarray = Array.isArray || function (arr) {
+ return Object.prototype.toString.call(arr) == '[object Array]';
+};
+
+/**
+ * Expose `pathToRegexp`.
+ */
+var pathToRegexp_1 = pathToRegexp;
+var parse_1 = parse;
+var compile_1 = compile;
+var tokensToFunction_1 = tokensToFunction;
+var tokensToRegExp_1 = tokensToRegExp;
+
+/**
+ * The main path matching regexp utility.
+ *
+ * @type {RegExp}
+ */
+var PATH_REGEXP = new RegExp([
+ // Match escaped characters that would otherwise appear in future matches.
+ // This allows the user to escape special characters that won't transform.
+ '(\\\\.)',
+ // Match Express-style parameters and un-named parameters with a prefix
+ // and optional suffixes. Matches appear as:
+ //
+ // "/:test(\\d+)?" => ["/", "test", "\d+", undefined, "?", undefined]
+ // "/route(\\d+)" => [undefined, undefined, undefined, "\d+", undefined, undefined]
+ // "/*" => ["/", undefined, undefined, undefined, undefined, "*"]
+ '([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))'
+].join('|'), 'g');
+
+/**
+ * Parse a string for the raw tokens.
+ *
+ * @param {string} str
+ * @param {Object=} options
+ * @return {!Array}
+ */
+function parse (str, options) {
+ var tokens = [];
+ var key = 0;
+ var index = 0;
+ var path = '';
+ var defaultDelimiter = options && options.delimiter || '/';
+ var res;
+
+ while ((res = PATH_REGEXP.exec(str)) != null) {
+ var m = res[0];
+ var escaped = res[1];
+ var offset = res.index;
+ path += str.slice(index, offset);
+ index = offset + m.length;
+
+ // Ignore already escaped sequences.
+ if (escaped) {
+ path += escaped[1];
+ continue
+ }
+
+ var next = str[index];
+ var prefix = res[2];
+ var name = res[3];
+ var capture = res[4];
+ var group = res[5];
+ var modifier = res[6];
+ var asterisk = res[7];
+
+ // Push the current path onto the tokens.
+ if (path) {
+ tokens.push(path);
+ path = '';
+ }
+
+ var partial = prefix != null && next != null && next !== prefix;
+ var repeat = modifier === '+' || modifier === '*';
+ var optional = modifier === '?' || modifier === '*';
+ var delimiter = res[2] || defaultDelimiter;
+ var pattern = capture || group;
+
+ tokens.push({
+ name: name || key++,
+ prefix: prefix || '',
+ delimiter: delimiter,
+ optional: optional,
+ repeat: repeat,
+ partial: partial,
+ asterisk: !!asterisk,
+ pattern: pattern ? escapeGroup(pattern) : (asterisk ? '.*' : '[^' + escapeString(delimiter) + ']+?')
+ });
+ }
+
+ // Match any characters still remaining.
+ if (index < str.length) {
+ path += str.substr(index);
+ }
+
+ // If the path exists, push it onto the end.
+ if (path) {
+ tokens.push(path);
+ }
+
+ return tokens
+}
+
+/**
+ * Compile a string to a template function for the path.
+ *
+ * @param {string} str
+ * @param {Object=} options
+ * @return {!function(Object=, Object=)}
+ */
+function compile (str, options) {
+ return tokensToFunction(parse(str, options), options)
+}
+
+/**
+ * Prettier encoding of URI path segments.
+ *
+ * @param {string}
+ * @return {string}
+ */
+function encodeURIComponentPretty (str) {
+ return encodeURI(str).replace(/[\/?#]/g, function (c) {
+ return '%' + c.charCodeAt(0).toString(16).toUpperCase()
+ })
+}
+
+/**
+ * Encode the asterisk parameter. Similar to `pretty`, but allows slashes.
+ *
+ * @param {string}
+ * @return {string}
+ */
+function encodeAsterisk (str) {
+ return encodeURI(str).replace(/[?#]/g, function (c) {
+ return '%' + c.charCodeAt(0).toString(16).toUpperCase()
+ })
+}
+
+/**
+ * Expose a method for transforming tokens into the path function.
+ */
+function tokensToFunction (tokens, options) {
+ // Compile all the tokens into regexps.
+ var matches = new Array(tokens.length);
+
+ // Compile all the patterns before compilation.
+ for (var i = 0; i < tokens.length; i++) {
+ if (typeof tokens[i] === 'object') {
+ matches[i] = new RegExp('^(?:' + tokens[i].pattern + ')$', flags(options));
+ }
+ }
+
+ return function (obj, opts) {
+ var path = '';
+ var data = obj || {};
+ var options = opts || {};
+ var encode = options.pretty ? encodeURIComponentPretty : encodeURIComponent;
+
+ for (var i = 0; i < tokens.length; i++) {
+ var token = tokens[i];
+
+ if (typeof token === 'string') {
+ path += token;
+
+ continue
+ }
+
+ var value = data[token.name];
+ var segment;
+
+ if (value == null) {
+ if (token.optional) {
+ // Prepend partial segment prefixes.
+ if (token.partial) {
+ path += token.prefix;
+ }
+
+ continue
+ } else {
+ throw new TypeError('Expected "' + token.name + '" to be defined')
+ }
+ }
+
+ if (isarray(value)) {
+ if (!token.repeat) {
+ throw new TypeError('Expected "' + token.name + '" to not repeat, but received `' + JSON.stringify(value) + '`')
+ }
+
+ if (value.length === 0) {
+ if (token.optional) {
+ continue
+ } else {
+ throw new TypeError('Expected "' + token.name + '" to not be empty')
+ }
+ }
+
+ for (var j = 0; j < value.length; j++) {
+ segment = encode(value[j]);
+
+ if (!matches[i].test(segment)) {
+ throw new TypeError('Expected all "' + token.name + '" to match "' + token.pattern + '", but received `' + JSON.stringify(segment) + '`')
+ }
+
+ path += (j === 0 ? token.prefix : token.delimiter) + segment;
+ }
+
+ continue
+ }
+
+ segment = token.asterisk ? encodeAsterisk(value) : encode(value);
+
+ if (!matches[i].test(segment)) {
+ throw new TypeError('Expected "' + token.name + '" to match "' + token.pattern + '", but received "' + segment + '"')
+ }
+
+ path += token.prefix + segment;
+ }
+
+ return path
+ }
+}
+
+/**
+ * Escape a regular expression string.
+ *
+ * @param {string} str
+ * @return {string}
+ */
+function escapeString (str) {
+ return str.replace(/([.+*?=^!:${}()[\]|\/\\])/g, '\\$1')
+}
+
+/**
+ * Escape the capturing group by escaping special characters and meaning.
+ *
+ * @param {string} group
+ * @return {string}
+ */
+function escapeGroup (group) {
+ return group.replace(/([=!:$\/()])/g, '\\$1')
+}
+
+/**
+ * Attach the keys as a property of the regexp.
+ *
+ * @param {!RegExp} re
+ * @param {Array} keys
+ * @return {!RegExp}
+ */
+function attachKeys (re, keys) {
+ re.keys = keys;
+ return re
+}
+
+/**
+ * Get the flags for a regexp from the options.
+ *
+ * @param {Object} options
+ * @return {string}
+ */
+function flags (options) {
+ return options && options.sensitive ? '' : 'i'
+}
+
+/**
+ * Pull out keys from a regexp.
+ *
+ * @param {!RegExp} path
+ * @param {!Array} keys
+ * @return {!RegExp}
+ */
+function regexpToRegexp (path, keys) {
+ // Use a negative lookahead to match only capturing groups.
+ var groups = path.source.match(/\((?!\?)/g);
+
+ if (groups) {
+ for (var i = 0; i < groups.length; i++) {
+ keys.push({
+ name: i,
+ prefix: null,
+ delimiter: null,
+ optional: false,
+ repeat: false,
+ partial: false,
+ asterisk: false,
+ pattern: null
+ });
+ }
+ }
+
+ return attachKeys(path, keys)
+}
+
+/**
+ * Transform an array into a regexp.
+ *
+ * @param {!Array} path
+ * @param {Array} keys
+ * @param {!Object} options
+ * @return {!RegExp}
+ */
+function arrayToRegexp (path, keys, options) {
+ var parts = [];
+
+ for (var i = 0; i < path.length; i++) {
+ parts.push(pathToRegexp(path[i], keys, options).source);
+ }
+
+ var regexp = new RegExp('(?:' + parts.join('|') + ')', flags(options));
+
+ return attachKeys(regexp, keys)
+}
+
+/**
+ * Create a path regexp from string input.
+ *
+ * @param {string} path
+ * @param {!Array} keys
+ * @param {!Object} options
+ * @return {!RegExp}
+ */
+function stringToRegexp (path, keys, options) {
+ return tokensToRegExp(parse(path, options), keys, options)
+}
+
+/**
+ * Expose a function for taking tokens and returning a RegExp.
+ *
+ * @param {!Array} tokens
+ * @param {(Array|Object)=} keys
+ * @param {Object=} options
+ * @return {!RegExp}
+ */
+function tokensToRegExp (tokens, keys, options) {
+ if (!isarray(keys)) {
+ options = /** @type {!Object} */ (keys || options);
+ keys = [];
+ }
+
+ options = options || {};
+
+ var strict = options.strict;
+ var end = options.end !== false;
+ var route = '';
+
+ // Iterate over the tokens and create our regexp string.
+ for (var i = 0; i < tokens.length; i++) {
+ var token = tokens[i];
+
+ if (typeof token === 'string') {
+ route += escapeString(token);
+ } else {
+ var prefix = escapeString(token.prefix);
+ var capture = '(?:' + token.pattern + ')';
+
+ keys.push(token);
+
+ if (token.repeat) {
+ capture += '(?:' + prefix + capture + ')*';
+ }
+
+ if (token.optional) {
+ if (!token.partial) {
+ capture = '(?:' + prefix + '(' + capture + '))?';
+ } else {
+ capture = prefix + '(' + capture + ')?';
+ }
+ } else {
+ capture = prefix + '(' + capture + ')';
+ }
+
+ route += capture;
+ }
+ }
+
+ var delimiter = escapeString(options.delimiter || '/');
+ var endsWithDelimiter = route.slice(-delimiter.length) === delimiter;
+
+ // In non-strict mode we allow a slash at the end of match. If the path to
+ // match already ends with a slash, we remove it for consistency. The slash
+ // is valid at the end of a path match, not in the middle. This is important
+ // in non-ending mode, where "/test/" shouldn't match "/test//route".
+ if (!strict) {
+ route = (endsWithDelimiter ? route.slice(0, -delimiter.length) : route) + '(?:' + delimiter + '(?=$))?';
+ }
+
+ if (end) {
+ route += '$';
+ } else {
+ // In non-ending mode, we need the capturing groups to match as much as
+ // possible by using a positive lookahead to the end or next path segment.
+ route += strict && endsWithDelimiter ? '' : '(?=' + delimiter + '|$)';
+ }
+
+ return attachKeys(new RegExp('^' + route, flags(options)), keys)
+}
+
+/**
+ * Normalize the given path string, returning a regular expression.
+ *
+ * An empty array can be passed in for the keys, which will hold the
+ * placeholder key descriptions. For example, using `/user/:id`, `keys` will
+ * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.
+ *
+ * @param {(string|RegExp|Array)} path
+ * @param {(Array|Object)=} keys
+ * @param {Object=} options
+ * @return {!RegExp}
+ */
+function pathToRegexp (path, keys, options) {
+ if (!isarray(keys)) {
+ options = /** @type {!Object} */ (keys || options);
+ keys = [];
+ }
+
+ options = options || {};
+
+ if (path instanceof RegExp) {
+ return regexpToRegexp(path, /** @type {!Array} */ (keys))
+ }
+
+ if (isarray(path)) {
+ return arrayToRegexp(/** @type {!Array} */ (path), /** @type {!Array} */ (keys), options)
+ }
+
+ return stringToRegexp(/** @type {string} */ (path), /** @type {!Array} */ (keys), options)
+}
+pathToRegexp_1.parse = parse_1;
+pathToRegexp_1.compile = compile_1;
+pathToRegexp_1.tokensToFunction = tokensToFunction_1;
+pathToRegexp_1.tokensToRegExp = tokensToRegExp_1;
+
+/* */
+
+// $flow-disable-line
+var regexpCompileCache = Object.create(null);
+
+function fillParams (
+ path,
+ params,
+ routeMsg
+) {
+ params = params || {};
+ try {
+ var filler =
+ regexpCompileCache[path] ||
+ (regexpCompileCache[path] = pathToRegexp_1.compile(path));
+
+ // Fix #2505 resolving asterisk routes { name: 'not-found', params: { pathMatch: '/not-found' }}
+ // and fix #3106 so that you can work with location descriptor object having params.pathMatch equal to empty string
+ if (typeof params.pathMatch === 'string') { params[0] = params.pathMatch; }
+
+ return filler(params, { pretty: true })
+ } catch (e) {
+ if (true) {
+ // Fix #3072 no warn if `pathMatch` is string
+ warn(typeof params.pathMatch === 'string', ("missing param for " + routeMsg + ": " + (e.message)));
+ }
+ return ''
+ } finally {
+ // delete the 0 if it was added
+ delete params[0];
+ }
+}
+
+/* */
+
+function normalizeLocation (
+ raw,
+ current,
+ append,
+ router
+) {
+ var next = typeof raw === 'string' ? { path: raw } : raw;
+ // named target
+ if (next._normalized) {
+ return next
+ } else if (next.name) {
+ next = extend({}, raw);
+ var params = next.params;
+ if (params && typeof params === 'object') {
+ next.params = extend({}, params);
+ }
+ return next
+ }
+
+ // relative params
+ if (!next.path && next.params && current) {
+ next = extend({}, next);
+ next._normalized = true;
+ var params$1 = extend(extend({}, current.params), next.params);
+ if (current.name) {
+ next.name = current.name;
+ next.params = params$1;
+ } else if (current.matched.length) {
+ var rawPath = current.matched[current.matched.length - 1].path;
+ next.path = fillParams(rawPath, params$1, ("path " + (current.path)));
+ } else if (true) {
+ warn(false, "relative params navigation requires a current route.");
+ }
+ return next
+ }
+
+ var parsedPath = parsePath(next.path || '');
+ var basePath = (current && current.path) || '/';
+ var path = parsedPath.path
+ ? resolvePath(parsedPath.path, basePath, append || next.append)
+ : basePath;
+
+ var query = resolveQuery(
+ parsedPath.query,
+ next.query,
+ router && router.options.parseQuery
+ );
+
+ var hash = next.hash || parsedPath.hash;
+ if (hash && hash.charAt(0) !== '#') {
+ hash = "#" + hash;
+ }
+
+ return {
+ _normalized: true,
+ path: path,
+ query: query,
+ hash: hash
+ }
+}
+
+/* */
+
+// work around weird flow bug
+var toTypes = [String, Object];
+var eventTypes = [String, Array];
+
+var noop = function () {};
+
+var warnedCustomSlot;
+var warnedTagProp;
+var warnedEventProp;
+
+var Link = {
+ name: 'RouterLink',
+ props: {
+ to: {
+ type: toTypes,
+ required: true
+ },
+ tag: {
+ type: String,
+ default: 'a'
+ },
+ custom: Boolean,
+ exact: Boolean,
+ exactPath: Boolean,
+ append: Boolean,
+ replace: Boolean,
+ activeClass: String,
+ exactActiveClass: String,
+ ariaCurrentValue: {
+ type: String,
+ default: 'page'
+ },
+ event: {
+ type: eventTypes,
+ default: 'click'
+ }
+ },
+ render: function render (h) {
+ var this$1$1 = this;
+
+ var router = this.$router;
+ var current = this.$route;
+ var ref = router.resolve(
+ this.to,
+ current,
+ this.append
+ );
+ var location = ref.location;
+ var route = ref.route;
+ var href = ref.href;
+
+ var classes = {};
+ var globalActiveClass = router.options.linkActiveClass;
+ var globalExactActiveClass = router.options.linkExactActiveClass;
+ // Support global empty active class
+ var activeClassFallback =
+ globalActiveClass == null ? 'router-link-active' : globalActiveClass;
+ var exactActiveClassFallback =
+ globalExactActiveClass == null
+ ? 'router-link-exact-active'
+ : globalExactActiveClass;
+ var activeClass =
+ this.activeClass == null ? activeClassFallback : this.activeClass;
+ var exactActiveClass =
+ this.exactActiveClass == null
+ ? exactActiveClassFallback
+ : this.exactActiveClass;
+
+ var compareTarget = route.redirectedFrom
+ ? createRoute(null, normalizeLocation(route.redirectedFrom), null, router)
+ : route;
+
+ classes[exactActiveClass] = isSameRoute(current, compareTarget, this.exactPath);
+ classes[activeClass] = this.exact || this.exactPath
+ ? classes[exactActiveClass]
+ : isIncludedRoute(current, compareTarget);
+
+ var ariaCurrentValue = classes[exactActiveClass] ? this.ariaCurrentValue : null;
+
+ var handler = function (e) {
+ if (guardEvent(e)) {
+ if (this$1$1.replace) {
+ router.replace(location, noop);
+ } else {
+ router.push(location, noop);
+ }
+ }
+ };
+
+ var on = { click: guardEvent };
+ if (Array.isArray(this.event)) {
+ this.event.forEach(function (e) {
+ on[e] = handler;
+ });
+ } else {
+ on[this.event] = handler;
+ }
+
+ var data = { class: classes };
+
+ var scopedSlot =
+ !this.$scopedSlots.$hasNormal &&
+ this.$scopedSlots.default &&
+ this.$scopedSlots.default({
+ href: href,
+ route: route,
+ navigate: handler,
+ isActive: classes[activeClass],
+ isExactActive: classes[exactActiveClass]
+ });
+
+ if (scopedSlot) {
+ if ( true && !this.custom) {
+ !warnedCustomSlot && warn(false, 'In Vue Router 4, the v-slot API will by default wrap its content with an <a> element. Use the custom prop to remove this warning:\n<router-link v-slot="{ navigate, href }" custom></router-link>\n');
+ warnedCustomSlot = true;
+ }
+ if (scopedSlot.length === 1) {
+ return scopedSlot[0]
+ } else if (scopedSlot.length > 1 || !scopedSlot.length) {
+ if (true) {
+ warn(
+ false,
+ ("<router-link> with to=\"" + (this.to) + "\" is trying to use a scoped slot but it didn't provide exactly one child. Wrapping the content with a span element.")
+ );
+ }
+ return scopedSlot.length === 0 ? h() : h('span', {}, scopedSlot)
+ }
+ }
+
+ if (true) {
+ if ('tag' in this.$options.propsData && !warnedTagProp) {
+ warn(
+ false,
+ "<router-link>'s tag prop is deprecated and has been removed in Vue Router 4. Use the v-slot API to remove this warning: https://next.router.vuejs.org/guide/migration/#removal-of-event-and-tag-props-in-router-link."
+ );
+ warnedTagProp = true;
+ }
+ if ('event' in this.$options.propsData && !warnedEventProp) {
+ warn(
+ false,
+ "<router-link>'s event prop is deprecated and has been removed in Vue Router 4. Use the v-slot API to remove this warning: https://next.router.vuejs.org/guide/migration/#removal-of-event-and-tag-props-in-router-link."
+ );
+ warnedEventProp = true;
+ }
+ }
+
+ if (this.tag === 'a') {
+ data.on = on;
+ data.attrs = { href: href, 'aria-current': ariaCurrentValue };
+ } else {
+ // find the first <a> child and apply listener and href
+ var a = findAnchor(this.$slots.default);
+ if (a) {
+ // in case the <a> is a static node
+ a.isStatic = false;
+ var aData = (a.data = extend({}, a.data));
+ aData.on = aData.on || {};
+ // transform existing events in both objects into arrays so we can push later
+ for (var event in aData.on) {
+ var handler$1 = aData.on[event];
+ if (event in on) {
+ aData.on[event] = Array.isArray(handler$1) ? handler$1 : [handler$1];
+ }
+ }
+ // append new listeners for router-link
+ for (var event$1 in on) {
+ if (event$1 in aData.on) {
+ // on[event] is always a function
+ aData.on[event$1].push(on[event$1]);
+ } else {
+ aData.on[event$1] = handler;
+ }
+ }
+
+ var aAttrs = (a.data.attrs = extend({}, a.data.attrs));
+ aAttrs.href = href;
+ aAttrs['aria-current'] = ariaCurrentValue;
+ } else {
+ // doesn't have <a> child, apply listener to self
+ data.on = on;
+ }
+ }
+
+ return h(this.tag, data, this.$slots.default)
+ }
+};
+
+function guardEvent (e) {
+ // don't redirect with control keys
+ if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) { return }
+ // don't redirect when preventDefault called
+ if (e.defaultPrevented) { return }
+ // don't redirect on right click
+ if (e.button !== undefined && e.button !== 0) { return }
+ // don't redirect if `target="_blank"`
+ if (e.currentTarget && e.currentTarget.getAttribute) {
+ var target = e.currentTarget.getAttribute('target');
+ if (/\b_blank\b/i.test(target)) { return }
+ }
+ // this may be a Weex event which doesn't have this method
+ if (e.preventDefault) {
+ e.preventDefault();
+ }
+ return true
+}
+
+function findAnchor (children) {
+ if (children) {
+ var child;
+ for (var i = 0; i < children.length; i++) {
+ child = children[i];
+ if (child.tag === 'a') {
+ return child
+ }
+ if (child.children && (child = findAnchor(child.children))) {
+ return child
+ }
+ }
+ }
+}
+
+var _Vue;
+
+function install (Vue) {
+ if (install.installed && _Vue === Vue) { return }
+ install.installed = true;
+
+ _Vue = Vue;
+
+ var isDef = function (v) { return v !== undefined; };
+
+ var registerInstance = function (vm, callVal) {
+ var i = vm.$options._parentVnode;
+ if (isDef(i) && isDef(i = i.data) && isDef(i = i.registerRouteInstance)) {
+ i(vm, callVal);
+ }
+ };
+
+ Vue.mixin({
+ beforeCreate: function beforeCreate () {
+ if (isDef(this.$options.router)) {
+ this._routerRoot = this;
+ this._router = this.$options.router;
+ this._router.init(this);
+ Vue.util.defineReactive(this, '_route', this._router.history.current);
+ } else {
+ this._routerRoot = (this.$parent && this.$parent._routerRoot) || this;
+ }
+ registerInstance(this, this);
+ },
+ destroyed: function destroyed () {
+ registerInstance(this);
+ }
+ });
+
+ Object.defineProperty(Vue.prototype, '$router', {
+ get: function get () { return this._routerRoot._router }
+ });
+
+ Object.defineProperty(Vue.prototype, '$route', {
+ get: function get () { return this._routerRoot._route }
+ });
+
+ Vue.component('RouterView', View);
+ Vue.component('RouterLink', Link);
+
+ var strats = Vue.config.optionMergeStrategies;
+ // use the same hook merging strategy for route hooks
+ strats.beforeRouteEnter = strats.beforeRouteLeave = strats.beforeRouteUpdate = strats.created;
+}
+
+/* */
+
+var inBrowser = typeof window !== 'undefined';
+
+/* */
+
+function createRouteMap (
+ routes,
+ oldPathList,
+ oldPathMap,
+ oldNameMap,
+ parentRoute
+) {
+ // the path list is used to control path matching priority
+ var pathList = oldPathList || [];
+ // $flow-disable-line
+ var pathMap = oldPathMap || Object.create(null);
+ // $flow-disable-line
+ var nameMap = oldNameMap || Object.create(null);
+
+ routes.forEach(function (route) {
+ addRouteRecord(pathList, pathMap, nameMap, route, parentRoute);
+ });
+
+ // ensure wildcard routes are always at the end
+ for (var i = 0, l = pathList.length; i < l; i++) {
+ if (pathList[i] === '*') {
+ pathList.push(pathList.splice(i, 1)[0]);
+ l--;
+ i--;
+ }
+ }
+
+ if (true) {
+ // warn if routes do not include leading slashes
+ var found = pathList
+ // check for missing leading slash
+ .filter(function (path) { return path && path.charAt(0) !== '*' && path.charAt(0) !== '/'; });
+
+ if (found.length > 0) {
+ var pathNames = found.map(function (path) { return ("- " + path); }).join('\n');
+ warn(false, ("Non-nested routes must include a leading slash character. Fix the following routes: \n" + pathNames));
+ }
+ }
+
+ return {
+ pathList: pathList,
+ pathMap: pathMap,
+ nameMap: nameMap
+ }
+}
+
+function addRouteRecord (
+ pathList,
+ pathMap,
+ nameMap,
+ route,
+ parent,
+ matchAs
+) {
+ var path = route.path;
+ var name = route.name;
+ if (true) {
+ assert(path != null, "\"path\" is required in a route configuration.");
+ assert(
+ typeof route.component !== 'string',
+ "route config \"component\" for path: " + (String(
+ path || name
+ )) + " cannot be a " + "string id. Use an actual component instead."
+ );
+
+ warn(
+ // eslint-disable-next-line no-control-regex
+ !/[^\u0000-\u007F]+/.test(path),
+ "Route with path \"" + path + "\" contains unencoded characters, make sure " +
+ "your path is correctly encoded before passing it to the router. Use " +
+ "encodeURI to encode static segments of your path."
+ );
+ }
+
+ var pathToRegexpOptions =
+ route.pathToRegexpOptions || {};
+ var normalizedPath = normalizePath(path, parent, pathToRegexpOptions.strict);
+
+ if (typeof route.caseSensitive === 'boolean') {
+ pathToRegexpOptions.sensitive = route.caseSensitive;
+ }
+
+ var record = {
+ path: normalizedPath,
+ regex: compileRouteRegex(normalizedPath, pathToRegexpOptions),
+ components: route.components || { default: route.component },
+ alias: route.alias
+ ? typeof route.alias === 'string'
+ ? [route.alias]
+ : route.alias
+ : [],
+ instances: {},
+ enteredCbs: {},
+ name: name,
+ parent: parent,
+ matchAs: matchAs,
+ redirect: route.redirect,
+ beforeEnter: route.beforeEnter,
+ meta: route.meta || {},
+ props:
+ route.props == null
+ ? {}
+ : route.components
+ ? route.props
+ : { default: route.props }
+ };
+
+ if (route.children) {
+ // Warn if route is named, does not redirect and has a default child route.
+ // If users navigate to this route by name, the default child will
+ // not be rendered (GH Issue #629)
+ if (true) {
+ if (
+ route.name &&
+ !route.redirect &&
+ route.children.some(function (child) { return /^\/?$/.test(child.path); })
+ ) {
+ warn(
+ false,
+ "Named Route '" + (route.name) + "' has a default child route. " +
+ "When navigating to this named route (:to=\"{name: '" + (route.name) + "'}\"), " +
+ "the default child route will not be rendered. Remove the name from " +
+ "this route and use the name of the default child route for named " +
+ "links instead."
+ );
+ }
+ }
+ route.children.forEach(function (child) {
+ var childMatchAs = matchAs
+ ? cleanPath((matchAs + "/" + (child.path)))
+ : undefined;
+ addRouteRecord(pathList, pathMap, nameMap, child, record, childMatchAs);
+ });
+ }
+
+ if (!pathMap[record.path]) {
+ pathList.push(record.path);
+ pathMap[record.path] = record;
+ }
+
+ if (route.alias !== undefined) {
+ var aliases = Array.isArray(route.alias) ? route.alias : [route.alias];
+ for (var i = 0; i < aliases.length; ++i) {
+ var alias = aliases[i];
+ if ( true && alias === path) {
+ warn(
+ false,
+ ("Found an alias with the same value as the path: \"" + path + "\". You have to remove that alias. It will be ignored in development.")
+ );
+ // skip in dev to make it work
+ continue
+ }
+
+ var aliasRoute = {
+ path: alias,
+ children: route.children
+ };
+ addRouteRecord(
+ pathList,
+ pathMap,
+ nameMap,
+ aliasRoute,
+ parent,
+ record.path || '/' // matchAs
+ );
+ }
+ }
+
+ if (name) {
+ if (!nameMap[name]) {
+ nameMap[name] = record;
+ } else if ( true && !matchAs) {
+ warn(
+ false,
+ "Duplicate named routes definition: " +
+ "{ name: \"" + name + "\", path: \"" + (record.path) + "\" }"
+ );
+ }
+ }
+}
+
+function compileRouteRegex (
+ path,
+ pathToRegexpOptions
+) {
+ var regex = pathToRegexp_1(path, [], pathToRegexpOptions);
+ if (true) {
+ var keys = Object.create(null);
+ regex.keys.forEach(function (key) {
+ warn(
+ !keys[key.name],
+ ("Duplicate param keys in route with path: \"" + path + "\"")
+ );
+ keys[key.name] = true;
+ });
+ }
+ return regex
+}
+
+function normalizePath (
+ path,
+ parent,
+ strict
+) {
+ if (!strict) { path = path.replace(/\/$/, ''); }
+ if (path[0] === '/') { return path }
+ if (parent == null) { return path }
+ return cleanPath(((parent.path) + "/" + path))
+}
+
+/* */
+
+
+
+function createMatcher (
+ routes,
+ router
+) {
+ var ref = createRouteMap(routes);
+ var pathList = ref.pathList;
+ var pathMap = ref.pathMap;
+ var nameMap = ref.nameMap;
+
+ function addRoutes (routes) {
+ createRouteMap(routes, pathList, pathMap, nameMap);
+ }
+
+ function addRoute (parentOrRoute, route) {
+ var parent = (typeof parentOrRoute !== 'object') ? nameMap[parentOrRoute] : undefined;
+ // $flow-disable-line
+ createRouteMap([route || parentOrRoute], pathList, pathMap, nameMap, parent);
+
+ // add aliases of parent
+ if (parent && parent.alias.length) {
+ createRouteMap(
+ // $flow-disable-line route is defined if parent is
+ parent.alias.map(function (alias) { return ({ path: alias, children: [route] }); }),
+ pathList,
+ pathMap,
+ nameMap,
+ parent
+ );
+ }
+ }
+
+ function getRoutes () {
+ return pathList.map(function (path) { return pathMap[path]; })
+ }
+
+ function match (
+ raw,
+ currentRoute,
+ redirectedFrom
+ ) {
+ var location = normalizeLocation(raw, currentRoute, false, router);
+ var name = location.name;
+
+ if (name) {
+ var record = nameMap[name];
+ if (true) {
+ warn(record, ("Route with name '" + name + "' does not exist"));
+ }
+ if (!record) { return _createRoute(null, location) }
+ var paramNames = record.regex.keys
+ .filter(function (key) { return !key.optional; })
+ .map(function (key) { return key.name; });
+
+ if (typeof location.params !== 'object') {
+ location.params = {};
+ }
+
+ if (currentRoute && typeof currentRoute.params === 'object') {
+ for (var key in currentRoute.params) {
+ if (!(key in location.params) && paramNames.indexOf(key) > -1) {
+ location.params[key] = currentRoute.params[key];
+ }
+ }
+ }
+
+ location.path = fillParams(record.path, location.params, ("named route \"" + name + "\""));
+ return _createRoute(record, location, redirectedFrom)
+ } else if (location.path) {
+ location.params = {};
+ for (var i = 0; i < pathList.length; i++) {
+ var path = pathList[i];
+ var record$1 = pathMap[path];
+ if (matchRoute(record$1.regex, location.path, location.params)) {
+ return _createRoute(record$1, location, redirectedFrom)
+ }
+ }
+ }
+ // no match
+ return _createRoute(null, location)
+ }
+
+ function redirect (
+ record,
+ location
+ ) {
+ var originalRedirect = record.redirect;
+ var redirect = typeof originalRedirect === 'function'
+ ? originalRedirect(createRoute(record, location, null, router))
+ : originalRedirect;
+
+ if (typeof redirect === 'string') {
+ redirect = { path: redirect };
+ }
+
+ if (!redirect || typeof redirect !== 'object') {
+ if (true) {
+ warn(
+ false, ("invalid redirect option: " + (JSON.stringify(redirect)))
+ );
+ }
+ return _createRoute(null, location)
+ }
+
+ var re = redirect;
+ var name = re.name;
+ var path = re.path;
+ var query = location.query;
+ var hash = location.hash;
+ var params = location.params;
+ query = re.hasOwnProperty('query') ? re.query : query;
+ hash = re.hasOwnProperty('hash') ? re.hash : hash;
+ params = re.hasOwnProperty('params') ? re.params : params;
+
+ if (name) {
+ // resolved named direct
+ var targetRecord = nameMap[name];
+ if (true) {
+ assert(targetRecord, ("redirect failed: named route \"" + name + "\" not found."));
+ }
+ return match({
+ _normalized: true,
+ name: name,
+ query: query,
+ hash: hash,
+ params: params
+ }, undefined, location)
+ } else if (path) {
+ // 1. resolve relative redirect
+ var rawPath = resolveRecordPath(path, record);
+ // 2. resolve params
+ var resolvedPath = fillParams(rawPath, params, ("redirect route with path \"" + rawPath + "\""));
+ // 3. rematch with existing query and hash
+ return match({
+ _normalized: true,
+ path: resolvedPath,
+ query: query,
+ hash: hash
+ }, undefined, location)
+ } else {
+ if (true) {
+ warn(false, ("invalid redirect option: " + (JSON.stringify(redirect))));
+ }
+ return _createRoute(null, location)
+ }
+ }
+
+ function alias (
+ record,
+ location,
+ matchAs
+ ) {
+ var aliasedPath = fillParams(matchAs, location.params, ("aliased route with path \"" + matchAs + "\""));
+ var aliasedMatch = match({
+ _normalized: true,
+ path: aliasedPath
+ });
+ if (aliasedMatch) {
+ var matched = aliasedMatch.matched;
+ var aliasedRecord = matched[matched.length - 1];
+ location.params = aliasedMatch.params;
+ return _createRoute(aliasedRecord, location)
+ }
+ return _createRoute(null, location)
+ }
+
+ function _createRoute (
+ record,
+ location,
+ redirectedFrom
+ ) {
+ if (record && record.redirect) {
+ return redirect(record, redirectedFrom || location)
+ }
+ if (record && record.matchAs) {
+ return alias(record, location, record.matchAs)
+ }
+ return createRoute(record, location, redirectedFrom, router)
+ }
+
+ return {
+ match: match,
+ addRoute: addRoute,
+ getRoutes: getRoutes,
+ addRoutes: addRoutes
+ }
+}
+
+function matchRoute (
+ regex,
+ path,
+ params
+) {
+ var m = path.match(regex);
+
+ if (!m) {
+ return false
+ } else if (!params) {
+ return true
+ }
+
+ for (var i = 1, len = m.length; i < len; ++i) {
+ var key = regex.keys[i - 1];
+ if (key) {
+ // Fix #1994: using * with props: true generates a param named 0
+ params[key.name || 'pathMatch'] = typeof m[i] === 'string' ? decode(m[i]) : m[i];
+ }
+ }
+
+ return true
+}
+
+function resolveRecordPath (path, record) {
+ return resolvePath(path, record.parent ? record.parent.path : '/', true)
+}
+
+/* */
+
+// use User Timing api (if present) for more accurate key precision
+var Time =
+ inBrowser && window.performance && window.performance.now
+ ? window.performance
+ : Date;
+
+function genStateKey () {
+ return Time.now().toFixed(3)
+}
+
+var _key = genStateKey();
+
+function getStateKey () {
+ return _key
+}
+
+function setStateKey (key) {
+ return (_key = key)
+}
+
+/* */
+
+var positionStore = Object.create(null);
+
+function setupScroll () {
+ // Prevent browser scroll behavior on History popstate
+ if ('scrollRestoration' in window.history) {
+ window.history.scrollRestoration = 'manual';
+ }
+ // Fix for #1585 for Firefox
+ // Fix for #2195 Add optional third attribute to workaround a bug in safari https://bugs.webkit.org/show_bug.cgi?id=182678
+ // Fix for #2774 Support for apps loaded from Windows file shares not mapped to network drives: replaced location.origin with
+ // window.location.protocol + '//' + window.location.host
+ // location.host contains the port and location.hostname doesn't
+ var protocolAndPath = window.location.protocol + '//' + window.location.host;
+ var absolutePath = window.location.href.replace(protocolAndPath, '');
+ // preserve existing history state as it could be overriden by the user
+ var stateCopy = extend({}, window.history.state);
+ stateCopy.key = getStateKey();
+ window.history.replaceState(stateCopy, '', absolutePath);
+ window.addEventListener('popstate', handlePopState);
+ return function () {
+ window.removeEventListener('popstate', handlePopState);
+ }
+}
+
+function handleScroll (
+ router,
+ to,
+ from,
+ isPop
+) {
+ if (!router.app) {
+ return
+ }
+
+ var behavior = router.options.scrollBehavior;
+ if (!behavior) {
+ return
+ }
+
+ if (true) {
+ assert(typeof behavior === 'function', "scrollBehavior must be a function");
+ }
+
+ // wait until re-render finishes before scrolling
+ router.app.$nextTick(function () {
+ var position = getScrollPosition();
+ var shouldScroll = behavior.call(
+ router,
+ to,
+ from,
+ isPop ? position : null
+ );
+
+ if (!shouldScroll) {
+ return
+ }
+
+ if (typeof shouldScroll.then === 'function') {
+ shouldScroll
+ .then(function (shouldScroll) {
+ scrollToPosition((shouldScroll), position);
+ })
+ .catch(function (err) {
+ if (true) {
+ assert(false, err.toString());
+ }
+ });
+ } else {
+ scrollToPosition(shouldScroll, position);
+ }
+ });
+}
+
+function saveScrollPosition () {
+ var key = getStateKey();
+ if (key) {
+ positionStore[key] = {
+ x: window.pageXOffset,
+ y: window.pageYOffset
+ };
+ }
+}
+
+function handlePopState (e) {
+ saveScrollPosition();
+ if (e.state && e.state.key) {
+ setStateKey(e.state.key);
+ }
+}
+
+function getScrollPosition () {
+ var key = getStateKey();
+ if (key) {
+ return positionStore[key]
+ }
+}
+
+function getElementPosition (el, offset) {
+ var docEl = document.documentElement;
+ var docRect = docEl.getBoundingClientRect();
+ var elRect = el.getBoundingClientRect();
+ return {
+ x: elRect.left - docRect.left - offset.x,
+ y: elRect.top - docRect.top - offset.y
+ }
+}
+
+function isValidPosition (obj) {
+ return isNumber(obj.x) || isNumber(obj.y)
+}
+
+function normalizePosition (obj) {
+ return {
+ x: isNumber(obj.x) ? obj.x : window.pageXOffset,
+ y: isNumber(obj.y) ? obj.y : window.pageYOffset
+ }
+}
+
+function normalizeOffset (obj) {
+ return {
+ x: isNumber(obj.x) ? obj.x : 0,
+ y: isNumber(obj.y) ? obj.y : 0
+ }
+}
+
+function isNumber (v) {
+ return typeof v === 'number'
+}
+
+var hashStartsWithNumberRE = /^#\d/;
+
+function scrollToPosition (shouldScroll, position) {
+ var isObject = typeof shouldScroll === 'object';
+ if (isObject && typeof shouldScroll.selector === 'string') {
+ // getElementById would still fail if the selector contains a more complicated query like #main[data-attr]
+ // but at the same time, it doesn't make much sense to select an element with an id and an extra selector
+ var el = hashStartsWithNumberRE.test(shouldScroll.selector) // $flow-disable-line
+ ? document.getElementById(shouldScroll.selector.slice(1)) // $flow-disable-line
+ : document.querySelector(shouldScroll.selector);
+
+ if (el) {
+ var offset =
+ shouldScroll.offset && typeof shouldScroll.offset === 'object'
+ ? shouldScroll.offset
+ : {};
+ offset = normalizeOffset(offset);
+ position = getElementPosition(el, offset);
+ } else if (isValidPosition(shouldScroll)) {
+ position = normalizePosition(shouldScroll);
+ }
+ } else if (isObject && isValidPosition(shouldScroll)) {
+ position = normalizePosition(shouldScroll);
+ }
+
+ if (position) {
+ // $flow-disable-line
+ if ('scrollBehavior' in document.documentElement.style) {
+ window.scrollTo({
+ left: position.x,
+ top: position.y,
+ // $flow-disable-line
+ behavior: shouldScroll.behavior
+ });
+ } else {
+ window.scrollTo(position.x, position.y);
+ }
+ }
+}
+
+/* */
+
+var supportsPushState =
+ inBrowser &&
+ (function () {
+ var ua = window.navigator.userAgent;
+
+ if (
+ (ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) &&
+ ua.indexOf('Mobile Safari') !== -1 &&
+ ua.indexOf('Chrome') === -1 &&
+ ua.indexOf('Windows Phone') === -1
+ ) {
+ return false
+ }
+
+ return window.history && typeof window.history.pushState === 'function'
+ })();
+
+function pushState (url, replace) {
+ saveScrollPosition();
+ // try...catch the pushState call to get around Safari
+ // DOM Exception 18 where it limits to 100 pushState calls
+ var history = window.history;
+ try {
+ if (replace) {
+ // preserve existing history state as it could be overriden by the user
+ var stateCopy = extend({}, history.state);
+ stateCopy.key = getStateKey();
+ history.replaceState(stateCopy, '', url);
+ } else {
+ history.pushState({ key: setStateKey(genStateKey()) }, '', url);
+ }
+ } catch (e) {
+ window.location[replace ? 'replace' : 'assign'](url);
+ }
+}
+
+function replaceState (url) {
+ pushState(url, true);
+}
+
+// When changing thing, also edit router.d.ts
+var NavigationFailureType = {
+ redirected: 2,
+ aborted: 4,
+ cancelled: 8,
+ duplicated: 16
+};
+
+function createNavigationRedirectedError (from, to) {
+ return createRouterError(
+ from,
+ to,
+ NavigationFailureType.redirected,
+ ("Redirected when going from \"" + (from.fullPath) + "\" to \"" + (stringifyRoute(
+ to
+ )) + "\" via a navigation guard.")
+ )
+}
+
+function createNavigationDuplicatedError (from, to) {
+ var error = createRouterError(
+ from,
+ to,
+ NavigationFailureType.duplicated,
+ ("Avoided redundant navigation to current location: \"" + (from.fullPath) + "\".")
+ );
+ // backwards compatible with the first introduction of Errors
+ error.name = 'NavigationDuplicated';
+ return error
+}
+
+function createNavigationCancelledError (from, to) {
+ return createRouterError(
+ from,
+ to,
+ NavigationFailureType.cancelled,
+ ("Navigation cancelled from \"" + (from.fullPath) + "\" to \"" + (to.fullPath) + "\" with a new navigation.")
+ )
+}
+
+function createNavigationAbortedError (from, to) {
+ return createRouterError(
+ from,
+ to,
+ NavigationFailureType.aborted,
+ ("Navigation aborted from \"" + (from.fullPath) + "\" to \"" + (to.fullPath) + "\" via a navigation guard.")
+ )
+}
+
+function createRouterError (from, to, type, message) {
+ var error = new Error(message);
+ error._isRouter = true;
+ error.from = from;
+ error.to = to;
+ error.type = type;
+
+ return error
+}
+
+var propertiesToLog = ['params', 'query', 'hash'];
+
+function stringifyRoute (to) {
+ if (typeof to === 'string') { return to }
+ if ('path' in to) { return to.path }
+ var location = {};
+ propertiesToLog.forEach(function (key) {
+ if (key in to) { location[key] = to[key]; }
+ });
+ return JSON.stringify(location, null, 2)
+}
+
+function isError (err) {
+ return Object.prototype.toString.call(err).indexOf('Error') > -1
+}
+
+function isNavigationFailure (err, errorType) {
+ return (
+ isError(err) &&
+ err._isRouter &&
+ (errorType == null || err.type === errorType)
+ )
+}
+
+/* */
+
+function runQueue (queue, fn, cb) {
+ var step = function (index) {
+ if (index >= queue.length) {
+ cb();
+ } else {
+ if (queue[index]) {
+ fn(queue[index], function () {
+ step(index + 1);
+ });
+ } else {
+ step(index + 1);
+ }
+ }
+ };
+ step(0);
+}
+
+/* */
+
+function resolveAsyncComponents (matched) {
+ return function (to, from, next) {
+ var hasAsync = false;
+ var pending = 0;
+ var error = null;
+
+ flatMapComponents(matched, function (def, _, match, key) {
+ // if it's a function and doesn't have cid attached,
+ // assume it's an async component resolve function.
+ // we are not using Vue's default async resolving mechanism because
+ // we want to halt the navigation until the incoming component has been
+ // resolved.
+ if (typeof def === 'function' && def.cid === undefined) {
+ hasAsync = true;
+ pending++;
+
+ var resolve = once(function (resolvedDef) {
+ if (isESModule(resolvedDef)) {
+ resolvedDef = resolvedDef.default;
+ }
+ // save resolved on async factory in case it's used elsewhere
+ def.resolved = typeof resolvedDef === 'function'
+ ? resolvedDef
+ : _Vue.extend(resolvedDef);
+ match.components[key] = resolvedDef;
+ pending--;
+ if (pending <= 0) {
+ next();
+ }
+ });
+
+ var reject = once(function (reason) {
+ var msg = "Failed to resolve async component " + key + ": " + reason;
+ true && warn(false, msg);
+ if (!error) {
+ error = isError(reason)
+ ? reason
+ : new Error(msg);
+ next(error);
+ }
+ });
+
+ var res;
+ try {
+ res = def(resolve, reject);
+ } catch (e) {
+ reject(e);
+ }
+ if (res) {
+ if (typeof res.then === 'function') {
+ res.then(resolve, reject);
+ } else {
+ // new syntax in Vue 2.3
+ var comp = res.component;
+ if (comp && typeof comp.then === 'function') {
+ comp.then(resolve, reject);
+ }
+ }
+ }
+ }
+ });
+
+ if (!hasAsync) { next(); }
+ }
+}
+
+function flatMapComponents (
+ matched,
+ fn
+) {
+ return flatten(matched.map(function (m) {
+ return Object.keys(m.components).map(function (key) { return fn(
+ m.components[key],
+ m.instances[key],
+ m, key
+ ); })
+ }))
+}
+
+function flatten (arr) {
+ return Array.prototype.concat.apply([], arr)
+}
+
+var hasSymbol =
+ typeof Symbol === 'function' &&
+ typeof Symbol.toStringTag === 'symbol';
+
+function isESModule (obj) {
+ return obj.__esModule || (hasSymbol && obj[Symbol.toStringTag] === 'Module')
+}
+
+// in Webpack 2, require.ensure now also returns a Promise
+// so the resolve/reject functions may get called an extra time
+// if the user uses an arrow function shorthand that happens to
+// return that Promise.
+function once (fn) {
+ var called = false;
+ return function () {
+ var args = [], len = arguments.length;
+ while ( len-- ) args[ len ] = arguments[ len ];
+
+ if (called) { return }
+ called = true;
+ return fn.apply(this, args)
+ }
+}
+
+/* */
+
+var History = function History (router, base) {
+ this.router = router;
+ this.base = normalizeBase(base);
+ // start with a route object that stands for "nowhere"
+ this.current = START;
+ this.pending = null;
+ this.ready = false;
+ this.readyCbs = [];
+ this.readyErrorCbs = [];
+ this.errorCbs = [];
+ this.listeners = [];
+};
+
+History.prototype.listen = function listen (cb) {
+ this.cb = cb;
+};
+
+History.prototype.onReady = function onReady (cb, errorCb) {
+ if (this.ready) {
+ cb();
+ } else {
+ this.readyCbs.push(cb);
+ if (errorCb) {
+ this.readyErrorCbs.push(errorCb);
+ }
+ }
+};
+
+History.prototype.onError = function onError (errorCb) {
+ this.errorCbs.push(errorCb);
+};
+
+History.prototype.transitionTo = function transitionTo (
+ location,
+ onComplete,
+ onAbort
+) {
+ var this$1$1 = this;
+
+ var route;
+ // catch redirect option https://github.com/vuejs/vue-router/issues/3201
+ try {
+ route = this.router.match(location, this.current);
+ } catch (e) {
+ this.errorCbs.forEach(function (cb) {
+ cb(e);
+ });
+ // Exception should still be thrown
+ throw e
+ }
+ var prev = this.current;
+ this.confirmTransition(
+ route,
+ function () {
+ this$1$1.updateRoute(route);
+ onComplete && onComplete(route);
+ this$1$1.ensureURL();
+ this$1$1.router.afterHooks.forEach(function (hook) {
+ hook && hook(route, prev);
+ });
+
+ // fire ready cbs once
+ if (!this$1$1.ready) {
+ this$1$1.ready = true;
+ this$1$1.readyCbs.forEach(function (cb) {
+ cb(route);
+ });
+ }
+ },
+ function (err) {
+ if (onAbort) {
+ onAbort(err);
+ }
+ if (err && !this$1$1.ready) {
+ // Initial redirection should not mark the history as ready yet
+ // because it's triggered by the redirection instead
+ // https://github.com/vuejs/vue-router/issues/3225
+ // https://github.com/vuejs/vue-router/issues/3331
+ if (!isNavigationFailure(err, NavigationFailureType.redirected) || prev !== START) {
+ this$1$1.ready = true;
+ this$1$1.readyErrorCbs.forEach(function (cb) {
+ cb(err);
+ });
+ }
+ }
+ }
+ );
+};
+
+History.prototype.confirmTransition = function confirmTransition (route, onComplete, onAbort) {
+ var this$1$1 = this;
+
+ var current = this.current;
+ this.pending = route;
+ var abort = function (err) {
+ // changed after adding errors with
+ // https://github.com/vuejs/vue-router/pull/3047 before that change,
+ // redirect and aborted navigation would produce an err == null
+ if (!isNavigationFailure(err) && isError(err)) {
+ if (this$1$1.errorCbs.length) {
+ this$1$1.errorCbs.forEach(function (cb) {
+ cb(err);
+ });
+ } else {
+ if (true) {
+ warn(false, 'uncaught error during route navigation:');
+ }
+ console.error(err);
+ }
+ }
+ onAbort && onAbort(err);
+ };
+ var lastRouteIndex = route.matched.length - 1;
+ var lastCurrentIndex = current.matched.length - 1;
+ if (
+ isSameRoute(route, current) &&
+ // in the case the route map has been dynamically appended to
+ lastRouteIndex === lastCurrentIndex &&
+ route.matched[lastRouteIndex] === current.matched[lastCurrentIndex]
+ ) {
+ this.ensureURL();
+ if (route.hash) {
+ handleScroll(this.router, current, route, false);
+ }
+ return abort(createNavigationDuplicatedError(current, route))
+ }
+
+ var ref = resolveQueue(
+ this.current.matched,
+ route.matched
+ );
+ var updated = ref.updated;
+ var deactivated = ref.deactivated;
+ var activated = ref.activated;
+
+ var queue = [].concat(
+ // in-component leave guards
+ extractLeaveGuards(deactivated),
+ // global before hooks
+ this.router.beforeHooks,
+ // in-component update hooks
+ extractUpdateHooks(updated),
+ // in-config enter guards
+ activated.map(function (m) { return m.beforeEnter; }),
+ // async components
+ resolveAsyncComponents(activated)
+ );
+
+ var iterator = function (hook, next) {
+ if (this$1$1.pending !== route) {
+ return abort(createNavigationCancelledError(current, route))
+ }
+ try {
+ hook(route, current, function (to) {
+ if (to === false) {
+ // next(false) -> abort navigation, ensure current URL
+ this$1$1.ensureURL(true);
+ abort(createNavigationAbortedError(current, route));
+ } else if (isError(to)) {
+ this$1$1.ensureURL(true);
+ abort(to);
+ } else if (
+ typeof to === 'string' ||
+ (typeof to === 'object' &&
+ (typeof to.path === 'string' || typeof to.name === 'string'))
+ ) {
+ // next('/') or next({ path: '/' }) -> redirect
+ abort(createNavigationRedirectedError(current, route));
+ if (typeof to === 'object' && to.replace) {
+ this$1$1.replace(to);
+ } else {
+ this$1$1.push(to);
+ }
+ } else {
+ // confirm transition and pass on the value
+ next(to);
+ }
+ });
+ } catch (e) {
+ abort(e);
+ }
+ };
+
+ runQueue(queue, iterator, function () {
+ // wait until async components are resolved before
+ // extracting in-component enter guards
+ var enterGuards = extractEnterGuards(activated);
+ var queue = enterGuards.concat(this$1$1.router.resolveHooks);
+ runQueue(queue, iterator, function () {
+ if (this$1$1.pending !== route) {
+ return abort(createNavigationCancelledError(current, route))
+ }
+ this$1$1.pending = null;
+ onComplete(route);
+ if (this$1$1.router.app) {
+ this$1$1.router.app.$nextTick(function () {
+ handleRouteEntered(route);
+ });
+ }
+ });
+ });
+};
+
+History.prototype.updateRoute = function updateRoute (route) {
+ this.current = route;
+ this.cb && this.cb(route);
+};
+
+History.prototype.setupListeners = function setupListeners () {
+ // Default implementation is empty
+};
+
+History.prototype.teardown = function teardown () {
+ // clean up event listeners
+ // https://github.com/vuejs/vue-router/issues/2341
+ this.listeners.forEach(function (cleanupListener) {
+ cleanupListener();
+ });
+ this.listeners = [];
+
+ // reset current history route
+ // https://github.com/vuejs/vue-router/issues/3294
+ this.current = START;
+ this.pending = null;
+};
+
+function normalizeBase (base) {
+ if (!base) {
+ if (inBrowser) {
+ // respect <base> tag
+ var baseEl = document.querySelector('base');
+ base = (baseEl && baseEl.getAttribute('href')) || '/';
+ // strip full URL origin
+ base = base.replace(/^https?:\/\/[^\/]+/, '');
+ } else {
+ base = '/';
+ }
+ }
+ // make sure there's the starting slash
+ if (base.charAt(0) !== '/') {
+ base = '/' + base;
+ }
+ // remove trailing slash
+ return base.replace(/\/$/, '')
+}
+
+function resolveQueue (
+ current,
+ next
+) {
+ var i;
+ var max = Math.max(current.length, next.length);
+ for (i = 0; i < max; i++) {
+ if (current[i] !== next[i]) {
+ break
+ }
+ }
+ return {
+ updated: next.slice(0, i),
+ activated: next.slice(i),
+ deactivated: current.slice(i)
+ }
+}
+
+function extractGuards (
+ records,
+ name,
+ bind,
+ reverse
+) {
+ var guards = flatMapComponents(records, function (def, instance, match, key) {
+ var guard = extractGuard(def, name);
+ if (guard) {
+ return Array.isArray(guard)
+ ? guard.map(function (guard) { return bind(guard, instance, match, key); })
+ : bind(guard, instance, match, key)
+ }
+ });
+ return flatten(reverse ? guards.reverse() : guards)
+}
+
+function extractGuard (
+ def,
+ key
+) {
+ if (typeof def !== 'function') {
+ // extend now so that global mixins are applied.
+ def = _Vue.extend(def);
+ }
+ return def.options[key]
+}
+
+function extractLeaveGuards (deactivated) {
+ return extractGuards(deactivated, 'beforeRouteLeave', bindGuard, true)
+}
+
+function extractUpdateHooks (updated) {
+ return extractGuards(updated, 'beforeRouteUpdate', bindGuard)
+}
+
+function bindGuard (guard, instance) {
+ if (instance) {
+ return function boundRouteGuard () {
+ return guard.apply(instance, arguments)
+ }
+ }
+}
+
+function extractEnterGuards (
+ activated
+) {
+ return extractGuards(
+ activated,
+ 'beforeRouteEnter',
+ function (guard, _, match, key) {
+ return bindEnterGuard(guard, match, key)
+ }
+ )
+}
+
+function bindEnterGuard (
+ guard,
+ match,
+ key
+) {
+ return function routeEnterGuard (to, from, next) {
+ return guard(to, from, function (cb) {
+ if (typeof cb === 'function') {
+ if (!match.enteredCbs[key]) {
+ match.enteredCbs[key] = [];
+ }
+ match.enteredCbs[key].push(cb);
+ }
+ next(cb);
+ })
+ }
+}
+
+/* */
+
+var HTML5History = /*@__PURE__*/(function (History) {
+ function HTML5History (router, base) {
+ History.call(this, router, base);
+
+ this._startLocation = getLocation(this.base);
+ }
+
+ if ( History ) HTML5History.__proto__ = History;
+ HTML5History.prototype = Object.create( History && History.prototype );
+ HTML5History.prototype.constructor = HTML5History;
+
+ HTML5History.prototype.setupListeners = function setupListeners () {
+ var this$1$1 = this;
+
+ if (this.listeners.length > 0) {
+ return
+ }
+
+ var router = this.router;
+ var expectScroll = router.options.scrollBehavior;
+ var supportsScroll = supportsPushState && expectScroll;
+
+ if (supportsScroll) {
+ this.listeners.push(setupScroll());
+ }
+
+ var handleRoutingEvent = function () {
+ var current = this$1$1.current;
+
+ // Avoiding first `popstate` event dispatched in some browsers but first
+ // history route not updated since async guard at the same time.
+ var location = getLocation(this$1$1.base);
+ if (this$1$1.current === START && location === this$1$1._startLocation) {
+ return
+ }
+
+ this$1$1.transitionTo(location, function (route) {
+ if (supportsScroll) {
+ handleScroll(router, route, current, true);
+ }
+ });
+ };
+ window.addEventListener('popstate', handleRoutingEvent);
+ this.listeners.push(function () {
+ window.removeEventListener('popstate', handleRoutingEvent);
+ });
+ };
+
+ HTML5History.prototype.go = function go (n) {
+ window.history.go(n);
+ };
+
+ HTML5History.prototype.push = function push (location, onComplete, onAbort) {
+ var this$1$1 = this;
+
+ var ref = this;
+ var fromRoute = ref.current;
+ this.transitionTo(location, function (route) {
+ pushState(cleanPath(this$1$1.base + route.fullPath));
+ handleScroll(this$1$1.router, route, fromRoute, false);
+ onComplete && onComplete(route);
+ }, onAbort);
+ };
+
+ HTML5History.prototype.replace = function replace (location, onComplete, onAbort) {
+ var this$1$1 = this;
+
+ var ref = this;
+ var fromRoute = ref.current;
+ this.transitionTo(location, function (route) {
+ replaceState(cleanPath(this$1$1.base + route.fullPath));
+ handleScroll(this$1$1.router, route, fromRoute, false);
+ onComplete && onComplete(route);
+ }, onAbort);
+ };
+
+ HTML5History.prototype.ensureURL = function ensureURL (push) {
+ if (getLocation(this.base) !== this.current.fullPath) {
+ var current = cleanPath(this.base + this.current.fullPath);
+ push ? pushState(current) : replaceState(current);
+ }
+ };
+
+ HTML5History.prototype.getCurrentLocation = function getCurrentLocation () {
+ return getLocation(this.base)
+ };
+
+ return HTML5History;
+}(History));
+
+function getLocation (base) {
+ var path = window.location.pathname;
+ var pathLowerCase = path.toLowerCase();
+ var baseLowerCase = base.toLowerCase();
+ // base="/a" shouldn't turn path="/app" into "/a/pp"
+ // https://github.com/vuejs/vue-router/issues/3555
+ // so we ensure the trailing slash in the base
+ if (base && ((pathLowerCase === baseLowerCase) ||
+ (pathLowerCase.indexOf(cleanPath(baseLowerCase + '/')) === 0))) {
+ path = path.slice(base.length);
+ }
+ return (path || '/') + window.location.search + window.location.hash
+}
+
+/* */
+
+var HashHistory = /*@__PURE__*/(function (History) {
+ function HashHistory (router, base, fallback) {
+ History.call(this, router, base);
+ // check history fallback deeplinking
+ if (fallback && checkFallback(this.base)) {
+ return
+ }
+ ensureSlash();
+ }
+
+ if ( History ) HashHistory.__proto__ = History;
+ HashHistory.prototype = Object.create( History && History.prototype );
+ HashHistory.prototype.constructor = HashHistory;
+
+ // this is delayed until the app mounts
+ // to avoid the hashchange listener being fired too early
+ HashHistory.prototype.setupListeners = function setupListeners () {
+ var this$1$1 = this;
+
+ if (this.listeners.length > 0) {
+ return
+ }
+
+ var router = this.router;
+ var expectScroll = router.options.scrollBehavior;
+ var supportsScroll = supportsPushState && expectScroll;
+
+ if (supportsScroll) {
+ this.listeners.push(setupScroll());
+ }
+
+ var handleRoutingEvent = function () {
+ var current = this$1$1.current;
+ if (!ensureSlash()) {
+ return
+ }
+ this$1$1.transitionTo(getHash(), function (route) {
+ if (supportsScroll) {
+ handleScroll(this$1$1.router, route, current, true);
+ }
+ if (!supportsPushState) {
+ replaceHash(route.fullPath);
+ }
+ });
+ };
+ var eventType = supportsPushState ? 'popstate' : 'hashchange';
+ window.addEventListener(
+ eventType,
+ handleRoutingEvent
+ );
+ this.listeners.push(function () {
+ window.removeEventListener(eventType, handleRoutingEvent);
+ });
+ };
+
+ HashHistory.prototype.push = function push (location, onComplete, onAbort) {
+ var this$1$1 = this;
+
+ var ref = this;
+ var fromRoute = ref.current;
+ this.transitionTo(
+ location,
+ function (route) {
+ pushHash(route.fullPath);
+ handleScroll(this$1$1.router, route, fromRoute, false);
+ onComplete && onComplete(route);
+ },
+ onAbort
+ );
+ };
+
+ HashHistory.prototype.replace = function replace (location, onComplete, onAbort) {
+ var this$1$1 = this;
+
+ var ref = this;
+ var fromRoute = ref.current;
+ this.transitionTo(
+ location,
+ function (route) {
+ replaceHash(route.fullPath);
+ handleScroll(this$1$1.router, route, fromRoute, false);
+ onComplete && onComplete(route);
+ },
+ onAbort
+ );
+ };
+
+ HashHistory.prototype.go = function go (n) {
+ window.history.go(n);
+ };
+
+ HashHistory.prototype.ensureURL = function ensureURL (push) {
+ var current = this.current.fullPath;
+ if (getHash() !== current) {
+ push ? pushHash(current) : replaceHash(current);
+ }
+ };
+
+ HashHistory.prototype.getCurrentLocation = function getCurrentLocation () {
+ return getHash()
+ };
+
+ return HashHistory;
+}(History));
+
+function checkFallback (base) {
+ var location = getLocation(base);
+ if (!/^\/#/.test(location)) {
+ window.location.replace(cleanPath(base + '/#' + location));
+ return true
+ }
+}
+
+function ensureSlash () {
+ var path = getHash();
+ if (path.charAt(0) === '/') {
+ return true
+ }
+ replaceHash('/' + path);
+ return false
+}
+
+function getHash () {
+ // We can't use window.location.hash here because it's not
+ // consistent across browsers - Firefox will pre-decode it!
+ var href = window.location.href;
+ var index = href.indexOf('#');
+ // empty path
+ if (index < 0) { return '' }
+
+ href = href.slice(index + 1);
+
+ return href
+}
+
+function getUrl (path) {
+ var href = window.location.href;
+ var i = href.indexOf('#');
+ var base = i >= 0 ? href.slice(0, i) : href;
+ return (base + "#" + path)
+}
+
+function pushHash (path) {
+ if (supportsPushState) {
+ pushState(getUrl(path));
+ } else {
+ window.location.hash = path;
+ }
+}
+
+function replaceHash (path) {
+ if (supportsPushState) {
+ replaceState(getUrl(path));
+ } else {
+ window.location.replace(getUrl(path));
+ }
+}
+
+/* */
+
+var AbstractHistory = /*@__PURE__*/(function (History) {
+ function AbstractHistory (router, base) {
+ History.call(this, router, base);
+ this.stack = [];
+ this.index = -1;
+ }
+
+ if ( History ) AbstractHistory.__proto__ = History;
+ AbstractHistory.prototype = Object.create( History && History.prototype );
+ AbstractHistory.prototype.constructor = AbstractHistory;
+
+ AbstractHistory.prototype.push = function push (location, onComplete, onAbort) {
+ var this$1$1 = this;
+
+ this.transitionTo(
+ location,
+ function (route) {
+ this$1$1.stack = this$1$1.stack.slice(0, this$1$1.index + 1).concat(route);
+ this$1$1.index++;
+ onComplete && onComplete(route);
+ },
+ onAbort
+ );
+ };
+
+ AbstractHistory.prototype.replace = function replace (location, onComplete, onAbort) {
+ var this$1$1 = this;
+
+ this.transitionTo(
+ location,
+ function (route) {
+ this$1$1.stack = this$1$1.stack.slice(0, this$1$1.index).concat(route);
+ onComplete && onComplete(route);
+ },
+ onAbort
+ );
+ };
+
+ AbstractHistory.prototype.go = function go (n) {
+ var this$1$1 = this;
+
+ var targetIndex = this.index + n;
+ if (targetIndex < 0 || targetIndex >= this.stack.length) {
+ return
+ }
+ var route = this.stack[targetIndex];
+ this.confirmTransition(
+ route,
+ function () {
+ var prev = this$1$1.current;
+ this$1$1.index = targetIndex;
+ this$1$1.updateRoute(route);
+ this$1$1.router.afterHooks.forEach(function (hook) {
+ hook && hook(route, prev);
+ });
+ },
+ function (err) {
+ if (isNavigationFailure(err, NavigationFailureType.duplicated)) {
+ this$1$1.index = targetIndex;
+ }
+ }
+ );
+ };
+
+ AbstractHistory.prototype.getCurrentLocation = function getCurrentLocation () {
+ var current = this.stack[this.stack.length - 1];
+ return current ? current.fullPath : '/'
+ };
+
+ AbstractHistory.prototype.ensureURL = function ensureURL () {
+ // noop
+ };
+
+ return AbstractHistory;
+}(History));
+
+/* */
+
+
+
+var VueRouter = function VueRouter (options) {
+ if ( options === void 0 ) options = {};
+
+ if (true) {
+ warn(this instanceof VueRouter, "Router must be called with the new operator.");
+ }
+ this.app = null;
+ this.apps = [];
+ this.options = options;
+ this.beforeHooks = [];
+ this.resolveHooks = [];
+ this.afterHooks = [];
+ this.matcher = createMatcher(options.routes || [], this);
+
+ var mode = options.mode || 'hash';
+ this.fallback =
+ mode === 'history' && !supportsPushState && options.fallback !== false;
+ if (this.fallback) {
+ mode = 'hash';
+ }
+ if (!inBrowser) {
+ mode = 'abstract';
+ }
+ this.mode = mode;
+
+ switch (mode) {
+ case 'history':
+ this.history = new HTML5History(this, options.base);
+ break
+ case 'hash':
+ this.history = new HashHistory(this, options.base, this.fallback);
+ break
+ case 'abstract':
+ this.history = new AbstractHistory(this, options.base);
+ break
+ default:
+ if (true) {
+ assert(false, ("invalid mode: " + mode));
+ }
+ }
+};
+
+var prototypeAccessors = { currentRoute: { configurable: true } };
+
+VueRouter.prototype.match = function match (raw, current, redirectedFrom) {
+ return this.matcher.match(raw, current, redirectedFrom)
+};
+
+prototypeAccessors.currentRoute.get = function () {
+ return this.history && this.history.current
+};
+
+VueRouter.prototype.init = function init (app /* Vue component instance */) {
+ var this$1$1 = this;
+
+ true &&
+ assert(
+ install.installed,
+ "not installed. Make sure to call `Vue.use(VueRouter)` " +
+ "before creating root instance."
+ );
+
+ this.apps.push(app);
+
+ // set up app destroyed handler
+ // https://github.com/vuejs/vue-router/issues/2639
+ app.$once('hook:destroyed', function () {
+ // clean out app from this.apps array once destroyed
+ var index = this$1$1.apps.indexOf(app);
+ if (index > -1) { this$1$1.apps.splice(index, 1); }
+ // ensure we still have a main app or null if no apps
+ // we do not release the router so it can be reused
+ if (this$1$1.app === app) { this$1$1.app = this$1$1.apps[0] || null; }
+
+ if (!this$1$1.app) { this$1$1.history.teardown(); }
+ });
+
+ // main app previously initialized
+ // return as we don't need to set up new history listener
+ if (this.app) {
+ return
+ }
+
+ this.app = app;
+
+ var history = this.history;
+
+ if (history instanceof HTML5History || history instanceof HashHistory) {
+ var handleInitialScroll = function (routeOrError) {
+ var from = history.current;
+ var expectScroll = this$1$1.options.scrollBehavior;
+ var supportsScroll = supportsPushState && expectScroll;
+
+ if (supportsScroll && 'fullPath' in routeOrError) {
+ handleScroll(this$1$1, routeOrError, from, false);
+ }
+ };
+ var setupListeners = function (routeOrError) {
+ history.setupListeners();
+ handleInitialScroll(routeOrError);
+ };
+ history.transitionTo(
+ history.getCurrentLocation(),
+ setupListeners,
+ setupListeners
+ );
+ }
+
+ history.listen(function (route) {
+ this$1$1.apps.forEach(function (app) {
+ app._route = route;
+ });
+ });
+};
+
+VueRouter.prototype.beforeEach = function beforeEach (fn) {
+ return registerHook(this.beforeHooks, fn)
+};
+
+VueRouter.prototype.beforeResolve = function beforeResolve (fn) {
+ return registerHook(this.resolveHooks, fn)
+};
+
+VueRouter.prototype.afterEach = function afterEach (fn) {
+ return registerHook(this.afterHooks, fn)
+};
+
+VueRouter.prototype.onReady = function onReady (cb, errorCb) {
+ this.history.onReady(cb, errorCb);
+};
+
+VueRouter.prototype.onError = function onError (errorCb) {
+ this.history.onError(errorCb);
+};
+
+VueRouter.prototype.push = function push (location, onComplete, onAbort) {
+ var this$1$1 = this;
+
+ // $flow-disable-line
+ if (!onComplete && !onAbort && typeof Promise !== 'undefined') {
+ return new Promise(function (resolve, reject) {
+ this$1$1.history.push(location, resolve, reject);
+ })
+ } else {
+ this.history.push(location, onComplete, onAbort);
+ }
+};
+
+VueRouter.prototype.replace = function replace (location, onComplete, onAbort) {
+ var this$1$1 = this;
+
+ // $flow-disable-line
+ if (!onComplete && !onAbort && typeof Promise !== 'undefined') {
+ return new Promise(function (resolve, reject) {
+ this$1$1.history.replace(location, resolve, reject);
+ })
+ } else {
+ this.history.replace(location, onComplete, onAbort);
+ }
+};
+
+VueRouter.prototype.go = function go (n) {
+ this.history.go(n);
+};
+
+VueRouter.prototype.back = function back () {
+ this.go(-1);
+};
+
+VueRouter.prototype.forward = function forward () {
+ this.go(1);
+};
+
+VueRouter.prototype.getMatchedComponents = function getMatchedComponents (to) {
+ var route = to
+ ? to.matched
+ ? to
+ : this.resolve(to).route
+ : this.currentRoute;
+ if (!route) {
+ return []
+ }
+ return [].concat.apply(
+ [],
+ route.matched.map(function (m) {
+ return Object.keys(m.components).map(function (key) {
+ return m.components[key]
+ })
+ })
+ )
+};
+
+VueRouter.prototype.resolve = function resolve (
+ to,
+ current,
+ append
+) {
+ current = current || this.history.current;
+ var location = normalizeLocation(to, current, append, this);
+ var route = this.match(location, current);
+ var fullPath = route.redirectedFrom || route.fullPath;
+ var base = this.history.base;
+ var href = createHref(base, fullPath, this.mode);
+ return {
+ location: location,
+ route: route,
+ href: href,
+ // for backwards compat
+ normalizedTo: location,
+ resolved: route
+ }
+};
+
+VueRouter.prototype.getRoutes = function getRoutes () {
+ return this.matcher.getRoutes()
+};
+
+VueRouter.prototype.addRoute = function addRoute (parentOrRoute, route) {
+ this.matcher.addRoute(parentOrRoute, route);
+ if (this.history.current !== START) {
+ this.history.transitionTo(this.history.getCurrentLocation());
+ }
+};
+
+VueRouter.prototype.addRoutes = function addRoutes (routes) {
+ if (true) {
+ warn(false, 'router.addRoutes() is deprecated and has been removed in Vue Router 4. Use router.addRoute() instead.');
+ }
+ this.matcher.addRoutes(routes);
+ if (this.history.current !== START) {
+ this.history.transitionTo(this.history.getCurrentLocation());
+ }
+};
+
+Object.defineProperties( VueRouter.prototype, prototypeAccessors );
+
+var VueRouter$1 = VueRouter;
+
+function registerHook (list, fn) {
+ list.push(fn);
+ return function () {
+ var i = list.indexOf(fn);
+ if (i > -1) { list.splice(i, 1); }
+ }
+}
+
+function createHref (base, fullPath, mode) {
+ var path = mode === 'hash' ? '#' + fullPath : fullPath;
+ return base ? cleanPath(base + '/' + path) : path
+}
+
+// We cannot remove this as it would be a breaking change
+VueRouter.install = install;
+VueRouter.version = '3.6.5';
+VueRouter.isNavigationFailure = isNavigationFailure;
+VueRouter.NavigationFailureType = NavigationFailureType;
+VueRouter.START_LOCATION = START;
+
+if (inBrowser && window.Vue) {
+ window.Vue.use(VueRouter);
+}
+
+var version = '3.6.5';
+
+
+
+
+/***/ }),
+
+/***/ "./node_modules/@mdi/svg/svg/arrow-down.svg?raw":
+/*!******************************************************!*\
+ !*** ./node_modules/@mdi/svg/svg/arrow-down.svg?raw ***!
+ \******************************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-arrow-down\" viewBox=\"0 0 24 24\"><path d=\"M11,4H13V16L18.5,10.5L19.92,11.92L12,19.84L4.08,11.92L5.5,10.5L11,16V4Z\" /></svg>";
+
+/***/ }),
+
+/***/ "./node_modules/@mdi/svg/svg/folder-move.svg?raw":
+/*!*******************************************************!*\
+ !*** ./node_modules/@mdi/svg/svg/folder-move.svg?raw ***!
+ \*******************************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-folder-move\" viewBox=\"0 0 24 24\"><path d=\"M14,18V15H10V11H14V8L19,13M20,6H12L10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6Z\" /></svg>";
+
+/***/ }),
+
+/***/ "./node_modules/@mdi/svg/svg/folder.svg?raw":
+/*!**************************************************!*\
+ !*** ./node_modules/@mdi/svg/svg/folder.svg?raw ***!
+ \**************************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-folder\" viewBox=\"0 0 24 24\"><path d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\" /></svg>";
+
+/***/ }),
+
+/***/ "./node_modules/@mdi/svg/svg/history.svg?raw":
+/*!***************************************************!*\
+ !*** ./node_modules/@mdi/svg/svg/history.svg?raw ***!
+ \***************************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-history\" viewBox=\"0 0 24 24\"><path d=\"M13.5,8H12V13L16.28,15.54L17,14.33L13.5,12.25V8M13,3A9,9 0 0,0 4,12H1L4.96,16.03L9,12H6A7,7 0 0,1 13,5A7,7 0 0,1 20,12A7,7 0 0,1 13,19C11.07,19 9.32,18.21 8.06,16.94L6.64,18.36C8.27,20 10.5,21 13,21A9,9 0 0,0 22,12A9,9 0 0,0 13,3\" /></svg>";
+
+/***/ }),
+
+/***/ "./node_modules/@mdi/svg/svg/information-variant.svg?raw":
+/*!***************************************************************!*\
+ !*** ./node_modules/@mdi/svg/svg/information-variant.svg?raw ***!
+ \***************************************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-information-variant\" viewBox=\"0 0 24 24\"><path d=\"M13.5,4A1.5,1.5 0 0,0 12,5.5A1.5,1.5 0 0,0 13.5,7A1.5,1.5 0 0,0 15,5.5A1.5,1.5 0 0,0 13.5,4M13.14,8.77C11.95,8.87 8.7,11.46 8.7,11.46C8.5,11.61 8.56,11.6 8.72,11.88C8.88,12.15 8.86,12.17 9.05,12.04C9.25,11.91 9.58,11.7 10.13,11.36C12.25,10 10.47,13.14 9.56,18.43C9.2,21.05 11.56,19.7 12.17,19.3C12.77,18.91 14.38,17.8 14.54,17.69C14.76,17.54 14.6,17.42 14.43,17.17C14.31,17 14.19,17.12 14.19,17.12C13.54,17.55 12.35,18.45 12.19,17.88C12,17.31 13.22,13.4 13.89,10.71C14,10.07 14.3,8.67 13.14,8.77Z\" /></svg>";
+
+/***/ }),
+
+/***/ "./node_modules/@mdi/svg/svg/laptop.svg?raw":
+/*!**************************************************!*\
+ !*** ./node_modules/@mdi/svg/svg/laptop.svg?raw ***!
+ \**************************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-laptop\" viewBox=\"0 0 24 24\"><path d=\"M4,6H20V16H4M20,18A2,2 0 0,0 22,16V6C22,4.89 21.1,4 20,4H4C2.89,4 2,4.89 2,6V16A2,2 0 0,0 4,18H0V20H24V18H20Z\" /></svg>";
+
+/***/ }),
+
+/***/ "./node_modules/@mdi/svg/svg/pencil.svg?raw":
+/*!**************************************************!*\
+ !*** ./node_modules/@mdi/svg/svg/pencil.svg?raw ***!
+ \**************************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-pencil\" viewBox=\"0 0 24 24\"><path d=\"M20.71,7.04C21.1,6.65 21.1,6 20.71,5.63L18.37,3.29C18,2.9 17.35,2.9 16.96,3.29L15.12,5.12L18.87,8.87M3,17.25V21H6.75L17.81,9.93L14.06,6.18L3,17.25Z\" /></svg>";
+
+/***/ }),
+
+/***/ "./node_modules/@mdi/svg/svg/star-outline.svg?raw":
+/*!********************************************************!*\
+ !*** ./node_modules/@mdi/svg/svg/star-outline.svg?raw ***!
+ \********************************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-star-outline\" viewBox=\"0 0 24 24\"><path d=\"M12,15.39L8.24,17.66L9.23,13.38L5.91,10.5L10.29,10.13L12,6.09L13.71,10.13L18.09,10.5L14.77,13.38L15.76,17.66M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z\" /></svg>";
+
+/***/ }),
+
+/***/ "./node_modules/@mdi/svg/svg/star.svg?raw":
+/*!************************************************!*\
+ !*** ./node_modules/@mdi/svg/svg/star.svg?raw ***!
+ \************************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-star\" viewBox=\"0 0 24 24\"><path d=\"M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z\" /></svg>";
+
+/***/ }),
+
+/***/ "./node_modules/@mdi/svg/svg/trash-can.svg?raw":
+/*!*****************************************************!*\
+ !*** ./node_modules/@mdi/svg/svg/trash-can.svg?raw ***!
+ \*****************************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-trash-can\" viewBox=\"0 0 24 24\"><path d=\"M9,3V4H4V6H5V19A2,2 0 0,0 7,21H17A2,2 0 0,0 19,19V6H20V4H15V3H9M9,8H11V17H9V8M13,8H15V17H13V8Z\" /></svg>";
+
+/***/ }),
+
+/***/ "?4f7e":
+/*!********************************!*\
+ !*** ./util.inspect (ignored) ***!
+ \********************************/
+/***/ (function() {
+
+/* (ignored) */
+
+/***/ }),
+
+/***/ "?ed1b":
+/*!**********************!*\
+ !*** util (ignored) ***!
+ \**********************/
+/***/ (function() {
+
+/* (ignored) */
+
+/***/ }),
+
+/***/ "?d17e":
+/*!**********************!*\
+ !*** util (ignored) ***!
+ \**********************/
+/***/ (function() {
+
+/* (ignored) */
+
+/***/ }),
+
+/***/ "./node_modules/@vueuse/components/index.mjs":
+/*!***************************************************!*\
+ !*** ./node_modules/@vueuse/components/index.mjs ***!
+ \***************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ OnClickOutside: function() { return /* binding */ OnClickOutside; },
+/* harmony export */ OnLongPress: function() { return /* binding */ OnLongPress; },
+/* harmony export */ UseActiveElement: function() { return /* binding */ UseActiveElement; },
+/* harmony export */ UseBattery: function() { return /* binding */ UseBattery; },
+/* harmony export */ UseBrowserLocation: function() { return /* binding */ UseBrowserLocation; },
+/* harmony export */ UseColorMode: function() { return /* binding */ UseColorMode; },
+/* harmony export */ UseDark: function() { return /* binding */ UseDark; },
+/* harmony export */ UseDeviceMotion: function() { return /* binding */ UseDeviceMotion; },
+/* harmony export */ UseDeviceOrientation: function() { return /* binding */ UseDeviceOrientation; },
+/* harmony export */ UseDevicePixelRatio: function() { return /* binding */ UseDevicePixelRatio; },
+/* harmony export */ UseDevicesList: function() { return /* binding */ UseDevicesList; },
+/* harmony export */ UseDocumentVisibility: function() { return /* binding */ UseDocumentVisibility; },
+/* harmony export */ UseDraggable: function() { return /* binding */ UseDraggable; },
+/* harmony export */ UseElementBounding: function() { return /* binding */ UseElementBounding; },
+/* harmony export */ UseElementSize: function() { return /* binding */ UseElementSize; },
+/* harmony export */ UseElementVisibility: function() { return /* binding */ UseElementVisibility; },
+/* harmony export */ UseEyeDropper: function() { return /* binding */ UseEyeDropper; },
+/* harmony export */ UseFullscreen: function() { return /* binding */ UseFullscreen; },
+/* harmony export */ UseGeolocation: function() { return /* binding */ UseGeolocation; },
+/* harmony export */ UseIdle: function() { return /* binding */ UseIdle; },
+/* harmony export */ UseImage: function() { return /* binding */ UseImage; },
+/* harmony export */ UseMouse: function() { return /* binding */ UseMouse; },
+/* harmony export */ UseMouseInElement: function() { return /* binding */ UseMouseInElement; },
+/* harmony export */ UseMousePressed: function() { return /* binding */ UseMousePressed; },
+/* harmony export */ UseNetwork: function() { return /* binding */ UseNetwork; },
+/* harmony export */ UseNow: function() { return /* binding */ UseNow; },
+/* harmony export */ UseObjectUrl: function() { return /* binding */ UseObjectUrl; },
+/* harmony export */ UseOffsetPagination: function() { return /* binding */ UseOffsetPagination; },
+/* harmony export */ UseOnline: function() { return /* binding */ UseOnline; },
+/* harmony export */ UsePageLeave: function() { return /* binding */ UsePageLeave; },
+/* harmony export */ UsePointer: function() { return /* binding */ UsePointer; },
+/* harmony export */ UsePointerLock: function() { return /* binding */ UsePointerLock; },
+/* harmony export */ UsePreferredColorScheme: function() { return /* binding */ UsePreferredColorScheme; },
+/* harmony export */ UsePreferredContrast: function() { return /* binding */ UsePreferredContrast; },
+/* harmony export */ UsePreferredDark: function() { return /* binding */ UsePreferredDark; },
+/* harmony export */ UsePreferredLanguages: function() { return /* binding */ UsePreferredLanguages; },
+/* harmony export */ UsePreferredReducedMotion: function() { return /* binding */ UsePreferredReducedMotion; },
+/* harmony export */ UseScreenSafeArea: function() { return /* binding */ UseScreenSafeArea; },
+/* harmony export */ UseTimeAgo: function() { return /* binding */ UseTimeAgo; },
+/* harmony export */ UseTimestamp: function() { return /* binding */ UseTimestamp; },
+/* harmony export */ UseVirtualList: function() { return /* binding */ UseVirtualList; },
+/* harmony export */ UseWindowFocus: function() { return /* binding */ UseWindowFocus; },
+/* harmony export */ UseWindowSize: function() { return /* binding */ UseWindowSize; },
+/* harmony export */ VOnClickOutside: function() { return /* binding */ vOnClickOutside; },
+/* harmony export */ VOnLongPress: function() { return /* binding */ vOnLongPress; },
+/* harmony export */ vElementHover: function() { return /* binding */ vElementHover; },
+/* harmony export */ vElementSize: function() { return /* binding */ vElementSize; },
+/* harmony export */ vElementVisibility: function() { return /* binding */ vElementVisibility; },
+/* harmony export */ vInfiniteScroll: function() { return /* binding */ vInfiniteScroll; },
+/* harmony export */ vIntersectionObserver: function() { return /* binding */ vIntersectionObserver; },
+/* harmony export */ vOnClickOutside: function() { return /* binding */ vOnClickOutside; },
+/* harmony export */ vOnKeyStroke: function() { return /* binding */ vOnKeyStroke; },
+/* harmony export */ vOnLongPress: function() { return /* binding */ vOnLongPress; },
+/* harmony export */ vScroll: function() { return /* binding */ vScroll; },
+/* harmony export */ vScrollLock: function() { return /* binding */ vScrollLock; }
+/* harmony export */ });
+/* harmony import */ var vue_demi__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-demi */ "./node_modules/@vueuse/components/node_modules/vue-demi/lib/index.mjs");
+/* harmony import */ var _vueuse_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @vueuse/core */ "./node_modules/@vueuse/core/index.mjs");
+/* harmony import */ var _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @vueuse/shared */ "./node_modules/@vueuse/shared/index.mjs");
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+
+
+
+
+const OnClickOutside = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "OnClickOutside",
+ props: ["as", "options"],
+ emits: ["trigger"],
+ setup(props, { slots, emit }) {
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.onClickOutside)(target, (e) => {
+ emit("trigger", e);
+ }, props.options);
+ return () => {
+ if (slots.default)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "div", { ref: target }, slots.default());
+ };
+ }
+});
+
+function unrefElement(elRef) {
+ var _a;
+ const plain = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(elRef);
+ return (_a = plain == null ? void 0 : plain.$el) != null ? _a : plain;
+}
+
+const defaultWindow = _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.isClient ? window : void 0;
+
+function useEventListener(...args) {
+ let target;
+ let events;
+ let listeners;
+ let options;
+ if (typeof args[0] === "string" || Array.isArray(args[0])) {
+ [events, listeners, options] = args;
+ target = defaultWindow;
+ } else {
+ [target, events, listeners, options] = args;
+ }
+ if (!target)
+ return _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.noop;
+ if (!Array.isArray(events))
+ events = [events];
+ if (!Array.isArray(listeners))
+ listeners = [listeners];
+ const cleanups = [];
+ const cleanup = () => {
+ cleanups.forEach((fn) => fn());
+ cleanups.length = 0;
+ };
+ const register = (el, event, listener, options2) => {
+ el.addEventListener(event, listener, options2);
+ return () => el.removeEventListener(event, listener, options2);
+ };
+ const stopWatch = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ () => [unrefElement(target), (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(options)],
+ ([el, options2]) => {
+ cleanup();
+ if (!el)
+ return;
+ cleanups.push(
+ ...events.flatMap((event) => {
+ return listeners.map((listener) => register(el, event, listener, options2));
+ })
+ );
+ },
+ { immediate: true, flush: "post" }
+ );
+ const stop = () => {
+ stopWatch();
+ cleanup();
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.tryOnScopeDispose)(stop);
+ return stop;
+}
+
+let _iOSWorkaround = false;
+function onClickOutside(target, handler, options = {}) {
+ const { window = defaultWindow, ignore = [], capture = true, detectIframe = false } = options;
+ if (!window)
+ return;
+ if (_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.isIOS && !_iOSWorkaround) {
+ _iOSWorkaround = true;
+ Array.from(window.document.body.children).forEach((el) => el.addEventListener("click", _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.noop));
+ window.document.documentElement.addEventListener("click", _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.noop);
+ }
+ let shouldListen = true;
+ const shouldIgnore = (event) => {
+ return ignore.some((target2) => {
+ if (typeof target2 === "string") {
+ return Array.from(window.document.querySelectorAll(target2)).some((el) => el === event.target || event.composedPath().includes(el));
+ } else {
+ const el = unrefElement(target2);
+ return el && (event.target === el || event.composedPath().includes(el));
+ }
+ });
+ };
+ const listener = (event) => {
+ const el = unrefElement(target);
+ if (!el || el === event.target || event.composedPath().includes(el))
+ return;
+ if (event.detail === 0)
+ shouldListen = !shouldIgnore(event);
+ if (!shouldListen) {
+ shouldListen = true;
+ return;
+ }
+ handler(event);
+ };
+ const cleanup = [
+ useEventListener(window, "click", listener, { passive: true, capture }),
+ useEventListener(window, "pointerdown", (e) => {
+ const el = unrefElement(target);
+ if (el)
+ shouldListen = !e.composedPath().includes(el) && !shouldIgnore(e);
+ }, { passive: true }),
+ detectIframe && useEventListener(window, "blur", (event) => {
+ setTimeout(() => {
+ var _a;
+ const el = unrefElement(target);
+ if (((_a = window.document.activeElement) == null ? void 0 : _a.tagName) === "IFRAME" && !(el == null ? void 0 : el.contains(window.document.activeElement)))
+ handler(event);
+ }, 0);
+ })
+ ].filter(Boolean);
+ const stop = () => cleanup.forEach((fn) => fn());
+ return stop;
+}
+
+const vOnClickOutside = {
+ [_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.directiveHooks.mounted](el, binding) {
+ const capture = !binding.modifiers.bubble;
+ if (typeof binding.value === "function") {
+ el.__onClickOutside_stop = onClickOutside(el, binding.value, { capture });
+ } else {
+ const [handler, options] = binding.value;
+ el.__onClickOutside_stop = onClickOutside(el, handler, Object.assign({ capture }, options));
+ }
+ },
+ [_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.directiveHooks.unmounted](el) {
+ el.__onClickOutside_stop();
+ }
+};
+
+function createKeyPredicate(keyFilter) {
+ if (typeof keyFilter === "function")
+ return keyFilter;
+ else if (typeof keyFilter === "string")
+ return (event) => event.key === keyFilter;
+ else if (Array.isArray(keyFilter))
+ return (event) => keyFilter.includes(event.key);
+ return () => true;
+}
+function onKeyStroke(...args) {
+ let key;
+ let handler;
+ let options = {};
+ if (args.length === 3) {
+ key = args[0];
+ handler = args[1];
+ options = args[2];
+ } else if (args.length === 2) {
+ if (typeof args[1] === "object") {
+ key = true;
+ handler = args[0];
+ options = args[1];
+ } else {
+ key = args[0];
+ handler = args[1];
+ }
+ } else {
+ key = true;
+ handler = args[0];
+ }
+ const {
+ target = defaultWindow,
+ eventName = "keydown",
+ passive = false,
+ dedupe = false
+ } = options;
+ const predicate = createKeyPredicate(key);
+ const listener = (e) => {
+ if (e.repeat && (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(dedupe))
+ return;
+ if (predicate(e))
+ handler(e);
+ };
+ return useEventListener(target, eventName, listener, passive);
+}
+
+var __defProp$e = Object.defineProperty;
+var __getOwnPropSymbols$g = Object.getOwnPropertySymbols;
+var __hasOwnProp$g = Object.prototype.hasOwnProperty;
+var __propIsEnum$g = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$e = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$g.call(b, prop))
+ __defNormalProp$e(a, prop, b[prop]);
+ if (__getOwnPropSymbols$g)
+ for (var prop of __getOwnPropSymbols$g(b)) {
+ if (__propIsEnum$g.call(b, prop))
+ __defNormalProp$e(a, prop, b[prop]);
+ }
+ return a;
+};
+const vOnKeyStroke = {
+ [_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.directiveHooks.mounted](el, binding) {
+ var _a, _b;
+ const keys = (_b = (_a = binding.arg) == null ? void 0 : _a.split(",")) != null ? _b : true;
+ if (typeof binding.value === "function") {
+ onKeyStroke(keys, binding.value, {
+ target: el
+ });
+ } else {
+ const [handler, options] = binding.value;
+ onKeyStroke(keys, handler, __spreadValues$e({
+ target: el
+ }, options));
+ }
+ }
+};
+
+const DEFAULT_DELAY = 500;
+function onLongPress(target, handler, options) {
+ var _a, _b;
+ const elementRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => unrefElement(target));
+ let timeout;
+ function clear() {
+ if (timeout) {
+ clearTimeout(timeout);
+ timeout = void 0;
+ }
+ }
+ function onDown(ev) {
+ var _a2, _b2, _c, _d;
+ if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)
+ return;
+ clear();
+ if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)
+ ev.preventDefault();
+ if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)
+ ev.stopPropagation();
+ timeout = setTimeout(
+ () => handler(ev),
+ (_d = options == null ? void 0 : options.delay) != null ? _d : DEFAULT_DELAY
+ );
+ }
+ const listenerOptions = {
+ capture: (_a = options == null ? void 0 : options.modifiers) == null ? void 0 : _a.capture,
+ once: (_b = options == null ? void 0 : options.modifiers) == null ? void 0 : _b.once
+ };
+ useEventListener(elementRef, "pointerdown", onDown, listenerOptions);
+ useEventListener(elementRef, ["pointerup", "pointerleave"], clear, listenerOptions);
+}
+
+const OnLongPress = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "OnLongPress",
+ props: ["as", "options"],
+ emits: ["trigger"],
+ setup(props, { slots, emit }) {
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ onLongPress(
+ target,
+ (e) => {
+ emit("trigger", e);
+ },
+ props.options
+ );
+ return () => {
+ if (slots.default)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "div", { ref: target }, slots.default());
+ };
+ }
+});
+
+const vOnLongPress = {
+ [_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.directiveHooks.mounted](el, binding) {
+ if (typeof binding.value === "function")
+ onLongPress(el, binding.value, { modifiers: binding.modifiers });
+ else
+ onLongPress(el, ...binding.value);
+ }
+};
+
+const UseActiveElement = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseActiveElement",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ element: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useActiveElement)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseBattery = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseBattery",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useBattery)(props));
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseBrowserLocation = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseBrowserLocation",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useBrowserLocation)());
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const _global = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
+const globalKey = "__vueuse_ssr_handlers__";
+const handlers = /* @__PURE__ */ getHandlers();
+function getHandlers() {
+ if (!(globalKey in _global))
+ _global[globalKey] = _global[globalKey] || {};
+ return _global[globalKey];
+}
+function getSSRHandler(key, fallback) {
+ return handlers[key] || fallback;
+}
+
+function guessSerializerType(rawInit) {
+ return rawInit == null ? "any" : rawInit instanceof Set ? "set" : rawInit instanceof Map ? "map" : rawInit instanceof Date ? "date" : typeof rawInit === "boolean" ? "boolean" : typeof rawInit === "string" ? "string" : typeof rawInit === "object" ? "object" : !Number.isNaN(rawInit) ? "number" : "any";
+}
+
+var __defProp$d = Object.defineProperty;
+var __getOwnPropSymbols$f = Object.getOwnPropertySymbols;
+var __hasOwnProp$f = Object.prototype.hasOwnProperty;
+var __propIsEnum$f = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$d = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$f.call(b, prop))
+ __defNormalProp$d(a, prop, b[prop]);
+ if (__getOwnPropSymbols$f)
+ for (var prop of __getOwnPropSymbols$f(b)) {
+ if (__propIsEnum$f.call(b, prop))
+ __defNormalProp$d(a, prop, b[prop]);
+ }
+ return a;
+};
+const StorageSerializers = {
+ boolean: {
+ read: (v) => v === "true",
+ write: (v) => String(v)
+ },
+ object: {
+ read: (v) => JSON.parse(v),
+ write: (v) => JSON.stringify(v)
+ },
+ number: {
+ read: (v) => Number.parseFloat(v),
+ write: (v) => String(v)
+ },
+ any: {
+ read: (v) => v,
+ write: (v) => String(v)
+ },
+ string: {
+ read: (v) => v,
+ write: (v) => String(v)
+ },
+ map: {
+ read: (v) => new Map(JSON.parse(v)),
+ write: (v) => JSON.stringify(Array.from(v.entries()))
+ },
+ set: {
+ read: (v) => new Set(JSON.parse(v)),
+ write: (v) => JSON.stringify(Array.from(v))
+ },
+ date: {
+ read: (v) => new Date(v),
+ write: (v) => v.toISOString()
+ }
+};
+const customStorageEventName = "vueuse-storage";
+function useStorage(key, defaults, storage, options = {}) {
+ var _a;
+ const {
+ flush = "pre",
+ deep = true,
+ listenToStorageChanges = true,
+ writeDefaults = true,
+ mergeDefaults = false,
+ shallow,
+ window = defaultWindow,
+ eventFilter,
+ onError = (e) => {
+ console.error(e);
+ }
+ } = options;
+ const data = (shallow ? vue_demi__WEBPACK_IMPORTED_MODULE_0__.shallowRef : vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(defaults);
+ if (!storage) {
+ try {
+ storage = getSSRHandler("getDefaultStorage", () => {
+ var _a2;
+ return (_a2 = defaultWindow) == null ? void 0 : _a2.localStorage;
+ })();
+ } catch (e) {
+ onError(e);
+ }
+ }
+ if (!storage)
+ return data;
+ const rawInit = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(defaults);
+ const type = guessSerializerType(rawInit);
+ const serializer = (_a = options.serializer) != null ? _a : StorageSerializers[type];
+ const { pause: pauseWatch, resume: resumeWatch } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.pausableWatch)(
+ data,
+ () => write(data.value),
+ { flush, deep, eventFilter }
+ );
+ if (window && listenToStorageChanges) {
+ useEventListener(window, "storage", update);
+ useEventListener(window, customStorageEventName, updateFromCustomEvent);
+ }
+ update();
+ return data;
+ function write(v) {
+ try {
+ if (v == null) {
+ storage.removeItem(key);
+ } else {
+ const serialized = serializer.write(v);
+ const oldValue = storage.getItem(key);
+ if (oldValue !== serialized) {
+ storage.setItem(key, serialized);
+ if (window) {
+ window.dispatchEvent(new CustomEvent(customStorageEventName, {
+ detail: {
+ key,
+ oldValue,
+ newValue: serialized,
+ storageArea: storage
+ }
+ }));
+ }
+ }
+ }
+ } catch (e) {
+ onError(e);
+ }
+ }
+ function read(event) {
+ const rawValue = event ? event.newValue : storage.getItem(key);
+ if (rawValue == null) {
+ if (writeDefaults && rawInit !== null)
+ storage.setItem(key, serializer.write(rawInit));
+ return rawInit;
+ } else if (!event && mergeDefaults) {
+ const value = serializer.read(rawValue);
+ if (typeof mergeDefaults === "function")
+ return mergeDefaults(value, rawInit);
+ else if (type === "object" && !Array.isArray(value))
+ return __spreadValues$d(__spreadValues$d({}, rawInit), value);
+ return value;
+ } else if (typeof rawValue !== "string") {
+ return rawValue;
+ } else {
+ return serializer.read(rawValue);
+ }
+ }
+ function updateFromCustomEvent(event) {
+ update(event.detail);
+ }
+ function update(event) {
+ if (event && event.storageArea !== storage)
+ return;
+ if (event && event.key == null) {
+ data.value = rawInit;
+ return;
+ }
+ if (event && event.key !== key)
+ return;
+ pauseWatch();
+ try {
+ data.value = read(event);
+ } catch (e) {
+ onError(e);
+ } finally {
+ if (event)
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.nextTick)(resumeWatch);
+ else
+ resumeWatch();
+ }
+ }
+}
+
+function useMounted() {
+ const isMounted = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance)()) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.onMounted)(() => {
+ isMounted.value = true;
+ });
+ }
+ return isMounted;
+}
+
+function useSupported(callback) {
+ const isMounted = useMounted();
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ isMounted.value;
+ return Boolean(callback());
+ });
+}
+
+function useMediaQuery(query, options = {}) {
+ const { window = defaultWindow } = options;
+ const isSupported = useSupported(() => window && "matchMedia" in window && typeof window.matchMedia === "function");
+ let mediaQuery;
+ const matches = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ const handler = (event) => {
+ matches.value = event.matches;
+ };
+ const cleanup = () => {
+ if (!mediaQuery)
+ return;
+ if ("removeEventListener" in mediaQuery)
+ mediaQuery.removeEventListener("change", handler);
+ else
+ mediaQuery.removeListener(handler);
+ };
+ const stopWatch = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watchEffect)(() => {
+ if (!isSupported.value)
+ return;
+ cleanup();
+ mediaQuery = window.matchMedia((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(query));
+ if ("addEventListener" in mediaQuery)
+ mediaQuery.addEventListener("change", handler);
+ else
+ mediaQuery.addListener(handler);
+ matches.value = mediaQuery.matches;
+ });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.tryOnScopeDispose)(() => {
+ stopWatch();
+ cleanup();
+ mediaQuery = void 0;
+ });
+ return matches;
+}
+
+function usePreferredDark(options) {
+ return useMediaQuery("(prefers-color-scheme: dark)", options);
+}
+
+var __defProp$c = Object.defineProperty;
+var __getOwnPropSymbols$e = Object.getOwnPropertySymbols;
+var __hasOwnProp$e = Object.prototype.hasOwnProperty;
+var __propIsEnum$e = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$c = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$e.call(b, prop))
+ __defNormalProp$c(a, prop, b[prop]);
+ if (__getOwnPropSymbols$e)
+ for (var prop of __getOwnPropSymbols$e(b)) {
+ if (__propIsEnum$e.call(b, prop))
+ __defNormalProp$c(a, prop, b[prop]);
+ }
+ return a;
+};
+function useColorMode(options = {}) {
+ const {
+ selector = "html",
+ attribute = "class",
+ initialValue = "auto",
+ window = defaultWindow,
+ storage,
+ storageKey = "vueuse-color-scheme",
+ listenToStorageChanges = true,
+ storageRef,
+ emitAuto,
+ disableTransition = true
+ } = options;
+ const modes = __spreadValues$c({
+ auto: "",
+ light: "light",
+ dark: "dark"
+ }, options.modes || {});
+ const preferredDark = usePreferredDark({ window });
+ const system = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => preferredDark.value ? "dark" : "light");
+ const store = storageRef || (storageKey == null ? (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toRef)(initialValue) : useStorage(storageKey, initialValue, storage, { window, listenToStorageChanges }));
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(
+ () => store.value === "auto" ? system.value : store.value
+ );
+ const updateHTMLAttrs = getSSRHandler(
+ "updateHTMLAttrs",
+ (selector2, attribute2, value) => {
+ const el = typeof selector2 === "string" ? window == null ? void 0 : window.document.querySelector(selector2) : unrefElement(selector2);
+ if (!el)
+ return;
+ let style;
+ if (disableTransition) {
+ style = window.document.createElement("style");
+ const styleString = "*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";
+ style.appendChild(document.createTextNode(styleString));
+ window.document.head.appendChild(style);
+ }
+ if (attribute2 === "class") {
+ const current = value.split(/\s/g);
+ Object.values(modes).flatMap((i) => (i || "").split(/\s/g)).filter(Boolean).forEach((v) => {
+ if (current.includes(v))
+ el.classList.add(v);
+ else
+ el.classList.remove(v);
+ });
+ } else {
+ el.setAttribute(attribute2, value);
+ }
+ if (disableTransition) {
+ window.getComputedStyle(style).opacity;
+ document.head.removeChild(style);
+ }
+ }
+ );
+ function defaultOnChanged(mode) {
+ var _a;
+ updateHTMLAttrs(selector, attribute, (_a = modes[mode]) != null ? _a : mode);
+ }
+ function onChanged(mode) {
+ if (options.onChanged)
+ options.onChanged(mode, defaultOnChanged);
+ else
+ defaultOnChanged(mode);
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(state, onChanged, { flush: "post", immediate: true });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.tryOnMounted)(() => onChanged(state.value));
+ const auto = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)({
+ get() {
+ return emitAuto ? store.value : state.value;
+ },
+ set(v) {
+ store.value = v;
+ }
+ });
+ try {
+ return Object.assign(auto, { store, system, state });
+ } catch (e) {
+ return auto;
+ }
+}
+
+const UseColorMode = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseColorMode",
+ props: ["selector", "attribute", "modes", "onChanged", "storageKey", "storage", "emitAuto"],
+ setup(props, { slots }) {
+ const mode = useColorMode(props);
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ mode,
+ system: mode.system,
+ store: mode.store
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseDark = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseDark",
+ props: ["selector", "attribute", "valueDark", "valueLight", "onChanged", "storageKey", "storage"],
+ setup(props, { slots }) {
+ const isDark = (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useDark)(props);
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ isDark,
+ toggleDark: (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.useToggle)(isDark)
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseDeviceMotion = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseDeviceMotion",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useDeviceMotion)());
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseDeviceOrientation = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseDeviceOrientation",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useDeviceOrientation)());
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseDevicePixelRatio = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseDevicePixelRatio",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ pixelRatio: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useDevicePixelRatio)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseDevicesList = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseDevicesList",
+ props: ["onUpdated", "requestPermissions", "constraints"],
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useDevicesList)(props));
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseDocumentVisibility = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseDocumentVisibility",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ visibility: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useDocumentVisibility)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+var __defProp$b = Object.defineProperty;
+var __defProps$9 = Object.defineProperties;
+var __getOwnPropDescs$9 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$d = Object.getOwnPropertySymbols;
+var __hasOwnProp$d = Object.prototype.hasOwnProperty;
+var __propIsEnum$d = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$b = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$d.call(b, prop))
+ __defNormalProp$b(a, prop, b[prop]);
+ if (__getOwnPropSymbols$d)
+ for (var prop of __getOwnPropSymbols$d(b)) {
+ if (__propIsEnum$d.call(b, prop))
+ __defNormalProp$b(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$9 = (a, b) => __defProps$9(a, __getOwnPropDescs$9(b));
+const UseDraggable = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseDraggable",
+ props: [
+ "storageKey",
+ "storageType",
+ "initialValue",
+ "exact",
+ "preventDefault",
+ "stopPropagation",
+ "pointerTypes",
+ "as",
+ "handle",
+ "axis",
+ "onStart",
+ "onMove",
+ "onEnd"
+ ],
+ setup(props, { slots }) {
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ const handle = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ var _a;
+ return (_a = props.handle) != null ? _a : target.value;
+ });
+ const storageValue = props.storageKey && (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useStorage)(
+ props.storageKey,
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(props.initialValue) || { x: 0, y: 0 },
+ _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.isClient ? props.storageType === "session" ? sessionStorage : localStorage : void 0
+ );
+ const initialValue = storageValue || props.initialValue || { x: 0, y: 0 };
+ const onEnd = (position, event) => {
+ var _a;
+ (_a = props.onEnd) == null ? void 0 : _a.call(props, position, event);
+ if (!storageValue)
+ return;
+ storageValue.value.x = position.x;
+ storageValue.value.y = position.y;
+ };
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useDraggable)(target, __spreadProps$9(__spreadValues$b({}, props), {
+ handle,
+ initialValue,
+ onEnd
+ })));
+ return () => {
+ if (slots.default)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "div", { ref: target, style: `touch-action:none;${data.style}` }, slots.default(data));
+ };
+ }
+});
+
+const UseElementBounding = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseElementBounding",
+ props: ["box", "as"],
+ setup(props, { slots }) {
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useElementBounding)(target));
+ return () => {
+ if (slots.default)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "div", { ref: target }, slots.default(data));
+ };
+ }
+});
+
+function useElementHover(el, options = {}) {
+ const {
+ delayEnter = 0,
+ delayLeave = 0,
+ window = defaultWindow
+ } = options;
+ const isHovered = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ let timer;
+ const toggle = (entering) => {
+ const delay = entering ? delayEnter : delayLeave;
+ if (timer) {
+ clearTimeout(timer);
+ timer = void 0;
+ }
+ if (delay)
+ timer = setTimeout(() => isHovered.value = entering, delay);
+ else
+ isHovered.value = entering;
+ };
+ if (!window)
+ return isHovered;
+ useEventListener(el, "mouseenter", () => toggle(true), { passive: true });
+ useEventListener(el, "mouseleave", () => toggle(false), { passive: true });
+ return isHovered;
+}
+
+const vElementHover = {
+ [_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.directiveHooks.mounted](el, binding) {
+ if (typeof binding.value === "function") {
+ const isHovered = useElementHover(el);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(isHovered, (v) => binding.value(v));
+ }
+ }
+};
+
+const UseElementSize = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseElementSize",
+ props: ["width", "height", "box"],
+ setup(props, { slots }) {
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useElementSize)(target, { width: props.width, height: props.height }, { box: props.box }));
+ return () => {
+ if (slots.default)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "div", { ref: target }, slots.default(data));
+ };
+ }
+});
+
+var __getOwnPropSymbols$c = Object.getOwnPropertySymbols;
+var __hasOwnProp$c = Object.prototype.hasOwnProperty;
+var __propIsEnum$c = Object.prototype.propertyIsEnumerable;
+var __objRest$1 = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$c.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$c)
+ for (var prop of __getOwnPropSymbols$c(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$c.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function useResizeObserver(target, callback, options = {}) {
+ const _a = options, { window = defaultWindow } = _a, observerOptions = __objRest$1(_a, ["window"]);
+ let observer;
+ const isSupported = useSupported(() => window && "ResizeObserver" in window);
+ const cleanup = () => {
+ if (observer) {
+ observer.disconnect();
+ observer = void 0;
+ }
+ };
+ const targets = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(
+ () => Array.isArray(target) ? target.map((el) => unrefElement(el)) : [unrefElement(target)]
+ );
+ const stopWatch = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ targets,
+ (els) => {
+ cleanup();
+ if (isSupported.value && window) {
+ observer = new ResizeObserver(callback);
+ for (const _el of els)
+ _el && observer.observe(_el, observerOptions);
+ }
+ },
+ { immediate: true, flush: "post", deep: true }
+ );
+ const stop = () => {
+ cleanup();
+ stopWatch();
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.tryOnScopeDispose)(stop);
+ return {
+ isSupported,
+ stop
+ };
+}
+
+function useElementSize(target, initialSize = { width: 0, height: 0 }, options = {}) {
+ const { window = defaultWindow, box = "content-box" } = options;
+ const isSVG = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ var _a, _b;
+ return (_b = (_a = unrefElement(target)) == null ? void 0 : _a.namespaceURI) == null ? void 0 : _b.includes("svg");
+ });
+ const width = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(initialSize.width);
+ const height = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(initialSize.height);
+ useResizeObserver(
+ target,
+ ([entry]) => {
+ const boxSize = box === "border-box" ? entry.borderBoxSize : box === "content-box" ? entry.contentBoxSize : entry.devicePixelContentBoxSize;
+ if (window && isSVG.value) {
+ const $elem = unrefElement(target);
+ if ($elem) {
+ const styles = window.getComputedStyle($elem);
+ width.value = Number.parseFloat(styles.width);
+ height.value = Number.parseFloat(styles.height);
+ }
+ } else {
+ if (boxSize) {
+ const formatBoxSize = Array.isArray(boxSize) ? boxSize : [boxSize];
+ width.value = formatBoxSize.reduce((acc, { inlineSize }) => acc + inlineSize, 0);
+ height.value = formatBoxSize.reduce((acc, { blockSize }) => acc + blockSize, 0);
+ } else {
+ width.value = entry.contentRect.width;
+ height.value = entry.contentRect.height;
+ }
+ }
+ },
+ options
+ );
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ () => unrefElement(target),
+ (ele) => {
+ width.value = ele ? initialSize.width : 0;
+ height.value = ele ? initialSize.height : 0;
+ }
+ );
+ return {
+ width,
+ height
+ };
+}
+
+const vElementSize = {
+ [_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.directiveHooks.mounted](el, binding) {
+ var _a;
+ const handler = typeof binding.value === "function" ? binding.value : (_a = binding.value) == null ? void 0 : _a[0];
+ const options = typeof binding.value === "function" ? [] : binding.value.slice(1);
+ const { width, height } = useElementSize(el, ...options);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)([width, height], ([width2, height2]) => handler({ width: width2, height: height2 }));
+ }
+};
+
+const UseElementVisibility = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseElementVisibility",
+ props: ["as"],
+ setup(props, { slots }) {
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ isVisible: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useElementVisibility)(target)
+ });
+ return () => {
+ if (slots.default)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "div", { ref: target }, slots.default(data));
+ };
+ }
+});
+
+function useIntersectionObserver(target, callback, options = {}) {
+ const {
+ root,
+ rootMargin = "0px",
+ threshold = 0.1,
+ window = defaultWindow,
+ immediate = true
+ } = options;
+ const isSupported = useSupported(() => window && "IntersectionObserver" in window);
+ const targets = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ const _target = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(target);
+ return (Array.isArray(_target) ? _target : [_target]).map(unrefElement).filter(_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.notNullish);
+ });
+ let cleanup = _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.noop;
+ const isActive = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(immediate);
+ const stopWatch = isSupported.value ? (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ () => [targets.value, unrefElement(root), isActive.value],
+ ([targets2, root2]) => {
+ cleanup();
+ if (!isActive.value)
+ return;
+ if (!targets2.length)
+ return;
+ const observer = new IntersectionObserver(
+ callback,
+ {
+ root: unrefElement(root2),
+ rootMargin,
+ threshold
+ }
+ );
+ targets2.forEach((el) => el && observer.observe(el));
+ cleanup = () => {
+ observer.disconnect();
+ cleanup = _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.noop;
+ };
+ },
+ { immediate, flush: "post" }
+ ) : _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.noop;
+ const stop = () => {
+ cleanup();
+ stopWatch();
+ isActive.value = false;
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.tryOnScopeDispose)(stop);
+ return {
+ isSupported,
+ isActive,
+ pause() {
+ cleanup();
+ isActive.value = false;
+ },
+ resume() {
+ isActive.value = true;
+ },
+ stop
+ };
+}
+
+function useElementVisibility(element, { window = defaultWindow, scrollTarget } = {}) {
+ const elementIsVisible = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ useIntersectionObserver(
+ element,
+ ([{ isIntersecting }]) => {
+ elementIsVisible.value = isIntersecting;
+ },
+ {
+ root: scrollTarget,
+ window
+ }
+ );
+ return elementIsVisible;
+}
+
+const vElementVisibility = {
+ [_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.directiveHooks.mounted](el, binding) {
+ if (typeof binding.value === "function") {
+ const handler = binding.value;
+ const isVisible = useElementVisibility(el);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(isVisible, (v) => handler(v), { immediate: true });
+ } else {
+ const [handler, options] = binding.value;
+ const isVisible = useElementVisibility(el, options);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(isVisible, (v) => handler(v), { immediate: true });
+ }
+ }
+};
+
+const UseEyeDropper = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseEyeDropper",
+ props: {
+ sRGBHex: String
+ },
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useEyeDropper)());
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseFullscreen = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseFullscreen",
+ props: ["as"],
+ setup(props, { slots }) {
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useFullscreen)(target));
+ return () => {
+ if (slots.default)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "div", { ref: target }, slots.default(data));
+ };
+ }
+});
+
+const UseGeolocation = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseGeolocation",
+ props: ["enableHighAccuracy", "maximumAge", "timeout", "navigator"],
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useGeolocation)(props));
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseIdle = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseIdle",
+ props: ["timeout", "events", "listenForVisibilityChange", "initialState"],
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useIdle)(props.timeout, props));
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+var __defProp$a = Object.defineProperty;
+var __defProps$8 = Object.defineProperties;
+var __getOwnPropDescs$8 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$b = Object.getOwnPropertySymbols;
+var __hasOwnProp$b = Object.prototype.hasOwnProperty;
+var __propIsEnum$b = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$a = (obj, key, value) => key in obj ? __defProp$a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$a = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$b.call(b, prop))
+ __defNormalProp$a(a, prop, b[prop]);
+ if (__getOwnPropSymbols$b)
+ for (var prop of __getOwnPropSymbols$b(b)) {
+ if (__propIsEnum$b.call(b, prop))
+ __defNormalProp$a(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$8 = (a, b) => __defProps$8(a, __getOwnPropDescs$8(b));
+function useAsyncState(promise, initialState, options) {
+ const {
+ immediate = true,
+ delay = 0,
+ onError = _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.noop,
+ onSuccess = _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.noop,
+ resetOnExecute = true,
+ shallow = true,
+ throwError
+ } = options != null ? options : {};
+ const state = shallow ? (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.shallowRef)(initialState) : (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(initialState);
+ const isReady = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ const isLoading = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ const error = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.shallowRef)(void 0);
+ async function execute(delay2 = 0, ...args) {
+ if (resetOnExecute)
+ state.value = initialState;
+ error.value = void 0;
+ isReady.value = false;
+ isLoading.value = true;
+ if (delay2 > 0)
+ await (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.promiseTimeout)(delay2);
+ const _promise = typeof promise === "function" ? promise(...args) : promise;
+ try {
+ const data = await _promise;
+ state.value = data;
+ isReady.value = true;
+ onSuccess(data);
+ } catch (e) {
+ error.value = e;
+ onError(e);
+ if (throwError)
+ throw e;
+ } finally {
+ isLoading.value = false;
+ }
+ return state.value;
+ }
+ if (immediate)
+ execute(delay);
+ const shell = {
+ state,
+ isReady,
+ isLoading,
+ error,
+ execute
+ };
+ function waitUntilIsLoaded() {
+ return new Promise((resolve, reject) => {
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.until)(isLoading).toBe(false).then(() => resolve(shell)).catch(reject);
+ });
+ }
+ return __spreadProps$8(__spreadValues$a({}, shell), {
+ then(onFulfilled, onRejected) {
+ return waitUntilIsLoaded().then(onFulfilled, onRejected);
+ }
+ });
+}
+
+var __defProp$9 = Object.defineProperty;
+var __getOwnPropSymbols$a = Object.getOwnPropertySymbols;
+var __hasOwnProp$a = Object.prototype.hasOwnProperty;
+var __propIsEnum$a = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$9 = (obj, key, value) => key in obj ? __defProp$9(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$9 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$a.call(b, prop))
+ __defNormalProp$9(a, prop, b[prop]);
+ if (__getOwnPropSymbols$a)
+ for (var prop of __getOwnPropSymbols$a(b)) {
+ if (__propIsEnum$a.call(b, prop))
+ __defNormalProp$9(a, prop, b[prop]);
+ }
+ return a;
+};
+async function loadImage(options) {
+ return new Promise((resolve, reject) => {
+ const img = new Image();
+ const { src, srcset, sizes, class: clazz, loading, crossorigin, referrerPolicy } = options;
+ img.src = src;
+ if (srcset)
+ img.srcset = srcset;
+ if (sizes)
+ img.sizes = sizes;
+ if (clazz)
+ img.className = clazz;
+ if (loading)
+ img.loading = loading;
+ if (crossorigin)
+ img.crossOrigin = crossorigin;
+ if (referrerPolicy)
+ img.referrerPolicy = referrerPolicy;
+ img.onload = () => resolve(img);
+ img.onerror = reject;
+ });
+}
+function useImage(options, asyncStateOptions = {}) {
+ const state = useAsyncState(
+ () => loadImage((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(options)),
+ void 0,
+ __spreadValues$9({
+ resetOnExecute: true
+ }, asyncStateOptions)
+ );
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ () => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(options),
+ () => state.execute(asyncStateOptions.delay),
+ { deep: true }
+ );
+ return state;
+}
+
+const UseImage = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseImage",
+ props: [
+ "src",
+ "srcset",
+ "sizes",
+ "as",
+ "alt",
+ "class",
+ "loading",
+ "crossorigin",
+ "referrerPolicy"
+ ],
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)(useImage(props));
+ return () => {
+ if (data.isLoading && slots.loading)
+ return slots.loading(data);
+ else if (data.error && slots.error)
+ return slots.error(data.error);
+ if (slots.default)
+ return slots.default(data);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "img", props);
+ };
+ }
+});
+
+const ARRIVED_STATE_THRESHOLD_PIXELS = 1;
+function useScroll(element, options = {}) {
+ const {
+ throttle = 0,
+ idle = 200,
+ onStop = _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.noop,
+ onScroll = _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.noop,
+ offset = {
+ left: 0,
+ right: 0,
+ top: 0,
+ bottom: 0
+ },
+ eventListenerOptions = {
+ capture: false,
+ passive: true
+ },
+ behavior = "auto",
+ window = defaultWindow
+ } = options;
+ const internalX = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(0);
+ const internalY = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(0);
+ const x = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)({
+ get() {
+ return internalX.value;
+ },
+ set(x2) {
+ scrollTo(x2, void 0);
+ }
+ });
+ const y = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)({
+ get() {
+ return internalY.value;
+ },
+ set(y2) {
+ scrollTo(void 0, y2);
+ }
+ });
+ function scrollTo(_x, _y) {
+ var _a, _b, _c;
+ if (!window)
+ return;
+ const _element = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(element);
+ if (!_element)
+ return;
+ (_c = _element instanceof Document ? window.document.body : _element) == null ? void 0 : _c.scrollTo({
+ top: (_a = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(_y)) != null ? _a : y.value,
+ left: (_b = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(_x)) != null ? _b : x.value,
+ behavior: (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(behavior)
+ });
+ }
+ const isScrolling = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ const arrivedState = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ left: true,
+ right: false,
+ top: true,
+ bottom: false
+ });
+ const directions = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ left: false,
+ right: false,
+ top: false,
+ bottom: false
+ });
+ const onScrollEnd = (e) => {
+ if (!isScrolling.value)
+ return;
+ isScrolling.value = false;
+ directions.left = false;
+ directions.right = false;
+ directions.top = false;
+ directions.bottom = false;
+ onStop(e);
+ };
+ const onScrollEndDebounced = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.useDebounceFn)(onScrollEnd, throttle + idle);
+ const setArrivedState = (target) => {
+ if (!window)
+ return;
+ const el = target === window ? target.document.documentElement : target === window.document ? target.documentElement : target;
+ const { display, flexDirection } = getComputedStyle(el);
+ const scrollLeft = el.scrollLeft;
+ directions.left = scrollLeft < internalX.value;
+ directions.right = scrollLeft > internalX.value;
+ const left = Math.abs(scrollLeft) <= 0 + (offset.left || 0);
+ const right = Math.abs(scrollLeft) + el.clientWidth >= el.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
+ if (display === "flex" && flexDirection === "row-reverse") {
+ arrivedState.left = right;
+ arrivedState.right = left;
+ } else {
+ arrivedState.left = left;
+ arrivedState.right = right;
+ }
+ internalX.value = scrollLeft;
+ let scrollTop = el.scrollTop;
+ if (target === window.document && !scrollTop)
+ scrollTop = window.document.body.scrollTop;
+ directions.top = scrollTop < internalY.value;
+ directions.bottom = scrollTop > internalY.value;
+ const top = Math.abs(scrollTop) <= 0 + (offset.top || 0);
+ const bottom = Math.abs(scrollTop) + el.clientHeight >= el.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
+ if (display === "flex" && flexDirection === "column-reverse") {
+ arrivedState.top = bottom;
+ arrivedState.bottom = top;
+ } else {
+ arrivedState.top = top;
+ arrivedState.bottom = bottom;
+ }
+ internalY.value = scrollTop;
+ };
+ const onScrollHandler = (e) => {
+ if (!window)
+ return;
+ const eventTarget = e.target === window.document ? e.target.documentElement : e.target;
+ setArrivedState(eventTarget);
+ isScrolling.value = true;
+ onScrollEndDebounced(e);
+ onScroll(e);
+ };
+ useEventListener(
+ element,
+ "scroll",
+ throttle ? (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.useThrottleFn)(onScrollHandler, throttle, true, false) : onScrollHandler,
+ eventListenerOptions
+ );
+ useEventListener(
+ element,
+ "scrollend",
+ onScrollEnd,
+ eventListenerOptions
+ );
+ return {
+ x,
+ y,
+ isScrolling,
+ arrivedState,
+ directions,
+ measure() {
+ const _element = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(element);
+ if (window && _element)
+ setArrivedState(_element);
+ }
+ };
+}
+
+var __defProp$8 = Object.defineProperty;
+var __defProps$7 = Object.defineProperties;
+var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$9 = Object.getOwnPropertySymbols;
+var __hasOwnProp$9 = Object.prototype.hasOwnProperty;
+var __propIsEnum$9 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$8 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$9.call(b, prop))
+ __defNormalProp$8(a, prop, b[prop]);
+ if (__getOwnPropSymbols$9)
+ for (var prop of __getOwnPropSymbols$9(b)) {
+ if (__propIsEnum$9.call(b, prop))
+ __defNormalProp$8(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$7 = (a, b) => __defProps$7(a, __getOwnPropDescs$7(b));
+function useInfiniteScroll(element, onLoadMore, options = {}) {
+ var _a;
+ const {
+ direction = "bottom",
+ interval = 100
+ } = options;
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)(useScroll(
+ element,
+ __spreadProps$7(__spreadValues$8({}, options), {
+ offset: __spreadValues$8({
+ [direction]: (_a = options.distance) != null ? _a : 0
+ }, options.offset)
+ })
+ ));
+ const promise = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ const isLoading = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => !!promise.value);
+ const observedElement = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(element);
+ if (el instanceof Window)
+ return window.document.documentElement;
+ if (el instanceof Document)
+ return document.documentElement;
+ return el;
+ });
+ const isElementVisible = useElementVisibility(observedElement);
+ function checkAndLoad() {
+ state.measure();
+ if (!observedElement.value || !isElementVisible.value)
+ return;
+ const { scrollHeight, clientHeight, scrollWidth, clientWidth } = observedElement.value;
+ const isNarrower = direction === "bottom" || direction === "top" ? scrollHeight <= clientHeight : scrollWidth <= clientWidth;
+ if (state.arrivedState[direction] || isNarrower) {
+ if (!promise.value) {
+ promise.value = Promise.all([
+ onLoadMore(state),
+ new Promise((resolve) => setTimeout(resolve, interval))
+ ]).finally(() => {
+ promise.value = null;
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.nextTick)(() => checkAndLoad());
+ });
+ }
+ }
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ () => [state.arrivedState[direction], isElementVisible.value],
+ checkAndLoad,
+ { immediate: true }
+ );
+ return {
+ isLoading
+ };
+}
+
+const vInfiniteScroll = {
+ [_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.directiveHooks.mounted](el, binding) {
+ if (typeof binding.value === "function")
+ useInfiniteScroll(el, binding.value);
+ else
+ useInfiniteScroll(el, ...binding.value);
+ }
+};
+
+const vIntersectionObserver = {
+ [_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.directiveHooks.mounted](el, binding) {
+ if (typeof binding.value === "function")
+ useIntersectionObserver(el, binding.value);
+ else
+ useIntersectionObserver(el, ...binding.value);
+ }
+};
+
+const UseMouse = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseMouse",
+ props: ["touch", "resetOnTouchEnds", "initialValue"],
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useMouse)(props));
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseMouseInElement = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseMouseElement",
+ props: ["handleOutside", "as"],
+ setup(props, { slots }) {
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useMouseInElement)(target, props));
+ return () => {
+ if (slots.default)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "div", { ref: target }, slots.default(data));
+ };
+ }
+});
+
+var __defProp$7 = Object.defineProperty;
+var __defProps$6 = Object.defineProperties;
+var __getOwnPropDescs$6 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$8 = Object.getOwnPropertySymbols;
+var __hasOwnProp$8 = Object.prototype.hasOwnProperty;
+var __propIsEnum$8 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$7 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$8.call(b, prop))
+ __defNormalProp$7(a, prop, b[prop]);
+ if (__getOwnPropSymbols$8)
+ for (var prop of __getOwnPropSymbols$8(b)) {
+ if (__propIsEnum$8.call(b, prop))
+ __defNormalProp$7(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$6 = (a, b) => __defProps$6(a, __getOwnPropDescs$6(b));
+const UseMousePressed = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseMousePressed",
+ props: ["touch", "initialValue", "as"],
+ setup(props, { slots }) {
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useMousePressed)(__spreadProps$6(__spreadValues$7({}, props), { target })));
+ return () => {
+ if (slots.default)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "div", { ref: target }, slots.default(data));
+ };
+ }
+});
+
+const UseNetwork = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseNetwork",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useNetwork)());
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+var __defProp$6 = Object.defineProperty;
+var __defProps$5 = Object.defineProperties;
+var __getOwnPropDescs$5 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$7 = Object.getOwnPropertySymbols;
+var __hasOwnProp$7 = Object.prototype.hasOwnProperty;
+var __propIsEnum$7 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$6 = (obj, key, value) => key in obj ? __defProp$6(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$6 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$7.call(b, prop))
+ __defNormalProp$6(a, prop, b[prop]);
+ if (__getOwnPropSymbols$7)
+ for (var prop of __getOwnPropSymbols$7(b)) {
+ if (__propIsEnum$7.call(b, prop))
+ __defNormalProp$6(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$5 = (a, b) => __defProps$5(a, __getOwnPropDescs$5(b));
+const UseNow = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseNow",
+ props: ["interval"],
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useNow)(__spreadProps$5(__spreadValues$6({}, props), { controls: true })));
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseObjectUrl = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseObjectUrl",
+ props: [
+ "object"
+ ],
+ setup(props, { slots }) {
+ const object = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toRef)(props, "object");
+ const url = (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useObjectUrl)(object);
+ return () => {
+ if (slots.default && url.value)
+ return slots.default(url);
+ };
+ }
+});
+
+var __defProp$5 = Object.defineProperty;
+var __defProps$4 = Object.defineProperties;
+var __getOwnPropDescs$4 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$6 = Object.getOwnPropertySymbols;
+var __hasOwnProp$6 = Object.prototype.hasOwnProperty;
+var __propIsEnum$6 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$5 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$6.call(b, prop))
+ __defNormalProp$5(a, prop, b[prop]);
+ if (__getOwnPropSymbols$6)
+ for (var prop of __getOwnPropSymbols$6(b)) {
+ if (__propIsEnum$6.call(b, prop))
+ __defNormalProp$5(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$4 = (a, b) => __defProps$4(a, __getOwnPropDescs$4(b));
+const UseOffsetPagination = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseOffsetPagination",
+ props: [
+ "total",
+ "page",
+ "pageSize",
+ "onPageChange",
+ "onPageSizeChange",
+ "onPageCountChange"
+ ],
+ emits: [
+ "page-change",
+ "page-size-change",
+ "page-count-change"
+ ],
+ setup(props, { slots, emit }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useOffsetPagination)(__spreadProps$4(__spreadValues$5({}, props), {
+ onPageChange(...args) {
+ var _a;
+ (_a = props.onPageChange) == null ? void 0 : _a.call(props, ...args);
+ emit("page-change", ...args);
+ },
+ onPageSizeChange(...args) {
+ var _a;
+ (_a = props.onPageSizeChange) == null ? void 0 : _a.call(props, ...args);
+ emit("page-size-change", ...args);
+ },
+ onPageCountChange(...args) {
+ var _a;
+ (_a = props.onPageCountChange) == null ? void 0 : _a.call(props, ...args);
+ emit("page-count-change", ...args);
+ }
+ })));
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseOnline = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseOnline",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ isOnline: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useOnline)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UsePageLeave = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UsePageLeave",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ isLeft: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.usePageLeave)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+var __defProp$4 = Object.defineProperty;
+var __defProps$3 = Object.defineProperties;
+var __getOwnPropDescs$3 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols;
+var __hasOwnProp$5 = Object.prototype.hasOwnProperty;
+var __propIsEnum$5 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$4 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$5.call(b, prop))
+ __defNormalProp$4(a, prop, b[prop]);
+ if (__getOwnPropSymbols$5)
+ for (var prop of __getOwnPropSymbols$5(b)) {
+ if (__propIsEnum$5.call(b, prop))
+ __defNormalProp$4(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$3 = (a, b) => __defProps$3(a, __getOwnPropDescs$3(b));
+const UsePointer = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UsePointer",
+ props: [
+ "pointerTypes",
+ "initialValue",
+ "target"
+ ],
+ setup(props, { slots }) {
+ const el = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(null);
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.usePointer)(__spreadProps$3(__spreadValues$4({}, props), {
+ target: props.target === "self" ? el : defaultWindow
+ })));
+ return () => {
+ if (slots.default)
+ return slots.default(data, { ref: el });
+ };
+ }
+});
+
+const UsePointerLock = /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UsePointerLock",
+ props: ["as"],
+ setup(props, { slots }) {
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)();
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.usePointerLock)(target));
+ return () => {
+ if (slots.default)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(props.as || "div", { ref: target }, slots.default(data));
+ };
+ }
+});
+
+const UsePreferredColorScheme = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UsePreferredColorScheme",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ colorScheme: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.usePreferredColorScheme)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UsePreferredContrast = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UsePreferredContrast",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ contrast: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.usePreferredContrast)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UsePreferredDark = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UsePreferredDark",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ prefersDark: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.usePreferredDark)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UsePreferredLanguages = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UsePreferredLanguages",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ languages: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.usePreferredLanguages)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UsePreferredReducedMotion = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UsePreferredReducedMotion",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ motion: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.usePreferredReducedMotion)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+var __getOwnPropSymbols$4 = Object.getOwnPropertySymbols;
+var __hasOwnProp$4 = Object.prototype.hasOwnProperty;
+var __propIsEnum$4 = Object.prototype.propertyIsEnumerable;
+var __objRest = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$4.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$4)
+ for (var prop of __getOwnPropSymbols$4(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$4.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function useMutationObserver(target, callback, options = {}) {
+ const _a = options, { window = defaultWindow } = _a, mutationOptions = __objRest(_a, ["window"]);
+ let observer;
+ const isSupported = useSupported(() => window && "MutationObserver" in window);
+ const cleanup = () => {
+ if (observer) {
+ observer.disconnect();
+ observer = void 0;
+ }
+ };
+ const stopWatch = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ () => unrefElement(target),
+ (el) => {
+ cleanup();
+ if (isSupported.value && window && el) {
+ observer = new MutationObserver(callback);
+ observer.observe(el, mutationOptions);
+ }
+ },
+ { immediate: true }
+ );
+ const stop = () => {
+ cleanup();
+ stopWatch();
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.tryOnScopeDispose)(stop);
+ return {
+ isSupported,
+ stop
+ };
+}
+
+function useCssVar(prop, target, options = {}) {
+ const { window = defaultWindow, initialValue = "", observe = false } = options;
+ const variable = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(initialValue);
+ const elRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ var _a;
+ return unrefElement(target) || ((_a = window == null ? void 0 : window.document) == null ? void 0 : _a.documentElement);
+ });
+ function updateCssVar() {
+ var _a;
+ const key = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(prop);
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(elRef);
+ if (el && window) {
+ const value = (_a = window.getComputedStyle(el).getPropertyValue(key)) == null ? void 0 : _a.trim();
+ variable.value = value || initialValue;
+ }
+ }
+ if (observe) {
+ useMutationObserver(elRef, updateCssVar, {
+ attributeFilter: ["style", "class"],
+ window
+ });
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ [elRef, () => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(prop)],
+ updateCssVar,
+ { immediate: true }
+ );
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ variable,
+ (val) => {
+ var _a;
+ if ((_a = elRef.value) == null ? void 0 : _a.style)
+ elRef.value.style.setProperty((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(prop), val);
+ }
+ );
+ return variable;
+}
+
+const topVarName = "--vueuse-safe-area-top";
+const rightVarName = "--vueuse-safe-area-right";
+const bottomVarName = "--vueuse-safe-area-bottom";
+const leftVarName = "--vueuse-safe-area-left";
+function useScreenSafeArea() {
+ const top = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)("");
+ const right = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)("");
+ const bottom = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)("");
+ const left = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)("");
+ if (_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.isClient) {
+ const topCssVar = useCssVar(topVarName);
+ const rightCssVar = useCssVar(rightVarName);
+ const bottomCssVar = useCssVar(bottomVarName);
+ const leftCssVar = useCssVar(leftVarName);
+ topCssVar.value = "env(safe-area-inset-top, 0px)";
+ rightCssVar.value = "env(safe-area-inset-right, 0px)";
+ bottomCssVar.value = "env(safe-area-inset-bottom, 0px)";
+ leftCssVar.value = "env(safe-area-inset-left, 0px)";
+ update();
+ useEventListener("resize", (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.useDebounceFn)(update));
+ }
+ function update() {
+ top.value = getValue(topVarName);
+ right.value = getValue(rightVarName);
+ bottom.value = getValue(bottomVarName);
+ left.value = getValue(leftVarName);
+ }
+ return {
+ top,
+ right,
+ bottom,
+ left,
+ update
+ };
+}
+function getValue(position) {
+ return getComputedStyle(document.documentElement).getPropertyValue(position);
+}
+
+const UseScreenSafeArea = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseScreenSafeArea",
+ props: {
+ top: Boolean,
+ right: Boolean,
+ bottom: Boolean,
+ left: Boolean
+ },
+ setup(props, { slots }) {
+ const {
+ top,
+ right,
+ bottom,
+ left
+ } = useScreenSafeArea();
+ return () => {
+ if (slots.default) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)("div", {
+ style: {
+ paddingTop: props.top ? top.value : "",
+ paddingRight: props.right ? right.value : "",
+ paddingBottom: props.bottom ? bottom.value : "",
+ paddingLeft: props.left ? left.value : "",
+ boxSizing: "border-box",
+ maxHeight: "100vh",
+ maxWidth: "100vw",
+ overflow: "auto"
+ }
+ }, slots.default());
+ }
+ };
+ }
+});
+
+var __defProp$3 = Object.defineProperty;
+var __defProps$2 = Object.defineProperties;
+var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols;
+var __hasOwnProp$3 = Object.prototype.hasOwnProperty;
+var __propIsEnum$3 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$3 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$3.call(b, prop))
+ __defNormalProp$3(a, prop, b[prop]);
+ if (__getOwnPropSymbols$3)
+ for (var prop of __getOwnPropSymbols$3(b)) {
+ if (__propIsEnum$3.call(b, prop))
+ __defNormalProp$3(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b));
+const vScroll = {
+ [_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.directiveHooks.mounted](el, binding) {
+ if (typeof binding.value === "function") {
+ const handler = binding.value;
+ const state = useScroll(el, {
+ onScroll() {
+ handler(state);
+ },
+ onStop() {
+ handler(state);
+ }
+ });
+ } else {
+ const [handler, options] = binding.value;
+ const state = useScroll(el, __spreadProps$2(__spreadValues$3({}, options), {
+ onScroll(e) {
+ var _a;
+ (_a = options.onScroll) == null ? void 0 : _a.call(options, e);
+ handler(state);
+ },
+ onStop(e) {
+ var _a;
+ (_a = options.onStop) == null ? void 0 : _a.call(options, e);
+ handler(state);
+ }
+ }));
+ }
+ }
+};
+
+function checkOverflowScroll(ele) {
+ const style = window.getComputedStyle(ele);
+ if (style.overflowX === "scroll" || style.overflowY === "scroll" || style.overflowX === "auto" && ele.clientWidth < ele.scrollWidth || style.overflowY === "auto" && ele.clientHeight < ele.scrollHeight) {
+ return true;
+ } else {
+ const parent = ele.parentNode;
+ if (!parent || parent.tagName === "BODY")
+ return false;
+ return checkOverflowScroll(parent);
+ }
+}
+function preventDefault(rawEvent) {
+ const e = rawEvent || window.event;
+ const _target = e.target;
+ if (checkOverflowScroll(_target))
+ return false;
+ if (e.touches.length > 1)
+ return true;
+ if (e.preventDefault)
+ e.preventDefault();
+ return false;
+}
+function useScrollLock(element, initialState = false) {
+ const isLocked = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(initialState);
+ let stopTouchMoveListener = null;
+ let initialOverflow;
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toRef)(element), (el) => {
+ if (el) {
+ const ele = el;
+ initialOverflow = ele.style.overflow;
+ if (isLocked.value)
+ ele.style.overflow = "hidden";
+ }
+ }, {
+ immediate: true
+ });
+ const lock = () => {
+ const ele = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(element);
+ if (!ele || isLocked.value)
+ return;
+ if (_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.isIOS) {
+ stopTouchMoveListener = useEventListener(
+ ele,
+ "touchmove",
+ (e) => {
+ preventDefault(e);
+ },
+ { passive: false }
+ );
+ }
+ ele.style.overflow = "hidden";
+ isLocked.value = true;
+ };
+ const unlock = () => {
+ const ele = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.toValue)(element);
+ if (!ele || !isLocked.value)
+ return;
+ _vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.isIOS && (stopTouchMoveListener == null ? void 0 : stopTouchMoveListener());
+ ele.style.overflow = initialOverflow;
+ isLocked.value = false;
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_2__.tryOnScopeDispose)(unlock);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)({
+ get() {
+ return isLocked.value;
+ },
+ set(v) {
+ if (v)
+ lock();
+ else
+ unlock();
+ }
+ });
+}
+
+function onScrollLock() {
+ let isMounted = false;
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ return (el, binding) => {
+ state.value = binding.value;
+ if (isMounted)
+ return;
+ isMounted = true;
+ const isLocked = useScrollLock(el, binding.value);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(state, (v) => isLocked.value = v);
+ };
+}
+const vScrollLock = onScrollLock();
+
+var __defProp$2 = Object.defineProperty;
+var __defProps$1 = Object.defineProperties;
+var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$2 = Object.getOwnPropertySymbols;
+var __hasOwnProp$2 = Object.prototype.hasOwnProperty;
+var __propIsEnum$2 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$2 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$2.call(b, prop))
+ __defNormalProp$2(a, prop, b[prop]);
+ if (__getOwnPropSymbols$2)
+ for (var prop of __getOwnPropSymbols$2(b)) {
+ if (__propIsEnum$2.call(b, prop))
+ __defNormalProp$2(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$1 = (a, b) => __defProps$1(a, __getOwnPropDescs$1(b));
+const UseTimeAgo = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseTimeAgo",
+ props: ["time", "updateInterval", "max", "fullDateFormatter", "messages", "showSecond"],
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useTimeAgo)(() => props.time, __spreadProps$1(__spreadValues$2({}, props), { controls: true })));
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+var __defProp$1 = Object.defineProperty;
+var __defProps = Object.defineProperties;
+var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$1 = Object.getOwnPropertySymbols;
+var __hasOwnProp$1 = Object.prototype.hasOwnProperty;
+var __propIsEnum$1 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$1 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$1.call(b, prop))
+ __defNormalProp$1(a, prop, b[prop]);
+ if (__getOwnPropSymbols$1)
+ for (var prop of __getOwnPropSymbols$1(b)) {
+ if (__propIsEnum$1.call(b, prop))
+ __defNormalProp$1(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
+const UseTimestamp = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseTimestamp",
+ props: ["immediate", "interval", "offset"],
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useTimestamp)(__spreadProps(__spreadValues$1({}, props), { controls: true })));
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+var __defProp = Object.defineProperty;
+var __getOwnPropSymbols = Object.getOwnPropertySymbols;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __propIsEnum = Object.prototype.propertyIsEnumerable;
+var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp.call(b, prop))
+ __defNormalProp(a, prop, b[prop]);
+ if (__getOwnPropSymbols)
+ for (var prop of __getOwnPropSymbols(b)) {
+ if (__propIsEnum.call(b, prop))
+ __defNormalProp(a, prop, b[prop]);
+ }
+ return a;
+};
+const UseVirtualList = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseVirtualList",
+ props: [
+ "list",
+ "options",
+ "height"
+ ],
+ setup(props, { slots, expose }) {
+ const { list: listRef } = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRefs)(props);
+ const { list, containerProps, wrapperProps, scrollTo } = (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useVirtualList)(listRef, props.options);
+ expose({ scrollTo });
+ typeof containerProps.style === "object" && !Array.isArray(containerProps.style) && (containerProps.style.height = props.height || "300px");
+ return () => (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(
+ "div",
+ __spreadValues({}, containerProps),
+ [
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(
+ "div",
+ __spreadValues({}, wrapperProps.value),
+ list.value.map((item) => (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.h)(
+ "div",
+ { style: { overFlow: "hidden", height: item.height } },
+ slots.default ? slots.default(item) : "Please set content!"
+ ))
+ )
+ ]
+ );
+ }
+});
+
+const UseWindowFocus = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseWindowFocus",
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)({
+ focused: (0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useWindowFocus)()
+ });
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+const UseWindowSize = /* @__PURE__ */ /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.defineComponent)({
+ name: "UseWindowSize",
+ props: ["initialWidth", "initialHeight"],
+ setup(props, { slots }) {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)((0,_vueuse_core__WEBPACK_IMPORTED_MODULE_1__.useWindowSize)(props));
+ return () => {
+ if (slots.default)
+ return slots.default(data);
+ };
+ }
+});
+
+
+
+
+/***/ }),
+
+/***/ "./node_modules/@vueuse/components/node_modules/vue-demi/lib/index.mjs":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@vueuse/components/node_modules/vue-demi/lib/index.mjs ***!
+ \*****************************************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ EffectScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.EffectScope; },
+/* harmony export */ Fragment: function() { return /* binding */ Fragment; },
+/* harmony export */ KeepAlive: function() { return /* binding */ KeepAlive; },
+/* harmony export */ Suspense: function() { return /* binding */ Suspense; },
+/* harmony export */ Teleport: function() { return /* binding */ Teleport; },
+/* harmony export */ Transition: function() { return /* binding */ Transition; },
+/* harmony export */ TransitionGroup: function() { return /* binding */ TransitionGroup; },
+/* harmony export */ Vue: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__["default"]; },
+/* harmony export */ Vue2: function() { return /* binding */ Vue2; },
+/* harmony export */ computed: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.computed; },
+/* harmony export */ createApp: function() { return /* binding */ createApp; },
+/* harmony export */ customRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.customRef; },
+/* harmony export */ defineAsyncComponent: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.defineAsyncComponent; },
+/* harmony export */ defineComponent: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.defineComponent; },
+/* harmony export */ del: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.del; },
+/* harmony export */ effectScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.effectScope; },
+/* harmony export */ getCurrentInstance: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance; },
+/* harmony export */ getCurrentScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentScope; },
+/* harmony export */ h: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.h; },
+/* harmony export */ hasInjectionContext: function() { return /* binding */ hasInjectionContext; },
+/* harmony export */ inject: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.inject; },
+/* harmony export */ install: function() { return /* binding */ install; },
+/* harmony export */ isProxy: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isProxy; },
+/* harmony export */ isReactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isReactive; },
+/* harmony export */ isReadonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isReadonly; },
+/* harmony export */ isRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isRef; },
+/* harmony export */ isShallow: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isShallow; },
+/* harmony export */ isVue2: function() { return /* binding */ isVue2; },
+/* harmony export */ isVue3: function() { return /* binding */ isVue3; },
+/* harmony export */ markRaw: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.markRaw; },
+/* harmony export */ mergeDefaults: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.mergeDefaults; },
+/* harmony export */ nextTick: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.nextTick; },
+/* harmony export */ onActivated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onActivated; },
+/* harmony export */ onBeforeMount: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeMount; },
+/* harmony export */ onBeforeUnmount: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeUnmount; },
+/* harmony export */ onBeforeUpdate: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeUpdate; },
+/* harmony export */ onDeactivated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onDeactivated; },
+/* harmony export */ onErrorCaptured: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onErrorCaptured; },
+/* harmony export */ onMounted: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onMounted; },
+/* harmony export */ onRenderTracked: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onRenderTracked; },
+/* harmony export */ onRenderTriggered: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onRenderTriggered; },
+/* harmony export */ onScopeDispose: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onScopeDispose; },
+/* harmony export */ onServerPrefetch: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onServerPrefetch; },
+/* harmony export */ onUnmounted: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onUnmounted; },
+/* harmony export */ onUpdated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onUpdated; },
+/* harmony export */ provide: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.provide; },
+/* harmony export */ proxyRefs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.proxyRefs; },
+/* harmony export */ reactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.reactive; },
+/* harmony export */ readonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.readonly; },
+/* harmony export */ ref: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.ref; },
+/* harmony export */ set: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.set; },
+/* harmony export */ shallowReactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowReactive; },
+/* harmony export */ shallowReadonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowReadonly; },
+/* harmony export */ shallowRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowRef; },
+/* harmony export */ toRaw: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRaw; },
+/* harmony export */ toRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRef; },
+/* harmony export */ toRefs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRefs; },
+/* harmony export */ triggerRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.triggerRef; },
+/* harmony export */ unref: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.unref; },
+/* harmony export */ useAttrs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useAttrs; },
+/* harmony export */ useCssModule: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useCssModule; },
+/* harmony export */ useCssVars: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useCssVars; },
+/* harmony export */ useListeners: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useListeners; },
+/* harmony export */ useSlots: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useSlots; },
+/* harmony export */ version: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.version; },
+/* harmony export */ warn: function() { return /* binding */ warn; },
+/* harmony export */ watch: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watch; },
+/* harmony export */ watchEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchEffect; },
+/* harmony export */ watchPostEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchPostEffect; },
+/* harmony export */ watchSyncEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchSyncEffect; }
+/* harmony export */ });
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+
+
+
+var isVue2 = true
+var isVue3 = false
+var Vue2 = vue__WEBPACK_IMPORTED_MODULE_0__["default"]
+var warn = vue__WEBPACK_IMPORTED_MODULE_0__["default"].util.warn
+
+function install() {}
+
+// createApp polyfill
+function createApp(rootComponent, rootProps) {
+ var vm
+ var provide = {}
+ var app = {
+ config: vue__WEBPACK_IMPORTED_MODULE_0__["default"].config,
+ use: vue__WEBPACK_IMPORTED_MODULE_0__["default"].use.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ mixin: vue__WEBPACK_IMPORTED_MODULE_0__["default"].mixin.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ component: vue__WEBPACK_IMPORTED_MODULE_0__["default"].component.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ provide: function (key, value) {
+ provide[key] = value
+ return this
+ },
+ directive: function (name, dir) {
+ if (dir) {
+ vue__WEBPACK_IMPORTED_MODULE_0__["default"].directive(name, dir)
+ return app
+ } else {
+ return vue__WEBPACK_IMPORTED_MODULE_0__["default"].directive(name)
+ }
+ },
+ mount: function (el, hydrating) {
+ if (!vm) {
+ vm = new vue__WEBPACK_IMPORTED_MODULE_0__["default"](Object.assign({ propsData: rootProps }, rootComponent, { provide: Object.assign(provide, rootComponent.provide) }))
+ vm.$mount(el, hydrating)
+ return vm
+ } else {
+ return vm
+ }
+ },
+ unmount: function () {
+ if (vm) {
+ vm.$destroy()
+ vm = undefined
+ }
+ },
+ }
+ return app
+}
+
+
+
+// Vue 3 components mock
+function createMockComponent(name) {
+ return {
+ setup() {
+ throw new Error('[vue-demi] ' + name + ' is not supported in Vue 2. It\'s provided to avoid compiler errors.')
+ }
+ }
+}
+var Fragment = /*#__PURE__*/ createMockComponent('Fragment')
+var Transition = /*#__PURE__*/ createMockComponent('Transition')
+var TransitionGroup = /*#__PURE__*/ createMockComponent('TransitionGroup')
+var Teleport = /*#__PURE__*/ createMockComponent('Teleport')
+var Suspense = /*#__PURE__*/ createMockComponent('Suspense')
+var KeepAlive = /*#__PURE__*/ createMockComponent('KeepAlive')
+
+
+
+// Not implemented https://github.com/vuejs/core/pull/8111, falls back to getCurrentInstance()
+function hasInjectionContext() {
+ return !!(0,vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance)()
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/@vueuse/core/index.mjs":
+/*!*********************************************!*\
+ !*** ./node_modules/@vueuse/core/index.mjs ***!
+ \*********************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ DefaultMagicKeysAliasMap: function() { return /* binding */ DefaultMagicKeysAliasMap; },
+/* harmony export */ StorageSerializers: function() { return /* binding */ StorageSerializers; },
+/* harmony export */ TransitionPresets: function() { return /* binding */ TransitionPresets; },
+/* harmony export */ assert: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.assert; },
+/* harmony export */ asyncComputed: function() { return /* binding */ computedAsync; },
+/* harmony export */ autoResetRef: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.autoResetRef; },
+/* harmony export */ breakpointsAntDesign: function() { return /* binding */ breakpointsAntDesign; },
+/* harmony export */ breakpointsBootstrapV5: function() { return /* binding */ breakpointsBootstrapV5; },
+/* harmony export */ breakpointsMasterCss: function() { return /* binding */ breakpointsMasterCss; },
+/* harmony export */ breakpointsQuasar: function() { return /* binding */ breakpointsQuasar; },
+/* harmony export */ breakpointsSematic: function() { return /* binding */ breakpointsSematic; },
+/* harmony export */ breakpointsTailwind: function() { return /* binding */ breakpointsTailwind; },
+/* harmony export */ breakpointsVuetify: function() { return /* binding */ breakpointsVuetify; },
+/* harmony export */ bypassFilter: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.bypassFilter; },
+/* harmony export */ camelize: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.camelize; },
+/* harmony export */ clamp: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.clamp; },
+/* harmony export */ cloneFnJSON: function() { return /* binding */ cloneFnJSON; },
+/* harmony export */ computedAsync: function() { return /* binding */ computedAsync; },
+/* harmony export */ computedEager: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.computedEager; },
+/* harmony export */ computedInject: function() { return /* binding */ computedInject; },
+/* harmony export */ computedWithControl: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.computedWithControl; },
+/* harmony export */ containsProp: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.containsProp; },
+/* harmony export */ controlledComputed: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.controlledComputed; },
+/* harmony export */ controlledRef: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.controlledRef; },
+/* harmony export */ createEventHook: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook; },
+/* harmony export */ createFetch: function() { return /* binding */ createFetch; },
+/* harmony export */ createFilterWrapper: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createFilterWrapper; },
+/* harmony export */ createGlobalState: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createGlobalState; },
+/* harmony export */ createInjectionState: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createInjectionState; },
+/* harmony export */ createReactiveFn: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createReactiveFn; },
+/* harmony export */ createReusableTemplate: function() { return /* binding */ createReusableTemplate; },
+/* harmony export */ createSharedComposable: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createSharedComposable; },
+/* harmony export */ createSingletonPromise: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createSingletonPromise; },
+/* harmony export */ createTemplatePromise: function() { return /* binding */ createTemplatePromise; },
+/* harmony export */ createUnrefFn: function() { return /* binding */ createUnrefFn; },
+/* harmony export */ customStorageEventName: function() { return /* binding */ customStorageEventName; },
+/* harmony export */ debounceFilter: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.debounceFilter; },
+/* harmony export */ debouncedRef: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.debouncedRef; },
+/* harmony export */ debouncedWatch: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.debouncedWatch; },
+/* harmony export */ defaultDocument: function() { return /* binding */ defaultDocument; },
+/* harmony export */ defaultLocation: function() { return /* binding */ defaultLocation; },
+/* harmony export */ defaultNavigator: function() { return /* binding */ defaultNavigator; },
+/* harmony export */ defaultWindow: function() { return /* binding */ defaultWindow; },
+/* harmony export */ directiveHooks: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.directiveHooks; },
+/* harmony export */ eagerComputed: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.eagerComputed; },
+/* harmony export */ executeTransition: function() { return /* binding */ executeTransition; },
+/* harmony export */ extendRef: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.extendRef; },
+/* harmony export */ formatDate: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.formatDate; },
+/* harmony export */ formatTimeAgo: function() { return /* binding */ formatTimeAgo; },
+/* harmony export */ get: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.get; },
+/* harmony export */ getSSRHandler: function() { return /* binding */ getSSRHandler; },
+/* harmony export */ hasOwn: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.hasOwn; },
+/* harmony export */ hyphenate: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.hyphenate; },
+/* harmony export */ identity: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.identity; },
+/* harmony export */ ignorableWatch: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.ignorableWatch; },
+/* harmony export */ increaseWithUnit: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.increaseWithUnit; },
+/* harmony export */ invoke: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.invoke; },
+/* harmony export */ isClient: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isClient; },
+/* harmony export */ isDef: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isDef; },
+/* harmony export */ isDefined: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isDefined; },
+/* harmony export */ isIOS: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isIOS; },
+/* harmony export */ isObject: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isObject; },
+/* harmony export */ makeDestructurable: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.makeDestructurable; },
+/* harmony export */ mapGamepadToXbox360Controller: function() { return /* binding */ mapGamepadToXbox360Controller; },
+/* harmony export */ noop: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop; },
+/* harmony export */ normalizeDate: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.normalizeDate; },
+/* harmony export */ notNullish: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.notNullish; },
+/* harmony export */ now: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.now; },
+/* harmony export */ objectEntries: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.objectEntries; },
+/* harmony export */ objectOmit: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.objectOmit; },
+/* harmony export */ objectPick: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.objectPick; },
+/* harmony export */ onClickOutside: function() { return /* binding */ onClickOutside; },
+/* harmony export */ onKeyDown: function() { return /* binding */ onKeyDown; },
+/* harmony export */ onKeyPressed: function() { return /* binding */ onKeyPressed; },
+/* harmony export */ onKeyStroke: function() { return /* binding */ onKeyStroke; },
+/* harmony export */ onKeyUp: function() { return /* binding */ onKeyUp; },
+/* harmony export */ onLongPress: function() { return /* binding */ onLongPress; },
+/* harmony export */ onStartTyping: function() { return /* binding */ onStartTyping; },
+/* harmony export */ pausableFilter: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.pausableFilter; },
+/* harmony export */ pausableWatch: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.pausableWatch; },
+/* harmony export */ promiseTimeout: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.promiseTimeout; },
+/* harmony export */ rand: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.rand; },
+/* harmony export */ reactify: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.reactify; },
+/* harmony export */ reactifyObject: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.reactifyObject; },
+/* harmony export */ reactiveComputed: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.reactiveComputed; },
+/* harmony export */ reactiveOmit: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.reactiveOmit; },
+/* harmony export */ reactivePick: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.reactivePick; },
+/* harmony export */ refAutoReset: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.refAutoReset; },
+/* harmony export */ refDebounced: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.refDebounced; },
+/* harmony export */ refDefault: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.refDefault; },
+/* harmony export */ refThrottled: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.refThrottled; },
+/* harmony export */ refWithControl: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.refWithControl; },
+/* harmony export */ resolveRef: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.resolveRef; },
+/* harmony export */ resolveUnref: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.resolveUnref; },
+/* harmony export */ set: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.set; },
+/* harmony export */ setSSRHandler: function() { return /* binding */ setSSRHandler; },
+/* harmony export */ syncRef: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.syncRef; },
+/* harmony export */ syncRefs: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.syncRefs; },
+/* harmony export */ templateRef: function() { return /* binding */ templateRef; },
+/* harmony export */ throttleFilter: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.throttleFilter; },
+/* harmony export */ throttledRef: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.throttledRef; },
+/* harmony export */ throttledWatch: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.throttledWatch; },
+/* harmony export */ timestamp: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.timestamp; },
+/* harmony export */ toReactive: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toReactive; },
+/* harmony export */ toRef: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef; },
+/* harmony export */ toRefs: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRefs; },
+/* harmony export */ toValue: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue; },
+/* harmony export */ tryOnBeforeMount: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnBeforeMount; },
+/* harmony export */ tryOnBeforeUnmount: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnBeforeUnmount; },
+/* harmony export */ tryOnMounted: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted; },
+/* harmony export */ tryOnScopeDispose: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose; },
+/* harmony export */ tryOnUnmounted: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnUnmounted; },
+/* harmony export */ unrefElement: function() { return /* binding */ unrefElement; },
+/* harmony export */ until: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.until; },
+/* harmony export */ useActiveElement: function() { return /* binding */ useActiveElement; },
+/* harmony export */ useAnimate: function() { return /* binding */ useAnimate; },
+/* harmony export */ useArrayDifference: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayDifference; },
+/* harmony export */ useArrayEvery: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayEvery; },
+/* harmony export */ useArrayFilter: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayFilter; },
+/* harmony export */ useArrayFind: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayFind; },
+/* harmony export */ useArrayFindIndex: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayFindIndex; },
+/* harmony export */ useArrayFindLast: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayFindLast; },
+/* harmony export */ useArrayIncludes: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayIncludes; },
+/* harmony export */ useArrayJoin: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayJoin; },
+/* harmony export */ useArrayMap: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayMap; },
+/* harmony export */ useArrayReduce: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayReduce; },
+/* harmony export */ useArraySome: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArraySome; },
+/* harmony export */ useArrayUnique: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useArrayUnique; },
+/* harmony export */ useAsyncQueue: function() { return /* binding */ useAsyncQueue; },
+/* harmony export */ useAsyncState: function() { return /* binding */ useAsyncState; },
+/* harmony export */ useBase64: function() { return /* binding */ useBase64; },
+/* harmony export */ useBattery: function() { return /* binding */ useBattery; },
+/* harmony export */ useBluetooth: function() { return /* binding */ useBluetooth; },
+/* harmony export */ useBreakpoints: function() { return /* binding */ useBreakpoints; },
+/* harmony export */ useBroadcastChannel: function() { return /* binding */ useBroadcastChannel; },
+/* harmony export */ useBrowserLocation: function() { return /* binding */ useBrowserLocation; },
+/* harmony export */ useCached: function() { return /* binding */ useCached; },
+/* harmony export */ useClipboard: function() { return /* binding */ useClipboard; },
+/* harmony export */ useCloned: function() { return /* binding */ useCloned; },
+/* harmony export */ useColorMode: function() { return /* binding */ useColorMode; },
+/* harmony export */ useConfirmDialog: function() { return /* binding */ useConfirmDialog; },
+/* harmony export */ useCounter: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useCounter; },
+/* harmony export */ useCssVar: function() { return /* binding */ useCssVar; },
+/* harmony export */ useCurrentElement: function() { return /* binding */ useCurrentElement; },
+/* harmony export */ useCycleList: function() { return /* binding */ useCycleList; },
+/* harmony export */ useDark: function() { return /* binding */ useDark; },
+/* harmony export */ useDateFormat: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useDateFormat; },
+/* harmony export */ useDebounce: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useDebounce; },
+/* harmony export */ useDebounceFn: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useDebounceFn; },
+/* harmony export */ useDebouncedRefHistory: function() { return /* binding */ useDebouncedRefHistory; },
+/* harmony export */ useDeviceMotion: function() { return /* binding */ useDeviceMotion; },
+/* harmony export */ useDeviceOrientation: function() { return /* binding */ useDeviceOrientation; },
+/* harmony export */ useDevicePixelRatio: function() { return /* binding */ useDevicePixelRatio; },
+/* harmony export */ useDevicesList: function() { return /* binding */ useDevicesList; },
+/* harmony export */ useDisplayMedia: function() { return /* binding */ useDisplayMedia; },
+/* harmony export */ useDocumentVisibility: function() { return /* binding */ useDocumentVisibility; },
+/* harmony export */ useDraggable: function() { return /* binding */ useDraggable; },
+/* harmony export */ useDropZone: function() { return /* binding */ useDropZone; },
+/* harmony export */ useElementBounding: function() { return /* binding */ useElementBounding; },
+/* harmony export */ useElementByPoint: function() { return /* binding */ useElementByPoint; },
+/* harmony export */ useElementHover: function() { return /* binding */ useElementHover; },
+/* harmony export */ useElementSize: function() { return /* binding */ useElementSize; },
+/* harmony export */ useElementVisibility: function() { return /* binding */ useElementVisibility; },
+/* harmony export */ useEventBus: function() { return /* binding */ useEventBus; },
+/* harmony export */ useEventListener: function() { return /* binding */ useEventListener; },
+/* harmony export */ useEventSource: function() { return /* binding */ useEventSource; },
+/* harmony export */ useEyeDropper: function() { return /* binding */ useEyeDropper; },
+/* harmony export */ useFavicon: function() { return /* binding */ useFavicon; },
+/* harmony export */ useFetch: function() { return /* binding */ useFetch; },
+/* harmony export */ useFileDialog: function() { return /* binding */ useFileDialog; },
+/* harmony export */ useFileSystemAccess: function() { return /* binding */ useFileSystemAccess; },
+/* harmony export */ useFocus: function() { return /* binding */ useFocus; },
+/* harmony export */ useFocusWithin: function() { return /* binding */ useFocusWithin; },
+/* harmony export */ useFps: function() { return /* binding */ useFps; },
+/* harmony export */ useFullscreen: function() { return /* binding */ useFullscreen; },
+/* harmony export */ useGamepad: function() { return /* binding */ useGamepad; },
+/* harmony export */ useGeolocation: function() { return /* binding */ useGeolocation; },
+/* harmony export */ useIdle: function() { return /* binding */ useIdle; },
+/* harmony export */ useImage: function() { return /* binding */ useImage; },
+/* harmony export */ useInfiniteScroll: function() { return /* binding */ useInfiniteScroll; },
+/* harmony export */ useIntersectionObserver: function() { return /* binding */ useIntersectionObserver; },
+/* harmony export */ useInterval: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useInterval; },
+/* harmony export */ useIntervalFn: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useIntervalFn; },
+/* harmony export */ useKeyModifier: function() { return /* binding */ useKeyModifier; },
+/* harmony export */ useLastChanged: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useLastChanged; },
+/* harmony export */ useLocalStorage: function() { return /* binding */ useLocalStorage; },
+/* harmony export */ useMagicKeys: function() { return /* binding */ useMagicKeys; },
+/* harmony export */ useManualRefHistory: function() { return /* binding */ useManualRefHistory; },
+/* harmony export */ useMediaControls: function() { return /* binding */ useMediaControls; },
+/* harmony export */ useMediaQuery: function() { return /* binding */ useMediaQuery; },
+/* harmony export */ useMemoize: function() { return /* binding */ useMemoize; },
+/* harmony export */ useMemory: function() { return /* binding */ useMemory; },
+/* harmony export */ useMounted: function() { return /* binding */ useMounted; },
+/* harmony export */ useMouse: function() { return /* binding */ useMouse; },
+/* harmony export */ useMouseInElement: function() { return /* binding */ useMouseInElement; },
+/* harmony export */ useMousePressed: function() { return /* binding */ useMousePressed; },
+/* harmony export */ useMutationObserver: function() { return /* binding */ useMutationObserver; },
+/* harmony export */ useNavigatorLanguage: function() { return /* binding */ useNavigatorLanguage; },
+/* harmony export */ useNetwork: function() { return /* binding */ useNetwork; },
+/* harmony export */ useNow: function() { return /* binding */ useNow; },
+/* harmony export */ useObjectUrl: function() { return /* binding */ useObjectUrl; },
+/* harmony export */ useOffsetPagination: function() { return /* binding */ useOffsetPagination; },
+/* harmony export */ useOnline: function() { return /* binding */ useOnline; },
+/* harmony export */ usePageLeave: function() { return /* binding */ usePageLeave; },
+/* harmony export */ useParallax: function() { return /* binding */ useParallax; },
+/* harmony export */ useParentElement: function() { return /* binding */ useParentElement; },
+/* harmony export */ usePerformanceObserver: function() { return /* binding */ usePerformanceObserver; },
+/* harmony export */ usePermission: function() { return /* binding */ usePermission; },
+/* harmony export */ usePointer: function() { return /* binding */ usePointer; },
+/* harmony export */ usePointerLock: function() { return /* binding */ usePointerLock; },
+/* harmony export */ usePointerSwipe: function() { return /* binding */ usePointerSwipe; },
+/* harmony export */ usePreferredColorScheme: function() { return /* binding */ usePreferredColorScheme; },
+/* harmony export */ usePreferredContrast: function() { return /* binding */ usePreferredContrast; },
+/* harmony export */ usePreferredDark: function() { return /* binding */ usePreferredDark; },
+/* harmony export */ usePreferredLanguages: function() { return /* binding */ usePreferredLanguages; },
+/* harmony export */ usePreferredReducedMotion: function() { return /* binding */ usePreferredReducedMotion; },
+/* harmony export */ usePrevious: function() { return /* binding */ usePrevious; },
+/* harmony export */ useRafFn: function() { return /* binding */ useRafFn; },
+/* harmony export */ useRefHistory: function() { return /* binding */ useRefHistory; },
+/* harmony export */ useResizeObserver: function() { return /* binding */ useResizeObserver; },
+/* harmony export */ useScreenOrientation: function() { return /* binding */ useScreenOrientation; },
+/* harmony export */ useScreenSafeArea: function() { return /* binding */ useScreenSafeArea; },
+/* harmony export */ useScriptTag: function() { return /* binding */ useScriptTag; },
+/* harmony export */ useScroll: function() { return /* binding */ useScroll; },
+/* harmony export */ useScrollLock: function() { return /* binding */ useScrollLock; },
+/* harmony export */ useSessionStorage: function() { return /* binding */ useSessionStorage; },
+/* harmony export */ useShare: function() { return /* binding */ useShare; },
+/* harmony export */ useSorted: function() { return /* binding */ useSorted; },
+/* harmony export */ useSpeechRecognition: function() { return /* binding */ useSpeechRecognition; },
+/* harmony export */ useSpeechSynthesis: function() { return /* binding */ useSpeechSynthesis; },
+/* harmony export */ useStepper: function() { return /* binding */ useStepper; },
+/* harmony export */ useStorage: function() { return /* binding */ useStorage; },
+/* harmony export */ useStorageAsync: function() { return /* binding */ useStorageAsync; },
+/* harmony export */ useStyleTag: function() { return /* binding */ useStyleTag; },
+/* harmony export */ useSupported: function() { return /* binding */ useSupported; },
+/* harmony export */ useSwipe: function() { return /* binding */ useSwipe; },
+/* harmony export */ useTemplateRefsList: function() { return /* binding */ useTemplateRefsList; },
+/* harmony export */ useTextDirection: function() { return /* binding */ useTextDirection; },
+/* harmony export */ useTextSelection: function() { return /* binding */ useTextSelection; },
+/* harmony export */ useTextareaAutosize: function() { return /* binding */ useTextareaAutosize; },
+/* harmony export */ useThrottle: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useThrottle; },
+/* harmony export */ useThrottleFn: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useThrottleFn; },
+/* harmony export */ useThrottledRefHistory: function() { return /* binding */ useThrottledRefHistory; },
+/* harmony export */ useTimeAgo: function() { return /* binding */ useTimeAgo; },
+/* harmony export */ useTimeout: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useTimeout; },
+/* harmony export */ useTimeoutFn: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useTimeoutFn; },
+/* harmony export */ useTimeoutPoll: function() { return /* binding */ useTimeoutPoll; },
+/* harmony export */ useTimestamp: function() { return /* binding */ useTimestamp; },
+/* harmony export */ useTitle: function() { return /* binding */ useTitle; },
+/* harmony export */ useToNumber: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useToNumber; },
+/* harmony export */ useToString: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useToString; },
+/* harmony export */ useToggle: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useToggle; },
+/* harmony export */ useTransition: function() { return /* binding */ useTransition; },
+/* harmony export */ useUrlSearchParams: function() { return /* binding */ useUrlSearchParams; },
+/* harmony export */ useUserMedia: function() { return /* binding */ useUserMedia; },
+/* harmony export */ useVModel: function() { return /* binding */ useVModel; },
+/* harmony export */ useVModels: function() { return /* binding */ useVModels; },
+/* harmony export */ useVibrate: function() { return /* binding */ useVibrate; },
+/* harmony export */ useVirtualList: function() { return /* binding */ useVirtualList; },
+/* harmony export */ useWakeLock: function() { return /* binding */ useWakeLock; },
+/* harmony export */ useWebNotification: function() { return /* binding */ useWebNotification; },
+/* harmony export */ useWebSocket: function() { return /* binding */ useWebSocket; },
+/* harmony export */ useWebWorker: function() { return /* binding */ useWebWorker; },
+/* harmony export */ useWebWorkerFn: function() { return /* binding */ useWebWorkerFn; },
+/* harmony export */ useWindowFocus: function() { return /* binding */ useWindowFocus; },
+/* harmony export */ useWindowScroll: function() { return /* binding */ useWindowScroll; },
+/* harmony export */ useWindowSize: function() { return /* binding */ useWindowSize; },
+/* harmony export */ watchArray: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchArray; },
+/* harmony export */ watchAtMost: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchAtMost; },
+/* harmony export */ watchDebounced: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchDebounced; },
+/* harmony export */ watchDeep: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchDeep; },
+/* harmony export */ watchIgnorable: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchIgnorable; },
+/* harmony export */ watchImmediate: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchImmediate; },
+/* harmony export */ watchOnce: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchOnce; },
+/* harmony export */ watchPausable: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchPausable; },
+/* harmony export */ watchThrottled: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchThrottled; },
+/* harmony export */ watchTriggerable: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchTriggerable; },
+/* harmony export */ watchWithFilter: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchWithFilter; },
+/* harmony export */ whenever: function() { return /* reexport safe */ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.whenever; }
+/* harmony export */ });
+/* harmony import */ var _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @vueuse/shared */ "./node_modules/@vueuse/shared/index.mjs");
+/* harmony import */ var vue_demi__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-demi */ "./node_modules/@vueuse/core/node_modules/vue-demi/lib/index.mjs");
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+
+
+
+
+function computedAsync(evaluationCallback, initialState, optionsOrRef) {
+ let options;
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.isRef)(optionsOrRef)) {
+ options = {
+ evaluating: optionsOrRef
+ };
+ } else {
+ options = optionsOrRef || {};
+ }
+ const {
+ lazy = false,
+ evaluating = void 0,
+ shallow = true,
+ onError = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop
+ } = options;
+ const started = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(!lazy);
+ const current = shallow ? (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(initialState) : (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialState);
+ let counter = 0;
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watchEffect)(async (onInvalidate) => {
+ if (!started.value)
+ return;
+ counter++;
+ const counterAtBeginning = counter;
+ let hasFinished = false;
+ if (evaluating) {
+ Promise.resolve().then(() => {
+ evaluating.value = true;
+ });
+ }
+ try {
+ const result = await evaluationCallback((cancelCallback) => {
+ onInvalidate(() => {
+ if (evaluating)
+ evaluating.value = false;
+ if (!hasFinished)
+ cancelCallback();
+ });
+ });
+ if (counterAtBeginning === counter)
+ current.value = result;
+ } catch (e) {
+ onError(e);
+ } finally {
+ if (evaluating && counterAtBeginning === counter)
+ evaluating.value = false;
+ hasFinished = true;
+ }
+ });
+ if (lazy) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ started.value = true;
+ return current.value;
+ });
+ } else {
+ return current;
+ }
+}
+
+function computedInject(key, options, defaultSource, treatDefaultAsFactory) {
+ let source = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.inject)(key);
+ if (defaultSource)
+ source = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.inject)(key, defaultSource);
+ if (treatDefaultAsFactory)
+ source = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.inject)(key, defaultSource, treatDefaultAsFactory);
+ if (typeof options === "function") {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)((ctx) => options(source, ctx));
+ } else {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get: (ctx) => options.get(source, ctx),
+ set: options.set
+ });
+ }
+}
+
+var __defProp$q = Object.defineProperty;
+var __defProps$d = Object.defineProperties;
+var __getOwnPropDescs$d = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$t = Object.getOwnPropertySymbols;
+var __hasOwnProp$t = Object.prototype.hasOwnProperty;
+var __propIsEnum$t = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$q = (obj, key, value) => key in obj ? __defProp$q(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$q = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$t.call(b, prop))
+ __defNormalProp$q(a, prop, b[prop]);
+ if (__getOwnPropSymbols$t)
+ for (var prop of __getOwnPropSymbols$t(b)) {
+ if (__propIsEnum$t.call(b, prop))
+ __defNormalProp$q(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$d = (a, b) => __defProps$d(a, __getOwnPropDescs$d(b));
+function createReusableTemplate(options = {}) {
+ if (!vue_demi__WEBPACK_IMPORTED_MODULE_1__.isVue3 && !vue_demi__WEBPACK_IMPORTED_MODULE_1__.version.startsWith("2.7.")) {
+ if (true)
+ throw new Error("[VueUse] createReusableTemplate only works in Vue 2.7 or above.");
+ return;
+ }
+ const {
+ inheritAttrs = true
+ } = options;
+ const render = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)();
+ const define = /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.defineComponent)({
+ setup(_, { slots }) {
+ return () => {
+ render.value = slots.default;
+ };
+ }
+ });
+ const reuse = /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.defineComponent)({
+ inheritAttrs,
+ setup(_, { attrs, slots }) {
+ return () => {
+ var _a;
+ if (!render.value && "development" !== "production")
+ throw new Error("[VueUse] Failed to find the definition of reusable template");
+ const vnode = (_a = render.value) == null ? void 0 : _a.call(render, __spreadProps$d(__spreadValues$q({}, keysToCamelKebabCase(attrs)), { $slots: slots }));
+ return inheritAttrs && (vnode == null ? void 0 : vnode.length) === 1 ? vnode[0] : vnode;
+ };
+ }
+ });
+ return (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.makeDestructurable)(
+ { define, reuse },
+ [define, reuse]
+ );
+}
+function keysToCamelKebabCase(obj) {
+ const newObj = {};
+ for (const key in obj)
+ newObj[(0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.camelize)(key)] = obj[key];
+ return newObj;
+}
+
+function createTemplatePromise(options = {}) {
+ if (!vue_demi__WEBPACK_IMPORTED_MODULE_1__.isVue3) {
+ if (true)
+ throw new Error("[VueUse] createTemplatePromise only works in Vue 3 or above.");
+ return;
+ }
+ let index = 0;
+ const instances = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)([]);
+ function create(...args) {
+ const props = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowReactive)({
+ key: index++,
+ args,
+ promise: void 0,
+ resolve: () => {
+ },
+ reject: () => {
+ },
+ isResolving: false,
+ options
+ });
+ instances.value.push(props);
+ props.promise = new Promise((_resolve, _reject) => {
+ props.resolve = (v) => {
+ props.isResolving = true;
+ return _resolve(v);
+ };
+ props.reject = _reject;
+ }).finally(() => {
+ props.promise = void 0;
+ const index2 = instances.value.indexOf(props);
+ if (index2 !== -1)
+ instances.value.splice(index2, 1);
+ });
+ return props.promise;
+ }
+ function start(...args) {
+ if (options.singleton && instances.value.length > 0)
+ return instances.value[0].promise;
+ return create(...args);
+ }
+ const component = /* #__PURE__ */ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.defineComponent)((_, { slots }) => {
+ const renderList = () => instances.value.map((props) => {
+ var _a;
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.h)(vue_demi__WEBPACK_IMPORTED_MODULE_1__.Fragment, { key: props.key }, (_a = slots.default) == null ? void 0 : _a.call(slots, props));
+ });
+ if (options.transition)
+ return () => (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.h)(vue_demi__WEBPACK_IMPORTED_MODULE_1__.TransitionGroup, options.transition, renderList);
+ return renderList;
+ });
+ component.start = start;
+ return component;
+}
+
+function createUnrefFn(fn) {
+ return function(...args) {
+ return fn.apply(this, args.map((i) => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(i)));
+ };
+}
+
+function unrefElement(elRef) {
+ var _a;
+ const plain = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(elRef);
+ return (_a = plain == null ? void 0 : plain.$el) != null ? _a : plain;
+}
+
+const defaultWindow = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isClient ? window : void 0;
+const defaultDocument = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isClient ? window.document : void 0;
+const defaultNavigator = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isClient ? window.navigator : void 0;
+const defaultLocation = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isClient ? window.location : void 0;
+
+function useEventListener(...args) {
+ let target;
+ let events;
+ let listeners;
+ let options;
+ if (typeof args[0] === "string" || Array.isArray(args[0])) {
+ [events, listeners, options] = args;
+ target = defaultWindow;
+ } else {
+ [target, events, listeners, options] = args;
+ }
+ if (!target)
+ return _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop;
+ if (!Array.isArray(events))
+ events = [events];
+ if (!Array.isArray(listeners))
+ listeners = [listeners];
+ const cleanups = [];
+ const cleanup = () => {
+ cleanups.forEach((fn) => fn());
+ cleanups.length = 0;
+ };
+ const register = (el, event, listener, options2) => {
+ el.addEventListener(event, listener, options2);
+ return () => el.removeEventListener(event, listener, options2);
+ };
+ const stopWatch = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ () => [unrefElement(target), (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options)],
+ ([el, options2]) => {
+ cleanup();
+ if (!el)
+ return;
+ cleanups.push(
+ ...events.flatMap((event) => {
+ return listeners.map((listener) => register(el, event, listener, options2));
+ })
+ );
+ },
+ { immediate: true, flush: "post" }
+ );
+ const stop = () => {
+ stopWatch();
+ cleanup();
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(stop);
+ return stop;
+}
+
+let _iOSWorkaround = false;
+function onClickOutside(target, handler, options = {}) {
+ const { window = defaultWindow, ignore = [], capture = true, detectIframe = false } = options;
+ if (!window)
+ return;
+ if (_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isIOS && !_iOSWorkaround) {
+ _iOSWorkaround = true;
+ Array.from(window.document.body.children).forEach((el) => el.addEventListener("click", _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop));
+ window.document.documentElement.addEventListener("click", _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop);
+ }
+ let shouldListen = true;
+ const shouldIgnore = (event) => {
+ return ignore.some((target2) => {
+ if (typeof target2 === "string") {
+ return Array.from(window.document.querySelectorAll(target2)).some((el) => el === event.target || event.composedPath().includes(el));
+ } else {
+ const el = unrefElement(target2);
+ return el && (event.target === el || event.composedPath().includes(el));
+ }
+ });
+ };
+ const listener = (event) => {
+ const el = unrefElement(target);
+ if (!el || el === event.target || event.composedPath().includes(el))
+ return;
+ if (event.detail === 0)
+ shouldListen = !shouldIgnore(event);
+ if (!shouldListen) {
+ shouldListen = true;
+ return;
+ }
+ handler(event);
+ };
+ const cleanup = [
+ useEventListener(window, "click", listener, { passive: true, capture }),
+ useEventListener(window, "pointerdown", (e) => {
+ const el = unrefElement(target);
+ if (el)
+ shouldListen = !e.composedPath().includes(el) && !shouldIgnore(e);
+ }, { passive: true }),
+ detectIframe && useEventListener(window, "blur", (event) => {
+ setTimeout(() => {
+ var _a;
+ const el = unrefElement(target);
+ if (((_a = window.document.activeElement) == null ? void 0 : _a.tagName) === "IFRAME" && !(el == null ? void 0 : el.contains(window.document.activeElement)))
+ handler(event);
+ }, 0);
+ })
+ ].filter(Boolean);
+ const stop = () => cleanup.forEach((fn) => fn());
+ return stop;
+}
+
+var __defProp$p = Object.defineProperty;
+var __defProps$c = Object.defineProperties;
+var __getOwnPropDescs$c = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$s = Object.getOwnPropertySymbols;
+var __hasOwnProp$s = Object.prototype.hasOwnProperty;
+var __propIsEnum$s = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$p = (obj, key, value) => key in obj ? __defProp$p(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$p = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$s.call(b, prop))
+ __defNormalProp$p(a, prop, b[prop]);
+ if (__getOwnPropSymbols$s)
+ for (var prop of __getOwnPropSymbols$s(b)) {
+ if (__propIsEnum$s.call(b, prop))
+ __defNormalProp$p(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$c = (a, b) => __defProps$c(a, __getOwnPropDescs$c(b));
+function createKeyPredicate(keyFilter) {
+ if (typeof keyFilter === "function")
+ return keyFilter;
+ else if (typeof keyFilter === "string")
+ return (event) => event.key === keyFilter;
+ else if (Array.isArray(keyFilter))
+ return (event) => keyFilter.includes(event.key);
+ return () => true;
+}
+function onKeyStroke(...args) {
+ let key;
+ let handler;
+ let options = {};
+ if (args.length === 3) {
+ key = args[0];
+ handler = args[1];
+ options = args[2];
+ } else if (args.length === 2) {
+ if (typeof args[1] === "object") {
+ key = true;
+ handler = args[0];
+ options = args[1];
+ } else {
+ key = args[0];
+ handler = args[1];
+ }
+ } else {
+ key = true;
+ handler = args[0];
+ }
+ const {
+ target = defaultWindow,
+ eventName = "keydown",
+ passive = false,
+ dedupe = false
+ } = options;
+ const predicate = createKeyPredicate(key);
+ const listener = (e) => {
+ if (e.repeat && (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(dedupe))
+ return;
+ if (predicate(e))
+ handler(e);
+ };
+ return useEventListener(target, eventName, listener, passive);
+}
+function onKeyDown(key, handler, options = {}) {
+ return onKeyStroke(key, handler, __spreadProps$c(__spreadValues$p({}, options), { eventName: "keydown" }));
+}
+function onKeyPressed(key, handler, options = {}) {
+ return onKeyStroke(key, handler, __spreadProps$c(__spreadValues$p({}, options), { eventName: "keypress" }));
+}
+function onKeyUp(key, handler, options = {}) {
+ return onKeyStroke(key, handler, __spreadProps$c(__spreadValues$p({}, options), { eventName: "keyup" }));
+}
+
+const DEFAULT_DELAY = 500;
+function onLongPress(target, handler, options) {
+ var _a, _b;
+ const elementRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => unrefElement(target));
+ let timeout;
+ function clear() {
+ if (timeout) {
+ clearTimeout(timeout);
+ timeout = void 0;
+ }
+ }
+ function onDown(ev) {
+ var _a2, _b2, _c, _d;
+ if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)
+ return;
+ clear();
+ if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)
+ ev.preventDefault();
+ if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)
+ ev.stopPropagation();
+ timeout = setTimeout(
+ () => handler(ev),
+ (_d = options == null ? void 0 : options.delay) != null ? _d : DEFAULT_DELAY
+ );
+ }
+ const listenerOptions = {
+ capture: (_a = options == null ? void 0 : options.modifiers) == null ? void 0 : _a.capture,
+ once: (_b = options == null ? void 0 : options.modifiers) == null ? void 0 : _b.once
+ };
+ useEventListener(elementRef, "pointerdown", onDown, listenerOptions);
+ useEventListener(elementRef, ["pointerup", "pointerleave"], clear, listenerOptions);
+}
+
+function isFocusedElementEditable() {
+ const { activeElement, body } = document;
+ if (!activeElement)
+ return false;
+ if (activeElement === body)
+ return false;
+ switch (activeElement.tagName) {
+ case "INPUT":
+ case "TEXTAREA":
+ return true;
+ }
+ return activeElement.hasAttribute("contenteditable");
+}
+function isTypedCharValid({
+ keyCode,
+ metaKey,
+ ctrlKey,
+ altKey
+}) {
+ if (metaKey || ctrlKey || altKey)
+ return false;
+ if (keyCode >= 48 && keyCode <= 57)
+ return true;
+ if (keyCode >= 65 && keyCode <= 90)
+ return true;
+ if (keyCode >= 97 && keyCode <= 122)
+ return true;
+ return false;
+}
+function onStartTyping(callback, options = {}) {
+ const { document: document2 = defaultDocument } = options;
+ const keydown = (event) => {
+ !isFocusedElementEditable() && isTypedCharValid(event) && callback(event);
+ };
+ if (document2)
+ useEventListener(document2, "keydown", keydown, { passive: true });
+}
+
+function templateRef(key, initialValue = null) {
+ const instance = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.getCurrentInstance)();
+ let _trigger = () => {
+ };
+ const element = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.customRef)((track, trigger) => {
+ _trigger = trigger;
+ return {
+ get() {
+ var _a, _b;
+ track();
+ return (_b = (_a = instance == null ? void 0 : instance.proxy) == null ? void 0 : _a.$refs[key]) != null ? _b : initialValue;
+ },
+ set() {
+ }
+ };
+ });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(_trigger);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.onUpdated)(_trigger);
+ return element;
+}
+
+function useActiveElement(options = {}) {
+ var _a;
+ const {
+ window = defaultWindow,
+ deep = true
+ } = options;
+ const document = (_a = options.document) != null ? _a : window == null ? void 0 : window.document;
+ const getDeepActiveElement = () => {
+ var _a2;
+ let element = document == null ? void 0 : document.activeElement;
+ if (deep) {
+ while (element == null ? void 0 : element.shadowRoot)
+ element = (_a2 = element == null ? void 0 : element.shadowRoot) == null ? void 0 : _a2.activeElement;
+ }
+ return element;
+ };
+ const activeElement = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.computedWithControl)(
+ () => null,
+ () => getDeepActiveElement()
+ );
+ if (window) {
+ useEventListener(window, "blur", (event) => {
+ if (event.relatedTarget !== null)
+ return;
+ activeElement.trigger();
+ }, true);
+ useEventListener(window, "focus", activeElement.trigger, true);
+ }
+ return activeElement;
+}
+
+function useMounted() {
+ const isMounted = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.getCurrentInstance)()) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.onMounted)(() => {
+ isMounted.value = true;
+ });
+ }
+ return isMounted;
+}
+
+function useSupported(callback) {
+ const isMounted = useMounted();
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ isMounted.value;
+ return Boolean(callback());
+ });
+}
+
+function useRafFn(fn, options = {}) {
+ const {
+ immediate = true,
+ window = defaultWindow
+ } = options;
+ const isActive = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ let previousFrameTimestamp = 0;
+ let rafId = null;
+ function loop(timestamp) {
+ if (!isActive.value || !window)
+ return;
+ const delta = timestamp - (previousFrameTimestamp || timestamp);
+ fn({ delta, timestamp });
+ previousFrameTimestamp = timestamp;
+ rafId = window.requestAnimationFrame(loop);
+ }
+ function resume() {
+ if (!isActive.value && window) {
+ isActive.value = true;
+ rafId = window.requestAnimationFrame(loop);
+ }
+ }
+ function pause() {
+ isActive.value = false;
+ if (rafId != null && window) {
+ window.cancelAnimationFrame(rafId);
+ rafId = null;
+ }
+ }
+ if (immediate)
+ resume();
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(pause);
+ return {
+ isActive: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.readonly)(isActive),
+ pause,
+ resume
+ };
+}
+
+function useAnimate(target, keyframes, options) {
+ let config;
+ let animateOptions;
+ if ((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isObject)(options)) {
+ config = options;
+ animateOptions = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.objectOmit)(options, ["window", "immediate", "commitStyles", "persist", "onReady", "onError"]);
+ } else {
+ config = { duration: options };
+ animateOptions = options;
+ }
+ const {
+ window = defaultWindow,
+ immediate = true,
+ commitStyles,
+ persist,
+ playbackRate: _playbackRate = 1,
+ onReady,
+ onError = (e) => {
+ console.error(e);
+ }
+ } = config;
+ const isSupported = useSupported(() => window && HTMLElement && "animate" in HTMLElement.prototype);
+ const animate = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(void 0);
+ const store = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowReactive)({
+ startTime: null,
+ currentTime: null,
+ timeline: null,
+ playbackRate: _playbackRate,
+ pending: false,
+ playState: immediate ? "idle" : "paused",
+ replaceState: "active"
+ });
+ const pending = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => store.pending);
+ const playState = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => store.playState);
+ const replaceState = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => store.replaceState);
+ const startTime = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return store.startTime;
+ },
+ set(value) {
+ store.startTime = value;
+ if (animate.value)
+ animate.value.startTime = value;
+ }
+ });
+ const currentTime = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return store.currentTime;
+ },
+ set(value) {
+ store.currentTime = value;
+ if (animate.value) {
+ animate.value.currentTime = value;
+ syncResume();
+ }
+ }
+ });
+ const timeline = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return store.timeline;
+ },
+ set(value) {
+ store.timeline = value;
+ if (animate.value)
+ animate.value.timeline = value;
+ }
+ });
+ const playbackRate = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return store.playbackRate;
+ },
+ set(value) {
+ store.playbackRate = value;
+ if (animate.value)
+ animate.value.playbackRate = value;
+ }
+ });
+ const play = () => {
+ if (animate.value) {
+ try {
+ animate.value.play();
+ syncResume();
+ } catch (e) {
+ syncPause();
+ onError(e);
+ }
+ } else {
+ update();
+ }
+ };
+ const pause = () => {
+ var _a;
+ try {
+ (_a = animate.value) == null ? void 0 : _a.pause();
+ syncPause();
+ } catch (e) {
+ onError(e);
+ }
+ };
+ const reverse = () => {
+ var _a;
+ !animate.value && update();
+ try {
+ (_a = animate.value) == null ? void 0 : _a.reverse();
+ syncResume();
+ } catch (e) {
+ syncPause();
+ onError(e);
+ }
+ };
+ const finish = () => {
+ var _a;
+ try {
+ (_a = animate.value) == null ? void 0 : _a.finish();
+ syncPause();
+ } catch (e) {
+ onError(e);
+ }
+ };
+ const cancel = () => {
+ var _a;
+ try {
+ (_a = animate.value) == null ? void 0 : _a.cancel();
+ syncPause();
+ } catch (e) {
+ onError(e);
+ }
+ };
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(() => unrefElement(target), (el) => {
+ el && update();
+ });
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(() => keyframes, (value) => {
+ !animate.value && update();
+ if (!unrefElement(target) && animate.value) {
+ animate.value.effect = new KeyframeEffect(
+ unrefElement(target),
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(value),
+ animateOptions
+ );
+ }
+ }, { deep: true });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(() => {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.nextTick)(() => update(true));
+ });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(cancel);
+ function update(init) {
+ const el = unrefElement(target);
+ if (!isSupported.value || !el)
+ return;
+ animate.value = el.animate((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(keyframes), animateOptions);
+ if (commitStyles)
+ animate.value.commitStyles();
+ if (persist)
+ animate.value.persist();
+ if (_playbackRate !== 1)
+ animate.value.playbackRate = _playbackRate;
+ if (init && !immediate)
+ animate.value.pause();
+ else
+ syncResume();
+ onReady == null ? void 0 : onReady(animate.value);
+ }
+ useEventListener(animate, ["cancel", "finish", "remove"], syncPause);
+ const { resume: resumeRef, pause: pauseRef } = useRafFn(() => {
+ if (!animate.value)
+ return;
+ store.pending = animate.value.pending;
+ store.playState = animate.value.playState;
+ store.replaceState = animate.value.replaceState;
+ store.startTime = animate.value.startTime;
+ store.currentTime = animate.value.currentTime;
+ store.timeline = animate.value.timeline;
+ store.playbackRate = animate.value.playbackRate;
+ }, { immediate: false });
+ function syncResume() {
+ if (isSupported.value)
+ resumeRef();
+ }
+ function syncPause() {
+ if (isSupported.value && window)
+ window.requestAnimationFrame(pauseRef);
+ }
+ return {
+ isSupported,
+ animate,
+ // actions
+ play,
+ pause,
+ reverse,
+ finish,
+ cancel,
+ // state
+ pending,
+ playState,
+ replaceState,
+ startTime,
+ currentTime,
+ timeline,
+ playbackRate
+ };
+}
+
+function useAsyncQueue(tasks, options = {}) {
+ const {
+ interrupt = true,
+ onError = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop,
+ onFinished = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop,
+ signal
+ } = options;
+ const promiseState = {
+ aborted: "aborted",
+ fulfilled: "fulfilled",
+ pending: "pending",
+ rejected: "rejected"
+ };
+ const initialResult = Array.from(Array.from({ length: tasks.length }), () => ({ state: promiseState.pending, data: null }));
+ const result = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(initialResult);
+ const activeIndex = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(-1);
+ if (!tasks || tasks.length === 0) {
+ onFinished();
+ return {
+ activeIndex,
+ result
+ };
+ }
+ function updateResult(state, res) {
+ activeIndex.value++;
+ result[activeIndex.value].data = res;
+ result[activeIndex.value].state = state;
+ }
+ tasks.reduce((prev, curr) => {
+ return prev.then((prevRes) => {
+ var _a;
+ if (signal == null ? void 0 : signal.aborted) {
+ updateResult(promiseState.aborted, new Error("aborted"));
+ return;
+ }
+ if (((_a = result[activeIndex.value]) == null ? void 0 : _a.state) === promiseState.rejected && interrupt) {
+ onFinished();
+ return;
+ }
+ const done = curr(prevRes).then((currentRes) => {
+ updateResult(promiseState.fulfilled, currentRes);
+ activeIndex.value === tasks.length - 1 && onFinished();
+ return currentRes;
+ });
+ if (!signal)
+ return done;
+ return Promise.race([done, whenAborted(signal)]);
+ }).catch((e) => {
+ if (signal == null ? void 0 : signal.aborted) {
+ updateResult(promiseState.aborted, e);
+ return e;
+ }
+ updateResult(promiseState.rejected, e);
+ onError();
+ return e;
+ });
+ }, Promise.resolve());
+ return {
+ activeIndex,
+ result
+ };
+}
+function whenAborted(signal) {
+ return new Promise((resolve, reject) => {
+ const error = new Error("aborted");
+ if (signal.aborted)
+ reject(error);
+ else
+ signal.addEventListener("abort", () => reject(error), { once: true });
+ });
+}
+
+var __defProp$o = Object.defineProperty;
+var __defProps$b = Object.defineProperties;
+var __getOwnPropDescs$b = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$r = Object.getOwnPropertySymbols;
+var __hasOwnProp$r = Object.prototype.hasOwnProperty;
+var __propIsEnum$r = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$o = (obj, key, value) => key in obj ? __defProp$o(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$o = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$r.call(b, prop))
+ __defNormalProp$o(a, prop, b[prop]);
+ if (__getOwnPropSymbols$r)
+ for (var prop of __getOwnPropSymbols$r(b)) {
+ if (__propIsEnum$r.call(b, prop))
+ __defNormalProp$o(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$b = (a, b) => __defProps$b(a, __getOwnPropDescs$b(b));
+function useAsyncState(promise, initialState, options) {
+ const {
+ immediate = true,
+ delay = 0,
+ onError = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop,
+ onSuccess = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop,
+ resetOnExecute = true,
+ shallow = true,
+ throwError
+ } = options != null ? options : {};
+ const state = shallow ? (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(initialState) : (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialState);
+ const isReady = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const isLoading = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const error = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(void 0);
+ async function execute(delay2 = 0, ...args) {
+ if (resetOnExecute)
+ state.value = initialState;
+ error.value = void 0;
+ isReady.value = false;
+ isLoading.value = true;
+ if (delay2 > 0)
+ await (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.promiseTimeout)(delay2);
+ const _promise = typeof promise === "function" ? promise(...args) : promise;
+ try {
+ const data = await _promise;
+ state.value = data;
+ isReady.value = true;
+ onSuccess(data);
+ } catch (e) {
+ error.value = e;
+ onError(e);
+ if (throwError)
+ throw e;
+ } finally {
+ isLoading.value = false;
+ }
+ return state.value;
+ }
+ if (immediate)
+ execute(delay);
+ const shell = {
+ state,
+ isReady,
+ isLoading,
+ error,
+ execute
+ };
+ function waitUntilIsLoaded() {
+ return new Promise((resolve, reject) => {
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.until)(isLoading).toBe(false).then(() => resolve(shell)).catch(reject);
+ });
+ }
+ return __spreadProps$b(__spreadValues$o({}, shell), {
+ then(onFulfilled, onRejected) {
+ return waitUntilIsLoaded().then(onFulfilled, onRejected);
+ }
+ });
+}
+
+const defaults = {
+ array: (v) => JSON.stringify(v),
+ object: (v) => JSON.stringify(v),
+ set: (v) => JSON.stringify(Array.from(v)),
+ map: (v) => JSON.stringify(Object.fromEntries(v)),
+ null: () => ""
+};
+function getDefaultSerialization(target) {
+ if (!target)
+ return defaults.null;
+ if (target instanceof Map)
+ return defaults.map;
+ else if (target instanceof Set)
+ return defaults.set;
+ else if (Array.isArray(target))
+ return defaults.array;
+ else
+ return defaults.object;
+}
+
+function useBase64(target, options) {
+ const base64 = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("");
+ const promise = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ function execute() {
+ if (!_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isClient)
+ return;
+ promise.value = new Promise((resolve, reject) => {
+ try {
+ const _target = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (_target == null) {
+ resolve("");
+ } else if (typeof _target === "string") {
+ resolve(blobToBase64(new Blob([_target], { type: "text/plain" })));
+ } else if (_target instanceof Blob) {
+ resolve(blobToBase64(_target));
+ } else if (_target instanceof ArrayBuffer) {
+ resolve(window.btoa(String.fromCharCode(...new Uint8Array(_target))));
+ } else if (_target instanceof HTMLCanvasElement) {
+ resolve(_target.toDataURL(options == null ? void 0 : options.type, options == null ? void 0 : options.quality));
+ } else if (_target instanceof HTMLImageElement) {
+ const img = _target.cloneNode(false);
+ img.crossOrigin = "Anonymous";
+ imgLoaded(img).then(() => {
+ const canvas = document.createElement("canvas");
+ const ctx = canvas.getContext("2d");
+ canvas.width = img.width;
+ canvas.height = img.height;
+ ctx.drawImage(img, 0, 0, canvas.width, canvas.height);
+ resolve(canvas.toDataURL(options == null ? void 0 : options.type, options == null ? void 0 : options.quality));
+ }).catch(reject);
+ } else if (typeof _target === "object") {
+ const _serializeFn = (options == null ? void 0 : options.serializer) || getDefaultSerialization(_target);
+ const serialized = _serializeFn(_target);
+ return resolve(blobToBase64(new Blob([serialized], { type: "application/json" })));
+ } else {
+ reject(new Error("target is unsupported types"));
+ }
+ } catch (error) {
+ reject(error);
+ }
+ });
+ promise.value.then((res) => base64.value = res);
+ return promise.value;
+ }
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.isRef)(target) || typeof target === "function")
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(target, execute, { immediate: true });
+ else
+ execute();
+ return {
+ base64,
+ promise,
+ execute
+ };
+}
+function imgLoaded(img) {
+ return new Promise((resolve, reject) => {
+ if (!img.complete) {
+ img.onload = () => {
+ resolve();
+ };
+ img.onerror = reject;
+ } else {
+ resolve();
+ }
+ });
+}
+function blobToBase64(blob) {
+ return new Promise((resolve, reject) => {
+ const fr = new FileReader();
+ fr.onload = (e) => {
+ resolve(e.target.result);
+ };
+ fr.onerror = reject;
+ fr.readAsDataURL(blob);
+ });
+}
+
+function useBattery({ navigator = defaultNavigator } = {}) {
+ const events = ["chargingchange", "chargingtimechange", "dischargingtimechange", "levelchange"];
+ const isSupported = useSupported(() => navigator && "getBattery" in navigator);
+ const charging = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const chargingTime = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const dischargingTime = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const level = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(1);
+ let battery;
+ function updateBatteryInfo() {
+ charging.value = this.charging;
+ chargingTime.value = this.chargingTime || 0;
+ dischargingTime.value = this.dischargingTime || 0;
+ level.value = this.level;
+ }
+ if (isSupported.value) {
+ navigator.getBattery().then((_battery) => {
+ battery = _battery;
+ updateBatteryInfo.call(battery);
+ useEventListener(battery, events, updateBatteryInfo, { passive: true });
+ });
+ }
+ return {
+ isSupported,
+ charging,
+ chargingTime,
+ dischargingTime,
+ level
+ };
+}
+
+function useBluetooth(options) {
+ let {
+ acceptAllDevices = false
+ } = options || {};
+ const {
+ filters = void 0,
+ optionalServices = void 0,
+ navigator = defaultNavigator
+ } = options || {};
+ const isSupported = useSupported(() => navigator && "bluetooth" in navigator);
+ const device = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(void 0);
+ const error = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(null);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(device, () => {
+ connectToBluetoothGATTServer();
+ });
+ async function requestDevice() {
+ if (!isSupported.value)
+ return;
+ error.value = null;
+ if (filters && filters.length > 0)
+ acceptAllDevices = false;
+ try {
+ device.value = await (navigator == null ? void 0 : navigator.bluetooth.requestDevice({
+ acceptAllDevices,
+ filters,
+ optionalServices
+ }));
+ } catch (err) {
+ error.value = err;
+ }
+ }
+ const server = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const isConnected = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ var _a;
+ return ((_a = server.value) == null ? void 0 : _a.connected) || false;
+ });
+ async function connectToBluetoothGATTServer() {
+ error.value = null;
+ if (device.value && device.value.gatt) {
+ device.value.addEventListener("gattserverdisconnected", () => {
+ });
+ try {
+ server.value = await device.value.gatt.connect();
+ } catch (err) {
+ error.value = err;
+ }
+ }
+ }
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(() => {
+ var _a;
+ if (device.value)
+ (_a = device.value.gatt) == null ? void 0 : _a.connect();
+ });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => {
+ var _a;
+ if (device.value)
+ (_a = device.value.gatt) == null ? void 0 : _a.disconnect();
+ });
+ return {
+ isSupported,
+ isConnected,
+ // Device:
+ device,
+ requestDevice,
+ // Server:
+ server,
+ // Errors:
+ error
+ };
+}
+
+function useMediaQuery(query, options = {}) {
+ const { window = defaultWindow } = options;
+ const isSupported = useSupported(() => window && "matchMedia" in window && typeof window.matchMedia === "function");
+ let mediaQuery;
+ const matches = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const handler = (event) => {
+ matches.value = event.matches;
+ };
+ const cleanup = () => {
+ if (!mediaQuery)
+ return;
+ if ("removeEventListener" in mediaQuery)
+ mediaQuery.removeEventListener("change", handler);
+ else
+ mediaQuery.removeListener(handler);
+ };
+ const stopWatch = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watchEffect)(() => {
+ if (!isSupported.value)
+ return;
+ cleanup();
+ mediaQuery = window.matchMedia((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(query));
+ if ("addEventListener" in mediaQuery)
+ mediaQuery.addEventListener("change", handler);
+ else
+ mediaQuery.addListener(handler);
+ matches.value = mediaQuery.matches;
+ });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => {
+ stopWatch();
+ cleanup();
+ mediaQuery = void 0;
+ });
+ return matches;
+}
+
+const breakpointsTailwind = {
+ "sm": 640,
+ "md": 768,
+ "lg": 1024,
+ "xl": 1280,
+ "2xl": 1536
+};
+const breakpointsBootstrapV5 = {
+ sm: 576,
+ md: 768,
+ lg: 992,
+ xl: 1200,
+ xxl: 1400
+};
+const breakpointsVuetify = {
+ xs: 600,
+ sm: 960,
+ md: 1264,
+ lg: 1904
+};
+const breakpointsAntDesign = {
+ xs: 480,
+ sm: 576,
+ md: 768,
+ lg: 992,
+ xl: 1200,
+ xxl: 1600
+};
+const breakpointsQuasar = {
+ xs: 600,
+ sm: 1024,
+ md: 1440,
+ lg: 1920
+};
+const breakpointsSematic = {
+ mobileS: 320,
+ mobileM: 375,
+ mobileL: 425,
+ tablet: 768,
+ laptop: 1024,
+ laptopL: 1440,
+ desktop4K: 2560
+};
+const breakpointsMasterCss = {
+ "3xs": 360,
+ "2xs": 480,
+ "xs": 600,
+ "sm": 768,
+ "md": 1024,
+ "lg": 1280,
+ "xl": 1440,
+ "2xl": 1600,
+ "3xl": 1920,
+ "4xl": 2560
+};
+
+function useBreakpoints(breakpoints, options = {}) {
+ function getValue(k, delta) {
+ let v = breakpoints[k];
+ if (delta != null)
+ v = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.increaseWithUnit)(v, delta);
+ if (typeof v === "number")
+ v = `${v}px`;
+ return v;
+ }
+ const { window = defaultWindow } = options;
+ function match(query) {
+ if (!window)
+ return false;
+ return window.matchMedia(query).matches;
+ }
+ const greaterOrEqual = (k) => {
+ return useMediaQuery(`(min-width: ${getValue(k)})`, options);
+ };
+ const shortcutMethods = Object.keys(breakpoints).reduce((shortcuts, k) => {
+ Object.defineProperty(shortcuts, k, {
+ get: () => greaterOrEqual(k),
+ enumerable: true,
+ configurable: true
+ });
+ return shortcuts;
+ }, {});
+ return Object.assign(shortcutMethods, {
+ greater(k) {
+ return useMediaQuery(`(min-width: ${getValue(k, 0.1)})`, options);
+ },
+ greaterOrEqual,
+ smaller(k) {
+ return useMediaQuery(`(max-width: ${getValue(k, -0.1)})`, options);
+ },
+ smallerOrEqual(k) {
+ return useMediaQuery(`(max-width: ${getValue(k)})`, options);
+ },
+ between(a, b) {
+ return useMediaQuery(`(min-width: ${getValue(a)}) and (max-width: ${getValue(b, -0.1)})`, options);
+ },
+ isGreater(k) {
+ return match(`(min-width: ${getValue(k, 0.1)})`);
+ },
+ isGreaterOrEqual(k) {
+ return match(`(min-width: ${getValue(k)})`);
+ },
+ isSmaller(k) {
+ return match(`(max-width: ${getValue(k, -0.1)})`);
+ },
+ isSmallerOrEqual(k) {
+ return match(`(max-width: ${getValue(k)})`);
+ },
+ isInBetween(a, b) {
+ return match(`(min-width: ${getValue(a)}) and (max-width: ${getValue(b, -0.1)})`);
+ },
+ current() {
+ const points = Object.keys(breakpoints).map((i) => [i, greaterOrEqual(i)]);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => points.filter(([, v]) => v.value).map(([k]) => k));
+ }
+ });
+}
+
+function useBroadcastChannel(options) {
+ const {
+ name,
+ window = defaultWindow
+ } = options;
+ const isSupported = useSupported(() => window && "BroadcastChannel" in window);
+ const isClosed = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const channel = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const error = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(null);
+ const post = (data2) => {
+ if (channel.value)
+ channel.value.postMessage(data2);
+ };
+ const close = () => {
+ if (channel.value)
+ channel.value.close();
+ isClosed.value = true;
+ };
+ if (isSupported.value) {
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(() => {
+ error.value = null;
+ channel.value = new BroadcastChannel(name);
+ channel.value.addEventListener("message", (e) => {
+ data.value = e.data;
+ }, { passive: true });
+ channel.value.addEventListener("messageerror", (e) => {
+ error.value = e;
+ }, { passive: true });
+ channel.value.addEventListener("close", () => {
+ isClosed.value = true;
+ });
+ });
+ }
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => {
+ close();
+ });
+ return {
+ isSupported,
+ channel,
+ data,
+ post,
+ close,
+ error,
+ isClosed
+ };
+}
+
+var __defProp$n = Object.defineProperty;
+var __getOwnPropSymbols$q = Object.getOwnPropertySymbols;
+var __hasOwnProp$q = Object.prototype.hasOwnProperty;
+var __propIsEnum$q = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$n = (obj, key, value) => key in obj ? __defProp$n(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$n = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$q.call(b, prop))
+ __defNormalProp$n(a, prop, b[prop]);
+ if (__getOwnPropSymbols$q)
+ for (var prop of __getOwnPropSymbols$q(b)) {
+ if (__propIsEnum$q.call(b, prop))
+ __defNormalProp$n(a, prop, b[prop]);
+ }
+ return a;
+};
+const WRITABLE_PROPERTIES = [
+ "hash",
+ "host",
+ "hostname",
+ "href",
+ "pathname",
+ "port",
+ "protocol",
+ "search"
+];
+function useBrowserLocation({ window = defaultWindow } = {}) {
+ const refs = Object.fromEntries(
+ WRITABLE_PROPERTIES.map((key) => [key, (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)()])
+ );
+ for (const [key, ref2] of (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.objectEntries)(refs)) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(ref2, (value) => {
+ if (!(window == null ? void 0 : window.location) || window.location[key] === value)
+ return;
+ window.location[key] = value;
+ });
+ }
+ const buildState = (trigger) => {
+ var _a;
+ const { state: state2, length } = (window == null ? void 0 : window.history) || {};
+ const { origin } = (window == null ? void 0 : window.location) || {};
+ for (const key of WRITABLE_PROPERTIES)
+ refs[key].value = (_a = window == null ? void 0 : window.location) == null ? void 0 : _a[key];
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(__spreadValues$n({
+ trigger,
+ state: state2,
+ length,
+ origin
+ }, refs));
+ };
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(buildState("load"));
+ if (window) {
+ useEventListener(window, "popstate", () => state.value = buildState("popstate"), { passive: true });
+ useEventListener(window, "hashchange", () => state.value = buildState("hashchange"), { passive: true });
+ }
+ return state;
+}
+
+function useCached(refValue, comparator = (a, b) => a === b, watchOptions) {
+ const cachedValue = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(refValue.value);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(() => refValue.value, (value) => {
+ if (!comparator(value, cachedValue.value))
+ cachedValue.value = value;
+ }, watchOptions);
+ return cachedValue;
+}
+
+function useClipboard(options = {}) {
+ const {
+ navigator = defaultNavigator,
+ read = false,
+ source,
+ copiedDuring = 1500,
+ legacy = false
+ } = options;
+ const isClipboardApiSupported = useSupported(() => navigator && "clipboard" in navigator);
+ const isSupported = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => isClipboardApiSupported.value || legacy);
+ const text = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("");
+ const copied = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const timeout = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useTimeoutFn)(() => copied.value = false, copiedDuring);
+ function updateText() {
+ if (isClipboardApiSupported.value) {
+ navigator.clipboard.readText().then((value) => {
+ text.value = value;
+ });
+ } else {
+ text.value = legacyRead();
+ }
+ }
+ if (isSupported.value && read)
+ useEventListener(["copy", "cut"], updateText);
+ async function copy(value = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(source)) {
+ if (isSupported.value && value != null) {
+ if (isClipboardApiSupported.value)
+ await navigator.clipboard.writeText(value);
+ else
+ legacyCopy(value);
+ text.value = value;
+ copied.value = true;
+ timeout.start();
+ }
+ }
+ function legacyCopy(value) {
+ const ta = document.createElement("textarea");
+ ta.value = value != null ? value : "";
+ ta.style.position = "absolute";
+ ta.style.opacity = "0";
+ document.body.appendChild(ta);
+ ta.select();
+ document.execCommand("copy");
+ ta.remove();
+ }
+ function legacyRead() {
+ var _a, _b, _c;
+ return (_c = (_b = (_a = document == null ? void 0 : document.getSelection) == null ? void 0 : _a.call(document)) == null ? void 0 : _b.toString()) != null ? _c : "";
+ }
+ return {
+ isSupported,
+ text,
+ copied,
+ copy
+ };
+}
+
+var __defProp$m = Object.defineProperty;
+var __defProps$a = Object.defineProperties;
+var __getOwnPropDescs$a = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$p = Object.getOwnPropertySymbols;
+var __hasOwnProp$p = Object.prototype.hasOwnProperty;
+var __propIsEnum$p = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$m = (obj, key, value) => key in obj ? __defProp$m(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$m = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$p.call(b, prop))
+ __defNormalProp$m(a, prop, b[prop]);
+ if (__getOwnPropSymbols$p)
+ for (var prop of __getOwnPropSymbols$p(b)) {
+ if (__propIsEnum$p.call(b, prop))
+ __defNormalProp$m(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$a = (a, b) => __defProps$a(a, __getOwnPropDescs$a(b));
+function cloneFnJSON(source) {
+ return JSON.parse(JSON.stringify(source));
+}
+function useCloned(source, options = {}) {
+ const cloned = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)({});
+ const {
+ manual,
+ clone = cloneFnJSON,
+ // watch options
+ deep = true,
+ immediate = true
+ } = options;
+ function sync() {
+ cloned.value = clone((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(source));
+ }
+ if (!manual && ((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.isRef)(source) || typeof source === "function")) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(source, sync, __spreadProps$a(__spreadValues$m({}, options), {
+ deep,
+ immediate
+ }));
+ } else {
+ sync();
+ }
+ return { cloned, sync };
+}
+
+const _global = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
+const globalKey = "__vueuse_ssr_handlers__";
+const handlers = /* @__PURE__ */ getHandlers();
+function getHandlers() {
+ if (!(globalKey in _global))
+ _global[globalKey] = _global[globalKey] || {};
+ return _global[globalKey];
+}
+function getSSRHandler(key, fallback) {
+ return handlers[key] || fallback;
+}
+function setSSRHandler(key, fn) {
+ handlers[key] = fn;
+}
+
+function guessSerializerType(rawInit) {
+ return rawInit == null ? "any" : rawInit instanceof Set ? "set" : rawInit instanceof Map ? "map" : rawInit instanceof Date ? "date" : typeof rawInit === "boolean" ? "boolean" : typeof rawInit === "string" ? "string" : typeof rawInit === "object" ? "object" : !Number.isNaN(rawInit) ? "number" : "any";
+}
+
+var __defProp$l = Object.defineProperty;
+var __getOwnPropSymbols$o = Object.getOwnPropertySymbols;
+var __hasOwnProp$o = Object.prototype.hasOwnProperty;
+var __propIsEnum$o = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$l = (obj, key, value) => key in obj ? __defProp$l(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$l = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$o.call(b, prop))
+ __defNormalProp$l(a, prop, b[prop]);
+ if (__getOwnPropSymbols$o)
+ for (var prop of __getOwnPropSymbols$o(b)) {
+ if (__propIsEnum$o.call(b, prop))
+ __defNormalProp$l(a, prop, b[prop]);
+ }
+ return a;
+};
+const StorageSerializers = {
+ boolean: {
+ read: (v) => v === "true",
+ write: (v) => String(v)
+ },
+ object: {
+ read: (v) => JSON.parse(v),
+ write: (v) => JSON.stringify(v)
+ },
+ number: {
+ read: (v) => Number.parseFloat(v),
+ write: (v) => String(v)
+ },
+ any: {
+ read: (v) => v,
+ write: (v) => String(v)
+ },
+ string: {
+ read: (v) => v,
+ write: (v) => String(v)
+ },
+ map: {
+ read: (v) => new Map(JSON.parse(v)),
+ write: (v) => JSON.stringify(Array.from(v.entries()))
+ },
+ set: {
+ read: (v) => new Set(JSON.parse(v)),
+ write: (v) => JSON.stringify(Array.from(v))
+ },
+ date: {
+ read: (v) => new Date(v),
+ write: (v) => v.toISOString()
+ }
+};
+const customStorageEventName = "vueuse-storage";
+function useStorage(key, defaults, storage, options = {}) {
+ var _a;
+ const {
+ flush = "pre",
+ deep = true,
+ listenToStorageChanges = true,
+ writeDefaults = true,
+ mergeDefaults = false,
+ shallow,
+ window = defaultWindow,
+ eventFilter,
+ onError = (e) => {
+ console.error(e);
+ }
+ } = options;
+ const data = (shallow ? vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef : vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(defaults);
+ if (!storage) {
+ try {
+ storage = getSSRHandler("getDefaultStorage", () => {
+ var _a2;
+ return (_a2 = defaultWindow) == null ? void 0 : _a2.localStorage;
+ })();
+ } catch (e) {
+ onError(e);
+ }
+ }
+ if (!storage)
+ return data;
+ const rawInit = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(defaults);
+ const type = guessSerializerType(rawInit);
+ const serializer = (_a = options.serializer) != null ? _a : StorageSerializers[type];
+ const { pause: pauseWatch, resume: resumeWatch } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.pausableWatch)(
+ data,
+ () => write(data.value),
+ { flush, deep, eventFilter }
+ );
+ if (window && listenToStorageChanges) {
+ useEventListener(window, "storage", update);
+ useEventListener(window, customStorageEventName, updateFromCustomEvent);
+ }
+ update();
+ return data;
+ function write(v) {
+ try {
+ if (v == null) {
+ storage.removeItem(key);
+ } else {
+ const serialized = serializer.write(v);
+ const oldValue = storage.getItem(key);
+ if (oldValue !== serialized) {
+ storage.setItem(key, serialized);
+ if (window) {
+ window.dispatchEvent(new CustomEvent(customStorageEventName, {
+ detail: {
+ key,
+ oldValue,
+ newValue: serialized,
+ storageArea: storage
+ }
+ }));
+ }
+ }
+ }
+ } catch (e) {
+ onError(e);
+ }
+ }
+ function read(event) {
+ const rawValue = event ? event.newValue : storage.getItem(key);
+ if (rawValue == null) {
+ if (writeDefaults && rawInit !== null)
+ storage.setItem(key, serializer.write(rawInit));
+ return rawInit;
+ } else if (!event && mergeDefaults) {
+ const value = serializer.read(rawValue);
+ if (typeof mergeDefaults === "function")
+ return mergeDefaults(value, rawInit);
+ else if (type === "object" && !Array.isArray(value))
+ return __spreadValues$l(__spreadValues$l({}, rawInit), value);
+ return value;
+ } else if (typeof rawValue !== "string") {
+ return rawValue;
+ } else {
+ return serializer.read(rawValue);
+ }
+ }
+ function updateFromCustomEvent(event) {
+ update(event.detail);
+ }
+ function update(event) {
+ if (event && event.storageArea !== storage)
+ return;
+ if (event && event.key == null) {
+ data.value = rawInit;
+ return;
+ }
+ if (event && event.key !== key)
+ return;
+ pauseWatch();
+ try {
+ data.value = read(event);
+ } catch (e) {
+ onError(e);
+ } finally {
+ if (event)
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.nextTick)(resumeWatch);
+ else
+ resumeWatch();
+ }
+ }
+}
+
+function usePreferredDark(options) {
+ return useMediaQuery("(prefers-color-scheme: dark)", options);
+}
+
+var __defProp$k = Object.defineProperty;
+var __getOwnPropSymbols$n = Object.getOwnPropertySymbols;
+var __hasOwnProp$n = Object.prototype.hasOwnProperty;
+var __propIsEnum$n = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$k = (obj, key, value) => key in obj ? __defProp$k(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$k = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$n.call(b, prop))
+ __defNormalProp$k(a, prop, b[prop]);
+ if (__getOwnPropSymbols$n)
+ for (var prop of __getOwnPropSymbols$n(b)) {
+ if (__propIsEnum$n.call(b, prop))
+ __defNormalProp$k(a, prop, b[prop]);
+ }
+ return a;
+};
+function useColorMode(options = {}) {
+ const {
+ selector = "html",
+ attribute = "class",
+ initialValue = "auto",
+ window = defaultWindow,
+ storage,
+ storageKey = "vueuse-color-scheme",
+ listenToStorageChanges = true,
+ storageRef,
+ emitAuto,
+ disableTransition = true
+ } = options;
+ const modes = __spreadValues$k({
+ auto: "",
+ light: "light",
+ dark: "dark"
+ }, options.modes || {});
+ const preferredDark = usePreferredDark({ window });
+ const system = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => preferredDark.value ? "dark" : "light");
+ const store = storageRef || (storageKey == null ? (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(initialValue) : useStorage(storageKey, initialValue, storage, { window, listenToStorageChanges }));
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(
+ () => store.value === "auto" ? system.value : store.value
+ );
+ const updateHTMLAttrs = getSSRHandler(
+ "updateHTMLAttrs",
+ (selector2, attribute2, value) => {
+ const el = typeof selector2 === "string" ? window == null ? void 0 : window.document.querySelector(selector2) : unrefElement(selector2);
+ if (!el)
+ return;
+ let style;
+ if (disableTransition) {
+ style = window.document.createElement("style");
+ const styleString = "*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";
+ style.appendChild(document.createTextNode(styleString));
+ window.document.head.appendChild(style);
+ }
+ if (attribute2 === "class") {
+ const current = value.split(/\s/g);
+ Object.values(modes).flatMap((i) => (i || "").split(/\s/g)).filter(Boolean).forEach((v) => {
+ if (current.includes(v))
+ el.classList.add(v);
+ else
+ el.classList.remove(v);
+ });
+ } else {
+ el.setAttribute(attribute2, value);
+ }
+ if (disableTransition) {
+ window.getComputedStyle(style).opacity;
+ document.head.removeChild(style);
+ }
+ }
+ );
+ function defaultOnChanged(mode) {
+ var _a;
+ updateHTMLAttrs(selector, attribute, (_a = modes[mode]) != null ? _a : mode);
+ }
+ function onChanged(mode) {
+ if (options.onChanged)
+ options.onChanged(mode, defaultOnChanged);
+ else
+ defaultOnChanged(mode);
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(state, onChanged, { flush: "post", immediate: true });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(() => onChanged(state.value));
+ const auto = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return emitAuto ? store.value : state.value;
+ },
+ set(v) {
+ store.value = v;
+ }
+ });
+ try {
+ return Object.assign(auto, { store, system, state });
+ } catch (e) {
+ return auto;
+ }
+}
+
+function useConfirmDialog(revealed = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false)) {
+ const confirmHook = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const cancelHook = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const revealHook = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ let _resolve = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop;
+ const reveal = (data) => {
+ revealHook.trigger(data);
+ revealed.value = true;
+ return new Promise((resolve) => {
+ _resolve = resolve;
+ });
+ };
+ const confirm = (data) => {
+ revealed.value = false;
+ confirmHook.trigger(data);
+ _resolve({ data, isCanceled: false });
+ };
+ const cancel = (data) => {
+ revealed.value = false;
+ cancelHook.trigger(data);
+ _resolve({ data, isCanceled: true });
+ };
+ return {
+ isRevealed: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => revealed.value),
+ reveal,
+ confirm,
+ cancel,
+ onReveal: revealHook.on,
+ onConfirm: confirmHook.on,
+ onCancel: cancelHook.on
+ };
+}
+
+var __getOwnPropSymbols$m = Object.getOwnPropertySymbols;
+var __hasOwnProp$m = Object.prototype.hasOwnProperty;
+var __propIsEnum$m = Object.prototype.propertyIsEnumerable;
+var __objRest$3 = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$m.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$m)
+ for (var prop of __getOwnPropSymbols$m(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$m.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function useMutationObserver(target, callback, options = {}) {
+ const _a = options, { window = defaultWindow } = _a, mutationOptions = __objRest$3(_a, ["window"]);
+ let observer;
+ const isSupported = useSupported(() => window && "MutationObserver" in window);
+ const cleanup = () => {
+ if (observer) {
+ observer.disconnect();
+ observer = void 0;
+ }
+ };
+ const stopWatch = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ () => unrefElement(target),
+ (el) => {
+ cleanup();
+ if (isSupported.value && window && el) {
+ observer = new MutationObserver(callback);
+ observer.observe(el, mutationOptions);
+ }
+ },
+ { immediate: true }
+ );
+ const stop = () => {
+ cleanup();
+ stopWatch();
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(stop);
+ return {
+ isSupported,
+ stop
+ };
+}
+
+function useCssVar(prop, target, options = {}) {
+ const { window = defaultWindow, initialValue = "", observe = false } = options;
+ const variable = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialValue);
+ const elRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ var _a;
+ return unrefElement(target) || ((_a = window == null ? void 0 : window.document) == null ? void 0 : _a.documentElement);
+ });
+ function updateCssVar() {
+ var _a;
+ const key = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(prop);
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(elRef);
+ if (el && window) {
+ const value = (_a = window.getComputedStyle(el).getPropertyValue(key)) == null ? void 0 : _a.trim();
+ variable.value = value || initialValue;
+ }
+ }
+ if (observe) {
+ useMutationObserver(elRef, updateCssVar, {
+ attributeFilter: ["style", "class"],
+ window
+ });
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ [elRef, () => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(prop)],
+ updateCssVar,
+ { immediate: true }
+ );
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ variable,
+ (val) => {
+ var _a;
+ if ((_a = elRef.value) == null ? void 0 : _a.style)
+ elRef.value.style.setProperty((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(prop), val);
+ }
+ );
+ return variable;
+}
+
+function useCurrentElement() {
+ const vm = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.getCurrentInstance)();
+ const currentElement = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.computedWithControl)(
+ () => null,
+ () => vm.proxy.$el
+ );
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.onUpdated)(currentElement.trigger);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.onMounted)(currentElement.trigger);
+ return currentElement;
+}
+
+function useCycleList(list, options) {
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(getInitialValue());
+ const listRef = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(list);
+ const index = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ var _a;
+ const targetList = listRef.value;
+ let index2 = (options == null ? void 0 : options.getIndexOf) ? options.getIndexOf(state.value, targetList) : targetList.indexOf(state.value);
+ if (index2 < 0)
+ index2 = (_a = options == null ? void 0 : options.fallbackIndex) != null ? _a : 0;
+ return index2;
+ },
+ set(v) {
+ set(v);
+ }
+ });
+ function set(i) {
+ const targetList = listRef.value;
+ const length = targetList.length;
+ const index2 = (i % length + length) % length;
+ const value = targetList[index2];
+ state.value = value;
+ return value;
+ }
+ function shift(delta = 1) {
+ return set(index.value + delta);
+ }
+ function next(n = 1) {
+ return shift(n);
+ }
+ function prev(n = 1) {
+ return shift(-n);
+ }
+ function getInitialValue() {
+ var _a, _b;
+ return (_b = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)((_a = options == null ? void 0 : options.initialValue) != null ? _a : (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(list)[0])) != null ? _b : void 0;
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(listRef, () => set(index.value));
+ return {
+ state,
+ index,
+ next,
+ prev
+ };
+}
+
+var __defProp$j = Object.defineProperty;
+var __defProps$9 = Object.defineProperties;
+var __getOwnPropDescs$9 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$l = Object.getOwnPropertySymbols;
+var __hasOwnProp$l = Object.prototype.hasOwnProperty;
+var __propIsEnum$l = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$j = (obj, key, value) => key in obj ? __defProp$j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$j = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$l.call(b, prop))
+ __defNormalProp$j(a, prop, b[prop]);
+ if (__getOwnPropSymbols$l)
+ for (var prop of __getOwnPropSymbols$l(b)) {
+ if (__propIsEnum$l.call(b, prop))
+ __defNormalProp$j(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$9 = (a, b) => __defProps$9(a, __getOwnPropDescs$9(b));
+function useDark(options = {}) {
+ const {
+ valueDark = "dark",
+ valueLight = ""
+ } = options;
+ const mode = useColorMode(__spreadProps$9(__spreadValues$j({}, options), {
+ onChanged: (mode2, defaultHandler) => {
+ var _a;
+ if (options.onChanged)
+ (_a = options.onChanged) == null ? void 0 : _a.call(options, mode2 === "dark", defaultHandler, mode2);
+ else
+ defaultHandler(mode2);
+ },
+ modes: {
+ dark: valueDark,
+ light: valueLight
+ }
+ }));
+ const isDark = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return mode.value === "dark";
+ },
+ set(v) {
+ const modeVal = v ? "dark" : "light";
+ if (mode.system.value === modeVal)
+ mode.value = "auto";
+ else
+ mode.value = modeVal;
+ }
+ });
+ return isDark;
+}
+
+function fnBypass(v) {
+ return v;
+}
+function fnSetSource(source, value) {
+ return source.value = value;
+}
+function defaultDump(clone) {
+ return clone ? typeof clone === "function" ? clone : cloneFnJSON : fnBypass;
+}
+function defaultParse(clone) {
+ return clone ? typeof clone === "function" ? clone : cloneFnJSON : fnBypass;
+}
+function useManualRefHistory(source, options = {}) {
+ const {
+ clone = false,
+ dump = defaultDump(clone),
+ parse = defaultParse(clone),
+ setSource = fnSetSource
+ } = options;
+ function _createHistoryRecord() {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.markRaw)({
+ snapshot: dump(source.value),
+ timestamp: (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.timestamp)()
+ });
+ }
+ const last = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(_createHistoryRecord());
+ const undoStack = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)([]);
+ const redoStack = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)([]);
+ const _setSource = (record) => {
+ setSource(source, parse(record.snapshot));
+ last.value = record;
+ };
+ const commit = () => {
+ undoStack.value.unshift(last.value);
+ last.value = _createHistoryRecord();
+ if (options.capacity && undoStack.value.length > options.capacity)
+ undoStack.value.splice(options.capacity, Number.POSITIVE_INFINITY);
+ if (redoStack.value.length)
+ redoStack.value.splice(0, redoStack.value.length);
+ };
+ const clear = () => {
+ undoStack.value.splice(0, undoStack.value.length);
+ redoStack.value.splice(0, redoStack.value.length);
+ };
+ const undo = () => {
+ const state = undoStack.value.shift();
+ if (state) {
+ redoStack.value.unshift(last.value);
+ _setSource(state);
+ }
+ };
+ const redo = () => {
+ const state = redoStack.value.shift();
+ if (state) {
+ undoStack.value.unshift(last.value);
+ _setSource(state);
+ }
+ };
+ const reset = () => {
+ _setSource(last.value);
+ };
+ const history = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => [last.value, ...undoStack.value]);
+ const canUndo = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => undoStack.value.length > 0);
+ const canRedo = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => redoStack.value.length > 0);
+ return {
+ source,
+ undoStack,
+ redoStack,
+ last,
+ history,
+ canUndo,
+ canRedo,
+ clear,
+ commit,
+ reset,
+ undo,
+ redo
+ };
+}
+
+var __defProp$i = Object.defineProperty;
+var __defProps$8 = Object.defineProperties;
+var __getOwnPropDescs$8 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$k = Object.getOwnPropertySymbols;
+var __hasOwnProp$k = Object.prototype.hasOwnProperty;
+var __propIsEnum$k = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$i = (obj, key, value) => key in obj ? __defProp$i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$i = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$k.call(b, prop))
+ __defNormalProp$i(a, prop, b[prop]);
+ if (__getOwnPropSymbols$k)
+ for (var prop of __getOwnPropSymbols$k(b)) {
+ if (__propIsEnum$k.call(b, prop))
+ __defNormalProp$i(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$8 = (a, b) => __defProps$8(a, __getOwnPropDescs$8(b));
+function useRefHistory(source, options = {}) {
+ const {
+ deep = false,
+ flush = "pre",
+ eventFilter
+ } = options;
+ const {
+ eventFilter: composedFilter,
+ pause,
+ resume: resumeTracking,
+ isActive: isTracking
+ } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.pausableFilter)(eventFilter);
+ const {
+ ignoreUpdates,
+ ignorePrevAsyncUpdates,
+ stop
+ } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchIgnorable)(
+ source,
+ commit,
+ { deep, flush, eventFilter: composedFilter }
+ );
+ function setSource(source2, value) {
+ ignorePrevAsyncUpdates();
+ ignoreUpdates(() => {
+ source2.value = value;
+ });
+ }
+ const manualHistory = useManualRefHistory(source, __spreadProps$8(__spreadValues$i({}, options), { clone: options.clone || deep, setSource }));
+ const { clear, commit: manualCommit } = manualHistory;
+ function commit() {
+ ignorePrevAsyncUpdates();
+ manualCommit();
+ }
+ function resume(commitNow) {
+ resumeTracking();
+ if (commitNow)
+ commit();
+ }
+ function batch(fn) {
+ let canceled = false;
+ const cancel = () => canceled = true;
+ ignoreUpdates(() => {
+ fn(cancel);
+ });
+ if (!canceled)
+ commit();
+ }
+ function dispose() {
+ stop();
+ clear();
+ }
+ return __spreadProps$8(__spreadValues$i({}, manualHistory), {
+ isTracking,
+ pause,
+ resume,
+ commit,
+ batch,
+ dispose
+ });
+}
+
+var __defProp$h = Object.defineProperty;
+var __defProps$7 = Object.defineProperties;
+var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$j = Object.getOwnPropertySymbols;
+var __hasOwnProp$j = Object.prototype.hasOwnProperty;
+var __propIsEnum$j = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$h = (obj, key, value) => key in obj ? __defProp$h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$h = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$j.call(b, prop))
+ __defNormalProp$h(a, prop, b[prop]);
+ if (__getOwnPropSymbols$j)
+ for (var prop of __getOwnPropSymbols$j(b)) {
+ if (__propIsEnum$j.call(b, prop))
+ __defNormalProp$h(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$7 = (a, b) => __defProps$7(a, __getOwnPropDescs$7(b));
+function useDebouncedRefHistory(source, options = {}) {
+ const filter = options.debounce ? (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.debounceFilter)(options.debounce) : void 0;
+ const history = useRefHistory(source, __spreadProps$7(__spreadValues$h({}, options), { eventFilter: filter }));
+ return __spreadValues$h({}, history);
+}
+
+function useDeviceMotion(options = {}) {
+ const {
+ window = defaultWindow,
+ eventFilter = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.bypassFilter
+ } = options;
+ const acceleration = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)({ x: null, y: null, z: null });
+ const rotationRate = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)({ alpha: null, beta: null, gamma: null });
+ const interval = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const accelerationIncludingGravity = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)({
+ x: null,
+ y: null,
+ z: null
+ });
+ if (window) {
+ const onDeviceMotion = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createFilterWrapper)(
+ eventFilter,
+ (event) => {
+ acceleration.value = event.acceleration;
+ accelerationIncludingGravity.value = event.accelerationIncludingGravity;
+ rotationRate.value = event.rotationRate;
+ interval.value = event.interval;
+ }
+ );
+ useEventListener(window, "devicemotion", onDeviceMotion);
+ }
+ return {
+ acceleration,
+ accelerationIncludingGravity,
+ rotationRate,
+ interval
+ };
+}
+
+function useDeviceOrientation(options = {}) {
+ const { window = defaultWindow } = options;
+ const isSupported = useSupported(() => window && "DeviceOrientationEvent" in window);
+ const isAbsolute = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const alpha = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const beta = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const gamma = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ if (window && isSupported.value) {
+ useEventListener(window, "deviceorientation", (event) => {
+ isAbsolute.value = event.absolute;
+ alpha.value = event.alpha;
+ beta.value = event.beta;
+ gamma.value = event.gamma;
+ });
+ }
+ return {
+ isSupported,
+ isAbsolute,
+ alpha,
+ beta,
+ gamma
+ };
+}
+
+function useDevicePixelRatio({
+ window = defaultWindow
+} = {}) {
+ const pixelRatio = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(1);
+ if (window) {
+ let observe = function() {
+ pixelRatio.value = window.devicePixelRatio;
+ cleanup();
+ media = window.matchMedia(`(resolution: ${pixelRatio.value}dppx)`);
+ media.addEventListener("change", observe, { once: true });
+ }, cleanup = function() {
+ media == null ? void 0 : media.removeEventListener("change", observe);
+ };
+ let media;
+ observe();
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(cleanup);
+ }
+ return { pixelRatio };
+}
+
+function usePermission(permissionDesc, options = {}) {
+ const {
+ controls = false,
+ navigator = defaultNavigator
+ } = options;
+ const isSupported = useSupported(() => navigator && "permissions" in navigator);
+ let permissionStatus;
+ const desc = typeof permissionDesc === "string" ? { name: permissionDesc } : permissionDesc;
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const onChange = () => {
+ if (permissionStatus)
+ state.value = permissionStatus.state;
+ };
+ const query = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createSingletonPromise)(async () => {
+ if (!isSupported.value)
+ return;
+ if (!permissionStatus) {
+ try {
+ permissionStatus = await navigator.permissions.query(desc);
+ useEventListener(permissionStatus, "change", onChange);
+ onChange();
+ } catch (e) {
+ state.value = "prompt";
+ }
+ }
+ return permissionStatus;
+ });
+ query();
+ if (controls) {
+ return {
+ state,
+ isSupported,
+ query
+ };
+ } else {
+ return state;
+ }
+}
+
+function useDevicesList(options = {}) {
+ const {
+ navigator = defaultNavigator,
+ requestPermissions = false,
+ constraints = { audio: true, video: true },
+ onUpdated
+ } = options;
+ const devices = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)([]);
+ const videoInputs = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => devices.value.filter((i) => i.kind === "videoinput"));
+ const audioInputs = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => devices.value.filter((i) => i.kind === "audioinput"));
+ const audioOutputs = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => devices.value.filter((i) => i.kind === "audiooutput"));
+ const isSupported = useSupported(() => navigator && navigator.mediaDevices && navigator.mediaDevices.enumerateDevices);
+ const permissionGranted = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ let stream;
+ async function update() {
+ if (!isSupported.value)
+ return;
+ devices.value = await navigator.mediaDevices.enumerateDevices();
+ onUpdated == null ? void 0 : onUpdated(devices.value);
+ if (stream) {
+ stream.getTracks().forEach((t) => t.stop());
+ stream = null;
+ }
+ }
+ async function ensurePermissions() {
+ if (!isSupported.value)
+ return false;
+ if (permissionGranted.value)
+ return true;
+ const { state, query } = usePermission("camera", { controls: true });
+ await query();
+ if (state.value !== "granted") {
+ stream = await navigator.mediaDevices.getUserMedia(constraints);
+ update();
+ permissionGranted.value = true;
+ } else {
+ permissionGranted.value = true;
+ }
+ return permissionGranted.value;
+ }
+ if (isSupported.value) {
+ if (requestPermissions)
+ ensurePermissions();
+ useEventListener(navigator.mediaDevices, "devicechange", update);
+ update();
+ }
+ return {
+ devices,
+ ensurePermissions,
+ permissionGranted,
+ videoInputs,
+ audioInputs,
+ audioOutputs,
+ isSupported
+ };
+}
+
+function useDisplayMedia(options = {}) {
+ var _a;
+ const enabled = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)((_a = options.enabled) != null ? _a : false);
+ const video = options.video;
+ const audio = options.audio;
+ const { navigator = defaultNavigator } = options;
+ const isSupported = useSupported(() => {
+ var _a2;
+ return (_a2 = navigator == null ? void 0 : navigator.mediaDevices) == null ? void 0 : _a2.getDisplayMedia;
+ });
+ const constraint = { audio, video };
+ const stream = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)();
+ async function _start() {
+ if (!isSupported.value || stream.value)
+ return;
+ stream.value = await navigator.mediaDevices.getDisplayMedia(constraint);
+ return stream.value;
+ }
+ async function _stop() {
+ var _a2;
+ (_a2 = stream.value) == null ? void 0 : _a2.getTracks().forEach((t) => t.stop());
+ stream.value = void 0;
+ }
+ function stop() {
+ _stop();
+ enabled.value = false;
+ }
+ async function start() {
+ await _start();
+ if (stream.value)
+ enabled.value = true;
+ return stream.value;
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ enabled,
+ (v) => {
+ if (v)
+ _start();
+ else
+ _stop();
+ },
+ { immediate: true }
+ );
+ return {
+ isSupported,
+ stream,
+ start,
+ stop,
+ enabled
+ };
+}
+
+function useDocumentVisibility({ document = defaultDocument } = {}) {
+ if (!document)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("visible");
+ const visibility = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(document.visibilityState);
+ useEventListener(document, "visibilitychange", () => {
+ visibility.value = document.visibilityState;
+ });
+ return visibility;
+}
+
+var __defProp$g = Object.defineProperty;
+var __defProps$6 = Object.defineProperties;
+var __getOwnPropDescs$6 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$i = Object.getOwnPropertySymbols;
+var __hasOwnProp$i = Object.prototype.hasOwnProperty;
+var __propIsEnum$i = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$g = (obj, key, value) => key in obj ? __defProp$g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$g = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$i.call(b, prop))
+ __defNormalProp$g(a, prop, b[prop]);
+ if (__getOwnPropSymbols$i)
+ for (var prop of __getOwnPropSymbols$i(b)) {
+ if (__propIsEnum$i.call(b, prop))
+ __defNormalProp$g(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$6 = (a, b) => __defProps$6(a, __getOwnPropDescs$6(b));
+function useDraggable(target, options = {}) {
+ var _a, _b;
+ const {
+ pointerTypes,
+ preventDefault,
+ stopPropagation,
+ exact,
+ onMove,
+ onEnd,
+ onStart,
+ initialValue,
+ axis = "both",
+ draggingElement = defaultWindow,
+ handle: draggingHandle = target
+ } = options;
+ const position = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(
+ (_a = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(initialValue)) != null ? _a : { x: 0, y: 0 }
+ );
+ const pressedDelta = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const filterEvent = (e) => {
+ if (pointerTypes)
+ return pointerTypes.includes(e.pointerType);
+ return true;
+ };
+ const handleEvent = (e) => {
+ if ((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(preventDefault))
+ e.preventDefault();
+ if ((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(stopPropagation))
+ e.stopPropagation();
+ };
+ const start = (e) => {
+ if (!filterEvent(e))
+ return;
+ if ((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(exact) && e.target !== (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target))
+ return;
+ const rect = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target).getBoundingClientRect();
+ const pos = {
+ x: e.clientX - rect.left,
+ y: e.clientY - rect.top
+ };
+ if ((onStart == null ? void 0 : onStart(pos, e)) === false)
+ return;
+ pressedDelta.value = pos;
+ handleEvent(e);
+ };
+ const move = (e) => {
+ if (!filterEvent(e))
+ return;
+ if (!pressedDelta.value)
+ return;
+ let { x, y } = position.value;
+ if (axis === "x" || axis === "both")
+ x = e.clientX - pressedDelta.value.x;
+ if (axis === "y" || axis === "both")
+ y = e.clientY - pressedDelta.value.y;
+ position.value = {
+ x,
+ y
+ };
+ onMove == null ? void 0 : onMove(position.value, e);
+ handleEvent(e);
+ };
+ const end = (e) => {
+ if (!filterEvent(e))
+ return;
+ if (!pressedDelta.value)
+ return;
+ pressedDelta.value = void 0;
+ onEnd == null ? void 0 : onEnd(position.value, e);
+ handleEvent(e);
+ };
+ if (_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isClient) {
+ const config = { capture: (_b = options.capture) != null ? _b : true };
+ useEventListener(draggingHandle, "pointerdown", start, config);
+ useEventListener(draggingElement, "pointermove", move, config);
+ useEventListener(draggingElement, "pointerup", end, config);
+ }
+ return __spreadProps$6(__spreadValues$g({}, (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRefs)(position)), {
+ position,
+ isDragging: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => !!pressedDelta.value),
+ style: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(
+ () => `left:${position.value.x}px;top:${position.value.y}px;`
+ )
+ });
+}
+
+function useDropZone(target, options = {}) {
+ const isOverDropZone = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const files = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(null);
+ let counter = 0;
+ if (_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isClient) {
+ const _options = typeof options === "function" ? { onDrop: options } : options;
+ const getFiles = (event) => {
+ var _a, _b;
+ const list = Array.from((_b = (_a = event.dataTransfer) == null ? void 0 : _a.files) != null ? _b : []);
+ return files.value = list.length === 0 ? null : list;
+ };
+ useEventListener(target, "dragenter", (event) => {
+ var _a;
+ event.preventDefault();
+ counter += 1;
+ isOverDropZone.value = true;
+ (_a = _options.onEnter) == null ? void 0 : _a.call(_options, getFiles(event), event);
+ });
+ useEventListener(target, "dragover", (event) => {
+ var _a;
+ event.preventDefault();
+ (_a = _options.onOver) == null ? void 0 : _a.call(_options, getFiles(event), event);
+ });
+ useEventListener(target, "dragleave", (event) => {
+ var _a;
+ event.preventDefault();
+ counter -= 1;
+ if (counter === 0)
+ isOverDropZone.value = false;
+ (_a = _options.onLeave) == null ? void 0 : _a.call(_options, getFiles(event), event);
+ });
+ useEventListener(target, "drop", (event) => {
+ var _a;
+ event.preventDefault();
+ counter = 0;
+ isOverDropZone.value = false;
+ (_a = _options.onDrop) == null ? void 0 : _a.call(_options, getFiles(event), event);
+ });
+ }
+ return {
+ files,
+ isOverDropZone
+ };
+}
+
+var __getOwnPropSymbols$h = Object.getOwnPropertySymbols;
+var __hasOwnProp$h = Object.prototype.hasOwnProperty;
+var __propIsEnum$h = Object.prototype.propertyIsEnumerable;
+var __objRest$2 = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$h.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$h)
+ for (var prop of __getOwnPropSymbols$h(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$h.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function useResizeObserver(target, callback, options = {}) {
+ const _a = options, { window = defaultWindow } = _a, observerOptions = __objRest$2(_a, ["window"]);
+ let observer;
+ const isSupported = useSupported(() => window && "ResizeObserver" in window);
+ const cleanup = () => {
+ if (observer) {
+ observer.disconnect();
+ observer = void 0;
+ }
+ };
+ const targets = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(
+ () => Array.isArray(target) ? target.map((el) => unrefElement(el)) : [unrefElement(target)]
+ );
+ const stopWatch = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ targets,
+ (els) => {
+ cleanup();
+ if (isSupported.value && window) {
+ observer = new ResizeObserver(callback);
+ for (const _el of els)
+ _el && observer.observe(_el, observerOptions);
+ }
+ },
+ { immediate: true, flush: "post", deep: true }
+ );
+ const stop = () => {
+ cleanup();
+ stopWatch();
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(stop);
+ return {
+ isSupported,
+ stop
+ };
+}
+
+function useElementBounding(target, options = {}) {
+ const {
+ reset = true,
+ windowResize = true,
+ windowScroll = true,
+ immediate = true
+ } = options;
+ const height = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const bottom = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const left = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const right = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const top = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const width = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const x = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const y = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ function update() {
+ const el = unrefElement(target);
+ if (!el) {
+ if (reset) {
+ height.value = 0;
+ bottom.value = 0;
+ left.value = 0;
+ right.value = 0;
+ top.value = 0;
+ width.value = 0;
+ x.value = 0;
+ y.value = 0;
+ }
+ return;
+ }
+ const rect = el.getBoundingClientRect();
+ height.value = rect.height;
+ bottom.value = rect.bottom;
+ left.value = rect.left;
+ right.value = rect.right;
+ top.value = rect.top;
+ width.value = rect.width;
+ x.value = rect.x;
+ y.value = rect.y;
+ }
+ useResizeObserver(target, update);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(() => unrefElement(target), (ele) => !ele && update());
+ if (windowScroll)
+ useEventListener("scroll", update, { capture: true, passive: true });
+ if (windowResize)
+ useEventListener("resize", update, { passive: true });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(() => {
+ if (immediate)
+ update();
+ });
+ return {
+ height,
+ bottom,
+ left,
+ right,
+ top,
+ width,
+ x,
+ y,
+ update
+ };
+}
+
+var __defProp$f = Object.defineProperty;
+var __getOwnPropSymbols$g = Object.getOwnPropertySymbols;
+var __hasOwnProp$g = Object.prototype.hasOwnProperty;
+var __propIsEnum$g = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$f = (obj, key, value) => key in obj ? __defProp$f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$f = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$g.call(b, prop))
+ __defNormalProp$f(a, prop, b[prop]);
+ if (__getOwnPropSymbols$g)
+ for (var prop of __getOwnPropSymbols$g(b)) {
+ if (__propIsEnum$g.call(b, prop))
+ __defNormalProp$f(a, prop, b[prop]);
+ }
+ return a;
+};
+function useElementByPoint(options) {
+ const {
+ x,
+ y,
+ document = defaultDocument,
+ multiple,
+ interval = "requestAnimationFrame",
+ immediate = true
+ } = options;
+ const isSupported = useSupported(() => {
+ if ((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(multiple))
+ return document && "elementsFromPoint" in document;
+ return document && "elementFromPoint" in document;
+ });
+ const element = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const cb = () => {
+ var _a, _b;
+ element.value = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(multiple) ? (_a = document == null ? void 0 : document.elementsFromPoint((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(x), (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(y))) != null ? _a : [] : (_b = document == null ? void 0 : document.elementFromPoint((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(x), (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(y))) != null ? _b : null;
+ };
+ const controls = interval === "requestAnimationFrame" ? useRafFn(cb, { immediate }) : (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useIntervalFn)(cb, interval, { immediate });
+ return __spreadValues$f({
+ isSupported,
+ element
+ }, controls);
+}
+
+function useElementHover(el, options = {}) {
+ const {
+ delayEnter = 0,
+ delayLeave = 0,
+ window = defaultWindow
+ } = options;
+ const isHovered = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ let timer;
+ const toggle = (entering) => {
+ const delay = entering ? delayEnter : delayLeave;
+ if (timer) {
+ clearTimeout(timer);
+ timer = void 0;
+ }
+ if (delay)
+ timer = setTimeout(() => isHovered.value = entering, delay);
+ else
+ isHovered.value = entering;
+ };
+ if (!window)
+ return isHovered;
+ useEventListener(el, "mouseenter", () => toggle(true), { passive: true });
+ useEventListener(el, "mouseleave", () => toggle(false), { passive: true });
+ return isHovered;
+}
+
+function useElementSize(target, initialSize = { width: 0, height: 0 }, options = {}) {
+ const { window = defaultWindow, box = "content-box" } = options;
+ const isSVG = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ var _a, _b;
+ return (_b = (_a = unrefElement(target)) == null ? void 0 : _a.namespaceURI) == null ? void 0 : _b.includes("svg");
+ });
+ const width = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialSize.width);
+ const height = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialSize.height);
+ useResizeObserver(
+ target,
+ ([entry]) => {
+ const boxSize = box === "border-box" ? entry.borderBoxSize : box === "content-box" ? entry.contentBoxSize : entry.devicePixelContentBoxSize;
+ if (window && isSVG.value) {
+ const $elem = unrefElement(target);
+ if ($elem) {
+ const styles = window.getComputedStyle($elem);
+ width.value = Number.parseFloat(styles.width);
+ height.value = Number.parseFloat(styles.height);
+ }
+ } else {
+ if (boxSize) {
+ const formatBoxSize = Array.isArray(boxSize) ? boxSize : [boxSize];
+ width.value = formatBoxSize.reduce((acc, { inlineSize }) => acc + inlineSize, 0);
+ height.value = formatBoxSize.reduce((acc, { blockSize }) => acc + blockSize, 0);
+ } else {
+ width.value = entry.contentRect.width;
+ height.value = entry.contentRect.height;
+ }
+ }
+ },
+ options
+ );
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ () => unrefElement(target),
+ (ele) => {
+ width.value = ele ? initialSize.width : 0;
+ height.value = ele ? initialSize.height : 0;
+ }
+ );
+ return {
+ width,
+ height
+ };
+}
+
+function useIntersectionObserver(target, callback, options = {}) {
+ const {
+ root,
+ rootMargin = "0px",
+ threshold = 0.1,
+ window = defaultWindow,
+ immediate = true
+ } = options;
+ const isSupported = useSupported(() => window && "IntersectionObserver" in window);
+ const targets = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ const _target = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ return (Array.isArray(_target) ? _target : [_target]).map(unrefElement).filter(_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.notNullish);
+ });
+ let cleanup = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop;
+ const isActive = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(immediate);
+ const stopWatch = isSupported.value ? (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ () => [targets.value, unrefElement(root), isActive.value],
+ ([targets2, root2]) => {
+ cleanup();
+ if (!isActive.value)
+ return;
+ if (!targets2.length)
+ return;
+ const observer = new IntersectionObserver(
+ callback,
+ {
+ root: unrefElement(root2),
+ rootMargin,
+ threshold
+ }
+ );
+ targets2.forEach((el) => el && observer.observe(el));
+ cleanup = () => {
+ observer.disconnect();
+ cleanup = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop;
+ };
+ },
+ { immediate, flush: "post" }
+ ) : _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop;
+ const stop = () => {
+ cleanup();
+ stopWatch();
+ isActive.value = false;
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(stop);
+ return {
+ isSupported,
+ isActive,
+ pause() {
+ cleanup();
+ isActive.value = false;
+ },
+ resume() {
+ isActive.value = true;
+ },
+ stop
+ };
+}
+
+function useElementVisibility(element, { window = defaultWindow, scrollTarget } = {}) {
+ const elementIsVisible = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ useIntersectionObserver(
+ element,
+ ([{ isIntersecting }]) => {
+ elementIsVisible.value = isIntersecting;
+ },
+ {
+ root: scrollTarget,
+ window
+ }
+ );
+ return elementIsVisible;
+}
+
+const events = /* @__PURE__ */ new Map();
+
+function useEventBus(key) {
+ const scope = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.getCurrentScope)();
+ function on(listener) {
+ var _a;
+ const listeners = events.get(key) || /* @__PURE__ */ new Set();
+ listeners.add(listener);
+ events.set(key, listeners);
+ const _off = () => off(listener);
+ (_a = scope == null ? void 0 : scope.cleanups) == null ? void 0 : _a.push(_off);
+ return _off;
+ }
+ function once(listener) {
+ function _listener(...args) {
+ off(_listener);
+ listener(...args);
+ }
+ return on(_listener);
+ }
+ function off(listener) {
+ const listeners = events.get(key);
+ if (!listeners)
+ return;
+ listeners.delete(listener);
+ if (!listeners.size)
+ reset();
+ }
+ function reset() {
+ events.delete(key);
+ }
+ function emit(event, payload) {
+ var _a;
+ (_a = events.get(key)) == null ? void 0 : _a.forEach((v) => v(event, payload));
+ }
+ return { on, once, off, emit, reset };
+}
+
+function useEventSource(url, events = [], options = {}) {
+ const event = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const status = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("CONNECTING");
+ const eventSource = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const error = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(null);
+ const {
+ withCredentials = false
+ } = options;
+ const close = () => {
+ if (eventSource.value) {
+ eventSource.value.close();
+ eventSource.value = null;
+ status.value = "CLOSED";
+ }
+ };
+ const es = new EventSource(url, { withCredentials });
+ eventSource.value = es;
+ es.onopen = () => {
+ status.value = "OPEN";
+ error.value = null;
+ };
+ es.onerror = (e) => {
+ status.value = "CLOSED";
+ error.value = e;
+ };
+ es.onmessage = (e) => {
+ event.value = null;
+ data.value = e.data;
+ };
+ for (const event_name of events) {
+ useEventListener(es, event_name, (e) => {
+ event.value = event_name;
+ data.value = e.data || null;
+ });
+ }
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => {
+ close();
+ });
+ return {
+ eventSource,
+ event,
+ data,
+ status,
+ error,
+ close
+ };
+}
+
+function useEyeDropper(options = {}) {
+ const { initialValue = "" } = options;
+ const isSupported = useSupported(() => typeof window !== "undefined" && "EyeDropper" in window);
+ const sRGBHex = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialValue);
+ async function open(openOptions) {
+ if (!isSupported.value)
+ return;
+ const eyeDropper = new window.EyeDropper();
+ const result = await eyeDropper.open(openOptions);
+ sRGBHex.value = result.sRGBHex;
+ return result;
+ }
+ return { isSupported, sRGBHex, open };
+}
+
+function useFavicon(newIcon = null, options = {}) {
+ const {
+ baseUrl = "",
+ rel = "icon",
+ document = defaultDocument
+ } = options;
+ const favicon = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(newIcon);
+ const applyIcon = (icon) => {
+ document == null ? void 0 : document.head.querySelectorAll(`link[rel*="${rel}"]`).forEach((el) => el.href = `${baseUrl}${icon}`);
+ };
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ favicon,
+ (i, o) => {
+ if (typeof i === "string" && i !== o)
+ applyIcon(i);
+ },
+ { immediate: true }
+ );
+ return favicon;
+}
+
+var __defProp$e = Object.defineProperty;
+var __defProps$5 = Object.defineProperties;
+var __getOwnPropDescs$5 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$f = Object.getOwnPropertySymbols;
+var __hasOwnProp$f = Object.prototype.hasOwnProperty;
+var __propIsEnum$f = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$e = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$f.call(b, prop))
+ __defNormalProp$e(a, prop, b[prop]);
+ if (__getOwnPropSymbols$f)
+ for (var prop of __getOwnPropSymbols$f(b)) {
+ if (__propIsEnum$f.call(b, prop))
+ __defNormalProp$e(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$5 = (a, b) => __defProps$5(a, __getOwnPropDescs$5(b));
+const payloadMapping = {
+ json: "application/json",
+ text: "text/plain"
+};
+function isFetchOptions(obj) {
+ return obj && (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.containsProp)(obj, "immediate", "refetch", "initialData", "timeout", "beforeFetch", "afterFetch", "onFetchError", "fetch");
+}
+function isAbsoluteURL(url) {
+ return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url);
+}
+function headersToObject(headers) {
+ if (typeof Headers !== "undefined" && headers instanceof Headers)
+ return Object.fromEntries([...headers.entries()]);
+ return headers;
+}
+function combineCallbacks(combination, ...callbacks) {
+ if (combination === "overwrite") {
+ return async (ctx) => {
+ const callback = callbacks[callbacks.length - 1];
+ if (callback)
+ return __spreadValues$e(__spreadValues$e({}, ctx), await callback(ctx));
+ return ctx;
+ };
+ } else {
+ return async (ctx) => {
+ for (const callback of callbacks) {
+ if (callback)
+ ctx = __spreadValues$e(__spreadValues$e({}, ctx), await callback(ctx));
+ }
+ return ctx;
+ };
+ }
+}
+function createFetch(config = {}) {
+ const _combination = config.combination || "chain";
+ const _options = config.options || {};
+ const _fetchOptions = config.fetchOptions || {};
+ function useFactoryFetch(url, ...args) {
+ const computedUrl = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ const baseUrl = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(config.baseUrl);
+ const targetUrl = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(url);
+ return baseUrl && !isAbsoluteURL(targetUrl) ? joinPaths(baseUrl, targetUrl) : targetUrl;
+ });
+ let options = _options;
+ let fetchOptions = _fetchOptions;
+ if (args.length > 0) {
+ if (isFetchOptions(args[0])) {
+ options = __spreadProps$5(__spreadValues$e(__spreadValues$e({}, options), args[0]), {
+ beforeFetch: combineCallbacks(_combination, _options.beforeFetch, args[0].beforeFetch),
+ afterFetch: combineCallbacks(_combination, _options.afterFetch, args[0].afterFetch),
+ onFetchError: combineCallbacks(_combination, _options.onFetchError, args[0].onFetchError)
+ });
+ } else {
+ fetchOptions = __spreadProps$5(__spreadValues$e(__spreadValues$e({}, fetchOptions), args[0]), {
+ headers: __spreadValues$e(__spreadValues$e({}, headersToObject(fetchOptions.headers) || {}), headersToObject(args[0].headers) || {})
+ });
+ }
+ }
+ if (args.length > 1 && isFetchOptions(args[1])) {
+ options = __spreadProps$5(__spreadValues$e(__spreadValues$e({}, options), args[1]), {
+ beforeFetch: combineCallbacks(_combination, _options.beforeFetch, args[1].beforeFetch),
+ afterFetch: combineCallbacks(_combination, _options.afterFetch, args[1].afterFetch),
+ onFetchError: combineCallbacks(_combination, _options.onFetchError, args[1].onFetchError)
+ });
+ }
+ return useFetch(computedUrl, fetchOptions, options);
+ }
+ return useFactoryFetch;
+}
+function useFetch(url, ...args) {
+ var _a;
+ const supportsAbort = typeof AbortController === "function";
+ let fetchOptions = {};
+ let options = { immediate: true, refetch: false, timeout: 0 };
+ const config = {
+ method: "GET",
+ type: "text",
+ payload: void 0
+ };
+ if (args.length > 0) {
+ if (isFetchOptions(args[0]))
+ options = __spreadValues$e(__spreadValues$e({}, options), args[0]);
+ else
+ fetchOptions = args[0];
+ }
+ if (args.length > 1) {
+ if (isFetchOptions(args[1]))
+ options = __spreadValues$e(__spreadValues$e({}, options), args[1]);
+ }
+ const {
+ fetch = (_a = defaultWindow) == null ? void 0 : _a.fetch,
+ initialData,
+ timeout
+ } = options;
+ const responseEvent = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const errorEvent = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const finallyEvent = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const isFinished = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const isFetching = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const aborted = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const statusCode = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const response = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(null);
+ const error = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(null);
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(initialData || null);
+ const canAbort = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => supportsAbort && isFetching.value);
+ let controller;
+ let timer;
+ const abort = () => {
+ if (supportsAbort) {
+ controller == null ? void 0 : controller.abort();
+ controller = new AbortController();
+ controller.signal.onabort = () => aborted.value = true;
+ fetchOptions = __spreadProps$5(__spreadValues$e({}, fetchOptions), {
+ signal: controller.signal
+ });
+ }
+ };
+ const loading = (isLoading) => {
+ isFetching.value = isLoading;
+ isFinished.value = !isLoading;
+ };
+ if (timeout)
+ timer = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useTimeoutFn)(abort, timeout, { immediate: false });
+ const execute = async (throwOnFailed = false) => {
+ var _a2;
+ abort();
+ loading(true);
+ error.value = null;
+ statusCode.value = null;
+ aborted.value = false;
+ const defaultFetchOptions = {
+ method: config.method,
+ headers: {}
+ };
+ if (config.payload) {
+ const headers = headersToObject(defaultFetchOptions.headers);
+ const payload = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(config.payload);
+ if (!config.payloadType && payload && Object.getPrototypeOf(payload) === Object.prototype && !(payload instanceof FormData))
+ config.payloadType = "json";
+ if (config.payloadType)
+ headers["Content-Type"] = (_a2 = payloadMapping[config.payloadType]) != null ? _a2 : config.payloadType;
+ defaultFetchOptions.body = config.payloadType === "json" ? JSON.stringify(payload) : payload;
+ }
+ let isCanceled = false;
+ const context = {
+ url: (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(url),
+ options: __spreadValues$e(__spreadValues$e({}, defaultFetchOptions), fetchOptions),
+ cancel: () => {
+ isCanceled = true;
+ }
+ };
+ if (options.beforeFetch)
+ Object.assign(context, await options.beforeFetch(context));
+ if (isCanceled || !fetch) {
+ loading(false);
+ return Promise.resolve(null);
+ }
+ let responseData = null;
+ if (timer)
+ timer.start();
+ return new Promise((resolve, reject) => {
+ var _a3;
+ fetch(
+ context.url,
+ __spreadProps$5(__spreadValues$e(__spreadValues$e({}, defaultFetchOptions), context.options), {
+ headers: __spreadValues$e(__spreadValues$e({}, headersToObject(defaultFetchOptions.headers)), headersToObject((_a3 = context.options) == null ? void 0 : _a3.headers))
+ })
+ ).then(async (fetchResponse) => {
+ response.value = fetchResponse;
+ statusCode.value = fetchResponse.status;
+ responseData = await fetchResponse[config.type]();
+ if (!fetchResponse.ok) {
+ data.value = initialData || null;
+ throw new Error(fetchResponse.statusText);
+ }
+ if (options.afterFetch)
+ ({ data: responseData } = await options.afterFetch({ data: responseData, response: fetchResponse }));
+ data.value = responseData;
+ responseEvent.trigger(fetchResponse);
+ return resolve(fetchResponse);
+ }).catch(async (fetchError) => {
+ let errorData = fetchError.message || fetchError.name;
+ if (options.onFetchError)
+ ({ error: errorData } = await options.onFetchError({ data: responseData, error: fetchError, response: response.value }));
+ error.value = errorData;
+ errorEvent.trigger(fetchError);
+ if (throwOnFailed)
+ return reject(fetchError);
+ return resolve(null);
+ }).finally(() => {
+ loading(false);
+ if (timer)
+ timer.stop();
+ finallyEvent.trigger(null);
+ });
+ });
+ };
+ const refetch = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(options.refetch);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ [
+ refetch,
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(url)
+ ],
+ ([refetch2]) => refetch2 && execute(),
+ { deep: true }
+ );
+ const shell = {
+ isFinished,
+ statusCode,
+ response,
+ error,
+ data,
+ isFetching,
+ canAbort,
+ aborted,
+ abort,
+ execute,
+ onFetchResponse: responseEvent.on,
+ onFetchError: errorEvent.on,
+ onFetchFinally: finallyEvent.on,
+ // method
+ get: setMethod("GET"),
+ put: setMethod("PUT"),
+ post: setMethod("POST"),
+ delete: setMethod("DELETE"),
+ patch: setMethod("PATCH"),
+ head: setMethod("HEAD"),
+ options: setMethod("OPTIONS"),
+ // type
+ json: setType("json"),
+ text: setType("text"),
+ blob: setType("blob"),
+ arrayBuffer: setType("arrayBuffer"),
+ formData: setType("formData")
+ };
+ function setMethod(method) {
+ return (payload, payloadType) => {
+ if (!isFetching.value) {
+ config.method = method;
+ config.payload = payload;
+ config.payloadType = payloadType;
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.isRef)(config.payload)) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ [
+ refetch,
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(config.payload)
+ ],
+ ([refetch2]) => refetch2 && execute(),
+ { deep: true }
+ );
+ }
+ return __spreadProps$5(__spreadValues$e({}, shell), {
+ then(onFulfilled, onRejected) {
+ return waitUntilFinished().then(onFulfilled, onRejected);
+ }
+ });
+ }
+ return void 0;
+ };
+ }
+ function waitUntilFinished() {
+ return new Promise((resolve, reject) => {
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.until)(isFinished).toBe(true).then(() => resolve(shell)).catch((error2) => reject(error2));
+ });
+ }
+ function setType(type) {
+ return () => {
+ if (!isFetching.value) {
+ config.type = type;
+ return __spreadProps$5(__spreadValues$e({}, shell), {
+ then(onFulfilled, onRejected) {
+ return waitUntilFinished().then(onFulfilled, onRejected);
+ }
+ });
+ }
+ return void 0;
+ };
+ }
+ if (options.immediate)
+ Promise.resolve().then(() => execute());
+ return __spreadProps$5(__spreadValues$e({}, shell), {
+ then(onFulfilled, onRejected) {
+ return waitUntilFinished().then(onFulfilled, onRejected);
+ }
+ });
+}
+function joinPaths(start, end) {
+ if (!start.endsWith("/") && !end.startsWith("/"))
+ return `${start}/${end}`;
+ return `${start}${end}`;
+}
+
+var __defProp$d = Object.defineProperty;
+var __getOwnPropSymbols$e = Object.getOwnPropertySymbols;
+var __hasOwnProp$e = Object.prototype.hasOwnProperty;
+var __propIsEnum$e = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$d = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$e.call(b, prop))
+ __defNormalProp$d(a, prop, b[prop]);
+ if (__getOwnPropSymbols$e)
+ for (var prop of __getOwnPropSymbols$e(b)) {
+ if (__propIsEnum$e.call(b, prop))
+ __defNormalProp$d(a, prop, b[prop]);
+ }
+ return a;
+};
+const DEFAULT_OPTIONS = {
+ multiple: true,
+ accept: "*",
+ reset: false
+};
+function useFileDialog(options = {}) {
+ const {
+ document = defaultDocument
+ } = options;
+ const files = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const { on: onChange, trigger } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ let input;
+ if (document) {
+ input = document.createElement("input");
+ input.type = "file";
+ input.onchange = (event) => {
+ const result = event.target;
+ files.value = result.files;
+ trigger(files.value);
+ };
+ }
+ const reset = () => {
+ files.value = null;
+ if (input)
+ input.value = "";
+ };
+ const open = (localOptions) => {
+ if (!input)
+ return;
+ const _options = __spreadValues$d(__spreadValues$d(__spreadValues$d({}, DEFAULT_OPTIONS), options), localOptions);
+ input.multiple = _options.multiple;
+ input.accept = _options.accept;
+ if ((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.hasOwn)(_options, "capture"))
+ input.capture = _options.capture;
+ if (_options.reset)
+ reset();
+ input.click();
+ };
+ return {
+ files: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.readonly)(files),
+ open,
+ reset,
+ onChange
+ };
+}
+
+var __defProp$c = Object.defineProperty;
+var __getOwnPropSymbols$d = Object.getOwnPropertySymbols;
+var __hasOwnProp$d = Object.prototype.hasOwnProperty;
+var __propIsEnum$d = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$c = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$d.call(b, prop))
+ __defNormalProp$c(a, prop, b[prop]);
+ if (__getOwnPropSymbols$d)
+ for (var prop of __getOwnPropSymbols$d(b)) {
+ if (__propIsEnum$d.call(b, prop))
+ __defNormalProp$c(a, prop, b[prop]);
+ }
+ return a;
+};
+function useFileSystemAccess(options = {}) {
+ const {
+ window: _window = defaultWindow,
+ dataType = "Text"
+ } = options;
+ const window = _window;
+ const isSupported = useSupported(() => window && "showSaveFilePicker" in window && "showOpenFilePicker" in window);
+ const fileHandle = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const file = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const fileName = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ var _a, _b;
+ return (_b = (_a = file.value) == null ? void 0 : _a.name) != null ? _b : "";
+ });
+ const fileMIME = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ var _a, _b;
+ return (_b = (_a = file.value) == null ? void 0 : _a.type) != null ? _b : "";
+ });
+ const fileSize = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ var _a, _b;
+ return (_b = (_a = file.value) == null ? void 0 : _a.size) != null ? _b : 0;
+ });
+ const fileLastModified = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ var _a, _b;
+ return (_b = (_a = file.value) == null ? void 0 : _a.lastModified) != null ? _b : 0;
+ });
+ async function open(_options = {}) {
+ if (!isSupported.value)
+ return;
+ const [handle] = await window.showOpenFilePicker(__spreadValues$c(__spreadValues$c({}, (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options)), _options));
+ fileHandle.value = handle;
+ await updateFile();
+ await updateData();
+ }
+ async function create(_options = {}) {
+ if (!isSupported.value)
+ return;
+ fileHandle.value = await window.showSaveFilePicker(__spreadValues$c(__spreadValues$c({}, options), _options));
+ data.value = void 0;
+ await updateFile();
+ await updateData();
+ }
+ async function save(_options = {}) {
+ if (!isSupported.value)
+ return;
+ if (!fileHandle.value)
+ return saveAs(_options);
+ if (data.value) {
+ const writableStream = await fileHandle.value.createWritable();
+ await writableStream.write(data.value);
+ await writableStream.close();
+ }
+ await updateFile();
+ }
+ async function saveAs(_options = {}) {
+ if (!isSupported.value)
+ return;
+ fileHandle.value = await window.showSaveFilePicker(__spreadValues$c(__spreadValues$c({}, options), _options));
+ if (data.value) {
+ const writableStream = await fileHandle.value.createWritable();
+ await writableStream.write(data.value);
+ await writableStream.close();
+ }
+ await updateFile();
+ }
+ async function updateFile() {
+ var _a;
+ file.value = await ((_a = fileHandle.value) == null ? void 0 : _a.getFile());
+ }
+ async function updateData() {
+ var _a, _b;
+ const type = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(dataType);
+ if (type === "Text")
+ data.value = await ((_a = file.value) == null ? void 0 : _a.text());
+ else if (type === "ArrayBuffer")
+ data.value = await ((_b = file.value) == null ? void 0 : _b.arrayBuffer());
+ else if (type === "Blob")
+ data.value = file.value;
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(() => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(dataType), updateData);
+ return {
+ isSupported,
+ data,
+ file,
+ fileName,
+ fileMIME,
+ fileSize,
+ fileLastModified,
+ open,
+ create,
+ save,
+ saveAs,
+ updateData
+ };
+}
+
+function useFocus(target, options = {}) {
+ const { initialValue = false, focusVisible = false } = options;
+ const innerFocused = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const targetElement = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => unrefElement(target));
+ useEventListener(targetElement, "focus", (event) => {
+ var _a, _b;
+ if (!focusVisible || ((_b = (_a = event.target).matches) == null ? void 0 : _b.call(_a, ":focus-visible")))
+ innerFocused.value = true;
+ });
+ useEventListener(targetElement, "blur", () => innerFocused.value = false);
+ const focused = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get: () => innerFocused.value,
+ set(value) {
+ var _a, _b;
+ if (!value && innerFocused.value)
+ (_a = targetElement.value) == null ? void 0 : _a.blur();
+ else if (value && !innerFocused.value)
+ (_b = targetElement.value) == null ? void 0 : _b.focus();
+ }
+ });
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ targetElement,
+ () => {
+ focused.value = initialValue;
+ },
+ { immediate: true, flush: "post" }
+ );
+ return { focused };
+}
+
+function useFocusWithin(target, options = {}) {
+ const activeElement = useActiveElement(options);
+ const targetElement = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => unrefElement(target));
+ const focused = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => targetElement.value && activeElement.value ? targetElement.value.contains(activeElement.value) : false);
+ return { focused };
+}
+
+function useFps(options) {
+ var _a;
+ const fps = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ if (typeof performance === "undefined")
+ return fps;
+ const every = (_a = options == null ? void 0 : options.every) != null ? _a : 10;
+ let last = performance.now();
+ let ticks = 0;
+ useRafFn(() => {
+ ticks += 1;
+ if (ticks >= every) {
+ const now = performance.now();
+ const diff = now - last;
+ fps.value = Math.round(1e3 / (diff / ticks));
+ last = now;
+ ticks = 0;
+ }
+ });
+ return fps;
+}
+
+const eventHandlers = [
+ "fullscreenchange",
+ "webkitfullscreenchange",
+ "webkitendfullscreen",
+ "mozfullscreenchange",
+ "MSFullscreenChange"
+];
+function useFullscreen(target, options = {}) {
+ const {
+ document = defaultDocument,
+ autoExit = false
+ } = options;
+ const targetRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ var _a;
+ return (_a = unrefElement(target)) != null ? _a : document == null ? void 0 : document.querySelector("html");
+ });
+ const isFullscreen = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const requestMethod = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ return [
+ "requestFullscreen",
+ "webkitRequestFullscreen",
+ "webkitEnterFullscreen",
+ "webkitEnterFullScreen",
+ "webkitRequestFullScreen",
+ "mozRequestFullScreen",
+ "msRequestFullscreen"
+ ].find((m) => document && m in document || targetRef.value && m in targetRef.value);
+ });
+ const exitMethod = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ return [
+ "exitFullscreen",
+ "webkitExitFullscreen",
+ "webkitExitFullScreen",
+ "webkitCancelFullScreen",
+ "mozCancelFullScreen",
+ "msExitFullscreen"
+ ].find((m) => document && m in document || targetRef.value && m in targetRef.value);
+ });
+ const fullscreenEnabled = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ return [
+ "fullScreen",
+ "webkitIsFullScreen",
+ "webkitDisplayingFullscreen",
+ "mozFullScreen",
+ "msFullscreenElement"
+ ].find((m) => document && m in document || targetRef.value && m in targetRef.value);
+ });
+ const fullscreenElementMethod = [
+ "fullscreenElement",
+ "webkitFullscreenElement",
+ "mozFullScreenElement",
+ "msFullscreenElement"
+ ].find((m) => document && m in document);
+ const isSupported = useSupported(
+ () => targetRef.value && document && requestMethod.value !== void 0 && exitMethod.value !== void 0 && fullscreenEnabled.value !== void 0
+ );
+ const isCurrentElementFullScreen = () => {
+ if (fullscreenElementMethod)
+ return (document == null ? void 0 : document[fullscreenElementMethod]) === targetRef.value;
+ return false;
+ };
+ const isElementFullScreen = () => {
+ if (fullscreenEnabled.value) {
+ if (document && document[fullscreenEnabled.value] != null) {
+ return document[fullscreenEnabled.value];
+ } else {
+ const target2 = targetRef.value;
+ if ((target2 == null ? void 0 : target2[fullscreenEnabled.value]) != null) {
+ return Boolean(target2[fullscreenEnabled.value]);
+ }
+ }
+ }
+ return false;
+ };
+ async function exit() {
+ if (!isSupported.value || !isFullscreen.value)
+ return;
+ if (exitMethod.value) {
+ if ((document == null ? void 0 : document[exitMethod.value]) != null) {
+ await document[exitMethod.value]();
+ } else {
+ const target2 = targetRef.value;
+ if ((target2 == null ? void 0 : target2[exitMethod.value]) != null)
+ await target2[exitMethod.value]();
+ }
+ }
+ isFullscreen.value = false;
+ }
+ async function enter() {
+ if (!isSupported.value || isFullscreen.value)
+ return;
+ if (isElementFullScreen())
+ await exit();
+ const target2 = targetRef.value;
+ if (requestMethod.value && (target2 == null ? void 0 : target2[requestMethod.value]) != null) {
+ await target2[requestMethod.value]();
+ isFullscreen.value = true;
+ }
+ }
+ async function toggle() {
+ await (isFullscreen.value ? exit() : enter());
+ }
+ const handlerCallback = () => {
+ const isElementFullScreenValue = isElementFullScreen();
+ if (!isElementFullScreenValue || isElementFullScreenValue && isCurrentElementFullScreen())
+ isFullscreen.value = isElementFullScreenValue;
+ };
+ useEventListener(document, eventHandlers, handlerCallback, false);
+ useEventListener(() => unrefElement(targetRef), eventHandlers, handlerCallback, false);
+ if (autoExit)
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(exit);
+ return {
+ isSupported,
+ isFullscreen,
+ enter,
+ exit,
+ toggle
+ };
+}
+
+var __defProp$b = Object.defineProperty;
+var __defProps$4 = Object.defineProperties;
+var __getOwnPropDescs$4 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$c = Object.getOwnPropertySymbols;
+var __hasOwnProp$c = Object.prototype.hasOwnProperty;
+var __propIsEnum$c = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$b = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$c.call(b, prop))
+ __defNormalProp$b(a, prop, b[prop]);
+ if (__getOwnPropSymbols$c)
+ for (var prop of __getOwnPropSymbols$c(b)) {
+ if (__propIsEnum$c.call(b, prop))
+ __defNormalProp$b(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$4 = (a, b) => __defProps$4(a, __getOwnPropDescs$4(b));
+function mapGamepadToXbox360Controller(gamepad) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ if (gamepad.value) {
+ return {
+ buttons: {
+ a: gamepad.value.buttons[0],
+ b: gamepad.value.buttons[1],
+ x: gamepad.value.buttons[2],
+ y: gamepad.value.buttons[3]
+ },
+ bumper: {
+ left: gamepad.value.buttons[4],
+ right: gamepad.value.buttons[5]
+ },
+ triggers: {
+ left: gamepad.value.buttons[6],
+ right: gamepad.value.buttons[7]
+ },
+ stick: {
+ left: {
+ horizontal: gamepad.value.axes[0],
+ vertical: gamepad.value.axes[1],
+ button: gamepad.value.buttons[10]
+ },
+ right: {
+ horizontal: gamepad.value.axes[2],
+ vertical: gamepad.value.axes[3],
+ button: gamepad.value.buttons[11]
+ }
+ },
+ dpad: {
+ up: gamepad.value.buttons[12],
+ down: gamepad.value.buttons[13],
+ left: gamepad.value.buttons[14],
+ right: gamepad.value.buttons[15]
+ },
+ back: gamepad.value.buttons[8],
+ start: gamepad.value.buttons[9]
+ };
+ }
+ return null;
+ });
+}
+function useGamepad(options = {}) {
+ const {
+ navigator = defaultNavigator
+ } = options;
+ const isSupported = useSupported(() => navigator && "getGamepads" in navigator);
+ const gamepads = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)([]);
+ const onConnectedHook = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const onDisconnectedHook = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const stateFromGamepad = (gamepad) => {
+ const hapticActuators = [];
+ const vibrationActuator = "vibrationActuator" in gamepad ? gamepad.vibrationActuator : null;
+ if (vibrationActuator)
+ hapticActuators.push(vibrationActuator);
+ if (gamepad.hapticActuators)
+ hapticActuators.push(...gamepad.hapticActuators);
+ return __spreadProps$4(__spreadValues$b({}, gamepad), {
+ id: gamepad.id,
+ hapticActuators,
+ axes: gamepad.axes.map((axes) => axes),
+ buttons: gamepad.buttons.map((button) => ({ pressed: button.pressed, touched: button.touched, value: button.value }))
+ });
+ };
+ const updateGamepadState = () => {
+ const _gamepads = (navigator == null ? void 0 : navigator.getGamepads()) || [];
+ for (let i = 0; i < _gamepads.length; ++i) {
+ const gamepad = _gamepads[i];
+ if (gamepad) {
+ const index = gamepads.value.findIndex(({ index: index2 }) => index2 === gamepad.index);
+ if (index > -1)
+ gamepads.value[index] = stateFromGamepad(gamepad);
+ }
+ }
+ };
+ const { isActive, pause, resume } = useRafFn(updateGamepadState);
+ const onGamepadConnected = (gamepad) => {
+ if (!gamepads.value.some(({ index }) => index === gamepad.index)) {
+ gamepads.value.push(stateFromGamepad(gamepad));
+ onConnectedHook.trigger(gamepad.index);
+ }
+ resume();
+ };
+ const onGamepadDisconnected = (gamepad) => {
+ gamepads.value = gamepads.value.filter((x) => x.index !== gamepad.index);
+ onDisconnectedHook.trigger(gamepad.index);
+ };
+ useEventListener("gamepadconnected", (e) => onGamepadConnected(e.gamepad));
+ useEventListener("gamepaddisconnected", (e) => onGamepadDisconnected(e.gamepad));
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(() => {
+ const _gamepads = (navigator == null ? void 0 : navigator.getGamepads()) || [];
+ if (_gamepads) {
+ for (let i = 0; i < _gamepads.length; ++i) {
+ const gamepad = _gamepads[i];
+ if (gamepad)
+ onGamepadConnected(gamepad);
+ }
+ }
+ });
+ pause();
+ return {
+ isSupported,
+ onConnected: onConnectedHook.on,
+ onDisconnected: onDisconnectedHook.on,
+ gamepads,
+ pause,
+ resume,
+ isActive
+ };
+}
+
+function useGeolocation(options = {}) {
+ const {
+ enableHighAccuracy = true,
+ maximumAge = 3e4,
+ timeout = 27e3,
+ navigator = defaultNavigator,
+ immediate = true
+ } = options;
+ const isSupported = useSupported(() => navigator && "geolocation" in navigator);
+ const locatedAt = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const error = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(null);
+ const coords = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)({
+ accuracy: 0,
+ latitude: Number.POSITIVE_INFINITY,
+ longitude: Number.POSITIVE_INFINITY,
+ altitude: null,
+ altitudeAccuracy: null,
+ heading: null,
+ speed: null
+ });
+ function updatePosition(position) {
+ locatedAt.value = position.timestamp;
+ coords.value = position.coords;
+ error.value = null;
+ }
+ let watcher;
+ function resume() {
+ if (isSupported.value) {
+ watcher = navigator.geolocation.watchPosition(
+ updatePosition,
+ (err) => error.value = err,
+ {
+ enableHighAccuracy,
+ maximumAge,
+ timeout
+ }
+ );
+ }
+ }
+ if (immediate)
+ resume();
+ function pause() {
+ if (watcher && navigator)
+ navigator.geolocation.clearWatch(watcher);
+ }
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => {
+ pause();
+ });
+ return {
+ isSupported,
+ coords,
+ locatedAt,
+ error,
+ resume,
+ pause
+ };
+}
+
+const defaultEvents$1 = ["mousemove", "mousedown", "resize", "keydown", "touchstart", "wheel"];
+const oneMinute = 6e4;
+function useIdle(timeout = oneMinute, options = {}) {
+ const {
+ initialState = false,
+ listenForVisibilityChange = true,
+ events = defaultEvents$1,
+ window = defaultWindow,
+ eventFilter = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.throttleFilter)(50)
+ } = options;
+ const idle = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialState);
+ const lastActive = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.timestamp)());
+ let timer;
+ const reset = () => {
+ idle.value = false;
+ clearTimeout(timer);
+ timer = setTimeout(() => idle.value = true, timeout);
+ };
+ const onEvent = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createFilterWrapper)(
+ eventFilter,
+ () => {
+ lastActive.value = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.timestamp)();
+ reset();
+ }
+ );
+ if (window) {
+ const document = window.document;
+ for (const event of events)
+ useEventListener(window, event, onEvent, { passive: true });
+ if (listenForVisibilityChange) {
+ useEventListener(document, "visibilitychange", () => {
+ if (!document.hidden)
+ onEvent();
+ });
+ }
+ reset();
+ }
+ return {
+ idle,
+ lastActive,
+ reset
+ };
+}
+
+var __defProp$a = Object.defineProperty;
+var __getOwnPropSymbols$b = Object.getOwnPropertySymbols;
+var __hasOwnProp$b = Object.prototype.hasOwnProperty;
+var __propIsEnum$b = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$a = (obj, key, value) => key in obj ? __defProp$a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$a = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$b.call(b, prop))
+ __defNormalProp$a(a, prop, b[prop]);
+ if (__getOwnPropSymbols$b)
+ for (var prop of __getOwnPropSymbols$b(b)) {
+ if (__propIsEnum$b.call(b, prop))
+ __defNormalProp$a(a, prop, b[prop]);
+ }
+ return a;
+};
+async function loadImage(options) {
+ return new Promise((resolve, reject) => {
+ const img = new Image();
+ const { src, srcset, sizes, class: clazz, loading, crossorigin, referrerPolicy } = options;
+ img.src = src;
+ if (srcset)
+ img.srcset = srcset;
+ if (sizes)
+ img.sizes = sizes;
+ if (clazz)
+ img.className = clazz;
+ if (loading)
+ img.loading = loading;
+ if (crossorigin)
+ img.crossOrigin = crossorigin;
+ if (referrerPolicy)
+ img.referrerPolicy = referrerPolicy;
+ img.onload = () => resolve(img);
+ img.onerror = reject;
+ });
+}
+function useImage(options, asyncStateOptions = {}) {
+ const state = useAsyncState(
+ () => loadImage((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options)),
+ void 0,
+ __spreadValues$a({
+ resetOnExecute: true
+ }, asyncStateOptions)
+ );
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ () => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options),
+ () => state.execute(asyncStateOptions.delay),
+ { deep: true }
+ );
+ return state;
+}
+
+const ARRIVED_STATE_THRESHOLD_PIXELS = 1;
+function useScroll(element, options = {}) {
+ const {
+ throttle = 0,
+ idle = 200,
+ onStop = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop,
+ onScroll = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop,
+ offset = {
+ left: 0,
+ right: 0,
+ top: 0,
+ bottom: 0
+ },
+ eventListenerOptions = {
+ capture: false,
+ passive: true
+ },
+ behavior = "auto",
+ window = defaultWindow
+ } = options;
+ const internalX = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const internalY = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const x = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return internalX.value;
+ },
+ set(x2) {
+ scrollTo(x2, void 0);
+ }
+ });
+ const y = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return internalY.value;
+ },
+ set(y2) {
+ scrollTo(void 0, y2);
+ }
+ });
+ function scrollTo(_x, _y) {
+ var _a, _b, _c;
+ if (!window)
+ return;
+ const _element = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(element);
+ if (!_element)
+ return;
+ (_c = _element instanceof Document ? window.document.body : _element) == null ? void 0 : _c.scrollTo({
+ top: (_a = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(_y)) != null ? _a : y.value,
+ left: (_b = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(_x)) != null ? _b : x.value,
+ behavior: (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(behavior)
+ });
+ }
+ const isScrolling = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const arrivedState = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)({
+ left: true,
+ right: false,
+ top: true,
+ bottom: false
+ });
+ const directions = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)({
+ left: false,
+ right: false,
+ top: false,
+ bottom: false
+ });
+ const onScrollEnd = (e) => {
+ if (!isScrolling.value)
+ return;
+ isScrolling.value = false;
+ directions.left = false;
+ directions.right = false;
+ directions.top = false;
+ directions.bottom = false;
+ onStop(e);
+ };
+ const onScrollEndDebounced = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useDebounceFn)(onScrollEnd, throttle + idle);
+ const setArrivedState = (target) => {
+ if (!window)
+ return;
+ const el = target === window ? target.document.documentElement : target === window.document ? target.documentElement : target;
+ const { display, flexDirection } = getComputedStyle(el);
+ const scrollLeft = el.scrollLeft;
+ directions.left = scrollLeft < internalX.value;
+ directions.right = scrollLeft > internalX.value;
+ const left = Math.abs(scrollLeft) <= 0 + (offset.left || 0);
+ const right = Math.abs(scrollLeft) + el.clientWidth >= el.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
+ if (display === "flex" && flexDirection === "row-reverse") {
+ arrivedState.left = right;
+ arrivedState.right = left;
+ } else {
+ arrivedState.left = left;
+ arrivedState.right = right;
+ }
+ internalX.value = scrollLeft;
+ let scrollTop = el.scrollTop;
+ if (target === window.document && !scrollTop)
+ scrollTop = window.document.body.scrollTop;
+ directions.top = scrollTop < internalY.value;
+ directions.bottom = scrollTop > internalY.value;
+ const top = Math.abs(scrollTop) <= 0 + (offset.top || 0);
+ const bottom = Math.abs(scrollTop) + el.clientHeight >= el.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;
+ if (display === "flex" && flexDirection === "column-reverse") {
+ arrivedState.top = bottom;
+ arrivedState.bottom = top;
+ } else {
+ arrivedState.top = top;
+ arrivedState.bottom = bottom;
+ }
+ internalY.value = scrollTop;
+ };
+ const onScrollHandler = (e) => {
+ if (!window)
+ return;
+ const eventTarget = e.target === window.document ? e.target.documentElement : e.target;
+ setArrivedState(eventTarget);
+ isScrolling.value = true;
+ onScrollEndDebounced(e);
+ onScroll(e);
+ };
+ useEventListener(
+ element,
+ "scroll",
+ throttle ? (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useThrottleFn)(onScrollHandler, throttle, true, false) : onScrollHandler,
+ eventListenerOptions
+ );
+ useEventListener(
+ element,
+ "scrollend",
+ onScrollEnd,
+ eventListenerOptions
+ );
+ return {
+ x,
+ y,
+ isScrolling,
+ arrivedState,
+ directions,
+ measure() {
+ const _element = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(element);
+ if (window && _element)
+ setArrivedState(_element);
+ }
+ };
+}
+
+var __defProp$9 = Object.defineProperty;
+var __defProps$3 = Object.defineProperties;
+var __getOwnPropDescs$3 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$a = Object.getOwnPropertySymbols;
+var __hasOwnProp$a = Object.prototype.hasOwnProperty;
+var __propIsEnum$a = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$9 = (obj, key, value) => key in obj ? __defProp$9(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$9 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$a.call(b, prop))
+ __defNormalProp$9(a, prop, b[prop]);
+ if (__getOwnPropSymbols$a)
+ for (var prop of __getOwnPropSymbols$a(b)) {
+ if (__propIsEnum$a.call(b, prop))
+ __defNormalProp$9(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$3 = (a, b) => __defProps$3(a, __getOwnPropDescs$3(b));
+function useInfiniteScroll(element, onLoadMore, options = {}) {
+ var _a;
+ const {
+ direction = "bottom",
+ interval = 100
+ } = options;
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(useScroll(
+ element,
+ __spreadProps$3(__spreadValues$9({}, options), {
+ offset: __spreadValues$9({
+ [direction]: (_a = options.distance) != null ? _a : 0
+ }, options.offset)
+ })
+ ));
+ const promise = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const isLoading = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => !!promise.value);
+ const observedElement = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(element);
+ if (el instanceof Window)
+ return window.document.documentElement;
+ if (el instanceof Document)
+ return document.documentElement;
+ return el;
+ });
+ const isElementVisible = useElementVisibility(observedElement);
+ function checkAndLoad() {
+ state.measure();
+ if (!observedElement.value || !isElementVisible.value)
+ return;
+ const { scrollHeight, clientHeight, scrollWidth, clientWidth } = observedElement.value;
+ const isNarrower = direction === "bottom" || direction === "top" ? scrollHeight <= clientHeight : scrollWidth <= clientWidth;
+ if (state.arrivedState[direction] || isNarrower) {
+ if (!promise.value) {
+ promise.value = Promise.all([
+ onLoadMore(state),
+ new Promise((resolve) => setTimeout(resolve, interval))
+ ]).finally(() => {
+ promise.value = null;
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.nextTick)(() => checkAndLoad());
+ });
+ }
+ }
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ () => [state.arrivedState[direction], isElementVisible.value],
+ checkAndLoad,
+ { immediate: true }
+ );
+ return {
+ isLoading
+ };
+}
+
+const defaultEvents = ["mousedown", "mouseup", "keydown", "keyup"];
+function useKeyModifier(modifier, options = {}) {
+ const {
+ events = defaultEvents,
+ document = defaultDocument,
+ initial = null
+ } = options;
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initial);
+ if (document) {
+ events.forEach((listenerEvent) => {
+ useEventListener(document, listenerEvent, (evt) => {
+ if (typeof evt.getModifierState === "function")
+ state.value = evt.getModifierState(modifier);
+ });
+ });
+ }
+ return state;
+}
+
+function useLocalStorage(key, initialValue, options = {}) {
+ const { window = defaultWindow } = options;
+ return useStorage(key, initialValue, window == null ? void 0 : window.localStorage, options);
+}
+
+const DefaultMagicKeysAliasMap = {
+ ctrl: "control",
+ command: "meta",
+ cmd: "meta",
+ option: "alt",
+ up: "arrowup",
+ down: "arrowdown",
+ left: "arrowleft",
+ right: "arrowright"
+};
+
+function useMagicKeys(options = {}) {
+ const {
+ reactive: useReactive = false,
+ target = defaultWindow,
+ aliasMap = DefaultMagicKeysAliasMap,
+ passive = true,
+ onEventFired = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop
+ } = options;
+ const current = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(/* @__PURE__ */ new Set());
+ const obj = {
+ toJSON() {
+ return {};
+ },
+ current
+ };
+ const refs = useReactive ? (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(obj) : obj;
+ const metaDeps = /* @__PURE__ */ new Set();
+ const usedKeys = /* @__PURE__ */ new Set();
+ function setRefs(key, value) {
+ if (key in refs) {
+ if (useReactive)
+ refs[key] = value;
+ else
+ refs[key].value = value;
+ }
+ }
+ function reset() {
+ current.clear();
+ for (const key of usedKeys)
+ setRefs(key, false);
+ }
+ function updateRefs(e, value) {
+ var _a, _b;
+ const key = (_a = e.key) == null ? void 0 : _a.toLowerCase();
+ const code = (_b = e.code) == null ? void 0 : _b.toLowerCase();
+ const values = [code, key].filter(Boolean);
+ if (key) {
+ if (value)
+ current.add(key);
+ else
+ current.delete(key);
+ }
+ for (const key2 of values) {
+ usedKeys.add(key2);
+ setRefs(key2, value);
+ }
+ if (key === "meta" && !value) {
+ metaDeps.forEach((key2) => {
+ current.delete(key2);
+ setRefs(key2, false);
+ });
+ metaDeps.clear();
+ } else if (typeof e.getModifierState === "function" && e.getModifierState("Meta") && value) {
+ [...current, ...values].forEach((key2) => metaDeps.add(key2));
+ }
+ }
+ useEventListener(target, "keydown", (e) => {
+ updateRefs(e, true);
+ return onEventFired(e);
+ }, { passive });
+ useEventListener(target, "keyup", (e) => {
+ updateRefs(e, false);
+ return onEventFired(e);
+ }, { passive });
+ useEventListener("blur", reset, { passive: true });
+ useEventListener("focus", reset, { passive: true });
+ const proxy = new Proxy(
+ refs,
+ {
+ get(target2, prop, rec) {
+ if (typeof prop !== "string")
+ return Reflect.get(target2, prop, rec);
+ prop = prop.toLowerCase();
+ if (prop in aliasMap)
+ prop = aliasMap[prop];
+ if (!(prop in refs)) {
+ if (/[+_-]/.test(prop)) {
+ const keys = prop.split(/[+_-]/g).map((i) => i.trim());
+ refs[prop] = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => keys.every((key) => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(proxy[key])));
+ } else {
+ refs[prop] = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ }
+ }
+ const r = Reflect.get(target2, prop, rec);
+ return useReactive ? (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(r) : r;
+ }
+ }
+ );
+ return proxy;
+}
+
+var __defProp$8 = Object.defineProperty;
+var __getOwnPropSymbols$9 = Object.getOwnPropertySymbols;
+var __hasOwnProp$9 = Object.prototype.hasOwnProperty;
+var __propIsEnum$9 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$8 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$9.call(b, prop))
+ __defNormalProp$8(a, prop, b[prop]);
+ if (__getOwnPropSymbols$9)
+ for (var prop of __getOwnPropSymbols$9(b)) {
+ if (__propIsEnum$9.call(b, prop))
+ __defNormalProp$8(a, prop, b[prop]);
+ }
+ return a;
+};
+function usingElRef(source, cb) {
+ if ((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(source))
+ cb((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(source));
+}
+function timeRangeToArray(timeRanges) {
+ let ranges = [];
+ for (let i = 0; i < timeRanges.length; ++i)
+ ranges = [...ranges, [timeRanges.start(i), timeRanges.end(i)]];
+ return ranges;
+}
+function tracksToArray(tracks) {
+ return Array.from(tracks).map(({ label, kind, language, mode, activeCues, cues, inBandMetadataTrackDispatchType }, id) => ({ id, label, kind, language, mode, activeCues, cues, inBandMetadataTrackDispatchType }));
+}
+const defaultOptions = {
+ src: "",
+ tracks: []
+};
+function useMediaControls(target, options = {}) {
+ options = __spreadValues$8(__spreadValues$8({}, defaultOptions), options);
+ const {
+ document = defaultDocument
+ } = options;
+ const currentTime = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const duration = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const seeking = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const volume = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(1);
+ const waiting = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const ended = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const playing = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const rate = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(1);
+ const stalled = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const buffered = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)([]);
+ const tracks = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)([]);
+ const selectedTrack = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(-1);
+ const isPictureInPicture = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const muted = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const supportsPictureInPicture = document && "pictureInPictureEnabled" in document;
+ const sourceErrorEvent = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const disableTrack = (track) => {
+ usingElRef(target, (el) => {
+ if (track) {
+ const id = typeof track === "number" ? track : track.id;
+ el.textTracks[id].mode = "disabled";
+ } else {
+ for (let i = 0; i < el.textTracks.length; ++i)
+ el.textTracks[i].mode = "disabled";
+ }
+ selectedTrack.value = -1;
+ });
+ };
+ const enableTrack = (track, disableTracks = true) => {
+ usingElRef(target, (el) => {
+ const id = typeof track === "number" ? track : track.id;
+ if (disableTracks)
+ disableTrack();
+ el.textTracks[id].mode = "showing";
+ selectedTrack.value = id;
+ });
+ };
+ const togglePictureInPicture = () => {
+ return new Promise((resolve, reject) => {
+ usingElRef(target, async (el) => {
+ if (supportsPictureInPicture) {
+ if (!isPictureInPicture.value) {
+ el.requestPictureInPicture().then(resolve).catch(reject);
+ } else {
+ document.exitPictureInPicture().then(resolve).catch(reject);
+ }
+ }
+ });
+ });
+ };
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watchEffect)(() => {
+ if (!document)
+ return;
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (!el)
+ return;
+ const src = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options.src);
+ let sources = [];
+ if (!src)
+ return;
+ if (typeof src === "string")
+ sources = [{ src }];
+ else if (Array.isArray(src))
+ sources = src;
+ else if ((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isObject)(src))
+ sources = [src];
+ el.querySelectorAll("source").forEach((e) => {
+ e.removeEventListener("error", sourceErrorEvent.trigger);
+ e.remove();
+ });
+ sources.forEach(({ src: src2, type }) => {
+ const source = document.createElement("source");
+ source.setAttribute("src", src2);
+ source.setAttribute("type", type || "");
+ source.addEventListener("error", sourceErrorEvent.trigger);
+ el.appendChild(source);
+ });
+ el.load();
+ });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => {
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (!el)
+ return;
+ el.querySelectorAll("source").forEach((e) => e.removeEventListener("error", sourceErrorEvent.trigger));
+ });
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)([target, volume], () => {
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (!el)
+ return;
+ el.volume = volume.value;
+ });
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)([target, muted], () => {
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (!el)
+ return;
+ el.muted = muted.value;
+ });
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)([target, rate], () => {
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (!el)
+ return;
+ el.playbackRate = rate.value;
+ });
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watchEffect)(() => {
+ if (!document)
+ return;
+ const textTracks = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options.tracks);
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (!textTracks || !textTracks.length || !el)
+ return;
+ el.querySelectorAll("track").forEach((e) => e.remove());
+ textTracks.forEach(({ default: isDefault, kind, label, src, srcLang }, i) => {
+ const track = document.createElement("track");
+ track.default = isDefault || false;
+ track.kind = kind;
+ track.label = label;
+ track.src = src;
+ track.srclang = srcLang;
+ if (track.default)
+ selectedTrack.value = i;
+ el.appendChild(track);
+ });
+ });
+ const { ignoreUpdates: ignoreCurrentTimeUpdates } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchIgnorable)(currentTime, (time) => {
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (!el)
+ return;
+ el.currentTime = time;
+ });
+ const { ignoreUpdates: ignorePlayingUpdates } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchIgnorable)(playing, (isPlaying) => {
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (!el)
+ return;
+ isPlaying ? el.play() : el.pause();
+ });
+ useEventListener(target, "timeupdate", () => ignoreCurrentTimeUpdates(() => currentTime.value = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target).currentTime));
+ useEventListener(target, "durationchange", () => duration.value = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target).duration);
+ useEventListener(target, "progress", () => buffered.value = timeRangeToArray((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target).buffered));
+ useEventListener(target, "seeking", () => seeking.value = true);
+ useEventListener(target, "seeked", () => seeking.value = false);
+ useEventListener(target, ["waiting", "loadstart"], () => {
+ waiting.value = true;
+ ignorePlayingUpdates(() => playing.value = false);
+ });
+ useEventListener(target, "loadeddata", () => waiting.value = false);
+ useEventListener(target, "playing", () => {
+ waiting.value = false;
+ ended.value = false;
+ ignorePlayingUpdates(() => playing.value = true);
+ });
+ useEventListener(target, "ratechange", () => rate.value = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target).playbackRate);
+ useEventListener(target, "stalled", () => stalled.value = true);
+ useEventListener(target, "ended", () => ended.value = true);
+ useEventListener(target, "pause", () => ignorePlayingUpdates(() => playing.value = false));
+ useEventListener(target, "play", () => ignorePlayingUpdates(() => playing.value = true));
+ useEventListener(target, "enterpictureinpicture", () => isPictureInPicture.value = true);
+ useEventListener(target, "leavepictureinpicture", () => isPictureInPicture.value = false);
+ useEventListener(target, "volumechange", () => {
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (!el)
+ return;
+ volume.value = el.volume;
+ muted.value = el.muted;
+ });
+ const listeners = [];
+ const stop = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)([target], () => {
+ const el = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(target);
+ if (!el)
+ return;
+ stop();
+ listeners[0] = useEventListener(el.textTracks, "addtrack", () => tracks.value = tracksToArray(el.textTracks));
+ listeners[1] = useEventListener(el.textTracks, "removetrack", () => tracks.value = tracksToArray(el.textTracks));
+ listeners[2] = useEventListener(el.textTracks, "change", () => tracks.value = tracksToArray(el.textTracks));
+ });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => listeners.forEach((listener) => listener()));
+ return {
+ currentTime,
+ duration,
+ waiting,
+ seeking,
+ ended,
+ stalled,
+ buffered,
+ playing,
+ rate,
+ // Volume
+ volume,
+ muted,
+ // Tracks
+ tracks,
+ selectedTrack,
+ enableTrack,
+ disableTrack,
+ // Picture in Picture
+ supportsPictureInPicture,
+ togglePictureInPicture,
+ isPictureInPicture,
+ // Events
+ onSourceError: sourceErrorEvent.on
+ };
+}
+
+function getMapVue2Compat() {
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)({});
+ return {
+ get: (key) => data[key],
+ set: (key, value) => (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.set)(data, key, value),
+ has: (key) => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.hasOwn)(data, key),
+ delete: (key) => (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.del)(data, key),
+ clear: () => {
+ Object.keys(data).forEach((key) => {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.del)(data, key);
+ });
+ }
+ };
+}
+function useMemoize(resolver, options) {
+ const initCache = () => {
+ if (options == null ? void 0 : options.cache)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(options.cache);
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_1__.isVue2)
+ return getMapVue2Compat();
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(/* @__PURE__ */ new Map());
+ };
+ const cache = initCache();
+ const generateKey = (...args) => (options == null ? void 0 : options.getKey) ? options.getKey(...args) : JSON.stringify(args);
+ const _loadData = (key, ...args) => {
+ cache.set(key, resolver(...args));
+ return cache.get(key);
+ };
+ const loadData = (...args) => _loadData(generateKey(...args), ...args);
+ const deleteData = (...args) => {
+ cache.delete(generateKey(...args));
+ };
+ const clearData = () => {
+ cache.clear();
+ };
+ const memoized = (...args) => {
+ const key = generateKey(...args);
+ if (cache.has(key))
+ return cache.get(key);
+ return _loadData(key, ...args);
+ };
+ memoized.load = loadData;
+ memoized.delete = deleteData;
+ memoized.clear = clearData;
+ memoized.generateKey = generateKey;
+ memoized.cache = cache;
+ return memoized;
+}
+
+function useMemory(options = {}) {
+ const memory = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const isSupported = useSupported(() => typeof performance !== "undefined" && "memory" in performance);
+ if (isSupported.value) {
+ const { interval = 1e3 } = options;
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useIntervalFn)(() => {
+ memory.value = performance.memory;
+ }, interval, { immediate: options.immediate, immediateCallback: options.immediateCallback });
+ }
+ return { isSupported, memory };
+}
+
+const BuiltinExtractors = {
+ page: (event) => [event.pageX, event.pageY],
+ client: (event) => [event.clientX, event.clientY],
+ screen: (event) => [event.screenX, event.screenY],
+ movement: (event) => event instanceof Touch ? null : [event.movementX, event.movementY]
+};
+function useMouse(options = {}) {
+ const {
+ type = "page",
+ touch = true,
+ resetOnTouchEnds = false,
+ initialValue = { x: 0, y: 0 },
+ window = defaultWindow,
+ target = window,
+ eventFilter
+ } = options;
+ const x = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialValue.x);
+ const y = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialValue.y);
+ const sourceType = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const extractor = typeof type === "function" ? type : BuiltinExtractors[type];
+ const mouseHandler = (event) => {
+ const result = extractor(event);
+ if (result) {
+ [x.value, y.value] = result;
+ sourceType.value = "mouse";
+ }
+ };
+ const touchHandler = (event) => {
+ if (event.touches.length > 0) {
+ const result = extractor(event.touches[0]);
+ if (result) {
+ [x.value, y.value] = result;
+ sourceType.value = "touch";
+ }
+ }
+ };
+ const reset = () => {
+ x.value = initialValue.x;
+ y.value = initialValue.y;
+ };
+ const mouseHandlerWrapper = eventFilter ? (event) => eventFilter(() => mouseHandler(event), {}) : (event) => mouseHandler(event);
+ const touchHandlerWrapper = eventFilter ? (event) => eventFilter(() => touchHandler(event), {}) : (event) => touchHandler(event);
+ if (target) {
+ const listenerOptions = { passive: true };
+ useEventListener(target, ["mousemove", "dragover"], mouseHandlerWrapper, listenerOptions);
+ if (touch && type !== "movement") {
+ useEventListener(target, ["touchstart", "touchmove"], touchHandlerWrapper, listenerOptions);
+ if (resetOnTouchEnds)
+ useEventListener(target, "touchend", reset, listenerOptions);
+ }
+ }
+ return {
+ x,
+ y,
+ sourceType
+ };
+}
+
+function useMouseInElement(target, options = {}) {
+ const {
+ handleOutside = true,
+ window = defaultWindow
+ } = options;
+ const { x, y, sourceType } = useMouse(options);
+ const targetRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(target != null ? target : window == null ? void 0 : window.document.body);
+ const elementX = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const elementY = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const elementPositionX = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const elementPositionY = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const elementHeight = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const elementWidth = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0);
+ const isOutside = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(true);
+ let stop = () => {
+ };
+ if (window) {
+ stop = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ [targetRef, x, y],
+ () => {
+ const el = unrefElement(targetRef);
+ if (!el)
+ return;
+ const {
+ left,
+ top,
+ width,
+ height
+ } = el.getBoundingClientRect();
+ elementPositionX.value = left + window.pageXOffset;
+ elementPositionY.value = top + window.pageYOffset;
+ elementHeight.value = height;
+ elementWidth.value = width;
+ const elX = x.value - elementPositionX.value;
+ const elY = y.value - elementPositionY.value;
+ isOutside.value = width === 0 || height === 0 || elX < 0 || elY < 0 || elX > width || elY > height;
+ if (handleOutside || !isOutside.value) {
+ elementX.value = elX;
+ elementY.value = elY;
+ }
+ },
+ { immediate: true }
+ );
+ useEventListener(document, "mouseleave", () => {
+ isOutside.value = true;
+ });
+ }
+ return {
+ x,
+ y,
+ sourceType,
+ elementX,
+ elementY,
+ elementPositionX,
+ elementPositionY,
+ elementHeight,
+ elementWidth,
+ isOutside,
+ stop
+ };
+}
+
+function useMousePressed(options = {}) {
+ const {
+ touch = true,
+ drag = true,
+ initialValue = false,
+ window = defaultWindow
+ } = options;
+ const pressed = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialValue);
+ const sourceType = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ if (!window) {
+ return {
+ pressed,
+ sourceType
+ };
+ }
+ const onPressed = (srcType) => () => {
+ pressed.value = true;
+ sourceType.value = srcType;
+ };
+ const onReleased = () => {
+ pressed.value = false;
+ sourceType.value = null;
+ };
+ const target = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => unrefElement(options.target) || window);
+ useEventListener(target, "mousedown", onPressed("mouse"), { passive: true });
+ useEventListener(window, "mouseleave", onReleased, { passive: true });
+ useEventListener(window, "mouseup", onReleased, { passive: true });
+ if (drag) {
+ useEventListener(target, "dragstart", onPressed("mouse"), { passive: true });
+ useEventListener(window, "drop", onReleased, { passive: true });
+ useEventListener(window, "dragend", onReleased, { passive: true });
+ }
+ if (touch) {
+ useEventListener(target, "touchstart", onPressed("touch"), { passive: true });
+ useEventListener(window, "touchend", onReleased, { passive: true });
+ useEventListener(window, "touchcancel", onReleased, { passive: true });
+ }
+ return {
+ pressed,
+ sourceType
+ };
+}
+
+function useNavigatorLanguage(options = {}) {
+ const { window = defaultWindow } = options;
+ const navigator = window == null ? void 0 : window.navigator;
+ const isSupported = useSupported(() => navigator && "language" in navigator);
+ const language = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(navigator == null ? void 0 : navigator.language);
+ useEventListener(window, "languagechange", () => {
+ if (navigator)
+ language.value = navigator.language;
+ });
+ return {
+ isSupported,
+ language
+ };
+}
+
+function useNetwork(options = {}) {
+ const { window = defaultWindow } = options;
+ const navigator = window == null ? void 0 : window.navigator;
+ const isSupported = useSupported(() => navigator && "connection" in navigator);
+ const isOnline = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(true);
+ const saveData = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const offlineAt = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(void 0);
+ const onlineAt = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(void 0);
+ const downlink = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(void 0);
+ const downlinkMax = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(void 0);
+ const rtt = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(void 0);
+ const effectiveType = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(void 0);
+ const type = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("unknown");
+ const connection = isSupported.value && navigator.connection;
+ function updateNetworkInformation() {
+ if (!navigator)
+ return;
+ isOnline.value = navigator.onLine;
+ offlineAt.value = isOnline.value ? void 0 : Date.now();
+ onlineAt.value = isOnline.value ? Date.now() : void 0;
+ if (connection) {
+ downlink.value = connection.downlink;
+ downlinkMax.value = connection.downlinkMax;
+ effectiveType.value = connection.effectiveType;
+ rtt.value = connection.rtt;
+ saveData.value = connection.saveData;
+ type.value = connection.type;
+ }
+ }
+ if (window) {
+ useEventListener(window, "offline", () => {
+ isOnline.value = false;
+ offlineAt.value = Date.now();
+ });
+ useEventListener(window, "online", () => {
+ isOnline.value = true;
+ onlineAt.value = Date.now();
+ });
+ }
+ if (connection)
+ useEventListener(connection, "change", updateNetworkInformation, false);
+ updateNetworkInformation();
+ return {
+ isSupported,
+ isOnline,
+ saveData,
+ offlineAt,
+ onlineAt,
+ downlink,
+ downlinkMax,
+ effectiveType,
+ rtt,
+ type
+ };
+}
+
+var __defProp$7 = Object.defineProperty;
+var __getOwnPropSymbols$8 = Object.getOwnPropertySymbols;
+var __hasOwnProp$8 = Object.prototype.hasOwnProperty;
+var __propIsEnum$8 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$7 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$8.call(b, prop))
+ __defNormalProp$7(a, prop, b[prop]);
+ if (__getOwnPropSymbols$8)
+ for (var prop of __getOwnPropSymbols$8(b)) {
+ if (__propIsEnum$8.call(b, prop))
+ __defNormalProp$7(a, prop, b[prop]);
+ }
+ return a;
+};
+function useNow(options = {}) {
+ const {
+ controls: exposeControls = false,
+ interval = "requestAnimationFrame"
+ } = options;
+ const now = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(/* @__PURE__ */ new Date());
+ const update = () => now.value = /* @__PURE__ */ new Date();
+ const controls = interval === "requestAnimationFrame" ? useRafFn(update, { immediate: true }) : (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useIntervalFn)(update, interval, { immediate: true });
+ if (exposeControls) {
+ return __spreadValues$7({
+ now
+ }, controls);
+ } else {
+ return now;
+ }
+}
+
+function useObjectUrl(object) {
+ const url = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const release = () => {
+ if (url.value)
+ URL.revokeObjectURL(url.value);
+ url.value = void 0;
+ };
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ () => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(object),
+ (newObject) => {
+ release();
+ if (newObject)
+ url.value = URL.createObjectURL(newObject);
+ },
+ { immediate: true }
+ );
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(release);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.readonly)(url);
+}
+
+function useClamp(value, min, max) {
+ if (typeof value === "function" || (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.isReadonly)(value))
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.clamp)((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(value), (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(min), (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(max)));
+ const _value = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(value);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return _value.value = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.clamp)(_value.value, (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(min), (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(max));
+ },
+ set(value2) {
+ _value.value = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.clamp)(value2, (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(min), (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(max));
+ }
+ });
+}
+
+function useOffsetPagination(options) {
+ const {
+ total = Number.POSITIVE_INFINITY,
+ pageSize = 10,
+ page = 1,
+ onPageChange = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop,
+ onPageSizeChange = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop,
+ onPageCountChange = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop
+ } = options;
+ const currentPageSize = useClamp(pageSize, 1, Number.POSITIVE_INFINITY);
+ const pageCount = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => Math.max(
+ 1,
+ Math.ceil((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(total) / (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(currentPageSize))
+ ));
+ const currentPage = useClamp(page, 1, pageCount);
+ const isFirstPage = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => currentPage.value === 1);
+ const isLastPage = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => currentPage.value === pageCount.value);
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.isRef)(page))
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.syncRef)(page, currentPage);
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.isRef)(pageSize))
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.syncRef)(pageSize, currentPageSize);
+ function prev() {
+ currentPage.value--;
+ }
+ function next() {
+ currentPage.value++;
+ }
+ const returnValue = {
+ currentPage,
+ currentPageSize,
+ pageCount,
+ isFirstPage,
+ isLastPage,
+ prev,
+ next
+ };
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(currentPage, () => {
+ onPageChange((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(returnValue));
+ });
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(currentPageSize, () => {
+ onPageSizeChange((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(returnValue));
+ });
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(pageCount, () => {
+ onPageCountChange((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(returnValue));
+ });
+ return returnValue;
+}
+
+function useOnline(options = {}) {
+ const { isOnline } = useNetwork(options);
+ return isOnline;
+}
+
+function usePageLeave(options = {}) {
+ const { window = defaultWindow } = options;
+ const isLeft = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const handler = (event) => {
+ if (!window)
+ return;
+ event = event || window.event;
+ const from = event.relatedTarget || event.toElement;
+ isLeft.value = !from;
+ };
+ if (window) {
+ useEventListener(window, "mouseout", handler, { passive: true });
+ useEventListener(window.document, "mouseleave", handler, { passive: true });
+ useEventListener(window.document, "mouseenter", handler, { passive: true });
+ }
+ return isLeft;
+}
+
+function useParallax(target, options = {}) {
+ const {
+ deviceOrientationTiltAdjust = (i) => i,
+ deviceOrientationRollAdjust = (i) => i,
+ mouseTiltAdjust = (i) => i,
+ mouseRollAdjust = (i) => i,
+ window = defaultWindow
+ } = options;
+ const orientation = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(useDeviceOrientation({ window }));
+ const {
+ elementX: x,
+ elementY: y,
+ elementWidth: width,
+ elementHeight: height
+ } = useMouseInElement(target, { handleOutside: false, window });
+ const source = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ if (orientation.isSupported && (orientation.alpha != null && orientation.alpha !== 0 || orientation.gamma != null && orientation.gamma !== 0))
+ return "deviceOrientation";
+ return "mouse";
+ });
+ const roll = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ if (source.value === "deviceOrientation") {
+ const value = -orientation.beta / 90;
+ return deviceOrientationRollAdjust(value);
+ } else {
+ const value = -(y.value - height.value / 2) / height.value;
+ return mouseRollAdjust(value);
+ }
+ });
+ const tilt = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ if (source.value === "deviceOrientation") {
+ const value = orientation.gamma / 90;
+ return deviceOrientationTiltAdjust(value);
+ } else {
+ const value = (x.value - width.value / 2) / width.value;
+ return mouseTiltAdjust(value);
+ }
+ });
+ return { roll, tilt, source };
+}
+
+function useParentElement(element = useCurrentElement()) {
+ const parentElement = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)();
+ const update = () => {
+ const el = unrefElement(element);
+ if (el)
+ parentElement.value = el.parentElement;
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(update);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(() => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(element), update);
+ return parentElement;
+}
+
+var __getOwnPropSymbols$7 = Object.getOwnPropertySymbols;
+var __hasOwnProp$7 = Object.prototype.hasOwnProperty;
+var __propIsEnum$7 = Object.prototype.propertyIsEnumerable;
+var __objRest$1 = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$7.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$7)
+ for (var prop of __getOwnPropSymbols$7(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$7.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function usePerformanceObserver(options, callback) {
+ const _a = options, {
+ window = defaultWindow,
+ immediate = true
+ } = _a, performanceOptions = __objRest$1(_a, [
+ "window",
+ "immediate"
+ ]);
+ const isSupported = useSupported(() => window && "PerformanceObserver" in window);
+ let observer;
+ const stop = () => {
+ observer == null ? void 0 : observer.disconnect();
+ };
+ const start = () => {
+ if (isSupported.value) {
+ stop();
+ observer = new PerformanceObserver(callback);
+ observer.observe(performanceOptions);
+ }
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(stop);
+ if (immediate)
+ start();
+ return {
+ isSupported,
+ start,
+ stop
+ };
+}
+
+var __defProp$6 = Object.defineProperty;
+var __defProps$2 = Object.defineProperties;
+var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$6 = Object.getOwnPropertySymbols;
+var __hasOwnProp$6 = Object.prototype.hasOwnProperty;
+var __propIsEnum$6 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$6 = (obj, key, value) => key in obj ? __defProp$6(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$6 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$6.call(b, prop))
+ __defNormalProp$6(a, prop, b[prop]);
+ if (__getOwnPropSymbols$6)
+ for (var prop of __getOwnPropSymbols$6(b)) {
+ if (__propIsEnum$6.call(b, prop))
+ __defNormalProp$6(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b));
+const defaultState = {
+ x: 0,
+ y: 0,
+ pointerId: 0,
+ pressure: 0,
+ tiltX: 0,
+ tiltY: 0,
+ width: 0,
+ height: 0,
+ twist: 0,
+ pointerType: null
+};
+const keys = /* @__PURE__ */ Object.keys(defaultState);
+function usePointer(options = {}) {
+ const {
+ target = defaultWindow
+ } = options;
+ const isInside = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(options.initialValue || {});
+ Object.assign(state.value, defaultState, state.value);
+ const handler = (event) => {
+ isInside.value = true;
+ if (options.pointerTypes && !options.pointerTypes.includes(event.pointerType))
+ return;
+ state.value = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.objectPick)(event, keys, false);
+ };
+ if (target) {
+ const listenerOptions = { passive: true };
+ useEventListener(target, ["pointerdown", "pointermove", "pointerup"], handler, listenerOptions);
+ useEventListener(target, "pointerleave", () => isInside.value = false, listenerOptions);
+ }
+ return __spreadProps$2(__spreadValues$6({}, (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRefs)(state)), {
+ isInside
+ });
+}
+
+function usePointerLock(target, options = {}) {
+ const { document = defaultDocument, pointerLockOptions } = options;
+ const isSupported = useSupported(() => document && "pointerLockElement" in document);
+ const element = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const triggerElement = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ let targetElement;
+ if (isSupported.value) {
+ useEventListener(document, "pointerlockchange", () => {
+ var _a;
+ const currentElement = (_a = document.pointerLockElement) != null ? _a : element.value;
+ if (targetElement && currentElement === targetElement) {
+ element.value = document.pointerLockElement;
+ if (!element.value)
+ targetElement = triggerElement.value = null;
+ }
+ });
+ useEventListener(document, "pointerlockerror", () => {
+ var _a;
+ const currentElement = (_a = document.pointerLockElement) != null ? _a : element.value;
+ if (targetElement && currentElement === targetElement) {
+ const action = document.pointerLockElement ? "release" : "acquire";
+ throw new Error(`Failed to ${action} pointer lock.`);
+ }
+ });
+ }
+ async function lock(e, options2) {
+ var _a;
+ if (!isSupported.value)
+ throw new Error("Pointer Lock API is not supported by your browser.");
+ triggerElement.value = e instanceof Event ? e.currentTarget : null;
+ targetElement = e instanceof Event ? (_a = unrefElement(target)) != null ? _a : triggerElement.value : unrefElement(e);
+ if (!targetElement)
+ throw new Error("Target element undefined.");
+ targetElement.requestPointerLock(options2 != null ? options2 : pointerLockOptions);
+ return await (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.until)(element).toBe(targetElement);
+ }
+ async function unlock() {
+ if (!element.value)
+ return false;
+ document.exitPointerLock();
+ await (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.until)(element).toBeNull();
+ return true;
+ }
+ return {
+ isSupported,
+ element,
+ triggerElement,
+ lock,
+ unlock
+ };
+}
+
+function usePointerSwipe(target, options = {}) {
+ const targetRef = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(target);
+ const {
+ threshold = 50,
+ onSwipe,
+ onSwipeEnd,
+ onSwipeStart
+ } = options;
+ const posStart = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)({ x: 0, y: 0 });
+ const updatePosStart = (x, y) => {
+ posStart.x = x;
+ posStart.y = y;
+ };
+ const posEnd = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)({ x: 0, y: 0 });
+ const updatePosEnd = (x, y) => {
+ posEnd.x = x;
+ posEnd.y = y;
+ };
+ const distanceX = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => posStart.x - posEnd.x);
+ const distanceY = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => posStart.y - posEnd.y);
+ const { max, abs } = Math;
+ const isThresholdExceeded = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => max(abs(distanceX.value), abs(distanceY.value)) >= threshold);
+ const isSwiping = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const isPointerDown = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const direction = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ if (!isThresholdExceeded.value)
+ return "none";
+ if (abs(distanceX.value) > abs(distanceY.value)) {
+ return distanceX.value > 0 ? "left" : "right";
+ } else {
+ return distanceY.value > 0 ? "up" : "down";
+ }
+ });
+ const eventIsAllowed = (e) => {
+ var _a, _b, _c;
+ const isReleasingButton = e.buttons === 0;
+ const isPrimaryButton = e.buttons === 1;
+ return (_c = (_b = (_a = options.pointerTypes) == null ? void 0 : _a.includes(e.pointerType)) != null ? _b : isReleasingButton || isPrimaryButton) != null ? _c : true;
+ };
+ const stops = [
+ useEventListener(target, "pointerdown", (e) => {
+ var _a, _b;
+ if (!eventIsAllowed(e))
+ return;
+ isPointerDown.value = true;
+ (_b = (_a = targetRef.value) == null ? void 0 : _a.style) == null ? void 0 : _b.setProperty("touch-action", "none");
+ const eventTarget = e.target;
+ eventTarget == null ? void 0 : eventTarget.setPointerCapture(e.pointerId);
+ const { clientX: x, clientY: y } = e;
+ updatePosStart(x, y);
+ updatePosEnd(x, y);
+ onSwipeStart == null ? void 0 : onSwipeStart(e);
+ }),
+ useEventListener(target, "pointermove", (e) => {
+ if (!eventIsAllowed(e))
+ return;
+ if (!isPointerDown.value)
+ return;
+ const { clientX: x, clientY: y } = e;
+ updatePosEnd(x, y);
+ if (!isSwiping.value && isThresholdExceeded.value)
+ isSwiping.value = true;
+ if (isSwiping.value)
+ onSwipe == null ? void 0 : onSwipe(e);
+ }),
+ useEventListener(target, "pointerup", (e) => {
+ var _a, _b;
+ if (!eventIsAllowed(e))
+ return;
+ if (isSwiping.value)
+ onSwipeEnd == null ? void 0 : onSwipeEnd(e, direction.value);
+ isPointerDown.value = false;
+ isSwiping.value = false;
+ (_b = (_a = targetRef.value) == null ? void 0 : _a.style) == null ? void 0 : _b.setProperty("touch-action", "initial");
+ })
+ ];
+ const stop = () => stops.forEach((s) => s());
+ return {
+ isSwiping: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.readonly)(isSwiping),
+ direction: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.readonly)(direction),
+ posStart: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.readonly)(posStart),
+ posEnd: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.readonly)(posEnd),
+ distanceX,
+ distanceY,
+ stop
+ };
+}
+
+function usePreferredColorScheme(options) {
+ const isLight = useMediaQuery("(prefers-color-scheme: light)", options);
+ const isDark = useMediaQuery("(prefers-color-scheme: dark)", options);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ if (isDark.value)
+ return "dark";
+ if (isLight.value)
+ return "light";
+ return "no-preference";
+ });
+}
+
+function usePreferredContrast(options) {
+ const isMore = useMediaQuery("(prefers-contrast: more)", options);
+ const isLess = useMediaQuery("(prefers-contrast: less)", options);
+ const isCustom = useMediaQuery("(prefers-contrast: custom)", options);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ if (isMore.value)
+ return "more";
+ if (isLess.value)
+ return "less";
+ if (isCustom.value)
+ return "custom";
+ return "no-preference";
+ });
+}
+
+function usePreferredLanguages(options = {}) {
+ const { window = defaultWindow } = options;
+ if (!window)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(["en"]);
+ const navigator = window.navigator;
+ const value = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(navigator.languages);
+ useEventListener(window, "languagechange", () => {
+ value.value = navigator.languages;
+ });
+ return value;
+}
+
+function usePreferredReducedMotion(options) {
+ const isReduced = useMediaQuery("(prefers-reduced-motion: reduce)", options);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ if (isReduced.value)
+ return "reduce";
+ return "no-preference";
+ });
+}
+
+function usePrevious(value, initialValue) {
+ const previous = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(initialValue);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(value),
+ (_, oldValue) => {
+ previous.value = oldValue;
+ },
+ { flush: "sync" }
+ );
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.readonly)(previous);
+}
+
+function useScreenOrientation(options = {}) {
+ const {
+ window = defaultWindow
+ } = options;
+ const isSupported = useSupported(() => window && "screen" in window && "orientation" in window.screen);
+ const screenOrientation = isSupported.value ? window.screen.orientation : {};
+ const orientation = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(screenOrientation.type);
+ const angle = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(screenOrientation.angle || 0);
+ if (isSupported.value) {
+ useEventListener(window, "orientationchange", () => {
+ orientation.value = screenOrientation.type;
+ angle.value = screenOrientation.angle;
+ });
+ }
+ const lockOrientation = (type) => {
+ if (!isSupported.value)
+ return Promise.reject(new Error("Not supported"));
+ return screenOrientation.lock(type);
+ };
+ const unlockOrientation = () => {
+ if (isSupported.value)
+ screenOrientation.unlock();
+ };
+ return {
+ isSupported,
+ orientation,
+ angle,
+ lockOrientation,
+ unlockOrientation
+ };
+}
+
+const topVarName = "--vueuse-safe-area-top";
+const rightVarName = "--vueuse-safe-area-right";
+const bottomVarName = "--vueuse-safe-area-bottom";
+const leftVarName = "--vueuse-safe-area-left";
+function useScreenSafeArea() {
+ const top = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("");
+ const right = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("");
+ const bottom = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("");
+ const left = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("");
+ if (_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isClient) {
+ const topCssVar = useCssVar(topVarName);
+ const rightCssVar = useCssVar(rightVarName);
+ const bottomCssVar = useCssVar(bottomVarName);
+ const leftCssVar = useCssVar(leftVarName);
+ topCssVar.value = "env(safe-area-inset-top, 0px)";
+ rightCssVar.value = "env(safe-area-inset-right, 0px)";
+ bottomCssVar.value = "env(safe-area-inset-bottom, 0px)";
+ leftCssVar.value = "env(safe-area-inset-left, 0px)";
+ update();
+ useEventListener("resize", (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useDebounceFn)(update));
+ }
+ function update() {
+ top.value = getValue(topVarName);
+ right.value = getValue(rightVarName);
+ bottom.value = getValue(bottomVarName);
+ left.value = getValue(leftVarName);
+ }
+ return {
+ top,
+ right,
+ bottom,
+ left,
+ update
+ };
+}
+function getValue(position) {
+ return getComputedStyle(document.documentElement).getPropertyValue(position);
+}
+
+function useScriptTag(src, onLoaded = _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop, options = {}) {
+ const {
+ immediate = true,
+ manual = false,
+ type = "text/javascript",
+ async = true,
+ crossOrigin,
+ referrerPolicy,
+ noModule,
+ defer,
+ document = defaultDocument,
+ attrs = {}
+ } = options;
+ const scriptTag = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ let _promise = null;
+ const loadScript = (waitForScriptLoad) => new Promise((resolve, reject) => {
+ const resolveWithElement = (el2) => {
+ scriptTag.value = el2;
+ resolve(el2);
+ return el2;
+ };
+ if (!document) {
+ resolve(false);
+ return;
+ }
+ let shouldAppend = false;
+ let el = document.querySelector(`script[src="${(0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(src)}"]`);
+ if (!el) {
+ el = document.createElement("script");
+ el.type = type;
+ el.async = async;
+ el.src = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(src);
+ if (defer)
+ el.defer = defer;
+ if (crossOrigin)
+ el.crossOrigin = crossOrigin;
+ if (noModule)
+ el.noModule = noModule;
+ if (referrerPolicy)
+ el.referrerPolicy = referrerPolicy;
+ Object.entries(attrs).forEach(([name, value]) => el == null ? void 0 : el.setAttribute(name, value));
+ shouldAppend = true;
+ } else if (el.hasAttribute("data-loaded")) {
+ resolveWithElement(el);
+ }
+ el.addEventListener("error", (event) => reject(event));
+ el.addEventListener("abort", (event) => reject(event));
+ el.addEventListener("load", () => {
+ el.setAttribute("data-loaded", "true");
+ onLoaded(el);
+ resolveWithElement(el);
+ });
+ if (shouldAppend)
+ el = document.head.appendChild(el);
+ if (!waitForScriptLoad)
+ resolveWithElement(el);
+ });
+ const load = (waitForScriptLoad = true) => {
+ if (!_promise)
+ _promise = loadScript(waitForScriptLoad);
+ return _promise;
+ };
+ const unload = () => {
+ if (!document)
+ return;
+ _promise = null;
+ if (scriptTag.value)
+ scriptTag.value = null;
+ const el = document.querySelector(`script[src="${(0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(src)}"]`);
+ if (el)
+ document.head.removeChild(el);
+ };
+ if (immediate && !manual)
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(load);
+ if (!manual)
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnUnmounted)(unload);
+ return { scriptTag, load, unload };
+}
+
+function checkOverflowScroll(ele) {
+ const style = window.getComputedStyle(ele);
+ if (style.overflowX === "scroll" || style.overflowY === "scroll" || style.overflowX === "auto" && ele.clientWidth < ele.scrollWidth || style.overflowY === "auto" && ele.clientHeight < ele.scrollHeight) {
+ return true;
+ } else {
+ const parent = ele.parentNode;
+ if (!parent || parent.tagName === "BODY")
+ return false;
+ return checkOverflowScroll(parent);
+ }
+}
+function preventDefault(rawEvent) {
+ const e = rawEvent || window.event;
+ const _target = e.target;
+ if (checkOverflowScroll(_target))
+ return false;
+ if (e.touches.length > 1)
+ return true;
+ if (e.preventDefault)
+ e.preventDefault();
+ return false;
+}
+function useScrollLock(element, initialState = false) {
+ const isLocked = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialState);
+ let stopTouchMoveListener = null;
+ let initialOverflow;
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(element), (el) => {
+ if (el) {
+ const ele = el;
+ initialOverflow = ele.style.overflow;
+ if (isLocked.value)
+ ele.style.overflow = "hidden";
+ }
+ }, {
+ immediate: true
+ });
+ const lock = () => {
+ const ele = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(element);
+ if (!ele || isLocked.value)
+ return;
+ if (_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isIOS) {
+ stopTouchMoveListener = useEventListener(
+ ele,
+ "touchmove",
+ (e) => {
+ preventDefault(e);
+ },
+ { passive: false }
+ );
+ }
+ ele.style.overflow = "hidden";
+ isLocked.value = true;
+ };
+ const unlock = () => {
+ const ele = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(element);
+ if (!ele || !isLocked.value)
+ return;
+ _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isIOS && (stopTouchMoveListener == null ? void 0 : stopTouchMoveListener());
+ ele.style.overflow = initialOverflow;
+ isLocked.value = false;
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(unlock);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return isLocked.value;
+ },
+ set(v) {
+ if (v)
+ lock();
+ else
+ unlock();
+ }
+ });
+}
+
+function useSessionStorage(key, initialValue, options = {}) {
+ const { window = defaultWindow } = options;
+ return useStorage(key, initialValue, window == null ? void 0 : window.sessionStorage, options);
+}
+
+var __defProp$5 = Object.defineProperty;
+var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols;
+var __hasOwnProp$5 = Object.prototype.hasOwnProperty;
+var __propIsEnum$5 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$5 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$5.call(b, prop))
+ __defNormalProp$5(a, prop, b[prop]);
+ if (__getOwnPropSymbols$5)
+ for (var prop of __getOwnPropSymbols$5(b)) {
+ if (__propIsEnum$5.call(b, prop))
+ __defNormalProp$5(a, prop, b[prop]);
+ }
+ return a;
+};
+function useShare(shareOptions = {}, options = {}) {
+ const { navigator = defaultNavigator } = options;
+ const _navigator = navigator;
+ const isSupported = useSupported(() => _navigator && "canShare" in _navigator);
+ const share = async (overrideOptions = {}) => {
+ if (isSupported.value) {
+ const data = __spreadValues$5(__spreadValues$5({}, (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(shareOptions)), (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(overrideOptions));
+ let granted = true;
+ if (data.files && _navigator.canShare)
+ granted = _navigator.canShare({ files: data.files });
+ if (granted)
+ return _navigator.share(data);
+ }
+ };
+ return {
+ isSupported,
+ share
+ };
+}
+
+const defaultSortFn = (source, compareFn) => source.sort(compareFn);
+const defaultCompare = (a, b) => a - b;
+function useSorted(...args) {
+ var _a, _b, _c, _d;
+ const [source] = args;
+ let compareFn = defaultCompare;
+ let options = {};
+ if (args.length === 2) {
+ if (typeof args[1] === "object") {
+ options = args[1];
+ compareFn = (_a = options.compareFn) != null ? _a : defaultCompare;
+ } else {
+ compareFn = (_b = args[1]) != null ? _b : defaultCompare;
+ }
+ } else if (args.length > 2) {
+ compareFn = (_c = args[1]) != null ? _c : defaultCompare;
+ options = (_d = args[2]) != null ? _d : {};
+ }
+ const {
+ dirty = false,
+ sortFn = defaultSortFn
+ } = options;
+ if (!dirty)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => sortFn([...(0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(source)], compareFn));
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watchEffect)(() => {
+ const result = sortFn((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(source), compareFn);
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.isRef)(source))
+ source.value = result;
+ else
+ source.splice(0, source.length, ...result);
+ });
+ return source;
+}
+
+function useSpeechRecognition(options = {}) {
+ const {
+ interimResults = true,
+ continuous = true,
+ window = defaultWindow
+ } = options;
+ const lang = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(options.lang || "en-US");
+ const isListening = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const isFinal = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const result = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("");
+ const error = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(void 0);
+ const toggle = (value = !isListening.value) => {
+ isListening.value = value;
+ };
+ const start = () => {
+ isListening.value = true;
+ };
+ const stop = () => {
+ isListening.value = false;
+ };
+ const SpeechRecognition = window && (window.SpeechRecognition || window.webkitSpeechRecognition);
+ const isSupported = useSupported(() => SpeechRecognition);
+ let recognition;
+ if (isSupported.value) {
+ recognition = new SpeechRecognition();
+ recognition.continuous = continuous;
+ recognition.interimResults = interimResults;
+ recognition.lang = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(lang);
+ recognition.onstart = () => {
+ isFinal.value = false;
+ };
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(lang, (lang2) => {
+ if (recognition && !isListening.value)
+ recognition.lang = lang2;
+ });
+ recognition.onresult = (event) => {
+ const transcript = Array.from(event.results).map((result2) => {
+ isFinal.value = result2.isFinal;
+ return result2[0];
+ }).map((result2) => result2.transcript).join("");
+ result.value = transcript;
+ error.value = void 0;
+ };
+ recognition.onerror = (event) => {
+ error.value = event;
+ };
+ recognition.onend = () => {
+ isListening.value = false;
+ recognition.lang = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(lang);
+ };
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(isListening, () => {
+ if (isListening.value)
+ recognition.start();
+ else
+ recognition.stop();
+ });
+ }
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => {
+ isListening.value = false;
+ });
+ return {
+ isSupported,
+ isListening,
+ isFinal,
+ recognition,
+ result,
+ error,
+ toggle,
+ start,
+ stop
+ };
+}
+
+function useSpeechSynthesis(text, options = {}) {
+ const {
+ pitch = 1,
+ rate = 1,
+ volume = 1,
+ window = defaultWindow
+ } = options;
+ const synth = window && window.speechSynthesis;
+ const isSupported = useSupported(() => synth);
+ const isPlaying = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const status = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("init");
+ const spokenText = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(text || "");
+ const lang = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(options.lang || "en-US");
+ const error = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(void 0);
+ const toggle = (value = !isPlaying.value) => {
+ isPlaying.value = value;
+ };
+ const bindEventsForUtterance = (utterance2) => {
+ utterance2.lang = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(lang);
+ utterance2.voice = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options.voice) || null;
+ utterance2.pitch = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(pitch);
+ utterance2.rate = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(rate);
+ utterance2.volume = volume;
+ utterance2.onstart = () => {
+ isPlaying.value = true;
+ status.value = "play";
+ };
+ utterance2.onpause = () => {
+ isPlaying.value = false;
+ status.value = "pause";
+ };
+ utterance2.onresume = () => {
+ isPlaying.value = true;
+ status.value = "play";
+ };
+ utterance2.onend = () => {
+ isPlaying.value = false;
+ status.value = "end";
+ };
+ utterance2.onerror = (event) => {
+ error.value = event;
+ };
+ };
+ const utterance = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ isPlaying.value = false;
+ status.value = "init";
+ const newUtterance = new SpeechSynthesisUtterance(spokenText.value);
+ bindEventsForUtterance(newUtterance);
+ return newUtterance;
+ });
+ const speak = () => {
+ synth.cancel();
+ utterance && synth.speak(utterance.value);
+ };
+ const stop = () => {
+ synth.cancel();
+ isPlaying.value = false;
+ };
+ if (isSupported.value) {
+ bindEventsForUtterance(utterance.value);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(lang, (lang2) => {
+ if (utterance.value && !isPlaying.value)
+ utterance.value.lang = lang2;
+ });
+ if (options.voice) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(options.voice, () => {
+ synth.cancel();
+ });
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(isPlaying, () => {
+ if (isPlaying.value)
+ synth.resume();
+ else
+ synth.pause();
+ });
+ }
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => {
+ isPlaying.value = false;
+ });
+ return {
+ isSupported,
+ isPlaying,
+ status,
+ utterance,
+ error,
+ stop,
+ toggle,
+ speak
+ };
+}
+
+function useStepper(steps, initialStep) {
+ const stepsRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(steps);
+ const stepNames = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => Array.isArray(stepsRef.value) ? stepsRef.value : Object.keys(stepsRef.value));
+ const index = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(stepNames.value.indexOf(initialStep != null ? initialStep : stepNames.value[0]));
+ const current = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => at(index.value));
+ const isFirst = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => index.value === 0);
+ const isLast = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => index.value === stepNames.value.length - 1);
+ const next = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => stepNames.value[index.value + 1]);
+ const previous = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => stepNames.value[index.value - 1]);
+ function at(index2) {
+ if (Array.isArray(stepsRef.value))
+ return stepsRef.value[index2];
+ return stepsRef.value[stepNames.value[index2]];
+ }
+ function get(step) {
+ if (!stepNames.value.includes(step))
+ return;
+ return at(stepNames.value.indexOf(step));
+ }
+ function goTo(step) {
+ if (stepNames.value.includes(step))
+ index.value = stepNames.value.indexOf(step);
+ }
+ function goToNext() {
+ if (isLast.value)
+ return;
+ index.value++;
+ }
+ function goToPrevious() {
+ if (isFirst.value)
+ return;
+ index.value--;
+ }
+ function goBackTo(step) {
+ if (isAfter(step))
+ goTo(step);
+ }
+ function isNext(step) {
+ return stepNames.value.indexOf(step) === index.value + 1;
+ }
+ function isPrevious(step) {
+ return stepNames.value.indexOf(step) === index.value - 1;
+ }
+ function isCurrent(step) {
+ return stepNames.value.indexOf(step) === index.value;
+ }
+ function isBefore(step) {
+ return index.value < stepNames.value.indexOf(step);
+ }
+ function isAfter(step) {
+ return index.value > stepNames.value.indexOf(step);
+ }
+ return {
+ steps: stepsRef,
+ stepNames,
+ index,
+ current,
+ next,
+ previous,
+ isFirst,
+ isLast,
+ at,
+ get,
+ goTo,
+ goToNext,
+ goToPrevious,
+ goBackTo,
+ isNext,
+ isPrevious,
+ isCurrent,
+ isBefore,
+ isAfter
+ };
+}
+
+var __defProp$4 = Object.defineProperty;
+var __getOwnPropSymbols$4 = Object.getOwnPropertySymbols;
+var __hasOwnProp$4 = Object.prototype.hasOwnProperty;
+var __propIsEnum$4 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$4 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$4.call(b, prop))
+ __defNormalProp$4(a, prop, b[prop]);
+ if (__getOwnPropSymbols$4)
+ for (var prop of __getOwnPropSymbols$4(b)) {
+ if (__propIsEnum$4.call(b, prop))
+ __defNormalProp$4(a, prop, b[prop]);
+ }
+ return a;
+};
+function useStorageAsync(key, initialValue, storage, options = {}) {
+ var _a;
+ const {
+ flush = "pre",
+ deep = true,
+ listenToStorageChanges = true,
+ writeDefaults = true,
+ mergeDefaults = false,
+ shallow,
+ window = defaultWindow,
+ eventFilter,
+ onError = (e) => {
+ console.error(e);
+ }
+ } = options;
+ const rawInit = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(initialValue);
+ const type = guessSerializerType(rawInit);
+ const data = (shallow ? vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef : vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialValue);
+ const serializer = (_a = options.serializer) != null ? _a : StorageSerializers[type];
+ if (!storage) {
+ try {
+ storage = getSSRHandler("getDefaultStorage", () => {
+ var _a2;
+ return (_a2 = defaultWindow) == null ? void 0 : _a2.localStorage;
+ })();
+ } catch (e) {
+ onError(e);
+ }
+ }
+ async function read(event) {
+ if (!storage || event && event.key !== key)
+ return;
+ try {
+ const rawValue = event ? event.newValue : await storage.getItem(key);
+ if (rawValue == null) {
+ data.value = rawInit;
+ if (writeDefaults && rawInit !== null)
+ await storage.setItem(key, await serializer.write(rawInit));
+ } else if (mergeDefaults) {
+ const value = await serializer.read(rawValue);
+ if (typeof mergeDefaults === "function")
+ data.value = mergeDefaults(value, rawInit);
+ else if (type === "object" && !Array.isArray(value))
+ data.value = __spreadValues$4(__spreadValues$4({}, rawInit), value);
+ else
+ data.value = value;
+ } else {
+ data.value = await serializer.read(rawValue);
+ }
+ } catch (e) {
+ onError(e);
+ }
+ }
+ read();
+ if (window && listenToStorageChanges)
+ useEventListener(window, "storage", (e) => Promise.resolve().then(() => read(e)));
+ if (storage) {
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.watchWithFilter)(
+ data,
+ async () => {
+ try {
+ if (data.value == null)
+ await storage.removeItem(key);
+ else
+ await storage.setItem(key, await serializer.write(data.value));
+ } catch (e) {
+ onError(e);
+ }
+ },
+ {
+ flush,
+ deep,
+ eventFilter
+ }
+ );
+ }
+ return data;
+}
+
+let _id = 0;
+function useStyleTag(css, options = {}) {
+ const isLoaded = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const {
+ document = defaultDocument,
+ immediate = true,
+ manual = false,
+ id = `vueuse_styletag_${++_id}`
+ } = options;
+ const cssRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(css);
+ let stop = () => {
+ };
+ const load = () => {
+ if (!document)
+ return;
+ const el = document.getElementById(id) || document.createElement("style");
+ if (!el.isConnected) {
+ el.id = id;
+ if (options.media)
+ el.media = options.media;
+ document.head.appendChild(el);
+ }
+ if (isLoaded.value)
+ return;
+ stop = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ cssRef,
+ (value) => {
+ el.textContent = value;
+ },
+ { immediate: true }
+ );
+ isLoaded.value = true;
+ };
+ const unload = () => {
+ if (!document || !isLoaded.value)
+ return;
+ stop();
+ document.head.removeChild(document.getElementById(id));
+ isLoaded.value = false;
+ };
+ if (immediate && !manual)
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(load);
+ if (!manual)
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(unload);
+ return {
+ id,
+ css: cssRef,
+ unload,
+ load,
+ isLoaded: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.readonly)(isLoaded)
+ };
+}
+
+function useSwipe(target, options = {}) {
+ const {
+ threshold = 50,
+ onSwipe,
+ onSwipeEnd,
+ onSwipeStart,
+ passive = true,
+ window = defaultWindow
+ } = options;
+ const coordsStart = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)({ x: 0, y: 0 });
+ const coordsEnd = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)({ x: 0, y: 0 });
+ const diffX = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => coordsStart.x - coordsEnd.x);
+ const diffY = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => coordsStart.y - coordsEnd.y);
+ const { max, abs } = Math;
+ const isThresholdExceeded = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => max(abs(diffX.value), abs(diffY.value)) >= threshold);
+ const isSwiping = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const direction = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ if (!isThresholdExceeded.value)
+ return "none";
+ if (abs(diffX.value) > abs(diffY.value)) {
+ return diffX.value > 0 ? "left" : "right";
+ } else {
+ return diffY.value > 0 ? "up" : "down";
+ }
+ });
+ const getTouchEventCoords = (e) => [e.touches[0].clientX, e.touches[0].clientY];
+ const updateCoordsStart = (x, y) => {
+ coordsStart.x = x;
+ coordsStart.y = y;
+ };
+ const updateCoordsEnd = (x, y) => {
+ coordsEnd.x = x;
+ coordsEnd.y = y;
+ };
+ let listenerOptions;
+ const isPassiveEventSupported = checkPassiveEventSupport(window == null ? void 0 : window.document);
+ if (!passive)
+ listenerOptions = isPassiveEventSupported ? { passive: false, capture: true } : { capture: true };
+ else
+ listenerOptions = isPassiveEventSupported ? { passive: true } : { capture: false };
+ const onTouchEnd = (e) => {
+ if (isSwiping.value)
+ onSwipeEnd == null ? void 0 : onSwipeEnd(e, direction.value);
+ isSwiping.value = false;
+ };
+ const stops = [
+ useEventListener(target, "touchstart", (e) => {
+ if (e.touches.length !== 1)
+ return;
+ if (listenerOptions.capture && !listenerOptions.passive)
+ e.preventDefault();
+ const [x, y] = getTouchEventCoords(e);
+ updateCoordsStart(x, y);
+ updateCoordsEnd(x, y);
+ onSwipeStart == null ? void 0 : onSwipeStart(e);
+ }, listenerOptions),
+ useEventListener(target, "touchmove", (e) => {
+ if (e.touches.length !== 1)
+ return;
+ const [x, y] = getTouchEventCoords(e);
+ updateCoordsEnd(x, y);
+ if (!isSwiping.value && isThresholdExceeded.value)
+ isSwiping.value = true;
+ if (isSwiping.value)
+ onSwipe == null ? void 0 : onSwipe(e);
+ }, listenerOptions),
+ useEventListener(target, ["touchend", "touchcancel"], onTouchEnd, listenerOptions)
+ ];
+ const stop = () => stops.forEach((s) => s());
+ return {
+ isPassiveEventSupported,
+ isSwiping,
+ direction,
+ coordsStart,
+ coordsEnd,
+ lengthX: diffX,
+ lengthY: diffY,
+ stop
+ };
+}
+function checkPassiveEventSupport(document) {
+ if (!document)
+ return false;
+ let supportsPassive = false;
+ const optionsBlock = {
+ get passive() {
+ supportsPassive = true;
+ return false;
+ }
+ };
+ document.addEventListener("x", _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop, optionsBlock);
+ document.removeEventListener("x", _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.noop);
+ return supportsPassive;
+}
+
+function useTemplateRefsList() {
+ const refs = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)([]);
+ refs.value.set = (el) => {
+ if (el)
+ refs.value.push(el);
+ };
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.onBeforeUpdate)(() => {
+ refs.value.length = 0;
+ });
+ return refs;
+}
+
+function useTextDirection(options = {}) {
+ const {
+ document = defaultDocument,
+ selector = "html",
+ observe = false,
+ initialValue = "ltr"
+ } = options;
+ function getValue() {
+ var _a, _b;
+ return (_b = (_a = document == null ? void 0 : document.querySelector(selector)) == null ? void 0 : _a.getAttribute("dir")) != null ? _b : initialValue;
+ }
+ const dir = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(getValue());
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(() => dir.value = getValue());
+ if (observe && document) {
+ useMutationObserver(
+ document.querySelector(selector),
+ () => dir.value = getValue(),
+ { attributes: true }
+ );
+ }
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return dir.value;
+ },
+ set(v) {
+ var _a, _b;
+ dir.value = v;
+ if (!document)
+ return;
+ if (dir.value)
+ (_a = document.querySelector(selector)) == null ? void 0 : _a.setAttribute("dir", dir.value);
+ else
+ (_b = document.querySelector(selector)) == null ? void 0 : _b.removeAttribute("dir");
+ }
+ });
+}
+
+function getRangesFromSelection(selection) {
+ var _a;
+ const rangeCount = (_a = selection.rangeCount) != null ? _a : 0;
+ return Array.from({ length: rangeCount }, (_, i) => selection.getRangeAt(i));
+}
+function useTextSelection(options = {}) {
+ const {
+ window = defaultWindow
+ } = options;
+ const selection = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const text = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ var _a, _b;
+ return (_b = (_a = selection.value) == null ? void 0 : _a.toString()) != null ? _b : "";
+ });
+ const ranges = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => selection.value ? getRangesFromSelection(selection.value) : []);
+ const rects = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => ranges.value.map((range) => range.getBoundingClientRect()));
+ function onSelectionChange() {
+ selection.value = null;
+ if (window)
+ selection.value = window.getSelection();
+ }
+ if (window)
+ useEventListener(window.document, "selectionchange", onSelectionChange);
+ return {
+ text,
+ rects,
+ ranges,
+ selection
+ };
+}
+
+function useTextareaAutosize(options) {
+ const textarea = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(options == null ? void 0 : options.element);
+ const input = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(options == null ? void 0 : options.input);
+ const textareaScrollHeight = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(1);
+ function triggerResize() {
+ var _a, _b;
+ if (!textarea.value)
+ return;
+ let height = "";
+ textarea.value.style.height = "1px";
+ textareaScrollHeight.value = (_a = textarea.value) == null ? void 0 : _a.scrollHeight;
+ if (options == null ? void 0 : options.styleTarget)
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options.styleTarget).style.height = `${textareaScrollHeight.value}px`;
+ else
+ height = `${textareaScrollHeight.value}px`;
+ textarea.value.style.height = height;
+ (_b = options == null ? void 0 : options.onResize) == null ? void 0 : _b.call(options);
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)([input, textarea], () => (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.nextTick)(triggerResize), { immediate: true });
+ useResizeObserver(textarea, () => triggerResize());
+ if (options == null ? void 0 : options.watch)
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(options.watch, triggerResize, { immediate: true, deep: true });
+ return {
+ textarea,
+ input,
+ triggerResize
+ };
+}
+
+var __defProp$3 = Object.defineProperty;
+var __defProps$1 = Object.defineProperties;
+var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols;
+var __hasOwnProp$3 = Object.prototype.hasOwnProperty;
+var __propIsEnum$3 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$3 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$3.call(b, prop))
+ __defNormalProp$3(a, prop, b[prop]);
+ if (__getOwnPropSymbols$3)
+ for (var prop of __getOwnPropSymbols$3(b)) {
+ if (__propIsEnum$3.call(b, prop))
+ __defNormalProp$3(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$1 = (a, b) => __defProps$1(a, __getOwnPropDescs$1(b));
+function useThrottledRefHistory(source, options = {}) {
+ const { throttle = 200, trailing = true } = options;
+ const filter = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.throttleFilter)(throttle, trailing);
+ const history = useRefHistory(source, __spreadProps$1(__spreadValues$3({}, options), { eventFilter: filter }));
+ return __spreadValues$3({}, history);
+}
+
+var __defProp$2 = Object.defineProperty;
+var __getOwnPropSymbols$2 = Object.getOwnPropertySymbols;
+var __hasOwnProp$2 = Object.prototype.hasOwnProperty;
+var __propIsEnum$2 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$2 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$2.call(b, prop))
+ __defNormalProp$2(a, prop, b[prop]);
+ if (__getOwnPropSymbols$2)
+ for (var prop of __getOwnPropSymbols$2(b)) {
+ if (__propIsEnum$2.call(b, prop))
+ __defNormalProp$2(a, prop, b[prop]);
+ }
+ return a;
+};
+var __objRest = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$2.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$2)
+ for (var prop of __getOwnPropSymbols$2(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$2.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+const DEFAULT_UNITS = [
+ { max: 6e4, value: 1e3, name: "second" },
+ { max: 276e4, value: 6e4, name: "minute" },
+ { max: 72e6, value: 36e5, name: "hour" },
+ { max: 5184e5, value: 864e5, name: "day" },
+ { max: 24192e5, value: 6048e5, name: "week" },
+ { max: 28512e6, value: 2592e6, name: "month" },
+ { max: Number.POSITIVE_INFINITY, value: 31536e6, name: "year" }
+];
+const DEFAULT_MESSAGES = {
+ justNow: "just now",
+ past: (n) => n.match(/\d/) ? `${n} ago` : n,
+ future: (n) => n.match(/\d/) ? `in ${n}` : n,
+ month: (n, past) => n === 1 ? past ? "last month" : "next month" : `${n} month${n > 1 ? "s" : ""}`,
+ year: (n, past) => n === 1 ? past ? "last year" : "next year" : `${n} year${n > 1 ? "s" : ""}`,
+ day: (n, past) => n === 1 ? past ? "yesterday" : "tomorrow" : `${n} day${n > 1 ? "s" : ""}`,
+ week: (n, past) => n === 1 ? past ? "last week" : "next week" : `${n} week${n > 1 ? "s" : ""}`,
+ hour: (n) => `${n} hour${n > 1 ? "s" : ""}`,
+ minute: (n) => `${n} minute${n > 1 ? "s" : ""}`,
+ second: (n) => `${n} second${n > 1 ? "s" : ""}`,
+ invalid: ""
+};
+function DEFAULT_FORMATTER(date) {
+ return date.toISOString().slice(0, 10);
+}
+function useTimeAgo(time, options = {}) {
+ const {
+ controls: exposeControls = false,
+ updateInterval = 3e4
+ } = options;
+ const _a = useNow({ interval: updateInterval, controls: true }), { now } = _a, controls = __objRest(_a, ["now"]);
+ const timeAgo = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => formatTimeAgo(new Date((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(time)), options, (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(now)));
+ if (exposeControls) {
+ return __spreadValues$2({
+ timeAgo
+ }, controls);
+ } else {
+ return timeAgo;
+ }
+}
+function formatTimeAgo(from, options = {}, now = Date.now()) {
+ var _a;
+ const {
+ max,
+ messages = DEFAULT_MESSAGES,
+ fullDateFormatter = DEFAULT_FORMATTER,
+ units = DEFAULT_UNITS,
+ showSecond = false,
+ rounding = "round"
+ } = options;
+ const roundFn = typeof rounding === "number" ? (n) => +n.toFixed(rounding) : Math[rounding];
+ const diff = +now - +from;
+ const absDiff = Math.abs(diff);
+ function getValue(diff2, unit) {
+ return roundFn(Math.abs(diff2) / unit.value);
+ }
+ function format(diff2, unit) {
+ const val = getValue(diff2, unit);
+ const past = diff2 > 0;
+ const str = applyFormat(unit.name, val, past);
+ return applyFormat(past ? "past" : "future", str, past);
+ }
+ function applyFormat(name, val, isPast) {
+ const formatter = messages[name];
+ if (typeof formatter === "function")
+ return formatter(val, isPast);
+ return formatter.replace("{0}", val.toString());
+ }
+ if (absDiff < 6e4 && !showSecond)
+ return messages.justNow;
+ if (typeof max === "number" && absDiff > max)
+ return fullDateFormatter(new Date(from));
+ if (typeof max === "string") {
+ const unitMax = (_a = units.find((i) => i.name === max)) == null ? void 0 : _a.max;
+ if (unitMax && absDiff > unitMax)
+ return fullDateFormatter(new Date(from));
+ }
+ for (const [idx, unit] of units.entries()) {
+ const val = getValue(diff, unit);
+ if (val <= 0 && units[idx - 1])
+ return format(diff, units[idx - 1]);
+ if (absDiff < unit.max)
+ return format(diff, unit);
+ }
+ return messages.invalid;
+}
+
+function useTimeoutPoll(fn, interval, timeoutPollOptions) {
+ const { start } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useTimeoutFn)(loop, interval, { immediate: false });
+ const isActive = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ async function loop() {
+ if (!isActive.value)
+ return;
+ await fn();
+ start();
+ }
+ function resume() {
+ if (!isActive.value) {
+ isActive.value = true;
+ loop();
+ }
+ }
+ function pause() {
+ isActive.value = false;
+ }
+ if (timeoutPollOptions == null ? void 0 : timeoutPollOptions.immediate)
+ resume();
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(pause);
+ return {
+ isActive,
+ pause,
+ resume
+ };
+}
+
+var __defProp$1 = Object.defineProperty;
+var __getOwnPropSymbols$1 = Object.getOwnPropertySymbols;
+var __hasOwnProp$1 = Object.prototype.hasOwnProperty;
+var __propIsEnum$1 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$1 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$1.call(b, prop))
+ __defNormalProp$1(a, prop, b[prop]);
+ if (__getOwnPropSymbols$1)
+ for (var prop of __getOwnPropSymbols$1(b)) {
+ if (__propIsEnum$1.call(b, prop))
+ __defNormalProp$1(a, prop, b[prop]);
+ }
+ return a;
+};
+function useTimestamp(options = {}) {
+ const {
+ controls: exposeControls = false,
+ offset = 0,
+ immediate = true,
+ interval = "requestAnimationFrame",
+ callback
+ } = options;
+ const ts = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.timestamp)() + offset);
+ const update = () => ts.value = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.timestamp)() + offset;
+ const cb = callback ? () => {
+ update();
+ callback(ts.value);
+ } : update;
+ const controls = interval === "requestAnimationFrame" ? useRafFn(cb, { immediate }) : (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useIntervalFn)(cb, interval, { immediate });
+ if (exposeControls) {
+ return __spreadValues$1({
+ timestamp: ts
+ }, controls);
+ } else {
+ return ts;
+ }
+}
+
+function useTitle(newTitle = null, options = {}) {
+ var _a, _b;
+ const {
+ document = defaultDocument
+ } = options;
+ const title = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)((_a = newTitle != null ? newTitle : document == null ? void 0 : document.title) != null ? _a : null);
+ const isReadonly = newTitle && typeof newTitle === "function";
+ function format(t) {
+ if (!("titleTemplate" in options))
+ return t;
+ const template = options.titleTemplate || "%s";
+ return typeof template === "function" ? template(t) : (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(template).replace(/%s/g, t);
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ title,
+ (t, o) => {
+ if (t !== o && document)
+ document.title = format(typeof t === "string" ? t : "");
+ },
+ { immediate: true }
+ );
+ if (options.observe && !options.titleTemplate && document && !isReadonly) {
+ useMutationObserver(
+ (_b = document.head) == null ? void 0 : _b.querySelector("title"),
+ () => {
+ if (document && document.title !== title.value)
+ title.value = format(document.title);
+ },
+ { childList: true }
+ );
+ }
+ return title;
+}
+
+var __defProp = Object.defineProperty;
+var __defProps = Object.defineProperties;
+var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols = Object.getOwnPropertySymbols;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __propIsEnum = Object.prototype.propertyIsEnumerable;
+var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp.call(b, prop))
+ __defNormalProp(a, prop, b[prop]);
+ if (__getOwnPropSymbols)
+ for (var prop of __getOwnPropSymbols(b)) {
+ if (__propIsEnum.call(b, prop))
+ __defNormalProp(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
+const _TransitionPresets = {
+ easeInSine: [0.12, 0, 0.39, 0],
+ easeOutSine: [0.61, 1, 0.88, 1],
+ easeInOutSine: [0.37, 0, 0.63, 1],
+ easeInQuad: [0.11, 0, 0.5, 0],
+ easeOutQuad: [0.5, 1, 0.89, 1],
+ easeInOutQuad: [0.45, 0, 0.55, 1],
+ easeInCubic: [0.32, 0, 0.67, 0],
+ easeOutCubic: [0.33, 1, 0.68, 1],
+ easeInOutCubic: [0.65, 0, 0.35, 1],
+ easeInQuart: [0.5, 0, 0.75, 0],
+ easeOutQuart: [0.25, 1, 0.5, 1],
+ easeInOutQuart: [0.76, 0, 0.24, 1],
+ easeInQuint: [0.64, 0, 0.78, 0],
+ easeOutQuint: [0.22, 1, 0.36, 1],
+ easeInOutQuint: [0.83, 0, 0.17, 1],
+ easeInExpo: [0.7, 0, 0.84, 0],
+ easeOutExpo: [0.16, 1, 0.3, 1],
+ easeInOutExpo: [0.87, 0, 0.13, 1],
+ easeInCirc: [0.55, 0, 1, 0.45],
+ easeOutCirc: [0, 0.55, 0.45, 1],
+ easeInOutCirc: [0.85, 0, 0.15, 1],
+ easeInBack: [0.36, 0, 0.66, -0.56],
+ easeOutBack: [0.34, 1.56, 0.64, 1],
+ easeInOutBack: [0.68, -0.6, 0.32, 1.6]
+};
+const TransitionPresets = /* @__PURE__ */ Object.assign({}, { linear: _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.identity }, _TransitionPresets);
+function createEasingFunction([p0, p1, p2, p3]) {
+ const a = (a1, a2) => 1 - 3 * a2 + 3 * a1;
+ const b = (a1, a2) => 3 * a2 - 6 * a1;
+ const c = (a1) => 3 * a1;
+ const calcBezier = (t, a1, a2) => ((a(a1, a2) * t + b(a1, a2)) * t + c(a1)) * t;
+ const getSlope = (t, a1, a2) => 3 * a(a1, a2) * t * t + 2 * b(a1, a2) * t + c(a1);
+ const getTforX = (x) => {
+ let aGuessT = x;
+ for (let i = 0; i < 4; ++i) {
+ const currentSlope = getSlope(aGuessT, p0, p2);
+ if (currentSlope === 0)
+ return aGuessT;
+ const currentX = calcBezier(aGuessT, p0, p2) - x;
+ aGuessT -= currentX / currentSlope;
+ }
+ return aGuessT;
+ };
+ return (x) => p0 === p1 && p2 === p3 ? x : calcBezier(getTforX(x), p1, p3);
+}
+function lerp(a, b, alpha) {
+ return a + alpha * (b - a);
+}
+function toVec(t) {
+ return (typeof t === "number" ? [t] : t) || [];
+}
+function executeTransition(source, from, to, options = {}) {
+ var _a, _b;
+ const fromVal = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(from);
+ const toVal = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(to);
+ const v1 = toVec(fromVal);
+ const v2 = toVec(toVal);
+ const duration = (_a = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options.duration)) != null ? _a : 1e3;
+ const startedAt = Date.now();
+ const endAt = Date.now() + duration;
+ const trans = typeof options.transition === "function" ? options.transition : (_b = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options.transition)) != null ? _b : _vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.identity;
+ const ease = typeof trans === "function" ? trans : createEasingFunction(trans);
+ return new Promise((resolve) => {
+ source.value = fromVal;
+ const tick = () => {
+ var _a2;
+ if ((_a2 = options.abort) == null ? void 0 : _a2.call(options)) {
+ resolve();
+ return;
+ }
+ const now = Date.now();
+ const alpha = ease((now - startedAt) / duration);
+ const arr = toVec(source.value).map((n, i) => lerp(v1[i], v2[i], alpha));
+ if (Array.isArray(source.value))
+ source.value = arr.map((n, i) => {
+ var _a3, _b2;
+ return lerp((_a3 = v1[i]) != null ? _a3 : 0, (_b2 = v2[i]) != null ? _b2 : 0, alpha);
+ });
+ else if (typeof source.value === "number")
+ source.value = arr[0];
+ if (now < endAt) {
+ requestAnimationFrame(tick);
+ } else {
+ source.value = toVal;
+ resolve();
+ }
+ };
+ tick();
+ });
+}
+function useTransition(source, options = {}) {
+ let currentId = 0;
+ const sourceVal = () => {
+ const v = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(source);
+ return typeof v === "number" ? v : v.map(_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue);
+ };
+ const outputRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(sourceVal());
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(sourceVal, async (to) => {
+ var _a, _b;
+ if ((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options.disabled))
+ return;
+ const id = ++currentId;
+ if (options.delay)
+ await (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.promiseTimeout)((0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options.delay));
+ if (id !== currentId)
+ return;
+ const toVal = Array.isArray(to) ? to.map(_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue) : (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(to);
+ (_a = options.onStarted) == null ? void 0 : _a.call(options);
+ await executeTransition(outputRef, outputRef.value, toVal, __spreadProps(__spreadValues({}, options), {
+ abort: () => {
+ var _a2;
+ return id !== currentId || ((_a2 = options.abort) == null ? void 0 : _a2.call(options));
+ }
+ }));
+ (_b = options.onFinished) == null ? void 0 : _b.call(options);
+ }, { deep: true });
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(() => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options.disabled), (disabled) => {
+ if (disabled) {
+ currentId++;
+ outputRef.value = sourceVal();
+ }
+ });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => {
+ currentId++;
+ });
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toValue)(options.disabled) ? sourceVal() : outputRef.value);
+}
+
+function useUrlSearchParams(mode = "history", options = {}) {
+ const {
+ initialValue = {},
+ removeNullishValues = true,
+ removeFalsyValues = false,
+ write: enableWrite = true,
+ window = defaultWindow
+ } = options;
+ if (!window)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)(initialValue);
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.reactive)({});
+ function getRawParams() {
+ if (mode === "history") {
+ return window.location.search || "";
+ } else if (mode === "hash") {
+ const hash = window.location.hash || "";
+ const index = hash.indexOf("?");
+ return index > 0 ? hash.slice(index) : "";
+ } else {
+ return (window.location.hash || "").replace(/^#/, "");
+ }
+ }
+ function constructQuery(params) {
+ const stringified = params.toString();
+ if (mode === "history")
+ return `${stringified ? `?${stringified}` : ""}${window.location.hash || ""}`;
+ if (mode === "hash-params")
+ return `${window.location.search || ""}${stringified ? `#${stringified}` : ""}`;
+ const hash = window.location.hash || "#";
+ const index = hash.indexOf("?");
+ if (index > 0)
+ return `${hash.slice(0, index)}${stringified ? `?${stringified}` : ""}`;
+ return `${hash}${stringified ? `?${stringified}` : ""}`;
+ }
+ function read() {
+ return new URLSearchParams(getRawParams());
+ }
+ function updateState(params) {
+ const unusedKeys = new Set(Object.keys(state));
+ for (const key of params.keys()) {
+ const paramsForKey = params.getAll(key);
+ state[key] = paramsForKey.length > 1 ? paramsForKey : params.get(key) || "";
+ unusedKeys.delete(key);
+ }
+ Array.from(unusedKeys).forEach((key) => delete state[key]);
+ }
+ const { pause, resume } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.pausableWatch)(
+ state,
+ () => {
+ const params = new URLSearchParams("");
+ Object.keys(state).forEach((key) => {
+ const mapEntry = state[key];
+ if (Array.isArray(mapEntry))
+ mapEntry.forEach((value) => params.append(key, value));
+ else if (removeNullishValues && mapEntry == null)
+ params.delete(key);
+ else if (removeFalsyValues && !mapEntry)
+ params.delete(key);
+ else
+ params.set(key, mapEntry);
+ });
+ write(params);
+ },
+ { deep: true }
+ );
+ function write(params, shouldUpdate) {
+ pause();
+ if (shouldUpdate)
+ updateState(params);
+ window.history.replaceState(
+ window.history.state,
+ window.document.title,
+ window.location.pathname + constructQuery(params)
+ );
+ resume();
+ }
+ function onChanged() {
+ if (!enableWrite)
+ return;
+ write(read(), true);
+ }
+ useEventListener(window, "popstate", onChanged, false);
+ if (mode !== "history")
+ useEventListener(window, "hashchange", onChanged, false);
+ const initial = read();
+ if (initial.keys().next().value)
+ updateState(initial);
+ else
+ Object.assign(state, initialValue);
+ return state;
+}
+
+function useUserMedia(options = {}) {
+ var _a, _b;
+ const enabled = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)((_a = options.enabled) != null ? _a : false);
+ const autoSwitch = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)((_b = options.autoSwitch) != null ? _b : true);
+ const constraints = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(options.constraints);
+ const { navigator = defaultNavigator } = options;
+ const isSupported = useSupported(() => {
+ var _a2;
+ return (_a2 = navigator == null ? void 0 : navigator.mediaDevices) == null ? void 0 : _a2.getUserMedia;
+ });
+ const stream = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)();
+ function getDeviceOptions(type) {
+ switch (type) {
+ case "video": {
+ if (constraints.value)
+ return constraints.value.video || false;
+ break;
+ }
+ case "audio": {
+ if (constraints.value)
+ return constraints.value.audio || false;
+ break;
+ }
+ }
+ }
+ async function _start() {
+ if (!isSupported.value || stream.value)
+ return;
+ stream.value = await navigator.mediaDevices.getUserMedia({
+ video: getDeviceOptions("video"),
+ audio: getDeviceOptions("audio")
+ });
+ return stream.value;
+ }
+ function _stop() {
+ var _a2;
+ (_a2 = stream.value) == null ? void 0 : _a2.getTracks().forEach((t) => t.stop());
+ stream.value = void 0;
+ }
+ function stop() {
+ _stop();
+ enabled.value = false;
+ }
+ async function start() {
+ await _start();
+ if (stream.value)
+ enabled.value = true;
+ return stream.value;
+ }
+ async function restart() {
+ _stop();
+ return await start();
+ }
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ enabled,
+ (v) => {
+ if (v)
+ _start();
+ else
+ _stop();
+ },
+ { immediate: true }
+ );
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ constraints,
+ () => {
+ if (autoSwitch.value && stream.value)
+ restart();
+ },
+ { immediate: true }
+ );
+ return {
+ isSupported,
+ stream,
+ start,
+ stop,
+ restart,
+ constraints,
+ enabled,
+ autoSwitch
+ };
+}
+
+function useVModel(props, key, emit, options = {}) {
+ var _a, _b, _c, _d, _e;
+ const {
+ clone = false,
+ passive = false,
+ eventName,
+ deep = false,
+ defaultValue,
+ shouldEmit
+ } = options;
+ const vm = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.getCurrentInstance)();
+ const _emit = emit || (vm == null ? void 0 : vm.emit) || ((_a = vm == null ? void 0 : vm.$emit) == null ? void 0 : _a.bind(vm)) || ((_c = (_b = vm == null ? void 0 : vm.proxy) == null ? void 0 : _b.$emit) == null ? void 0 : _c.bind(vm == null ? void 0 : vm.proxy));
+ let event = eventName;
+ if (!key) {
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_1__.isVue2) {
+ const modelOptions = (_e = (_d = vm == null ? void 0 : vm.proxy) == null ? void 0 : _d.$options) == null ? void 0 : _e.model;
+ key = (modelOptions == null ? void 0 : modelOptions.value) || "value";
+ if (!eventName)
+ event = (modelOptions == null ? void 0 : modelOptions.event) || "input";
+ } else {
+ key = "modelValue";
+ }
+ }
+ event = event || `update:${key.toString()}`;
+ const cloneFn = (val) => !clone ? val : typeof clone === "function" ? clone(val) : cloneFnJSON(val);
+ const getValue = () => (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.isDef)(props[key]) ? cloneFn(props[key]) : defaultValue;
+ const triggerEmit = (value) => {
+ if (shouldEmit) {
+ if (shouldEmit(value))
+ _emit(event, value);
+ } else {
+ _emit(event, value);
+ }
+ };
+ if (passive) {
+ const initialValue = getValue();
+ const proxy = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialValue);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ () => props[key],
+ (v) => proxy.value = cloneFn(v)
+ );
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(
+ proxy,
+ (v) => {
+ if (v !== props[key] || deep)
+ triggerEmit(v);
+ },
+ { deep }
+ );
+ return proxy;
+ } else {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)({
+ get() {
+ return getValue();
+ },
+ set(value) {
+ triggerEmit(value);
+ }
+ });
+ }
+}
+
+function useVModels(props, emit, options = {}) {
+ const ret = {};
+ for (const key in props)
+ ret[key] = useVModel(props, key, emit, options);
+ return ret;
+}
+
+function useVibrate(options) {
+ const {
+ pattern = [],
+ interval = 0,
+ navigator = defaultNavigator
+ } = options || {};
+ const isSupported = useSupported(() => typeof navigator !== "undefined" && "vibrate" in navigator);
+ const patternRef = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(pattern);
+ let intervalControls;
+ const vibrate = (pattern2 = patternRef.value) => {
+ if (isSupported.value)
+ navigator.vibrate(pattern2);
+ };
+ const stop = () => {
+ if (isSupported.value)
+ navigator.vibrate(0);
+ intervalControls == null ? void 0 : intervalControls.pause();
+ };
+ if (interval > 0) {
+ intervalControls = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useIntervalFn)(
+ vibrate,
+ interval,
+ {
+ immediate: false,
+ immediateCallback: false
+ }
+ );
+ }
+ return {
+ isSupported,
+ pattern,
+ intervalControls,
+ vibrate,
+ stop
+ };
+}
+
+function useVirtualList(list, options) {
+ const { containerStyle, wrapperProps, scrollTo, calculateRange, currentList, containerRef } = "itemHeight" in options ? useVerticalVirtualList(options, list) : useHorizontalVirtualList(options, list);
+ return {
+ list: currentList,
+ scrollTo,
+ containerProps: {
+ ref: containerRef,
+ onScroll: () => {
+ calculateRange();
+ },
+ style: containerStyle
+ },
+ wrapperProps
+ };
+}
+function useVirtualListResources(list) {
+ const containerRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const size = useElementSize(containerRef);
+ const currentList = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)([]);
+ const source = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)(list);
+ const state = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)({ start: 0, end: 10 });
+ return { state, source, currentList, size, containerRef };
+}
+function createGetViewCapacity(state, source, itemSize) {
+ return (containerSize) => {
+ if (typeof itemSize === "number")
+ return Math.ceil(containerSize / itemSize);
+ const { start = 0 } = state.value;
+ let sum = 0;
+ let capacity = 0;
+ for (let i = start; i < source.value.length; i++) {
+ const size = itemSize(i);
+ sum += size;
+ capacity = i;
+ if (sum > containerSize)
+ break;
+ }
+ return capacity - start;
+ };
+}
+function createGetOffset(source, itemSize) {
+ return (scrollDirection) => {
+ if (typeof itemSize === "number")
+ return Math.floor(scrollDirection / itemSize) + 1;
+ let sum = 0;
+ let offset = 0;
+ for (let i = 0; i < source.value.length; i++) {
+ const size = itemSize(i);
+ sum += size;
+ if (sum >= scrollDirection) {
+ offset = i;
+ break;
+ }
+ }
+ return offset + 1;
+ };
+}
+function createCalculateRange(type, overscan, getOffset, getViewCapacity, { containerRef, state, currentList, source }) {
+ return () => {
+ const element = containerRef.value;
+ if (element) {
+ const offset = getOffset(type === "vertical" ? element.scrollTop : element.scrollLeft);
+ const viewCapacity = getViewCapacity(type === "vertical" ? element.clientHeight : element.clientWidth);
+ const from = offset - overscan;
+ const to = offset + viewCapacity + overscan;
+ state.value = {
+ start: from < 0 ? 0 : from,
+ end: to > source.value.length ? source.value.length : to
+ };
+ currentList.value = source.value.slice(state.value.start, state.value.end).map((ele, index) => ({
+ data: ele,
+ index: index + state.value.start
+ }));
+ }
+ };
+}
+function createGetDistance(itemSize, source) {
+ return (index) => {
+ if (typeof itemSize === "number") {
+ const size2 = index * itemSize;
+ return size2;
+ }
+ const size = source.value.slice(0, index).reduce((sum, _, i) => sum + itemSize(i), 0);
+ return size;
+ };
+}
+function useWatchForSizes(size, list, calculateRange) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)([size.width, size.height, list], () => {
+ calculateRange();
+ });
+}
+function createComputedTotalSize(itemSize, source) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ if (typeof itemSize === "number")
+ return source.value.length * itemSize;
+ return source.value.reduce((sum, _, index) => sum + itemSize(index), 0);
+ });
+}
+const scrollToDictionaryForElementScrollKey = {
+ horizontal: "scrollLeft",
+ vertical: "scrollTop"
+};
+function createScrollTo(type, calculateRange, getDistance, containerRef) {
+ return (index) => {
+ if (containerRef.value) {
+ containerRef.value[scrollToDictionaryForElementScrollKey[type]] = getDistance(index);
+ calculateRange();
+ }
+ };
+}
+function useHorizontalVirtualList(options, list) {
+ const resources = useVirtualListResources(list);
+ const { state, source, currentList, size, containerRef } = resources;
+ const containerStyle = { overflowX: "auto" };
+ const { itemWidth, overscan = 5 } = options;
+ const getViewCapacity = createGetViewCapacity(state, source, itemWidth);
+ const getOffset = createGetOffset(source, itemWidth);
+ const calculateRange = createCalculateRange("horizontal", overscan, getOffset, getViewCapacity, resources);
+ const getDistanceLeft = createGetDistance(itemWidth, source);
+ const offsetLeft = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => getDistanceLeft(state.value.start));
+ const totalWidth = createComputedTotalSize(itemWidth, source);
+ useWatchForSizes(size, list, calculateRange);
+ const scrollTo = createScrollTo("horizontal", calculateRange, getDistanceLeft, containerRef);
+ const wrapperProps = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ return {
+ style: {
+ height: "100%",
+ width: `${totalWidth.value - offsetLeft.value}px`,
+ marginLeft: `${offsetLeft.value}px`,
+ display: "flex"
+ }
+ };
+ });
+ return {
+ scrollTo,
+ calculateRange,
+ wrapperProps,
+ containerStyle,
+ currentList,
+ containerRef
+ };
+}
+function useVerticalVirtualList(options, list) {
+ const resources = useVirtualListResources(list);
+ const { state, source, currentList, size, containerRef } = resources;
+ const containerStyle = { overflowY: "auto" };
+ const { itemHeight, overscan = 5 } = options;
+ const getViewCapacity = createGetViewCapacity(state, source, itemHeight);
+ const getOffset = createGetOffset(source, itemHeight);
+ const calculateRange = createCalculateRange("vertical", overscan, getOffset, getViewCapacity, resources);
+ const getDistanceTop = createGetDistance(itemHeight, source);
+ const offsetTop = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => getDistanceTop(state.value.start));
+ const totalHeight = createComputedTotalSize(itemHeight, source);
+ useWatchForSizes(size, list, calculateRange);
+ const scrollTo = createScrollTo("vertical", calculateRange, getDistanceTop, containerRef);
+ const wrapperProps = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.computed)(() => {
+ return {
+ style: {
+ width: "100%",
+ height: `${totalHeight.value - offsetTop.value}px`,
+ marginTop: `${offsetTop.value}px`
+ }
+ };
+ });
+ return {
+ calculateRange,
+ scrollTo,
+ containerStyle,
+ wrapperProps,
+ currentList,
+ containerRef
+ };
+}
+
+function useWakeLock(options = {}) {
+ const {
+ navigator = defaultNavigator,
+ document = defaultDocument
+ } = options;
+ let wakeLock;
+ const isSupported = useSupported(() => navigator && "wakeLock" in navigator);
+ const isActive = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ async function onVisibilityChange() {
+ if (!isSupported.value || !wakeLock)
+ return;
+ if (document && document.visibilityState === "visible")
+ wakeLock = await navigator.wakeLock.request("screen");
+ isActive.value = !wakeLock.released;
+ }
+ if (document)
+ useEventListener(document, "visibilitychange", onVisibilityChange, { passive: true });
+ async function request(type) {
+ if (!isSupported.value)
+ return;
+ wakeLock = await navigator.wakeLock.request(type);
+ isActive.value = !wakeLock.released;
+ }
+ async function release() {
+ if (!isSupported.value || !wakeLock)
+ return;
+ await wakeLock.release();
+ isActive.value = !wakeLock.released;
+ wakeLock = null;
+ }
+ return {
+ isSupported,
+ isActive,
+ request,
+ release
+ };
+}
+
+function useWebNotification(defaultOptions = {}) {
+ const {
+ window = defaultWindow
+ } = defaultOptions;
+ const isSupported = useSupported(() => !!window && "Notification" in window);
+ const notification = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const requestPermission = async () => {
+ if (!isSupported.value)
+ return;
+ if ("permission" in Notification && Notification.permission !== "denied")
+ await Notification.requestPermission();
+ };
+ const { on: onClick, trigger: clickTrigger } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const { on: onShow, trigger: showTrigger } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const { on: onError, trigger: errorTrigger } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const { on: onClose, trigger: closeTrigger } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.createEventHook)();
+ const show = async (overrides) => {
+ if (!isSupported.value)
+ return;
+ await requestPermission();
+ const options = Object.assign({}, defaultOptions, overrides);
+ notification.value = new Notification(options.title || "", options);
+ notification.value.onclick = clickTrigger;
+ notification.value.onshow = showTrigger;
+ notification.value.onerror = errorTrigger;
+ notification.value.onclose = closeTrigger;
+ return notification.value;
+ };
+ const close = () => {
+ if (notification.value)
+ notification.value.close();
+ notification.value = null;
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(async () => {
+ if (isSupported.value)
+ await requestPermission();
+ });
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(close);
+ if (isSupported.value && window) {
+ const document = window.document;
+ useEventListener(document, "visibilitychange", (e) => {
+ e.preventDefault();
+ if (document.visibilityState === "visible") {
+ close();
+ }
+ });
+ }
+ return {
+ isSupported,
+ notification,
+ show,
+ close,
+ onClick,
+ onShow,
+ onError,
+ onClose
+ };
+}
+
+const DEFAULT_PING_MESSAGE = "ping";
+function resolveNestedOptions(options) {
+ if (options === true)
+ return {};
+ return options;
+}
+function useWebSocket(url, options = {}) {
+ const {
+ onConnected,
+ onDisconnected,
+ onError,
+ onMessage,
+ immediate = true,
+ autoClose = true,
+ protocols = []
+ } = options;
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const status = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("CLOSED");
+ const wsRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const urlRef = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.toRef)(url);
+ let heartbeatPause;
+ let heartbeatResume;
+ let explicitlyClosed = false;
+ let retried = 0;
+ let bufferedData = [];
+ let pongTimeoutWait;
+ const close = (code = 1e3, reason) => {
+ if (!wsRef.value)
+ return;
+ explicitlyClosed = true;
+ heartbeatPause == null ? void 0 : heartbeatPause();
+ wsRef.value.close(code, reason);
+ };
+ const _sendBuffer = () => {
+ if (bufferedData.length && wsRef.value && status.value === "OPEN") {
+ for (const buffer of bufferedData)
+ wsRef.value.send(buffer);
+ bufferedData = [];
+ }
+ };
+ const resetHeartbeat = () => {
+ clearTimeout(pongTimeoutWait);
+ pongTimeoutWait = void 0;
+ };
+ const send = (data2, useBuffer = true) => {
+ if (!wsRef.value || status.value !== "OPEN") {
+ if (useBuffer)
+ bufferedData.push(data2);
+ return false;
+ }
+ _sendBuffer();
+ wsRef.value.send(data2);
+ return true;
+ };
+ const _init = () => {
+ if (explicitlyClosed || typeof urlRef.value === "undefined")
+ return;
+ const ws = new WebSocket(urlRef.value, protocols);
+ wsRef.value = ws;
+ status.value = "CONNECTING";
+ ws.onopen = () => {
+ status.value = "OPEN";
+ onConnected == null ? void 0 : onConnected(ws);
+ heartbeatResume == null ? void 0 : heartbeatResume();
+ _sendBuffer();
+ };
+ ws.onclose = (ev) => {
+ status.value = "CLOSED";
+ wsRef.value = void 0;
+ onDisconnected == null ? void 0 : onDisconnected(ws, ev);
+ if (!explicitlyClosed && options.autoReconnect) {
+ const {
+ retries = -1,
+ delay = 1e3,
+ onFailed
+ } = resolveNestedOptions(options.autoReconnect);
+ retried += 1;
+ if (typeof retries === "number" && (retries < 0 || retried < retries))
+ setTimeout(_init, delay);
+ else if (typeof retries === "function" && retries())
+ setTimeout(_init, delay);
+ else
+ onFailed == null ? void 0 : onFailed();
+ }
+ };
+ ws.onerror = (e) => {
+ onError == null ? void 0 : onError(ws, e);
+ };
+ ws.onmessage = (e) => {
+ if (options.heartbeat) {
+ resetHeartbeat();
+ const {
+ message = DEFAULT_PING_MESSAGE
+ } = resolveNestedOptions(options.heartbeat);
+ if (e.data === message)
+ return;
+ }
+ data.value = e.data;
+ onMessage == null ? void 0 : onMessage(ws, e);
+ };
+ };
+ if (options.heartbeat) {
+ const {
+ message = DEFAULT_PING_MESSAGE,
+ interval = 1e3,
+ pongTimeout = 1e3
+ } = resolveNestedOptions(options.heartbeat);
+ const { pause, resume } = (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.useIntervalFn)(
+ () => {
+ send(message, false);
+ if (pongTimeoutWait != null)
+ return;
+ pongTimeoutWait = setTimeout(() => {
+ close();
+ }, pongTimeout);
+ },
+ interval,
+ { immediate: false }
+ );
+ heartbeatPause = pause;
+ heartbeatResume = resume;
+ }
+ if (autoClose) {
+ useEventListener(window, "beforeunload", () => close());
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(close);
+ }
+ const open = () => {
+ close();
+ explicitlyClosed = false;
+ retried = 0;
+ _init();
+ };
+ if (immediate)
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(urlRef, open, { immediate: true });
+ return {
+ data,
+ status,
+ close,
+ send,
+ open,
+ ws: wsRef
+ };
+}
+
+function useWebWorker(arg0, workerOptions, options) {
+ const {
+ window = defaultWindow
+ } = options != null ? options : {};
+ const data = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(null);
+ const worker = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.shallowRef)();
+ const post = (...args) => {
+ if (!worker.value)
+ return;
+ worker.value.postMessage(...args);
+ };
+ const terminate = function terminate2() {
+ if (!worker.value)
+ return;
+ worker.value.terminate();
+ };
+ if (window) {
+ if (typeof arg0 === "string")
+ worker.value = new Worker(arg0, workerOptions);
+ else if (typeof arg0 === "function")
+ worker.value = arg0();
+ else
+ worker.value = arg0;
+ worker.value.onmessage = (e) => {
+ data.value = e.data;
+ };
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(() => {
+ if (worker.value)
+ worker.value.terminate();
+ });
+ }
+ return {
+ data,
+ post,
+ terminate,
+ worker
+ };
+}
+
+function jobRunner(userFunc) {
+ return (e) => {
+ const userFuncArgs = e.data[0];
+ return Promise.resolve(userFunc.apply(void 0, userFuncArgs)).then((result) => {
+ postMessage(["SUCCESS", result]);
+ }).catch((error) => {
+ postMessage(["ERROR", error]);
+ });
+ };
+}
+
+function depsParser(deps) {
+ if (deps.length === 0)
+ return "";
+ const depsString = deps.map((dep) => `'${dep}'`).toString();
+ return `importScripts(${depsString})`;
+}
+
+function createWorkerBlobUrl(fn, deps) {
+ const blobCode = `${depsParser(deps)}; onmessage=(${jobRunner})(${fn})`;
+ const blob = new Blob([blobCode], { type: "text/javascript" });
+ const url = URL.createObjectURL(blob);
+ return url;
+}
+
+function useWebWorkerFn(fn, options = {}) {
+ const {
+ dependencies = [],
+ timeout,
+ window = defaultWindow
+ } = options;
+ const worker = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const workerStatus = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)("PENDING");
+ const promise = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)({});
+ const timeoutId = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)();
+ const workerTerminate = (status = "PENDING") => {
+ if (worker.value && worker.value._url && window) {
+ worker.value.terminate();
+ URL.revokeObjectURL(worker.value._url);
+ promise.value = {};
+ worker.value = void 0;
+ window.clearTimeout(timeoutId.value);
+ workerStatus.value = status;
+ }
+ };
+ workerTerminate();
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnScopeDispose)(workerTerminate);
+ const generateWorker = () => {
+ const blobUrl = createWorkerBlobUrl(fn, dependencies);
+ const newWorker = new Worker(blobUrl);
+ newWorker._url = blobUrl;
+ newWorker.onmessage = (e) => {
+ const { resolve = () => {
+ }, reject = () => {
+ } } = promise.value;
+ const [status, result] = e.data;
+ switch (status) {
+ case "SUCCESS":
+ resolve(result);
+ workerTerminate(status);
+ break;
+ default:
+ reject(result);
+ workerTerminate("ERROR");
+ break;
+ }
+ };
+ newWorker.onerror = (e) => {
+ const { reject = () => {
+ } } = promise.value;
+ reject(e);
+ workerTerminate("ERROR");
+ };
+ if (timeout) {
+ timeoutId.value = setTimeout(
+ () => workerTerminate("TIMEOUT_EXPIRED"),
+ timeout
+ );
+ }
+ return newWorker;
+ };
+ const callWorker = (...fnArgs) => new Promise((resolve, reject) => {
+ promise.value = {
+ resolve,
+ reject
+ };
+ worker.value && worker.value.postMessage([[...fnArgs]]);
+ workerStatus.value = "RUNNING";
+ });
+ const workerFn = (...fnArgs) => {
+ if (workerStatus.value === "RUNNING") {
+ console.error(
+ "[useWebWorkerFn] You can only run one instance of the worker at a time."
+ );
+ return Promise.reject();
+ }
+ worker.value = generateWorker();
+ return callWorker(...fnArgs);
+ };
+ return {
+ workerFn,
+ workerStatus,
+ workerTerminate
+ };
+}
+
+function useWindowFocus({ window = defaultWindow } = {}) {
+ if (!window)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(false);
+ const focused = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(window.document.hasFocus());
+ useEventListener(window, "blur", () => {
+ focused.value = false;
+ });
+ useEventListener(window, "focus", () => {
+ focused.value = true;
+ });
+ return focused;
+}
+
+function useWindowScroll({ window = defaultWindow } = {}) {
+ if (!window) {
+ return {
+ x: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0),
+ y: (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(0)
+ };
+ }
+ const x = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(window.scrollX);
+ const y = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(window.scrollY);
+ useEventListener(
+ window,
+ "scroll",
+ () => {
+ x.value = window.scrollX;
+ y.value = window.scrollY;
+ },
+ {
+ capture: false,
+ passive: true
+ }
+ );
+ return { x, y };
+}
+
+function useWindowSize(options = {}) {
+ const {
+ window = defaultWindow,
+ initialWidth = Number.POSITIVE_INFINITY,
+ initialHeight = Number.POSITIVE_INFINITY,
+ listenOrientation = true,
+ includeScrollbar = true
+ } = options;
+ const width = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialWidth);
+ const height = (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.ref)(initialHeight);
+ const update = () => {
+ if (window) {
+ if (includeScrollbar) {
+ width.value = window.innerWidth;
+ height.value = window.innerHeight;
+ } else {
+ width.value = window.document.documentElement.clientWidth;
+ height.value = window.document.documentElement.clientHeight;
+ }
+ }
+ };
+ update();
+ (0,_vueuse_shared__WEBPACK_IMPORTED_MODULE_0__.tryOnMounted)(update);
+ useEventListener("resize", update, { passive: true });
+ if (listenOrientation) {
+ const matches = useMediaQuery("(orientation: portrait)");
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_1__.watch)(matches, () => update());
+ }
+ return { width, height };
+}
+
+
+
+
+/***/ }),
+
+/***/ "./node_modules/@vueuse/core/node_modules/vue-demi/lib/index.mjs":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@vueuse/core/node_modules/vue-demi/lib/index.mjs ***!
+ \***********************************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ EffectScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.EffectScope; },
+/* harmony export */ Fragment: function() { return /* binding */ Fragment; },
+/* harmony export */ KeepAlive: function() { return /* binding */ KeepAlive; },
+/* harmony export */ Suspense: function() { return /* binding */ Suspense; },
+/* harmony export */ Teleport: function() { return /* binding */ Teleport; },
+/* harmony export */ Transition: function() { return /* binding */ Transition; },
+/* harmony export */ TransitionGroup: function() { return /* binding */ TransitionGroup; },
+/* harmony export */ Vue: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__["default"]; },
+/* harmony export */ Vue2: function() { return /* binding */ Vue2; },
+/* harmony export */ computed: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.computed; },
+/* harmony export */ createApp: function() { return /* binding */ createApp; },
+/* harmony export */ customRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.customRef; },
+/* harmony export */ defineAsyncComponent: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.defineAsyncComponent; },
+/* harmony export */ defineComponent: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.defineComponent; },
+/* harmony export */ del: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.del; },
+/* harmony export */ effectScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.effectScope; },
+/* harmony export */ getCurrentInstance: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance; },
+/* harmony export */ getCurrentScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentScope; },
+/* harmony export */ h: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.h; },
+/* harmony export */ hasInjectionContext: function() { return /* binding */ hasInjectionContext; },
+/* harmony export */ inject: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.inject; },
+/* harmony export */ install: function() { return /* binding */ install; },
+/* harmony export */ isProxy: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isProxy; },
+/* harmony export */ isReactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isReactive; },
+/* harmony export */ isReadonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isReadonly; },
+/* harmony export */ isRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isRef; },
+/* harmony export */ isShallow: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isShallow; },
+/* harmony export */ isVue2: function() { return /* binding */ isVue2; },
+/* harmony export */ isVue3: function() { return /* binding */ isVue3; },
+/* harmony export */ markRaw: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.markRaw; },
+/* harmony export */ mergeDefaults: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.mergeDefaults; },
+/* harmony export */ nextTick: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.nextTick; },
+/* harmony export */ onActivated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onActivated; },
+/* harmony export */ onBeforeMount: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeMount; },
+/* harmony export */ onBeforeUnmount: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeUnmount; },
+/* harmony export */ onBeforeUpdate: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeUpdate; },
+/* harmony export */ onDeactivated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onDeactivated; },
+/* harmony export */ onErrorCaptured: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onErrorCaptured; },
+/* harmony export */ onMounted: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onMounted; },
+/* harmony export */ onRenderTracked: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onRenderTracked; },
+/* harmony export */ onRenderTriggered: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onRenderTriggered; },
+/* harmony export */ onScopeDispose: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onScopeDispose; },
+/* harmony export */ onServerPrefetch: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onServerPrefetch; },
+/* harmony export */ onUnmounted: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onUnmounted; },
+/* harmony export */ onUpdated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onUpdated; },
+/* harmony export */ provide: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.provide; },
+/* harmony export */ proxyRefs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.proxyRefs; },
+/* harmony export */ reactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.reactive; },
+/* harmony export */ readonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.readonly; },
+/* harmony export */ ref: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.ref; },
+/* harmony export */ set: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.set; },
+/* harmony export */ shallowReactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowReactive; },
+/* harmony export */ shallowReadonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowReadonly; },
+/* harmony export */ shallowRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowRef; },
+/* harmony export */ toRaw: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRaw; },
+/* harmony export */ toRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRef; },
+/* harmony export */ toRefs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRefs; },
+/* harmony export */ triggerRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.triggerRef; },
+/* harmony export */ unref: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.unref; },
+/* harmony export */ useAttrs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useAttrs; },
+/* harmony export */ useCssModule: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useCssModule; },
+/* harmony export */ useCssVars: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useCssVars; },
+/* harmony export */ useListeners: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useListeners; },
+/* harmony export */ useSlots: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useSlots; },
+/* harmony export */ version: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.version; },
+/* harmony export */ warn: function() { return /* binding */ warn; },
+/* harmony export */ watch: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watch; },
+/* harmony export */ watchEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchEffect; },
+/* harmony export */ watchPostEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchPostEffect; },
+/* harmony export */ watchSyncEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchSyncEffect; }
+/* harmony export */ });
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+
+
+
+var isVue2 = true
+var isVue3 = false
+var Vue2 = vue__WEBPACK_IMPORTED_MODULE_0__["default"]
+var warn = vue__WEBPACK_IMPORTED_MODULE_0__["default"].util.warn
+
+function install() {}
+
+// createApp polyfill
+function createApp(rootComponent, rootProps) {
+ var vm
+ var provide = {}
+ var app = {
+ config: vue__WEBPACK_IMPORTED_MODULE_0__["default"].config,
+ use: vue__WEBPACK_IMPORTED_MODULE_0__["default"].use.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ mixin: vue__WEBPACK_IMPORTED_MODULE_0__["default"].mixin.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ component: vue__WEBPACK_IMPORTED_MODULE_0__["default"].component.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ provide: function (key, value) {
+ provide[key] = value
+ return this
+ },
+ directive: function (name, dir) {
+ if (dir) {
+ vue__WEBPACK_IMPORTED_MODULE_0__["default"].directive(name, dir)
+ return app
+ } else {
+ return vue__WEBPACK_IMPORTED_MODULE_0__["default"].directive(name)
+ }
+ },
+ mount: function (el, hydrating) {
+ if (!vm) {
+ vm = new vue__WEBPACK_IMPORTED_MODULE_0__["default"](Object.assign({ propsData: rootProps }, rootComponent, { provide: Object.assign(provide, rootComponent.provide) }))
+ vm.$mount(el, hydrating)
+ return vm
+ } else {
+ return vm
+ }
+ },
+ unmount: function () {
+ if (vm) {
+ vm.$destroy()
+ vm = undefined
+ }
+ },
+ }
+ return app
+}
+
+
+
+// Vue 3 components mock
+function createMockComponent(name) {
+ return {
+ setup() {
+ throw new Error('[vue-demi] ' + name + ' is not supported in Vue 2. It\'s provided to avoid compiler errors.')
+ }
+ }
+}
+var Fragment = /*#__PURE__*/ createMockComponent('Fragment')
+var Transition = /*#__PURE__*/ createMockComponent('Transition')
+var TransitionGroup = /*#__PURE__*/ createMockComponent('TransitionGroup')
+var Teleport = /*#__PURE__*/ createMockComponent('Teleport')
+var Suspense = /*#__PURE__*/ createMockComponent('Suspense')
+var KeepAlive = /*#__PURE__*/ createMockComponent('KeepAlive')
+
+
+
+// Not implemented https://github.com/vuejs/core/pull/8111, falls back to getCurrentInstance()
+function hasInjectionContext() {
+ return !!(0,vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance)()
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/@vueuse/shared/index.mjs":
+/*!***********************************************!*\
+ !*** ./node_modules/@vueuse/shared/index.mjs ***!
+ \***********************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ assert: function() { return /* binding */ assert; },
+/* harmony export */ autoResetRef: function() { return /* binding */ refAutoReset; },
+/* harmony export */ bypassFilter: function() { return /* binding */ bypassFilter; },
+/* harmony export */ camelize: function() { return /* binding */ camelize; },
+/* harmony export */ clamp: function() { return /* binding */ clamp; },
+/* harmony export */ computedEager: function() { return /* binding */ computedEager; },
+/* harmony export */ computedWithControl: function() { return /* binding */ computedWithControl; },
+/* harmony export */ containsProp: function() { return /* binding */ containsProp; },
+/* harmony export */ controlledComputed: function() { return /* binding */ computedWithControl; },
+/* harmony export */ controlledRef: function() { return /* binding */ controlledRef; },
+/* harmony export */ createEventHook: function() { return /* binding */ createEventHook; },
+/* harmony export */ createFilterWrapper: function() { return /* binding */ createFilterWrapper; },
+/* harmony export */ createGlobalState: function() { return /* binding */ createGlobalState; },
+/* harmony export */ createInjectionState: function() { return /* binding */ createInjectionState; },
+/* harmony export */ createReactiveFn: function() { return /* binding */ reactify; },
+/* harmony export */ createSharedComposable: function() { return /* binding */ createSharedComposable; },
+/* harmony export */ createSingletonPromise: function() { return /* binding */ createSingletonPromise; },
+/* harmony export */ debounceFilter: function() { return /* binding */ debounceFilter; },
+/* harmony export */ debouncedRef: function() { return /* binding */ refDebounced; },
+/* harmony export */ debouncedWatch: function() { return /* binding */ watchDebounced; },
+/* harmony export */ directiveHooks: function() { return /* binding */ directiveHooks; },
+/* harmony export */ eagerComputed: function() { return /* binding */ computedEager; },
+/* harmony export */ extendRef: function() { return /* binding */ extendRef; },
+/* harmony export */ formatDate: function() { return /* binding */ formatDate; },
+/* harmony export */ get: function() { return /* binding */ get; },
+/* harmony export */ hasOwn: function() { return /* binding */ hasOwn; },
+/* harmony export */ hyphenate: function() { return /* binding */ hyphenate; },
+/* harmony export */ identity: function() { return /* binding */ identity; },
+/* harmony export */ ignorableWatch: function() { return /* binding */ watchIgnorable; },
+/* harmony export */ increaseWithUnit: function() { return /* binding */ increaseWithUnit; },
+/* harmony export */ invoke: function() { return /* binding */ invoke; },
+/* harmony export */ isClient: function() { return /* binding */ isClient; },
+/* harmony export */ isDef: function() { return /* binding */ isDef; },
+/* harmony export */ isDefined: function() { return /* binding */ isDefined; },
+/* harmony export */ isIOS: function() { return /* binding */ isIOS; },
+/* harmony export */ isObject: function() { return /* binding */ isObject; },
+/* harmony export */ makeDestructurable: function() { return /* binding */ makeDestructurable; },
+/* harmony export */ noop: function() { return /* binding */ noop; },
+/* harmony export */ normalizeDate: function() { return /* binding */ normalizeDate; },
+/* harmony export */ notNullish: function() { return /* binding */ notNullish; },
+/* harmony export */ now: function() { return /* binding */ now; },
+/* harmony export */ objectEntries: function() { return /* binding */ objectEntries; },
+/* harmony export */ objectOmit: function() { return /* binding */ objectOmit; },
+/* harmony export */ objectPick: function() { return /* binding */ objectPick; },
+/* harmony export */ pausableFilter: function() { return /* binding */ pausableFilter; },
+/* harmony export */ pausableWatch: function() { return /* binding */ watchPausable; },
+/* harmony export */ promiseTimeout: function() { return /* binding */ promiseTimeout; },
+/* harmony export */ rand: function() { return /* binding */ rand; },
+/* harmony export */ reactify: function() { return /* binding */ reactify; },
+/* harmony export */ reactifyObject: function() { return /* binding */ reactifyObject; },
+/* harmony export */ reactiveComputed: function() { return /* binding */ reactiveComputed; },
+/* harmony export */ reactiveOmit: function() { return /* binding */ reactiveOmit; },
+/* harmony export */ reactivePick: function() { return /* binding */ reactivePick; },
+/* harmony export */ refAutoReset: function() { return /* binding */ refAutoReset; },
+/* harmony export */ refDebounced: function() { return /* binding */ refDebounced; },
+/* harmony export */ refDefault: function() { return /* binding */ refDefault; },
+/* harmony export */ refThrottled: function() { return /* binding */ refThrottled; },
+/* harmony export */ refWithControl: function() { return /* binding */ refWithControl; },
+/* harmony export */ resolveRef: function() { return /* binding */ resolveRef; },
+/* harmony export */ resolveUnref: function() { return /* binding */ resolveUnref; },
+/* harmony export */ set: function() { return /* binding */ set; },
+/* harmony export */ syncRef: function() { return /* binding */ syncRef; },
+/* harmony export */ syncRefs: function() { return /* binding */ syncRefs; },
+/* harmony export */ throttleFilter: function() { return /* binding */ throttleFilter; },
+/* harmony export */ throttledRef: function() { return /* binding */ refThrottled; },
+/* harmony export */ throttledWatch: function() { return /* binding */ watchThrottled; },
+/* harmony export */ timestamp: function() { return /* binding */ timestamp; },
+/* harmony export */ toReactive: function() { return /* binding */ toReactive; },
+/* harmony export */ toRef: function() { return /* binding */ toRef; },
+/* harmony export */ toRefs: function() { return /* binding */ toRefs; },
+/* harmony export */ toValue: function() { return /* binding */ toValue; },
+/* harmony export */ tryOnBeforeMount: function() { return /* binding */ tryOnBeforeMount; },
+/* harmony export */ tryOnBeforeUnmount: function() { return /* binding */ tryOnBeforeUnmount; },
+/* harmony export */ tryOnMounted: function() { return /* binding */ tryOnMounted; },
+/* harmony export */ tryOnScopeDispose: function() { return /* binding */ tryOnScopeDispose; },
+/* harmony export */ tryOnUnmounted: function() { return /* binding */ tryOnUnmounted; },
+/* harmony export */ until: function() { return /* binding */ until; },
+/* harmony export */ useArrayDifference: function() { return /* binding */ useArrayDifference; },
+/* harmony export */ useArrayEvery: function() { return /* binding */ useArrayEvery; },
+/* harmony export */ useArrayFilter: function() { return /* binding */ useArrayFilter; },
+/* harmony export */ useArrayFind: function() { return /* binding */ useArrayFind; },
+/* harmony export */ useArrayFindIndex: function() { return /* binding */ useArrayFindIndex; },
+/* harmony export */ useArrayFindLast: function() { return /* binding */ useArrayFindLast; },
+/* harmony export */ useArrayIncludes: function() { return /* binding */ useArrayIncludes; },
+/* harmony export */ useArrayJoin: function() { return /* binding */ useArrayJoin; },
+/* harmony export */ useArrayMap: function() { return /* binding */ useArrayMap; },
+/* harmony export */ useArrayReduce: function() { return /* binding */ useArrayReduce; },
+/* harmony export */ useArraySome: function() { return /* binding */ useArraySome; },
+/* harmony export */ useArrayUnique: function() { return /* binding */ useArrayUnique; },
+/* harmony export */ useCounter: function() { return /* binding */ useCounter; },
+/* harmony export */ useDateFormat: function() { return /* binding */ useDateFormat; },
+/* harmony export */ useDebounce: function() { return /* binding */ refDebounced; },
+/* harmony export */ useDebounceFn: function() { return /* binding */ useDebounceFn; },
+/* harmony export */ useInterval: function() { return /* binding */ useInterval; },
+/* harmony export */ useIntervalFn: function() { return /* binding */ useIntervalFn; },
+/* harmony export */ useLastChanged: function() { return /* binding */ useLastChanged; },
+/* harmony export */ useThrottle: function() { return /* binding */ refThrottled; },
+/* harmony export */ useThrottleFn: function() { return /* binding */ useThrottleFn; },
+/* harmony export */ useTimeout: function() { return /* binding */ useTimeout; },
+/* harmony export */ useTimeoutFn: function() { return /* binding */ useTimeoutFn; },
+/* harmony export */ useToNumber: function() { return /* binding */ useToNumber; },
+/* harmony export */ useToString: function() { return /* binding */ useToString; },
+/* harmony export */ useToggle: function() { return /* binding */ useToggle; },
+/* harmony export */ watchArray: function() { return /* binding */ watchArray; },
+/* harmony export */ watchAtMost: function() { return /* binding */ watchAtMost; },
+/* harmony export */ watchDebounced: function() { return /* binding */ watchDebounced; },
+/* harmony export */ watchDeep: function() { return /* binding */ watchDeep; },
+/* harmony export */ watchIgnorable: function() { return /* binding */ watchIgnorable; },
+/* harmony export */ watchImmediate: function() { return /* binding */ watchImmediate; },
+/* harmony export */ watchOnce: function() { return /* binding */ watchOnce; },
+/* harmony export */ watchPausable: function() { return /* binding */ watchPausable; },
+/* harmony export */ watchThrottled: function() { return /* binding */ watchThrottled; },
+/* harmony export */ watchTriggerable: function() { return /* binding */ watchTriggerable; },
+/* harmony export */ watchWithFilter: function() { return /* binding */ watchWithFilter; },
+/* harmony export */ whenever: function() { return /* binding */ whenever; }
+/* harmony export */ });
+/* harmony import */ var vue_demi__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-demi */ "./node_modules/@vueuse/shared/node_modules/vue-demi/lib/index.mjs");
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+
+
+var __defProp$b = Object.defineProperty;
+var __defProps$8 = Object.defineProperties;
+var __getOwnPropDescs$8 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$d = Object.getOwnPropertySymbols;
+var __hasOwnProp$d = Object.prototype.hasOwnProperty;
+var __propIsEnum$d = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$b = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$d.call(b, prop))
+ __defNormalProp$b(a, prop, b[prop]);
+ if (__getOwnPropSymbols$d)
+ for (var prop of __getOwnPropSymbols$d(b)) {
+ if (__propIsEnum$d.call(b, prop))
+ __defNormalProp$b(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$8 = (a, b) => __defProps$8(a, __getOwnPropDescs$8(b));
+function computedEager(fn, options) {
+ var _a;
+ const result = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.shallowRef)();
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watchEffect)(() => {
+ result.value = fn();
+ }, __spreadProps$8(__spreadValues$b({}, options), {
+ flush: (_a = options == null ? void 0 : options.flush) != null ? _a : "sync"
+ }));
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.readonly)(result);
+}
+
+function computedWithControl(source, fn) {
+ let v = void 0;
+ let track;
+ let trigger;
+ const dirty = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(true);
+ const update = () => {
+ dirty.value = true;
+ trigger();
+ };
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(source, update, { flush: "sync" });
+ const get = typeof fn === "function" ? fn : fn.get;
+ const set = typeof fn === "function" ? void 0 : fn.set;
+ const result = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.customRef)((_track, _trigger) => {
+ track = _track;
+ trigger = _trigger;
+ return {
+ get() {
+ if (dirty.value) {
+ v = get();
+ dirty.value = false;
+ }
+ track();
+ return v;
+ },
+ set(v2) {
+ set == null ? void 0 : set(v2);
+ }
+ };
+ });
+ if (Object.isExtensible(result))
+ result.trigger = update;
+ return result;
+}
+
+function tryOnScopeDispose(fn) {
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.getCurrentScope)()) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.onScopeDispose)(fn);
+ return true;
+ }
+ return false;
+}
+
+function createEventHook() {
+ const fns = /* @__PURE__ */ new Set();
+ const off = (fn) => {
+ fns.delete(fn);
+ };
+ const on = (fn) => {
+ fns.add(fn);
+ const offFn = () => off(fn);
+ tryOnScopeDispose(offFn);
+ return {
+ off: offFn
+ };
+ };
+ const trigger = (param) => {
+ return Promise.all(Array.from(fns).map((fn) => fn(param)));
+ };
+ return {
+ on,
+ off,
+ trigger
+ };
+}
+
+function createGlobalState(stateFactory) {
+ let initialized = false;
+ let state;
+ const scope = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.effectScope)(true);
+ return (...args) => {
+ if (!initialized) {
+ state = scope.run(() => stateFactory(...args));
+ initialized = true;
+ }
+ return state;
+ };
+}
+
+function createInjectionState(composable) {
+ const key = Symbol("InjectionState");
+ const useProvidingState = (...args) => {
+ const state = composable(...args);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.provide)(key, state);
+ return state;
+ };
+ const useInjectedState = () => (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.inject)(key);
+ return [useProvidingState, useInjectedState];
+}
+
+function createSharedComposable(composable) {
+ let subscribers = 0;
+ let state;
+ let scope;
+ const dispose = () => {
+ subscribers -= 1;
+ if (scope && subscribers <= 0) {
+ scope.stop();
+ state = void 0;
+ scope = void 0;
+ }
+ };
+ return (...args) => {
+ subscribers += 1;
+ if (!state) {
+ scope = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.effectScope)(true);
+ state = scope.run(() => composable(...args));
+ }
+ tryOnScopeDispose(dispose);
+ return state;
+ };
+}
+
+function extendRef(ref, extend, { enumerable = false, unwrap = true } = {}) {
+ if (!vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue3 && !vue_demi__WEBPACK_IMPORTED_MODULE_0__.version.startsWith("2.7.")) {
+ if (true)
+ throw new Error("[VueUse] extendRef only works in Vue 2.7 or above.");
+ return;
+ }
+ for (const [key, value] of Object.entries(extend)) {
+ if (key === "value")
+ continue;
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(value) && unwrap) {
+ Object.defineProperty(ref, key, {
+ get() {
+ return value.value;
+ },
+ set(v) {
+ value.value = v;
+ },
+ enumerable
+ });
+ } else {
+ Object.defineProperty(ref, key, { value, enumerable });
+ }
+ }
+ return ref;
+}
+
+function get(obj, key) {
+ if (key == null)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.unref)(obj);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.unref)(obj)[key];
+}
+
+function isDefined(v) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.unref)(v) != null;
+}
+
+var __defProp$a = Object.defineProperty;
+var __getOwnPropSymbols$c = Object.getOwnPropertySymbols;
+var __hasOwnProp$c = Object.prototype.hasOwnProperty;
+var __propIsEnum$c = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$a = (obj, key, value) => key in obj ? __defProp$a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$a = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$c.call(b, prop))
+ __defNormalProp$a(a, prop, b[prop]);
+ if (__getOwnPropSymbols$c)
+ for (var prop of __getOwnPropSymbols$c(b)) {
+ if (__propIsEnum$c.call(b, prop))
+ __defNormalProp$a(a, prop, b[prop]);
+ }
+ return a;
+};
+function makeDestructurable(obj, arr) {
+ if (typeof Symbol !== "undefined") {
+ const clone = __spreadValues$a({}, obj);
+ Object.defineProperty(clone, Symbol.iterator, {
+ enumerable: false,
+ value() {
+ let index = 0;
+ return {
+ next: () => ({
+ value: arr[index++],
+ done: index > arr.length
+ })
+ };
+ }
+ });
+ return clone;
+ } else {
+ return Object.assign([...arr], obj);
+ }
+}
+
+function toValue(r) {
+ return typeof r === "function" ? r() : (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.unref)(r);
+}
+const resolveUnref = toValue;
+
+function reactify(fn, options) {
+ const unrefFn = (options == null ? void 0 : options.computedGetter) === false ? vue_demi__WEBPACK_IMPORTED_MODULE_0__.unref : toValue;
+ return function(...args) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => fn.apply(this, args.map((i) => unrefFn(i))));
+ };
+}
+
+function reactifyObject(obj, optionsOrKeys = {}) {
+ let keys = [];
+ let options;
+ if (Array.isArray(optionsOrKeys)) {
+ keys = optionsOrKeys;
+ } else {
+ options = optionsOrKeys;
+ const { includeOwnProperties = true } = optionsOrKeys;
+ keys.push(...Object.keys(obj));
+ if (includeOwnProperties)
+ keys.push(...Object.getOwnPropertyNames(obj));
+ }
+ return Object.fromEntries(
+ keys.map((key) => {
+ const value = obj[key];
+ return [
+ key,
+ typeof value === "function" ? reactify(value.bind(obj), options) : value
+ ];
+ })
+ );
+}
+
+function toReactive(objectRef) {
+ if (!(0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(objectRef))
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)(objectRef);
+ const proxy = new Proxy({}, {
+ get(_, p, receiver) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.unref)(Reflect.get(objectRef.value, p, receiver));
+ },
+ set(_, p, value) {
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(objectRef.value[p]) && !(0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(value))
+ objectRef.value[p].value = value;
+ else
+ objectRef.value[p] = value;
+ return true;
+ },
+ deleteProperty(_, p) {
+ return Reflect.deleteProperty(objectRef.value, p);
+ },
+ has(_, p) {
+ return Reflect.has(objectRef.value, p);
+ },
+ ownKeys() {
+ return Object.keys(objectRef.value);
+ },
+ getOwnPropertyDescriptor() {
+ return {
+ enumerable: true,
+ configurable: true
+ };
+ }
+ });
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)(proxy);
+}
+
+function reactiveComputed(fn) {
+ return toReactive((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(fn));
+}
+
+function reactiveOmit(obj, ...keys) {
+ const flatKeys = keys.flat();
+ const predicate = flatKeys[0];
+ return reactiveComputed(
+ () => typeof predicate === "function" ? Object.fromEntries(Object.entries((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRefs)(obj)).filter(([k, v]) => !predicate(toValue(v), k))) : Object.fromEntries(Object.entries((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRefs)(obj)).filter((e) => !flatKeys.includes(e[0])))
+ );
+}
+
+const isClient = typeof window !== "undefined";
+const isDef = (val) => typeof val !== "undefined";
+const notNullish = (val) => val != null;
+const assert = (condition, ...infos) => {
+ if (!condition)
+ console.warn(...infos);
+};
+const toString = Object.prototype.toString;
+const isObject = (val) => toString.call(val) === "[object Object]";
+const now = () => Date.now();
+const timestamp = () => +Date.now();
+const clamp = (n, min, max) => Math.min(max, Math.max(min, n));
+const noop = () => {
+};
+const rand = (min, max) => {
+ min = Math.ceil(min);
+ max = Math.floor(max);
+ return Math.floor(Math.random() * (max - min + 1)) + min;
+};
+const hasOwn = (val, key) => Object.prototype.hasOwnProperty.call(val, key);
+const isIOS = /* @__PURE__ */ getIsIOS();
+function getIsIOS() {
+ var _a;
+ return isClient && ((_a = window == null ? void 0 : window.navigator) == null ? void 0 : _a.userAgent) && /* @__PURE__ */ /iP(ad|hone|od)/.test(window.navigator.userAgent);
+}
+
+function createFilterWrapper(filter, fn) {
+ function wrapper(...args) {
+ return new Promise((resolve, reject) => {
+ Promise.resolve(filter(() => fn.apply(this, args), { fn, thisArg: this, args })).then(resolve).catch(reject);
+ });
+ }
+ return wrapper;
+}
+const bypassFilter = (invoke) => {
+ return invoke();
+};
+function debounceFilter(ms, options = {}) {
+ let timer;
+ let maxTimer;
+ let lastRejector = noop;
+ const _clearTimeout = (timer2) => {
+ clearTimeout(timer2);
+ lastRejector();
+ lastRejector = noop;
+ };
+ const filter = (invoke) => {
+ const duration = toValue(ms);
+ const maxDuration = toValue(options.maxWait);
+ if (timer)
+ _clearTimeout(timer);
+ if (duration <= 0 || maxDuration !== void 0 && maxDuration <= 0) {
+ if (maxTimer) {
+ _clearTimeout(maxTimer);
+ maxTimer = null;
+ }
+ return Promise.resolve(invoke());
+ }
+ return new Promise((resolve, reject) => {
+ lastRejector = options.rejectOnCancel ? reject : resolve;
+ if (maxDuration && !maxTimer) {
+ maxTimer = setTimeout(() => {
+ if (timer)
+ _clearTimeout(timer);
+ maxTimer = null;
+ resolve(invoke());
+ }, maxDuration);
+ }
+ timer = setTimeout(() => {
+ if (maxTimer)
+ _clearTimeout(maxTimer);
+ maxTimer = null;
+ resolve(invoke());
+ }, duration);
+ });
+ };
+ return filter;
+}
+function throttleFilter(ms, trailing = true, leading = true, rejectOnCancel = false) {
+ let lastExec = 0;
+ let timer;
+ let isLeading = true;
+ let lastRejector = noop;
+ let lastValue;
+ const clear = () => {
+ if (timer) {
+ clearTimeout(timer);
+ timer = void 0;
+ lastRejector();
+ lastRejector = noop;
+ }
+ };
+ const filter = (_invoke) => {
+ const duration = toValue(ms);
+ const elapsed = Date.now() - lastExec;
+ const invoke = () => {
+ return lastValue = _invoke();
+ };
+ clear();
+ if (duration <= 0) {
+ lastExec = Date.now();
+ return invoke();
+ }
+ if (elapsed > duration && (leading || !isLeading)) {
+ lastExec = Date.now();
+ invoke();
+ } else if (trailing) {
+ lastValue = new Promise((resolve, reject) => {
+ lastRejector = rejectOnCancel ? reject : resolve;
+ timer = setTimeout(() => {
+ lastExec = Date.now();
+ isLeading = true;
+ resolve(invoke());
+ clear();
+ }, Math.max(0, duration - elapsed));
+ });
+ }
+ if (!leading && !timer)
+ timer = setTimeout(() => isLeading = true, duration);
+ isLeading = false;
+ return lastValue;
+ };
+ return filter;
+}
+function pausableFilter(extendFilter = bypassFilter) {
+ const isActive = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(true);
+ function pause() {
+ isActive.value = false;
+ }
+ function resume() {
+ isActive.value = true;
+ }
+ const eventFilter = (...args) => {
+ if (isActive.value)
+ extendFilter(...args);
+ };
+ return { isActive: (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.readonly)(isActive), pause, resume, eventFilter };
+}
+
+const directiveHooks = {
+ mounted: vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue3 ? "mounted" : "inserted",
+ updated: vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue3 ? "updated" : "componentUpdated",
+ unmounted: vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue3 ? "unmounted" : "unbind"
+};
+
+function cacheStringFunction(fn) {
+ const cache = /* @__PURE__ */ Object.create(null);
+ return (str) => {
+ const hit = cache[str];
+ return hit || (cache[str] = fn(str));
+ };
+}
+const hyphenateRE = /\B([A-Z])/g;
+const hyphenate = cacheStringFunction(
+ (str) => str.replace(hyphenateRE, "-$1").toLowerCase()
+);
+const camelizeRE = /-(\w)/g;
+const camelize = cacheStringFunction((str) => {
+ return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : "");
+});
+
+function promiseTimeout(ms, throwOnTimeout = false, reason = "Timeout") {
+ return new Promise((resolve, reject) => {
+ if (throwOnTimeout)
+ setTimeout(() => reject(reason), ms);
+ else
+ setTimeout(resolve, ms);
+ });
+}
+function identity(arg) {
+ return arg;
+}
+function createSingletonPromise(fn) {
+ let _promise;
+ function wrapper() {
+ if (!_promise)
+ _promise = fn();
+ return _promise;
+ }
+ wrapper.reset = async () => {
+ const _prev = _promise;
+ _promise = void 0;
+ if (_prev)
+ await _prev;
+ };
+ return wrapper;
+}
+function invoke(fn) {
+ return fn();
+}
+function containsProp(obj, ...props) {
+ return props.some((k) => k in obj);
+}
+function increaseWithUnit(target, delta) {
+ var _a;
+ if (typeof target === "number")
+ return target + delta;
+ const value = ((_a = target.match(/^-?[0-9]+\.?[0-9]*/)) == null ? void 0 : _a[0]) || "";
+ const unit = target.slice(value.length);
+ const result = Number.parseFloat(value) + delta;
+ if (Number.isNaN(result))
+ return target;
+ return result + unit;
+}
+function objectPick(obj, keys, omitUndefined = false) {
+ return keys.reduce((n, k) => {
+ if (k in obj) {
+ if (!omitUndefined || obj[k] !== void 0)
+ n[k] = obj[k];
+ }
+ return n;
+ }, {});
+}
+function objectOmit(obj, keys, omitUndefined = false) {
+ return Object.fromEntries(Object.entries(obj).filter(([key, value]) => {
+ return (!omitUndefined || value !== void 0) && !keys.includes(key);
+ }));
+}
+function objectEntries(obj) {
+ return Object.entries(obj);
+}
+
+function toRef(...args) {
+ if (args.length !== 1)
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRef)(...args);
+ const r = args[0];
+ return typeof r === "function" ? (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.readonly)((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.customRef)(() => ({ get: r, set: noop }))) : (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(r);
+}
+const resolveRef = toRef;
+
+function reactivePick(obj, ...keys) {
+ const flatKeys = keys.flat();
+ const predicate = flatKeys[0];
+ return reactiveComputed(() => typeof predicate === "function" ? Object.fromEntries(Object.entries((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRefs)(obj)).filter(([k, v]) => predicate(toValue(v), k))) : Object.fromEntries(flatKeys.map((k) => [k, toRef(obj, k)])));
+}
+
+function refAutoReset(defaultValue, afterMs = 1e4) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.customRef)((track, trigger) => {
+ let value = defaultValue;
+ let timer;
+ const resetAfter = () => setTimeout(() => {
+ value = defaultValue;
+ trigger();
+ }, toValue(afterMs));
+ tryOnScopeDispose(() => {
+ clearTimeout(timer);
+ });
+ return {
+ get() {
+ track();
+ return value;
+ },
+ set(newValue) {
+ value = newValue;
+ trigger();
+ clearTimeout(timer);
+ timer = resetAfter();
+ }
+ };
+ });
+}
+
+function useDebounceFn(fn, ms = 200, options = {}) {
+ return createFilterWrapper(
+ debounceFilter(ms, options),
+ fn
+ );
+}
+
+function refDebounced(value, ms = 200, options = {}) {
+ const debounced = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(value.value);
+ const updater = useDebounceFn(() => {
+ debounced.value = value.value;
+ }, ms, options);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(value, () => updater());
+ return debounced;
+}
+
+function refDefault(source, defaultValue) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)({
+ get() {
+ var _a;
+ return (_a = source.value) != null ? _a : defaultValue;
+ },
+ set(value) {
+ source.value = value;
+ }
+ });
+}
+
+function useThrottleFn(fn, ms = 200, trailing = false, leading = true, rejectOnCancel = false) {
+ return createFilterWrapper(
+ throttleFilter(ms, trailing, leading, rejectOnCancel),
+ fn
+ );
+}
+
+function refThrottled(value, delay = 200, trailing = true, leading = true) {
+ if (delay <= 0)
+ return value;
+ const throttled = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(value.value);
+ const updater = useThrottleFn(() => {
+ throttled.value = value.value;
+ }, delay, trailing, leading);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(value, () => updater());
+ return throttled;
+}
+
+function refWithControl(initial, options = {}) {
+ let source = initial;
+ let track;
+ let trigger;
+ const ref = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.customRef)((_track, _trigger) => {
+ track = _track;
+ trigger = _trigger;
+ return {
+ get() {
+ return get();
+ },
+ set(v) {
+ set(v);
+ }
+ };
+ });
+ function get(tracking = true) {
+ if (tracking)
+ track();
+ return source;
+ }
+ function set(value, triggering = true) {
+ var _a, _b;
+ if (value === source)
+ return;
+ const old = source;
+ if (((_a = options.onBeforeChange) == null ? void 0 : _a.call(options, value, old)) === false)
+ return;
+ source = value;
+ (_b = options.onChanged) == null ? void 0 : _b.call(options, value, old);
+ if (triggering)
+ trigger();
+ }
+ const untrackedGet = () => get(false);
+ const silentSet = (v) => set(v, false);
+ const peek = () => get(false);
+ const lay = (v) => set(v, false);
+ return extendRef(
+ ref,
+ {
+ get,
+ set,
+ untrackedGet,
+ silentSet,
+ peek,
+ lay
+ },
+ { enumerable: true }
+ );
+}
+const controlledRef = refWithControl;
+
+function set(...args) {
+ if (args.length === 2) {
+ const [ref, value] = args;
+ ref.value = value;
+ }
+ if (args.length === 3) {
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(...args);
+ } else {
+ const [target, key, value] = args;
+ target[key] = value;
+ }
+ }
+}
+
+function syncRef(left, right, options = {}) {
+ var _a, _b;
+ const {
+ flush = "sync",
+ deep = false,
+ immediate = true,
+ direction = "both",
+ transform = {}
+ } = options;
+ let watchLeft;
+ let watchRight;
+ const transformLTR = (_a = transform.ltr) != null ? _a : (v) => v;
+ const transformRTL = (_b = transform.rtl) != null ? _b : (v) => v;
+ if (direction === "both" || direction === "ltr") {
+ watchLeft = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ left,
+ (newValue) => right.value = transformLTR(newValue),
+ { flush, deep, immediate }
+ );
+ }
+ if (direction === "both" || direction === "rtl") {
+ watchRight = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ right,
+ (newValue) => left.value = transformRTL(newValue),
+ { flush, deep, immediate }
+ );
+ }
+ return () => {
+ watchLeft == null ? void 0 : watchLeft();
+ watchRight == null ? void 0 : watchRight();
+ };
+}
+
+function syncRefs(source, targets, options = {}) {
+ const {
+ flush = "sync",
+ deep = false,
+ immediate = true
+ } = options;
+ if (!Array.isArray(targets))
+ targets = [targets];
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ source,
+ (newValue) => targets.forEach((target) => target.value = newValue),
+ { flush, deep, immediate }
+ );
+}
+
+var __defProp$9 = Object.defineProperty;
+var __defProps$7 = Object.defineProperties;
+var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$b = Object.getOwnPropertySymbols;
+var __hasOwnProp$b = Object.prototype.hasOwnProperty;
+var __propIsEnum$b = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$9 = (obj, key, value) => key in obj ? __defProp$9(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$9 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$b.call(b, prop))
+ __defNormalProp$9(a, prop, b[prop]);
+ if (__getOwnPropSymbols$b)
+ for (var prop of __getOwnPropSymbols$b(b)) {
+ if (__propIsEnum$b.call(b, prop))
+ __defNormalProp$9(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$7 = (a, b) => __defProps$7(a, __getOwnPropDescs$7(b));
+function toRefs(objectRef, options = {}) {
+ if (!(0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(objectRef))
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRefs)(objectRef);
+ const result = Array.isArray(objectRef.value) ? Array.from({ length: objectRef.value.length }) : {};
+ for (const key in objectRef.value) {
+ result[key] = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.customRef)(() => ({
+ get() {
+ return objectRef.value[key];
+ },
+ set(v) {
+ var _a;
+ const replaceRef = (_a = toValue(options.replaceRef)) != null ? _a : true;
+ if (replaceRef) {
+ if (Array.isArray(objectRef.value)) {
+ const copy = [...objectRef.value];
+ copy[key] = v;
+ objectRef.value = copy;
+ } else {
+ const newObject = __spreadProps$7(__spreadValues$9({}, objectRef.value), { [key]: v });
+ Object.setPrototypeOf(newObject, Object.getPrototypeOf(objectRef.value));
+ objectRef.value = newObject;
+ }
+ } else {
+ objectRef.value[key] = v;
+ }
+ }
+ }));
+ }
+ return result;
+}
+
+function tryOnBeforeMount(fn, sync = true) {
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance)())
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.onBeforeMount)(fn);
+ else if (sync)
+ fn();
+ else
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.nextTick)(fn);
+}
+
+function tryOnBeforeUnmount(fn) {
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance)())
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.onBeforeUnmount)(fn);
+}
+
+function tryOnMounted(fn, sync = true) {
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance)())
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.onMounted)(fn);
+ else if (sync)
+ fn();
+ else
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.nextTick)(fn);
+}
+
+function tryOnUnmounted(fn) {
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance)())
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.onUnmounted)(fn);
+}
+
+function createUntil(r, isNot = false) {
+ function toMatch(condition, { flush = "sync", deep = false, timeout, throwOnTimeout } = {}) {
+ let stop = null;
+ const watcher = new Promise((resolve) => {
+ stop = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ r,
+ (v) => {
+ if (condition(v) !== isNot) {
+ stop == null ? void 0 : stop();
+ resolve(v);
+ }
+ },
+ {
+ flush,
+ deep,
+ immediate: true
+ }
+ );
+ });
+ const promises = [watcher];
+ if (timeout != null) {
+ promises.push(
+ promiseTimeout(timeout, throwOnTimeout).then(() => toValue(r)).finally(() => stop == null ? void 0 : stop())
+ );
+ }
+ return Promise.race(promises);
+ }
+ function toBe(value, options) {
+ if (!(0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(value))
+ return toMatch((v) => v === value, options);
+ const { flush = "sync", deep = false, timeout, throwOnTimeout } = options != null ? options : {};
+ let stop = null;
+ const watcher = new Promise((resolve) => {
+ stop = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ [r, value],
+ ([v1, v2]) => {
+ if (isNot !== (v1 === v2)) {
+ stop == null ? void 0 : stop();
+ resolve(v1);
+ }
+ },
+ {
+ flush,
+ deep,
+ immediate: true
+ }
+ );
+ });
+ const promises = [watcher];
+ if (timeout != null) {
+ promises.push(
+ promiseTimeout(timeout, throwOnTimeout).then(() => toValue(r)).finally(() => {
+ stop == null ? void 0 : stop();
+ return toValue(r);
+ })
+ );
+ }
+ return Promise.race(promises);
+ }
+ function toBeTruthy(options) {
+ return toMatch((v) => Boolean(v), options);
+ }
+ function toBeNull(options) {
+ return toBe(null, options);
+ }
+ function toBeUndefined(options) {
+ return toBe(void 0, options);
+ }
+ function toBeNaN(options) {
+ return toMatch(Number.isNaN, options);
+ }
+ function toContains(value, options) {
+ return toMatch((v) => {
+ const array = Array.from(v);
+ return array.includes(value) || array.includes(toValue(value));
+ }, options);
+ }
+ function changed(options) {
+ return changedTimes(1, options);
+ }
+ function changedTimes(n = 1, options) {
+ let count = -1;
+ return toMatch(() => {
+ count += 1;
+ return count >= n;
+ }, options);
+ }
+ if (Array.isArray(toValue(r))) {
+ const instance = {
+ toMatch,
+ toContains,
+ changed,
+ changedTimes,
+ get not() {
+ return createUntil(r, !isNot);
+ }
+ };
+ return instance;
+ } else {
+ const instance = {
+ toMatch,
+ toBe,
+ toBeTruthy,
+ toBeNull,
+ toBeNaN,
+ toBeUndefined,
+ changed,
+ changedTimes,
+ get not() {
+ return createUntil(r, !isNot);
+ }
+ };
+ return instance;
+ }
+}
+function until(r) {
+ return createUntil(r);
+}
+
+function defaultComparator(value, othVal) {
+ return value === othVal;
+}
+function useArrayDifference(...args) {
+ var _a;
+ const list = args[0];
+ const values = args[1];
+ let compareFn = (_a = args[2]) != null ? _a : defaultComparator;
+ if (typeof compareFn === "string") {
+ const key = compareFn;
+ compareFn = (value, othVal) => value[key] === othVal[key];
+ }
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => toValue(list).filter((x) => toValue(values).findIndex((y) => compareFn(x, y)) === -1));
+}
+
+function useArrayEvery(list, fn) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => toValue(list).every((element, index, array) => fn(toValue(element), index, array)));
+}
+
+function useArrayFilter(list, fn) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => toValue(list).map((i) => toValue(i)).filter(fn));
+}
+
+function useArrayFind(list, fn) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(
+ () => toValue(
+ toValue(list).find((element, index, array) => fn(toValue(element), index, array))
+ )
+ );
+}
+
+function useArrayFindIndex(list, fn) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => toValue(list).findIndex((element, index, array) => fn(toValue(element), index, array)));
+}
+
+function findLast(arr, cb) {
+ let index = arr.length;
+ while (index-- > 0) {
+ if (cb(arr[index], index, arr))
+ return arr[index];
+ }
+ return void 0;
+}
+function useArrayFindLast(list, fn) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(
+ () => toValue(
+ !Array.prototype.findLast ? findLast(toValue(list), (element, index, array) => fn(toValue(element), index, array)) : toValue(list).findLast((element, index, array) => fn(toValue(element), index, array))
+ )
+ );
+}
+
+function isArrayIncludesOptions(obj) {
+ return isObject(obj) && containsProp(obj, "formIndex", "comparator");
+}
+function useArrayIncludes(...args) {
+ var _a;
+ const list = args[0];
+ const value = args[1];
+ let comparator = args[2];
+ let formIndex = 0;
+ if (isArrayIncludesOptions(comparator)) {
+ formIndex = (_a = comparator.fromIndex) != null ? _a : 0;
+ comparator = comparator.comparator;
+ }
+ if (typeof comparator === "string") {
+ const key = comparator;
+ comparator = (element, value2) => element[key] === toValue(value2);
+ }
+ comparator = comparator != null ? comparator : (element, value2) => element === toValue(value2);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(
+ () => toValue(list).slice(formIndex).some(
+ (element, index, array) => comparator(toValue(element), toValue(value), index, toValue(array))
+ )
+ );
+}
+
+function useArrayJoin(list, separator) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => toValue(list).map((i) => toValue(i)).join(toValue(separator)));
+}
+
+function useArrayMap(list, fn) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => toValue(list).map((i) => toValue(i)).map(fn));
+}
+
+function useArrayReduce(list, reducer, ...args) {
+ const reduceCallback = (sum, value, index) => reducer(toValue(sum), toValue(value), index);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ const resolved = toValue(list);
+ return args.length ? resolved.reduce(reduceCallback, toValue(args[0])) : resolved.reduce(reduceCallback);
+ });
+}
+
+function useArraySome(list, fn) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => toValue(list).some((element, index, array) => fn(toValue(element), index, array)));
+}
+
+function uniq(array) {
+ return Array.from(new Set(array));
+}
+function uniqueElementsBy(array, fn) {
+ return array.reduce((acc, v) => {
+ if (!acc.some((x) => fn(v, x, array)))
+ acc.push(v);
+ return acc;
+ }, []);
+}
+function useArrayUnique(list, compareFn) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ const resolvedList = toValue(list).map((element) => toValue(element));
+ return compareFn ? uniqueElementsBy(resolvedList, compareFn) : uniq(resolvedList);
+ });
+}
+
+function useCounter(initialValue = 0, options = {}) {
+ let _initialValue = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.unref)(initialValue);
+ const count = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(initialValue);
+ const {
+ max = Number.POSITIVE_INFINITY,
+ min = Number.NEGATIVE_INFINITY
+ } = options;
+ const inc = (delta = 1) => count.value = Math.min(max, count.value + delta);
+ const dec = (delta = 1) => count.value = Math.max(min, count.value - delta);
+ const get = () => count.value;
+ const set = (val) => count.value = Math.max(min, Math.min(max, val));
+ const reset = (val = _initialValue) => {
+ _initialValue = val;
+ return set(val);
+ };
+ return { count, inc, dec, get, set, reset };
+}
+
+const REGEX_PARSE = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/;
+const REGEX_FORMAT = /\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a{1,2}|A{1,2}|m{1,2}|s{1,2}|Z{1,2}|SSS/g;
+function defaultMeridiem(hours, minutes, isLowercase, hasPeriod) {
+ let m = hours < 12 ? "AM" : "PM";
+ if (hasPeriod)
+ m = m.split("").reduce((acc, curr) => acc += `${curr}.`, "");
+ return isLowercase ? m.toLowerCase() : m;
+}
+function formatDate(date, formatStr, options = {}) {
+ var _a;
+ const years = date.getFullYear();
+ const month = date.getMonth();
+ const days = date.getDate();
+ const hours = date.getHours();
+ const minutes = date.getMinutes();
+ const seconds = date.getSeconds();
+ const milliseconds = date.getMilliseconds();
+ const day = date.getDay();
+ const meridiem = (_a = options.customMeridiem) != null ? _a : defaultMeridiem;
+ const matches = {
+ YY: () => String(years).slice(-2),
+ YYYY: () => years,
+ M: () => month + 1,
+ MM: () => `${month + 1}`.padStart(2, "0"),
+ MMM: () => date.toLocaleDateString(options.locales, { month: "short" }),
+ MMMM: () => date.toLocaleDateString(options.locales, { month: "long" }),
+ D: () => String(days),
+ DD: () => `${days}`.padStart(2, "0"),
+ H: () => String(hours),
+ HH: () => `${hours}`.padStart(2, "0"),
+ h: () => `${hours % 12 || 12}`.padStart(1, "0"),
+ hh: () => `${hours % 12 || 12}`.padStart(2, "0"),
+ m: () => String(minutes),
+ mm: () => `${minutes}`.padStart(2, "0"),
+ s: () => String(seconds),
+ ss: () => `${seconds}`.padStart(2, "0"),
+ SSS: () => `${milliseconds}`.padStart(3, "0"),
+ d: () => day,
+ dd: () => date.toLocaleDateString(options.locales, { weekday: "narrow" }),
+ ddd: () => date.toLocaleDateString(options.locales, { weekday: "short" }),
+ dddd: () => date.toLocaleDateString(options.locales, { weekday: "long" }),
+ A: () => meridiem(hours, minutes),
+ AA: () => meridiem(hours, minutes, false, true),
+ a: () => meridiem(hours, minutes, true),
+ aa: () => meridiem(hours, minutes, true, true)
+ };
+ return formatStr.replace(REGEX_FORMAT, (match, $1) => {
+ var _a2, _b;
+ return (_b = $1 != null ? $1 : (_a2 = matches[match]) == null ? void 0 : _a2.call(matches)) != null ? _b : match;
+ });
+}
+function normalizeDate(date) {
+ if (date === null)
+ return new Date(Number.NaN);
+ if (date === void 0)
+ return /* @__PURE__ */ new Date();
+ if (date instanceof Date)
+ return new Date(date);
+ if (typeof date === "string" && !/Z$/i.test(date)) {
+ const d = date.match(REGEX_PARSE);
+ if (d) {
+ const m = d[2] - 1 || 0;
+ const ms = (d[7] || "0").substring(0, 3);
+ return new Date(d[1], m, d[3] || 1, d[4] || 0, d[5] || 0, d[6] || 0, ms);
+ }
+ }
+ return new Date(date);
+}
+function useDateFormat(date, formatStr = "HH:mm:ss", options = {}) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => formatDate(normalizeDate(toValue(date)), toValue(formatStr), options));
+}
+
+function useIntervalFn(cb, interval = 1e3, options = {}) {
+ const {
+ immediate = true,
+ immediateCallback = false
+ } = options;
+ let timer = null;
+ const isActive = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ function clean() {
+ if (timer) {
+ clearInterval(timer);
+ timer = null;
+ }
+ }
+ function pause() {
+ isActive.value = false;
+ clean();
+ }
+ function resume() {
+ const intervalValue = toValue(interval);
+ if (intervalValue <= 0)
+ return;
+ isActive.value = true;
+ if (immediateCallback)
+ cb();
+ clean();
+ timer = setInterval(cb, intervalValue);
+ }
+ if (immediate && isClient)
+ resume();
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(interval) || typeof interval === "function") {
+ const stopWatch = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(interval, () => {
+ if (isActive.value && isClient)
+ resume();
+ });
+ tryOnScopeDispose(stopWatch);
+ }
+ tryOnScopeDispose(pause);
+ return {
+ isActive,
+ pause,
+ resume
+ };
+}
+
+var __defProp$8 = Object.defineProperty;
+var __getOwnPropSymbols$a = Object.getOwnPropertySymbols;
+var __hasOwnProp$a = Object.prototype.hasOwnProperty;
+var __propIsEnum$a = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$8 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$a.call(b, prop))
+ __defNormalProp$8(a, prop, b[prop]);
+ if (__getOwnPropSymbols$a)
+ for (var prop of __getOwnPropSymbols$a(b)) {
+ if (__propIsEnum$a.call(b, prop))
+ __defNormalProp$8(a, prop, b[prop]);
+ }
+ return a;
+};
+function useInterval(interval = 1e3, options = {}) {
+ const {
+ controls: exposeControls = false,
+ immediate = true,
+ callback
+ } = options;
+ const counter = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(0);
+ const update = () => counter.value += 1;
+ const reset = () => {
+ counter.value = 0;
+ };
+ const controls = useIntervalFn(
+ callback ? () => {
+ update();
+ callback(counter.value);
+ } : update,
+ interval,
+ { immediate }
+ );
+ if (exposeControls) {
+ return __spreadValues$8({
+ counter,
+ reset
+ }, controls);
+ } else {
+ return counter;
+ }
+}
+
+function useLastChanged(source, options = {}) {
+ var _a;
+ const ms = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)((_a = options.initialValue) != null ? _a : null);
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ source,
+ () => ms.value = timestamp(),
+ options
+ );
+ return ms;
+}
+
+function useTimeoutFn(cb, interval, options = {}) {
+ const {
+ immediate = true
+ } = options;
+ const isPending = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ let timer = null;
+ function clear() {
+ if (timer) {
+ clearTimeout(timer);
+ timer = null;
+ }
+ }
+ function stop() {
+ isPending.value = false;
+ clear();
+ }
+ function start(...args) {
+ clear();
+ isPending.value = true;
+ timer = setTimeout(() => {
+ isPending.value = false;
+ timer = null;
+ cb(...args);
+ }, toValue(interval));
+ }
+ if (immediate) {
+ isPending.value = true;
+ if (isClient)
+ start();
+ }
+ tryOnScopeDispose(stop);
+ return {
+ isPending: (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.readonly)(isPending),
+ start,
+ stop
+ };
+}
+
+var __defProp$7 = Object.defineProperty;
+var __getOwnPropSymbols$9 = Object.getOwnPropertySymbols;
+var __hasOwnProp$9 = Object.prototype.hasOwnProperty;
+var __propIsEnum$9 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$7 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$9.call(b, prop))
+ __defNormalProp$7(a, prop, b[prop]);
+ if (__getOwnPropSymbols$9)
+ for (var prop of __getOwnPropSymbols$9(b)) {
+ if (__propIsEnum$9.call(b, prop))
+ __defNormalProp$7(a, prop, b[prop]);
+ }
+ return a;
+};
+function useTimeout(interval = 1e3, options = {}) {
+ const {
+ controls: exposeControls = false,
+ callback
+ } = options;
+ const controls = useTimeoutFn(
+ callback != null ? callback : noop,
+ interval,
+ options
+ );
+ const ready = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => !controls.isPending.value);
+ if (exposeControls) {
+ return __spreadValues$7({
+ ready
+ }, controls);
+ } else {
+ return ready;
+ }
+}
+
+function useToNumber(value, options = {}) {
+ const {
+ method = "parseFloat",
+ radix,
+ nanToZero
+ } = options;
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ let resolved = toValue(value);
+ if (typeof resolved === "string")
+ resolved = Number[method](resolved, radix);
+ if (nanToZero && Number.isNaN(resolved))
+ resolved = 0;
+ return resolved;
+ });
+}
+
+function useToString(value) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => `${toValue(value)}`);
+}
+
+function useToggle(initialValue = false, options = {}) {
+ const {
+ truthyValue = true,
+ falsyValue = false
+ } = options;
+ const valueIsRef = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(initialValue);
+ const _value = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(initialValue);
+ function toggle(value) {
+ if (arguments.length) {
+ _value.value = value;
+ return _value.value;
+ } else {
+ const truthy = toValue(truthyValue);
+ _value.value = _value.value === truthy ? toValue(falsyValue) : truthy;
+ return _value.value;
+ }
+ }
+ if (valueIsRef)
+ return toggle;
+ else
+ return [_value, toggle];
+}
+
+function watchArray(source, cb, options) {
+ let oldList = (options == null ? void 0 : options.immediate) ? [] : [
+ ...source instanceof Function ? source() : Array.isArray(source) ? source : toValue(source)
+ ];
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(source, (newList, _, onCleanup) => {
+ const oldListRemains = Array.from({ length: oldList.length });
+ const added = [];
+ for (const obj of newList) {
+ let found = false;
+ for (let i = 0; i < oldList.length; i++) {
+ if (!oldListRemains[i] && obj === oldList[i]) {
+ oldListRemains[i] = true;
+ found = true;
+ break;
+ }
+ }
+ if (!found)
+ added.push(obj);
+ }
+ const removed = oldList.filter((_2, i) => !oldListRemains[i]);
+ cb(newList, oldList, added, removed, onCleanup);
+ oldList = [...newList];
+ }, options);
+}
+
+var __getOwnPropSymbols$8 = Object.getOwnPropertySymbols;
+var __hasOwnProp$8 = Object.prototype.hasOwnProperty;
+var __propIsEnum$8 = Object.prototype.propertyIsEnumerable;
+var __objRest$5 = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$8.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$8)
+ for (var prop of __getOwnPropSymbols$8(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$8.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function watchWithFilter(source, cb, options = {}) {
+ const _a = options, {
+ eventFilter = bypassFilter
+ } = _a, watchOptions = __objRest$5(_a, [
+ "eventFilter"
+ ]);
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ source,
+ createFilterWrapper(
+ eventFilter,
+ cb
+ ),
+ watchOptions
+ );
+}
+
+var __getOwnPropSymbols$7 = Object.getOwnPropertySymbols;
+var __hasOwnProp$7 = Object.prototype.hasOwnProperty;
+var __propIsEnum$7 = Object.prototype.propertyIsEnumerable;
+var __objRest$4 = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$7.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$7)
+ for (var prop of __getOwnPropSymbols$7(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$7.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function watchAtMost(source, cb, options) {
+ const _a = options, {
+ count
+ } = _a, watchOptions = __objRest$4(_a, [
+ "count"
+ ]);
+ const current = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(0);
+ const stop = watchWithFilter(
+ source,
+ (...args) => {
+ current.value += 1;
+ if (current.value >= toValue(count))
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.nextTick)(() => stop());
+ cb(...args);
+ },
+ watchOptions
+ );
+ return { count: current, stop };
+}
+
+var __defProp$6 = Object.defineProperty;
+var __defProps$6 = Object.defineProperties;
+var __getOwnPropDescs$6 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$6 = Object.getOwnPropertySymbols;
+var __hasOwnProp$6 = Object.prototype.hasOwnProperty;
+var __propIsEnum$6 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$6 = (obj, key, value) => key in obj ? __defProp$6(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$6 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$6.call(b, prop))
+ __defNormalProp$6(a, prop, b[prop]);
+ if (__getOwnPropSymbols$6)
+ for (var prop of __getOwnPropSymbols$6(b)) {
+ if (__propIsEnum$6.call(b, prop))
+ __defNormalProp$6(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$6 = (a, b) => __defProps$6(a, __getOwnPropDescs$6(b));
+var __objRest$3 = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$6.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$6)
+ for (var prop of __getOwnPropSymbols$6(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$6.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function watchDebounced(source, cb, options = {}) {
+ const _a = options, {
+ debounce = 0,
+ maxWait = void 0
+ } = _a, watchOptions = __objRest$3(_a, [
+ "debounce",
+ "maxWait"
+ ]);
+ return watchWithFilter(
+ source,
+ cb,
+ __spreadProps$6(__spreadValues$6({}, watchOptions), {
+ eventFilter: debounceFilter(debounce, { maxWait })
+ })
+ );
+}
+
+var __defProp$5 = Object.defineProperty;
+var __defProps$5 = Object.defineProperties;
+var __getOwnPropDescs$5 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols;
+var __hasOwnProp$5 = Object.prototype.hasOwnProperty;
+var __propIsEnum$5 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$5 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$5.call(b, prop))
+ __defNormalProp$5(a, prop, b[prop]);
+ if (__getOwnPropSymbols$5)
+ for (var prop of __getOwnPropSymbols$5(b)) {
+ if (__propIsEnum$5.call(b, prop))
+ __defNormalProp$5(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$5 = (a, b) => __defProps$5(a, __getOwnPropDescs$5(b));
+function watchDeep(source, cb, options) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ source,
+ cb,
+ __spreadProps$5(__spreadValues$5({}, options), {
+ deep: true
+ })
+ );
+}
+
+var __defProp$4 = Object.defineProperty;
+var __defProps$4 = Object.defineProperties;
+var __getOwnPropDescs$4 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$4 = Object.getOwnPropertySymbols;
+var __hasOwnProp$4 = Object.prototype.hasOwnProperty;
+var __propIsEnum$4 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$4 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$4.call(b, prop))
+ __defNormalProp$4(a, prop, b[prop]);
+ if (__getOwnPropSymbols$4)
+ for (var prop of __getOwnPropSymbols$4(b)) {
+ if (__propIsEnum$4.call(b, prop))
+ __defNormalProp$4(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$4 = (a, b) => __defProps$4(a, __getOwnPropDescs$4(b));
+var __objRest$2 = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$4.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$4)
+ for (var prop of __getOwnPropSymbols$4(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$4.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function watchIgnorable(source, cb, options = {}) {
+ const _a = options, {
+ eventFilter = bypassFilter
+ } = _a, watchOptions = __objRest$2(_a, [
+ "eventFilter"
+ ]);
+ const filteredCb = createFilterWrapper(
+ eventFilter,
+ cb
+ );
+ let ignoreUpdates;
+ let ignorePrevAsyncUpdates;
+ let stop;
+ if (watchOptions.flush === "sync") {
+ const ignore = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(false);
+ ignorePrevAsyncUpdates = () => {
+ };
+ ignoreUpdates = (updater) => {
+ ignore.value = true;
+ updater();
+ ignore.value = false;
+ };
+ stop = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ source,
+ (...args) => {
+ if (!ignore.value)
+ filteredCb(...args);
+ },
+ watchOptions
+ );
+ } else {
+ const disposables = [];
+ const ignoreCounter = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(0);
+ const syncCounter = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(0);
+ ignorePrevAsyncUpdates = () => {
+ ignoreCounter.value = syncCounter.value;
+ };
+ disposables.push(
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ source,
+ () => {
+ syncCounter.value++;
+ },
+ __spreadProps$4(__spreadValues$4({}, watchOptions), { flush: "sync" })
+ )
+ );
+ ignoreUpdates = (updater) => {
+ const syncCounterPrev = syncCounter.value;
+ updater();
+ ignoreCounter.value += syncCounter.value - syncCounterPrev;
+ };
+ disposables.push(
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ source,
+ (...args) => {
+ const ignore = ignoreCounter.value > 0 && ignoreCounter.value === syncCounter.value;
+ ignoreCounter.value = 0;
+ syncCounter.value = 0;
+ if (ignore)
+ return;
+ filteredCb(...args);
+ },
+ watchOptions
+ )
+ );
+ stop = () => {
+ disposables.forEach((fn) => fn());
+ };
+ }
+ return { stop, ignoreUpdates, ignorePrevAsyncUpdates };
+}
+
+var __defProp$3 = Object.defineProperty;
+var __defProps$3 = Object.defineProperties;
+var __getOwnPropDescs$3 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols;
+var __hasOwnProp$3 = Object.prototype.hasOwnProperty;
+var __propIsEnum$3 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$3 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$3.call(b, prop))
+ __defNormalProp$3(a, prop, b[prop]);
+ if (__getOwnPropSymbols$3)
+ for (var prop of __getOwnPropSymbols$3(b)) {
+ if (__propIsEnum$3.call(b, prop))
+ __defNormalProp$3(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$3 = (a, b) => __defProps$3(a, __getOwnPropDescs$3(b));
+function watchImmediate(source, cb, options) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ source,
+ cb,
+ __spreadProps$3(__spreadValues$3({}, options), {
+ immediate: true
+ })
+ );
+}
+
+function watchOnce(source, cb, options) {
+ const stop = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(source, (...args) => {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.nextTick)(() => stop());
+ return cb(...args);
+ }, options);
+}
+
+var __defProp$2 = Object.defineProperty;
+var __defProps$2 = Object.defineProperties;
+var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$2 = Object.getOwnPropertySymbols;
+var __hasOwnProp$2 = Object.prototype.hasOwnProperty;
+var __propIsEnum$2 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$2 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$2.call(b, prop))
+ __defNormalProp$2(a, prop, b[prop]);
+ if (__getOwnPropSymbols$2)
+ for (var prop of __getOwnPropSymbols$2(b)) {
+ if (__propIsEnum$2.call(b, prop))
+ __defNormalProp$2(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b));
+var __objRest$1 = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$2.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$2)
+ for (var prop of __getOwnPropSymbols$2(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$2.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function watchPausable(source, cb, options = {}) {
+ const _a = options, {
+ eventFilter: filter
+ } = _a, watchOptions = __objRest$1(_a, [
+ "eventFilter"
+ ]);
+ const { eventFilter, pause, resume, isActive } = pausableFilter(filter);
+ const stop = watchWithFilter(
+ source,
+ cb,
+ __spreadProps$2(__spreadValues$2({}, watchOptions), {
+ eventFilter
+ })
+ );
+ return { stop, pause, resume, isActive };
+}
+
+var __defProp$1 = Object.defineProperty;
+var __defProps$1 = Object.defineProperties;
+var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols$1 = Object.getOwnPropertySymbols;
+var __hasOwnProp$1 = Object.prototype.hasOwnProperty;
+var __propIsEnum$1 = Object.prototype.propertyIsEnumerable;
+var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues$1 = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp$1.call(b, prop))
+ __defNormalProp$1(a, prop, b[prop]);
+ if (__getOwnPropSymbols$1)
+ for (var prop of __getOwnPropSymbols$1(b)) {
+ if (__propIsEnum$1.call(b, prop))
+ __defNormalProp$1(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps$1 = (a, b) => __defProps$1(a, __getOwnPropDescs$1(b));
+var __objRest = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp$1.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols$1)
+ for (var prop of __getOwnPropSymbols$1(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum$1.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+function watchThrottled(source, cb, options = {}) {
+ const _a = options, {
+ throttle = 0,
+ trailing = true,
+ leading = true
+ } = _a, watchOptions = __objRest(_a, [
+ "throttle",
+ "trailing",
+ "leading"
+ ]);
+ return watchWithFilter(
+ source,
+ cb,
+ __spreadProps$1(__spreadValues$1({}, watchOptions), {
+ eventFilter: throttleFilter(throttle, trailing, leading)
+ })
+ );
+}
+
+var __defProp = Object.defineProperty;
+var __defProps = Object.defineProperties;
+var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols = Object.getOwnPropertySymbols;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __propIsEnum = Object.prototype.propertyIsEnumerable;
+var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp.call(b, prop))
+ __defNormalProp(a, prop, b[prop]);
+ if (__getOwnPropSymbols)
+ for (var prop of __getOwnPropSymbols(b)) {
+ if (__propIsEnum.call(b, prop))
+ __defNormalProp(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
+function watchTriggerable(source, cb, options = {}) {
+ let cleanupFn;
+ function onEffect() {
+ if (!cleanupFn)
+ return;
+ const fn = cleanupFn;
+ cleanupFn = void 0;
+ fn();
+ }
+ function onCleanup(callback) {
+ cleanupFn = callback;
+ }
+ const _cb = (value, oldValue) => {
+ onEffect();
+ return cb(value, oldValue, onCleanup);
+ };
+ const res = watchIgnorable(source, _cb, options);
+ const { ignoreUpdates } = res;
+ const trigger = () => {
+ let res2;
+ ignoreUpdates(() => {
+ res2 = _cb(getWatchSources(source), getOldValue(source));
+ });
+ return res2;
+ };
+ return __spreadProps(__spreadValues({}, res), {
+ trigger
+ });
+}
+function getWatchSources(sources) {
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isReactive)(sources))
+ return sources;
+ if (Array.isArray(sources))
+ return sources.map((item) => toValue(item));
+ return toValue(sources);
+}
+function getOldValue(source) {
+ return Array.isArray(source) ? source.map(() => void 0) : void 0;
+}
+
+function whenever(source, cb, options) {
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(
+ source,
+ (v, ov, onInvalidate) => {
+ if (v)
+ cb(v, ov, onInvalidate);
+ },
+ options
+ );
+}
+
+
+
+
+/***/ }),
+
+/***/ "./node_modules/@vueuse/shared/node_modules/vue-demi/lib/index.mjs":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@vueuse/shared/node_modules/vue-demi/lib/index.mjs ***!
+ \*************************************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ EffectScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.EffectScope; },
+/* harmony export */ Fragment: function() { return /* binding */ Fragment; },
+/* harmony export */ KeepAlive: function() { return /* binding */ KeepAlive; },
+/* harmony export */ Suspense: function() { return /* binding */ Suspense; },
+/* harmony export */ Teleport: function() { return /* binding */ Teleport; },
+/* harmony export */ Transition: function() { return /* binding */ Transition; },
+/* harmony export */ TransitionGroup: function() { return /* binding */ TransitionGroup; },
+/* harmony export */ Vue: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__["default"]; },
+/* harmony export */ Vue2: function() { return /* binding */ Vue2; },
+/* harmony export */ computed: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.computed; },
+/* harmony export */ createApp: function() { return /* binding */ createApp; },
+/* harmony export */ customRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.customRef; },
+/* harmony export */ defineAsyncComponent: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.defineAsyncComponent; },
+/* harmony export */ defineComponent: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.defineComponent; },
+/* harmony export */ del: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.del; },
+/* harmony export */ effectScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.effectScope; },
+/* harmony export */ getCurrentInstance: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance; },
+/* harmony export */ getCurrentScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentScope; },
+/* harmony export */ h: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.h; },
+/* harmony export */ hasInjectionContext: function() { return /* binding */ hasInjectionContext; },
+/* harmony export */ inject: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.inject; },
+/* harmony export */ install: function() { return /* binding */ install; },
+/* harmony export */ isProxy: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isProxy; },
+/* harmony export */ isReactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isReactive; },
+/* harmony export */ isReadonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isReadonly; },
+/* harmony export */ isRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isRef; },
+/* harmony export */ isShallow: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isShallow; },
+/* harmony export */ isVue2: function() { return /* binding */ isVue2; },
+/* harmony export */ isVue3: function() { return /* binding */ isVue3; },
+/* harmony export */ markRaw: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.markRaw; },
+/* harmony export */ mergeDefaults: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.mergeDefaults; },
+/* harmony export */ nextTick: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.nextTick; },
+/* harmony export */ onActivated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onActivated; },
+/* harmony export */ onBeforeMount: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeMount; },
+/* harmony export */ onBeforeUnmount: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeUnmount; },
+/* harmony export */ onBeforeUpdate: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeUpdate; },
+/* harmony export */ onDeactivated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onDeactivated; },
+/* harmony export */ onErrorCaptured: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onErrorCaptured; },
+/* harmony export */ onMounted: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onMounted; },
+/* harmony export */ onRenderTracked: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onRenderTracked; },
+/* harmony export */ onRenderTriggered: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onRenderTriggered; },
+/* harmony export */ onScopeDispose: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onScopeDispose; },
+/* harmony export */ onServerPrefetch: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onServerPrefetch; },
+/* harmony export */ onUnmounted: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onUnmounted; },
+/* harmony export */ onUpdated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onUpdated; },
+/* harmony export */ provide: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.provide; },
+/* harmony export */ proxyRefs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.proxyRefs; },
+/* harmony export */ reactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.reactive; },
+/* harmony export */ readonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.readonly; },
+/* harmony export */ ref: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.ref; },
+/* harmony export */ set: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.set; },
+/* harmony export */ shallowReactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowReactive; },
+/* harmony export */ shallowReadonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowReadonly; },
+/* harmony export */ shallowRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowRef; },
+/* harmony export */ toRaw: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRaw; },
+/* harmony export */ toRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRef; },
+/* harmony export */ toRefs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRefs; },
+/* harmony export */ triggerRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.triggerRef; },
+/* harmony export */ unref: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.unref; },
+/* harmony export */ useAttrs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useAttrs; },
+/* harmony export */ useCssModule: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useCssModule; },
+/* harmony export */ useCssVars: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useCssVars; },
+/* harmony export */ useListeners: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useListeners; },
+/* harmony export */ useSlots: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useSlots; },
+/* harmony export */ version: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.version; },
+/* harmony export */ warn: function() { return /* binding */ warn; },
+/* harmony export */ watch: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watch; },
+/* harmony export */ watchEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchEffect; },
+/* harmony export */ watchPostEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchPostEffect; },
+/* harmony export */ watchSyncEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchSyncEffect; }
+/* harmony export */ });
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+
+
+
+var isVue2 = true
+var isVue3 = false
+var Vue2 = vue__WEBPACK_IMPORTED_MODULE_0__["default"]
+var warn = vue__WEBPACK_IMPORTED_MODULE_0__["default"].util.warn
+
+function install() {}
+
+// createApp polyfill
+function createApp(rootComponent, rootProps) {
+ var vm
+ var provide = {}
+ var app = {
+ config: vue__WEBPACK_IMPORTED_MODULE_0__["default"].config,
+ use: vue__WEBPACK_IMPORTED_MODULE_0__["default"].use.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ mixin: vue__WEBPACK_IMPORTED_MODULE_0__["default"].mixin.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ component: vue__WEBPACK_IMPORTED_MODULE_0__["default"].component.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ provide: function (key, value) {
+ provide[key] = value
+ return this
+ },
+ directive: function (name, dir) {
+ if (dir) {
+ vue__WEBPACK_IMPORTED_MODULE_0__["default"].directive(name, dir)
+ return app
+ } else {
+ return vue__WEBPACK_IMPORTED_MODULE_0__["default"].directive(name)
+ }
+ },
+ mount: function (el, hydrating) {
+ if (!vm) {
+ vm = new vue__WEBPACK_IMPORTED_MODULE_0__["default"](Object.assign({ propsData: rootProps }, rootComponent, { provide: Object.assign(provide, rootComponent.provide) }))
+ vm.$mount(el, hydrating)
+ return vm
+ } else {
+ return vm
+ }
+ },
+ unmount: function () {
+ if (vm) {
+ vm.$destroy()
+ vm = undefined
+ }
+ },
+ }
+ return app
+}
+
+
+
+// Vue 3 components mock
+function createMockComponent(name) {
+ return {
+ setup() {
+ throw new Error('[vue-demi] ' + name + ' is not supported in Vue 2. It\'s provided to avoid compiler errors.')
+ }
+ }
+}
+var Fragment = /*#__PURE__*/ createMockComponent('Fragment')
+var Transition = /*#__PURE__*/ createMockComponent('Transition')
+var TransitionGroup = /*#__PURE__*/ createMockComponent('TransitionGroup')
+var Teleport = /*#__PURE__*/ createMockComponent('Teleport')
+var Suspense = /*#__PURE__*/ createMockComponent('Suspense')
+var KeepAlive = /*#__PURE__*/ createMockComponent('KeepAlive')
+
+
+
+// Not implemented https://github.com/vuejs/core/pull/8111, falls back to getCurrentInstance()
+function hasInjectionContext() {
+ return !!(0,vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance)()
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/decode-uri-component/index.js":
+/*!****************************************************!*\
+ !*** ./node_modules/decode-uri-component/index.js ***!
+ \****************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ "default": function() { return /* binding */ decodeUriComponent; }
+/* harmony export */ });
+const token = '%[a-f0-9]{2}';
+const singleMatcher = new RegExp('(' + token + ')|([^%]+?)', 'gi');
+const multiMatcher = new RegExp('(' + token + ')+', 'gi');
+
+function decodeComponents(components, split) {
+ try {
+ // Try to decode the entire string first
+ return [decodeURIComponent(components.join(''))];
+ } catch {
+ // Do nothing
+ }
+
+ if (components.length === 1) {
+ return components;
+ }
+
+ split = split || 1;
+
+ // Split the array in 2 parts
+ const left = components.slice(0, split);
+ const right = components.slice(split);
+
+ return Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));
+}
+
+function decode(input) {
+ try {
+ return decodeURIComponent(input);
+ } catch {
+ let tokens = input.match(singleMatcher) || [];
+
+ for (let i = 1; i < tokens.length; i++) {
+ input = decodeComponents(tokens, i).join('');
+
+ tokens = input.match(singleMatcher) || [];
+ }
+
+ return input;
+ }
+}
+
+function customDecodeURIComponent(input) {
+ // Keep track of all the replacements and prefill the map with the `BOM`
+ const replaceMap = {
+ '%FE%FF': '\uFFFD\uFFFD',
+ '%FF%FE': '\uFFFD\uFFFD',
+ };
+
+ let match = multiMatcher.exec(input);
+ while (match) {
+ try {
+ // Decode as big chunks as possible
+ replaceMap[match[0]] = decodeURIComponent(match[0]);
+ } catch {
+ const result = decode(match[0]);
+
+ if (result !== match[0]) {
+ replaceMap[match[0]] = result;
+ }
+ }
+
+ match = multiMatcher.exec(input);
+ }
+
+ // Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else
+ replaceMap['%C2'] = '\uFFFD';
+
+ const entries = Object.keys(replaceMap);
+
+ for (const key of entries) {
+ // Replace all decoded components
+ input = input.replace(new RegExp(key, 'g'), replaceMap[key]);
+ }
+
+ return input;
+}
+
+function decodeUriComponent(encodedURI) {
+ if (typeof encodedURI !== 'string') {
+ throw new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');
+ }
+
+ try {
+ // Try the built in decoder first
+ return decodeURIComponent(encodedURI);
+ } catch {
+ // Fallback to a more advanced decoder
+ return customDecodeURIComponent(encodedURI);
+ }
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/pinia/dist/pinia.mjs":
+/*!*******************************************!*\
+ !*** ./node_modules/pinia/dist/pinia.mjs ***!
+ \*******************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ MutationType: function() { return /* binding */ MutationType; },
+/* harmony export */ PiniaVuePlugin: function() { return /* binding */ PiniaVuePlugin; },
+/* harmony export */ acceptHMRUpdate: function() { return /* binding */ acceptHMRUpdate; },
+/* harmony export */ createPinia: function() { return /* binding */ createPinia; },
+/* harmony export */ defineStore: function() { return /* binding */ defineStore; },
+/* harmony export */ getActivePinia: function() { return /* binding */ getActivePinia; },
+/* harmony export */ mapActions: function() { return /* binding */ mapActions; },
+/* harmony export */ mapGetters: function() { return /* binding */ mapGetters; },
+/* harmony export */ mapState: function() { return /* binding */ mapState; },
+/* harmony export */ mapStores: function() { return /* binding */ mapStores; },
+/* harmony export */ mapWritableState: function() { return /* binding */ mapWritableState; },
+/* harmony export */ setActivePinia: function() { return /* binding */ setActivePinia; },
+/* harmony export */ setMapStoreSuffix: function() { return /* binding */ setMapStoreSuffix; },
+/* harmony export */ skipHydrate: function() { return /* binding */ skipHydrate; },
+/* harmony export */ storeToRefs: function() { return /* binding */ storeToRefs; }
+/* harmony export */ });
+/* harmony import */ var vue_demi__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-demi */ "./node_modules/pinia/node_modules/vue-demi/lib/index.mjs");
+/* harmony import */ var _vue_devtools_api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @vue/devtools-api */ "./node_modules/@vue/devtools-api/lib/esm/index.js");
+/* provided dependency */ var console = __webpack_require__(/*! ./node_modules/console-browserify/index.js */ "./node_modules/console-browserify/index.js");
+/*!
+ * pinia v2.1.6
+ * (c) 2023 Eduardo San Martin Morote
+ * @license MIT
+ */
+
+
+
+/**
+ * setActivePinia must be called to handle SSR at the top of functions like
+ * `fetch`, `setup`, `serverPrefetch` and others
+ */
+let activePinia;
+/**
+ * Sets or unsets the active pinia. Used in SSR and internally when calling
+ * actions and getters
+ *
+ * @param pinia - Pinia instance
+ */
+// @ts-expect-error: cannot constrain the type of the return
+const setActivePinia = (pinia) => (activePinia = pinia);
+/**
+ * Get the currently active pinia if there is any.
+ */
+const getActivePinia = () => ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.hasInjectionContext)() && (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.inject)(piniaSymbol)) || activePinia;
+const piniaSymbol = (( true) ? Symbol('pinia') : /* istanbul ignore next */ 0);
+
+function isPlainObject(
+// eslint-disable-next-line @typescript-eslint/no-explicit-any
+o) {
+ return (o &&
+ typeof o === 'object' &&
+ Object.prototype.toString.call(o) === '[object Object]' &&
+ typeof o.toJSON !== 'function');
+}
+// type DeepReadonly<T> = { readonly [P in keyof T]: DeepReadonly<T[P]> }
+// TODO: can we change these to numbers?
+/**
+ * Possible types for SubscriptionCallback
+ */
+var MutationType;
+(function (MutationType) {
+ /**
+ * Direct mutation of the state:
+ *
+ * - `store.name = 'new name'`
+ * - `store.$state.name = 'new name'`
+ * - `store.list.push('new item')`
+ */
+ MutationType["direct"] = "direct";
+ /**
+ * Mutated the state with `$patch` and an object
+ *
+ * - `store.$patch({ name: 'newName' })`
+ */
+ MutationType["patchObject"] = "patch object";
+ /**
+ * Mutated the state with `$patch` and a function
+ *
+ * - `store.$patch(state => state.name = 'newName')`
+ */
+ MutationType["patchFunction"] = "patch function";
+ // maybe reset? for $state = {} and $reset
+})(MutationType || (MutationType = {}));
+
+const IS_CLIENT = typeof window !== 'undefined';
+/**
+ * Should we add the devtools plugins.
+ * - only if dev mode or forced through the prod devtools flag
+ * - not in test
+ * - only if window exists (could change in the future)
+ */
+const USE_DEVTOOLS = true && IS_CLIENT;
+
+/*
+ * FileSaver.js A saveAs() FileSaver implementation.
+ *
+ * Originally by Eli Grey, adapted as an ESM module by Eduardo San Martin
+ * Morote.
+ *
+ * License : MIT
+ */
+// The one and only way of getting global scope in all environments
+// https://stackoverflow.com/q/3277182/1008999
+const _global = /*#__PURE__*/ (() => typeof window === 'object' && window.window === window
+ ? window
+ : typeof self === 'object' && self.self === self
+ ? self
+ : typeof global === 'object' && global.global === global
+ ? global
+ : typeof globalThis === 'object'
+ ? globalThis
+ : { HTMLElement: null })();
+function bom(blob, { autoBom = false } = {}) {
+ // prepend BOM for UTF-8 XML and text/* types (including HTML)
+ // note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF
+ if (autoBom &&
+ /^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(blob.type)) {
+ return new Blob([String.fromCharCode(0xfeff), blob], { type: blob.type });
+ }
+ return blob;
+}
+function download(url, name, opts) {
+ const xhr = new XMLHttpRequest();
+ xhr.open('GET', url);
+ xhr.responseType = 'blob';
+ xhr.onload = function () {
+ saveAs(xhr.response, name, opts);
+ };
+ xhr.onerror = function () {
+ console.error('could not download file');
+ };
+ xhr.send();
+}
+function corsEnabled(url) {
+ const xhr = new XMLHttpRequest();
+ // use sync to avoid popup blocker
+ xhr.open('HEAD', url, false);
+ try {
+ xhr.send();
+ }
+ catch (e) { }
+ return xhr.status >= 200 && xhr.status <= 299;
+}
+// `a.click()` doesn't work for all browsers (#465)
+function click(node) {
+ try {
+ node.dispatchEvent(new MouseEvent('click'));
+ }
+ catch (e) {
+ const evt = document.createEvent('MouseEvents');
+ evt.initMouseEvent('click', true, true, window, 0, 0, 0, 80, 20, false, false, false, false, 0, null);
+ node.dispatchEvent(evt);
+ }
+}
+const _navigator =
+ typeof navigator === 'object' ? navigator : { userAgent: '' };
+// Detect WebView inside a native macOS app by ruling out all browsers
+// We just need to check for 'Safari' because all other browsers (besides Firefox) include that too
+// https://www.whatismybrowser.com/guides/the-latest-user-agent/macos
+const isMacOSWebView = /*#__PURE__*/ (() => /Macintosh/.test(_navigator.userAgent) &&
+ /AppleWebKit/.test(_navigator.userAgent) &&
+ !/Safari/.test(_navigator.userAgent))();
+const saveAs = !IS_CLIENT
+ ? () => { } // noop
+ : // Use download attribute first if possible (#193 Lumia mobile) unless this is a macOS WebView or mini program
+ typeof HTMLAnchorElement !== 'undefined' &&
+ 'download' in HTMLAnchorElement.prototype &&
+ !isMacOSWebView
+ ? downloadSaveAs
+ : // Use msSaveOrOpenBlob as a second approach
+ 'msSaveOrOpenBlob' in _navigator
+ ? msSaveAs
+ : // Fallback to using FileReader and a popup
+ fileSaverSaveAs;
+function downloadSaveAs(blob, name = 'download', opts) {
+ const a = document.createElement('a');
+ a.download = name;
+ a.rel = 'noopener'; // tabnabbing
+ // TODO: detect chrome extensions & packaged apps
+ // a.target = '_blank'
+ if (typeof blob === 'string') {
+ // Support regular links
+ a.href = blob;
+ if (a.origin !== location.origin) {
+ if (corsEnabled(a.href)) {
+ download(blob, name, opts);
+ }
+ else {
+ a.target = '_blank';
+ click(a);
+ }
+ }
+ else {
+ click(a);
+ }
+ }
+ else {
+ // Support blobs
+ a.href = URL.createObjectURL(blob);
+ setTimeout(function () {
+ URL.revokeObjectURL(a.href);
+ }, 4e4); // 40s
+ setTimeout(function () {
+ click(a);
+ }, 0);
+ }
+}
+function msSaveAs(blob, name = 'download', opts) {
+ if (typeof blob === 'string') {
+ if (corsEnabled(blob)) {
+ download(blob, name, opts);
+ }
+ else {
+ const a = document.createElement('a');
+ a.href = blob;
+ a.target = '_blank';
+ setTimeout(function () {
+ click(a);
+ });
+ }
+ }
+ else {
+ // @ts-ignore: works on windows
+ navigator.msSaveOrOpenBlob(bom(blob, opts), name);
+ }
+}
+function fileSaverSaveAs(blob, name, opts, popup) {
+ // Open a popup immediately do go around popup blocker
+ // Mostly only available on user interaction and the fileReader is async so...
+ popup = popup || open('', '_blank');
+ if (popup) {
+ popup.document.title = popup.document.body.innerText = 'downloading...';
+ }
+ if (typeof blob === 'string')
+ return download(blob, name, opts);
+ const force = blob.type === 'application/octet-stream';
+ const isSafari = /constructor/i.test(String(_global.HTMLElement)) || 'safari' in _global;
+ const isChromeIOS = /CriOS\/[\d]+/.test(navigator.userAgent);
+ if ((isChromeIOS || (force && isSafari) || isMacOSWebView) &&
+ typeof FileReader !== 'undefined') {
+ // Safari doesn't allow downloading of blob URLs
+ const reader = new FileReader();
+ reader.onloadend = function () {
+ let url = reader.result;
+ if (typeof url !== 'string') {
+ popup = null;
+ throw new Error('Wrong reader.result type');
+ }
+ url = isChromeIOS
+ ? url
+ : url.replace(/^data:[^;]*;/, 'data:attachment/file;');
+ if (popup) {
+ popup.location.href = url;
+ }
+ else {
+ location.assign(url);
+ }
+ popup = null; // reverse-tabnabbing #460
+ };
+ reader.readAsDataURL(blob);
+ }
+ else {
+ const url = URL.createObjectURL(blob);
+ if (popup)
+ popup.location.assign(url);
+ else
+ location.href = url;
+ popup = null; // reverse-tabnabbing #460
+ setTimeout(function () {
+ URL.revokeObjectURL(url);
+ }, 4e4); // 40s
+ }
+}
+
+/**
+ * Shows a toast or console.log
+ *
+ * @param message - message to log
+ * @param type - different color of the tooltip
+ */
+function toastMessage(message, type) {
+ const piniaMessage = '🍍 ' + message;
+ if (typeof __VUE_DEVTOOLS_TOAST__ === 'function') {
+ // No longer available :(
+ __VUE_DEVTOOLS_TOAST__(piniaMessage, type);
+ }
+ else if (type === 'error') {
+ console.error(piniaMessage);
+ }
+ else if (type === 'warn') {
+ console.warn(piniaMessage);
+ }
+ else {
+ console.log(piniaMessage);
+ }
+}
+function isPinia(o) {
+ return '_a' in o && 'install' in o;
+}
+
+/**
+ * This file contain devtools actions, they are not Pinia actions.
+ */
+// ---
+function checkClipboardAccess() {
+ if (!('clipboard' in navigator)) {
+ toastMessage(`Your browser doesn't support the Clipboard API`, 'error');
+ return true;
+ }
+}
+function checkNotFocusedError(error) {
+ if (error instanceof Error &&
+ error.message.toLowerCase().includes('document is not focused')) {
+ toastMessage('You need to activate the "Emulate a focused page" setting in the "Rendering" panel of devtools.', 'warn');
+ return true;
+ }
+ return false;
+}
+async function actionGlobalCopyState(pinia) {
+ if (checkClipboardAccess())
+ return;
+ try {
+ await navigator.clipboard.writeText(JSON.stringify(pinia.state.value));
+ toastMessage('Global state copied to clipboard.');
+ }
+ catch (error) {
+ if (checkNotFocusedError(error))
+ return;
+ toastMessage(`Failed to serialize the state. Check the console for more details.`, 'error');
+ console.error(error);
+ }
+}
+async function actionGlobalPasteState(pinia) {
+ if (checkClipboardAccess())
+ return;
+ try {
+ loadStoresState(pinia, JSON.parse(await navigator.clipboard.readText()));
+ toastMessage('Global state pasted from clipboard.');
+ }
+ catch (error) {
+ if (checkNotFocusedError(error))
+ return;
+ toastMessage(`Failed to deserialize the state from clipboard. Check the console for more details.`, 'error');
+ console.error(error);
+ }
+}
+async function actionGlobalSaveState(pinia) {
+ try {
+ saveAs(new Blob([JSON.stringify(pinia.state.value)], {
+ type: 'text/plain;charset=utf-8',
+ }), 'pinia-state.json');
+ }
+ catch (error) {
+ toastMessage(`Failed to export the state as JSON. Check the console for more details.`, 'error');
+ console.error(error);
+ }
+}
+let fileInput;
+function getFileOpener() {
+ if (!fileInput) {
+ fileInput = document.createElement('input');
+ fileInput.type = 'file';
+ fileInput.accept = '.json';
+ }
+ function openFile() {
+ return new Promise((resolve, reject) => {
+ fileInput.onchange = async () => {
+ const files = fileInput.files;
+ if (!files)
+ return resolve(null);
+ const file = files.item(0);
+ if (!file)
+ return resolve(null);
+ return resolve({ text: await file.text(), file });
+ };
+ // @ts-ignore: TODO: changed from 4.3 to 4.4
+ fileInput.oncancel = () => resolve(null);
+ fileInput.onerror = reject;
+ fileInput.click();
+ });
+ }
+ return openFile;
+}
+async function actionGlobalOpenStateFile(pinia) {
+ try {
+ const open = getFileOpener();
+ const result = await open();
+ if (!result)
+ return;
+ const { text, file } = result;
+ loadStoresState(pinia, JSON.parse(text));
+ toastMessage(`Global state imported from "${file.name}".`);
+ }
+ catch (error) {
+ toastMessage(`Failed to import the state from JSON. Check the console for more details.`, 'error');
+ console.error(error);
+ }
+}
+function loadStoresState(pinia, state) {
+ for (const key in state) {
+ const storeState = pinia.state.value[key];
+ if (storeState) {
+ Object.assign(storeState, state[key]);
+ }
+ }
+}
+
+function formatDisplay(display) {
+ return {
+ _custom: {
+ display,
+ },
+ };
+}
+const PINIA_ROOT_LABEL = '🍍 Pinia (root)';
+const PINIA_ROOT_ID = '_root';
+function formatStoreForInspectorTree(store) {
+ return isPinia(store)
+ ? {
+ id: PINIA_ROOT_ID,
+ label: PINIA_ROOT_LABEL,
+ }
+ : {
+ id: store.$id,
+ label: store.$id,
+ };
+}
+function formatStoreForInspectorState(store) {
+ if (isPinia(store)) {
+ const storeNames = Array.from(store._s.keys());
+ const storeMap = store._s;
+ const state = {
+ state: storeNames.map((storeId) => ({
+ editable: true,
+ key: storeId,
+ value: store.state.value[storeId],
+ })),
+ getters: storeNames
+ .filter((id) => storeMap.get(id)._getters)
+ .map((id) => {
+ const store = storeMap.get(id);
+ return {
+ editable: false,
+ key: id,
+ value: store._getters.reduce((getters, key) => {
+ getters[key] = store[key];
+ return getters;
+ }, {}),
+ };
+ }),
+ };
+ return state;
+ }
+ const state = {
+ state: Object.keys(store.$state).map((key) => ({
+ editable: true,
+ key,
+ value: store.$state[key],
+ })),
+ };
+ // avoid adding empty getters
+ if (store._getters && store._getters.length) {
+ state.getters = store._getters.map((getterName) => ({
+ editable: false,
+ key: getterName,
+ value: store[getterName],
+ }));
+ }
+ if (store._customProperties.size) {
+ state.customProperties = Array.from(store._customProperties).map((key) => ({
+ editable: true,
+ key,
+ value: store[key],
+ }));
+ }
+ return state;
+}
+function formatEventData(events) {
+ if (!events)
+ return {};
+ if (Array.isArray(events)) {
+ // TODO: handle add and delete for arrays and objects
+ return events.reduce((data, event) => {
+ data.keys.push(event.key);
+ data.operations.push(event.type);
+ data.oldValue[event.key] = event.oldValue;
+ data.newValue[event.key] = event.newValue;
+ return data;
+ }, {
+ oldValue: {},
+ keys: [],
+ operations: [],
+ newValue: {},
+ });
+ }
+ else {
+ return {
+ operation: formatDisplay(events.type),
+ key: formatDisplay(events.key),
+ oldValue: events.oldValue,
+ newValue: events.newValue,
+ };
+ }
+}
+function formatMutationType(type) {
+ switch (type) {
+ case MutationType.direct:
+ return 'mutation';
+ case MutationType.patchFunction:
+ return '$patch';
+ case MutationType.patchObject:
+ return '$patch';
+ default:
+ return 'unknown';
+ }
+}
+
+// timeline can be paused when directly changing the state
+let isTimelineActive = true;
+const componentStateTypes = [];
+const MUTATIONS_LAYER_ID = 'pinia:mutations';
+const INSPECTOR_ID = 'pinia';
+const { assign: assign$1 } = Object;
+/**
+ * Gets the displayed name of a store in devtools
+ *
+ * @param id - id of the store
+ * @returns a formatted string
+ */
+const getStoreType = (id) => '🍍 ' + id;
+/**
+ * Add the pinia plugin without any store. Allows displaying a Pinia plugin tab
+ * as soon as it is added to the application.
+ *
+ * @param app - Vue application
+ * @param pinia - pinia instance
+ */
+function registerPiniaDevtools(app, pinia) {
+ (0,_vue_devtools_api__WEBPACK_IMPORTED_MODULE_1__.setupDevtoolsPlugin)({
+ id: 'dev.esm.pinia',
+ label: 'Pinia 🍍',
+ logo: 'https://pinia.vuejs.org/logo.svg',
+ packageName: 'pinia',
+ homepage: 'https://pinia.vuejs.org',
+ componentStateTypes,
+ app,
+ }, (api) => {
+ if (typeof api.now !== 'function') {
+ toastMessage('You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html.');
+ }
+ api.addTimelineLayer({
+ id: MUTATIONS_LAYER_ID,
+ label: `Pinia 🍍`,
+ color: 0xe5df88,
+ });
+ api.addInspector({
+ id: INSPECTOR_ID,
+ label: 'Pinia 🍍',
+ icon: 'storage',
+ treeFilterPlaceholder: 'Search stores',
+ actions: [
+ {
+ icon: 'content_copy',
+ action: () => {
+ actionGlobalCopyState(pinia);
+ },
+ tooltip: 'Serialize and copy the state',
+ },
+ {
+ icon: 'content_paste',
+ action: async () => {
+ await actionGlobalPasteState(pinia);
+ api.sendInspectorTree(INSPECTOR_ID);
+ api.sendInspectorState(INSPECTOR_ID);
+ },
+ tooltip: 'Replace the state with the content of your clipboard',
+ },
+ {
+ icon: 'save',
+ action: () => {
+ actionGlobalSaveState(pinia);
+ },
+ tooltip: 'Save the state as a JSON file',
+ },
+ {
+ icon: 'folder_open',
+ action: async () => {
+ await actionGlobalOpenStateFile(pinia);
+ api.sendInspectorTree(INSPECTOR_ID);
+ api.sendInspectorState(INSPECTOR_ID);
+ },
+ tooltip: 'Import the state from a JSON file',
+ },
+ ],
+ nodeActions: [
+ {
+ icon: 'restore',
+ tooltip: 'Reset the state (with "$reset")',
+ action: (nodeId) => {
+ const store = pinia._s.get(nodeId);
+ if (!store) {
+ toastMessage(`Cannot reset "${nodeId}" store because it wasn't found.`, 'warn');
+ }
+ else if (typeof store.$reset !== 'function') {
+ toastMessage(`Cannot reset "${nodeId}" store because it doesn't have a "$reset" method implemented.`, 'warn');
+ }
+ else {
+ store.$reset();
+ toastMessage(`Store "${nodeId}" reset.`);
+ }
+ },
+ },
+ ],
+ });
+ api.on.inspectComponent((payload, ctx) => {
+ const proxy = (payload.componentInstance &&
+ payload.componentInstance.proxy);
+ if (proxy && proxy._pStores) {
+ const piniaStores = payload.componentInstance.proxy._pStores;
+ Object.values(piniaStores).forEach((store) => {
+ payload.instanceData.state.push({
+ type: getStoreType(store.$id),
+ key: 'state',
+ editable: true,
+ value: store._isOptionsAPI
+ ? {
+ _custom: {
+ value: (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRaw)(store.$state),
+ actions: [
+ {
+ icon: 'restore',
+ tooltip: 'Reset the state of this store',
+ action: () => store.$reset(),
+ },
+ ],
+ },
+ }
+ : // NOTE: workaround to unwrap transferred refs
+ Object.keys(store.$state).reduce((state, key) => {
+ state[key] = store.$state[key];
+ return state;
+ }, {}),
+ });
+ if (store._getters && store._getters.length) {
+ payload.instanceData.state.push({
+ type: getStoreType(store.$id),
+ key: 'getters',
+ editable: false,
+ value: store._getters.reduce((getters, key) => {
+ try {
+ getters[key] = store[key];
+ }
+ catch (error) {
+ // @ts-expect-error: we just want to show it in devtools
+ getters[key] = error;
+ }
+ return getters;
+ }, {}),
+ });
+ }
+ });
+ }
+ });
+ api.on.getInspectorTree((payload) => {
+ if (payload.app === app && payload.inspectorId === INSPECTOR_ID) {
+ let stores = [pinia];
+ stores = stores.concat(Array.from(pinia._s.values()));
+ payload.rootNodes = (payload.filter
+ ? stores.filter((store) => '$id' in store
+ ? store.$id
+ .toLowerCase()
+ .includes(payload.filter.toLowerCase())
+ : PINIA_ROOT_LABEL.toLowerCase().includes(payload.filter.toLowerCase()))
+ : stores).map(formatStoreForInspectorTree);
+ }
+ });
+ api.on.getInspectorState((payload) => {
+ if (payload.app === app && payload.inspectorId === INSPECTOR_ID) {
+ const inspectedStore = payload.nodeId === PINIA_ROOT_ID
+ ? pinia
+ : pinia._s.get(payload.nodeId);
+ if (!inspectedStore) {
+ // this could be the selected store restored for a different project
+ // so it's better not to say anything here
+ return;
+ }
+ if (inspectedStore) {
+ payload.state = formatStoreForInspectorState(inspectedStore);
+ }
+ }
+ });
+ api.on.editInspectorState((payload, ctx) => {
+ if (payload.app === app && payload.inspectorId === INSPECTOR_ID) {
+ const inspectedStore = payload.nodeId === PINIA_ROOT_ID
+ ? pinia
+ : pinia._s.get(payload.nodeId);
+ if (!inspectedStore) {
+ return toastMessage(`store "${payload.nodeId}" not found`, 'error');
+ }
+ const { path } = payload;
+ if (!isPinia(inspectedStore)) {
+ // access only the state
+ if (path.length !== 1 ||
+ !inspectedStore._customProperties.has(path[0]) ||
+ path[0] in inspectedStore.$state) {
+ path.unshift('$state');
+ }
+ }
+ else {
+ // Root access, we can omit the `.value` because the devtools API does it for us
+ path.unshift('state');
+ }
+ isTimelineActive = false;
+ payload.set(inspectedStore, path, payload.state.value);
+ isTimelineActive = true;
+ }
+ });
+ api.on.editComponentState((payload) => {
+ if (payload.type.startsWith('🍍')) {
+ const storeId = payload.type.replace(/^🍍\s*/, '');
+ const store = pinia._s.get(storeId);
+ if (!store) {
+ return toastMessage(`store "${storeId}" not found`, 'error');
+ }
+ const { path } = payload;
+ if (path[0] !== 'state') {
+ return toastMessage(`Invalid path for store "${storeId}":\n${path}\nOnly state can be modified.`);
+ }
+ // rewrite the first entry to be able to directly set the state as
+ // well as any other path
+ path[0] = '$state';
+ isTimelineActive = false;
+ payload.set(store, path, payload.state.value);
+ isTimelineActive = true;
+ }
+ });
+ });
+}
+function addStoreToDevtools(app, store) {
+ if (!componentStateTypes.includes(getStoreType(store.$id))) {
+ componentStateTypes.push(getStoreType(store.$id));
+ }
+ (0,_vue_devtools_api__WEBPACK_IMPORTED_MODULE_1__.setupDevtoolsPlugin)({
+ id: 'dev.esm.pinia',
+ label: 'Pinia 🍍',
+ logo: 'https://pinia.vuejs.org/logo.svg',
+ packageName: 'pinia',
+ homepage: 'https://pinia.vuejs.org',
+ componentStateTypes,
+ app,
+ settings: {
+ logStoreChanges: {
+ label: 'Notify about new/deleted stores',
+ type: 'boolean',
+ defaultValue: true,
+ },
+ // useEmojis: {
+ // label: 'Use emojis in messages ⚡️',
+ // type: 'boolean',
+ // defaultValue: true,
+ // },
+ },
+ }, (api) => {
+ // gracefully handle errors
+ const now = typeof api.now === 'function' ? api.now.bind(api) : Date.now;
+ store.$onAction(({ after, onError, name, args }) => {
+ const groupId = runningActionId++;
+ api.addTimelineEvent({
+ layerId: MUTATIONS_LAYER_ID,
+ event: {
+ time: now(),
+ title: '🛫 ' + name,
+ subtitle: 'start',
+ data: {
+ store: formatDisplay(store.$id),
+ action: formatDisplay(name),
+ args,
+ },
+ groupId,
+ },
+ });
+ after((result) => {
+ activeAction = undefined;
+ api.addTimelineEvent({
+ layerId: MUTATIONS_LAYER_ID,
+ event: {
+ time: now(),
+ title: '🛬 ' + name,
+ subtitle: 'end',
+ data: {
+ store: formatDisplay(store.$id),
+ action: formatDisplay(name),
+ args,
+ result,
+ },
+ groupId,
+ },
+ });
+ });
+ onError((error) => {
+ activeAction = undefined;
+ api.addTimelineEvent({
+ layerId: MUTATIONS_LAYER_ID,
+ event: {
+ time: now(),
+ logType: 'error',
+ title: '💥 ' + name,
+ subtitle: 'end',
+ data: {
+ store: formatDisplay(store.$id),
+ action: formatDisplay(name),
+ args,
+ error,
+ },
+ groupId,
+ },
+ });
+ });
+ }, true);
+ store._customProperties.forEach((name) => {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(() => (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.unref)(store[name]), (newValue, oldValue) => {
+ api.notifyComponentUpdate();
+ api.sendInspectorState(INSPECTOR_ID);
+ if (isTimelineActive) {
+ api.addTimelineEvent({
+ layerId: MUTATIONS_LAYER_ID,
+ event: {
+ time: now(),
+ title: 'Change',
+ subtitle: name,
+ data: {
+ newValue,
+ oldValue,
+ },
+ groupId: activeAction,
+ },
+ });
+ }
+ }, { deep: true });
+ });
+ store.$subscribe(({ events, type }, state) => {
+ api.notifyComponentUpdate();
+ api.sendInspectorState(INSPECTOR_ID);
+ if (!isTimelineActive)
+ return;
+ // rootStore.state[store.id] = state
+ const eventData = {
+ time: now(),
+ title: formatMutationType(type),
+ data: assign$1({ store: formatDisplay(store.$id) }, formatEventData(events)),
+ groupId: activeAction,
+ };
+ if (type === MutationType.patchFunction) {
+ eventData.subtitle = '⤵️';
+ }
+ else if (type === MutationType.patchObject) {
+ eventData.subtitle = '🧩';
+ }
+ else if (events && !Array.isArray(events)) {
+ eventData.subtitle = events.type;
+ }
+ if (events) {
+ eventData.data['rawEvent(s)'] = {
+ _custom: {
+ display: 'DebuggerEvent',
+ type: 'object',
+ tooltip: 'raw DebuggerEvent[]',
+ value: events,
+ },
+ };
+ }
+ api.addTimelineEvent({
+ layerId: MUTATIONS_LAYER_ID,
+ event: eventData,
+ });
+ }, { detached: true, flush: 'sync' });
+ const hotUpdate = store._hotUpdate;
+ store._hotUpdate = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.markRaw)((newStore) => {
+ hotUpdate(newStore);
+ api.addTimelineEvent({
+ layerId: MUTATIONS_LAYER_ID,
+ event: {
+ time: now(),
+ title: '🔥 ' + store.$id,
+ subtitle: 'HMR update',
+ data: {
+ store: formatDisplay(store.$id),
+ info: formatDisplay(`HMR update`),
+ },
+ },
+ });
+ // update the devtools too
+ api.notifyComponentUpdate();
+ api.sendInspectorTree(INSPECTOR_ID);
+ api.sendInspectorState(INSPECTOR_ID);
+ });
+ const { $dispose } = store;
+ store.$dispose = () => {
+ $dispose();
+ api.notifyComponentUpdate();
+ api.sendInspectorTree(INSPECTOR_ID);
+ api.sendInspectorState(INSPECTOR_ID);
+ api.getSettings().logStoreChanges &&
+ toastMessage(`Disposed "${store.$id}" store 🗑`);
+ };
+ // trigger an update so it can display new registered stores
+ api.notifyComponentUpdate();
+ api.sendInspectorTree(INSPECTOR_ID);
+ api.sendInspectorState(INSPECTOR_ID);
+ api.getSettings().logStoreChanges &&
+ toastMessage(`"${store.$id}" store installed 🆕`);
+ });
+}
+let runningActionId = 0;
+let activeAction;
+/**
+ * Patches a store to enable action grouping in devtools by wrapping the store with a Proxy that is passed as the
+ * context of all actions, allowing us to set `runningAction` on each access and effectively associating any state
+ * mutation to the action.
+ *
+ * @param store - store to patch
+ * @param actionNames - list of actionst to patch
+ */
+function patchActionForGrouping(store, actionNames, wrapWithProxy) {
+ // original actions of the store as they are given by pinia. We are going to override them
+ const actions = actionNames.reduce((storeActions, actionName) => {
+ // use toRaw to avoid tracking #541
+ storeActions[actionName] = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRaw)(store)[actionName];
+ return storeActions;
+ }, {});
+ for (const actionName in actions) {
+ store[actionName] = function () {
+ // the running action id is incremented in a before action hook
+ const _actionId = runningActionId;
+ const trackedStore = wrapWithProxy
+ ? new Proxy(store, {
+ get(...args) {
+ activeAction = _actionId;
+ return Reflect.get(...args);
+ },
+ set(...args) {
+ activeAction = _actionId;
+ return Reflect.set(...args);
+ },
+ })
+ : store;
+ // For Setup Stores we need https://github.com/tc39/proposal-async-context
+ activeAction = _actionId;
+ const retValue = actions[actionName].apply(trackedStore, arguments);
+ // this is safer as async actions in Setup Stores would associate mutations done outside of the action
+ activeAction = undefined;
+ return retValue;
+ };
+ }
+}
+/**
+ * pinia.use(devtoolsPlugin)
+ */
+function devtoolsPlugin({ app, store, options }) {
+ // HMR module
+ if (store.$id.startsWith('__hot:')) {
+ return;
+ }
+ // detect option api vs setup api
+ store._isOptionsAPI = !!options.state;
+ patchActionForGrouping(store, Object.keys(options.actions), store._isOptionsAPI);
+ // Upgrade the HMR to also update the new actions
+ const originalHotUpdate = store._hotUpdate;
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRaw)(store)._hotUpdate = function (newStore) {
+ originalHotUpdate.apply(this, arguments);
+ patchActionForGrouping(store, Object.keys(newStore._hmrPayload.actions), !!store._isOptionsAPI);
+ };
+ addStoreToDevtools(app,
+ // FIXME: is there a way to allow the assignment from Store<Id, S, G, A> to StoreGeneric?
+ store);
+}
+
+/**
+ * Creates a Pinia instance to be used by the application
+ */
+function createPinia() {
+ const scope = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.effectScope)(true);
+ // NOTE: here we could check the window object for a state and directly set it
+ // if there is anything like it with Vue 3 SSR
+ const state = scope.run(() => (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)({}));
+ let _p = [];
+ // plugins added before calling app.use(pinia)
+ let toBeInstalled = [];
+ const pinia = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.markRaw)({
+ install(app) {
+ // this allows calling useStore() outside of a component setup after
+ // installing pinia's plugin
+ setActivePinia(pinia);
+ if (!vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ pinia._a = app;
+ app.provide(piniaSymbol, pinia);
+ app.config.globalProperties.$pinia = pinia;
+ /* istanbul ignore else */
+ if (USE_DEVTOOLS) {
+ registerPiniaDevtools(app, pinia);
+ }
+ toBeInstalled.forEach((plugin) => _p.push(plugin));
+ toBeInstalled = [];
+ }
+ },
+ use(plugin) {
+ if (!this._a && !vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ toBeInstalled.push(plugin);
+ }
+ else {
+ _p.push(plugin);
+ }
+ return this;
+ },
+ _p,
+ // it's actually undefined here
+ // @ts-expect-error
+ _a: null,
+ _e: scope,
+ _s: new Map(),
+ state,
+ });
+ // pinia devtools rely on dev only features so they cannot be forced unless
+ // the dev build of Vue is used. Avoid old browsers like IE11.
+ if (USE_DEVTOOLS && typeof Proxy !== 'undefined') {
+ pinia.use(devtoolsPlugin);
+ }
+ return pinia;
+}
+
+/**
+ * Checks if a function is a `StoreDefinition`.
+ *
+ * @param fn - object to test
+ * @returns true if `fn` is a StoreDefinition
+ */
+const isUseStore = (fn) => {
+ return typeof fn === 'function' && typeof fn.$id === 'string';
+};
+/**
+ * Mutates in place `newState` with `oldState` to _hot update_ it. It will
+ * remove any key not existing in `newState` and recursively merge plain
+ * objects.
+ *
+ * @param newState - new state object to be patched
+ * @param oldState - old state that should be used to patch newState
+ * @returns - newState
+ */
+function patchObject(newState, oldState) {
+ // no need to go through symbols because they cannot be serialized anyway
+ for (const key in oldState) {
+ const subPatch = oldState[key];
+ // skip the whole sub tree
+ if (!(key in newState)) {
+ continue;
+ }
+ const targetValue = newState[key];
+ if (isPlainObject(targetValue) &&
+ isPlainObject(subPatch) &&
+ !(0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(subPatch) &&
+ !(0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isReactive)(subPatch)) {
+ newState[key] = patchObject(targetValue, subPatch);
+ }
+ else {
+ // objects are either a bit more complex (e.g. refs) or primitives, so we
+ // just set the whole thing
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(newState, key, subPatch);
+ }
+ else {
+ newState[key] = subPatch;
+ }
+ }
+ }
+ return newState;
+}
+/**
+ * Creates an _accept_ function to pass to `import.meta.hot` in Vite applications.
+ *
+ * @example
+ * ```js
+ * const useUser = defineStore(...)
+ * if (import.meta.hot) {
+ * import.meta.hot.accept(acceptHMRUpdate(useUser, import.meta.hot))
+ * }
+ * ```
+ *
+ * @param initialUseStore - return of the defineStore to hot update
+ * @param hot - `import.meta.hot`
+ */
+function acceptHMRUpdate(initialUseStore, hot) {
+ // strip as much as possible from iife.prod
+ if (false) {}
+ return (newModule) => {
+ const pinia = hot.data.pinia || initialUseStore._pinia;
+ if (!pinia) {
+ // this store is still not used
+ return;
+ }
+ // preserve the pinia instance across loads
+ hot.data.pinia = pinia;
+ // console.log('got data', newStore)
+ for (const exportName in newModule) {
+ const useStore = newModule[exportName];
+ // console.log('checking for', exportName)
+ if (isUseStore(useStore) && pinia._s.has(useStore.$id)) {
+ // console.log('Accepting update for', useStore.$id)
+ const id = useStore.$id;
+ if (id !== initialUseStore.$id) {
+ console.warn(`The id of the store changed from "${initialUseStore.$id}" to "${id}". Reloading.`);
+ // return import.meta.hot.invalidate()
+ return hot.invalidate();
+ }
+ const existingStore = pinia._s.get(id);
+ if (!existingStore) {
+ console.log(`[Pinia]: skipping hmr because store doesn't exist yet`);
+ return;
+ }
+ useStore(pinia, existingStore);
+ }
+ }
+ };
+}
+
+const noop = () => { };
+function addSubscription(subscriptions, callback, detached, onCleanup = noop) {
+ subscriptions.push(callback);
+ const removeSubscription = () => {
+ const idx = subscriptions.indexOf(callback);
+ if (idx > -1) {
+ subscriptions.splice(idx, 1);
+ onCleanup();
+ }
+ };
+ if (!detached && (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.getCurrentScope)()) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.onScopeDispose)(removeSubscription);
+ }
+ return removeSubscription;
+}
+function triggerSubscriptions(subscriptions, ...args) {
+ subscriptions.slice().forEach((callback) => {
+ callback(...args);
+ });
+}
+
+const fallbackRunWithContext = (fn) => fn();
+function mergeReactiveObjects(target, patchToApply) {
+ // Handle Map instances
+ if (target instanceof Map && patchToApply instanceof Map) {
+ patchToApply.forEach((value, key) => target.set(key, value));
+ }
+ // Handle Set instances
+ if (target instanceof Set && patchToApply instanceof Set) {
+ patchToApply.forEach(target.add, target);
+ }
+ // no need to go through symbols because they cannot be serialized anyway
+ for (const key in patchToApply) {
+ if (!patchToApply.hasOwnProperty(key))
+ continue;
+ const subPatch = patchToApply[key];
+ const targetValue = target[key];
+ if (isPlainObject(targetValue) &&
+ isPlainObject(subPatch) &&
+ target.hasOwnProperty(key) &&
+ !(0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(subPatch) &&
+ !(0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isReactive)(subPatch)) {
+ // NOTE: here I wanted to warn about inconsistent types but it's not possible because in setup stores one might
+ // start the value of a property as a certain type e.g. a Map, and then for some reason, during SSR, change that
+ // to `undefined`. When trying to hydrate, we want to override the Map with `undefined`.
+ target[key] = mergeReactiveObjects(targetValue, subPatch);
+ }
+ else {
+ // @ts-expect-error: subPatch is a valid value
+ target[key] = subPatch;
+ }
+ }
+ return target;
+}
+const skipHydrateSymbol = ( true)
+ ? Symbol('pinia:skipHydration')
+ : /* istanbul ignore next */ 0;
+const skipHydrateMap = /*#__PURE__*/ new WeakMap();
+/**
+ * Tells Pinia to skip the hydration process of a given object. This is useful in setup stores (only) when you return a
+ * stateful object in the store but it isn't really state. e.g. returning a router instance in a setup store.
+ *
+ * @param obj - target object
+ * @returns obj
+ */
+function skipHydrate(obj) {
+ return vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2
+ ? // in @vue/composition-api, the refs are sealed so defineProperty doesn't work...
+ /* istanbul ignore next */ skipHydrateMap.set(obj, 1) && obj
+ : Object.defineProperty(obj, skipHydrateSymbol, {});
+}
+/**
+ * Returns whether a value should be hydrated
+ *
+ * @param obj - target variable
+ * @returns true if `obj` should be hydrated
+ */
+function shouldHydrate(obj) {
+ return vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2
+ ? /* istanbul ignore next */ !skipHydrateMap.has(obj)
+ : !isPlainObject(obj) || !obj.hasOwnProperty(skipHydrateSymbol);
+}
+const { assign } = Object;
+function isComputed(o) {
+ return !!((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(o) && o.effect);
+}
+function createOptionsStore(id, options, pinia, hot) {
+ const { state, actions, getters } = options;
+ const initialState = pinia.state.value[id];
+ let store;
+ function setup() {
+ if (!initialState && ( false || !hot)) {
+ /* istanbul ignore if */
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(pinia.state.value, id, state ? state() : {});
+ }
+ else {
+ pinia.state.value[id] = state ? state() : {};
+ }
+ }
+ // avoid creating a state in pinia.state.value
+ const localState = ( true) && hot
+ ? // use ref() to unwrap refs inside state TODO: check if this is still necessary
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRefs)((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)(state ? state() : {}).value)
+ : (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRefs)(pinia.state.value[id]);
+ return assign(localState, actions, Object.keys(getters || {}).reduce((computedGetters, name) => {
+ if (( true) && name in localState) {
+ console.warn(`[🍍]: A getter cannot have the same name as another state property. Rename one of them. Found with "${name}" in store "${id}".`);
+ }
+ computedGetters[name] = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.markRaw)((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ setActivePinia(pinia);
+ // it was created just before
+ const store = pinia._s.get(id);
+ // allow cross using stores
+ /* istanbul ignore next */
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2 && !store._r)
+ return;
+ // @ts-expect-error
+ // return getters![name].call(context, context)
+ // TODO: avoid reading the getter while assigning with a global variable
+ return getters[name].call(store, store);
+ }));
+ return computedGetters;
+ }, {}));
+ }
+ store = createSetupStore(id, setup, options, pinia, hot, true);
+ return store;
+}
+function createSetupStore($id, setup, options = {}, pinia, hot, isOptionsStore) {
+ let scope;
+ const optionsForPlugin = assign({ actions: {} }, options);
+ /* istanbul ignore if */
+ if (( true) && !pinia._e.active) {
+ throw new Error('Pinia destroyed');
+ }
+ // watcher options for $subscribe
+ const $subscribeOptions = {
+ deep: true,
+ // flush: 'post',
+ };
+ /* istanbul ignore else */
+ if (( true) && !vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ $subscribeOptions.onTrigger = (event) => {
+ /* istanbul ignore else */
+ if (isListening) {
+ debuggerEvents = event;
+ // avoid triggering this while the store is being built and the state is being set in pinia
+ }
+ else if (isListening == false && !store._hotUpdating) {
+ // let patch send all the events together later
+ /* istanbul ignore else */
+ if (Array.isArray(debuggerEvents)) {
+ debuggerEvents.push(event);
+ }
+ else {
+ console.error('🍍 debuggerEvents should be an array. This is most likely an internal Pinia bug.');
+ }
+ }
+ };
+ }
+ // internal state
+ let isListening; // set to true at the end
+ let isSyncListening; // set to true at the end
+ let subscriptions = [];
+ let actionSubscriptions = [];
+ let debuggerEvents;
+ const initialState = pinia.state.value[$id];
+ // avoid setting the state for option stores if it is set
+ // by the setup
+ if (!isOptionsStore && !initialState && ( false || !hot)) {
+ /* istanbul ignore if */
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(pinia.state.value, $id, {});
+ }
+ else {
+ pinia.state.value[$id] = {};
+ }
+ }
+ const hotState = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.ref)({});
+ // avoid triggering too many listeners
+ // https://github.com/vuejs/pinia/issues/1129
+ let activeListener;
+ function $patch(partialStateOrMutator) {
+ let subscriptionMutation;
+ isListening = isSyncListening = false;
+ // reset the debugger events since patches are sync
+ /* istanbul ignore else */
+ if ((true)) {
+ debuggerEvents = [];
+ }
+ if (typeof partialStateOrMutator === 'function') {
+ partialStateOrMutator(pinia.state.value[$id]);
+ subscriptionMutation = {
+ type: MutationType.patchFunction,
+ storeId: $id,
+ events: debuggerEvents,
+ };
+ }
+ else {
+ mergeReactiveObjects(pinia.state.value[$id], partialStateOrMutator);
+ subscriptionMutation = {
+ type: MutationType.patchObject,
+ payload: partialStateOrMutator,
+ storeId: $id,
+ events: debuggerEvents,
+ };
+ }
+ const myListenerId = (activeListener = Symbol());
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.nextTick)().then(() => {
+ if (activeListener === myListenerId) {
+ isListening = true;
+ }
+ });
+ isSyncListening = true;
+ // because we paused the watcher, we need to manually call the subscriptions
+ triggerSubscriptions(subscriptions, subscriptionMutation, pinia.state.value[$id]);
+ }
+ const $reset = isOptionsStore
+ ? function $reset() {
+ const { state } = options;
+ const newState = state ? state() : {};
+ // we use a patch to group all changes into one single subscription
+ this.$patch(($state) => {
+ assign($state, newState);
+ });
+ }
+ : /* istanbul ignore next */
+ ( true)
+ ? () => {
+ throw new Error(`🍍: Store "${$id}" is built using the setup syntax and does not implement $reset().`);
+ }
+ : 0;
+ function $dispose() {
+ scope.stop();
+ subscriptions = [];
+ actionSubscriptions = [];
+ pinia._s.delete($id);
+ }
+ /**
+ * Wraps an action to handle subscriptions.
+ *
+ * @param name - name of the action
+ * @param action - action to wrap
+ * @returns a wrapped action to handle subscriptions
+ */
+ function wrapAction(name, action) {
+ return function () {
+ setActivePinia(pinia);
+ const args = Array.from(arguments);
+ const afterCallbackList = [];
+ const onErrorCallbackList = [];
+ function after(callback) {
+ afterCallbackList.push(callback);
+ }
+ function onError(callback) {
+ onErrorCallbackList.push(callback);
+ }
+ // @ts-expect-error
+ triggerSubscriptions(actionSubscriptions, {
+ args,
+ name,
+ store,
+ after,
+ onError,
+ });
+ let ret;
+ try {
+ ret = action.apply(this && this.$id === $id ? this : store, args);
+ // handle sync errors
+ }
+ catch (error) {
+ triggerSubscriptions(onErrorCallbackList, error);
+ throw error;
+ }
+ if (ret instanceof Promise) {
+ return ret
+ .then((value) => {
+ triggerSubscriptions(afterCallbackList, value);
+ return value;
+ })
+ .catch((error) => {
+ triggerSubscriptions(onErrorCallbackList, error);
+ return Promise.reject(error);
+ });
+ }
+ // trigger after callbacks
+ triggerSubscriptions(afterCallbackList, ret);
+ return ret;
+ };
+ }
+ const _hmrPayload = /*#__PURE__*/ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.markRaw)({
+ actions: {},
+ getters: {},
+ state: [],
+ hotState,
+ });
+ const partialStore = {
+ _p: pinia,
+ // _s: scope,
+ $id,
+ $onAction: addSubscription.bind(null, actionSubscriptions),
+ $patch,
+ $reset,
+ $subscribe(callback, options = {}) {
+ const removeSubscription = addSubscription(subscriptions, callback, options.detached, () => stopWatcher());
+ const stopWatcher = scope.run(() => (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.watch)(() => pinia.state.value[$id], (state) => {
+ if (options.flush === 'sync' ? isSyncListening : isListening) {
+ callback({
+ storeId: $id,
+ type: MutationType.direct,
+ events: debuggerEvents,
+ }, state);
+ }
+ }, assign({}, $subscribeOptions, options)));
+ return removeSubscription;
+ },
+ $dispose,
+ };
+ /* istanbul ignore if */
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ // start as non ready
+ partialStore._r = false;
+ }
+ const store = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.reactive)( true
+ ? assign({
+ _hmrPayload,
+ _customProperties: (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.markRaw)(new Set()), // devtools custom properties
+ }, partialStore
+ // must be added later
+ // setupStore
+ )
+ : 0);
+ // store the partial store now so the setup of stores can instantiate each other before they are finished without
+ // creating infinite loops.
+ pinia._s.set($id, store);
+ const runWithContext = (pinia._a && pinia._a.runWithContext) || fallbackRunWithContext;
+ // TODO: idea create skipSerialize that marks properties as non serializable and they are skipped
+ const setupStore = pinia._e.run(() => {
+ scope = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.effectScope)();
+ return runWithContext(() => scope.run(setup));
+ });
+ // overwrite existing actions to support $onAction
+ for (const key in setupStore) {
+ const prop = setupStore[key];
+ if (((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(prop) && !isComputed(prop)) || (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isReactive)(prop)) {
+ // mark it as a piece of state to be serialized
+ if (( true) && hot) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(hotState.value, key, (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRef)(setupStore, key));
+ // createOptionStore directly sets the state in pinia.state.value so we
+ // can just skip that
+ }
+ else if (!isOptionsStore) {
+ // in setup stores we must hydrate the state and sync pinia state tree with the refs the user just created
+ if (initialState && shouldHydrate(prop)) {
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(prop)) {
+ prop.value = initialState[key];
+ }
+ else {
+ // probably a reactive object, lets recursively assign
+ // @ts-expect-error: prop is unknown
+ mergeReactiveObjects(prop, initialState[key]);
+ }
+ }
+ // transfer the ref to the pinia state to keep everything in sync
+ /* istanbul ignore if */
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(pinia.state.value[$id], key, prop);
+ }
+ else {
+ pinia.state.value[$id][key] = prop;
+ }
+ }
+ /* istanbul ignore else */
+ if ((true)) {
+ _hmrPayload.state.push(key);
+ }
+ // action
+ }
+ else if (typeof prop === 'function') {
+ // @ts-expect-error: we are overriding the function we avoid wrapping if
+ const actionValue = ( true) && hot ? prop : wrapAction(key, prop);
+ // this a hot module replacement store because the hotUpdate method needs
+ // to do it with the right context
+ /* istanbul ignore if */
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(setupStore, key, actionValue);
+ }
+ else {
+ // @ts-expect-error
+ setupStore[key] = actionValue;
+ }
+ /* istanbul ignore else */
+ if ((true)) {
+ _hmrPayload.actions[key] = prop;
+ }
+ // list actions so they can be used in plugins
+ // @ts-expect-error
+ optionsForPlugin.actions[key] = prop;
+ }
+ else if ((true)) {
+ // add getters for devtools
+ if (isComputed(prop)) {
+ _hmrPayload.getters[key] = isOptionsStore
+ ? // @ts-expect-error
+ options.getters[key]
+ : prop;
+ if (IS_CLIENT) {
+ const getters = setupStore._getters ||
+ // @ts-expect-error: same
+ (setupStore._getters = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.markRaw)([]));
+ getters.push(key);
+ }
+ }
+ }
+ }
+ // add the state, getters, and action properties
+ /* istanbul ignore if */
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ Object.keys(setupStore).forEach((key) => {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(store, key, setupStore[key]);
+ });
+ }
+ else {
+ assign(store, setupStore);
+ // allows retrieving reactive objects with `storeToRefs()`. Must be called after assigning to the reactive object.
+ // Make `storeToRefs()` work with `reactive()` #799
+ assign((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRaw)(store), setupStore);
+ }
+ // use this instead of a computed with setter to be able to create it anywhere
+ // without linking the computed lifespan to wherever the store is first
+ // created.
+ Object.defineProperty(store, '$state', {
+ get: () => (( true) && hot ? hotState.value : pinia.state.value[$id]),
+ set: (state) => {
+ /* istanbul ignore if */
+ if (( true) && hot) {
+ throw new Error('cannot set hotState');
+ }
+ $patch(($state) => {
+ assign($state, state);
+ });
+ },
+ });
+ // add the hotUpdate before plugins to allow them to override it
+ /* istanbul ignore else */
+ if ((true)) {
+ store._hotUpdate = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.markRaw)((newStore) => {
+ store._hotUpdating = true;
+ newStore._hmrPayload.state.forEach((stateKey) => {
+ if (stateKey in store.$state) {
+ const newStateTarget = newStore.$state[stateKey];
+ const oldStateSource = store.$state[stateKey];
+ if (typeof newStateTarget === 'object' &&
+ isPlainObject(newStateTarget) &&
+ isPlainObject(oldStateSource)) {
+ patchObject(newStateTarget, oldStateSource);
+ }
+ else {
+ // transfer the ref
+ newStore.$state[stateKey] = oldStateSource;
+ }
+ }
+ // patch direct access properties to allow store.stateProperty to work as
+ // store.$state.stateProperty
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(store, stateKey, (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRef)(newStore.$state, stateKey));
+ });
+ // remove deleted state properties
+ Object.keys(store.$state).forEach((stateKey) => {
+ if (!(stateKey in newStore.$state)) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.del)(store, stateKey);
+ }
+ });
+ // avoid devtools logging this as a mutation
+ isListening = false;
+ isSyncListening = false;
+ pinia.state.value[$id] = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRef)(newStore._hmrPayload, 'hotState');
+ isSyncListening = true;
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.nextTick)().then(() => {
+ isListening = true;
+ });
+ for (const actionName in newStore._hmrPayload.actions) {
+ const action = newStore[actionName];
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(store, actionName, wrapAction(actionName, action));
+ }
+ // TODO: does this work in both setup and option store?
+ for (const getterName in newStore._hmrPayload.getters) {
+ const getter = newStore._hmrPayload.getters[getterName];
+ const getterValue = isOptionsStore
+ ? // special handling of options api
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.computed)(() => {
+ setActivePinia(pinia);
+ return getter.call(store, store);
+ })
+ : getter;
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.set)(store, getterName, getterValue);
+ }
+ // remove deleted getters
+ Object.keys(store._hmrPayload.getters).forEach((key) => {
+ if (!(key in newStore._hmrPayload.getters)) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.del)(store, key);
+ }
+ });
+ // remove old actions
+ Object.keys(store._hmrPayload.actions).forEach((key) => {
+ if (!(key in newStore._hmrPayload.actions)) {
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.del)(store, key);
+ }
+ });
+ // update the values used in devtools and to allow deleting new properties later on
+ store._hmrPayload = newStore._hmrPayload;
+ store._getters = newStore._getters;
+ store._hotUpdating = false;
+ });
+ }
+ if (USE_DEVTOOLS) {
+ const nonEnumerable = {
+ writable: true,
+ configurable: true,
+ // avoid warning on devtools trying to display this property
+ enumerable: false,
+ };
+ ['_p', '_hmrPayload', '_getters', '_customProperties'].forEach((p) => {
+ Object.defineProperty(store, p, assign({ value: store[p] }, nonEnumerable));
+ });
+ }
+ /* istanbul ignore if */
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ // mark the store as ready before plugins
+ store._r = true;
+ }
+ // apply all plugins
+ pinia._p.forEach((extender) => {
+ /* istanbul ignore else */
+ if (USE_DEVTOOLS) {
+ const extensions = scope.run(() => extender({
+ store,
+ app: pinia._a,
+ pinia,
+ options: optionsForPlugin,
+ }));
+ Object.keys(extensions || {}).forEach((key) => store._customProperties.add(key));
+ assign(store, extensions);
+ }
+ else {
+ assign(store, scope.run(() => extender({
+ store,
+ app: pinia._a,
+ pinia,
+ options: optionsForPlugin,
+ })));
+ }
+ });
+ if (( true) &&
+ store.$state &&
+ typeof store.$state === 'object' &&
+ typeof store.$state.constructor === 'function' &&
+ !store.$state.constructor.toString().includes('[native code]')) {
+ console.warn(`[🍍]: The "state" must be a plain object. It cannot be\n` +
+ `\tstate: () => new MyClass()\n` +
+ `Found in store "${store.$id}".`);
+ }
+ // only apply hydrate to option stores with an initial state in pinia
+ if (initialState &&
+ isOptionsStore &&
+ options.hydrate) {
+ options.hydrate(store.$state, initialState);
+ }
+ isListening = true;
+ isSyncListening = true;
+ return store;
+}
+function defineStore(
+// TODO: add proper types from above
+idOrOptions, setup, setupOptions) {
+ let id;
+ let options;
+ const isSetupStore = typeof setup === 'function';
+ if (typeof idOrOptions === 'string') {
+ id = idOrOptions;
+ // the option store setup will contain the actual options in this case
+ options = isSetupStore ? setupOptions : setup;
+ }
+ else {
+ options = idOrOptions;
+ id = idOrOptions.id;
+ if (( true) && typeof id !== 'string') {
+ throw new Error(`[🍍]: "defineStore()" must be passed a store id as its first argument.`);
+ }
+ }
+ function useStore(pinia, hot) {
+ const hasContext = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.hasInjectionContext)();
+ pinia =
+ // in test mode, ignore the argument provided as we can always retrieve a
+ // pinia instance with getActivePinia()
+ ( false ? 0 : pinia) ||
+ (hasContext ? (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.inject)(piniaSymbol, null) : null);
+ if (pinia)
+ setActivePinia(pinia);
+ if (( true) && !activePinia) {
+ throw new Error(`[🍍]: "getActivePinia()" was called but there was no active Pinia. Did you forget to install pinia?\n` +
+ `\tconst pinia = createPinia()\n` +
+ `\tapp.use(pinia)\n` +
+ `This will fail in production.`);
+ }
+ pinia = activePinia;
+ if (!pinia._s.has(id)) {
+ // creating the store registers it in `pinia._s`
+ if (isSetupStore) {
+ createSetupStore(id, setup, options, pinia);
+ }
+ else {
+ createOptionsStore(id, options, pinia);
+ }
+ /* istanbul ignore else */
+ if ((true)) {
+ // @ts-expect-error: not the right inferred type
+ useStore._pinia = pinia;
+ }
+ }
+ const store = pinia._s.get(id);
+ if (( true) && hot) {
+ const hotId = '__hot:' + id;
+ const newStore = isSetupStore
+ ? createSetupStore(hotId, setup, options, pinia, true)
+ : createOptionsStore(hotId, assign({}, options), pinia, true);
+ hot._hotUpdate(newStore);
+ // cleanup the state properties and the store from the cache
+ delete pinia.state.value[hotId];
+ pinia._s.delete(hotId);
+ }
+ if (( true) && IS_CLIENT) {
+ const currentInstance = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance)();
+ // save stores in instances to access them devtools
+ if (currentInstance &&
+ currentInstance.proxy &&
+ // avoid adding stores that are just built for hot module replacement
+ !hot) {
+ const vm = currentInstance.proxy;
+ const cache = '_pStores' in vm ? vm._pStores : (vm._pStores = {});
+ cache[id] = store;
+ }
+ }
+ // StoreGeneric cannot be casted towards Store
+ return store;
+ }
+ useStore.$id = id;
+ return useStore;
+}
+
+let mapStoreSuffix = 'Store';
+/**
+ * Changes the suffix added by `mapStores()`. Can be set to an empty string.
+ * Defaults to `"Store"`. Make sure to extend the MapStoresCustomization
+ * interface if you are using TypeScript.
+ *
+ * @param suffix - new suffix
+ */
+function setMapStoreSuffix(suffix // could be 'Store' but that would be annoying for JS
+) {
+ mapStoreSuffix = suffix;
+}
+/**
+ * Allows using stores without the composition API (`setup()`) by generating an
+ * object to be spread in the `computed` field of a component. It accepts a list
+ * of store definitions.
+ *
+ * @example
+ * ```js
+ * export default {
+ * computed: {
+ * // other computed properties
+ * ...mapStores(useUserStore, useCartStore)
+ * },
+ *
+ * created() {
+ * this.userStore // store with id "user"
+ * this.cartStore // store with id "cart"
+ * }
+ * }
+ * ```
+ *
+ * @param stores - list of stores to map to an object
+ */
+function mapStores(...stores) {
+ if (( true) && Array.isArray(stores[0])) {
+ console.warn(`[🍍]: Directly pass all stores to "mapStores()" without putting them in an array:\n` +
+ `Replace\n` +
+ `\tmapStores([useAuthStore, useCartStore])\n` +
+ `with\n` +
+ `\tmapStores(useAuthStore, useCartStore)\n` +
+ `This will fail in production if not fixed.`);
+ stores = stores[0];
+ }
+ return stores.reduce((reduced, useStore) => {
+ // @ts-expect-error: $id is added by defineStore
+ reduced[useStore.$id + mapStoreSuffix] = function () {
+ return useStore(this.$pinia);
+ };
+ return reduced;
+ }, {});
+}
+/**
+ * Allows using state and getters from one store without using the composition
+ * API (`setup()`) by generating an object to be spread in the `computed` field
+ * of a component.
+ *
+ * @param useStore - store to map from
+ * @param keysOrMapper - array or object
+ */
+function mapState(useStore, keysOrMapper) {
+ return Array.isArray(keysOrMapper)
+ ? keysOrMapper.reduce((reduced, key) => {
+ reduced[key] = function () {
+ return useStore(this.$pinia)[key];
+ };
+ return reduced;
+ }, {})
+ : Object.keys(keysOrMapper).reduce((reduced, key) => {
+ // @ts-expect-error
+ reduced[key] = function () {
+ const store = useStore(this.$pinia);
+ const storeKey = keysOrMapper[key];
+ // for some reason TS is unable to infer the type of storeKey to be a
+ // function
+ return typeof storeKey === 'function'
+ ? storeKey.call(this, store)
+ : store[storeKey];
+ };
+ return reduced;
+ }, {});
+}
+/**
+ * Alias for `mapState()`. You should use `mapState()` instead.
+ * @deprecated use `mapState()` instead.
+ */
+const mapGetters = mapState;
+/**
+ * Allows directly using actions from your store without using the composition
+ * API (`setup()`) by generating an object to be spread in the `methods` field
+ * of a component.
+ *
+ * @param useStore - store to map from
+ * @param keysOrMapper - array or object
+ */
+function mapActions(useStore, keysOrMapper) {
+ return Array.isArray(keysOrMapper)
+ ? keysOrMapper.reduce((reduced, key) => {
+ // @ts-expect-error
+ reduced[key] = function (...args) {
+ return useStore(this.$pinia)[key](...args);
+ };
+ return reduced;
+ }, {})
+ : Object.keys(keysOrMapper).reduce((reduced, key) => {
+ // @ts-expect-error
+ reduced[key] = function (...args) {
+ return useStore(this.$pinia)[keysOrMapper[key]](...args);
+ };
+ return reduced;
+ }, {});
+}
+/**
+ * Allows using state and getters from one store without using the composition
+ * API (`setup()`) by generating an object to be spread in the `computed` field
+ * of a component.
+ *
+ * @param useStore - store to map from
+ * @param keysOrMapper - array or object
+ */
+function mapWritableState(useStore, keysOrMapper) {
+ return Array.isArray(keysOrMapper)
+ ? keysOrMapper.reduce((reduced, key) => {
+ // @ts-ignore
+ reduced[key] = {
+ get() {
+ return useStore(this.$pinia)[key];
+ },
+ set(value) {
+ // it's easier to type it here as any
+ return (useStore(this.$pinia)[key] = value);
+ },
+ };
+ return reduced;
+ }, {})
+ : Object.keys(keysOrMapper).reduce((reduced, key) => {
+ // @ts-ignore
+ reduced[key] = {
+ get() {
+ return useStore(this.$pinia)[keysOrMapper[key]];
+ },
+ set(value) {
+ // it's easier to type it here as any
+ return (useStore(this.$pinia)[keysOrMapper[key]] = value);
+ },
+ };
+ return reduced;
+ }, {});
+}
+
+/**
+ * Creates an object of references with all the state, getters, and plugin-added
+ * state properties of the store. Similar to `toRefs()` but specifically
+ * designed for Pinia stores so methods and non reactive properties are
+ * completely ignored.
+ *
+ * @param store - store to extract the refs from
+ */
+function storeToRefs(store) {
+ // See https://github.com/vuejs/pinia/issues/852
+ // It's easier to just use toRefs() even if it includes more stuff
+ if (vue_demi__WEBPACK_IMPORTED_MODULE_0__.isVue2) {
+ // @ts-expect-error: toRefs include methods and others
+ return (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRefs)(store);
+ }
+ else {
+ store = (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRaw)(store);
+ const refs = {};
+ for (const key in store) {
+ const value = store[key];
+ if ((0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isRef)(value) || (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.isReactive)(value)) {
+ // @ts-expect-error: the key is state or getter
+ refs[key] =
+ // ---
+ (0,vue_demi__WEBPACK_IMPORTED_MODULE_0__.toRef)(store, key);
+ }
+ }
+ return refs;
+ }
+}
+
+/**
+ * Vue 2 Plugin that must be installed for pinia to work. Note **you don't need
+ * this plugin if you are using Nuxt.js**. Use the `buildModule` instead:
+ * https://pinia.vuejs.org/ssr/nuxt.html.
+ *
+ * @example
+ * ```js
+ * import Vue from 'vue'
+ * import { PiniaVuePlugin, createPinia } from 'pinia'
+ *
+ * Vue.use(PiniaVuePlugin)
+ * const pinia = createPinia()
+ *
+ * new Vue({
+ * el: '#app',
+ * // ...
+ * pinia,
+ * })
+ * ```
+ *
+ * @param _Vue - `Vue` imported from 'vue'.
+ */
+const PiniaVuePlugin = function (_Vue) {
+ // Equivalent of
+ // app.config.globalProperties.$pinia = pinia
+ _Vue.mixin({
+ beforeCreate() {
+ const options = this.$options;
+ if (options.pinia) {
+ const pinia = options.pinia;
+ // HACK: taken from provide(): https://github.com/vuejs/composition-api/blob/main/src/apis/inject.ts#L31
+ /* istanbul ignore else */
+ if (!this._provided) {
+ const provideCache = {};
+ Object.defineProperty(this, '_provided', {
+ get: () => provideCache,
+ set: (v) => Object.assign(provideCache, v),
+ });
+ }
+ this._provided[piniaSymbol] = pinia;
+ // propagate the pinia instance in an SSR friendly way
+ // avoid adding it to nuxt twice
+ /* istanbul ignore else */
+ if (!this.$pinia) {
+ this.$pinia = pinia;
+ }
+ pinia._a = this;
+ if (IS_CLIENT) {
+ // this allows calling useStore() outside of a component setup after
+ // installing pinia's plugin
+ setActivePinia(pinia);
+ }
+ if (USE_DEVTOOLS) {
+ registerPiniaDevtools(pinia._a, pinia);
+ }
+ }
+ else if (!this.$pinia && options.parent && options.parent.$pinia) {
+ this.$pinia = options.parent.$pinia;
+ }
+ },
+ destroyed() {
+ delete this._pStores;
+ },
+ });
+};
+
+
+
+
+/***/ }),
+
+/***/ "./node_modules/pinia/node_modules/vue-demi/lib/index.mjs":
+/*!****************************************************************!*\
+ !*** ./node_modules/pinia/node_modules/vue-demi/lib/index.mjs ***!
+ \****************************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ EffectScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.EffectScope; },
+/* harmony export */ Fragment: function() { return /* binding */ Fragment; },
+/* harmony export */ KeepAlive: function() { return /* binding */ KeepAlive; },
+/* harmony export */ Suspense: function() { return /* binding */ Suspense; },
+/* harmony export */ Teleport: function() { return /* binding */ Teleport; },
+/* harmony export */ Transition: function() { return /* binding */ Transition; },
+/* harmony export */ TransitionGroup: function() { return /* binding */ TransitionGroup; },
+/* harmony export */ Vue: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__["default"]; },
+/* harmony export */ Vue2: function() { return /* binding */ Vue2; },
+/* harmony export */ computed: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.computed; },
+/* harmony export */ createApp: function() { return /* binding */ createApp; },
+/* harmony export */ customRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.customRef; },
+/* harmony export */ defineAsyncComponent: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.defineAsyncComponent; },
+/* harmony export */ defineComponent: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.defineComponent; },
+/* harmony export */ del: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.del; },
+/* harmony export */ effectScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.effectScope; },
+/* harmony export */ getCurrentInstance: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance; },
+/* harmony export */ getCurrentScope: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentScope; },
+/* harmony export */ h: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.h; },
+/* harmony export */ hasInjectionContext: function() { return /* binding */ hasInjectionContext; },
+/* harmony export */ inject: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.inject; },
+/* harmony export */ install: function() { return /* binding */ install; },
+/* harmony export */ isProxy: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isProxy; },
+/* harmony export */ isReactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isReactive; },
+/* harmony export */ isReadonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isReadonly; },
+/* harmony export */ isRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isRef; },
+/* harmony export */ isShallow: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.isShallow; },
+/* harmony export */ isVue2: function() { return /* binding */ isVue2; },
+/* harmony export */ isVue3: function() { return /* binding */ isVue3; },
+/* harmony export */ markRaw: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.markRaw; },
+/* harmony export */ mergeDefaults: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.mergeDefaults; },
+/* harmony export */ nextTick: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.nextTick; },
+/* harmony export */ onActivated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onActivated; },
+/* harmony export */ onBeforeMount: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeMount; },
+/* harmony export */ onBeforeUnmount: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeUnmount; },
+/* harmony export */ onBeforeUpdate: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onBeforeUpdate; },
+/* harmony export */ onDeactivated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onDeactivated; },
+/* harmony export */ onErrorCaptured: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onErrorCaptured; },
+/* harmony export */ onMounted: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onMounted; },
+/* harmony export */ onRenderTracked: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onRenderTracked; },
+/* harmony export */ onRenderTriggered: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onRenderTriggered; },
+/* harmony export */ onScopeDispose: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onScopeDispose; },
+/* harmony export */ onServerPrefetch: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onServerPrefetch; },
+/* harmony export */ onUnmounted: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onUnmounted; },
+/* harmony export */ onUpdated: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.onUpdated; },
+/* harmony export */ provide: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.provide; },
+/* harmony export */ proxyRefs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.proxyRefs; },
+/* harmony export */ reactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.reactive; },
+/* harmony export */ readonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.readonly; },
+/* harmony export */ ref: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.ref; },
+/* harmony export */ set: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.set; },
+/* harmony export */ shallowReactive: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowReactive; },
+/* harmony export */ shallowReadonly: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowReadonly; },
+/* harmony export */ shallowRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.shallowRef; },
+/* harmony export */ toRaw: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRaw; },
+/* harmony export */ toRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRef; },
+/* harmony export */ toRefs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.toRefs; },
+/* harmony export */ triggerRef: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.triggerRef; },
+/* harmony export */ unref: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.unref; },
+/* harmony export */ useAttrs: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useAttrs; },
+/* harmony export */ useCssModule: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useCssModule; },
+/* harmony export */ useCssVars: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useCssVars; },
+/* harmony export */ useListeners: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useListeners; },
+/* harmony export */ useSlots: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.useSlots; },
+/* harmony export */ version: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.version; },
+/* harmony export */ warn: function() { return /* binding */ warn; },
+/* harmony export */ watch: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watch; },
+/* harmony export */ watchEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchEffect; },
+/* harmony export */ watchPostEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchPostEffect; },
+/* harmony export */ watchSyncEffect: function() { return /* reexport safe */ vue__WEBPACK_IMPORTED_MODULE_0__.watchSyncEffect; }
+/* harmony export */ });
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
+
+
+
+var isVue2 = true
+var isVue3 = false
+var Vue2 = vue__WEBPACK_IMPORTED_MODULE_0__["default"]
+var warn = vue__WEBPACK_IMPORTED_MODULE_0__["default"].util.warn
+
+function install() {}
+
+// createApp polyfill
+function createApp(rootComponent, rootProps) {
+ var vm
+ var provide = {}
+ var app = {
+ config: vue__WEBPACK_IMPORTED_MODULE_0__["default"].config,
+ use: vue__WEBPACK_IMPORTED_MODULE_0__["default"].use.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ mixin: vue__WEBPACK_IMPORTED_MODULE_0__["default"].mixin.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ component: vue__WEBPACK_IMPORTED_MODULE_0__["default"].component.bind(vue__WEBPACK_IMPORTED_MODULE_0__["default"]),
+ provide: function (key, value) {
+ provide[key] = value
+ return this
+ },
+ directive: function (name, dir) {
+ if (dir) {
+ vue__WEBPACK_IMPORTED_MODULE_0__["default"].directive(name, dir)
+ return app
+ } else {
+ return vue__WEBPACK_IMPORTED_MODULE_0__["default"].directive(name)
+ }
+ },
+ mount: function (el, hydrating) {
+ if (!vm) {
+ vm = new vue__WEBPACK_IMPORTED_MODULE_0__["default"](Object.assign({ propsData: rootProps }, rootComponent, { provide: Object.assign(provide, rootComponent.provide) }))
+ vm.$mount(el, hydrating)
+ return vm
+ } else {
+ return vm
+ }
+ },
+ unmount: function () {
+ if (vm) {
+ vm.$destroy()
+ vm = undefined
+ }
+ },
+ }
+ return app
+}
+
+
+
+// Vue 3 components mock
+function createMockComponent(name) {
+ return {
+ setup() {
+ throw new Error('[vue-demi] ' + name + ' is not supported in Vue 2. It\'s provided to avoid compiler errors.')
+ }
+ }
+}
+var Fragment = /*#__PURE__*/ createMockComponent('Fragment')
+var Transition = /*#__PURE__*/ createMockComponent('Transition')
+var TransitionGroup = /*#__PURE__*/ createMockComponent('TransitionGroup')
+var Teleport = /*#__PURE__*/ createMockComponent('Teleport')
+var Suspense = /*#__PURE__*/ createMockComponent('Suspense')
+var KeepAlive = /*#__PURE__*/ createMockComponent('KeepAlive')
+
+
+
+// Not implemented https://github.com/vuejs/core/pull/8111, falls back to getCurrentInstance()
+function hasInjectionContext() {
+ return !!(0,vue__WEBPACK_IMPORTED_MODULE_0__.getCurrentInstance)()
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/query-string/base.js":
+/*!*******************************************!*\
+ !*** ./node_modules/query-string/base.js ***!
+ \*******************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ exclude: function() { return /* binding */ exclude; },
+/* harmony export */ extract: function() { return /* binding */ extract; },
+/* harmony export */ parse: function() { return /* binding */ parse; },
+/* harmony export */ parseUrl: function() { return /* binding */ parseUrl; },
+/* harmony export */ pick: function() { return /* binding */ pick; },
+/* harmony export */ stringify: function() { return /* binding */ stringify; },
+/* harmony export */ stringifyUrl: function() { return /* binding */ stringifyUrl; }
+/* harmony export */ });
+/* harmony import */ var decode_uri_component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! decode-uri-component */ "./node_modules/decode-uri-component/index.js");
+/* harmony import */ var split_on_first__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! split-on-first */ "./node_modules/split-on-first/index.js");
+/* harmony import */ var filter_obj__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! filter-obj */ "./node_modules/query-string/node_modules/filter-obj/index.js");
+
+
+
+
+const isNullOrUndefined = value => value === null || value === undefined;
+
+// eslint-disable-next-line unicorn/prefer-code-point
+const strictUriEncode = string => encodeURIComponent(string).replace(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);
+
+const encodeFragmentIdentifier = Symbol('encodeFragmentIdentifier');
+
+function encoderForArrayFormat(options) {
+ switch (options.arrayFormat) {
+ case 'index': {
+ return key => (result, value) => {
+ const index = result.length;
+
+ if (
+ value === undefined
+ || (options.skipNull && value === null)
+ || (options.skipEmptyString && value === '')
+ ) {
+ return result;
+ }
+
+ if (value === null) {
+ return [
+ ...result, [encode(key, options), '[', index, ']'].join(''),
+ ];
+ }
+
+ return [
+ ...result,
+ [encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join(''),
+ ];
+ };
+ }
+
+ case 'bracket': {
+ return key => (result, value) => {
+ if (
+ value === undefined
+ || (options.skipNull && value === null)
+ || (options.skipEmptyString && value === '')
+ ) {
+ return result;
+ }
+
+ if (value === null) {
+ return [
+ ...result,
+ [encode(key, options), '[]'].join(''),
+ ];
+ }
+
+ return [
+ ...result,
+ [encode(key, options), '[]=', encode(value, options)].join(''),
+ ];
+ };
+ }
+
+ case 'colon-list-separator': {
+ return key => (result, value) => {
+ if (
+ value === undefined
+ || (options.skipNull && value === null)
+ || (options.skipEmptyString && value === '')
+ ) {
+ return result;
+ }
+
+ if (value === null) {
+ return [
+ ...result,
+ [encode(key, options), ':list='].join(''),
+ ];
+ }
+
+ return [
+ ...result,
+ [encode(key, options), ':list=', encode(value, options)].join(''),
+ ];
+ };
+ }
+
+ case 'comma':
+ case 'separator':
+ case 'bracket-separator': {
+ const keyValueSep = options.arrayFormat === 'bracket-separator'
+ ? '[]='
+ : '=';
+
+ return key => (result, value) => {
+ if (
+ value === undefined
+ || (options.skipNull && value === null)
+ || (options.skipEmptyString && value === '')
+ ) {
+ return result;
+ }
+
+ // Translate null to an empty string so that it doesn't serialize as 'null'
+ value = value === null ? '' : value;
+
+ if (result.length === 0) {
+ return [[encode(key, options), keyValueSep, encode(value, options)].join('')];
+ }
+
+ return [[result, encode(value, options)].join(options.arrayFormatSeparator)];
+ };
+ }
+
+ default: {
+ return key => (result, value) => {
+ if (
+ value === undefined
+ || (options.skipNull && value === null)
+ || (options.skipEmptyString && value === '')
+ ) {
+ return result;
+ }
+
+ if (value === null) {
+ return [
+ ...result,
+ encode(key, options),
+ ];
+ }
+
+ return [
+ ...result,
+ [encode(key, options), '=', encode(value, options)].join(''),
+ ];
+ };
+ }
+ }
+}
+
+function parserForArrayFormat(options) {
+ let result;
+
+ switch (options.arrayFormat) {
+ case 'index': {
+ return (key, value, accumulator) => {
+ result = /\[(\d*)]$/.exec(key);
+
+ key = key.replace(/\[\d*]$/, '');
+
+ if (!result) {
+ accumulator[key] = value;
+ return;
+ }
+
+ if (accumulator[key] === undefined) {
+ accumulator[key] = {};
+ }
+
+ accumulator[key][result[1]] = value;
+ };
+ }
+
+ case 'bracket': {
+ return (key, value, accumulator) => {
+ result = /(\[])$/.exec(key);
+ key = key.replace(/\[]$/, '');
+
+ if (!result) {
+ accumulator[key] = value;
+ return;
+ }
+
+ if (accumulator[key] === undefined) {
+ accumulator[key] = [value];
+ return;
+ }
+
+ accumulator[key] = [...accumulator[key], value];
+ };
+ }
+
+ case 'colon-list-separator': {
+ return (key, value, accumulator) => {
+ result = /(:list)$/.exec(key);
+ key = key.replace(/:list$/, '');
+
+ if (!result) {
+ accumulator[key] = value;
+ return;
+ }
+
+ if (accumulator[key] === undefined) {
+ accumulator[key] = [value];
+ return;
+ }
+
+ accumulator[key] = [...accumulator[key], value];
+ };
+ }
+
+ case 'comma':
+ case 'separator': {
+ return (key, value, accumulator) => {
+ const isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);
+ const isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));
+ value = isEncodedArray ? decode(value, options) : value;
+ const newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : (value === null ? value : decode(value, options));
+ accumulator[key] = newValue;
+ };
+ }
+
+ case 'bracket-separator': {
+ return (key, value, accumulator) => {
+ const isArray = /(\[])$/.test(key);
+ key = key.replace(/\[]$/, '');
+
+ if (!isArray) {
+ accumulator[key] = value ? decode(value, options) : value;
+ return;
+ }
+
+ const arrayValue = value === null
+ ? []
+ : value.split(options.arrayFormatSeparator).map(item => decode(item, options));
+
+ if (accumulator[key] === undefined) {
+ accumulator[key] = arrayValue;
+ return;
+ }
+
+ accumulator[key] = [...accumulator[key], ...arrayValue];
+ };
+ }
+
+ default: {
+ return (key, value, accumulator) => {
+ if (accumulator[key] === undefined) {
+ accumulator[key] = value;
+ return;
+ }
+
+ accumulator[key] = [...[accumulator[key]].flat(), value];
+ };
+ }
+ }
+}
+
+function validateArrayFormatSeparator(value) {
+ if (typeof value !== 'string' || value.length !== 1) {
+ throw new TypeError('arrayFormatSeparator must be single character string');
+ }
+}
+
+function encode(value, options) {
+ if (options.encode) {
+ return options.strict ? strictUriEncode(value) : encodeURIComponent(value);
+ }
+
+ return value;
+}
+
+function decode(value, options) {
+ if (options.decode) {
+ return (0,decode_uri_component__WEBPACK_IMPORTED_MODULE_0__["default"])(value);
+ }
+
+ return value;
+}
+
+function keysSorter(input) {
+ if (Array.isArray(input)) {
+ return input.sort();
+ }
+
+ if (typeof input === 'object') {
+ return keysSorter(Object.keys(input))
+ .sort((a, b) => Number(a) - Number(b))
+ .map(key => input[key]);
+ }
+
+ return input;
+}
+
+function removeHash(input) {
+ const hashStart = input.indexOf('#');
+ if (hashStart !== -1) {
+ input = input.slice(0, hashStart);
+ }
+
+ return input;
+}
+
+function getHash(url) {
+ let hash = '';
+ const hashStart = url.indexOf('#');
+ if (hashStart !== -1) {
+ hash = url.slice(hashStart);
+ }
+
+ return hash;
+}
+
+function parseValue(value, options) {
+ if (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {
+ value = Number(value);
+ } else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {
+ value = value.toLowerCase() === 'true';
+ }
+
+ return value;
+}
+
+function extract(input) {
+ input = removeHash(input);
+ const queryStart = input.indexOf('?');
+ if (queryStart === -1) {
+ return '';
+ }
+
+ return input.slice(queryStart + 1);
+}
+
+function parse(query, options) {
+ options = {
+ decode: true,
+ sort: true,
+ arrayFormat: 'none',
+ arrayFormatSeparator: ',',
+ parseNumbers: false,
+ parseBooleans: false,
+ ...options,
+ };
+
+ validateArrayFormatSeparator(options.arrayFormatSeparator);
+
+ const formatter = parserForArrayFormat(options);
+
+ // Create an object with no prototype
+ const returnValue = Object.create(null);
+
+ if (typeof query !== 'string') {
+ return returnValue;
+ }
+
+ query = query.trim().replace(/^[?#&]/, '');
+
+ if (!query) {
+ return returnValue;
+ }
+
+ for (const parameter of query.split('&')) {
+ if (parameter === '') {
+ continue;
+ }
+
+ const parameter_ = options.decode ? parameter.replace(/\+/g, ' ') : parameter;
+
+ let [key, value] = (0,split_on_first__WEBPACK_IMPORTED_MODULE_1__["default"])(parameter_, '=');
+
+ if (key === undefined) {
+ key = parameter_;
+ }
+
+ // Missing `=` should be `null`:
+ // http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters
+ value = value === undefined ? null : (['comma', 'separator', 'bracket-separator'].includes(options.arrayFormat) ? value : decode(value, options));
+ formatter(decode(key, options), value, returnValue);
+ }
+
+ for (const [key, value] of Object.entries(returnValue)) {
+ if (typeof value === 'object' && value !== null) {
+ for (const [key2, value2] of Object.entries(value)) {
+ value[key2] = parseValue(value2, options);
+ }
+ } else {
+ returnValue[key] = parseValue(value, options);
+ }
+ }
+
+ if (options.sort === false) {
+ return returnValue;
+ }
+
+ // TODO: Remove the use of `reduce`.
+ // eslint-disable-next-line unicorn/no-array-reduce
+ return (options.sort === true ? Object.keys(returnValue).sort() : Object.keys(returnValue).sort(options.sort)).reduce((result, key) => {
+ const value = returnValue[key];
+ if (Boolean(value) && typeof value === 'object' && !Array.isArray(value)) {
+ // Sort object keys, not values
+ result[key] = keysSorter(value);
+ } else {
+ result[key] = value;
+ }
+
+ return result;
+ }, Object.create(null));
+}
+
+function stringify(object, options) {
+ if (!object) {
+ return '';
+ }
+
+ options = {encode: true,
+ strict: true,
+ arrayFormat: 'none',
+ arrayFormatSeparator: ',', ...options};
+
+ validateArrayFormatSeparator(options.arrayFormatSeparator);
+
+ const shouldFilter = key => (
+ (options.skipNull && isNullOrUndefined(object[key]))
+ || (options.skipEmptyString && object[key] === '')
+ );
+
+ const formatter = encoderForArrayFormat(options);
+
+ const objectCopy = {};
+
+ for (const [key, value] of Object.entries(object)) {
+ if (!shouldFilter(key)) {
+ objectCopy[key] = value;
+ }
+ }
+
+ const keys = Object.keys(objectCopy);
+
+ if (options.sort !== false) {
+ keys.sort(options.sort);
+ }
+
+ return keys.map(key => {
+ const value = object[key];
+
+ if (value === undefined) {
+ return '';
+ }
+
+ if (value === null) {
+ return encode(key, options);
+ }
+
+ if (Array.isArray(value)) {
+ if (value.length === 0 && options.arrayFormat === 'bracket-separator') {
+ return encode(key, options) + '[]';
+ }
+
+ return value
+ .reduce(formatter(key), [])
+ .join('&');
+ }
+
+ return encode(key, options) + '=' + encode(value, options);
+ }).filter(x => x.length > 0).join('&');
+}
+
+function parseUrl(url, options) {
+ options = {
+ decode: true,
+ ...options,
+ };
+
+ let [url_, hash] = (0,split_on_first__WEBPACK_IMPORTED_MODULE_1__["default"])(url, '#');
+
+ if (url_ === undefined) {
+ url_ = url;
+ }
+
+ return {
+ url: url_?.split('?')?.[0] ?? '',
+ query: parse(extract(url), options),
+ ...(options && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}),
+ };
+}
+
+function stringifyUrl(object, options) {
+ options = {
+ encode: true,
+ strict: true,
+ [encodeFragmentIdentifier]: true,
+ ...options,
+ };
+
+ const url = removeHash(object.url).split('?')[0] || '';
+ const queryFromUrl = extract(object.url);
+
+ const query = {
+ ...parse(queryFromUrl, {sort: false}),
+ ...object.query,
+ };
+
+ let queryString = stringify(query, options);
+ if (queryString) {
+ queryString = `?${queryString}`;
+ }
+
+ let hash = getHash(object.url);
+ if (object.fragmentIdentifier) {
+ const urlObjectForFragmentEncode = new URL(url);
+ urlObjectForFragmentEncode.hash = object.fragmentIdentifier;
+ hash = options[encodeFragmentIdentifier] ? urlObjectForFragmentEncode.hash : `#${object.fragmentIdentifier}`;
+ }
+
+ return `${url}${queryString}${hash}`;
+}
+
+function pick(input, filter, options) {
+ options = {
+ parseFragmentIdentifier: true,
+ [encodeFragmentIdentifier]: false,
+ ...options,
+ };
+
+ const {url, query, fragmentIdentifier} = parseUrl(input, options);
+
+ return stringifyUrl({
+ url,
+ query: (0,filter_obj__WEBPACK_IMPORTED_MODULE_2__.includeKeys)(query, filter),
+ fragmentIdentifier,
+ }, options);
+}
+
+function exclude(input, filter, options) {
+ const exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);
+
+ return pick(input, exclusionFilter, options);
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/query-string/index.js":
+/*!********************************************!*\
+ !*** ./node_modules/query-string/index.js ***!
+ \********************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _base_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./base.js */ "./node_modules/query-string/base.js");
+
+
+/* harmony default export */ __webpack_exports__["default"] = (_base_js__WEBPACK_IMPORTED_MODULE_0__);
+
+
+/***/ }),
+
+/***/ "./node_modules/query-string/node_modules/filter-obj/index.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/query-string/node_modules/filter-obj/index.js ***!
+ \********************************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ excludeKeys: function() { return /* binding */ excludeKeys; },
+/* harmony export */ includeKeys: function() { return /* binding */ includeKeys; }
+/* harmony export */ });
+function includeKeys(object, predicate) {
+ const result = {};
+
+ if (Array.isArray(predicate)) {
+ for (const key of predicate) {
+ const descriptor = Object.getOwnPropertyDescriptor(object, key);
+ if (descriptor?.enumerable) {
+ Object.defineProperty(result, key, descriptor);
+ }
+ }
+ } else {
+ // `Reflect.ownKeys()` is required to retrieve symbol properties
+ for (const key of Reflect.ownKeys(object)) {
+ const descriptor = Object.getOwnPropertyDescriptor(object, key);
+ if (descriptor.enumerable) {
+ const value = object[key];
+ if (predicate(key, value, object)) {
+ Object.defineProperty(result, key, descriptor);
+ }
+ }
+ }
+ }
+
+ return result;
+}
+
+function excludeKeys(object, predicate) {
+ if (Array.isArray(predicate)) {
+ const set = new Set(predicate);
+ return includeKeys(object, key => !set.has(key));
+ }
+
+ return includeKeys(object, (key, value, object) => !predicate(key, value, object));
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/split-on-first/index.js":
+/*!**********************************************!*\
+ !*** ./node_modules/split-on-first/index.js ***!
+ \**********************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ "default": function() { return /* binding */ splitOnFirst; }
+/* harmony export */ });
+function splitOnFirst(string, separator) {
+ if (!(typeof string === 'string' && typeof separator === 'string')) {
+ throw new TypeError('Expected the arguments to be of type `string`');
+ }
+
+ if (string === '' || separator === '') {
+ return [];
+ }
+
+ const separatorIndex = string.indexOf(separator);
+
+ if (separatorIndex === -1) {
+ return [];
+ }
+
+ return [
+ string.slice(0, separatorIndex),
+ string.slice(separatorIndex + separator.length)
+ ];
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/throttle-debounce/esm/index.js":
+/*!*****************************************************!*\
+ !*** ./node_modules/throttle-debounce/esm/index.js ***!
+ \*****************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ debounce: function() { return /* binding */ debounce; },
+/* harmony export */ throttle: function() { return /* binding */ throttle; }
+/* harmony export */ });
+/* eslint-disable no-undefined,no-param-reassign,no-shadow */
+
+/**
+ * Throttle execution of a function. Especially useful for rate limiting
+ * execution of handlers on events like resize and scroll.
+ *
+ * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher)
+ * are most useful.
+ * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through,
+ * as-is, to `callback` when the throttled-function is executed.
+ * @param {object} [options] - An object to configure options.
+ * @param {boolean} [options.noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds
+ * while the throttled-function is being called. If noTrailing is false or unspecified, callback will be executed
+ * one final time after the last throttled-function call. (After the throttled-function has not been called for
+ * `delay` milliseconds, the internal counter is reset).
+ * @param {boolean} [options.noLeading] - Optional, defaults to false. If noLeading is false, the first throttled-function call will execute callback
+ * immediately. If noLeading is true, the first the callback execution will be skipped. It should be noted that
+ * callback will never executed if both noLeading = true and noTrailing = true.
+ * @param {boolean} [options.debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is
+ * false (at end), schedule `callback` to execute after `delay` ms.
+ *
+ * @returns {Function} A new, throttled, function.
+ */
+function throttle (delay, callback, options) {
+ var _ref = options || {},
+ _ref$noTrailing = _ref.noTrailing,
+ noTrailing = _ref$noTrailing === void 0 ? false : _ref$noTrailing,
+ _ref$noLeading = _ref.noLeading,
+ noLeading = _ref$noLeading === void 0 ? false : _ref$noLeading,
+ _ref$debounceMode = _ref.debounceMode,
+ debounceMode = _ref$debounceMode === void 0 ? undefined : _ref$debounceMode;
+ /*
+ * After wrapper has stopped being called, this timeout ensures that
+ * `callback` is executed at the proper times in `throttle` and `end`
+ * debounce modes.
+ */
+
+
+ var timeoutID;
+ var cancelled = false; // Keep track of the last time `callback` was executed.
+
+ var lastExec = 0; // Function to clear existing timeout
+
+ function clearExistingTimeout() {
+ if (timeoutID) {
+ clearTimeout(timeoutID);
+ }
+ } // Function to cancel next exec
+
+
+ function cancel(options) {
+ var _ref2 = options || {},
+ _ref2$upcomingOnly = _ref2.upcomingOnly,
+ upcomingOnly = _ref2$upcomingOnly === void 0 ? false : _ref2$upcomingOnly;
+
+ clearExistingTimeout();
+ cancelled = !upcomingOnly;
+ }
+ /*
+ * The `wrapper` function encapsulates all of the throttling / debouncing
+ * functionality and when executed will limit the rate at which `callback`
+ * is executed.
+ */
+
+
+ function wrapper() {
+ for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {
+ arguments_[_key] = arguments[_key];
+ }
+
+ var self = this;
+ var elapsed = Date.now() - lastExec;
+
+ if (cancelled) {
+ return;
+ } // Execute `callback` and update the `lastExec` timestamp.
+
+
+ function exec() {
+ lastExec = Date.now();
+ callback.apply(self, arguments_);
+ }
+ /*
+ * If `debounceMode` is true (at begin) this is used to clear the flag
+ * to allow future `callback` executions.
+ */
+
+
+ function clear() {
+ timeoutID = undefined;
+ }
+
+ if (!noLeading && debounceMode && !timeoutID) {
+ /*
+ * Since `wrapper` is being called for the first time and
+ * `debounceMode` is true (at begin), execute `callback`
+ * and noLeading != true.
+ */
+ exec();
+ }
+
+ clearExistingTimeout();
+
+ if (debounceMode === undefined && elapsed > delay) {
+ if (noLeading) {
+ /*
+ * In throttle mode with noLeading, if `delay` time has
+ * been exceeded, update `lastExec` and schedule `callback`
+ * to execute after `delay` ms.
+ */
+ lastExec = Date.now();
+
+ if (!noTrailing) {
+ timeoutID = setTimeout(debounceMode ? clear : exec, delay);
+ }
+ } else {
+ /*
+ * In throttle mode without noLeading, if `delay` time has been exceeded, execute
+ * `callback`.
+ */
+ exec();
+ }
+ } else if (noTrailing !== true) {
+ /*
+ * In trailing throttle mode, since `delay` time has not been
+ * exceeded, schedule `callback` to execute `delay` ms after most
+ * recent execution.
+ *
+ * If `debounceMode` is true (at begin), schedule `clear` to execute
+ * after `delay` ms.
+ *
+ * If `debounceMode` is false (at end), schedule `callback` to
+ * execute after `delay` ms.
+ */
+ timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);
+ }
+ }
+
+ wrapper.cancel = cancel; // Return the wrapper function.
+
+ return wrapper;
+}
+
+/* eslint-disable no-undefined */
+/**
+ * Debounce execution of a function. Debouncing, unlike throttling,
+ * guarantees that a function is only executed a single time, either at the
+ * very beginning of a series of calls, or at the very end.
+ *
+ * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.
+ * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,
+ * to `callback` when the debounced-function is executed.
+ * @param {object} [options] - An object to configure options.
+ * @param {boolean} [options.atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds
+ * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.
+ * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).
+ *
+ * @returns {Function} A new, debounced function.
+ */
+
+function debounce (delay, callback, options) {
+ var _ref = options || {},
+ _ref$atBegin = _ref.atBegin,
+ atBegin = _ref$atBegin === void 0 ? false : _ref$atBegin;
+
+ return throttle(delay, callback, {
+ debounceMode: atBegin !== false
+ });
+}
+
+
+//# sourceMappingURL=index.js.map
+
+
+/***/ })
+
+/******/ });
+/************************************************************************/
+/******/ // The module cache
+/******/ var __webpack_module_cache__ = {};
+/******/
+/******/ // The require function
+/******/ function __webpack_require__(moduleId) {
+/******/ // Check if module is in cache
+/******/ var cachedModule = __webpack_module_cache__[moduleId];
+/******/ if (cachedModule !== undefined) {
+/******/ return cachedModule.exports;
+/******/ }
+/******/ // Create a new module (and put it into the cache)
+/******/ var module = __webpack_module_cache__[moduleId] = {
+/******/ id: moduleId,
+/******/ loaded: false,
+/******/ exports: {}
+/******/ };
+/******/
+/******/ // Execute the module function
+/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+/******/
+/******/ // Flag the module as loaded
+/******/ module.loaded = true;
+/******/
+/******/ // Return the exports of the module
+/******/ return module.exports;
+/******/ }
+/******/
+/******/ // expose the modules object (__webpack_modules__)
+/******/ __webpack_require__.m = __webpack_modules__;
+/******/
+/************************************************************************/
+/******/ /* webpack/runtime/chunk loaded */
+/******/ !function() {
+/******/ var deferred = [];
+/******/ __webpack_require__.O = function(result, chunkIds, fn, priority) {
+/******/ if(chunkIds) {
+/******/ priority = priority || 0;
+/******/ for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];
+/******/ deferred[i] = [chunkIds, fn, priority];
+/******/ return;
+/******/ }
+/******/ var notFulfilled = Infinity;
+/******/ for (var i = 0; i < deferred.length; i++) {
+/******/ var chunkIds = deferred[i][0];
+/******/ var fn = deferred[i][1];
+/******/ var priority = deferred[i][2];
+/******/ var fulfilled = true;
+/******/ for (var j = 0; j < chunkIds.length; j++) {
+/******/ if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {
+/******/ chunkIds.splice(j--, 1);
+/******/ } else {
+/******/ fulfilled = false;
+/******/ if(priority < notFulfilled) notFulfilled = priority;
+/******/ }
+/******/ }
+/******/ if(fulfilled) {
+/******/ deferred.splice(i--, 1)
+/******/ var r = fn();
+/******/ if (r !== undefined) result = r;
+/******/ }
+/******/ }
+/******/ return result;
+/******/ };
+/******/ }();
+/******/
+/******/ /* webpack/runtime/compat get default export */
+/******/ !function() {
+/******/ // getDefaultExport function for compatibility with non-harmony modules
+/******/ __webpack_require__.n = function(module) {
+/******/ var getter = module && module.__esModule ?
+/******/ function() { return module['default']; } :
+/******/ function() { return module; };
+/******/ __webpack_require__.d(getter, { a: getter });
+/******/ return getter;
+/******/ };
+/******/ }();
+/******/
+/******/ /* webpack/runtime/define property getters */
+/******/ !function() {
+/******/ // define getter functions for harmony exports
+/******/ __webpack_require__.d = function(exports, definition) {
+/******/ for(var key in definition) {
+/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
+/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
+/******/ }
+/******/ }
+/******/ };
+/******/ }();
+/******/
+/******/ /* webpack/runtime/global */
+/******/ !function() {
+/******/ __webpack_require__.g = (function() {
+/******/ if (typeof globalThis === 'object') return globalThis;
+/******/ try {
+/******/ return this || new Function('return this')();
+/******/ } catch (e) {
+/******/ if (typeof window === 'object') return window;
+/******/ }
+/******/ })();
+/******/ }();
+/******/
+/******/ /* webpack/runtime/hasOwnProperty shorthand */
+/******/ !function() {
+/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
+/******/ }();
+/******/
+/******/ /* webpack/runtime/make namespace object */
+/******/ !function() {
+/******/ // define __esModule on exports
+/******/ __webpack_require__.r = function(exports) {
+/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
+/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+/******/ }
+/******/ Object.defineProperty(exports, '__esModule', { value: true });
+/******/ };
+/******/ }();
+/******/
+/******/ /* webpack/runtime/node module decorator */
+/******/ !function() {
+/******/ __webpack_require__.nmd = function(module) {
+/******/ module.paths = [];
+/******/ if (!module.children) module.children = [];
+/******/ return module;
+/******/ };
+/******/ }();
+/******/
+/******/ /* webpack/runtime/jsonp chunk loading */
+/******/ !function() {
+/******/ __webpack_require__.b = document.baseURI || self.location.href;
+/******/
+/******/ // object to store loaded and loading chunks
+/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
+/******/ // [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
+/******/ var installedChunks = {
+/******/ "files-main": 0
+/******/ };
+/******/
+/******/ // no chunk on demand loading
+/******/
+/******/ // no prefetching
+/******/
+/******/ // no preloaded
+/******/
+/******/ // no HMR
+/******/
+/******/ // no HMR manifest
+/******/
+/******/ __webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };
+/******/
+/******/ // install a JSONP callback for chunk loading
+/******/ var webpackJsonpCallback = function(parentChunkLoadingFunction, data) {
+/******/ var chunkIds = data[0];
+/******/ var moreModules = data[1];
+/******/ var runtime = data[2];
+/******/ // add "moreModules" to the modules object,
+/******/ // then flag all "chunkIds" as loaded and fire callback
+/******/ var moduleId, chunkId, i = 0;
+/******/ if(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {
+/******/ for(moduleId in moreModules) {
+/******/ if(__webpack_require__.o(moreModules, moduleId)) {
+/******/ __webpack_require__.m[moduleId] = moreModules[moduleId];
+/******/ }
+/******/ }
+/******/ if(runtime) var result = runtime(__webpack_require__);
+/******/ }
+/******/ if(parentChunkLoadingFunction) parentChunkLoadingFunction(data);
+/******/ for(;i < chunkIds.length; i++) {
+/******/ chunkId = chunkIds[i];
+/******/ if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
+/******/ installedChunks[chunkId][0]();
+/******/ }
+/******/ installedChunks[chunkId] = 0;
+/******/ }
+/******/ return __webpack_require__.O(result);
+/******/ }
+/******/
+/******/ var chunkLoadingGlobal = self["webpackChunknextcloud"] = self["webpackChunknextcloud"] || [];
+/******/ chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
+/******/ chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
+/******/ }();
+/******/
+/******/ /* webpack/runtime/nonce */
+/******/ !function() {
+/******/ __webpack_require__.nc = undefined;
+/******/ }();
+/******/
+/************************************************************************/
+/******/
+/******/ // startup
+/******/ // Load entry module and return exports
+/******/ // This entry module depends on other loaded chunks and execution need to be delayed
+/******/ var __webpack_exports__ = __webpack_require__.O(undefined, ["core-common"], function() { return __webpack_require__("./apps/files/src/main.ts"); })
+/******/ __webpack_exports__ = __webpack_require__.O(__webpack_exports__);
+/******/
+/******/ })()
+;
+//# sourceMappingURL=files-main.js.map?v=647ac6404daaba50587d \ No newline at end of file