diff --git a/js/activity-adminSettings.mjs b/js/activity-adminSettings.mjs index 1f7a9f64e..88e7cdc45 100644 --- a/js/activity-adminSettings.mjs +++ b/js/activity-adminSettings.mjs @@ -1 +1 @@ -import{V as n,t as d,b as m}from"./index-CpOKyUsr.chunk.mjs";import{N as o,m as s,a as c,A as p,i as u,s as a}from"./settings-store-CIr0IpsE.chunk.mjs";import{w as g,b as l}from"./NcCheckboxRadioSwitch-CvMEEI9x-CRJk_h3R.chunk.mjs";import"./_commonjsHelpers-D9DevfhH.chunk.mjs";import"./NcNoteCard-CImn6F9p-CWGSZ4YZ.chunk.mjs";import"./logger-DdfSSqJ9.chunk.mjs";const v={name:"AdminSettings",components:{NcCheckboxRadioSwitch:g,NcSettingsSection:o},computed:{...s({emailEnabled:"emailEnabled"}),settingDescription(){return this.emailEnabled?t("activity","Choose for which activities you want to get an email or push notification."):t("activity","Choose for which activities you want to get a push notification.")}},mounted(){this.setEndpoint({endpoint:"/apps/activity/settings/admin"})},methods:{...c(["setEndpoint","toggleEmailEnabled"])}};var h=function(){var i=this,e=i._self._c;return e("NcSettingsSection",{attrs:{name:i.t("activity","Notification")}},[e("NcCheckboxRadioSwitch",{attrs:{type:"checkbox",checked:i.emailEnabled},on:{"update:checked":function(r){return i.toggleEmailEnabled({emailEnabled:r})}}},[i._v(" "+i._s(i.t("activity","Enable notification emails"))+" ")])],1)},f=[],y=l(v,h,f,!1,null,null);const E=y.exports,b={name:"DefaultActivitySettings",components:{ActivityGrid:p,NcSettingsSection:o},computed:{...s({emailEnabled:"emailEnabled"})},mounted(){this.setEndpoint({endpoint:"/apps/activity/settings/admin"})},methods:{...c(["setEndpoint","toggleEmailEnabled"])}};var S=function(){var i=this,e=i._self._c;return e("NcSettingsSection",{attrs:{name:i.t("activity","Default settings"),description:i.t("activity","Configure the default notification settings for new accounts.")}},[e("ActivityGrid")],1)},w=[],N=l(b,S,w,!1,null,null);const A=N.exports;n.prototype.t=d,n.prototype.n=m,n.use(u),new n({el:"#activity-admin-settings",store:a,name:"ActivityPersonalSettings",render:i=>i(E)}),new n({el:"#activity-default-settings",store:a,name:"ActivityDefaultSettings",render:i=>i(A)}); +import{V as n,t as d,b as m}from"./index-CpOKyUsr.chunk.mjs";import{N as o,m as s,a as c,A as p,i as u,s as a}from"./settings-store-FJFCqrJM.chunk.mjs";import{w as g,b as l}from"./NcCheckboxRadioSwitch-CvMEEI9x-CRJk_h3R.chunk.mjs";import"./_commonjsHelpers-D9DevfhH.chunk.mjs";import"./NcNoteCard-CImn6F9p-CWGSZ4YZ.chunk.mjs";import"./logger-DdfSSqJ9.chunk.mjs";const v={name:"AdminSettings",components:{NcCheckboxRadioSwitch:g,NcSettingsSection:o},computed:{...s({emailEnabled:"emailEnabled"}),settingDescription(){return this.emailEnabled?t("activity","Choose for which activities you want to get an email or push notification."):t("activity","Choose for which activities you want to get a push notification.")}},mounted(){this.setEndpoint({endpoint:"/apps/activity/settings/admin"})},methods:{...c(["setEndpoint","toggleEmailEnabled"])}};var h=function(){var i=this,e=i._self._c;return e("NcSettingsSection",{attrs:{name:i.t("activity","Notification")}},[e("NcCheckboxRadioSwitch",{attrs:{type:"checkbox",checked:i.emailEnabled},on:{"update:checked":function(r){return i.toggleEmailEnabled({emailEnabled:r})}}},[i._v(" "+i._s(i.t("activity","Enable notification emails"))+" ")])],1)},f=[],y=l(v,h,f,!1,null,null);const E=y.exports,b={name:"DefaultActivitySettings",components:{ActivityGrid:p,NcSettingsSection:o},computed:{...s({emailEnabled:"emailEnabled"})},mounted(){this.setEndpoint({endpoint:"/apps/activity/settings/admin"})},methods:{...c(["setEndpoint","toggleEmailEnabled"])}};var S=function(){var i=this,e=i._self._c;return e("NcSettingsSection",{attrs:{name:i.t("activity","Default settings"),description:i.t("activity","Configure the default notification settings for new accounts.")}},[e("ActivityGrid")],1)},w=[],N=l(b,S,w,!1,null,null);const A=N.exports;n.prototype.t=d,n.prototype.n=m,n.use(u),new n({el:"#activity-admin-settings",store:a,name:"ActivityPersonalSettings",render:i=>i(E)}),new n({el:"#activity-default-settings",store:a,name:"ActivityDefaultSettings",render:i=>i(A)}); diff --git a/js/activity-app.mjs b/js/activity-app.mjs index 987e12019..d3bb0c852 100644 --- a/js/activity-app.mjs +++ b/js/activity-app.mjs @@ -1,2 +1,2 @@ (function(){"use strict";try{if(typeof document<"u"){var a=document.createElement("style");a.appendChild(document.createTextNode('#skip-actions.vue-skip-actions:focus-within{top:0!important;left:0!important;width:100vw;height:100vh;padding:var(--body-container-margin)!important;-webkit-backdrop-filter:brightness(50%);backdrop-filter:brightness(50%)}.material-design-icon[data-v-d8f0539f]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-skip-actions__container[data-v-d8f0539f]{background-color:var(--color-main-background);border-radius:var(--border-radius-large);padding:22px}.vue-skip-actions__headline[data-v-d8f0539f]{font-weight:700;font-size:20px;line-height:30px;margin-bottom:12px}.vue-skip-actions__buttons[data-v-d8f0539f]{display:flex;flex-wrap:wrap;gap:12px}.vue-skip-actions__buttons>*[data-v-d8f0539f]{flex:1 0 fit-content}.vue-skip-actions__image[data-v-d8f0539f]{margin-top:12px}.content[data-v-d8f0539f]{box-sizing:border-box;margin:var(--body-container-margin);margin-top:var(--header-height);display:flex;width:calc(100% - var(--body-container-margin) * 2);border-radius:var(--body-container-radius);height:var(--body-height);overflow:hidden;padding:0}.content[data-v-d8f0539f]:not(.with-sidebar--full){position:fixed}.content[data-v-d8f0539f] *{box-sizing:border-box}.material-design-icon[data-v-7692fc78]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-details-toggle[data-v-7692fc78]{position:-webkit-sticky;position:sticky;width:var(--default-clickable-area);height:var(--default-clickable-area);padding:calc((var(--default-clickable-area) - 16px) / 2);cursor:pointer;opacity:.6;transform:rotate(180deg);background-color:var(--color-main-background);z-index:2000;top:var(--app-navigation-padding);left:calc(var(--default-clickable-area) + var(--app-navigation-padding) * 2)}.app-details-toggle--mobile[data-v-7692fc78]{left:var(--app-navigation-padding)}.app-details-toggle[data-v-7692fc78]:active,.app-details-toggle[data-v-7692fc78]:hover,.app-details-toggle[data-v-7692fc78]:focus{opacity:1}.material-design-icon[data-v-de6986e3]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-content[data-v-de6986e3]{position:initial;z-index:1000;flex-basis:100vw;height:100%;margin:0!important;background-color:var(--color-main-background);min-width:0}.app-content[data-v-de6986e3]:not(.app-content--has-list){overflow:auto}.app-content-wrapper[data-v-de6986e3]{position:relative;width:100%;height:100%}.app-content-wrapper--no-split.app-content-wrapper--show-list[data-v-de6986e3] .app-content-list{display:flex}.app-content-wrapper--no-split.app-content-wrapper--show-list[data-v-de6986e3] .app-content-details,.app-content-wrapper--no-split.app-content-wrapper--show-details[data-v-de6986e3] .app-content-list{display:none}.app-content-wrapper--no-split.app-content-wrapper--show-details[data-v-de6986e3] .app-content-details{display:block}[data-v-de6986e3] .splitpanes.default-theme .app-content-list{max-width:none;scrollbar-width:auto}[data-v-de6986e3] .splitpanes.default-theme .splitpanes__pane{background-color:transparent;transition:none}[data-v-de6986e3] .splitpanes.default-theme .splitpanes__pane-list{min-width:300px;position:-webkit-sticky;position:sticky}@media only screen and (width < 1024px){[data-v-de6986e3] .splitpanes.default-theme .splitpanes__pane-list{display:none}}[data-v-de6986e3] .splitpanes.default-theme .splitpanes__pane-details{overflow-y:auto}@media only screen and (width < 1024px){[data-v-de6986e3] .splitpanes.default-theme .splitpanes__pane-details{min-width:100%}}[data-v-de6986e3] .splitpanes.default-theme.splitpanes--vertical .splitpanes__splitter{background-color:var(--color-main-background);border-left:1px solid var(--color-border)}[data-v-de6986e3] .splitpanes.default-theme.splitpanes--vertical .splitpanes__splitter:before,[data-v-de6986e3] .splitpanes.default-theme.splitpanes--vertical .splitpanes__splitter:after{background-color:var(--color-border)}.app-content-wrapper--show-list[data-v-de6986e3] .app-content-list{max-width:none}.splitpanes{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;height:100%}.splitpanes--vertical{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.splitpanes--horizontal{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.splitpanes--dragging *{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.splitpanes__pane{width:100%;height:100%;overflow:hidden}.splitpanes--vertical .splitpanes__pane{-webkit-transition:width .2s ease-out;-o-transition:width .2s ease-out;transition:width .2s ease-out}.splitpanes--horizontal .splitpanes__pane{-webkit-transition:height .2s ease-out;-o-transition:height .2s ease-out;transition:height .2s ease-out}.splitpanes--dragging .splitpanes__pane{-webkit-transition:none;-o-transition:none;transition:none}.splitpanes__splitter{-ms-touch-action:none;touch-action:none}.splitpanes--vertical>.splitpanes__splitter{min-width:1px;cursor:col-resize}.splitpanes--horizontal>.splitpanes__splitter{min-height:1px;cursor:row-resize}.splitpanes.default-theme .splitpanes__pane{background-color:#f2f2f2}.splitpanes.default-theme .splitpanes__splitter{background-color:#fff;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;-ms-flex-negative:0;flex-shrink:0}.splitpanes.default-theme .splitpanes__splitter:before,.splitpanes.default-theme .splitpanes__splitter:after{content:"";position:absolute;top:50%;left:50%;background-color:#00000026;-webkit-transition:background-color .3s;-o-transition:background-color .3s;transition:background-color .3s}.splitpanes.default-theme .splitpanes__splitter:hover:before,.splitpanes.default-theme .splitpanes__splitter:hover:after{background-color:#00000040}.splitpanes.default-theme .splitpanes__splitter:first-child{cursor:auto}.default-theme.splitpanes .splitpanes .splitpanes__splitter{z-index:1}.default-theme.splitpanes--vertical>.splitpanes__splitter,.default-theme .splitpanes--vertical>.splitpanes__splitter{width:7px;border-left:1px solid #eee;margin-left:-1px}.default-theme.splitpanes--vertical>.splitpanes__splitter:before,.default-theme.splitpanes--vertical>.splitpanes__splitter:after,.default-theme .splitpanes--vertical>.splitpanes__splitter:before,.default-theme .splitpanes--vertical>.splitpanes__splitter:after{-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);width:1px;height:30px}.default-theme.splitpanes--vertical>.splitpanes__splitter:before,.default-theme .splitpanes--vertical>.splitpanes__splitter:before{margin-left:-2px}.default-theme.splitpanes--vertical>.splitpanes__splitter:after,.default-theme .splitpanes--vertical>.splitpanes__splitter:after{margin-left:1px}.default-theme.splitpanes--horizontal>.splitpanes__splitter,.default-theme .splitpanes--horizontal>.splitpanes__splitter{height:7px;border-top:1px solid #eee;margin-top:-1px}.default-theme.splitpanes--horizontal>.splitpanes__splitter:before,.default-theme.splitpanes--horizontal>.splitpanes__splitter:after,.default-theme .splitpanes--horizontal>.splitpanes__splitter:before,.default-theme .splitpanes--horizontal>.splitpanes__splitter:after{-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translate(-50%);width:30px;height:1px}.default-theme.splitpanes--horizontal>.splitpanes__splitter:before,.default-theme .splitpanes--horizontal>.splitpanes__splitter:before{margin-top:-2px}.default-theme.splitpanes--horizontal>.splitpanes__splitter:after,.default-theme .splitpanes--horizontal>.splitpanes__splitter:after{margin-top:1px}.activity-group__heading[data-v-c16e5a63]{line-height:1.5;margin-block:30px 12px}.activity-group__heading[data-v-c16e5a63]:first-of-type{margin-block-start:0}.activity-app[data-v-6798da20]{display:flex;flex-direction:column;overflow:hidden}.activity-app__empty-content[data-v-6798da20]{height:100%}.activity-app__loading-indicator[data-v-6798da20]{color:var(--color-text-maxcontrast);justify-self:center;margin-block:30px 6px;text-align:center}.activity-app__container[data-v-6798da20]{display:flex;flex-direction:column;height:100%;width:min(100%,924px);max-width:924px;margin:0 auto;padding-inline:12px;overflow-y:scroll}.activity-app__heading[data-v-6798da20]{font-weight:700;font-size:20px;line-height:44px;margin-top:1px;margin-inline:calc(2 * var(--app-navigation-padding, 8px) + 44px) var(--app-navigation-padding, 8px)}.material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-navigation,.app-content{--app-navigation-padding: calc(var(--default-grid-baseline, 4px) * 2)}.material-design-icon[data-v-e7d078cc]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-navigation[data-v-e7d078cc]{--color-text-maxcontrast: var(--color-text-maxcontrast-background-blur, var(--color-text-maxcontrast-default));transition:transform var(--animation-quick),margin var(--animation-quick);width:300px;--app-navigation-max-width: calc(100vw - (var(--app-navigation-padding) + var(--default-clickable-area) + var(--default-grid-baseline)));max-width:var(--app-navigation-max-width);position:relative;top:0;left:0;padding:0;z-index:1800;height:100%;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;flex-grow:0;flex-shrink:0;background-color:var(--color-main-background-blur, var(--color-main-background));-webkit-backdrop-filter:var(--filter-background-blur, none);backdrop-filter:var(--filter-background-blur, none)}.app-navigation--close[data-v-e7d078cc]{margin-left:calc(-1*min(300px,var(--app-navigation-max-width)))}.app-navigation__search[data-v-e7d078cc]{width:100%}.app-navigation__body[data-v-e7d078cc]{overflow-y:scroll}.app-navigation__content>ul[data-v-e7d078cc]{position:relative;width:100%;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column;gap:var(--default-grid-baseline, 4px);padding:var(--app-navigation-padding)}.app-navigation .app-navigation__list[data-v-e7d078cc]{height:100%}.app-navigation__body--no-list[data-v-e7d078cc]{flex:1 1 auto;overflow:auto;height:100%}.app-navigation__content[data-v-e7d078cc]{height:100%;display:flex;flex-direction:column}[data-themes*=highcontrast] .app-navigation[data-v-e7d078cc]{border-inline-end:1px solid var(--color-border)}@media only screen and (max-width: 1024px){.app-navigation[data-v-e7d078cc]{position:absolute;border-inline-end:1px solid var(--color-border)}}@media only screen and (max-width: 512px){.app-navigation[data-v-e7d078cc]{z-index:1400}}.material-design-icon[data-v-058e6060]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-navigation-list[data-v-058e6060]{position:relative;width:100%;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column;gap:var(--default-grid-baseline, 4px);padding:var(--app-navigation-padding)}.material-design-icon[data-v-b6024aba]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-navigation-toggle-wrapper[data-v-b6024aba]{position:absolute;top:var(--app-navigation-padding);right:calc(0px - var(--app-navigation-padding));margin-right:calc(-1 * var(--default-clickable-area))}button.app-navigation-toggle[data-v-b6024aba]{background-color:var(--color-main-background)}.material-design-icon[data-v-cadd59ae]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.button-vue.icon-collapse[data-v-cadd59ae]{position:relative;z-index:105;color:var(--color-main-text);right:0}.button-vue.icon-collapse--open[data-v-cadd59ae]{color:var(--color-main-text)}.button-vue.icon-collapse--open[data-v-cadd59ae]:hover{color:var(--color-primary-element)}.material-design-icon[data-v-97fce21a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-navigation-entry[data-v-97fce21a]{position:relative;display:flex;flex-shrink:0;flex-wrap:wrap;box-sizing:border-box;width:100%;min-height:var(--default-clickable-area);transition:background-color var(--animation-quick) ease-in-out;transition:background-color .2s ease-in-out;border-radius:var(--border-radius-element, var(--border-radius-pill))}.app-navigation-entry-wrapper[data-v-97fce21a]{position:relative;display:flex;flex-shrink:0;flex-wrap:wrap;box-sizing:border-box;width:100%}.app-navigation-entry-wrapper.app-navigation-entry--collapsible:not(.app-navigation-entry--opened)>ul[data-v-97fce21a]{display:none}.app-navigation-entry.active[data-v-97fce21a]{background-color:var(--color-primary-element)!important}.app-navigation-entry.active[data-v-97fce21a]:hover{background-color:var(--color-primary-element-hover)!important}.app-navigation-entry.active .app-navigation-entry-link[data-v-97fce21a],.app-navigation-entry.active .app-navigation-entry-button[data-v-97fce21a]{color:var(--color-primary-element-text)!important}.app-navigation-entry[data-v-97fce21a]:focus-within,.app-navigation-entry[data-v-97fce21a]:hover{background-color:var(--color-background-hover)}.app-navigation-entry.active .app-navigation-entry__children[data-v-97fce21a],.app-navigation-entry:focus-within .app-navigation-entry__children[data-v-97fce21a],.app-navigation-entry:hover .app-navigation-entry__children[data-v-97fce21a]{background-color:var(--color-main-background)}.app-navigation-entry.active .app-navigation-entry__utils .app-navigation-entry__actions[data-v-97fce21a],.app-navigation-entry.app-navigation-entry--deleted .app-navigation-entry__utils .app-navigation-entry__actions[data-v-97fce21a],.app-navigation-entry:focus .app-navigation-entry__utils .app-navigation-entry__actions[data-v-97fce21a],.app-navigation-entry:focus-within .app-navigation-entry__utils .app-navigation-entry__actions[data-v-97fce21a],.app-navigation-entry:hover .app-navigation-entry__utils .app-navigation-entry__actions[data-v-97fce21a]{display:inline-block}.app-navigation-entry.app-navigation-entry--deleted>ul[data-v-97fce21a]{display:none}.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-link[data-v-97fce21a],.app-navigation-entry:not(.app-navigation-entry--editing) .app-navigation-entry-button[data-v-97fce21a]{padding-right:calc((var(--default-clickable-area) - 16px) / 2)}.app-navigation-entry .app-navigation-entry-link[data-v-97fce21a],.app-navigation-entry .app-navigation-entry-button[data-v-97fce21a]{z-index:100;display:flex;overflow:hidden;flex:1 1 0;box-sizing:border-box;min-height:var(--default-clickable-area);padding:0;white-space:nowrap;color:var(--color-main-text);background-repeat:no-repeat;background-position:calc((var(--default-clickable-area) - 16px) / 2) center;background-size:16px 16px;line-height:var(--default-clickable-area)}.app-navigation-entry .app-navigation-entry-link .app-navigation-entry-icon[data-v-97fce21a],.app-navigation-entry .app-navigation-entry-button .app-navigation-entry-icon[data-v-97fce21a]{display:flex;align-items:center;flex:0 0 var(--default-clickable-area);justify-content:center;width:var(--default-clickable-area);height:var(--default-clickable-area);background-size:16px 16px;background-repeat:no-repeat;background-position:calc((var(--default-clickable-area) - 16px) / 2) center}.app-navigation-entry .app-navigation-entry-link .app-navigation-entry__name[data-v-97fce21a],.app-navigation-entry .app-navigation-entry-button .app-navigation-entry__name[data-v-97fce21a]{overflow:hidden;max-width:100%;white-space:nowrap;text-overflow:ellipsis}.app-navigation-entry .app-navigation-entry-link .editingContainer[data-v-97fce21a],.app-navigation-entry .app-navigation-entry-button .editingContainer[data-v-97fce21a]{width:calc(100% - var(--default-clickable-area));margin:auto}.app-navigation-entry .app-navigation-entry-link[data-v-97fce21a]:focus-visible,.app-navigation-entry .app-navigation-entry-button[data-v-97fce21a]:focus-visible{box-shadow:0 0 0 4px var(--color-main-background);outline:2px solid var(--color-main-text);border-radius:var(--border-radius-element, var(--border-radius-pill))}.app-navigation-entry__children[data-v-97fce21a]{position:relative;display:flex;flex:0 1 auto;flex-direction:column;width:100%;gap:var(--default-grid-baseline, 4px)}.app-navigation-entry__children .app-navigation-entry[data-v-97fce21a]{display:inline-flex;flex-wrap:wrap;padding-left:16px}.app-navigation-entry__deleted[data-v-97fce21a]{display:inline-flex;flex:1 1 0;padding-left:calc(var(--default-clickable-area) - (var(--default-clickable-area) - 16px) / 2)!important}.app-navigation-entry__deleted .app-navigation-entry__deleted-description[data-v-97fce21a]{position:relative;overflow:hidden;flex:1 1 0;white-space:nowrap;text-overflow:ellipsis;line-height:var(--default-clickable-area)}.app-navigation-entry__utils[data-v-97fce21a]{display:flex;min-width:var(--default-clickable-area);align-items:center;flex:0 1 auto;justify-content:flex-end}.app-navigation-entry__utils.app-navigation-entry__utils--display-actions .action-item.app-navigation-entry__actions[data-v-97fce21a]{display:inline-block}.app-navigation-entry__utils .app-navigation-entry__counter-wrapper[data-v-97fce21a]{margin-right:calc(var(--default-grid-baseline) * 2);display:flex;align-items:center;flex:0 1 auto}.app-navigation-entry__utils .action-item.app-navigation-entry__actions[data-v-97fce21a]{display:none}.app-navigation-entry--editing .app-navigation-entry-edit[data-v-97fce21a]{z-index:250;opacity:1}.app-navigation-entry--deleted .app-navigation-entry-deleted[data-v-97fce21a]{z-index:250;transform:translate(0)}.app-navigation-entry--pinned[data-v-97fce21a]{order:2;margin-top:auto}.app-navigation-entry--pinned~.app-navigation-entry--pinned[data-v-97fce21a]{margin-top:0}[data-themes*=highcontrast] .app-navigation-entry[data-v-97fce21a]:active{background-color:var(--color-primary-element-light-hover)!important}.material-design-icon[data-v-dba65098]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.action.active[data-v-dba65098]{background-color:var(--color-background-hover);border-radius:6px;padding:0}.action--disabled[data-v-dba65098]{pointer-events:none;opacity:.5}.action--disabled[data-v-dba65098]:hover,.action--disabled[data-v-dba65098]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-dba65098]{opacity:1!important}.action-button[data-v-dba65098]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:calc((var(--default-clickable-area) - 16px) / 2);box-sizing:border-box;cursor:pointer;white-space:nowrap;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:400;font-size:var(--default-font-size);line-height:var(--default-clickable-area)}.action-button>span[data-v-dba65098]{cursor:pointer;white-space:nowrap}.action-button__icon[data-v-dba65098]{width:var(--default-clickable-area);height:var(--default-clickable-area);opacity:1;background-position:calc((var(--default-clickable-area) - 16px) / 2) center;background-size:16px;background-repeat:no-repeat}.action-button[data-v-dba65098] .material-design-icon{width:var(--default-clickable-area);height:var(--default-clickable-area);opacity:1}.action-button[data-v-dba65098] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-button__longtext-wrapper[data-v-dba65098],.action-button__longtext[data-v-dba65098]{max-width:220px;line-height:1.6em;padding:calc((var(--default-clickable-area) - 1.6em) / 2) 0;cursor:pointer;text-align:left;overflow:hidden;text-overflow:ellipsis}.action-button__longtext[data-v-dba65098]{cursor:pointer;white-space:pre-wrap!important}.action-button__name[data-v-dba65098]{font-weight:700;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}.action-button__menu-icon[data-v-dba65098],.action-button__pressed-icon[data-v-dba65098]{margin-left:auto;margin-right:calc((var(--default-clickable-area) - 16px) / 2 * -1)}.material-design-icon[data-v-0e795eb7]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.app-navigation-input-confirm[data-v-0e795eb7]{flex:1 0 100%;width:100%}.app-navigation-input-confirm form[data-v-0e795eb7]{display:flex}.app-navigation-input-confirm__input[data-v-0e795eb7]{height:34px;flex:1 1 100%;font-size:100%!important;margin:5px 5px 5px -8px!important;padding:7px!important}.app-navigation-input-confirm__input[data-v-0e795eb7]:active,.app-navigation-input-confirm__input[data-v-0e795eb7]:focus,.app-navigation-input-confirm__input[data-v-0e795eb7]:hover{outline:none;background-color:var(--color-main-background);color:var(--color-main-text);border-color:var(--color-primary-element)}.material-design-icon[data-v-981e215c]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}#app-settings[data-v-981e215c]{margin-top:auto;padding:3px}#app-settings__header[data-v-981e215c]{box-sizing:border-box;margin:0 3px 3px}#app-settings__header .settings-button[data-v-981e215c]{display:flex;flex:1 1 0;height:var(--default-clickable-area);width:100%;padding:0 14px 0 0;margin:0;background-color:transparent;box-shadow:none;border:0;border-radius:var(--body-container-radius);text-align:left;font-weight:400;font-size:100%;color:var(--color-main-text);line-height:var(--default-clickable-area)}#app-settings__header .settings-button[data-v-981e215c]:hover,#app-settings__header .settings-button[data-v-981e215c]:focus{background-color:var(--color-background-hover)}#app-settings__header .settings-button__icon[data-v-981e215c]{width:var(--default-clickable-area);height:var(--default-clickable-area);min-width:var(--default-clickable-area)}#app-settings__header .settings-button__label[data-v-981e215c]{overflow:hidden;max-width:100%;white-space:nowrap;text-overflow:ellipsis}#app-settings__content[data-v-981e215c]{display:block;padding:10px;margin-bottom:-3px;max-height:300px;overflow-y:auto;box-sizing:border-box}.slide-up-leave-active[data-v-981e215c],.slide-up-enter-active[data-v-981e215c]{transition-duration:var(--animation-slow);transition-property:max-height,padding;overflow-y:hidden!important}.slide-up-enter[data-v-981e215c],.slide-up-leave-to[data-v-981e215c]{max-height:0!important;padding:0 10px!important}.app-activity .settings-link{max-width:100%}.app-activity .app-navigation-entry.active .navigation-icon{filter:var(--primary-invert-if-dark)}.app-activity .app-navigation-entry:not(.active) .navigation-icon{filter:var(--background-invert-if-dark)}.app-activity .navigation-icon{height:16px;width:16px}')),document.head.appendChild(a)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})(); -import{V as R,d as Ut,c as _t,t as B,g as ze,a as Ei,e as Pi,s as Mi,r as at,o as Ai,w as Li,b as Oi}from"./index-CpOKyUsr.chunk.mjs";import{N as He,u as Nt,A as je,m as ht,a as Ti,b as $i,c as Ii,C as Bi,d as Ri,e as Vi,v as Hi,f as ji,V as Fe}from"./Activity-Bii4XQFb.chunk.mjs";import{e as Y,g as Fi,l as ie,s as Ui,u as Wi}from"./logger-DdfSSqJ9.chunk.mjs";import{r as it,t as Zi,n as x,N as lt,a as T,b as Dt,c as qi,u as Ki,V as Gi,l as ne,d as Ue,e as We,v as Xi,f as Ji,g as Yi,h as Qi,i as tn,C as en,j as nn,k as sn,m as an,o as on,p as rn,q as ln,G as cn,s as un,w as pn,_ as Ze}from"./NcCheckboxRadioSwitch-CvMEEI9x-CRJk_h3R.chunk.mjs";import{s as qe,a as dn}from"./NcNoteCard-CImn6F9p-CWGSZ4YZ.chunk.mjs";import"./_commonjsHelpers-D9DevfhH.chunk.mjs";const Rt="activity";let hn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",fn=(t=21)=>{let e="",i=t|0;for(;i--;)e+=hn[Math.random()*64|0];return e};function Ot(t){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Ot=function(e){return typeof e}:Ot=function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ot(t)}var Ke={selector:"vue-portal-target-".concat(fn())},vn=function(t){return Ke.selector=t},Jt=typeof window<"u"&&(typeof document>"u"?"undefined":Ot(document))!==void 0,gn=R.extend({abstract:!0,name:"PortalOutlet",props:["nodes","tag"],data:function(t){return{updatedNodes:t.nodes}},render:function(t){var e=this.updatedNodes&&this.updatedNodes();return e?e.length===1&&!e[0].text?e:t(this.tag||"DIV",e):t()},destroyed:function(){var t=this.$el;t&&t.parentNode.removeChild(t)}}),Ge=R.extend({name:"VueSimplePortal",props:{disabled:{type:Boolean},prepend:{type:Boolean},selector:{type:String,default:function(){return"#".concat(Ke.selector)}},tag:{type:String,default:"DIV"}},render:function(t){if(this.disabled){var e=this.$scopedSlots&&this.$scopedSlots.default();return e?e.length<2&&!e[0].text?e:t(this.tag,e):t()}return t()},created:function(){this.getTargetEl()||this.insertTargetEl()},updated:function(){var t=this;this.$nextTick(function(){!t.disabled&&t.slotFn!==t.$scopedSlots.default&&(t.container.updatedNodes=t.$scopedSlots.default),t.slotFn=t.$scopedSlots.default})},beforeDestroy:function(){this.unmount()},watch:{disabled:{immediate:!0,handler:function(t){t?this.unmount():this.$nextTick(this.mount)}}},methods:{getTargetEl:function(){if(Jt)return document.querySelector(this.selector)},insertTargetEl:function(){if(Jt){var t=document.querySelector("body"),e=document.createElement(this.tag);e.id=this.selector.substring(1),t.appendChild(e)}},mount:function(){if(Jt){var t=this.getTargetEl(),e=document.createElement("DIV");this.prepend&&t.firstChild?t.insertBefore(e,t.firstChild):t.appendChild(e),this.container=new gn({el:e,parent:this,propsData:{tag:this.tag,nodes:this.$scopedSlots.default}})}},unmount:function(){this.container&&(this.container.$destroy(),delete this.container)}}});function mn(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};t.component(e.name||"portal",Ge),e.defaultSelector&&vn(e.defaultSelector)}typeof window<"u"&&window.Vue&&window.Vue===R&&R.use(mn),it(Zi);const yn='\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n',_n='\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n',Cn={name:"NcContent",components:{NcButton:lt,NcIconSvgWrapper:He,Teleport:Ge},provide(){return{"NcContent:setHasAppNavigation":this.setAppNavigation,"NcContent:selector":"#content-vue"}},props:{appName:{type:String,required:!0}},setup(){return{isMobile:Nt()}},data(){return{hasAppNavigation:!1,currentFocus:""}},computed:{currentImage(){return this.currentFocus==="navigation"?_n:yn}},beforeMount(){const t=document.getElementById("skip-actions");t&&(t.innerHTML="",t.classList.add("vue-skip-actions"))},methods:{t:T,openAppNavigation(){Y("toggle-navigation",{open:!0}),this.$nextTick(()=>{window.location.hash="app-navigation-vue",document.getElementById("app-navigation-vue").focus()})},setAppNavigation(t){this.hasAppNavigation=t,this.currentFocus===""&&(this.currentFocus="navigation")}}};var bn=function(){var t=this,e=t._self._c;return e("div",{class:["content","app-".concat(t.appName.toLowerCase())],attrs:{id:"content-vue"}},[e("Teleport",{attrs:{selector:"#skip-actions"}},[e("div",{staticClass:"vue-skip-actions__container"},[e("div",{staticClass:"vue-skip-actions__headline"},[t._v(" "+t._s(t.t("Keyboard navigation help"))+" ")]),e("div",{staticClass:"vue-skip-actions__buttons"},[e("NcButton",{directives:[{name:"show",rawName:"v-show",value:t.hasAppNavigation,expression:"hasAppNavigation"}],attrs:{type:"tertiary",href:"#app-navigation-vue"},on:{click:function(i){return i.preventDefault(),t.openAppNavigation.apply(null,arguments)},focusin:function(i){t.currentFocus="navigation"},mouseover:function(i){t.currentFocus="navigation"}}},[t._v(" "+t._s(t.t("Skip to app navigation"))+" ")]),e("NcButton",{attrs:{type:"tertiary",href:"#app-content-vue"},on:{focusin:function(i){t.currentFocus="content"},mouseover:function(i){t.currentFocus="content"}}},[t._v(" "+t._s(t.t("Skip to main content"))+" ")])],1),e("NcIconSvgWrapper",{directives:[{name:"show",rawName:"v-show",value:!t.isMobile,expression:"!isMobile"}],staticClass:"vue-skip-actions__image",attrs:{svg:t.currentImage,size:"auto"}})],1),t._v(" ")]),t._t("default")],2)},xn=[],Sn=x(Cn,bn,xn,!1,null,"d8f0539f");const wn=Sn.exports,kn=Ut({__name:"ActivityApp",setup(t){return{__sfc:!0,NcContent:wn}}});var zn=function(){var t=this,e=t._self._c,i=t._self._setupProxy;return e(i.NcContent,{attrs:{"app-name":"activity"}},[e("router-view",{attrs:{name:"navigation"}}),e("router-view")],1)},Nn=[],Dn=Dt(kn,zn,Nn,!1,null,null);const En=Dn.exports;var Pn=Object.defineProperty,Mn=Object.defineProperties,An=Object.getOwnPropertyDescriptors,Vt=Object.getOwnPropertySymbols,Xe=Object.prototype.hasOwnProperty,Je=Object.prototype.propertyIsEnumerable,Ne=(t,e,i)=>e in t?Pn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,Ln=(t,e)=>{for(var i in e||(e={}))Xe.call(e,i)&&Ne(t,i,e[i]);if(Vt)for(var i of Vt(e))Je.call(e,i)&&Ne(t,i,e[i]);return t},On=(t,e)=>Mn(t,An(e)),Tn=(t,e)=>{var i={};for(var n in t)Xe.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(t!=null&&Vt)for(var n of Vt(t))e.indexOf(n)<0&&Je.call(t,n)&&(i[n]=t[n]);return i};function Ye(t,e,i,n,s,a,o,r){var l=typeof t=="function"?t.options:t;e&&(l.render=e,l.staticRenderFns=i,l._compiled=!0);var p;if(s&&(p=s),p)if(l.functional){l._injectStyles=p;var c=l.render;l.render=function(d,h){return p.call(h),c(d,h)}}else{var u=l.beforeCreate;l.beforeCreate=u?[].concat(u,p):[p]}return{exports:t,options:l}}const $n={name:"splitpanes",props:{horizontal:{type:Boolean},pushOtherPanes:{type:Boolean,default:!0},dblClickSplitter:{type:Boolean,default:!0},rtl:{type:Boolean,default:!1},firstSplitter:{type:Boolean}},provide(){return{requestUpdate:this.requestUpdate,onPaneAdd:this.onPaneAdd,onPaneRemove:this.onPaneRemove,onPaneClick:this.onPaneClick}},data:()=>({container:null,ready:!1,panes:[],touch:{mouseDown:!1,dragging:!1,activeSplitter:null},splitterTaps:{splitter:null,timeoutId:null}}),computed:{panesCount(){return this.panes.length},indexedPanes(){return this.panes.reduce((t,e)=>(t[e.id]=e)&&t,{})}},methods:{updatePaneComponents(){this.panes.forEach(t=>{t.update&&t.update({[this.horizontal?"height":"width"]:"".concat(this.indexedPanes[t.id].size,"%")})})},bindEvents(){document.addEventListener("mousemove",this.onMouseMove,{passive:!1}),document.addEventListener("mouseup",this.onMouseUp),"ontouchstart"in window&&(document.addEventListener("touchmove",this.onMouseMove,{passive:!1}),document.addEventListener("touchend",this.onMouseUp))},unbindEvents(){document.removeEventListener("mousemove",this.onMouseMove,{passive:!1}),document.removeEventListener("mouseup",this.onMouseUp),"ontouchstart"in window&&(document.removeEventListener("touchmove",this.onMouseMove,{passive:!1}),document.removeEventListener("touchend",this.onMouseUp))},onMouseDown(t,e){this.bindEvents(),this.touch.mouseDown=!0,this.touch.activeSplitter=e},onMouseMove(t){this.touch.mouseDown&&(t.preventDefault(),this.touch.dragging=!0,this.calculatePanesSize(this.getCurrentMouseDrag(t)),this.$emit("resize",this.panes.map(e=>({min:e.min,max:e.max,size:e.size}))))},onMouseUp(){this.touch.dragging&&this.$emit("resized",this.panes.map(t=>({min:t.min,max:t.max,size:t.size}))),this.touch.mouseDown=!1,setTimeout(()=>{this.touch.dragging=!1,this.unbindEvents()},100)},onSplitterClick(t,e){"ontouchstart"in window&&(t.preventDefault(),this.dblClickSplitter&&(this.splitterTaps.splitter===e?(clearTimeout(this.splitterTaps.timeoutId),this.splitterTaps.timeoutId=null,this.onSplitterDblClick(t,e),this.splitterTaps.splitter=null):(this.splitterTaps.splitter=e,this.splitterTaps.timeoutId=setTimeout(()=>{this.splitterTaps.splitter=null},500)))),this.touch.dragging||this.$emit("splitter-click",this.panes[e])},onSplitterDblClick(t,e){let i=0;this.panes=this.panes.map((n,s)=>(n.size=s===e?n.max:n.min,s!==e&&(i+=n.min),n)),this.panes[e].size-=i,this.$emit("pane-maximize",this.panes[e])},onPaneClick(t,e){this.$emit("pane-click",this.indexedPanes[e])},getCurrentMouseDrag(t){const e=this.container.getBoundingClientRect(),{clientX:i,clientY:n}="ontouchstart"in window&&t.touches?t.touches[0]:t;return{x:i-e.left,y:n-e.top}},getCurrentDragPercentage(t){t=t[this.horizontal?"y":"x"];const e=this.container[this.horizontal?"clientHeight":"clientWidth"];return this.rtl&&!this.horizontal&&(t=e-t),t*100/e},calculatePanesSize(t){const e=this.touch.activeSplitter;let i={prevPanesSize:this.sumPrevPanesSize(e),nextPanesSize:this.sumNextPanesSize(e),prevReachedMinPanes:0,nextReachedMinPanes:0};const n=0+(this.pushOtherPanes?0:i.prevPanesSize),s=100-(this.pushOtherPanes?0:i.nextPanesSize),a=Math.max(Math.min(this.getCurrentDragPercentage(t),s),n);let o=[e,e+1],r=this.panes[o[0]]||null,l=this.panes[o[1]]||null;const p=r.max<100&&a>=r.max+i.prevPanesSize,c=l.max<100&&a<=100-(l.max+this.sumNextPanesSize(e+1));if(p||c){p?(r.size=r.max,l.size=Math.max(100-r.max-i.prevPanesSize-i.nextPanesSize,0)):(r.size=Math.max(100-l.max-i.prevPanesSize-this.sumNextPanesSize(e+1),0),l.size=l.max);return}if(this.pushOtherPanes){const u=this.doPushOtherPanes(i,a);if(!u)return;({sums:i,panesToResize:o}=u),r=this.panes[o[0]]||null,l=this.panes[o[1]]||null}r!==null&&(r.size=Math.min(Math.max(a-i.prevPanesSize-i.prevReachedMinPanes,r.min),r.max)),l!==null&&(l.size=Math.min(Math.max(100-a-i.nextPanesSize-i.nextReachedMinPanes,l.min),l.max))},doPushOtherPanes(t,e){const i=this.touch.activeSplitter,n=[i,i+1];return e{a>n[0]&&a<=i&&(s.size=s.min,t.prevReachedMinPanes+=s.min)}),t.prevPanesSize=this.sumPrevPanesSize(n[0]),n[0]===void 0)?(t.prevReachedMinPanes=0,this.panes[0].size=this.panes[0].min,this.panes.forEach((s,a)=>{a>0&&a<=i&&(s.size=s.min,t.prevReachedMinPanes+=s.min)}),this.panes[n[1]].size=100-t.prevReachedMinPanes-this.panes[0].min-t.prevPanesSize-t.nextPanesSize,null):e>100-t.nextPanesSize-this.panes[n[1]].min&&(n[1]=this.findNextExpandedPane(i).index,t.nextReachedMinPanes=0,n[1]>i+1&&this.panes.forEach((s,a)=>{a>i&&a{a=i+1&&(s.size=s.min,t.nextReachedMinPanes+=s.min)}),this.panes[n[0]].size=100-t.prevPanesSize-t.nextReachedMinPanes-this.panes[this.panesCount-1].min-t.nextPanesSize,null):{sums:t,panesToResize:n}},sumPrevPanesSize(t){return this.panes.reduce((e,i,n)=>e+(ne+(n>t+1?i.size:0),0)},findPrevExpandedPane(t){return[...this.panes].reverse().find(e=>e.indexe.min)||{}},findNextExpandedPane(t){return this.panes.find(e=>e.index>t+1&&e.size>e.min)||{}},checkSplitpanesNodes(){Array.from(this.container.children).forEach(t=>{const e=t.classList.contains("splitpanes__pane"),i=t.classList.contains("splitpanes__splitter");if(!e&&!i){t.parentNode.removeChild(t),console.warn("Splitpanes: Only elements are allowed at the root of . One of your DOM nodes was removed.");return}})},addSplitter(t,e,i=!1){const n=t-1,s=document.createElement("div");s.classList.add("splitpanes__splitter"),i||(s.onmousedown=a=>this.onMouseDown(a,n),typeof window<"u"&&"ontouchstart"in window&&(s.ontouchstart=a=>this.onMouseDown(a,n)),s.onclick=a=>this.onSplitterClick(a,n+1)),this.dblClickSplitter&&(s.ondblclick=a=>this.onSplitterDblClick(a,n+1)),e.parentNode.insertBefore(s,e)},removeSplitter(t){t.onmousedown=void 0,t.onclick=void 0,t.ondblclick=void 0,t.parentNode.removeChild(t)},redoSplitters(){const t=Array.from(this.container.children);t.forEach(i=>{i.className.includes("splitpanes__splitter")&&this.removeSplitter(i)});let e=0;t.forEach(i=>{i.className.includes("splitpanes__pane")&&(!e&&this.firstSplitter?this.addSplitter(e,i,!0):e&&this.addSplitter(e,i),e++)})},requestUpdate(t){var e=t,{target:i}=e,n=Tn(e,["target"]);const s=this.indexedPanes[i._uid];Object.entries(n).forEach(([a,o])=>s[a]=o)},onPaneAdd(t){let e=-1;Array.from(t.$el.parentNode.children).some(s=>(s.className.includes("splitpanes__pane")&&e++,s===t.$el));const i=parseFloat(t.minSize),n=parseFloat(t.maxSize);this.panes.splice(e,0,{id:t._uid,index:e,min:isNaN(i)?0:i,max:isNaN(n)?100:n,size:t.size===null?null:parseFloat(t.size),givenSize:t.size,update:t.update}),this.panes.forEach((s,a)=>s.index=a),this.ready&&this.$nextTick(()=>{this.redoSplitters(),this.resetPaneSizes({addedPane:this.panes[e]}),this.$emit("pane-add",{index:e,panes:this.panes.map(s=>({min:s.min,max:s.max,size:s.size}))})})},onPaneRemove(t){const e=this.panes.findIndex(n=>n.id===t._uid),i=this.panes.splice(e,1)[0];this.panes.forEach((n,s)=>n.index=s),this.$nextTick(()=>{this.redoSplitters(),this.resetPaneSizes({removedPane:On(Ln({},i),{index:e})}),this.$emit("pane-remove",{removed:i,panes:this.panes.map(n=>({min:n.min,max:n.max,size:n.size}))})})},resetPaneSizes(t={}){!t.addedPane&&!t.removedPane?this.initialPanesSizing():this.panes.some(e=>e.givenSize!==null||e.min||e.max<100)?this.equalizeAfterAddOrRemove(t):this.equalize(),this.ready&&this.$emit("resized",this.panes.map(e=>({min:e.min,max:e.max,size:e.size})))},equalize(){const t=100/this.panesCount;let e=0,i=[],n=[];this.panes.forEach(s=>{s.size=Math.max(Math.min(t,s.max),s.min),e-=s.size,s.size>=s.max&&i.push(s.id),s.size<=s.min&&n.push(s.id)}),e>.1&&this.readjustSizes(e,i,n)},initialPanesSizing(){100/this.panesCount;let t=100,e=[],i=[],n=0;this.panes.forEach(a=>{t-=a.size,a.size!==null&&n++,a.size>=a.max&&e.push(a.id),a.size<=a.min&&i.push(a.id)});let s=100;t>.1&&(this.panes.forEach(a=>{a.size===null&&(a.size=Math.max(Math.min(t/(this.panesCount-n),a.max),a.min)),s-=a.size}),s>.1&&this.readjustSizes(t,e,i))},equalizeAfterAddOrRemove({addedPane:t,removedPane:e}={}){let i=100/this.panesCount,n=0,s=[],a=[];t&&t.givenSize!==null&&(i=(100-t.givenSize)/(this.panesCount-1)),this.panes.forEach(o=>{n-=o.size,o.size>=o.max&&s.push(o.id),o.size<=o.min&&a.push(o.id)}),!(Math.abs(n)<.1)&&(this.panes.forEach(o=>{t&&t.givenSize!==null&&t.id===o.id||(o.size=Math.max(Math.min(i,o.max),o.min)),n-=o.size,o.size>=o.max&&s.push(o.id),o.size<=o.min&&a.push(o.id)}),n>.1&&this.readjustSizes(n,s,a))},readjustSizes(t,e,i){let n;t>0?n=t/(this.panesCount-e.length):n=t/(this.panesCount-i.length),this.panes.forEach((s,a)=>{if(t>0&&!e.includes(s.id)){const o=Math.max(Math.min(s.size+n,s.max),s.min),r=o-s.size;t-=r,s.size=o}else if(!i.includes(s.id)){const o=Math.max(Math.min(s.size+n,s.max),s.min),r=o-s.size;t-=r,s.size=o}s.update({[this.horizontal?"height":"width"]:"".concat(this.indexedPanes[s.id].size,"%")})}),Math.abs(t)>.1&&this.$nextTick(()=>{this.ready&&console.warn("Splitpanes: Could not resize panes correctly due to their constraints.")})}},watch:{panes:{deep:!0,immediate:!1,handler(){this.updatePaneComponents()}},horizontal(){this.updatePaneComponents()},firstSplitter(){this.redoSplitters()},dblClickSplitter(t){[...this.container.querySelectorAll(".splitpanes__splitter")].forEach((e,i)=>{e.ondblclick=t?n=>this.onSplitterDblClick(n,i):void 0})}},beforeDestroy(){this.ready=!1},mounted(){this.container=this.$refs.container,this.checkSplitpanesNodes(),this.redoSplitters(),this.resetPaneSizes(),this.$emit("ready"),this.ready=!0},render(t){return t("div",{ref:"container",class:["splitpanes","splitpanes--".concat(this.horizontal?"horizontal":"vertical"),{"splitpanes--dragging":this.touch.dragging}]},this.$slots.default)}};let In,Bn;const De={};var Rn=Ye($n,In,Bn,!1,Vn);function Vn(t){for(let e in De)this[e]=De[e]}var Hn=function(){return Rn.exports}(),jn=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"splitpanes__pane",style:t.style,on:{click:function(n){return t.onPaneClick(n,t._uid)}}},[t._t("default")],2)},Fn=[];const Un={name:"pane",inject:["requestUpdate","onPaneAdd","onPaneRemove","onPaneClick"],props:{size:{type:[Number,String],default:null},minSize:{type:[Number,String],default:0},maxSize:{type:[Number,String],default:100}},data:()=>({style:{}}),mounted(){this.onPaneAdd(this)},beforeDestroy(){this.onPaneRemove(this)},methods:{update(t){this.style=t}},computed:{sizeNumber(){return this.size||this.size===0?parseFloat(this.size):null},minSizeNumber(){return parseFloat(this.minSize)},maxSizeNumber(){return parseFloat(this.maxSize)}},watch:{sizeNumber(t){this.requestUpdate({target:this,size:t})},minSizeNumber(t){this.requestUpdate({target:this,min:t})},maxSizeNumber(t){this.requestUpdate({target:this,max:t})}}},Ee={};var Wn=Ye(Un,jn,Fn,!1,Zn);function Zn(t){for(let e in Ee)this[e]=Ee[e]}var qn=function(){return Wn.exports}();it(qi);const Kn={name:"NcAppDetailsToggle",directives:{tooltip:Gi},components:{NcButton:lt,ArrowRight:je},setup(){return{isMobile:Nt()}},computed:{title(){return T("Go back to the list")}},watch:{isMobile:{immediate:!0,handler(){this.toggleAppNavigationButton(this.isMobile)}}},beforeDestroy(){this.isMobile&&this.toggleAppNavigationButton(!1)},methods:{toggleAppNavigationButton(t=!0){const e=document.querySelector(".app-navigation .app-navigation-toggle");e&&(e.style.display=t?"none":null,t===!0&&Y("toggle-navigation",{open:!1}))}}};var Gn=function(){var t=this,e=t._self._c;return e("NcButton",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.title,expression:"title"}],staticClass:"app-details-toggle",class:{"app-details-toggle--mobile":t.isMobile},attrs:{type:"tertiary","aria-label":t.title},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ArrowRight",{attrs:{size:20}})]},proxy:!0}])})},Xn=[],Jn=x(Kn,Gn,Xn,!1,null,"7692fc78");const Yn=Jn.exports,Pe=Fi("nextcloud").persist().build(),Qn={name:"NcAppContent",components:{NcAppDetailsToggle:Yn,Pane:qn,Splitpanes:Hn},props:{allowSwipeNavigation:{type:Boolean,default:!0},listSize:{type:Number,default:20},listMinWidth:{type:Number,default:15},listMaxWidth:{type:Number,default:40},paneConfigKey:{type:String,default:""},showDetails:{type:Boolean,default:!0},pageHeading:{type:String,default:null},layout:{type:String,default:"vertical-split",validator(t){return["no-split","vertical-split","horizontal-split"].includes(t)}}},emits:["update:showDetails","resize:list"],setup(){return{isMobile:Nt()}},data(){return{contentHeight:0,hasList:!1,hasContent:!1,swiping:{},listPaneSize:this.restorePaneConfig()}},computed:{paneConfigID(){if(this.paneConfigKey!=="")return"pane-list-size-".concat(this.paneConfigKey);try{return"pane-list-size-".concat(Rt)}catch{return console.info("[INFO] AppContent:","falling back to global nextcloud pane config"),"pane-list-size-nextcloud"}},detailsPaneSize(){return this.listPaneSize?100-this.listPaneSize:this.paneDefaults.details.size},paneDefaults(){return{list:{size:this.listSize,min:this.listMinWidth,max:this.listMaxWidth},details:{size:100-this.listSize,min:100-this.listMaxWidth,max:100-this.listMinWidth}}}},updated(){this.checkSlots()},mounted(){this.allowSwipeNavigation&&(this.swiping=Ki(this.$el,{onSwipeEnd:this.handleSwipe})),this.checkSlots(),this.restorePaneConfig()},methods:{handleSwipe(t,e){Math.abs(this.swiping.lengthX)>70&&(this.swiping.coordsStart.x<300/2&&e==="right"?Y("toggle-navigation",{open:!0}):this.swiping.coordsStart.x<300*1.5&&e==="left"&&Y("toggle-navigation",{open:!1}))},handlePaneResize(t){const e=parseInt(t[0].size,10);Pe.setItem(this.paneConfigID,JSON.stringify(e)),this.listPaneSize=e,this.$emit("resize:list",{size:e}),console.debug("AppContent pane config",e)},checkSlots(){this.hasList=!!this.$scopedSlots.list,this.hasContent=!!this.$scopedSlots.default},restorePaneConfig(){const t=parseInt(Pe.getItem(this.paneConfigID),10);if(!isNaN(t)&&t!==this.listPaneSize)return console.debug("AppContent pane config",t),this.listPaneSize=t,t},hideDetails(){this.$emit("update:showDetails",!1)}}};var ts=function(){var t=this,e=t._self._c;return e("main",{staticClass:"app-content no-snapper",class:{"app-content--has-list":t.hasList},attrs:{id:"app-content-vue"}},[t.pageHeading?e("h1",{staticClass:"hidden-visually"},[t._v(" "+t._s(t.pageHeading)+" ")]):t._e(),t.hasList?[t.isMobile||t.layout==="no-split"?e("div",{staticClass:"app-content-wrapper app-content-wrapper--no-split",class:{"app-content-wrapper--show-details":t.showDetails,"app-content-wrapper--show-list":!t.showDetails,"app-content-wrapper--mobile":t.isMobile}},[t.showDetails?e("NcAppDetailsToggle",{nativeOn:{click:function(i){return i.stopPropagation(),i.preventDefault(),t.hideDetails.apply(null,arguments)}}}):t._e(),t.showDetails?t._t("default"):t._t("list")],2):t.layout==="vertical-split"||t.layout==="horizontal-split"?e("div",{staticClass:"app-content-wrapper"},[e("Splitpanes",{staticClass:"default-theme",class:{"splitpanes--horizontal":t.layout==="horizontal-split","splitpanes--vertical":t.layout==="vertical-split"},attrs:{horizontal:t.layout==="horizontal-split"},on:{resized:t.handlePaneResize}},[e("Pane",{staticClass:"splitpanes__pane-list",attrs:{size:t.listPaneSize||t.paneDefaults.list.size,"min-size":t.paneDefaults.list.min,"max-size":t.paneDefaults.list.max}},[t._t("list")],2),e("Pane",{staticClass:"splitpanes__pane-details",attrs:{size:t.detailsPaneSize,"min-size":t.paneDefaults.details.min,"max-size":t.paneDefaults.details.max}},[t._t("default")],2)],1)],1):t._e()]:t._e(),t.hasList?t._e():t._t("default")],2)},es=[],is=x(Qn,ts,es,!1,null,"de6986e3");const ns=is.exports;var Wt=Symbol(),Ct=Symbol(),Me=Symbol(),Ae=Symbol(),de=function(t){return"frag"in t},ss={get:function(){return this[Ct]||this.parentElement},configurable:!0},bt=function(t,e){Ct in t||(t[Ct]=e,Object.defineProperty(t,"parentNode",ss))},as={get:function(){var t=this.parentNode.childNodes,e=t.indexOf(this);return e>-1&&t[e+1]||null}},Tt=function(t){Me in t||(t[Me]=!0,Object.defineProperty(t,"nextSibling",as))},os=function(t,e){for(;t.parentNode!==e;){var i=t,n=i.parentNode;n&&(t=n)}return t},Yt,Qe=function(t){if(!Yt){var e=Object.getOwnPropertyDescriptor(Node.prototype,"childNodes");Yt=e.get}var i=Yt.apply(t),n=Array.from(i).map(function(s){return os(s,t)});return n.filter(function(s,a){return s!==n[a-1]})},rs={get:function(){return this.frag||Qe(this)}},ls={get:function(){return this.childNodes[0]||null}};function cs(){return this.childNodes.length>0}var Le=function(t){Ae in t||(t[Ae]=!0,Object.defineProperties(t,{childNodes:rs,firstChild:ls}),t.hasChildNodes=cs)};function us(){var t;(t=this.frag[0]).before.apply(t,arguments)}function ps(){var t=this.frag,e=t.splice(0,t.length);e.forEach(function(i){i.remove()})}var ds=function t(e){var i;return(i=Array.prototype).concat.apply(i,e.map(function(n){return de(n)?t(n.frag):n}))},hs=function(t,e){var i=t[Wt];e.before(i),bt(i,t),t.frag.unshift(i)};function Oe(t){if(de(this)){var e=this.frag.indexOf(t);if(e>-1){var i=this.frag.splice(e,1),n=i[0];this.frag.length===0&&hs(this,n),t.remove()}}else{var s=Qe(this),a=s.indexOf(t);a>-1&&t.remove()}return t}function Te(t,e){var i=this,n=t.frag||[t];if(de(this)){if(t[Ct]===this&&t.parentElement)return t;var s=this.frag;if(e){var a=s.indexOf(e);a>-1&&(s.splice.apply(s,[a,0].concat(n)),e.before.apply(e,n))}else{var o=s[s.length-1];s.push.apply(s,n),o.after.apply(o,n)}ti(this)}else e?this.childNodes.includes(e)&&e.before.apply(e,n):this.append.apply(this,n);n.forEach(function(l){bt(l,i)});var r=n[n.length-1];return Tt(r),t}function fs(t){if(t[Ct]===this&&t.parentElement)return t;var e=this.frag,i=e[e.length-1];return i.after(t),bt(t,this),ti(this),e.push(t),t}var ti=function(t){var e=t[Wt];t.frag[0]===e&&(t.frag.shift(),e.remove())},vs={set:function(t){var e=this;if(this.frag[0]!==this[Wt]&&this.frag.slice().forEach(function(n){return e.removeChild(n)}),t){var i=document.createElement("div");i.innerHTML=t,Array.from(i.childNodes).forEach(function(n){e.appendChild(n)})}},get:function(){return""}},gs={inserted:function(t){var e=t.parentNode,i=t.nextSibling,n=t.previousSibling,s=Array.from(t.childNodes),a=document.createComment("");s.length===0&&s.push(a),t.frag=s,t[Wt]=a;var o=document.createDocumentFragment();o.append.apply(o,ds(s)),t.replaceWith(o),s.forEach(function(r){bt(r,t),Tt(r)}),Le(t),Object.assign(t,{remove:ps,appendChild:fs,insertBefore:Te,removeChild:Oe,before:us}),Object.defineProperty(t,"innerHTML",vs),e&&(Object.assign(e,{removeChild:Oe,insertBefore:Te}),bt(t,e),Le(e)),i&&Tt(t),n&&Tt(n)},unbind:function(t){t.remove()}},ms={name:"Fragment",directives:{frag:gs},render:function(t){return t("div",{directives:[{name:"frag"}]},this.$slots.default)}};const ys=Ut({__name:"ActivityGroup",props:{activities:null},setup(t){const e=t,i=_t(()=>{const s=ht(),a=ht().subtract(1,"day"),o=ht(e.activities[0].datetime);return o.isSame(s,"day")?B("activity","Today"):o.isSame(a,"day")?B("activity","Yesterday"):o.format("LL")}),n=_t(()=>{const s=ht(e.activities[0].datetime).format("LL");return s!==i.value?s:void 0});return{__sfc:!0,props:e,dateText:i,fullDate:n,Activity:Ti,Fragment:ms}}});var _s=function(){var t=this,e=t._self._c,i=t._self._setupProxy;return e(i.Fragment,[e("h2",{staticClass:"activity-group__heading",attrs:{title:i.fullDate}},[t._v(" "+t._s(i.dateText)+" ")]),e("ul",t._l(t.activities,function(n){return e(i.Activity,{key:n.id,attrs:{activity:n,"show-previews":!0}})}),1)])},Cs=[],bs=Dt(ys,_s,Cs,!1,null,"c16e5a63");const xs=bs.exports,Ss='';function ws(t){const e=Object.create(null);for(const i of t.split(","))e[i]=1;return i=>i in e}const he={},$t=()=>{},ei=Object.assign,ks=Object.prototype.hasOwnProperty,se=(t,e)=>ks.call(t,e),M=Array.isArray,ft=t=>Zt(t)==="[object Map]",zs=t=>Zt(t)==="[object Set]",V=t=>typeof t=="function",Ns=t=>typeof t=="string",Et=t=>typeof t=="symbol",ct=t=>t!==null&&typeof t=="object",Ds=t=>(ct(t)||V(t))&&V(t.then)&&V(t.catch),Es=Object.prototype.toString,Zt=t=>Es.call(t),Ps=t=>Zt(t).slice(8,-1),Ms=t=>Zt(t)==="[object Object]",fe=t=>Ns(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,Z=(t,e)=>!Object.is(t,e);let $e;const ae=()=>$e||($e=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof ze<"u"?ze:{});let y;const Qt=new WeakSet;class As{constructor(e){this.fn=e,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Qt.has(this)&&(Qt.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||ni(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,Ie(this),si(this);const e=y,i=A;y=this,A=!0;try{return this.fn()}finally{ai(this),y=e,A=i,this.flags&=-3}}stop(){if(this.flags&1){for(let e=this.deps;e;e=e.nextDep)me(e);this.deps=this.depsTail=void 0,Ie(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Qt.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){oe(this)&&this.run()}get dirty(){return oe(this)}}let ii=0,vt,gt;function ni(t,e=!1){if(t.flags|=8,e){t.next=gt,gt=t;return}t.next=vt,vt=t}function ve(){ii++}function ge(){if(--ii>0)return;if(gt){let e=gt;for(gt=void 0;e;){const i=e.next;e.next=void 0,e.flags&=-9,e=i}}let t;for(;vt;){let e=vt;for(vt=void 0;e;){const i=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(n){t||(t=n)}e=i}}if(t)throw t}function si(t){for(let e=t.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function ai(t){let e,i=t.depsTail,n=i;for(;n;){const s=n.prevDep;n.version===-1?(n===i&&(i=s),me(n),Ls(n)):e=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=s}t.deps=e,t.depsTail=i}function oe(t){for(let e=t.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&(oi(e.dep.computed)||e.dep.version!==e.version))return!0;return!!t._dirty}function oi(t){if(t.flags&4&&!(t.flags&16)||(t.flags&=-17,t.globalVersion===xt))return;t.globalVersion=xt;const e=t.dep;if(t.flags|=2,e.version>0&&!t.isSSR&&t.deps&&!oe(t)){t.flags&=-3;return}const i=y,n=A;y=t,A=!0;try{si(t);const s=t.fn(t._value);(e.version===0||Z(s,t._value))&&(t._value=s,e.version++)}catch(s){throw e.version++,s}finally{y=i,A=n,ai(t),t.flags&=-3}}function me(t,e=!1){const{dep:i,prevSub:n,nextSub:s}=t;if(n&&(n.nextSub=s,t.prevSub=void 0),s&&(s.prevSub=n,t.nextSub=void 0),i.subs===t&&(i.subs=n,!n&&i.computed)){i.computed.flags&=-5;for(let a=i.computed.deps;a;a=a.nextDep)me(a,!0)}!e&&!--i.sc&&i.map&&i.map.delete(i.key)}function Ls(t){const{prevDep:e,nextDep:i}=t;e&&(e.nextDep=i,t.prevDep=void 0),i&&(i.prevDep=e,t.nextDep=void 0)}let A=!0;const ri=[];function qt(){ri.push(A),A=!1}function Kt(){const t=ri.pop();A=t===void 0?!0:t}function Ie(t){const{cleanup:e}=t;if(t.cleanup=void 0,e){const i=y;y=void 0;try{e()}finally{y=i}}}let xt=0;class Os{constructor(e,i){this.sub=e,this.dep=i,this.version=i.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ye{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(e){if(!y||!A||y===this.computed)return;let i=this.activeLink;if(i===void 0||i.sub!==y)i=this.activeLink=new Os(y,this),y.deps?(i.prevDep=y.depsTail,y.depsTail.nextDep=i,y.depsTail=i):y.deps=y.depsTail=i,li(i);else if(i.version===-1&&(i.version=this.version,i.nextDep)){const n=i.nextDep;n.prevDep=i.prevDep,i.prevDep&&(i.prevDep.nextDep=n),i.prevDep=y.depsTail,i.nextDep=void 0,y.depsTail.nextDep=i,y.depsTail=i,y.deps===i&&(y.deps=n)}return i}trigger(e){this.version++,xt++,this.notify(e)}notify(e){ve();try{for(let i=this.subs;i;i=i.prevSub)i.sub.notify()&&i.sub.dep.notify()}finally{ge()}}}function li(t){if(t.dep.sc++,t.sub.flags&4){const e=t.dep.computed;if(e&&!t.dep.subs){e.flags|=20;for(let n=e.deps;n;n=n.nextDep)li(n)}const i=t.dep.subs;i!==t&&(t.prevSub=i,i&&(i.nextSub=t)),t.dep.subs=t}}const re=new WeakMap,Q=Symbol(""),le=Symbol(""),St=Symbol("");function z(t,e,i){if(A&&y){let n=re.get(t);n||re.set(t,n=new Map);let s=n.get(i);s||(n.set(i,s=new ye),s.map=n,s.key=i),s.track()}}function U(t,e,i,n,s,a){const o=re.get(t);if(!o){xt++;return}const r=l=>{l&&l.trigger()};if(ve(),e==="clear")o.forEach(r);else{const l=M(t),p=l&&fe(i);if(l&&i==="length"){const c=Number(n);o.forEach((u,d)=>{(d==="length"||d===St||!Et(d)&&d>=c)&&r(u)})}else switch((i!==void 0||o.has(void 0))&&r(o.get(i)),p&&r(o.get(St)),e){case"add":l?p&&r(o.get("length")):(r(o.get(Q)),ft(t)&&r(o.get(le)));break;case"delete":l||(r(o.get(Q)),ft(t)&&r(o.get(le)));break;case"set":ft(t)&&r(o.get(Q));break}}ge()}function st(t){const e=m(t);return e===t?e:(z(e,"iterate",St),L(t)?e:e.map(k))}function _e(t){return z(t=m(t),"iterate",St),t}const Ts={__proto__:null,[Symbol.iterator](){return te(this,Symbol.iterator,k)},concat(...t){return st(this).concat(...t.map(e=>M(e)?st(e):e))},entries(){return te(this,"entries",t=>(t[1]=k(t[1]),t))},every(t,e){return $(this,"every",t,e,void 0,arguments)},filter(t,e){return $(this,"filter",t,e,i=>i.map(k),arguments)},find(t,e){return $(this,"find",t,e,k,arguments)},findIndex(t,e){return $(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return $(this,"findLast",t,e,k,arguments)},findLastIndex(t,e){return $(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return $(this,"forEach",t,e,void 0,arguments)},includes(...t){return ee(this,"includes",t)},indexOf(...t){return ee(this,"indexOf",t)},join(t){return st(this).join(t)},lastIndexOf(...t){return ee(this,"lastIndexOf",t)},map(t,e){return $(this,"map",t,e,void 0,arguments)},pop(){return dt(this,"pop")},push(...t){return dt(this,"push",t)},reduce(t,...e){return Be(this,"reduce",t,e)},reduceRight(t,...e){return Be(this,"reduceRight",t,e)},shift(){return dt(this,"shift")},some(t,e){return $(this,"some",t,e,void 0,arguments)},splice(...t){return dt(this,"splice",t)},toReversed(){return st(this).toReversed()},toSorted(t){return st(this).toSorted(t)},toSpliced(...t){return st(this).toSpliced(...t)},unshift(...t){return dt(this,"unshift",t)},values(){return te(this,"values",k)}};function te(t,e,i){const n=_e(t),s=n[e]();return n!==t&&!L(t)&&(s._next=s.next,s.next=()=>{const a=s._next();return a.value&&(a.value=i(a.value)),a}),s}const $s=Array.prototype;function $(t,e,i,n,s,a){const o=_e(t),r=o!==t&&!L(t),l=o[e];if(l!==$s[e]){const u=l.apply(t,a);return r?k(u):u}let p=i;o!==t&&(r?p=function(u,d){return i.call(this,k(u),d,t)}:i.length>2&&(p=function(u,d){return i.call(this,u,d,t)}));const c=l.call(o,p,n);return r&&s?s(c):c}function Be(t,e,i,n){const s=_e(t);let a=i;return s!==t&&(L(t)?i.length>3&&(a=function(o,r,l){return i.call(this,o,r,l,t)}):a=function(o,r,l){return i.call(this,o,k(r),l,t)}),s[e](a,...n)}function ee(t,e,i){const n=m(t);z(n,"iterate",St);const s=n[e](...i);return(s===-1||s===!1)&&Js(i[0])?(i[0]=m(i[0]),n[e](...i)):s}function dt(t,e,i=[]){qt(),ve();const n=m(t)[e].apply(t,i);return ge(),Kt(),n}const Is=ws("__proto__,__v_isRef,__isVue"),ci=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(Et));function Bs(t){Et(t)||(t=String(t));const e=m(this);return z(e,"has",t),e.hasOwnProperty(t)}class ui{constructor(e=!1,i=!1){this._isReadonly=e,this._isShallow=i}get(e,i,n){if(i==="__v_skip")return e.__v_skip;const s=this._isReadonly,a=this._isShallow;if(i==="__v_isReactive")return!s;if(i==="__v_isReadonly")return s;if(i==="__v_isShallow")return a;if(i==="__v_raw")return n===(s?a?Ks:hi:a?qs:di).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const o=M(e);if(!s){let l;if(o&&(l=Ts[i]))return l;if(i==="hasOwnProperty")return Bs}const r=Reflect.get(e,i,O(e)?e:n);return(Et(i)?ci.has(i):Is(i))||(s||z(e,"get",i),a)?r:O(r)?o&&fe(i)?r:r.value:ct(r)?s?fi(r):wt(r):r}}class Rs extends ui{constructor(e=!1){super(!1,e)}set(e,i,n,s){let a=e[i];if(!this._isShallow){const l=tt(a);if(!L(n)&&!tt(n)&&(a=m(a),n=m(n)),!M(e)&&O(a)&&!O(n))return l?!1:(a.value=n,!0)}const o=M(e)&&fe(i)?Number(i)t,Mt=t=>Reflect.getPrototypeOf(t);function Fs(t,e,i){return function(...n){const s=this.__v_raw,a=m(s),o=ft(a),r=t==="entries"||t===Symbol.iterator&&o,l=t==="keys"&&o,p=s[t](...n),c=i?ce:e?ue:k;return!e&&z(a,"iterate",l?le:Q),{next(){const{value:u,done:d}=p.next();return d?{value:u,done:d}:{value:r?[c(u[0]),c(u[1])]:c(u),done:d}},[Symbol.iterator](){return this}}}}function At(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function Us(t,e){const i={get(n){const s=this.__v_raw,a=m(s),o=m(n);t||(Z(n,o)&&z(a,"get",n),z(a,"get",o));const{has:r}=Mt(a),l=e?ce:t?ue:k;if(r.call(a,n))return l(s.get(n));if(r.call(a,o))return l(s.get(o));s!==a&&s.get(n)},get size(){const n=this.__v_raw;return!t&&z(m(n),"iterate",Q),Reflect.get(n,"size",n)},has(n){const s=this.__v_raw,a=m(s),o=m(n);return t||(Z(n,o)&&z(a,"has",n),z(a,"has",o)),n===o?s.has(n):s.has(n)||s.has(o)},forEach(n,s){const a=this,o=a.__v_raw,r=m(o),l=e?ce:t?ue:k;return!t&&z(r,"iterate",Q),o.forEach((p,c)=>n.call(s,l(p),l(c),a))}};return ei(i,t?{add:At("add"),set:At("set"),delete:At("delete"),clear:At("clear")}:{add(n){!e&&!L(n)&&!tt(n)&&(n=m(n));const s=m(this);return Mt(s).has.call(s,n)||(s.add(n),U(s,"add",n,n)),this},set(n,s){!e&&!L(s)&&!tt(s)&&(s=m(s));const a=m(this),{has:o,get:r}=Mt(a);let l=o.call(a,n);l||(n=m(n),l=o.call(a,n));const p=r.call(a,n);return a.set(n,s),l?Z(s,p)&&U(a,"set",n,s):U(a,"add",n,s),this},delete(n){const s=m(this),{has:a,get:o}=Mt(s);let r=a.call(s,n);r||(n=m(n),r=a.call(s,n)),o&&o.call(s,n);const l=s.delete(n);return r&&U(s,"delete",n,void 0),l},clear(){const n=m(this),s=n.size!==0,a=n.clear();return s&&U(n,"clear",void 0,void 0),a}}),["keys","values","entries",Symbol.iterator].forEach(n=>{i[n]=Fs(n,t,e)}),i}function pi(t,e){const i=Us(t,e);return(n,s,a)=>s==="__v_isReactive"?!t:s==="__v_isReadonly"?t:s==="__v_raw"?n:Reflect.get(se(i,s)&&s in n?i:n,s,a)}const Ws={get:pi(!1,!1)},Zs={get:pi(!0,!1)},di=new WeakMap,qs=new WeakMap,hi=new WeakMap,Ks=new WeakMap;function Gs(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Xs(t){return t.__v_skip||!Object.isExtensible(t)?0:Gs(Ps(t))}function wt(t){return tt(t)?t:vi(t,!1,Hs,Ws,di)}function fi(t){return vi(t,!0,js,Zs,hi)}function vi(t,e,i,n,s){if(!ct(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const a=s.get(t);if(a)return a;const o=Xs(t);if(o===0)return t;const r=new Proxy(t,o===2?n:i);return s.set(t,r),r}function It(t){return tt(t)?It(t.__v_raw):!!(t&&t.__v_isReactive)}function tt(t){return!!(t&&t.__v_isReadonly)}function L(t){return!!(t&&t.__v_isShallow)}function Js(t){return t?!!t.__v_raw:!1}function m(t){const e=t&&t.__v_raw;return e?m(e):t}const k=t=>ct(t)?wt(t):t,ue=t=>ct(t)?fi(t):t;function O(t){return t?t.__v_isRef===!0:!1}function gi(t){return mi(t,!1)}function mt(t){return mi(t,!0)}function mi(t,e){return O(t)?t:new Ys(t,e)}class Ys{constructor(e,i){this.dep=new ye,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=i?e:m(e),this._value=i?e:k(e),this.__v_isShallow=i}get value(){return this.dep.track(),this._value}set value(e){const i=this._rawValue,n=this.__v_isShallow||L(e)||tt(e);e=n?e:m(e),Z(e,i)&&(this._rawValue=e,this._value=n?e:k(e),this.dep.trigger())}}function yi(t){return O(t)?t.value:t}function w(t){return V(t)?t():yi(t)}class Qs{constructor(e,i,n){this.fn=e,this.setter=i,this._value=void 0,this.dep=new ye(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=xt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!i,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&y!==this)return ni(this,!0),!0}get value(){const e=this.dep.track();return oi(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function ta(t,e,i=!1){let n,s;return V(t)?n=t:(n=t.get,s=t.set),new Qs(n,s,i)}const Lt={},Ht=new WeakMap;let J;function ea(t,e=!1,i=J){if(i){let n=Ht.get(i);n||Ht.set(i,n=[]),n.push(t)}}function ia(t,e,i=he){const{immediate:n,deep:s,once:a,scheduler:o,augmentJob:r,call:l}=i,p=f=>s?f:L(f)||s===!1||s===0?W(f,1):W(f);let c,u,d,h,g=!1,_=!1;if(O(t)?(u=()=>t.value,g=L(t)):It(t)?(u=()=>p(t),g=!0):M(t)?(_=!0,g=t.some(f=>It(f)||L(f)),u=()=>t.map(f=>{if(O(f))return f.value;if(It(f))return p(f);if(V(f))return l?l(f,2):f()})):V(t)?e?u=l?()=>l(t,2):t:u=()=>{if(d){qt();try{d()}finally{Kt()}}const f=J;J=c;try{return l?l(t,3,[h]):t(h)}finally{J=f}}:u=$t,e&&s){const f=u,D=s===!0?1/0:s;u=()=>W(f(),D)}const C=()=>{c.stop()};if(a&&e){const f=e;e=(...D)=>{f(...D),C()}}let b=_?new Array(t.length).fill(Lt):Lt;const S=f=>{if(!(!(c.flags&1)||!c.dirty&&!f))if(e){const D=c.run();if(s||g||(_?D.some((q,K)=>Z(q,b[K])):Z(D,b))){d&&d();const q=J;J=c;try{const K=[D,b===Lt?void 0:_&&b[0]===Lt?[]:b,h];l?l(e,3,K):e(...K),b=D}finally{J=q}}}else c.run()};return r&&r(S),c=new As(u),c.scheduler=o?()=>o(S,!1):S,h=f=>ea(f,!1,c),d=c.onStop=()=>{const f=Ht.get(c);if(f){if(l)l(f,4);else for(const D of f)D();Ht.delete(c)}},e?n?S(!0):b=c.run():o?o(S.bind(null,!0),!0):c.run(),C.pause=c.pause.bind(c),C.resume=c.resume.bind(c),C.stop=C,C}function W(t,e=1/0,i){if(e<=0||!ct(t)||t.__v_skip||(i=i||new Set,i.has(t)))return t;if(i.add(t),e--,O(t))W(t.value,e,i);else if(M(t))for(let n=0;n{W(n,e,i)});else if(Ms(t)){for(const n in t)W(t[n],e,i);for(const n of Object.getOwnPropertySymbols(t))Object.prototype.propertyIsEnumerable.call(t,n)&&W(t[n],e,i)}return t}function Ce(t,e,i,n){try{return n?t(...n):t()}catch(s){_i(s,e,i)}}function be(t,e,i,n){if(V(t)){const s=Ce(t,e,i,n);return s&&Ds(s)&&s.catch(a=>{_i(a,e,i)}),s}if(M(t)){const s=[];for(let a=0;a>>1,s=P[n],a=kt(s);a=kt(i)?P.push(t):P.splice(sa(e),0,t),t.flags|=1,bi()}}function bi(){jt||(jt=Ci.then(xi))}function oa(t){M(t)?rt.push(...t):F&&t.id===-1?F.splice(ot+1,0,t):t.flags&1||(rt.push(t),t.flags|=1),bi()}function ra(t){if(rt.length){const e=[...new Set(rt)].sort((i,n)=>kt(i)-kt(n));if(rt.length=0,F){F.push(...e);return}for(F=e,ot=0;ott.id==null?t.flags&2?-1:1/0:t.id;function xi(t){try{for(I=0;I{qt();const r=ma(i),l=be(e,i,t,o);return r(),Kt(),l});return n?s.unshift(a):s.push(a),a}}const wi=t=>(e,i=nt)=>{(!zt||t==="sp")&&la(t,(...n)=>e(...n),i)},ki=wi("m"),ca=wi("um");let ua=null;function pa(t,e,i=!1){const n=nt||Si;if(n||ua){const s=n?n.parent==null?n.vnode.appContext&&n.vnode.appContext.provides:n.parent.provides:void 0;if(s&&t in s)return s[t];if(arguments.length>1)return i&&V(e)?e.call(n&&n.proxy):e}}const da=ga,ha=Symbol.for("v-scx"),fa=()=>pa(ha);function Gt(t,e,i){return va(t,e,i)}function va(t,e,i=he){const{immediate:n,deep:s,flush:a,once:o}=i,r=ei({},i),l=e&&n||!e&&a!=="post";let p;if(zt){if(a==="sync"){const h=fa();p=h.__watcherHandles||(h.__watcherHandles=[])}else if(!l){const h=()=>{};return h.stop=$t,h.resume=$t,h.pause=$t,h}}const c=nt;r.call=(h,g,_)=>be(h,c,g,_);let u=!1;a==="post"?r.scheduler=h=>{da(h,c&&c.suspense)}:a!=="sync"&&(u=!0,r.scheduler=(h,g)=>{g?h():aa(h)}),r.augmentJob=h=>{e&&(h.flags|=4),u&&(h.flags|=2,c&&(h.id=c.uid,h.i=c))};const d=ia(t,e,r);return zt&&(p?p.push(d):l&&d()),d}function ga(t,e){e&&e.pendingBranch?M(t)?e.effects.push(...t):e.effects.push(t):oa(t)}let nt=null;const zi=()=>nt||Si;let pe;{const t=ae(),e=(i,n)=>{let s;return(s=t[i])||(s=t[i]=[]),s.push(n),a=>{s.length>1?s.forEach(o=>o(a)):s[0](a)}};pe=e("__VUE_INSTANCE_SETTERS__",i=>nt=i),e("__VUE_SSR_SETTERS__",i=>zt=i)}const ma=t=>{const e=nt;return pe(t),t.scope.on(),()=>{t.scope.off(),pe(e)}};let zt=!1;const et=(t,e)=>ta(t,e,zt),ya=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const _a=t=>t!=null,Ca=Object.prototype.toString,ba=t=>Ca.call(t)==="[object Object]",H=()=>{};function Ni(t,e){function i(...n){return new Promise((s,a)=>{Promise.resolve(t(()=>e.apply(this,n),{fn:e,thisArg:this,args:n})).then(s).catch(a)})}return i}function xa(t,e={}){let i,n,s=H;const a=r=>{clearTimeout(r),s(),s=H};let o;return r=>{const l=w(t),p=w(e.maxWait);return i&&a(i),l<=0||p!==void 0&&p<=0?(n&&(a(n),n=null),Promise.resolve(r())):new Promise((c,u)=>{s=e.rejectOnCancel?u:c,o=r,p&&!n&&(n=setTimeout(()=>{i&&a(i),n=null,c(o())},p)),i=setTimeout(()=>{n&&a(n),n=null,c(r())},l)})}}function Sa(...t){let e=0,i,n=!0,s=H,a,o,r,l,p;!O(t[0])&&typeof t[0]=="object"?{delay:o,trailing:r=!0,leading:l=!0,rejectOnCancel:p=!1}=t[0]:[o,r=!0,l=!0,p=!1]=t;const c=()=>{i&&(clearTimeout(i),i=void 0,s(),s=H)};return u=>{const d=w(o),h=Date.now()-e,g=()=>a=u();return c(),d<=0?(e=Date.now(),g()):(h>d&&(l||!n)?(e=Date.now(),g()):r&&(a=new Promise((_,C)=>{s=p?C:_,i=setTimeout(()=>{e=Date.now(),n=!0,_(g()),c()},Math.max(0,d-h))})),!l&&!i&&(i=setTimeout(()=>n=!0,d)),n=!1,a)}}function Di(t){return zi()}function Bt(t){return Array.isArray(t)?t:[t]}function wa(t,e=200,i={}){return Ni(xa(e,i),t)}function ka(t,e=200,i=!1,n=!0,s=!1){return Ni(Sa(e,i,n,s),t)}function za(t,e=!0,i){Di()?ki(t,i):e?t():Ft(t)}function Na(t,e){Di()&&ca(t,e)}function Da(t,e,i){return Gt(t,e,{...i,immediate:!0})}function Ea(t,e,i){const n=Gt(t,(...s)=>(Ft(()=>n()),e(...s)),i);return n}const Xt=ya?window:void 0;function yt(t){var e;const i=w(t);return(e=i==null?void 0:i.$el)!=null?e:i}function Re(...t){const e=[],i=()=>{e.forEach(o=>o()),e.length=0},n=(o,r,l,p)=>(o.addEventListener(r,l,p),()=>o.removeEventListener(r,l,p)),s=et(()=>{const o=Bt(w(t[0])).filter(r=>r!=null);return o.every(r=>typeof r!="string")?o:void 0}),a=Da(()=>{var o,r;return[(r=(o=s.value)==null?void 0:o.map(l=>yt(l)))!=null?r:[Xt].filter(l=>l!=null),Bt(w(s.value?t[1]:t[0])),Bt(yi(s.value?t[2]:t[1])),w(s.value?t[3]:t[2])]},([o,r,l,p])=>{if(i(),!(o!=null&&o.length)||!(r!=null&&r.length)||!(l!=null&&l.length))return;const c=ba(p)?{...p}:p;e.push(...o.flatMap(u=>r.flatMap(d=>l.map(h=>n(u,d,h,c)))))},{flush:"post"});return()=>{a(),i()}}function Pa(){const t=mt(!1),e=zi();return e&&ki(()=>{t.value=!0},e),t}function Ma(t){const e=Pa();return et(()=>(e.value,!!t()))}function Aa(t,e,i={}){const{root:n,rootMargin:s="0px",threshold:a=0,window:o=Xt,immediate:r=!0}=i,l=Ma(()=>o&&"IntersectionObserver"in o),p=et(()=>{const h=w(t);return Bt(h).map(yt).filter(_a)});let c=H;const u=gi(r),d=l.value?Gt(()=>[p.value,yt(n),u.value],([h,g])=>{if(c(),!u.value||!h.length)return;const _=new IntersectionObserver(e,{root:yt(g),rootMargin:s,threshold:a});h.forEach(C=>C&&_.observe(C)),c=()=>{_.disconnect(),c=H}},{immediate:r,flush:"post"}):H;return{isSupported:l,isActive:u,pause(){c(),u.value=!1},resume(){u.value=!0},stop:()=>{c(),d(),u.value=!1}}}function La(t,e={}){const{window:i=Xt,scrollTarget:n,threshold:s=0,rootMargin:a,once:o=!1}=e,r=mt(!1),{stop:l}=Aa(t,p=>{let c=r.value,u=0;for(const d of p)d.time>=u&&(u=d.time,c=d.isIntersecting);r.value=c,o&&Ea(r,()=>{l()})},{root:n,window:i,threshold:s,rootMargin:w(a)});return r}function Oa(t){return typeof Window<"u"&&t instanceof Window?t.document.documentElement:typeof Document<"u"&&t instanceof Document?t.documentElement:t}const Ve=1;function Ta(t,e={}){const{throttle:i=0,idle:n=200,onStop:s=H,onScroll:a=H,offset:o={left:0,right:0,top:0,bottom:0},eventListenerOptions:r={capture:!1,passive:!0},behavior:l="auto",window:p=Xt,onError:c=v=>{console.error(v)}}=e,u=mt(0),d=mt(0),h=et({get(){return u.value},set(v){_(v,void 0)}}),g=et({get(){return d.value},set(v){_(void 0,v)}});function _(v,G){var E,ut,pt,Pt;if(!p)return;const N=w(t);if(!N)return;(pt=N instanceof Document?p.document.body:N)==null||pt.scrollTo({top:(E=w(G))!=null?E:g.value,left:(ut=w(v))!=null?ut:h.value,behavior:w(l)});const j=((Pt=N==null?void 0:N.document)==null?void 0:Pt.documentElement)||(N==null?void 0:N.documentElement)||N;h!=null&&(u.value=j.scrollLeft),g!=null&&(d.value=j.scrollTop)}const C=mt(!1),b=wt({left:!0,right:!1,top:!0,bottom:!1}),S=wt({left:!1,right:!1,top:!1,bottom:!1}),f=v=>{C.value&&(C.value=!1,S.left=!1,S.right=!1,S.top=!1,S.bottom=!1,s(v))},D=wa(f,i+n),q=v=>{var G;if(!p)return;const E=((G=v==null?void 0:v.document)==null?void 0:G.documentElement)||(v==null?void 0:v.documentElement)||yt(v),{display:ut,flexDirection:pt,direction:Pt}=getComputedStyle(E),N=Pt==="rtl"?-1:1,j=E.scrollLeft;S.left=ju.value;const xe=j*N<=(o.left||0),Se=j*N+E.clientWidth>=E.scrollWidth-(o.right||0)-Ve;ut==="flex"&&pt==="row-reverse"?(b.left=Se,b.right=xe):(b.left=xe,b.right=Se),u.value=j;let X=E.scrollTop;v===p.document&&!X&&(X=p.document.body.scrollTop),S.top=Xd.value;const we=X<=(o.top||0),ke=X+E.clientHeight>=E.scrollHeight-(o.bottom||0)-Ve;ut==="flex"&&pt==="column-reverse"?(b.top=ke,b.bottom=we):(b.top=we,b.bottom=ke),d.value=X},K=v=>{var G;if(!p)return;const E=(G=v.target.documentElement)!=null?G:v.target;q(E),C.value=!0,D(v),a(v)};return Re(t,"scroll",i?ka(K,i,!0,!1):K,r),za(()=>{try{const v=w(t);if(!v)return;q(v)}catch(v){c(v)}}),Re(t,"scrollend",f,r),{x:h,y:g,isScrolling:C,arrivedState:b,directions:S,measure(){const v=w(t);p&&v&&q(v)}}}function $a(t,e,i={}){var n;const{direction:s="bottom",interval:a=100,canLoadMore:o=()=>!0}=i,r=wt(Ta(t,{...i,offset:{[s]:(n=i.distance)!=null?n:0,...i.offset}})),l=gi(),p=et(()=>!!l.value),c=et(()=>Oa(w(t))),u=La(c);function d(){if(r.measure(),!c.value||!u.value||!o(c.value))return;const{scrollHeight:g,clientHeight:_,scrollWidth:C,clientWidth:b}=c.value,S=s==="bottom"||s==="top"?g<=_:C<=b;(r.arrivedState[s]||S)&&(l.value||(l.value=Promise.all([e(r),new Promise(f=>setTimeout(f,a))]).finally(()=>{l.value=null,Ft(()=>d())})))}const h=Gt(()=>[r.arrivedState[s],u.value],d,{immediate:!0});return Na(h),{isLoading:p,reset(){Ft(()=>d())}}}function Ia(){var t=Ei().proxy.$root;if(!t._$route){var e=Pi(!0).run(function(){return Mi(Object.assign({},t.$router.currentRoute))});t._$route=e,t.$router.afterEach(function(i){Object.assign(e,i)})}return t._$route}const Ba=Ut({__name:"ActivityAppFeed",props:{filter:{default:"all"}},setup(t){const e=t,i=ne(Rt,"navigationList"),n=Ia(),s=at(!1),a=at(!0),o=at([]),r=at(),l=at();$a(l,async()=>{a.value&&await u()},{distance:100});const p=_t(()=>{const d={};for(const h of o.value){const g=ht(h.datetime).format("LL");d[g]===void 0?d[g]=[h]:d[g].push(h)}return d}),c=_t(()=>i.find(d=>d.id===n.params.filter).name);async function u(){var d,h;if(!s.value)try{const g=(d=r.value)!=null?d:"0";s.value=!0;const _=await We.get(Xi("apps/activity/api/v2/activity/{filter}?format=json&previews=true&since={since}",{filter:e.filter,since:g}));o.value.push(..._.data.ocs.data.map(C=>new Ii(C))),r.value=_.headers["x-activity-last-given"],a.value=!0}catch(g){if(Ji.isAxiosError(g)&&((h=g.response)==null?void 0:h.status)===304){a.value=!1;return}ie.error(g),qe(B("activity","Could not load activities"))}finally{s.value=!1}}return Ai(()=>{u()}),Li(e,()=>{o.value=[],r.value=void 0,u()}),{__sfc:!0,navigationList:i,route:n,props:e,loading:s,hasMoreActivites:a,allActivities:o,lastActivityLoaded:r,container:l,groupedActivities:p,headingTitle:c,loadActivities:u,NcAppContent:ns,NcIconSvgWrapper:He,NcEmptyContent:$i,NcLoadingIcon:Ue,ActivityGroup:xs,appIconSVG:Ss,t:B}}});var Ra=function(){var t=this,e=t._self._c,i=t._self._setupProxy;return e(i.NcAppContent,{staticClass:"activity-app"},[e("h1",{staticClass:"activity-app__heading"},[t._v(" "+t._s(i.headingTitle)+" ")]),i.hasMoreActivites&&i.allActivities.length===0?e(i.NcEmptyContent,{staticClass:"activity-app__empty-content",attrs:{name:i.t("activity","Loading activities"),description:i.t("activity","This stream will show events like additions, changes & shares")},scopedSlots:t._u([{key:"icon",fn:function(){return[e(i.NcLoadingIcon,{attrs:{size:36}})]},proxy:!0}],null,!1,3043861167)}):i.allActivities.length===0?e(i.NcEmptyContent,{staticClass:"activity-app__empty-content",attrs:{name:i.t("activity","No activity yet"),description:i.t("activity","This stream will show events like additions, changes & shares")},scopedSlots:t._u([{key:"icon",fn:function(){return[e(i.NcIconSvgWrapper,{attrs:{svg:i.appIconSVG,size:36}})]},proxy:!0}])}):t._e(),e("div",{ref:"container",staticClass:"activity-app__container"},[t._l(i.groupedActivities,function(n,s){return e(i.ActivityGroup,{key:s,attrs:{activities:n}})}),i.hasMoreActivites&&i.allActivities.length>0?e(i.NcLoadingIcon,{staticClass:"activity-app__loading-indicator",attrs:{name:i.t("activity","Loading more activities"),size:64}}):!i.hasMoreActivites&&i.allActivities.length>0?e("div",{staticClass:"activity-app__loading-indicator"},[t._v(" "+t._s(i.t("activity","No more activities."))+" ")]):t._e()],2)],1)},Va=[],Ha=Dt(Ba,Ra,Va,!1,null,"6798da20");const ja=Ha.exports,Fa={name:"NcAppNavigationList"};var Ua=function(){var t=this,e=t._self._c;return e("ul",{staticClass:"app-navigation-list"},[t._t("default")],2)},Wa=[],Za=x(Fa,Ua,Wa,!1,null,"058e6060");const qa=Za.exports;it(Yi);const Ka={name:"MenuIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Ga=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon menu-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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:"M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},Xa=[],Ja=x(Ka,Ga,Xa,!1,null,null);const Ya=Ja.exports,Qa={name:"MenuOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var to=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon menu-open-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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:"M21,15.61L19.59,17L14.58,12L19.59,7L21,8.39L17.44,12L21,15.61M3,6H16V8H3V6M3,13V11H13V13H3M3,18V16H16V18H3Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},eo=[],io=x(Qa,to,eo,!1,null,null);const no=io.exports,so={name:"NcAppNavigationToggle",components:{NcButton:lt,MenuIcon:Ya,MenuOpenIcon:no},props:{open:{type:Boolean,required:!0}},emits:["update:open"],computed:{label(){return this.open?T("Close navigation"):T("Open navigation")}},methods:{toggleNavigation(){this.$emit("update:open",!this.open)}}};var ao=function(){var t=this,e=t._self._c;return e("div",{staticClass:"app-navigation-toggle-wrapper"},[e("NcButton",{staticClass:"app-navigation-toggle",attrs:{type:"tertiary","aria-expanded":t.open?"true":"false","aria-label":t.label,title:t.label,"aria-controls":"app-navigation-vue"},on:{click:t.toggleNavigation},scopedSlots:t._u([{key:"icon",fn:function(){return[t.open?e("MenuOpenIcon",{attrs:{size:20}}):e("MenuIcon",{attrs:{size:20}})]},proxy:!0}])})],1)},oo=[],ro=x(so,ao,oo,!1,null,"b6024aba");const lo=ro.exports,co={name:"NcAppNavigation",components:{NcAppNavigationList:qa,NcAppNavigationToggle:lo},inject:{setHasAppNavigation:{default:()=>()=>R.util.warn("NcAppNavigation is not mounted inside NcContent, this is probably an error."),from:"NcContent:setHasAppNavigation"}},props:{ariaLabel:{type:String,default:""},ariaLabelledby:{type:String,default:""}},setup(){return{isMobile:Nt()}},data(){return{open:!this.isMobile,focusTrap:null}},watch:{isMobile(){this.open=!this.isMobile,this.toggleFocusTrap()},open(){this.toggleFocusTrap()}},mounted(){this.setHasAppNavigation(!0),Ui("toggle-navigation",this.toggleNavigationByEventBus),Y("navigation-toggled",{open:this.open}),this.focusTrap=Qi(this.$refs.appNavigationContainer,{allowOutsideClick:!0,fallbackFocus:this.$refs.appNavigationContainer,trapStack:tn(),escapeDeactivates:!1}),this.toggleFocusTrap()},unmounted(){this.setHasAppNavigation(!1),Wi("toggle-navigation",this.toggleNavigationByEventBus),this.focusTrap.deactivate()},methods:{toggleNavigation(t){if(this.open===t){Y("navigation-toggled",{open:this.open});return}this.open=typeof t>"u"?!this.open:t;const e=getComputedStyle(document.body),i=parseInt(e.getPropertyValue("--animation-quick"))||100;setTimeout(()=>{Y("navigation-toggled",{open:this.open})},1.5*i)},toggleNavigationByEventBus({open:t}){this.toggleNavigation(t)},toggleFocusTrap(){this.isMobile&&this.open?this.focusTrap.activate():this.focusTrap.deactivate()},handleEsc(){this.isMobile&&this.toggleNavigation(!1)}}};var uo=function(){var t=this,e=t._self._c;return e("div",{ref:"appNavigationContainer",staticClass:"app-navigation",class:{"app-navigation--close":!t.open}},[e("nav",{staticClass:"app-navigation__content",attrs:{id:"app-navigation-vue","aria-hidden":t.open?"false":"true","aria-label":t.ariaLabel||void 0,"aria-labelledby":t.ariaLabelledby||void 0,inert:!t.open||void 0},on:{keydown:function(i){return!i.type.indexOf("key")&&t._k(i.keyCode,"esc",27,i.key,["Esc","Escape"])?null:t.handleEsc.apply(null,arguments)}}},[e("div",{staticClass:"app-navigation__search"},[t._t("search")],2),e("div",{staticClass:"app-navigation__body",class:{"app-navigation__body--no-list":!t.$scopedSlots.list}},[t._t("default")],2),t.$scopedSlots.list?e("NcAppNavigationList",{staticClass:"app-navigation__list"},[t._t("list")],2):t._e(),t._t("footer")],2),e("NcAppNavigationToggle",{attrs:{open:t.open},on:{"update:open":t.toggleNavigation}})],1)},po=[],ho=x(co,uo,po,!1,null,"e7d078cc");const fo=ho.exports,vo={name:"NcActionButton",components:{CheckIcon:Bi,ChevronRightIcon:en},mixins:[Ri],inject:{isInSemanticMenu:{from:"NcActions:isSemanticMenu",default:!1}},props:{ariaHidden:{type:Boolean,default:null},disabled:{type:Boolean,default:!1},isMenu:{type:Boolean,default:!1},type:{type:String,default:"button",validator:t=>["button","checkbox","radio","reset","submit"].includes(t)},modelValue:{type:[Boolean,String],default:null},value:{type:String,default:null}},computed:{isFocusable(){return!this.disabled},isChecked(){return this.type==="radio"&&typeof this.modelValue!="boolean"?this.modelValue===this.value:this.modelValue},nativeType(){return this.type==="submit"||this.type==="reset"?this.type:"button"},buttonAttributes(){const t={};return this.isInSemanticMenu?(t.role="menuitem",this.type==="radio"?(t.role="menuitemradio",t["aria-checked"]=this.isChecked?"true":"false"):(this.type==="checkbox"||this.nativeType==="button"&&this.modelValue!==null)&&(t.role="menuitemcheckbox",t["aria-checked"]=this.modelValue===null?"mixed":this.modelValue?"true":"false")):this.modelValue!==null&&this.nativeType==="button"&&(t["aria-pressed"]=this.modelValue?"true":"false"),t}},methods:{handleClick(t){this.onClick(t),(this.modelValue!==null||this.type!=="button")&&(this.type==="radio"?typeof this.modelValue!="boolean"?this.isChecked||this.$emit("update:modelValue",this.value):this.$emit("update:modelValue",!this.isChecked):this.$emit("update:modelValue",!this.isChecked))}}};var go=function(){var t=this,e=t._self._c;return e("li",{staticClass:"action",class:{"action--disabled":t.disabled},attrs:{role:t.isInSemanticMenu&&"presentation"}},[e("button",t._b({class:["action-button button-vue",{"action-button--active":t.isChecked,focusable:t.isFocusable}],attrs:{"aria-label":t.ariaLabel,disabled:t.disabled,title:t.title,type:t.nativeType},on:{click:t.handleClick}},"button",t.buttonAttributes,!1),[t._t("icon",function(){return[e("span",{staticClass:"action-button__icon",class:[t.isIconUrl?"action-button__icon--url":t.icon],style:{backgroundImage:t.isIconUrl?"url(".concat(t.icon,")"):null},attrs:{"aria-hidden":"true"}})]}),t.name?e("span",{staticClass:"action-button__longtext-wrapper"},[e("strong",{staticClass:"action-button__name"},[t._v(" "+t._s(t.name)+" ")]),e("br"),e("span",{staticClass:"action-button__longtext",domProps:{textContent:t._s(t.text)}})]):t.isLongText?e("span",{staticClass:"action-button__longtext",domProps:{textContent:t._s(t.text)}}):e("span",{staticClass:"action-button__text"},[t._v(t._s(t.text))]),t.isMenu?e("ChevronRightIcon",{staticClass:"action-button__menu-icon",attrs:{size:20}}):t.isChecked===!0?e("CheckIcon",{staticClass:"action-button__pressed-icon",attrs:{size:20}}):t.isChecked===!1?e("span",{staticClass:"action-button__pressed-icon material-design-icon"}):t._e(),t._e()],2)])},mo=[],yo=x(vo,go,mo,!1,null,"dba65098");const _o=yo.exports,Co={name:"NcVNodes",props:{vnodes:{type:[Array,Object],default:null}},render(t){var e,i,n;return this.vnodes||((e=this.$slots)==null?void 0:e.default)||((n=(i=this.$scopedSlots)==null?void 0:i.default)==null?void 0:n.call(i))}},bo=null,xo=null;var So=x(Co,bo,xo,!1,null,null);const wo=So.exports,ko={name:"ChevronUpIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var zo=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon chevron-up-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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.41,15.41L12,10.83L16.59,15.41L18,14L12,8L6,14L7.41,15.41Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},No=[],Do=x(ko,zo,No,!1,null,null);const Eo=Do.exports;it(nn);const Po={name:"NcInputConfirmCancel",components:{NcButton:lt,ArrowRight:je,Close:sn},props:{primary:{default:!1,type:Boolean},placeholder:{default:"",type:String},value:{default:"",type:String}},emits:["input","confirm","cancel"],data(){return{labelConfirm:T("Confirm changes"),labelCancel:T("Cancel changes")}},computed:{valueModel:{get(){return this.value},set(t){this.$emit("input",t)}}},methods:{confirm(){this.$emit("confirm")},cancel(){this.$emit("cancel")},focusInput(){this.$refs.input.focus()}}};var Mo=function(){var t=this,e=t._self._c;return e("div",{staticClass:"app-navigation-input-confirm"},[e("form",{on:{submit:function(i){return i.preventDefault(),t.confirm.apply(null,arguments)},keydown:function(i){return!i.type.indexOf("key")&&t._k(i.keyCode,"esc",27,i.key,["Esc","Escape"])||i.ctrlKey||i.shiftKey||i.altKey||i.metaKey?null:(i.stopPropagation(),i.preventDefault(),t.cancel.apply(null,arguments))},click:function(i){i.stopPropagation(),i.preventDefault()}}},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.valueModel,expression:"valueModel"}],ref:"input",staticClass:"app-navigation-input-confirm__input",attrs:{type:"text",placeholder:t.placeholder},domProps:{value:t.valueModel},on:{input:function(i){i.target.composing||(t.valueModel=i.target.value)}}}),e("NcButton",{attrs:{"native-type":"submit",type:"primary","aria-label":t.labelConfirm},on:{click:function(i){return i.stopPropagation(),i.preventDefault(),t.confirm.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ArrowRight",{attrs:{size:20}})]},proxy:!0}])}),e("NcButton",{attrs:{"native-type":"reset",type:t.primary?"primary":"tertiary","aria-label":t.labelCancel},on:{click:function(i){return i.stopPropagation(),i.preventDefault(),t.cancel.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Close",{attrs:{size:20}})]},proxy:!0}])})],1)])},Ao=[],Lo=x(Po,Mo,Ao,!1,null,"0e795eb7");const Oo=Lo.exports;it(an);const To={name:"NcAppNavigationIconCollapsible",components:{NcButton:lt,ChevronDown:Vi,ChevronUp:Eo},props:{open:{type:Boolean,default:!0}},emits:["click"],computed:{labelButton(){return this.open?T("Collapse menu"):T("Open menu")}},methods:{onClick(t){this.$emit("click",t)}}};var $o=function(){var t=this,e=t._self._c;return e("NcButton",{staticClass:"icon-collapse",class:{"icon-collapse--open":t.open},attrs:{type:"tertiary","aria-label":t.labelButton},on:{click:t.onClick},scopedSlots:t._u([{key:"icon",fn:function(){return[t.open?e("ChevronUp",{attrs:{size:20}}):e("ChevronDown",{attrs:{size:20}})]},proxy:!0}])})},Io=[],Bo=x(To,$o,Io,!1,null,"cadd59ae");const Ro=Bo.exports;it(rn,on);const Vo={name:"PencilIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Ho=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon pencil-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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:"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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},jo=[],Fo=x(Vo,Ho,jo,!1,null,null);const Uo=Fo.exports,Wo={name:"UndoIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Zo=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon undo-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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:"M12.5,8C9.85,8 7.45,9 5.6,10.6L2,7V16H11L7.38,12.38C8.77,11.22 10.54,10.5 12.5,10.5C16.04,10.5 19.05,12.81 20.1,16L22.47,15.22C21.08,11.03 17.15,8 12.5,8Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},qo=[],Ko=x(Wo,Zo,qo,!1,null,null);const Go=Ko.exports,Xo={name:"NcAppNavigationItem",components:{NcActions:ln,NcActionButton:_o,NcAppNavigationIconCollapsible:Ro,NcInputConfirmCancel:Oo,NcLoadingIcon:Ue,NcVNodes:wo,Pencil:Uo,Undo:Go},props:{active:{type:Boolean,default:!1},name:{type:String,required:!0},title:{type:String,default:null},id:{type:String,default:()=>"app-navigation-item-"+cn(),validator:t=>t.trim()!==""},icon:{type:String,default:""},loading:{type:Boolean,default:!1},to:{type:[String,Object],default:null},href:{type:String,default:null},exact:{type:Boolean,default:!1},allowCollapse:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},editLabel:{type:String,default:""},editPlaceholder:{type:String,default:""},pinned:{type:Boolean,default:!1},undo:{type:Boolean,default:!1},open:{type:Boolean,default:!1},menuOpen:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},menuIcon:{type:String,default:void 0},menuPlacement:{type:String,default:"bottom"},ariaDescription:{type:String,default:null},forceDisplayActions:{type:Boolean,default:!1},inlineActions:{type:Number,default:0}},emits:["update:menuOpen","update:open","update:name","click","undo"],setup(){return{isMobile:Nt()}},data(){return{editingValue:"",opened:this.open,editingActive:!1,hasChildren:!1,menuOpenLocalValue:!1,focused:!1,collapsible:!1,actionsBoundariesElement:void 0}},computed:{isRouterLink(){return this.to&&!this.href},canHaveChildren(){return this.$parent.$options._componentTag!=="AppNavigationItem"},hasUtils(){return!!(this.$slots.actions||this.$slots.counter||this.editable||this.undo)},editButtonAriaLabel(){return this.editLabel?this.editLabel:T("Edit item")},undoButtonAriaLabel(){return T("Undo changes")}},watch:{open(t){this.opened=t}},mounted(){this.actionsBoundariesElement=document.querySelector("#content-vue")||void 0},created(){this.updateSlotInfo()},beforeUpdate(){this.updateSlotInfo()},methods:{onMenuToggle(t){this.$emit("update:menuOpen",t),this.menuOpenLocalValue=t},toggleCollapse(){this.opened=!this.opened,this.$emit("update:open",this.opened)},onClick(t,e,i){this.$emit("click",t),!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&i&&(e==null||e(t),t.preventDefault())},handleEdit(){this.editingValue=this.name,this.editingActive=!0,this.onMenuToggle(!1),this.$nextTick(()=>{this.$refs.editingInput.focusInput()})},cancelEditing(){this.editingActive=!1},handleEditingDone(){this.$emit("update:name",this.editingValue),this.editingValue="",this.editingActive=!1},handleUndo(){this.$emit("undo")},updateSlotInfo(){this.hasChildren=!!this.$slots.default,this.collapsible=this.allowCollapse&&!!this.$slots.default},handleFocus(){this.focused=!0},handleBlur(){this.focused=!1},handleTab(t){this.$refs.actions&&(this.focused?(t.preventDefault(),this.$refs.actions.$refs.menuButton.$el.focus(),this.focused=!1):this.$refs.actions.$refs.menuButton.$el.blur())},isExternal(t){return t&&t.match(/[a-z]+:\/\//i)}}};var Jo=function(){var t=this,e=t._self._c;return e("li",{staticClass:"app-navigation-entry-wrapper",class:{"app-navigation-entry--opened":t.opened,"app-navigation-entry--pinned":t.pinned,"app-navigation-entry--collapsible":t.collapsible},attrs:{id:t.id}},[e(t.isRouterLink?"router-link":"NcVNodes",{tag:"component",attrs:{custom:!!t.isRouterLink,to:t.to,exact:t.isRouterLink?t.exact:null},scopedSlots:t._u([{key:"default",fn:function({href:i,navigate:n,isActive:s}){return[e("div",{staticClass:"app-navigation-entry",class:{"app-navigation-entry--editing":t.editingActive,"app-navigation-entry--deleted":t.undo,active:s&&t.to||t.active}},[t.undo?t._e():e("a",{staticClass:"app-navigation-entry-link",attrs:{"aria-current":t.active||s&&t.to?"page":void 0,"aria-description":t.ariaDescription,"aria-expanded":t.hasChildren?t.opened.toString():void 0,href:t.href||i||"#",target:t.isExternal(t.href)?"_blank":void 0,title:t.title||t.name},on:{blur:t.handleBlur,click:function(a){return t.onClick(a,n,i)},focus:t.handleFocus,keydown:function(a){return!a.type.indexOf("key")&&t._k(a.keyCode,"tab",9,a.key,"Tab")||a.ctrlKey||a.shiftKey||a.altKey||a.metaKey?null:t.handleTab.apply(null,arguments)}}},[e("div",{staticClass:"app-navigation-entry-icon",class:{[t.icon]:t.icon}},[t.loading?e("NcLoadingIcon"):t._t("icon")],2),t.editingActive?t._e():e("span",{staticClass:"app-navigation-entry__name"},[t._v(" "+t._s(t.name)+" ")]),t.editingActive?e("div",{staticClass:"editingContainer"},[e("NcInputConfirmCancel",{ref:"editingInput",attrs:{placeholder:t.editPlaceholder!==""?t.editPlaceholder:t.name,primary:s&&t.to||t.active},on:{cancel:t.cancelEditing,confirm:t.handleEditingDone},model:{value:t.editingValue,callback:function(a){t.editingValue=a},expression:"editingValue"}})],1):t._e()]),t.undo?e("div",{staticClass:"app-navigation-entry__deleted"},[e("div",{staticClass:"app-navigation-entry__deleted-description"},[t._v(" "+t._s(t.name)+" ")])]):t._e(),t.hasUtils&&!t.editingActive?e("div",{staticClass:"app-navigation-entry__utils",class:{"app-navigation-entry__utils--display-actions":t.forceDisplayActions||t.menuOpenLocalValue||t.menuOpen}},[t.$slots.counter?e("div",{staticClass:"app-navigation-entry__counter-wrapper"},[t._t("counter")],2):t._e(),t.$slots.actions||t.editable&&!t.editingActive||t.undo?e("NcActions",{ref:"actions",staticClass:"app-navigation-entry__actions",attrs:{inline:t.inlineActions,container:"#app-navigation-vue","boundaries-element":t.actionsBoundariesElement,placement:t.menuPlacement,open:t.menuOpen,type:s&&t.to||t.active?"primary":null,"force-menu":t.forceMenu,"default-icon":t.menuIcon},on:{"update:open":t.onMenuToggle},scopedSlots:t._u([{key:"icon",fn:function(){return[t._t("menu-icon")]},proxy:!0}],null,!0)},[t.editable&&!t.editingActive?e("NcActionButton",{attrs:{"aria-label":t.editButtonAriaLabel},on:{click:t.handleEdit},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Pencil",{attrs:{size:20}})]},proxy:!0}],null,!0)},[t._v(" "+t._s(t.editLabel)+" ")]):t._e(),t.undo?e("NcActionButton",{attrs:{"aria-label":t.undoButtonAriaLabel},on:{click:t.handleUndo},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Undo",{attrs:{size:20}})]},proxy:!0}],null,!0)}):t._e(),t._t("actions")],2):t._e()],1):t._e(),t.collapsible?e("NcAppNavigationIconCollapsible",{attrs:{open:t.opened},on:{click:function(a){return a.preventDefault(),a.stopPropagation(),t.toggleCollapse.apply(null,arguments)}}}):t._e(),t._t("extra")],2)]}}],null,!0)}),t.canHaveChildren&&t.hasChildren?e("ul",{staticClass:"app-navigation-entry__children"},[t._t("default")],2):t._e()],1)},Yo=[],Qo=x(Xo,Jo,Yo,!1,null,"97fce21a");const tr=Qo.exports,er={props:{excludeClickOutsideSelectors:{type:[String,Array],default:()=>[]}},computed:{clickOutsideOptions(){return{ignore:Array.isArray(this.excludeClickOutsideSelectors)?this.excludeClickOutsideSelectors:[this.excludeClickOutsideSelectors]}}}};it(un);const ir={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var nr=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon cog-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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:"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},sr=[],ar=x(ir,nr,sr,!1,null,null);const or=ar.exports,rr={directives:{ClickOutside:Hi},components:{Cog:or},mixins:[er],props:{name:{type:String,required:!1,default:T("Settings")}},data(){return{open:!1}},computed:{clickOutsideConfig(){return[this.closeMenu,this.clickOutsideOptions]}},methods:{toggleMenu(){this.open=!this.open},closeMenu(){this.open=!1}}};var lr=function(){var t=this,e=t._self._c;return e("div",{directives:[{name:"click-outside",rawName:"v-click-outside",value:t.clickOutsideConfig,expression:"clickOutsideConfig"}],class:{open:t.open},attrs:{id:"app-settings"}},[e("div",{attrs:{id:"app-settings__header"}},[e("button",{staticClass:"settings-button",attrs:{type:"button","aria-expanded":t.open?"true":"false","aria-controls":"app-settings__content"},on:{click:t.toggleMenu}},[e("Cog",{staticClass:"settings-button__icon",attrs:{size:20}}),e("span",{staticClass:"settings-button__label"},[t._v(t._s(t.name))])],1)]),e("Transition",{attrs:{name:"slide-up"}},[e("div",{directives:[{name:"show",rawName:"v-show",value:t.open,expression:"open"}],attrs:{id:"app-settings__content"}},[t._t("default")],2)])],1)},cr=[],ur=x(rr,lr,cr,!1,null,"981e215c");const pr=ur.exports,dr={name:"ContentCopyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var hr=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon content-copy-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},fr=[],vr=Dt(dr,hr,fr,!1,null,null);const gr=vr.exports,mr=Ut({__name:"ActivityAppNavigation",setup(t){const{rssLink:e,personalSettingsLink:i}=ne(Rt,"settings"),n=ne(Rt,"navigationList"),s=at(e),a=_t(()=>!!s.value);async function o(){try{const{data:l}=await We.post(Ze("/apps/activity/settings/feed"),{enable:!a.value});s.value=l.data.rsslink}catch(l){qe(B("activity","Could not enable RSS link")),ie.error(l)}}async function r(){try{window.navigator.clipboard.writeText(s.value),dn(B("activity","RSS link copied to clipboard"))}catch(l){ie.debug(l),window.prompt(B("activity","Could not copy the RSS link, please copy manually:"),s.value)}}return{__sfc:!0,initialRSSLink:e,personalSettingsLink:i,navigationList:n,rssLink:s,hasRSSLink:a,toggleRSSLink:o,copyRSSLink:r,t:B,NcAppNavigation:fo,NcAppNavigationItem:tr,NcAppNavigationSettings:pr,NcButton:lt,NcCheckboxRadioSwitch:pn,NcInputField:ji,IconContentCopy:gr}}});var yr=function(){var t=this,e=t._self._c,i=t._self._setupProxy;return e(i.NcAppNavigation,{attrs:{"aria-label":i.t("activity","Activity")},scopedSlots:t._u([{key:"list",fn:function(){return t._l(i.navigationList,function(n){return e(i.NcAppNavigationItem,{key:n.id,attrs:{"data-navigation":n.id,to:n.id,name:n.name},scopedSlots:t._u([n.icon?{key:"icon",fn:function(){return[e("img",{staticClass:"navigation-icon",attrs:{alt:"",src:n.icon,role:"presentation"}})]},proxy:!0}:null],null,!0)})})},proxy:!0},{key:"footer",fn:function(){return[e(i.NcAppNavigationSettings,{attrs:{name:i.t("activity","Activity settings")}},[e(i.NcCheckboxRadioSwitch,{attrs:{type:"switch",checked:i.hasRSSLink},on:{"update:checked":i.toggleRSSLink}},[t._v(" "+t._s(i.t("activity","Enable RSS feed"))+" ")]),i.hasRSSLink?e(i.NcInputField,{attrs:{label:i.t("activity","RSS feed"),"show-trailing-button":!0,"trailing-button-label":i.t("activity","Copy RSS feed link"),readonly:"readonly"},on:{"trailing-button-click":i.copyRSSLink},scopedSlots:t._u([{key:"trailing-button-icon",fn:function(){return[e(i.IconContentCopy,{attrs:{size:20}})]},proxy:!0}],null,!1,4025534811),model:{value:i.rssLink,callback:function(n){i.rssLink=n},expression:"rssLink"}}):t._e(),e(i.NcButton,{staticClass:"settings-link",attrs:{href:i.personalSettingsLink,title:i.t("activity","Personal notification settings"),type:"tertiary"}},[t._v(" "+t._s(i.t("activity","Personal notification settings"))+" ")])],1)]},proxy:!0}])})},_r=[],Cr=Dt(mr,yr,_r,!1,null,null);const br=Cr.exports,xr=[{path:"/",name:"root",redirect:{path:"/all"}},{path:"/:filter?",components:{default:ja,navigation:br},props:{default:!0}}];R.prototype.t=B,R.prototype.n=Oi,R.use(Fe);const Sr=new Fe({mode:"history",base:Ze("/apps/activity"),linkActiveClass:"active",routes:xr});new R({el:"#content",name:"ActivityRoot",router:Sr,render:t=>t(En)}); +import{V as R,d as Ut,c as _t,t as B,g as ze,a as Ei,e as Pi,s as Mi,r as at,o as Ai,w as Li,b as Oi}from"./index-CpOKyUsr.chunk.mjs";import{N as He,u as Nt,A as je,m as ht,a as Ti,b as $i,c as Ii,C as Bi,d as Ri,e as Vi,v as Hi,f as ji,V as Fe}from"./Activity-Bii4XQFb.chunk.mjs";import{e as Y,g as Fi,l as ie,s as Ui,u as Wi}from"./logger-DdfSSqJ9.chunk.mjs";import{r as it,t as Zi,n as x,N as lt,a as T,b as Dt,c as qi,u as Ki,V as Gi,l as ne,d as Ue,e as We,v as Xi,f as Ji,g as Yi,h as Qi,i as tn,C as en,j as nn,k as sn,m as an,o as on,p as rn,q as ln,G as cn,s as un,w as pn,_ as Ze}from"./NcCheckboxRadioSwitch-CvMEEI9x-CRJk_h3R.chunk.mjs";import{s as qe,a as dn}from"./NcNoteCard-CImn6F9p-CWGSZ4YZ.chunk.mjs";import"./_commonjsHelpers-D9DevfhH.chunk.mjs";const Rt="activity";let hn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",fn=(t=21)=>{let e="",i=t|0;for(;i--;)e+=hn[Math.random()*64|0];return e};function Ot(t){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Ot=function(e){return typeof e}:Ot=function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ot(t)}var Ke={selector:"vue-portal-target-".concat(fn())},vn=function(t){return Ke.selector=t},Jt=typeof window<"u"&&(typeof document>"u"?"undefined":Ot(document))!==void 0,gn=R.extend({abstract:!0,name:"PortalOutlet",props:["nodes","tag"],data:function(t){return{updatedNodes:t.nodes}},render:function(t){var e=this.updatedNodes&&this.updatedNodes();return e?e.length===1&&!e[0].text?e:t(this.tag||"DIV",e):t()},destroyed:function(){var t=this.$el;t&&t.parentNode.removeChild(t)}}),Ge=R.extend({name:"VueSimplePortal",props:{disabled:{type:Boolean},prepend:{type:Boolean},selector:{type:String,default:function(){return"#".concat(Ke.selector)}},tag:{type:String,default:"DIV"}},render:function(t){if(this.disabled){var e=this.$scopedSlots&&this.$scopedSlots.default();return e?e.length<2&&!e[0].text?e:t(this.tag,e):t()}return t()},created:function(){this.getTargetEl()||this.insertTargetEl()},updated:function(){var t=this;this.$nextTick(function(){!t.disabled&&t.slotFn!==t.$scopedSlots.default&&(t.container.updatedNodes=t.$scopedSlots.default),t.slotFn=t.$scopedSlots.default})},beforeDestroy:function(){this.unmount()},watch:{disabled:{immediate:!0,handler:function(t){t?this.unmount():this.$nextTick(this.mount)}}},methods:{getTargetEl:function(){if(Jt)return document.querySelector(this.selector)},insertTargetEl:function(){if(Jt){var t=document.querySelector("body"),e=document.createElement(this.tag);e.id=this.selector.substring(1),t.appendChild(e)}},mount:function(){if(Jt){var t=this.getTargetEl(),e=document.createElement("DIV");this.prepend&&t.firstChild?t.insertBefore(e,t.firstChild):t.appendChild(e),this.container=new gn({el:e,parent:this,propsData:{tag:this.tag,nodes:this.$scopedSlots.default}})}},unmount:function(){this.container&&(this.container.$destroy(),delete this.container)}}});function mn(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};t.component(e.name||"portal",Ge),e.defaultSelector&&vn(e.defaultSelector)}typeof window<"u"&&window.Vue&&window.Vue===R&&R.use(mn),it(Zi);const yn='\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n',_n='\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n',Cn={name:"NcContent",components:{NcButton:lt,NcIconSvgWrapper:He,Teleport:Ge},provide(){return{"NcContent:setHasAppNavigation":this.setAppNavigation,"NcContent:selector":"#content-vue"}},props:{appName:{type:String,required:!0}},setup(){return{isMobile:Nt()}},data(){return{hasAppNavigation:!1,currentFocus:""}},computed:{currentImage(){return this.currentFocus==="navigation"?_n:yn}},beforeMount(){const t=document.getElementById("skip-actions");t&&(t.innerHTML="",t.classList.add("vue-skip-actions"))},methods:{t:T,openAppNavigation(){Y("toggle-navigation",{open:!0}),this.$nextTick(()=>{window.location.hash="app-navigation-vue",document.getElementById("app-navigation-vue").focus()})},setAppNavigation(t){this.hasAppNavigation=t,this.currentFocus===""&&(this.currentFocus="navigation")}}};var bn=function(){var t=this,e=t._self._c;return e("div",{class:["content","app-".concat(t.appName.toLowerCase())],attrs:{id:"content-vue"}},[e("Teleport",{attrs:{selector:"#skip-actions"}},[e("div",{staticClass:"vue-skip-actions__container"},[e("div",{staticClass:"vue-skip-actions__headline"},[t._v(" "+t._s(t.t("Keyboard navigation help"))+" ")]),e("div",{staticClass:"vue-skip-actions__buttons"},[e("NcButton",{directives:[{name:"show",rawName:"v-show",value:t.hasAppNavigation,expression:"hasAppNavigation"}],attrs:{type:"tertiary",href:"#app-navigation-vue"},on:{click:function(i){return i.preventDefault(),t.openAppNavigation.apply(null,arguments)},focusin:function(i){t.currentFocus="navigation"},mouseover:function(i){t.currentFocus="navigation"}}},[t._v(" "+t._s(t.t("Skip to app navigation"))+" ")]),e("NcButton",{attrs:{type:"tertiary",href:"#app-content-vue"},on:{focusin:function(i){t.currentFocus="content"},mouseover:function(i){t.currentFocus="content"}}},[t._v(" "+t._s(t.t("Skip to main content"))+" ")])],1),e("NcIconSvgWrapper",{directives:[{name:"show",rawName:"v-show",value:!t.isMobile,expression:"!isMobile"}],staticClass:"vue-skip-actions__image",attrs:{svg:t.currentImage,size:"auto"}})],1),t._v(" ")]),t._t("default")],2)},xn=[],Sn=x(Cn,bn,xn,!1,null,"d8f0539f");const wn=Sn.exports,kn=Ut({__name:"ActivityApp",setup(t){return{__sfc:!0,NcContent:wn}}});var zn=function(){var t=this,e=t._self._c,i=t._self._setupProxy;return e(i.NcContent,{attrs:{"app-name":"activity"}},[e("router-view",{attrs:{name:"navigation"}}),e("router-view")],1)},Nn=[],Dn=Dt(kn,zn,Nn,!1,null,null);const En=Dn.exports;var Pn=Object.defineProperty,Mn=Object.defineProperties,An=Object.getOwnPropertyDescriptors,Vt=Object.getOwnPropertySymbols,Xe=Object.prototype.hasOwnProperty,Je=Object.prototype.propertyIsEnumerable,Ne=(t,e,i)=>e in t?Pn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,Ln=(t,e)=>{for(var i in e||(e={}))Xe.call(e,i)&&Ne(t,i,e[i]);if(Vt)for(var i of Vt(e))Je.call(e,i)&&Ne(t,i,e[i]);return t},On=(t,e)=>Mn(t,An(e)),Tn=(t,e)=>{var i={};for(var n in t)Xe.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(t!=null&&Vt)for(var n of Vt(t))e.indexOf(n)<0&&Je.call(t,n)&&(i[n]=t[n]);return i};function Ye(t,e,i,n,s,a,o,r){var l=typeof t=="function"?t.options:t;e&&(l.render=e,l.staticRenderFns=i,l._compiled=!0);var p;if(s&&(p=s),p)if(l.functional){l._injectStyles=p;var c=l.render;l.render=function(d,h){return p.call(h),c(d,h)}}else{var u=l.beforeCreate;l.beforeCreate=u?[].concat(u,p):[p]}return{exports:t,options:l}}const $n={name:"splitpanes",props:{horizontal:{type:Boolean},pushOtherPanes:{type:Boolean,default:!0},dblClickSplitter:{type:Boolean,default:!0},rtl:{type:Boolean,default:!1},firstSplitter:{type:Boolean}},provide(){return{requestUpdate:this.requestUpdate,onPaneAdd:this.onPaneAdd,onPaneRemove:this.onPaneRemove,onPaneClick:this.onPaneClick}},data:()=>({container:null,ready:!1,panes:[],touch:{mouseDown:!1,dragging:!1,activeSplitter:null},splitterTaps:{splitter:null,timeoutId:null}}),computed:{panesCount(){return this.panes.length},indexedPanes(){return this.panes.reduce((t,e)=>(t[e.id]=e)&&t,{})}},methods:{updatePaneComponents(){this.panes.forEach(t=>{t.update&&t.update({[this.horizontal?"height":"width"]:"".concat(this.indexedPanes[t.id].size,"%")})})},bindEvents(){document.addEventListener("mousemove",this.onMouseMove,{passive:!1}),document.addEventListener("mouseup",this.onMouseUp),"ontouchstart"in window&&(document.addEventListener("touchmove",this.onMouseMove,{passive:!1}),document.addEventListener("touchend",this.onMouseUp))},unbindEvents(){document.removeEventListener("mousemove",this.onMouseMove,{passive:!1}),document.removeEventListener("mouseup",this.onMouseUp),"ontouchstart"in window&&(document.removeEventListener("touchmove",this.onMouseMove,{passive:!1}),document.removeEventListener("touchend",this.onMouseUp))},onMouseDown(t,e){this.bindEvents(),this.touch.mouseDown=!0,this.touch.activeSplitter=e},onMouseMove(t){this.touch.mouseDown&&(t.preventDefault(),this.touch.dragging=!0,this.calculatePanesSize(this.getCurrentMouseDrag(t)),this.$emit("resize",this.panes.map(e=>({min:e.min,max:e.max,size:e.size}))))},onMouseUp(){this.touch.dragging&&this.$emit("resized",this.panes.map(t=>({min:t.min,max:t.max,size:t.size}))),this.touch.mouseDown=!1,setTimeout(()=>{this.touch.dragging=!1,this.unbindEvents()},100)},onSplitterClick(t,e){"ontouchstart"in window&&(t.preventDefault(),this.dblClickSplitter&&(this.splitterTaps.splitter===e?(clearTimeout(this.splitterTaps.timeoutId),this.splitterTaps.timeoutId=null,this.onSplitterDblClick(t,e),this.splitterTaps.splitter=null):(this.splitterTaps.splitter=e,this.splitterTaps.timeoutId=setTimeout(()=>{this.splitterTaps.splitter=null},500)))),this.touch.dragging||this.$emit("splitter-click",this.panes[e])},onSplitterDblClick(t,e){let i=0;this.panes=this.panes.map((n,s)=>(n.size=s===e?n.max:n.min,s!==e&&(i+=n.min),n)),this.panes[e].size-=i,this.$emit("pane-maximize",this.panes[e])},onPaneClick(t,e){this.$emit("pane-click",this.indexedPanes[e])},getCurrentMouseDrag(t){const e=this.container.getBoundingClientRect(),{clientX:i,clientY:n}="ontouchstart"in window&&t.touches?t.touches[0]:t;return{x:i-e.left,y:n-e.top}},getCurrentDragPercentage(t){t=t[this.horizontal?"y":"x"];const e=this.container[this.horizontal?"clientHeight":"clientWidth"];return this.rtl&&!this.horizontal&&(t=e-t),t*100/e},calculatePanesSize(t){const e=this.touch.activeSplitter;let i={prevPanesSize:this.sumPrevPanesSize(e),nextPanesSize:this.sumNextPanesSize(e),prevReachedMinPanes:0,nextReachedMinPanes:0};const n=0+(this.pushOtherPanes?0:i.prevPanesSize),s=100-(this.pushOtherPanes?0:i.nextPanesSize),a=Math.max(Math.min(this.getCurrentDragPercentage(t),s),n);let o=[e,e+1],r=this.panes[o[0]]||null,l=this.panes[o[1]]||null;const p=r.max<100&&a>=r.max+i.prevPanesSize,c=l.max<100&&a<=100-(l.max+this.sumNextPanesSize(e+1));if(p||c){p?(r.size=r.max,l.size=Math.max(100-r.max-i.prevPanesSize-i.nextPanesSize,0)):(r.size=Math.max(100-l.max-i.prevPanesSize-this.sumNextPanesSize(e+1),0),l.size=l.max);return}if(this.pushOtherPanes){const u=this.doPushOtherPanes(i,a);if(!u)return;({sums:i,panesToResize:o}=u),r=this.panes[o[0]]||null,l=this.panes[o[1]]||null}r!==null&&(r.size=Math.min(Math.max(a-i.prevPanesSize-i.prevReachedMinPanes,r.min),r.max)),l!==null&&(l.size=Math.min(Math.max(100-a-i.nextPanesSize-i.nextReachedMinPanes,l.min),l.max))},doPushOtherPanes(t,e){const i=this.touch.activeSplitter,n=[i,i+1];return e{a>n[0]&&a<=i&&(s.size=s.min,t.prevReachedMinPanes+=s.min)}),t.prevPanesSize=this.sumPrevPanesSize(n[0]),n[0]===void 0)?(t.prevReachedMinPanes=0,this.panes[0].size=this.panes[0].min,this.panes.forEach((s,a)=>{a>0&&a<=i&&(s.size=s.min,t.prevReachedMinPanes+=s.min)}),this.panes[n[1]].size=100-t.prevReachedMinPanes-this.panes[0].min-t.prevPanesSize-t.nextPanesSize,null):e>100-t.nextPanesSize-this.panes[n[1]].min&&(n[1]=this.findNextExpandedPane(i).index,t.nextReachedMinPanes=0,n[1]>i+1&&this.panes.forEach((s,a)=>{a>i&&a{a=i+1&&(s.size=s.min,t.nextReachedMinPanes+=s.min)}),this.panes[n[0]].size=100-t.prevPanesSize-t.nextReachedMinPanes-this.panes[this.panesCount-1].min-t.nextPanesSize,null):{sums:t,panesToResize:n}},sumPrevPanesSize(t){return this.panes.reduce((e,i,n)=>e+(ne+(n>t+1?i.size:0),0)},findPrevExpandedPane(t){return[...this.panes].reverse().find(e=>e.indexe.min)||{}},findNextExpandedPane(t){return this.panes.find(e=>e.index>t+1&&e.size>e.min)||{}},checkSplitpanesNodes(){Array.from(this.container.children).forEach(t=>{const e=t.classList.contains("splitpanes__pane"),i=t.classList.contains("splitpanes__splitter");if(!e&&!i){t.parentNode.removeChild(t),console.warn("Splitpanes: Only elements are allowed at the root of . One of your DOM nodes was removed.");return}})},addSplitter(t,e,i=!1){const n=t-1,s=document.createElement("div");s.classList.add("splitpanes__splitter"),i||(s.onmousedown=a=>this.onMouseDown(a,n),typeof window<"u"&&"ontouchstart"in window&&(s.ontouchstart=a=>this.onMouseDown(a,n)),s.onclick=a=>this.onSplitterClick(a,n+1)),this.dblClickSplitter&&(s.ondblclick=a=>this.onSplitterDblClick(a,n+1)),e.parentNode.insertBefore(s,e)},removeSplitter(t){t.onmousedown=void 0,t.onclick=void 0,t.ondblclick=void 0,t.parentNode.removeChild(t)},redoSplitters(){const t=Array.from(this.container.children);t.forEach(i=>{i.className.includes("splitpanes__splitter")&&this.removeSplitter(i)});let e=0;t.forEach(i=>{i.className.includes("splitpanes__pane")&&(!e&&this.firstSplitter?this.addSplitter(e,i,!0):e&&this.addSplitter(e,i),e++)})},requestUpdate(t){var e=t,{target:i}=e,n=Tn(e,["target"]);const s=this.indexedPanes[i._uid];Object.entries(n).forEach(([a,o])=>s[a]=o)},onPaneAdd(t){let e=-1;Array.from(t.$el.parentNode.children).some(s=>(s.className.includes("splitpanes__pane")&&e++,s===t.$el));const i=parseFloat(t.minSize),n=parseFloat(t.maxSize);this.panes.splice(e,0,{id:t._uid,index:e,min:isNaN(i)?0:i,max:isNaN(n)?100:n,size:t.size===null?null:parseFloat(t.size),givenSize:t.size,update:t.update}),this.panes.forEach((s,a)=>s.index=a),this.ready&&this.$nextTick(()=>{this.redoSplitters(),this.resetPaneSizes({addedPane:this.panes[e]}),this.$emit("pane-add",{index:e,panes:this.panes.map(s=>({min:s.min,max:s.max,size:s.size}))})})},onPaneRemove(t){const e=this.panes.findIndex(n=>n.id===t._uid),i=this.panes.splice(e,1)[0];this.panes.forEach((n,s)=>n.index=s),this.$nextTick(()=>{this.redoSplitters(),this.resetPaneSizes({removedPane:On(Ln({},i),{index:e})}),this.$emit("pane-remove",{removed:i,panes:this.panes.map(n=>({min:n.min,max:n.max,size:n.size}))})})},resetPaneSizes(t={}){!t.addedPane&&!t.removedPane?this.initialPanesSizing():this.panes.some(e=>e.givenSize!==null||e.min||e.max<100)?this.equalizeAfterAddOrRemove(t):this.equalize(),this.ready&&this.$emit("resized",this.panes.map(e=>({min:e.min,max:e.max,size:e.size})))},equalize(){const t=100/this.panesCount;let e=0,i=[],n=[];this.panes.forEach(s=>{s.size=Math.max(Math.min(t,s.max),s.min),e-=s.size,s.size>=s.max&&i.push(s.id),s.size<=s.min&&n.push(s.id)}),e>.1&&this.readjustSizes(e,i,n)},initialPanesSizing(){100/this.panesCount;let t=100,e=[],i=[],n=0;this.panes.forEach(a=>{t-=a.size,a.size!==null&&n++,a.size>=a.max&&e.push(a.id),a.size<=a.min&&i.push(a.id)});let s=100;t>.1&&(this.panes.forEach(a=>{a.size===null&&(a.size=Math.max(Math.min(t/(this.panesCount-n),a.max),a.min)),s-=a.size}),s>.1&&this.readjustSizes(t,e,i))},equalizeAfterAddOrRemove({addedPane:t,removedPane:e}={}){let i=100/this.panesCount,n=0,s=[],a=[];t&&t.givenSize!==null&&(i=(100-t.givenSize)/(this.panesCount-1)),this.panes.forEach(o=>{n-=o.size,o.size>=o.max&&s.push(o.id),o.size<=o.min&&a.push(o.id)}),!(Math.abs(n)<.1)&&(this.panes.forEach(o=>{t&&t.givenSize!==null&&t.id===o.id||(o.size=Math.max(Math.min(i,o.max),o.min)),n-=o.size,o.size>=o.max&&s.push(o.id),o.size<=o.min&&a.push(o.id)}),n>.1&&this.readjustSizes(n,s,a))},readjustSizes(t,e,i){let n;t>0?n=t/(this.panesCount-e.length):n=t/(this.panesCount-i.length),this.panes.forEach((s,a)=>{if(t>0&&!e.includes(s.id)){const o=Math.max(Math.min(s.size+n,s.max),s.min),r=o-s.size;t-=r,s.size=o}else if(!i.includes(s.id)){const o=Math.max(Math.min(s.size+n,s.max),s.min),r=o-s.size;t-=r,s.size=o}s.update({[this.horizontal?"height":"width"]:"".concat(this.indexedPanes[s.id].size,"%")})}),Math.abs(t)>.1&&this.$nextTick(()=>{this.ready&&console.warn("Splitpanes: Could not resize panes correctly due to their constraints.")})}},watch:{panes:{deep:!0,immediate:!1,handler(){this.updatePaneComponents()}},horizontal(){this.updatePaneComponents()},firstSplitter(){this.redoSplitters()},dblClickSplitter(t){[...this.container.querySelectorAll(".splitpanes__splitter")].forEach((e,i)=>{e.ondblclick=t?n=>this.onSplitterDblClick(n,i):void 0})}},beforeDestroy(){this.ready=!1},mounted(){this.container=this.$refs.container,this.checkSplitpanesNodes(),this.redoSplitters(),this.resetPaneSizes(),this.$emit("ready"),this.ready=!0},render(t){return t("div",{ref:"container",class:["splitpanes","splitpanes--".concat(this.horizontal?"horizontal":"vertical"),{"splitpanes--dragging":this.touch.dragging}]},this.$slots.default)}};let In,Bn;const De={};var Rn=Ye($n,In,Bn,!1,Vn);function Vn(t){for(let e in De)this[e]=De[e]}var Hn=function(){return Rn.exports}(),jn=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"splitpanes__pane",style:t.style,on:{click:function(n){return t.onPaneClick(n,t._uid)}}},[t._t("default")],2)},Fn=[];const Un={name:"pane",inject:["requestUpdate","onPaneAdd","onPaneRemove","onPaneClick"],props:{size:{type:[Number,String],default:null},minSize:{type:[Number,String],default:0},maxSize:{type:[Number,String],default:100}},data:()=>({style:{}}),mounted(){this.onPaneAdd(this)},beforeDestroy(){this.onPaneRemove(this)},methods:{update(t){this.style=t}},computed:{sizeNumber(){return this.size||this.size===0?parseFloat(this.size):null},minSizeNumber(){return parseFloat(this.minSize)},maxSizeNumber(){return parseFloat(this.maxSize)}},watch:{sizeNumber(t){this.requestUpdate({target:this,size:t})},minSizeNumber(t){this.requestUpdate({target:this,min:t})},maxSizeNumber(t){this.requestUpdate({target:this,max:t})}}},Ee={};var Wn=Ye(Un,jn,Fn,!1,Zn);function Zn(t){for(let e in Ee)this[e]=Ee[e]}var qn=function(){return Wn.exports}();it(qi);const Kn={name:"NcAppDetailsToggle",directives:{tooltip:Gi},components:{NcButton:lt,ArrowRight:je},setup(){return{isMobile:Nt()}},computed:{title(){return T("Go back to the list")}},watch:{isMobile:{immediate:!0,handler(){this.toggleAppNavigationButton(this.isMobile)}}},beforeDestroy(){this.isMobile&&this.toggleAppNavigationButton(!1)},methods:{toggleAppNavigationButton(t=!0){const e=document.querySelector(".app-navigation .app-navigation-toggle");e&&(e.style.display=t?"none":null,t===!0&&Y("toggle-navigation",{open:!1}))}}};var Gn=function(){var t=this,e=t._self._c;return e("NcButton",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.title,expression:"title"}],staticClass:"app-details-toggle",class:{"app-details-toggle--mobile":t.isMobile},attrs:{type:"tertiary","aria-label":t.title},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ArrowRight",{attrs:{size:20}})]},proxy:!0}])})},Xn=[],Jn=x(Kn,Gn,Xn,!1,null,"7692fc78");const Yn=Jn.exports,Pe=Fi("nextcloud").persist().build(),Qn={name:"NcAppContent",components:{NcAppDetailsToggle:Yn,Pane:qn,Splitpanes:Hn},props:{allowSwipeNavigation:{type:Boolean,default:!0},listSize:{type:Number,default:20},listMinWidth:{type:Number,default:15},listMaxWidth:{type:Number,default:40},paneConfigKey:{type:String,default:""},showDetails:{type:Boolean,default:!0},pageHeading:{type:String,default:null},layout:{type:String,default:"vertical-split",validator(t){return["no-split","vertical-split","horizontal-split"].includes(t)}}},emits:["update:showDetails","resize:list"],setup(){return{isMobile:Nt()}},data(){return{contentHeight:0,hasList:!1,hasContent:!1,swiping:{},listPaneSize:this.restorePaneConfig()}},computed:{paneConfigID(){if(this.paneConfigKey!=="")return"pane-list-size-".concat(this.paneConfigKey);try{return"pane-list-size-".concat(Rt)}catch{return console.info("[INFO] AppContent:","falling back to global nextcloud pane config"),"pane-list-size-nextcloud"}},detailsPaneSize(){return this.listPaneSize?100-this.listPaneSize:this.paneDefaults.details.size},paneDefaults(){return{list:{size:this.listSize,min:this.listMinWidth,max:this.listMaxWidth},details:{size:100-this.listSize,min:100-this.listMaxWidth,max:100-this.listMinWidth}}}},updated(){this.checkSlots()},mounted(){this.allowSwipeNavigation&&(this.swiping=Ki(this.$el,{onSwipeEnd:this.handleSwipe})),this.checkSlots(),this.restorePaneConfig()},methods:{handleSwipe(t,e){Math.abs(this.swiping.lengthX)>70&&(this.swiping.coordsStart.x<300/2&&e==="right"?Y("toggle-navigation",{open:!0}):this.swiping.coordsStart.x<300*1.5&&e==="left"&&Y("toggle-navigation",{open:!1}))},handlePaneResize(t){const e=parseInt(t[0].size,10);Pe.setItem(this.paneConfigID,JSON.stringify(e)),this.listPaneSize=e,this.$emit("resize:list",{size:e}),console.debug("AppContent pane config",e)},checkSlots(){this.hasList=!!this.$scopedSlots.list,this.hasContent=!!this.$scopedSlots.default},restorePaneConfig(){const t=parseInt(Pe.getItem(this.paneConfigID),10);if(!isNaN(t)&&t!==this.listPaneSize)return console.debug("AppContent pane config",t),this.listPaneSize=t,t},hideDetails(){this.$emit("update:showDetails",!1)}}};var ts=function(){var t=this,e=t._self._c;return e("main",{staticClass:"app-content no-snapper",class:{"app-content--has-list":t.hasList},attrs:{id:"app-content-vue"}},[t.pageHeading?e("h1",{staticClass:"hidden-visually"},[t._v(" "+t._s(t.pageHeading)+" ")]):t._e(),t.hasList?[t.isMobile||t.layout==="no-split"?e("div",{staticClass:"app-content-wrapper app-content-wrapper--no-split",class:{"app-content-wrapper--show-details":t.showDetails,"app-content-wrapper--show-list":!t.showDetails,"app-content-wrapper--mobile":t.isMobile}},[t.showDetails?e("NcAppDetailsToggle",{nativeOn:{click:function(i){return i.stopPropagation(),i.preventDefault(),t.hideDetails.apply(null,arguments)}}}):t._e(),t.showDetails?t._t("default"):t._t("list")],2):t.layout==="vertical-split"||t.layout==="horizontal-split"?e("div",{staticClass:"app-content-wrapper"},[e("Splitpanes",{staticClass:"default-theme",class:{"splitpanes--horizontal":t.layout==="horizontal-split","splitpanes--vertical":t.layout==="vertical-split"},attrs:{horizontal:t.layout==="horizontal-split"},on:{resized:t.handlePaneResize}},[e("Pane",{staticClass:"splitpanes__pane-list",attrs:{size:t.listPaneSize||t.paneDefaults.list.size,"min-size":t.paneDefaults.list.min,"max-size":t.paneDefaults.list.max}},[t._t("list")],2),e("Pane",{staticClass:"splitpanes__pane-details",attrs:{size:t.detailsPaneSize,"min-size":t.paneDefaults.details.min,"max-size":t.paneDefaults.details.max}},[t._t("default")],2)],1)],1):t._e()]:t._e(),t.hasList?t._e():t._t("default")],2)},es=[],is=x(Qn,ts,es,!1,null,"de6986e3");const ns=is.exports;var Wt=Symbol(),Ct=Symbol(),Me=Symbol(),Ae=Symbol(),de=function(t){return"frag"in t},ss={get:function(){return this[Ct]||this.parentElement},configurable:!0},bt=function(t,e){Ct in t||(t[Ct]=e,Object.defineProperty(t,"parentNode",ss))},as={get:function(){var t=this.parentNode.childNodes,e=t.indexOf(this);return e>-1&&t[e+1]||null}},Tt=function(t){Me in t||(t[Me]=!0,Object.defineProperty(t,"nextSibling",as))},os=function(t,e){for(;t.parentNode!==e;){var i=t,n=i.parentNode;n&&(t=n)}return t},Yt,Qe=function(t){if(!Yt){var e=Object.getOwnPropertyDescriptor(Node.prototype,"childNodes");Yt=e.get}var i=Yt.apply(t),n=Array.from(i).map(function(s){return os(s,t)});return n.filter(function(s,a){return s!==n[a-1]})},rs={get:function(){return this.frag||Qe(this)}},ls={get:function(){return this.childNodes[0]||null}};function cs(){return this.childNodes.length>0}var Le=function(t){Ae in t||(t[Ae]=!0,Object.defineProperties(t,{childNodes:rs,firstChild:ls}),t.hasChildNodes=cs)};function us(){var t;(t=this.frag[0]).before.apply(t,arguments)}function ps(){var t=this.frag,e=t.splice(0,t.length);e.forEach(function(i){i.remove()})}var ds=function t(e){var i;return(i=Array.prototype).concat.apply(i,e.map(function(n){return de(n)?t(n.frag):n}))},hs=function(t,e){var i=t[Wt];e.before(i),bt(i,t),t.frag.unshift(i)};function Oe(t){if(de(this)){var e=this.frag.indexOf(t);if(e>-1){var i=this.frag.splice(e,1),n=i[0];this.frag.length===0&&hs(this,n),t.remove()}}else{var s=Qe(this),a=s.indexOf(t);a>-1&&t.remove()}return t}function Te(t,e){var i=this,n=t.frag||[t];if(de(this)){if(t[Ct]===this&&t.parentElement)return t;var s=this.frag;if(e){var a=s.indexOf(e);a>-1&&(s.splice.apply(s,[a,0].concat(n)),e.before.apply(e,n))}else{var o=s[s.length-1];s.push.apply(s,n),o.after.apply(o,n)}ti(this)}else e?this.childNodes.includes(e)&&e.before.apply(e,n):this.append.apply(this,n);n.forEach(function(l){bt(l,i)});var r=n[n.length-1];return Tt(r),t}function fs(t){if(t[Ct]===this&&t.parentElement)return t;var e=this.frag,i=e[e.length-1];return i.after(t),bt(t,this),ti(this),e.push(t),t}var ti=function(t){var e=t[Wt];t.frag[0]===e&&(t.frag.shift(),e.remove())},vs={set:function(t){var e=this;if(this.frag[0]!==this[Wt]&&this.frag.slice().forEach(function(n){return e.removeChild(n)}),t){var i=document.createElement("div");i.innerHTML=t,Array.from(i.childNodes).forEach(function(n){e.appendChild(n)})}},get:function(){return""}},gs={inserted:function(t){var e=t.parentNode,i=t.nextSibling,n=t.previousSibling,s=Array.from(t.childNodes),a=document.createComment("");s.length===0&&s.push(a),t.frag=s,t[Wt]=a;var o=document.createDocumentFragment();o.append.apply(o,ds(s)),t.replaceWith(o),s.forEach(function(r){bt(r,t),Tt(r)}),Le(t),Object.assign(t,{remove:ps,appendChild:fs,insertBefore:Te,removeChild:Oe,before:us}),Object.defineProperty(t,"innerHTML",vs),e&&(Object.assign(e,{removeChild:Oe,insertBefore:Te}),bt(t,e),Le(e)),i&&Tt(t),n&&Tt(n)},unbind:function(t){t.remove()}},ms={name:"Fragment",directives:{frag:gs},render:function(t){return t("div",{directives:[{name:"frag"}]},this.$slots.default)}};const ys=Ut({__name:"ActivityGroup",props:{activities:null},setup(t){const e=t,i=_t(()=>{const s=ht(),a=ht().subtract(1,"day"),o=ht(e.activities[0].datetime);return o.isSame(s,"day")?B("activity","Today"):o.isSame(a,"day")?B("activity","Yesterday"):o.format("LL")}),n=_t(()=>{const s=ht(e.activities[0].datetime).format("LL");return s!==i.value?s:void 0});return{__sfc:!0,props:e,dateText:i,fullDate:n,Activity:Ti,Fragment:ms}}});var _s=function(){var t=this,e=t._self._c,i=t._self._setupProxy;return e(i.Fragment,[e("h2",{staticClass:"activity-group__heading",attrs:{title:i.fullDate}},[t._v(" "+t._s(i.dateText)+" ")]),e("ul",t._l(t.activities,function(n){return e(i.Activity,{key:n.id,attrs:{activity:n,"show-previews":!0}})}),1)])},Cs=[],bs=Dt(ys,_s,Cs,!1,null,"c16e5a63");const xs=bs.exports,Ss='';function ws(t){const e=Object.create(null);for(const i of t.split(","))e[i]=1;return i=>i in e}const he={},$t=()=>{},ei=Object.assign,ks=Object.prototype.hasOwnProperty,se=(t,e)=>ks.call(t,e),M=Array.isArray,ft=t=>Zt(t)==="[object Map]",zs=t=>Zt(t)==="[object Set]",V=t=>typeof t=="function",Ns=t=>typeof t=="string",Et=t=>typeof t=="symbol",ct=t=>t!==null&&typeof t=="object",Ds=t=>(ct(t)||V(t))&&V(t.then)&&V(t.catch),Es=Object.prototype.toString,Zt=t=>Es.call(t),Ps=t=>Zt(t).slice(8,-1),Ms=t=>Zt(t)==="[object Object]",fe=t=>Ns(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,Z=(t,e)=>!Object.is(t,e);let $e;const ae=()=>$e||($e=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof ze<"u"?ze:{});let y;const Qt=new WeakSet;class As{constructor(e){this.fn=e,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Qt.has(this)&&(Qt.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||ni(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,Ie(this),si(this);const e=y,i=A;y=this,A=!0;try{return this.fn()}finally{ai(this),y=e,A=i,this.flags&=-3}}stop(){if(this.flags&1){for(let e=this.deps;e;e=e.nextDep)me(e);this.deps=this.depsTail=void 0,Ie(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Qt.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){oe(this)&&this.run()}get dirty(){return oe(this)}}let ii=0,vt,gt;function ni(t,e=!1){if(t.flags|=8,e){t.next=gt,gt=t;return}t.next=vt,vt=t}function ve(){ii++}function ge(){if(--ii>0)return;if(gt){let e=gt;for(gt=void 0;e;){const i=e.next;e.next=void 0,e.flags&=-9,e=i}}let t;for(;vt;){let e=vt;for(vt=void 0;e;){const i=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(n){t||(t=n)}e=i}}if(t)throw t}function si(t){for(let e=t.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function ai(t){let e,i=t.depsTail,n=i;for(;n;){const s=n.prevDep;n.version===-1?(n===i&&(i=s),me(n),Ls(n)):e=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=s}t.deps=e,t.depsTail=i}function oe(t){for(let e=t.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&(oi(e.dep.computed)||e.dep.version!==e.version))return!0;return!!t._dirty}function oi(t){if(t.flags&4&&!(t.flags&16)||(t.flags&=-17,t.globalVersion===xt))return;t.globalVersion=xt;const e=t.dep;if(t.flags|=2,e.version>0&&!t.isSSR&&t.deps&&!oe(t)){t.flags&=-3;return}const i=y,n=A;y=t,A=!0;try{si(t);const s=t.fn(t._value);(e.version===0||Z(s,t._value))&&(t._value=s,e.version++)}catch(s){throw e.version++,s}finally{y=i,A=n,ai(t),t.flags&=-3}}function me(t,e=!1){const{dep:i,prevSub:n,nextSub:s}=t;if(n&&(n.nextSub=s,t.prevSub=void 0),s&&(s.prevSub=n,t.nextSub=void 0),i.subs===t&&(i.subs=n,!n&&i.computed)){i.computed.flags&=-5;for(let a=i.computed.deps;a;a=a.nextDep)me(a,!0)}!e&&!--i.sc&&i.map&&i.map.delete(i.key)}function Ls(t){const{prevDep:e,nextDep:i}=t;e&&(e.nextDep=i,t.prevDep=void 0),i&&(i.prevDep=e,t.nextDep=void 0)}let A=!0;const ri=[];function qt(){ri.push(A),A=!1}function Kt(){const t=ri.pop();A=t===void 0?!0:t}function Ie(t){const{cleanup:e}=t;if(t.cleanup=void 0,e){const i=y;y=void 0;try{e()}finally{y=i}}}let xt=0;class Os{constructor(e,i){this.sub=e,this.dep=i,this.version=i.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ye{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(e){if(!y||!A||y===this.computed)return;let i=this.activeLink;if(i===void 0||i.sub!==y)i=this.activeLink=new Os(y,this),y.deps?(i.prevDep=y.depsTail,y.depsTail.nextDep=i,y.depsTail=i):y.deps=y.depsTail=i,li(i);else if(i.version===-1&&(i.version=this.version,i.nextDep)){const n=i.nextDep;n.prevDep=i.prevDep,i.prevDep&&(i.prevDep.nextDep=n),i.prevDep=y.depsTail,i.nextDep=void 0,y.depsTail.nextDep=i,y.depsTail=i,y.deps===i&&(y.deps=n)}return i}trigger(e){this.version++,xt++,this.notify(e)}notify(e){ve();try{for(let i=this.subs;i;i=i.prevSub)i.sub.notify()&&i.sub.dep.notify()}finally{ge()}}}function li(t){if(t.dep.sc++,t.sub.flags&4){const e=t.dep.computed;if(e&&!t.dep.subs){e.flags|=20;for(let n=e.deps;n;n=n.nextDep)li(n)}const i=t.dep.subs;i!==t&&(t.prevSub=i,i&&(i.nextSub=t)),t.dep.subs=t}}const re=new WeakMap,Q=Symbol(""),le=Symbol(""),St=Symbol("");function z(t,e,i){if(A&&y){let n=re.get(t);n||re.set(t,n=new Map);let s=n.get(i);s||(n.set(i,s=new ye),s.map=n,s.key=i),s.track()}}function U(t,e,i,n,s,a){const o=re.get(t);if(!o){xt++;return}const r=l=>{l&&l.trigger()};if(ve(),e==="clear")o.forEach(r);else{const l=M(t),p=l&&fe(i);if(l&&i==="length"){const c=Number(n);o.forEach((u,d)=>{(d==="length"||d===St||!Et(d)&&d>=c)&&r(u)})}else switch((i!==void 0||o.has(void 0))&&r(o.get(i)),p&&r(o.get(St)),e){case"add":l?p&&r(o.get("length")):(r(o.get(Q)),ft(t)&&r(o.get(le)));break;case"delete":l||(r(o.get(Q)),ft(t)&&r(o.get(le)));break;case"set":ft(t)&&r(o.get(Q));break}}ge()}function st(t){const e=m(t);return e===t?e:(z(e,"iterate",St),L(t)?e:e.map(k))}function _e(t){return z(t=m(t),"iterate",St),t}const Ts={__proto__:null,[Symbol.iterator](){return te(this,Symbol.iterator,k)},concat(...t){return st(this).concat(...t.map(e=>M(e)?st(e):e))},entries(){return te(this,"entries",t=>(t[1]=k(t[1]),t))},every(t,e){return $(this,"every",t,e,void 0,arguments)},filter(t,e){return $(this,"filter",t,e,i=>i.map(k),arguments)},find(t,e){return $(this,"find",t,e,k,arguments)},findIndex(t,e){return $(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return $(this,"findLast",t,e,k,arguments)},findLastIndex(t,e){return $(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return $(this,"forEach",t,e,void 0,arguments)},includes(...t){return ee(this,"includes",t)},indexOf(...t){return ee(this,"indexOf",t)},join(t){return st(this).join(t)},lastIndexOf(...t){return ee(this,"lastIndexOf",t)},map(t,e){return $(this,"map",t,e,void 0,arguments)},pop(){return dt(this,"pop")},push(...t){return dt(this,"push",t)},reduce(t,...e){return Be(this,"reduce",t,e)},reduceRight(t,...e){return Be(this,"reduceRight",t,e)},shift(){return dt(this,"shift")},some(t,e){return $(this,"some",t,e,void 0,arguments)},splice(...t){return dt(this,"splice",t)},toReversed(){return st(this).toReversed()},toSorted(t){return st(this).toSorted(t)},toSpliced(...t){return st(this).toSpliced(...t)},unshift(...t){return dt(this,"unshift",t)},values(){return te(this,"values",k)}};function te(t,e,i){const n=_e(t),s=n[e]();return n!==t&&!L(t)&&(s._next=s.next,s.next=()=>{const a=s._next();return a.value&&(a.value=i(a.value)),a}),s}const $s=Array.prototype;function $(t,e,i,n,s,a){const o=_e(t),r=o!==t&&!L(t),l=o[e];if(l!==$s[e]){const u=l.apply(t,a);return r?k(u):u}let p=i;o!==t&&(r?p=function(u,d){return i.call(this,k(u),d,t)}:i.length>2&&(p=function(u,d){return i.call(this,u,d,t)}));const c=l.call(o,p,n);return r&&s?s(c):c}function Be(t,e,i,n){const s=_e(t);let a=i;return s!==t&&(L(t)?i.length>3&&(a=function(o,r,l){return i.call(this,o,r,l,t)}):a=function(o,r,l){return i.call(this,o,k(r),l,t)}),s[e](a,...n)}function ee(t,e,i){const n=m(t);z(n,"iterate",St);const s=n[e](...i);return(s===-1||s===!1)&&Js(i[0])?(i[0]=m(i[0]),n[e](...i)):s}function dt(t,e,i=[]){qt(),ve();const n=m(t)[e].apply(t,i);return ge(),Kt(),n}const Is=ws("__proto__,__v_isRef,__isVue"),ci=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(Et));function Bs(t){Et(t)||(t=String(t));const e=m(this);return z(e,"has",t),e.hasOwnProperty(t)}class ui{constructor(e=!1,i=!1){this._isReadonly=e,this._isShallow=i}get(e,i,n){if(i==="__v_skip")return e.__v_skip;const s=this._isReadonly,a=this._isShallow;if(i==="__v_isReactive")return!s;if(i==="__v_isReadonly")return s;if(i==="__v_isShallow")return a;if(i==="__v_raw")return n===(s?a?Ks:hi:a?qs:di).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const o=M(e);if(!s){let l;if(o&&(l=Ts[i]))return l;if(i==="hasOwnProperty")return Bs}const r=Reflect.get(e,i,O(e)?e:n);return(Et(i)?ci.has(i):Is(i))||(s||z(e,"get",i),a)?r:O(r)?o&&fe(i)?r:r.value:ct(r)?s?fi(r):wt(r):r}}class Rs extends ui{constructor(e=!1){super(!1,e)}set(e,i,n,s){let a=e[i];if(!this._isShallow){const l=tt(a);if(!L(n)&&!tt(n)&&(a=m(a),n=m(n)),!M(e)&&O(a)&&!O(n))return l?!1:(a.value=n,!0)}const o=M(e)&&fe(i)?Number(i)t,Mt=t=>Reflect.getPrototypeOf(t);function Fs(t,e,i){return function(...n){const s=this.__v_raw,a=m(s),o=ft(a),r=t==="entries"||t===Symbol.iterator&&o,l=t==="keys"&&o,p=s[t](...n),c=i?ce:e?ue:k;return!e&&z(a,"iterate",l?le:Q),{next(){const{value:u,done:d}=p.next();return d?{value:u,done:d}:{value:r?[c(u[0]),c(u[1])]:c(u),done:d}},[Symbol.iterator](){return this}}}}function At(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function Us(t,e){const i={get(n){const s=this.__v_raw,a=m(s),o=m(n);t||(Z(n,o)&&z(a,"get",n),z(a,"get",o));const{has:r}=Mt(a),l=e?ce:t?ue:k;if(r.call(a,n))return l(s.get(n));if(r.call(a,o))return l(s.get(o));s!==a&&s.get(n)},get size(){const n=this.__v_raw;return!t&&z(m(n),"iterate",Q),Reflect.get(n,"size",n)},has(n){const s=this.__v_raw,a=m(s),o=m(n);return t||(Z(n,o)&&z(a,"has",n),z(a,"has",o)),n===o?s.has(n):s.has(n)||s.has(o)},forEach(n,s){const a=this,o=a.__v_raw,r=m(o),l=e?ce:t?ue:k;return!t&&z(r,"iterate",Q),o.forEach((p,c)=>n.call(s,l(p),l(c),a))}};return ei(i,t?{add:At("add"),set:At("set"),delete:At("delete"),clear:At("clear")}:{add(n){!e&&!L(n)&&!tt(n)&&(n=m(n));const s=m(this);return Mt(s).has.call(s,n)||(s.add(n),U(s,"add",n,n)),this},set(n,s){!e&&!L(s)&&!tt(s)&&(s=m(s));const a=m(this),{has:o,get:r}=Mt(a);let l=o.call(a,n);l||(n=m(n),l=o.call(a,n));const p=r.call(a,n);return a.set(n,s),l?Z(s,p)&&U(a,"set",n,s):U(a,"add",n,s),this},delete(n){const s=m(this),{has:a,get:o}=Mt(s);let r=a.call(s,n);r||(n=m(n),r=a.call(s,n)),o&&o.call(s,n);const l=s.delete(n);return r&&U(s,"delete",n,void 0),l},clear(){const n=m(this),s=n.size!==0,a=n.clear();return s&&U(n,"clear",void 0,void 0),a}}),["keys","values","entries",Symbol.iterator].forEach(n=>{i[n]=Fs(n,t,e)}),i}function pi(t,e){const i=Us(t,e);return(n,s,a)=>s==="__v_isReactive"?!t:s==="__v_isReadonly"?t:s==="__v_raw"?n:Reflect.get(se(i,s)&&s in n?i:n,s,a)}const Ws={get:pi(!1,!1)},Zs={get:pi(!0,!1)},di=new WeakMap,qs=new WeakMap,hi=new WeakMap,Ks=new WeakMap;function Gs(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Xs(t){return t.__v_skip||!Object.isExtensible(t)?0:Gs(Ps(t))}function wt(t){return tt(t)?t:vi(t,!1,Hs,Ws,di)}function fi(t){return vi(t,!0,js,Zs,hi)}function vi(t,e,i,n,s){if(!ct(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const a=s.get(t);if(a)return a;const o=Xs(t);if(o===0)return t;const r=new Proxy(t,o===2?n:i);return s.set(t,r),r}function It(t){return tt(t)?It(t.__v_raw):!!(t&&t.__v_isReactive)}function tt(t){return!!(t&&t.__v_isReadonly)}function L(t){return!!(t&&t.__v_isShallow)}function Js(t){return t?!!t.__v_raw:!1}function m(t){const e=t&&t.__v_raw;return e?m(e):t}const k=t=>ct(t)?wt(t):t,ue=t=>ct(t)?fi(t):t;function O(t){return t?t.__v_isRef===!0:!1}function gi(t){return mi(t,!1)}function mt(t){return mi(t,!0)}function mi(t,e){return O(t)?t:new Ys(t,e)}class Ys{constructor(e,i){this.dep=new ye,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=i?e:m(e),this._value=i?e:k(e),this.__v_isShallow=i}get value(){return this.dep.track(),this._value}set value(e){const i=this._rawValue,n=this.__v_isShallow||L(e)||tt(e);e=n?e:m(e),Z(e,i)&&(this._rawValue=e,this._value=n?e:k(e),this.dep.trigger())}}function yi(t){return O(t)?t.value:t}function w(t){return V(t)?t():yi(t)}class Qs{constructor(e,i,n){this.fn=e,this.setter=i,this._value=void 0,this.dep=new ye(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=xt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!i,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&y!==this)return ni(this,!0),!0}get value(){const e=this.dep.track();return oi(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function ta(t,e,i=!1){let n,s;return V(t)?n=t:(n=t.get,s=t.set),new Qs(n,s,i)}const Lt={},Ht=new WeakMap;let J;function ea(t,e=!1,i=J){if(i){let n=Ht.get(i);n||Ht.set(i,n=[]),n.push(t)}}function ia(t,e,i=he){const{immediate:n,deep:s,once:a,scheduler:o,augmentJob:r,call:l}=i,p=f=>s?f:L(f)||s===!1||s===0?W(f,1):W(f);let c,u,d,h,g=!1,_=!1;if(O(t)?(u=()=>t.value,g=L(t)):It(t)?(u=()=>p(t),g=!0):M(t)?(_=!0,g=t.some(f=>It(f)||L(f)),u=()=>t.map(f=>{if(O(f))return f.value;if(It(f))return p(f);if(V(f))return l?l(f,2):f()})):V(t)?e?u=l?()=>l(t,2):t:u=()=>{if(d){qt();try{d()}finally{Kt()}}const f=J;J=c;try{return l?l(t,3,[h]):t(h)}finally{J=f}}:u=$t,e&&s){const f=u,D=s===!0?1/0:s;u=()=>W(f(),D)}const C=()=>{c.stop()};if(a&&e){const f=e;e=(...D)=>{f(...D),C()}}let b=_?new Array(t.length).fill(Lt):Lt;const S=f=>{if(!(!(c.flags&1)||!c.dirty&&!f))if(e){const D=c.run();if(s||g||(_?D.some((q,K)=>Z(q,b[K])):Z(D,b))){d&&d();const q=J;J=c;try{const K=[D,b===Lt?void 0:_&&b[0]===Lt?[]:b,h];l?l(e,3,K):e(...K),b=D}finally{J=q}}}else c.run()};return r&&r(S),c=new As(u),c.scheduler=o?()=>o(S,!1):S,h=f=>ea(f,!1,c),d=c.onStop=()=>{const f=Ht.get(c);if(f){if(l)l(f,4);else for(const D of f)D();Ht.delete(c)}},e?n?S(!0):b=c.run():o?o(S.bind(null,!0),!0):c.run(),C.pause=c.pause.bind(c),C.resume=c.resume.bind(c),C.stop=C,C}function W(t,e=1/0,i){if(e<=0||!ct(t)||t.__v_skip||(i=i||new Set,i.has(t)))return t;if(i.add(t),e--,O(t))W(t.value,e,i);else if(M(t))for(let n=0;n{W(n,e,i)});else if(Ms(t)){for(const n in t)W(t[n],e,i);for(const n of Object.getOwnPropertySymbols(t))Object.prototype.propertyIsEnumerable.call(t,n)&&W(t[n],e,i)}return t}function Ce(t,e,i,n){try{return n?t(...n):t()}catch(s){_i(s,e,i)}}function be(t,e,i,n){if(V(t)){const s=Ce(t,e,i,n);return s&&Ds(s)&&s.catch(a=>{_i(a,e,i)}),s}if(M(t)){const s=[];for(let a=0;a>>1,s=P[n],a=kt(s);a=kt(i)?P.push(t):P.splice(sa(e),0,t),t.flags|=1,bi()}}function bi(){jt||(jt=Ci.then(xi))}function oa(t){M(t)?rt.push(...t):F&&t.id===-1?F.splice(ot+1,0,t):t.flags&1||(rt.push(t),t.flags|=1),bi()}function ra(t){if(rt.length){const e=[...new Set(rt)].sort((i,n)=>kt(i)-kt(n));if(rt.length=0,F){F.push(...e);return}for(F=e,ot=0;ott.id==null?t.flags&2?-1:1/0:t.id;function xi(t){try{for(I=0;I{qt();const r=ma(i),l=be(e,i,t,o);return r(),Kt(),l});return n?s.unshift(a):s.push(a),a}}const wi=t=>(e,i=nt)=>{(!zt||t==="sp")&&la(t,(...n)=>e(...n),i)},ki=wi("m"),ca=wi("um");let ua=null;function pa(t,e,i=!1){const n=nt||Si;if(n||ua){const s=n?n.parent==null?n.vnode.appContext&&n.vnode.appContext.provides:n.parent.provides:void 0;if(s&&t in s)return s[t];if(arguments.length>1)return i&&V(e)?e.call(n&&n.proxy):e}}const da=ga,ha=Symbol.for("v-scx"),fa=()=>pa(ha);function Gt(t,e,i){return va(t,e,i)}function va(t,e,i=he){const{immediate:n,deep:s,flush:a,once:o}=i,r=ei({},i),l=e&&n||!e&&a!=="post";let p;if(zt){if(a==="sync"){const h=fa();p=h.__watcherHandles||(h.__watcherHandles=[])}else if(!l){const h=()=>{};return h.stop=$t,h.resume=$t,h.pause=$t,h}}const c=nt;r.call=(h,g,_)=>be(h,c,g,_);let u=!1;a==="post"?r.scheduler=h=>{da(h,c&&c.suspense)}:a!=="sync"&&(u=!0,r.scheduler=(h,g)=>{g?h():aa(h)}),r.augmentJob=h=>{e&&(h.flags|=4),u&&(h.flags|=2,c&&(h.id=c.uid,h.i=c))};const d=ia(t,e,r);return zt&&(p?p.push(d):l&&d()),d}function ga(t,e){e&&e.pendingBranch?M(t)?e.effects.push(...t):e.effects.push(t):oa(t)}let nt=null;const zi=()=>nt||Si;let pe;{const t=ae(),e=(i,n)=>{let s;return(s=t[i])||(s=t[i]=[]),s.push(n),a=>{s.length>1?s.forEach(o=>o(a)):s[0](a)}};pe=e("__VUE_INSTANCE_SETTERS__",i=>nt=i),e("__VUE_SSR_SETTERS__",i=>zt=i)}const ma=t=>{const e=nt;return pe(t),t.scope.on(),()=>{t.scope.off(),pe(e)}};let zt=!1;const et=(t,e)=>ta(t,e,zt),ya=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const _a=t=>t!=null,Ca=Object.prototype.toString,ba=t=>Ca.call(t)==="[object Object]",H=()=>{};function Ni(t,e){function i(...n){return new Promise((s,a)=>{Promise.resolve(t(()=>e.apply(this,n),{fn:e,thisArg:this,args:n})).then(s).catch(a)})}return i}function xa(t,e={}){let i,n,s=H;const a=r=>{clearTimeout(r),s(),s=H};let o;return r=>{const l=w(t),p=w(e.maxWait);return i&&a(i),l<=0||p!==void 0&&p<=0?(n&&(a(n),n=null),Promise.resolve(r())):new Promise((c,u)=>{s=e.rejectOnCancel?u:c,o=r,p&&!n&&(n=setTimeout(()=>{i&&a(i),n=null,c(o())},p)),i=setTimeout(()=>{n&&a(n),n=null,c(r())},l)})}}function Sa(...t){let e=0,i,n=!0,s=H,a,o,r,l,p;!O(t[0])&&typeof t[0]=="object"?{delay:o,trailing:r=!0,leading:l=!0,rejectOnCancel:p=!1}=t[0]:[o,r=!0,l=!0,p=!1]=t;const c=()=>{i&&(clearTimeout(i),i=void 0,s(),s=H)};return u=>{const d=w(o),h=Date.now()-e,g=()=>a=u();return c(),d<=0?(e=Date.now(),g()):(h>d&&(l||!n)?(e=Date.now(),g()):r&&(a=new Promise((_,C)=>{s=p?C:_,i=setTimeout(()=>{e=Date.now(),n=!0,_(g()),c()},Math.max(0,d-h))})),!l&&!i&&(i=setTimeout(()=>n=!0,d)),n=!1,a)}}function Di(t){return zi()}function Bt(t){return Array.isArray(t)?t:[t]}function wa(t,e=200,i={}){return Ni(xa(e,i),t)}function ka(t,e=200,i=!1,n=!0,s=!1){return Ni(Sa(e,i,n,s),t)}function za(t,e=!0,i){Di()?ki(t,i):e?t():Ft(t)}function Na(t,e){Di()&&ca(t,e)}function Da(t,e,i){return Gt(t,e,{...i,immediate:!0})}function Ea(t,e,i){const n=Gt(t,(...s)=>(Ft(()=>n()),e(...s)),i);return n}const Xt=ya?window:void 0;function yt(t){var e;const i=w(t);return(e=i==null?void 0:i.$el)!=null?e:i}function Re(...t){const e=[],i=()=>{e.forEach(o=>o()),e.length=0},n=(o,r,l,p)=>(o.addEventListener(r,l,p),()=>o.removeEventListener(r,l,p)),s=et(()=>{const o=Bt(w(t[0])).filter(r=>r!=null);return o.every(r=>typeof r!="string")?o:void 0}),a=Da(()=>{var o,r;return[(r=(o=s.value)==null?void 0:o.map(l=>yt(l)))!=null?r:[Xt].filter(l=>l!=null),Bt(w(s.value?t[1]:t[0])),Bt(yi(s.value?t[2]:t[1])),w(s.value?t[3]:t[2])]},([o,r,l,p])=>{if(i(),!(o!=null&&o.length)||!(r!=null&&r.length)||!(l!=null&&l.length))return;const c=ba(p)?{...p}:p;e.push(...o.flatMap(u=>r.flatMap(d=>l.map(h=>n(u,d,h,c)))))},{flush:"post"});return()=>{a(),i()}}function Pa(){const t=mt(!1),e=zi();return e&&ki(()=>{t.value=!0},e),t}function Ma(t){const e=Pa();return et(()=>(e.value,!!t()))}function Aa(t,e,i={}){const{root:n,rootMargin:s="0px",threshold:a=0,window:o=Xt,immediate:r=!0}=i,l=Ma(()=>o&&"IntersectionObserver"in o),p=et(()=>{const h=w(t);return Bt(h).map(yt).filter(_a)});let c=H;const u=gi(r),d=l.value?Gt(()=>[p.value,yt(n),u.value],([h,g])=>{if(c(),!u.value||!h.length)return;const _=new IntersectionObserver(e,{root:yt(g),rootMargin:s,threshold:a});h.forEach(C=>C&&_.observe(C)),c=()=>{_.disconnect(),c=H}},{immediate:r,flush:"post"}):H;return{isSupported:l,isActive:u,pause(){c(),u.value=!1},resume(){u.value=!0},stop:()=>{c(),d(),u.value=!1}}}function La(t,e={}){const{window:i=Xt,scrollTarget:n,threshold:s=0,rootMargin:a,once:o=!1}=e,r=mt(!1),{stop:l}=Aa(t,p=>{let c=r.value,u=0;for(const d of p)d.time>=u&&(u=d.time,c=d.isIntersecting);r.value=c,o&&Ea(r,()=>{l()})},{root:n,window:i,threshold:s,rootMargin:w(a)});return r}function Oa(t){return typeof Window<"u"&&t instanceof Window?t.document.documentElement:typeof Document<"u"&&t instanceof Document?t.documentElement:t}const Ve=1;function Ta(t,e={}){const{throttle:i=0,idle:n=200,onStop:s=H,onScroll:a=H,offset:o={left:0,right:0,top:0,bottom:0},eventListenerOptions:r={capture:!1,passive:!0},behavior:l="auto",window:p=Xt,onError:c=v=>{console.error(v)}}=e,u=mt(0),d=mt(0),h=et({get(){return u.value},set(v){_(v,void 0)}}),g=et({get(){return d.value},set(v){_(void 0,v)}});function _(v,G){var E,ut,pt,Pt;if(!p)return;const N=w(t);if(!N)return;(pt=N instanceof Document?p.document.body:N)==null||pt.scrollTo({top:(E=w(G))!=null?E:g.value,left:(ut=w(v))!=null?ut:h.value,behavior:w(l)});const j=((Pt=N==null?void 0:N.document)==null?void 0:Pt.documentElement)||(N==null?void 0:N.documentElement)||N;h!=null&&(u.value=j.scrollLeft),g!=null&&(d.value=j.scrollTop)}const C=mt(!1),b=wt({left:!0,right:!1,top:!0,bottom:!1}),S=wt({left:!1,right:!1,top:!1,bottom:!1}),f=v=>{C.value&&(C.value=!1,S.left=!1,S.right=!1,S.top=!1,S.bottom=!1,s(v))},D=wa(f,i+n),q=v=>{var G;if(!p)return;const E=((G=v==null?void 0:v.document)==null?void 0:G.documentElement)||(v==null?void 0:v.documentElement)||yt(v),{display:ut,flexDirection:pt,direction:Pt}=getComputedStyle(E),N=Pt==="rtl"?-1:1,j=E.scrollLeft;S.left=ju.value;const xe=j*N<=(o.left||0),Se=j*N+E.clientWidth>=E.scrollWidth-(o.right||0)-Ve;ut==="flex"&&pt==="row-reverse"?(b.left=Se,b.right=xe):(b.left=xe,b.right=Se),u.value=j;let X=E.scrollTop;v===p.document&&!X&&(X=p.document.body.scrollTop),S.top=Xd.value;const we=X<=(o.top||0),ke=X+E.clientHeight>=E.scrollHeight-(o.bottom||0)-Ve;ut==="flex"&&pt==="column-reverse"?(b.top=ke,b.bottom=we):(b.top=we,b.bottom=ke),d.value=X},K=v=>{var G;if(!p)return;const E=(G=v.target.documentElement)!=null?G:v.target;q(E),C.value=!0,D(v),a(v)};return Re(t,"scroll",i?ka(K,i,!0,!1):K,r),za(()=>{try{const v=w(t);if(!v)return;q(v)}catch(v){c(v)}}),Re(t,"scrollend",f,r),{x:h,y:g,isScrolling:C,arrivedState:b,directions:S,measure(){const v=w(t);p&&v&&q(v)}}}function $a(t,e,i={}){var n;const{direction:s="bottom",interval:a=100,canLoadMore:o=()=>!0}=i,r=wt(Ta(t,{...i,offset:{[s]:(n=i.distance)!=null?n:0,...i.offset}})),l=gi(),p=et(()=>!!l.value),c=et(()=>Oa(w(t))),u=La(c);function d(){if(r.measure(),!c.value||!u.value||!o(c.value))return;const{scrollHeight:g,clientHeight:_,scrollWidth:C,clientWidth:b}=c.value,S=s==="bottom"||s==="top"?g<=_:C<=b;(r.arrivedState[s]||S)&&(l.value||(l.value=Promise.all([e(r),new Promise(f=>setTimeout(f,a))]).finally(()=>{l.value=null,Ft(()=>d())})))}const h=Gt(()=>[r.arrivedState[s],u.value],d,{immediate:!0});return Na(h),{isLoading:p,reset(){Ft(()=>d())}}}function Ia(){var t=Ei().proxy.$root;if(!t._$route){var e=Pi(!0).run(function(){return Mi(Object.assign({},t.$router.currentRoute))});t._$route=e,t.$router.afterEach(function(i){Object.assign(e,i)})}return t._$route}const Ba=Ut({__name:"ActivityAppFeed",props:{filter:{default:"all"}},setup(t){const e=t,i=ne(Rt,"navigationList"),n=Ia(),s=at(!1),a=at(!0),o=at([]),r=at(),l=at();$a(l,async()=>{a.value&&await u()},{distance:100});const p=_t(()=>{const d={};for(const h of o.value){const g=ht(h.datetime).format("LL");d[g]===void 0?d[g]=[h]:d[g].push(h)}return d}),c=_t(()=>i.find(d=>d.id===n.params.filter).name);async function u(){var d,h;if(!s.value)try{const g=(d=r.value)!=null?d:"0";s.value=!0;const _=await We.get(Xi("apps/activity/api/v2/activity/{filter}?format=json&previews=true&since={since}",{filter:e.filter,since:g}));o.value.push(..._.data.ocs.data.map(C=>new Ii(C))),r.value=_.headers["x-activity-last-given"],a.value=!0}catch(g){if(Ji.isAxiosError(g)&&((h=g.response)==null?void 0:h.status)===304){a.value=!1;return}ie.error(g),qe(B("activity","Could not load activities"))}finally{s.value=!1}}return Ai(()=>{u()}),Li(e,()=>{o.value=[],r.value=void 0,u()}),{__sfc:!0,navigationList:i,route:n,props:e,loading:s,hasMoreActivites:a,allActivities:o,lastActivityLoaded:r,container:l,groupedActivities:p,headingTitle:c,loadActivities:u,NcAppContent:ns,NcIconSvgWrapper:He,NcEmptyContent:$i,NcLoadingIcon:Ue,ActivityGroup:xs,appIconSVG:Ss,t:B}}});var Ra=function(){var t=this,e=t._self._c,i=t._self._setupProxy;return e(i.NcAppContent,{staticClass:"activity-app"},[e("h1",{staticClass:"activity-app__heading"},[t._v(" "+t._s(i.headingTitle)+" ")]),i.hasMoreActivites&&i.allActivities.length===0?e(i.NcEmptyContent,{staticClass:"activity-app__empty-content",attrs:{name:i.t("activity","Loading activities"),description:i.t("activity","This stream will show events like additions, changes & shares")},scopedSlots:t._u([{key:"icon",fn:function(){return[e(i.NcLoadingIcon,{attrs:{size:36}})]},proxy:!0}],null,!1,3043861167)}):i.allActivities.length===0?e(i.NcEmptyContent,{staticClass:"activity-app__empty-content",attrs:{name:i.t("activity","No activity yet"),description:i.t("activity","This stream will show events like additions, changes & shares")},scopedSlots:t._u([{key:"icon",fn:function(){return[e(i.NcIconSvgWrapper,{attrs:{svg:i.appIconSVG,size:36}})]},proxy:!0}])}):t._e(),e("div",{ref:"container",staticClass:"activity-app__container"},[t._l(i.groupedActivities,function(n,s){return e(i.ActivityGroup,{key:s,attrs:{activities:n}})}),i.hasMoreActivites&&i.allActivities.length>0?e(i.NcLoadingIcon,{staticClass:"activity-app__loading-indicator",attrs:{name:i.t("activity","Loading more activities"),size:64}}):!i.hasMoreActivites&&i.allActivities.length>0?e("div",{staticClass:"activity-app__loading-indicator"},[t._v(" "+t._s(i.t("activity","No more activities."))+" ")]):t._e()],2)],1)},Va=[],Ha=Dt(Ba,Ra,Va,!1,null,"6798da20");const ja=Ha.exports,Fa={name:"NcAppNavigationList"};var Ua=function(){var t=this,e=t._self._c;return e("ul",{staticClass:"app-navigation-list"},[t._t("default")],2)},Wa=[],Za=x(Fa,Ua,Wa,!1,null,"058e6060");const qa=Za.exports;it(Yi);const Ka={name:"MenuIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Ga=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon menu-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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:"M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},Xa=[],Ja=x(Ka,Ga,Xa,!1,null,null);const Ya=Ja.exports,Qa={name:"MenuOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var to=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon menu-open-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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:"M21,15.61L19.59,17L14.58,12L19.59,7L21,8.39L17.44,12L21,15.61M3,6H16V8H3V6M3,13V11H13V13H3M3,18V16H16V18H3Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},eo=[],io=x(Qa,to,eo,!1,null,null);const no=io.exports,so={name:"NcAppNavigationToggle",components:{NcButton:lt,MenuIcon:Ya,MenuOpenIcon:no},props:{open:{type:Boolean,required:!0}},emits:["update:open"],computed:{label(){return this.open?T("Close navigation"):T("Open navigation")}},methods:{toggleNavigation(){this.$emit("update:open",!this.open)}}};var ao=function(){var t=this,e=t._self._c;return e("div",{staticClass:"app-navigation-toggle-wrapper"},[e("NcButton",{staticClass:"app-navigation-toggle",attrs:{type:"tertiary","aria-expanded":t.open?"true":"false","aria-label":t.label,title:t.label,"aria-controls":"app-navigation-vue"},on:{click:t.toggleNavigation},scopedSlots:t._u([{key:"icon",fn:function(){return[t.open?e("MenuOpenIcon",{attrs:{size:20}}):e("MenuIcon",{attrs:{size:20}})]},proxy:!0}])})],1)},oo=[],ro=x(so,ao,oo,!1,null,"b6024aba");const lo=ro.exports,co={name:"NcAppNavigation",components:{NcAppNavigationList:qa,NcAppNavigationToggle:lo},inject:{setHasAppNavigation:{default:()=>()=>R.util.warn("NcAppNavigation is not mounted inside NcContent, this is probably an error."),from:"NcContent:setHasAppNavigation"}},props:{ariaLabel:{type:String,default:""},ariaLabelledby:{type:String,default:""}},setup(){return{isMobile:Nt()}},data(){return{open:!this.isMobile,focusTrap:null}},watch:{isMobile(){this.open=!this.isMobile,this.toggleFocusTrap()},open(){this.toggleFocusTrap()}},mounted(){this.setHasAppNavigation(!0),Ui("toggle-navigation",this.toggleNavigationByEventBus),Y("navigation-toggled",{open:this.open}),this.focusTrap=Qi(this.$refs.appNavigationContainer,{allowOutsideClick:!0,fallbackFocus:this.$refs.appNavigationContainer,trapStack:tn(),escapeDeactivates:!1}),this.toggleFocusTrap()},unmounted(){this.setHasAppNavigation(!1),Wi("toggle-navigation",this.toggleNavigationByEventBus),this.focusTrap.deactivate()},methods:{toggleNavigation(t){if(this.open===t){Y("navigation-toggled",{open:this.open});return}this.open=typeof t>"u"?!this.open:t;const e=getComputedStyle(document.body),i=parseInt(e.getPropertyValue("--animation-quick"))||100;setTimeout(()=>{Y("navigation-toggled",{open:this.open})},1.5*i)},toggleNavigationByEventBus({open:t}){this.toggleNavigation(t)},toggleFocusTrap(){this.isMobile&&this.open?this.focusTrap.activate():this.focusTrap.deactivate()},handleEsc(){this.isMobile&&this.toggleNavigation(!1)}}};var uo=function(){var t=this,e=t._self._c;return e("div",{ref:"appNavigationContainer",staticClass:"app-navigation",class:{"app-navigation--close":!t.open}},[e("nav",{staticClass:"app-navigation__content",attrs:{id:"app-navigation-vue","aria-hidden":t.open?"false":"true","aria-label":t.ariaLabel||void 0,"aria-labelledby":t.ariaLabelledby||void 0,inert:!t.open||void 0},on:{keydown:function(i){return!i.type.indexOf("key")&&t._k(i.keyCode,"esc",27,i.key,["Esc","Escape"])?null:t.handleEsc.apply(null,arguments)}}},[e("div",{staticClass:"app-navigation__search"},[t._t("search")],2),e("div",{staticClass:"app-navigation__body",class:{"app-navigation__body--no-list":!t.$scopedSlots.list}},[t._t("default")],2),t.$scopedSlots.list?e("NcAppNavigationList",{staticClass:"app-navigation__list"},[t._t("list")],2):t._e(),t._t("footer")],2),e("NcAppNavigationToggle",{attrs:{open:t.open},on:{"update:open":t.toggleNavigation}})],1)},po=[],ho=x(co,uo,po,!1,null,"e7d078cc");const fo=ho.exports,vo={name:"NcActionButton",components:{CheckIcon:Bi,ChevronRightIcon:en},mixins:[Ri],inject:{isInSemanticMenu:{from:"NcActions:isSemanticMenu",default:!1}},props:{ariaHidden:{type:Boolean,default:null},disabled:{type:Boolean,default:!1},isMenu:{type:Boolean,default:!1},type:{type:String,default:"button",validator:t=>["button","checkbox","radio","reset","submit"].includes(t)},modelValue:{type:[Boolean,String],default:null},value:{type:String,default:null}},computed:{isFocusable(){return!this.disabled},isChecked(){return this.type==="radio"&&typeof this.modelValue!="boolean"?this.modelValue===this.value:this.modelValue},nativeType(){return this.type==="submit"||this.type==="reset"?this.type:"button"},buttonAttributes(){const t={};return this.isInSemanticMenu?(t.role="menuitem",this.type==="radio"?(t.role="menuitemradio",t["aria-checked"]=this.isChecked?"true":"false"):(this.type==="checkbox"||this.nativeType==="button"&&this.modelValue!==null)&&(t.role="menuitemcheckbox",t["aria-checked"]=this.modelValue===null?"mixed":this.modelValue?"true":"false")):this.modelValue!==null&&this.nativeType==="button"&&(t["aria-pressed"]=this.modelValue?"true":"false"),t}},methods:{handleClick(t){this.onClick(t),(this.modelValue!==null||this.type!=="button")&&(this.type==="radio"?typeof this.modelValue!="boolean"?this.isChecked||this.$emit("update:modelValue",this.value):this.$emit("update:modelValue",!this.isChecked):this.$emit("update:modelValue",!this.isChecked))}}};var go=function(){var t=this,e=t._self._c;return e("li",{staticClass:"action",class:{"action--disabled":t.disabled},attrs:{role:t.isInSemanticMenu&&"presentation"}},[e("button",t._b({class:["action-button button-vue",{"action-button--active":t.isChecked,focusable:t.isFocusable}],attrs:{"aria-label":t.ariaLabel,disabled:t.disabled,title:t.title,type:t.nativeType},on:{click:t.handleClick}},"button",t.buttonAttributes,!1),[t._t("icon",function(){return[e("span",{staticClass:"action-button__icon",class:[t.isIconUrl?"action-button__icon--url":t.icon],style:{backgroundImage:t.isIconUrl?"url(".concat(t.icon,")"):null},attrs:{"aria-hidden":"true"}})]}),t.name?e("span",{staticClass:"action-button__longtext-wrapper"},[e("strong",{staticClass:"action-button__name"},[t._v(" "+t._s(t.name)+" ")]),e("br"),e("span",{staticClass:"action-button__longtext",domProps:{textContent:t._s(t.text)}})]):t.isLongText?e("span",{staticClass:"action-button__longtext",domProps:{textContent:t._s(t.text)}}):e("span",{staticClass:"action-button__text"},[t._v(t._s(t.text))]),t.isMenu?e("ChevronRightIcon",{staticClass:"action-button__menu-icon",attrs:{size:20}}):t.isChecked===!0?e("CheckIcon",{staticClass:"action-button__pressed-icon",attrs:{size:20}}):t.isChecked===!1?e("span",{staticClass:"action-button__pressed-icon material-design-icon"}):t._e(),t._e()],2)])},mo=[],yo=x(vo,go,mo,!1,null,"dba65098");const _o=yo.exports,Co={name:"NcVNodes",props:{vnodes:{type:[Array,Object],default:null}},render(t){var e,i,n;return this.vnodes||((e=this.$slots)==null?void 0:e.default)||((n=(i=this.$scopedSlots)==null?void 0:i.default)==null?void 0:n.call(i))}},bo=null,xo=null;var So=x(Co,bo,xo,!1,null,null);const wo=So.exports,ko={name:"ChevronUpIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var zo=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon chevron-up-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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.41,15.41L12,10.83L16.59,15.41L18,14L12,8L6,14L7.41,15.41Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},No=[],Do=x(ko,zo,No,!1,null,null);const Eo=Do.exports;it(nn);const Po={name:"NcInputConfirmCancel",components:{NcButton:lt,ArrowRight:je,Close:sn},props:{primary:{default:!1,type:Boolean},placeholder:{default:"",type:String},value:{default:"",type:String}},emits:["input","confirm","cancel"],data(){return{labelConfirm:T("Confirm changes"),labelCancel:T("Cancel changes")}},computed:{valueModel:{get(){return this.value},set(t){this.$emit("input",t)}}},methods:{confirm(){this.$emit("confirm")},cancel(){this.$emit("cancel")},focusInput(){this.$refs.input.focus()}}};var Mo=function(){var t=this,e=t._self._c;return e("div",{staticClass:"app-navigation-input-confirm"},[e("form",{on:{submit:function(i){return i.preventDefault(),t.confirm.apply(null,arguments)},keydown:function(i){return!i.type.indexOf("key")&&t._k(i.keyCode,"esc",27,i.key,["Esc","Escape"])||i.ctrlKey||i.shiftKey||i.altKey||i.metaKey?null:(i.stopPropagation(),i.preventDefault(),t.cancel.apply(null,arguments))},click:function(i){i.stopPropagation(),i.preventDefault()}}},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.valueModel,expression:"valueModel"}],ref:"input",staticClass:"app-navigation-input-confirm__input",attrs:{type:"text",placeholder:t.placeholder},domProps:{value:t.valueModel},on:{input:function(i){i.target.composing||(t.valueModel=i.target.value)}}}),e("NcButton",{attrs:{"native-type":"submit",type:"primary","aria-label":t.labelConfirm},on:{click:function(i){return i.stopPropagation(),i.preventDefault(),t.confirm.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ArrowRight",{attrs:{size:20}})]},proxy:!0}])}),e("NcButton",{attrs:{"native-type":"reset",type:t.primary?"primary":"tertiary","aria-label":t.labelCancel},on:{click:function(i){return i.stopPropagation(),i.preventDefault(),t.cancel.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Close",{attrs:{size:20}})]},proxy:!0}])})],1)])},Ao=[],Lo=x(Po,Mo,Ao,!1,null,"0e795eb7");const Oo=Lo.exports;it(an);const To={name:"NcAppNavigationIconCollapsible",components:{NcButton:lt,ChevronDown:Vi,ChevronUp:Eo},props:{open:{type:Boolean,default:!0}},emits:["click"],computed:{labelButton(){return this.open?T("Collapse menu"):T("Open menu")}},methods:{onClick(t){this.$emit("click",t)}}};var $o=function(){var t=this,e=t._self._c;return e("NcButton",{staticClass:"icon-collapse",class:{"icon-collapse--open":t.open},attrs:{type:"tertiary","aria-label":t.labelButton},on:{click:t.onClick},scopedSlots:t._u([{key:"icon",fn:function(){return[t.open?e("ChevronUp",{attrs:{size:20}}):e("ChevronDown",{attrs:{size:20}})]},proxy:!0}])})},Io=[],Bo=x(To,$o,Io,!1,null,"cadd59ae");const Ro=Bo.exports;it(rn,on);const Vo={name:"PencilIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Ho=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon pencil-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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:"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"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},jo=[],Fo=x(Vo,Ho,jo,!1,null,null);const Uo=Fo.exports,Wo={name:"UndoIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Zo=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon undo-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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:"M12.5,8C9.85,8 7.45,9 5.6,10.6L2,7V16H11L7.38,12.38C8.77,11.22 10.54,10.5 12.5,10.5C16.04,10.5 19.05,12.81 20.1,16L22.47,15.22C21.08,11.03 17.15,8 12.5,8Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},qo=[],Ko=x(Wo,Zo,qo,!1,null,null);const Go=Ko.exports,Xo={name:"NcAppNavigationItem",components:{NcActions:ln,NcActionButton:_o,NcAppNavigationIconCollapsible:Ro,NcInputConfirmCancel:Oo,NcLoadingIcon:Ue,NcVNodes:wo,Pencil:Uo,Undo:Go},props:{active:{type:Boolean,default:!1},name:{type:String,required:!0},title:{type:String,default:null},id:{type:String,default:()=>"app-navigation-item-"+cn(),validator:t=>t.trim()!==""},icon:{type:String,default:""},loading:{type:Boolean,default:!1},to:{type:[String,Object],default:null},href:{type:String,default:null},exact:{type:Boolean,default:!1},allowCollapse:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},editLabel:{type:String,default:""},editPlaceholder:{type:String,default:""},pinned:{type:Boolean,default:!1},undo:{type:Boolean,default:!1},open:{type:Boolean,default:!1},menuOpen:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},menuIcon:{type:String,default:void 0},menuPlacement:{type:String,default:"bottom"},ariaDescription:{type:String,default:null},forceDisplayActions:{type:Boolean,default:!1},inlineActions:{type:Number,default:0}},emits:["update:menuOpen","update:open","update:name","click","undo"],setup(){return{isMobile:Nt()}},data(){return{editingValue:"",opened:this.open,editingActive:!1,hasChildren:!1,menuOpenLocalValue:!1,focused:!1,collapsible:!1,actionsBoundariesElement:void 0}},computed:{isRouterLink(){return this.to&&!this.href},canHaveChildren(){return this.$parent.$options._componentTag!=="AppNavigationItem"},hasUtils(){return!!(this.$slots.actions||this.$slots.counter||this.editable||this.undo)},editButtonAriaLabel(){return this.editLabel?this.editLabel:T("Edit item")},undoButtonAriaLabel(){return T("Undo changes")}},watch:{open(t){this.opened=t}},mounted(){this.actionsBoundariesElement=document.querySelector("#content-vue")||void 0},created(){this.updateSlotInfo()},beforeUpdate(){this.updateSlotInfo()},methods:{onMenuToggle(t){this.$emit("update:menuOpen",t),this.menuOpenLocalValue=t},toggleCollapse(){this.opened=!this.opened,this.$emit("update:open",this.opened)},onClick(t,e,i){this.$emit("click",t),!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&i&&(e==null||e(t),t.preventDefault())},handleEdit(){this.editingValue=this.name,this.editingActive=!0,this.onMenuToggle(!1),this.$nextTick(()=>{this.$refs.editingInput.focusInput()})},cancelEditing(){this.editingActive=!1},handleEditingDone(){this.$emit("update:name",this.editingValue),this.editingValue="",this.editingActive=!1},handleUndo(){this.$emit("undo")},updateSlotInfo(){this.hasChildren=!!this.$slots.default,this.collapsible=this.allowCollapse&&!!this.$slots.default},handleFocus(){this.focused=!0},handleBlur(){this.focused=!1},handleTab(t){this.$refs.actions&&(this.focused?(t.preventDefault(),this.$refs.actions.$refs.menuButton.$el.focus(),this.focused=!1):this.$refs.actions.$refs.menuButton.$el.blur())},isExternal(t){return t&&t.match(/[a-z]+:\/\//i)}}};var Jo=function(){var t=this,e=t._self._c;return e("li",{staticClass:"app-navigation-entry-wrapper",class:{"app-navigation-entry--opened":t.opened,"app-navigation-entry--pinned":t.pinned,"app-navigation-entry--collapsible":t.collapsible},attrs:{id:t.id}},[e(t.isRouterLink?"router-link":"NcVNodes",{tag:"component",attrs:{custom:!!t.isRouterLink,to:t.to,exact:t.isRouterLink?t.exact:null},scopedSlots:t._u([{key:"default",fn:function({href:i,navigate:n,isActive:s}){return[e("div",{staticClass:"app-navigation-entry",class:{"app-navigation-entry--editing":t.editingActive,"app-navigation-entry--deleted":t.undo,active:s&&t.to||t.active}},[t.undo?t._e():e("a",{staticClass:"app-navigation-entry-link",attrs:{"aria-current":t.active||s&&t.to?"page":void 0,"aria-description":t.ariaDescription,"aria-expanded":t.hasChildren?t.opened.toString():void 0,href:t.href||i||"#",target:t.isExternal(t.href)?"_blank":void 0,title:t.title||t.name},on:{blur:t.handleBlur,click:function(a){return t.onClick(a,n,i)},focus:t.handleFocus,keydown:function(a){return!a.type.indexOf("key")&&t._k(a.keyCode,"tab",9,a.key,"Tab")||a.ctrlKey||a.shiftKey||a.altKey||a.metaKey?null:t.handleTab.apply(null,arguments)}}},[e("div",{staticClass:"app-navigation-entry-icon",class:{[t.icon]:t.icon}},[t.loading?e("NcLoadingIcon"):t._t("icon")],2),t.editingActive?t._e():e("span",{staticClass:"app-navigation-entry__name"},[t._v(" "+t._s(t.name)+" ")]),t.editingActive?e("div",{staticClass:"editingContainer"},[e("NcInputConfirmCancel",{ref:"editingInput",attrs:{placeholder:t.editPlaceholder!==""?t.editPlaceholder:t.name,primary:s&&t.to||t.active},on:{cancel:t.cancelEditing,confirm:t.handleEditingDone},model:{value:t.editingValue,callback:function(a){t.editingValue=a},expression:"editingValue"}})],1):t._e()]),t.undo?e("div",{staticClass:"app-navigation-entry__deleted"},[e("div",{staticClass:"app-navigation-entry__deleted-description"},[t._v(" "+t._s(t.name)+" ")])]):t._e(),t.hasUtils&&!t.editingActive?e("div",{staticClass:"app-navigation-entry__utils",class:{"app-navigation-entry__utils--display-actions":t.forceDisplayActions||t.menuOpenLocalValue||t.menuOpen}},[t.$slots.counter?e("div",{staticClass:"app-navigation-entry__counter-wrapper"},[t._t("counter")],2):t._e(),t.$slots.actions||t.editable&&!t.editingActive||t.undo?e("NcActions",{ref:"actions",staticClass:"app-navigation-entry__actions",attrs:{inline:t.inlineActions,container:"#app-navigation-vue","boundaries-element":t.actionsBoundariesElement,placement:t.menuPlacement,open:t.menuOpen,type:s&&t.to||t.active?"primary":null,"force-menu":t.forceMenu,"default-icon":t.menuIcon},on:{"update:open":t.onMenuToggle},scopedSlots:t._u([{key:"icon",fn:function(){return[t._t("menu-icon")]},proxy:!0}],null,!0)},[t.editable&&!t.editingActive?e("NcActionButton",{attrs:{"aria-label":t.editButtonAriaLabel},on:{click:t.handleEdit},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Pencil",{attrs:{size:20}})]},proxy:!0}],null,!0)},[t._v(" "+t._s(t.editLabel)+" ")]):t._e(),t.undo?e("NcActionButton",{attrs:{"aria-label":t.undoButtonAriaLabel},on:{click:t.handleUndo},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Undo",{attrs:{size:20}})]},proxy:!0}],null,!0)}):t._e(),t._t("actions")],2):t._e()],1):t._e(),t.collapsible?e("NcAppNavigationIconCollapsible",{attrs:{open:t.opened},on:{click:function(a){return a.preventDefault(),a.stopPropagation(),t.toggleCollapse.apply(null,arguments)}}}):t._e(),t._t("extra")],2)]}}],null,!0)}),t.canHaveChildren&&t.hasChildren?e("ul",{staticClass:"app-navigation-entry__children"},[t._t("default")],2):t._e()],1)},Yo=[],Qo=x(Xo,Jo,Yo,!1,null,"97fce21a");const tr=Qo.exports,er={props:{excludeClickOutsideSelectors:{type:[String,Array],default:()=>[]}},computed:{clickOutsideOptions(){return{ignore:Array.isArray(this.excludeClickOutsideSelectors)?this.excludeClickOutsideSelectors:[this.excludeClickOutsideSelectors]}}}};it(un);const ir={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var nr=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon cog-icon",attrs:{"aria-hidden":t.title?null:!0,"aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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:"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},sr=[],ar=x(ir,nr,sr,!1,null,null);const or=ar.exports,rr={directives:{ClickOutside:Hi},components:{Cog:or},mixins:[er],props:{name:{type:String,required:!1,default:T("Settings")}},data(){return{open:!1}},computed:{clickOutsideConfig(){return[this.closeMenu,this.clickOutsideOptions]}},methods:{toggleMenu(){this.open=!this.open},closeMenu(){this.open=!1}}};var lr=function(){var t=this,e=t._self._c;return e("div",{directives:[{name:"click-outside",rawName:"v-click-outside",value:t.clickOutsideConfig,expression:"clickOutsideConfig"}],class:{open:t.open},attrs:{id:"app-settings"}},[e("div",{attrs:{id:"app-settings__header"}},[e("button",{staticClass:"settings-button",attrs:{type:"button","aria-expanded":t.open?"true":"false","aria-controls":"app-settings__content"},on:{click:t.toggleMenu}},[e("Cog",{staticClass:"settings-button__icon",attrs:{size:20}}),e("span",{staticClass:"settings-button__label"},[t._v(t._s(t.name))])],1)]),e("Transition",{attrs:{name:"slide-up"}},[e("div",{directives:[{name:"show",rawName:"v-show",value:t.open,expression:"open"}],attrs:{id:"app-settings__content"}},[t._t("default")],2)])],1)},cr=[],ur=x(rr,lr,cr,!1,null,"981e215c");const pr=ur.exports,dr={name:"ContentCopyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var hr=function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon content-copy-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(i){return t.$emit("click",i)}}},"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,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])},fr=[],vr=Dt(dr,hr,fr,!1,null,null);const gr=vr.exports,mr=Ut({__name:"ActivityAppNavigation",setup(t){const{rssLink:e,personalSettingsLink:i}=ne(Rt,"settings"),n=ne(Rt,"navigationList"),s=at(e),a=_t(()=>!!s.value);async function o(){try{const{data:l}=await We.post(Ze("/apps/activity/settings/feed"),{enable:!a.value});s.value=l.data.rsslink}catch(l){qe(B("activity","Could not enable RSS link")),ie.error(l)}}async function r(){try{window.navigator.clipboard.writeText(s.value),dn(B("activity","RSS link copied to clipboard"))}catch(l){ie.debug(l),window.prompt(B("activity","Could not copy the RSS link, please copy manually:"),s.value)}}return{__sfc:!0,initialRSSLink:e,personalSettingsLink:i,navigationList:n,rssLink:s,hasRSSLink:a,toggleRSSLink:o,copyRSSLink:r,t:B,NcAppNavigation:fo,NcAppNavigationItem:tr,NcAppNavigationSettings:pr,NcButton:lt,NcCheckboxRadioSwitch:pn,NcInputField:ji,IconContentCopy:gr}}});var yr=function(){var t=this,e=t._self._c,i=t._self._setupProxy;return e(i.NcAppNavigation,{attrs:{"aria-label":i.t("activity","Activity")},scopedSlots:t._u([{key:"list",fn:function(){return t._l(i.navigationList,function(n){return e(i.NcAppNavigationItem,{key:n.id,attrs:{"data-navigation":n.id,to:n.id,name:n.name},scopedSlots:t._u([n.icon?{key:"icon",fn:function(){return[e("img",{staticClass:"navigation-icon",attrs:{alt:"",src:n.icon,role:"presentation"}})]},proxy:!0}:null],null,!0)})})},proxy:!0},{key:"footer",fn:function(){return[e(i.NcAppNavigationSettings,{attrs:{name:i.t("activity","Activity settings")}},[e(i.NcCheckboxRadioSwitch,{attrs:{type:"switch",checked:i.hasRSSLink},on:{"update:checked":i.toggleRSSLink}},[t._v(" "+t._s(i.t("activity","Enable RSS feed"))+" ")]),i.hasRSSLink?e(i.NcInputField,{attrs:{label:i.t("activity","RSS feed"),"show-trailing-button":!0,"trailing-button-label":i.t("activity","Copy RSS feed link"),readonly:"readonly"},on:{"trailing-button-click":i.copyRSSLink},scopedSlots:t._u([{key:"trailing-button-icon",fn:function(){return[e(i.IconContentCopy,{attrs:{size:20}})]},proxy:!0}],null,!1,4025534811),model:{value:i.rssLink,callback:function(n){i.rssLink=n},expression:"rssLink"}}):t._e(),e(i.NcButton,{staticClass:"settings-link",attrs:{href:i.personalSettingsLink,title:i.t("activity","Personal notification settings"),type:"tertiary"}},[t._v(" "+t._s(i.t("activity","Personal notification settings"))+" ")])],1)]},proxy:!0}])})},_r=[],Cr=Dt(mr,yr,_r,!1,null,null);const br=Cr.exports,xr=[{path:"/",name:"root",redirect:{path:"/all"}},{path:"/:filter?",components:{default:ja,navigation:br},props:{default:!0}}];R.prototype.t=B,R.prototype.n=Oi,R.use(Fe);const Sr=new Fe({mode:"history",base:Ze("/apps/activity"),linkActiveClass:"active",routes:xr});new R({el:"#content",name:"ActivityRoot",router:Sr,render:t=>t(En)}); diff --git a/js/activity-app.mjs.map b/js/activity-app.mjs.map index c14d31770..46d07ad5b 100644 --- a/js/activity-app.mjs.map +++ b/js/activity-app.mjs.map @@ -1 +1 @@ -{"version":3,"file":"activity-app.mjs","sources":["../node_modules/nanoid/non-secure/index.js","../node_modules/@linusborg/vue-simple-portal/dist/index.esm.js","../node_modules/@nextcloud/vue/dist/chunks/NcContent-DKpTIl9F.mjs","../node_modules/splitpanes/dist/splitpanes.es.js","../node_modules/@nextcloud/vue/dist/chunks/NcAppContent-lEyly7Jk.mjs","../node_modules/vue-frag/dist/frag.esm.js","../src/components/ActivityGroup.vue","../img/activity-dark.svg?raw","../node_modules/@vue/shared/dist/shared.esm-bundler.js","../node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js","../node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js","../node_modules/@vueuse/core/node_modules/@vueuse/shared/index.mjs","../node_modules/@vueuse/core/index.mjs","../node_modules/vue-router/composables.mjs","../src/views/ActivityAppFeed.vue","../node_modules/@nextcloud/vue/dist/Components/NcAppNavigationList.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationToggle-BXainLDc.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigation-CxsxPI9x.mjs","../node_modules/@nextcloud/vue/dist/Components/NcActionButton.mjs","../node_modules/@nextcloud/vue/dist/Components/NcVNodes.mjs","../node_modules/@nextcloud/vue/dist/chunks/ChevronUp-ljACquzS.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcInputConfirmCancel-PXVZ7mLT.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationItem-MvvOWnip.mjs","../node_modules/@nextcloud/vue/dist/Mixins/clickOutsideOptions.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationSettings-DScz0UWm.mjs","../node_modules/vue-material-design-icons/ContentCopy.vue","../src/views/ActivityAppNavigation.vue","../src/routes.ts","../src/app.ts"],"sourcesContent":["// This alphabet uses `A-Za-z0-9_-` symbols.\n// The order of characters is optimized for better gzip and brotli compression.\n// References to the same file (works both for gzip and brotli):\n// `'use`, `andom`, and `rict'`\n// References to the brotli default dictionary:\n// `-26T`, `1983`, `40px`, `75px`, `bush`, `jack`, `mind`, `very`, and `wolf`\nlet urlAlphabet =\n 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'\n\nlet customAlphabet = (alphabet, defaultSize = 21) => {\n return (size = defaultSize) => {\n let id = ''\n // A compact alternative for `for (var i = 0; i < step; i++)`.\n let i = size | 0\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += alphabet[(Math.random() * alphabet.length) | 0]\n }\n return id\n }\n}\n\nlet nanoid = (size = 21) => {\n let id = ''\n // A compact alternative for `for (var i = 0; i < step; i++)`.\n let i = size | 0\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += urlAlphabet[(Math.random() * 64) | 0]\n }\n return id\n}\n\nexport { nanoid, customAlphabet }\n","\n/**\n * vue-simple-portal\n * version: 0.1.5,\n * (c) Thorsten Lünborg, 2021 - present\n * LICENCE: Apache-2.0\n * http://github.com/linusborg/vue-simple-portal\n*/\nimport Vue from 'vue';\nimport { nanoid } from 'nanoid/non-secure';\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nvar config = {\n selector: \"vue-portal-target-\".concat(nanoid())\n};\nvar setSelector = function setSelector(selector) {\n return config.selector = selector;\n};\nvar isBrowser = typeof window !== 'undefined' && (typeof document === \"undefined\" ? \"undefined\" : _typeof(document)) !== undefined;\n\nvar TargetContainer = Vue.extend({\n // as an abstract component, it doesn't appear in\n // the $parent chain of components.\n // which means the next parent of any component rendered inside of this oen\n // will be the parent from which is was sent\n // @ts-expect-error\n abstract: true,\n name: 'PortalOutlet',\n props: ['nodes', 'tag'],\n data: function data(vm) {\n return {\n updatedNodes: vm.nodes\n };\n },\n render: function render(h) {\n var nodes = this.updatedNodes && this.updatedNodes();\n if (!nodes) return h();\n return nodes.length === 1 && !nodes[0].text ? nodes : h(this.tag || 'DIV', nodes);\n },\n destroyed: function destroyed() {\n var el = this.$el;\n el && el.parentNode.removeChild(el);\n }\n});\n\nvar Portal = Vue.extend({\n name: 'VueSimplePortal',\n props: {\n disabled: {\n type: Boolean\n },\n prepend: {\n type: Boolean\n },\n selector: {\n type: String,\n default: function _default() {\n return \"#\".concat(config.selector);\n }\n },\n tag: {\n type: String,\n default: 'DIV'\n }\n },\n render: function render(h) {\n if (this.disabled) {\n var nodes = this.$scopedSlots && this.$scopedSlots.default();\n if (!nodes) return h();\n return nodes.length < 2 && !nodes[0].text ? nodes : h(this.tag, nodes);\n }\n\n return h();\n },\n created: function created() {\n if (!this.getTargetEl()) {\n this.insertTargetEl();\n }\n },\n updated: function updated() {\n var _this = this;\n\n // We only update the target container component\n // if the scoped slot function is a fresh one\n // The new slot syntax (since Vue 2.6) can cache unchanged slot functions\n // and we want to respect that here.\n this.$nextTick(function () {\n if (!_this.disabled && _this.slotFn !== _this.$scopedSlots.default) {\n _this.container.updatedNodes = _this.$scopedSlots.default;\n }\n\n _this.slotFn = _this.$scopedSlots.default;\n });\n },\n beforeDestroy: function beforeDestroy() {\n this.unmount();\n },\n watch: {\n disabled: {\n immediate: true,\n handler: function handler(disabled) {\n disabled ? this.unmount() : this.$nextTick(this.mount);\n }\n }\n },\n methods: {\n // This returns the element into which the content should be mounted.\n getTargetEl: function getTargetEl() {\n if (!isBrowser) return;\n return document.querySelector(this.selector);\n },\n insertTargetEl: function insertTargetEl() {\n if (!isBrowser) return;\n var parent = document.querySelector('body');\n var child = document.createElement(this.tag);\n child.id = this.selector.substring(1);\n parent.appendChild(child);\n },\n mount: function mount() {\n if (!isBrowser) return;\n var targetEl = this.getTargetEl();\n var el = document.createElement('DIV');\n\n if (this.prepend && targetEl.firstChild) {\n targetEl.insertBefore(el, targetEl.firstChild);\n } else {\n targetEl.appendChild(el);\n }\n\n this.container = new TargetContainer({\n el: el,\n parent: this,\n propsData: {\n tag: this.tag,\n nodes: this.$scopedSlots.default\n }\n });\n },\n unmount: function unmount() {\n if (this.container) {\n this.container.$destroy();\n delete this.container;\n }\n }\n }\n});\n\nfunction install(_Vue) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _Vue.component(options.name || 'portal', Portal);\n\n if (options.defaultSelector) {\n setSelector(options.defaultSelector);\n }\n}\n\nif (typeof window !== 'undefined' && window.Vue && window.Vue === Vue) {\n // plugin was inlcuded directly in a browser\n Vue.use(install);\n}\n\nexport default install;\nexport { Portal, config, setSelector };\n","import '../assets/NcContent-ZFNIjylG.css';\nimport { emit } from \"@nextcloud/event-bus\";\nimport { Portal } from \"@linusborg/vue-simple-portal\";\nimport { useIsMobile } from \"../Composables/useIsMobile.mjs\";\nimport { r as register, G as t29, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport NcButton from \"../Components/NcButton.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-DjrkBUkC.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t29);\nconst contentSvg = '\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n';\nconst navigationSvg = '\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n';\nconst _sfc_main = {\n name: \"NcContent\",\n components: {\n NcButton,\n NcIconSvgWrapper,\n Teleport: Portal\n },\n provide() {\n return {\n \"NcContent:setHasAppNavigation\": this.setAppNavigation,\n \"NcContent:selector\": \"#content-vue\"\n };\n },\n props: {\n appName: {\n type: String,\n required: true\n }\n },\n setup() {\n const isMobile = useIsMobile();\n return {\n isMobile\n };\n },\n data() {\n return {\n hasAppNavigation: false,\n currentFocus: \"\"\n // unknown\n };\n },\n computed: {\n currentImage() {\n if (this.currentFocus === \"navigation\") {\n return navigationSvg;\n }\n return contentSvg;\n }\n },\n beforeMount() {\n const container = document.getElementById(\"skip-actions\");\n if (container) {\n container.innerHTML = \"\";\n container.classList.add(\"vue-skip-actions\");\n }\n },\n methods: {\n t,\n openAppNavigation() {\n emit(\"toggle-navigation\", { open: true });\n this.$nextTick(() => {\n window.location.hash = \"app-navigation-vue\";\n document.getElementById(\"app-navigation-vue\").focus();\n });\n },\n setAppNavigation(value) {\n this.hasAppNavigation = value;\n if (this.currentFocus === \"\") {\n this.currentFocus = \"navigation\";\n }\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { class: [\"content\", \"app-\".concat(_vm.appName.toLowerCase())], attrs: { \"id\": \"content-vue\" } }, [_c(\"Teleport\", { attrs: { \"selector\": \"#skip-actions\" } }, [_c(\"div\", { staticClass: \"vue-skip-actions__container\" }, [_c(\"div\", { staticClass: \"vue-skip-actions__headline\" }, [_vm._v(\" \" + _vm._s(_vm.t(\"Keyboard navigation help\")) + \" \")]), _c(\"div\", { staticClass: \"vue-skip-actions__buttons\" }, [_c(\"NcButton\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.hasAppNavigation, expression: \"hasAppNavigation\" }], attrs: { \"type\": \"tertiary\", \"href\": \"#app-navigation-vue\" }, on: { \"click\": function($event) {\n $event.preventDefault();\n return _vm.openAppNavigation.apply(null, arguments);\n }, \"focusin\": function($event) {\n _vm.currentFocus = \"navigation\";\n }, \"mouseover\": function($event) {\n _vm.currentFocus = \"navigation\";\n } } }, [_vm._v(\" \" + _vm._s(_vm.t(\"Skip to app navigation\")) + \" \")]), _c(\"NcButton\", { attrs: { \"type\": \"tertiary\", \"href\": \"#app-content-vue\" }, on: { \"focusin\": function($event) {\n _vm.currentFocus = \"content\";\n }, \"mouseover\": function($event) {\n _vm.currentFocus = \"content\";\n } } }, [_vm._v(\" \" + _vm._s(_vm.t(\"Skip to main content\")) + \" \")])], 1), _c(\"NcIconSvgWrapper\", { directives: [{ name: \"show\", rawName: \"v-show\", value: !_vm.isMobile, expression: \"!isMobile\" }], staticClass: \"vue-skip-actions__image\", attrs: { \"svg\": _vm.currentImage, \"size\": \"auto\" } })], 1), _vm._v(\" \")]), _vm._t(\"default\")], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"d8f0539f\"\n);\nconst NcContent = __component__.exports;\nexport {\n NcContent as N\n};\n","var __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nvar splitpanes_vue_vue_type_style_index_0_lang = \"\";\nfunction normalizeComponent(scriptExports, render2, staticRenderFns2, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render2) {\n options.render = render2;\n options.staticRenderFns = staticRenderFns2;\n options._compiled = true;\n }\n if (functionalTemplate) {\n options.functional = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n var hook;\n if (moduleIdentifier) {\n hook = function(context) {\n context = context || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;\n if (!context && typeof __VUE_SSR_CONTEXT__ !== \"undefined\") {\n context = __VUE_SSR_CONTEXT__;\n }\n if (injectStyles) {\n injectStyles.call(this, context);\n }\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n };\n options._ssrRegister = hook;\n } else if (injectStyles) {\n hook = shadowMode ? function() {\n injectStyles.call(this, (options.functional ? this.parent : this).$root.$options.shadowRoot);\n } : injectStyles;\n }\n if (hook) {\n if (options.functional) {\n options._injectStyles = hook;\n var originalRender = options.render;\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst __vue2_script$1 = {\n name: \"splitpanes\",\n props: {\n horizontal: { type: Boolean },\n pushOtherPanes: { type: Boolean, default: true },\n dblClickSplitter: { type: Boolean, default: true },\n rtl: { type: Boolean, default: false },\n firstSplitter: { type: Boolean }\n },\n provide() {\n return {\n requestUpdate: this.requestUpdate,\n onPaneAdd: this.onPaneAdd,\n onPaneRemove: this.onPaneRemove,\n onPaneClick: this.onPaneClick\n };\n },\n data: () => ({\n container: null,\n ready: false,\n panes: [],\n touch: {\n mouseDown: false,\n dragging: false,\n activeSplitter: null\n },\n splitterTaps: {\n splitter: null,\n timeoutId: null\n }\n }),\n computed: {\n panesCount() {\n return this.panes.length;\n },\n indexedPanes() {\n return this.panes.reduce((obj, pane2) => (obj[pane2.id] = pane2) && obj, {});\n }\n },\n methods: {\n updatePaneComponents() {\n this.panes.forEach((pane2) => {\n pane2.update && pane2.update({\n [this.horizontal ? \"height\" : \"width\"]: `${this.indexedPanes[pane2.id].size}%`\n });\n });\n },\n bindEvents() {\n document.addEventListener(\"mousemove\", this.onMouseMove, { passive: false });\n document.addEventListener(\"mouseup\", this.onMouseUp);\n if (\"ontouchstart\" in window) {\n document.addEventListener(\"touchmove\", this.onMouseMove, { passive: false });\n document.addEventListener(\"touchend\", this.onMouseUp);\n }\n },\n unbindEvents() {\n document.removeEventListener(\"mousemove\", this.onMouseMove, { passive: false });\n document.removeEventListener(\"mouseup\", this.onMouseUp);\n if (\"ontouchstart\" in window) {\n document.removeEventListener(\"touchmove\", this.onMouseMove, { passive: false });\n document.removeEventListener(\"touchend\", this.onMouseUp);\n }\n },\n onMouseDown(event, splitterIndex) {\n this.bindEvents();\n this.touch.mouseDown = true;\n this.touch.activeSplitter = splitterIndex;\n },\n onMouseMove(event) {\n if (this.touch.mouseDown) {\n event.preventDefault();\n this.touch.dragging = true;\n this.calculatePanesSize(this.getCurrentMouseDrag(event));\n this.$emit(\"resize\", this.panes.map((pane2) => ({ min: pane2.min, max: pane2.max, size: pane2.size })));\n }\n },\n onMouseUp() {\n if (this.touch.dragging) {\n this.$emit(\"resized\", this.panes.map((pane2) => ({ min: pane2.min, max: pane2.max, size: pane2.size })));\n }\n this.touch.mouseDown = false;\n setTimeout(() => {\n this.touch.dragging = false;\n this.unbindEvents();\n }, 100);\n },\n onSplitterClick(event, splitterIndex) {\n if (\"ontouchstart\" in window) {\n event.preventDefault();\n if (this.dblClickSplitter) {\n if (this.splitterTaps.splitter === splitterIndex) {\n clearTimeout(this.splitterTaps.timeoutId);\n this.splitterTaps.timeoutId = null;\n this.onSplitterDblClick(event, splitterIndex);\n this.splitterTaps.splitter = null;\n } else {\n this.splitterTaps.splitter = splitterIndex;\n this.splitterTaps.timeoutId = setTimeout(() => {\n this.splitterTaps.splitter = null;\n }, 500);\n }\n }\n }\n if (!this.touch.dragging)\n this.$emit(\"splitter-click\", this.panes[splitterIndex]);\n },\n onSplitterDblClick(event, splitterIndex) {\n let totalMinSizes = 0;\n this.panes = this.panes.map((pane2, i) => {\n pane2.size = i === splitterIndex ? pane2.max : pane2.min;\n if (i !== splitterIndex)\n totalMinSizes += pane2.min;\n return pane2;\n });\n this.panes[splitterIndex].size -= totalMinSizes;\n this.$emit(\"pane-maximize\", this.panes[splitterIndex]);\n },\n onPaneClick(event, paneId) {\n this.$emit(\"pane-click\", this.indexedPanes[paneId]);\n },\n getCurrentMouseDrag(event) {\n const rect = this.container.getBoundingClientRect();\n const { clientX, clientY } = \"ontouchstart\" in window && event.touches ? event.touches[0] : event;\n return {\n x: clientX - rect.left,\n y: clientY - rect.top\n };\n },\n getCurrentDragPercentage(drag) {\n drag = drag[this.horizontal ? \"y\" : \"x\"];\n const containerSize = this.container[this.horizontal ? \"clientHeight\" : \"clientWidth\"];\n if (this.rtl && !this.horizontal)\n drag = containerSize - drag;\n return drag * 100 / containerSize;\n },\n calculatePanesSize(drag) {\n const splitterIndex = this.touch.activeSplitter;\n let sums = {\n prevPanesSize: this.sumPrevPanesSize(splitterIndex),\n nextPanesSize: this.sumNextPanesSize(splitterIndex),\n prevReachedMinPanes: 0,\n nextReachedMinPanes: 0\n };\n const minDrag = 0 + (this.pushOtherPanes ? 0 : sums.prevPanesSize);\n const maxDrag = 100 - (this.pushOtherPanes ? 0 : sums.nextPanesSize);\n const dragPercentage = Math.max(Math.min(this.getCurrentDragPercentage(drag), maxDrag), minDrag);\n let panesToResize = [splitterIndex, splitterIndex + 1];\n let paneBefore = this.panes[panesToResize[0]] || null;\n let paneAfter = this.panes[panesToResize[1]] || null;\n const paneBeforeMaxReached = paneBefore.max < 100 && dragPercentage >= paneBefore.max + sums.prevPanesSize;\n const paneAfterMaxReached = paneAfter.max < 100 && dragPercentage <= 100 - (paneAfter.max + this.sumNextPanesSize(splitterIndex + 1));\n if (paneBeforeMaxReached || paneAfterMaxReached) {\n if (paneBeforeMaxReached) {\n paneBefore.size = paneBefore.max;\n paneAfter.size = Math.max(100 - paneBefore.max - sums.prevPanesSize - sums.nextPanesSize, 0);\n } else {\n paneBefore.size = Math.max(100 - paneAfter.max - sums.prevPanesSize - this.sumNextPanesSize(splitterIndex + 1), 0);\n paneAfter.size = paneAfter.max;\n }\n return;\n }\n if (this.pushOtherPanes) {\n const vars = this.doPushOtherPanes(sums, dragPercentage);\n if (!vars)\n return;\n ({ sums, panesToResize } = vars);\n paneBefore = this.panes[panesToResize[0]] || null;\n paneAfter = this.panes[panesToResize[1]] || null;\n }\n if (paneBefore !== null) {\n paneBefore.size = Math.min(Math.max(dragPercentage - sums.prevPanesSize - sums.prevReachedMinPanes, paneBefore.min), paneBefore.max);\n }\n if (paneAfter !== null) {\n paneAfter.size = Math.min(Math.max(100 - dragPercentage - sums.nextPanesSize - sums.nextReachedMinPanes, paneAfter.min), paneAfter.max);\n }\n },\n doPushOtherPanes(sums, dragPercentage) {\n const splitterIndex = this.touch.activeSplitter;\n const panesToResize = [splitterIndex, splitterIndex + 1];\n if (dragPercentage < sums.prevPanesSize + this.panes[panesToResize[0]].min) {\n panesToResize[0] = this.findPrevExpandedPane(splitterIndex).index;\n sums.prevReachedMinPanes = 0;\n if (panesToResize[0] < splitterIndex) {\n this.panes.forEach((pane2, i) => {\n if (i > panesToResize[0] && i <= splitterIndex) {\n pane2.size = pane2.min;\n sums.prevReachedMinPanes += pane2.min;\n }\n });\n }\n sums.prevPanesSize = this.sumPrevPanesSize(panesToResize[0]);\n if (panesToResize[0] === void 0) {\n sums.prevReachedMinPanes = 0;\n this.panes[0].size = this.panes[0].min;\n this.panes.forEach((pane2, i) => {\n if (i > 0 && i <= splitterIndex) {\n pane2.size = pane2.min;\n sums.prevReachedMinPanes += pane2.min;\n }\n });\n this.panes[panesToResize[1]].size = 100 - sums.prevReachedMinPanes - this.panes[0].min - sums.prevPanesSize - sums.nextPanesSize;\n return null;\n }\n }\n if (dragPercentage > 100 - sums.nextPanesSize - this.panes[panesToResize[1]].min) {\n panesToResize[1] = this.findNextExpandedPane(splitterIndex).index;\n sums.nextReachedMinPanes = 0;\n if (panesToResize[1] > splitterIndex + 1) {\n this.panes.forEach((pane2, i) => {\n if (i > splitterIndex && i < panesToResize[1]) {\n pane2.size = pane2.min;\n sums.nextReachedMinPanes += pane2.min;\n }\n });\n }\n sums.nextPanesSize = this.sumNextPanesSize(panesToResize[1] - 1);\n if (panesToResize[1] === void 0) {\n sums.nextReachedMinPanes = 0;\n this.panes[this.panesCount - 1].size = this.panes[this.panesCount - 1].min;\n this.panes.forEach((pane2, i) => {\n if (i < this.panesCount - 1 && i >= splitterIndex + 1) {\n pane2.size = pane2.min;\n sums.nextReachedMinPanes += pane2.min;\n }\n });\n this.panes[panesToResize[0]].size = 100 - sums.prevPanesSize - sums.nextReachedMinPanes - this.panes[this.panesCount - 1].min - sums.nextPanesSize;\n return null;\n }\n }\n return { sums, panesToResize };\n },\n sumPrevPanesSize(splitterIndex) {\n return this.panes.reduce((total, pane2, i) => total + (i < splitterIndex ? pane2.size : 0), 0);\n },\n sumNextPanesSize(splitterIndex) {\n return this.panes.reduce((total, pane2, i) => total + (i > splitterIndex + 1 ? pane2.size : 0), 0);\n },\n findPrevExpandedPane(splitterIndex) {\n const pane2 = [...this.panes].reverse().find((p) => p.index < splitterIndex && p.size > p.min);\n return pane2 || {};\n },\n findNextExpandedPane(splitterIndex) {\n const pane2 = this.panes.find((p) => p.index > splitterIndex + 1 && p.size > p.min);\n return pane2 || {};\n },\n checkSplitpanesNodes() {\n const children = Array.from(this.container.children);\n children.forEach((child) => {\n const isPane = child.classList.contains(\"splitpanes__pane\");\n const isSplitter = child.classList.contains(\"splitpanes__splitter\");\n if (!isPane && !isSplitter) {\n child.parentNode.removeChild(child);\n console.warn(\"Splitpanes: Only elements are allowed at the root of . One of your DOM nodes was removed.\");\n return;\n }\n });\n },\n addSplitter(paneIndex, nextPaneNode, isVeryFirst = false) {\n const splitterIndex = paneIndex - 1;\n const elm = document.createElement(\"div\");\n elm.classList.add(\"splitpanes__splitter\");\n if (!isVeryFirst) {\n elm.onmousedown = (event) => this.onMouseDown(event, splitterIndex);\n if (typeof window !== \"undefined\" && \"ontouchstart\" in window) {\n elm.ontouchstart = (event) => this.onMouseDown(event, splitterIndex);\n }\n elm.onclick = (event) => this.onSplitterClick(event, splitterIndex + 1);\n }\n if (this.dblClickSplitter) {\n elm.ondblclick = (event) => this.onSplitterDblClick(event, splitterIndex + 1);\n }\n nextPaneNode.parentNode.insertBefore(elm, nextPaneNode);\n },\n removeSplitter(node) {\n node.onmousedown = void 0;\n node.onclick = void 0;\n node.ondblclick = void 0;\n node.parentNode.removeChild(node);\n },\n redoSplitters() {\n const children = Array.from(this.container.children);\n children.forEach((el) => {\n if (el.className.includes(\"splitpanes__splitter\"))\n this.removeSplitter(el);\n });\n let paneIndex = 0;\n children.forEach((el) => {\n if (el.className.includes(\"splitpanes__pane\")) {\n if (!paneIndex && this.firstSplitter)\n this.addSplitter(paneIndex, el, true);\n else if (paneIndex)\n this.addSplitter(paneIndex, el);\n paneIndex++;\n }\n });\n },\n requestUpdate(_a) {\n var _b = _a, { target } = _b, args = __objRest(_b, [\"target\"]);\n const pane2 = this.indexedPanes[target._uid];\n Object.entries(args).forEach(([key, value]) => pane2[key] = value);\n },\n onPaneAdd(pane2) {\n let index = -1;\n Array.from(pane2.$el.parentNode.children).some((el) => {\n if (el.className.includes(\"splitpanes__pane\"))\n index++;\n return el === pane2.$el;\n });\n const min = parseFloat(pane2.minSize);\n const max = parseFloat(pane2.maxSize);\n this.panes.splice(index, 0, {\n id: pane2._uid,\n index,\n min: isNaN(min) ? 0 : min,\n max: isNaN(max) ? 100 : max,\n size: pane2.size === null ? null : parseFloat(pane2.size),\n givenSize: pane2.size,\n update: pane2.update\n });\n this.panes.forEach((p, i) => p.index = i);\n if (this.ready) {\n this.$nextTick(() => {\n this.redoSplitters();\n this.resetPaneSizes({ addedPane: this.panes[index] });\n this.$emit(\"pane-add\", { index, panes: this.panes.map((pane3) => ({ min: pane3.min, max: pane3.max, size: pane3.size })) });\n });\n }\n },\n onPaneRemove(pane2) {\n const index = this.panes.findIndex((p) => p.id === pane2._uid);\n const removed = this.panes.splice(index, 1)[0];\n this.panes.forEach((p, i) => p.index = i);\n this.$nextTick(() => {\n this.redoSplitters();\n this.resetPaneSizes({ removedPane: __spreadProps(__spreadValues({}, removed), { index }) });\n this.$emit(\"pane-remove\", { removed, panes: this.panes.map((pane3) => ({ min: pane3.min, max: pane3.max, size: pane3.size })) });\n });\n },\n resetPaneSizes(changedPanes = {}) {\n if (!changedPanes.addedPane && !changedPanes.removedPane)\n this.initialPanesSizing();\n else if (this.panes.some((pane2) => pane2.givenSize !== null || pane2.min || pane2.max < 100))\n this.equalizeAfterAddOrRemove(changedPanes);\n else\n this.equalize();\n if (this.ready)\n this.$emit(\"resized\", this.panes.map((pane2) => ({ min: pane2.min, max: pane2.max, size: pane2.size })));\n },\n equalize() {\n const equalSpace = 100 / this.panesCount;\n let leftToAllocate = 0;\n let ungrowable = [];\n let unshrinkable = [];\n this.panes.forEach((pane2) => {\n pane2.size = Math.max(Math.min(equalSpace, pane2.max), pane2.min);\n leftToAllocate -= pane2.size;\n if (pane2.size >= pane2.max)\n ungrowable.push(pane2.id);\n if (pane2.size <= pane2.min)\n unshrinkable.push(pane2.id);\n });\n if (leftToAllocate > 0.1)\n this.readjustSizes(leftToAllocate, ungrowable, unshrinkable);\n },\n initialPanesSizing() {\n 100 / this.panesCount;\n let leftToAllocate = 100;\n let ungrowable = [];\n let unshrinkable = [];\n let definedSizes = 0;\n this.panes.forEach((pane2) => {\n leftToAllocate -= pane2.size;\n if (pane2.size !== null)\n definedSizes++;\n if (pane2.size >= pane2.max)\n ungrowable.push(pane2.id);\n if (pane2.size <= pane2.min)\n unshrinkable.push(pane2.id);\n });\n let leftToAllocate2 = 100;\n if (leftToAllocate > 0.1) {\n this.panes.forEach((pane2) => {\n if (pane2.size === null) {\n pane2.size = Math.max(Math.min(leftToAllocate / (this.panesCount - definedSizes), pane2.max), pane2.min);\n }\n leftToAllocate2 -= pane2.size;\n });\n if (leftToAllocate2 > 0.1)\n this.readjustSizes(leftToAllocate, ungrowable, unshrinkable);\n }\n },\n equalizeAfterAddOrRemove({ addedPane, removedPane } = {}) {\n let equalSpace = 100 / this.panesCount;\n let leftToAllocate = 0;\n let ungrowable = [];\n let unshrinkable = [];\n if (addedPane && addedPane.givenSize !== null) {\n equalSpace = (100 - addedPane.givenSize) / (this.panesCount - 1);\n }\n this.panes.forEach((pane2) => {\n leftToAllocate -= pane2.size;\n if (pane2.size >= pane2.max)\n ungrowable.push(pane2.id);\n if (pane2.size <= pane2.min)\n unshrinkable.push(pane2.id);\n });\n if (Math.abs(leftToAllocate) < 0.1)\n return;\n this.panes.forEach((pane2) => {\n if (addedPane && addedPane.givenSize !== null && addedPane.id === pane2.id)\n ;\n else\n pane2.size = Math.max(Math.min(equalSpace, pane2.max), pane2.min);\n leftToAllocate -= pane2.size;\n if (pane2.size >= pane2.max)\n ungrowable.push(pane2.id);\n if (pane2.size <= pane2.min)\n unshrinkable.push(pane2.id);\n });\n if (leftToAllocate > 0.1)\n this.readjustSizes(leftToAllocate, ungrowable, unshrinkable);\n },\n readjustSizes(leftToAllocate, ungrowable, unshrinkable) {\n let equalSpaceToAllocate;\n if (leftToAllocate > 0)\n equalSpaceToAllocate = leftToAllocate / (this.panesCount - ungrowable.length);\n else\n equalSpaceToAllocate = leftToAllocate / (this.panesCount - unshrinkable.length);\n this.panes.forEach((pane2, i) => {\n if (leftToAllocate > 0 && !ungrowable.includes(pane2.id)) {\n const newPaneSize = Math.max(Math.min(pane2.size + equalSpaceToAllocate, pane2.max), pane2.min);\n const allocated = newPaneSize - pane2.size;\n leftToAllocate -= allocated;\n pane2.size = newPaneSize;\n } else if (!unshrinkable.includes(pane2.id)) {\n const newPaneSize = Math.max(Math.min(pane2.size + equalSpaceToAllocate, pane2.max), pane2.min);\n const allocated = newPaneSize - pane2.size;\n leftToAllocate -= allocated;\n pane2.size = newPaneSize;\n }\n pane2.update({\n [this.horizontal ? \"height\" : \"width\"]: `${this.indexedPanes[pane2.id].size}%`\n });\n });\n if (Math.abs(leftToAllocate) > 0.1) {\n this.$nextTick(() => {\n if (this.ready) {\n console.warn(\"Splitpanes: Could not resize panes correctly due to their constraints.\");\n }\n });\n }\n }\n },\n watch: {\n panes: {\n deep: true,\n immediate: false,\n handler() {\n this.updatePaneComponents();\n }\n },\n horizontal() {\n this.updatePaneComponents();\n },\n firstSplitter() {\n this.redoSplitters();\n },\n dblClickSplitter(enable) {\n const splitters = [...this.container.querySelectorAll(\".splitpanes__splitter\")];\n splitters.forEach((splitter, i) => {\n splitter.ondblclick = enable ? (event) => this.onSplitterDblClick(event, i) : void 0;\n });\n }\n },\n beforeDestroy() {\n this.ready = false;\n },\n mounted() {\n this.container = this.$refs.container;\n this.checkSplitpanesNodes();\n this.redoSplitters();\n this.resetPaneSizes();\n this.$emit(\"ready\");\n this.ready = true;\n },\n render(h) {\n return h(\"div\", {\n ref: \"container\",\n class: [\n \"splitpanes\",\n `splitpanes--${this.horizontal ? \"horizontal\" : \"vertical\"}`,\n {\n \"splitpanes--dragging\": this.touch.dragging\n }\n ]\n }, this.$slots.default);\n }\n};\nlet __vue2_render, __vue2_staticRenderFns;\nconst __cssModules$1 = {};\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(__vue2_script$1, __vue2_render, __vue2_staticRenderFns, false, __vue2_injectStyles$1, null, null, null);\nfunction __vue2_injectStyles$1(context) {\n for (let o in __cssModules$1) {\n this[o] = __cssModules$1[o];\n }\n}\nvar splitpanes = /* @__PURE__ */ function() {\n return __component__$1.exports;\n}();\nvar render = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\"div\", { staticClass: \"splitpanes__pane\", style: _vm.style, on: { \"click\": function($event) {\n return _vm.onPaneClick($event, _vm._uid);\n } } }, [_vm._t(\"default\")], 2);\n};\nvar staticRenderFns = [];\nconst __vue2_script = {\n name: \"pane\",\n inject: [\"requestUpdate\", \"onPaneAdd\", \"onPaneRemove\", \"onPaneClick\"],\n props: {\n size: { type: [Number, String], default: null },\n minSize: { type: [Number, String], default: 0 },\n maxSize: { type: [Number, String], default: 100 }\n },\n data: () => ({\n style: {}\n }),\n mounted() {\n this.onPaneAdd(this);\n },\n beforeDestroy() {\n this.onPaneRemove(this);\n },\n methods: {\n update(style) {\n this.style = style;\n }\n },\n computed: {\n sizeNumber() {\n return this.size || this.size === 0 ? parseFloat(this.size) : null;\n },\n minSizeNumber() {\n return parseFloat(this.minSize);\n },\n maxSizeNumber() {\n return parseFloat(this.maxSize);\n }\n },\n watch: {\n sizeNumber(size) {\n this.requestUpdate({ target: this, size });\n },\n minSizeNumber(min) {\n this.requestUpdate({ target: this, min });\n },\n maxSizeNumber(max) {\n this.requestUpdate({ target: this, max });\n }\n }\n};\nconst __cssModules = {};\nvar __component__ = /* @__PURE__ */ normalizeComponent(__vue2_script, render, staticRenderFns, false, __vue2_injectStyles, null, null, null);\nfunction __vue2_injectStyles(context) {\n for (let o in __cssModules) {\n this[o] = __cssModules[o];\n }\n}\nvar pane = /* @__PURE__ */ function() {\n return __component__.exports;\n}();\nexport { pane as Pane, splitpanes as Splitpanes };\n","import '../assets/NcAppContent-DVBVZyuW.css';\nimport NcButton from \"../Components/NcButton.mjs\";\nimport { r as register, D as t26, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport \"../Directives/Tooltip.mjs\";\nimport { emit } from \"@nextcloud/event-bus\";\nimport { A as ArrowRight } from \"./ArrowRight-KsL2PC-o.mjs\";\nimport { useIsMobile } from \"../Composables/useIsMobile.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nimport { VTooltip } from \"floating-vue\";\nimport { getBuilder } from \"@nextcloud/browser-storage\";\nimport { useSwipe } from \"@vueuse/core\";\nimport { Pane, Splitpanes } from \"splitpanes\";\nimport \"splitpanes/dist/splitpanes.css\";\nregister(t26);\nconst _sfc_main$1 = {\n name: \"NcAppDetailsToggle\",\n directives: {\n tooltip: VTooltip\n },\n components: {\n NcButton,\n ArrowRight\n },\n setup() {\n return {\n isMobile: useIsMobile()\n };\n },\n computed: {\n title() {\n return t(\"Go back to the list\");\n }\n },\n watch: {\n isMobile: {\n immediate: true,\n handler() {\n this.toggleAppNavigationButton(this.isMobile);\n }\n }\n },\n beforeDestroy() {\n if (this.isMobile) {\n this.toggleAppNavigationButton(false);\n }\n },\n methods: {\n toggleAppNavigationButton(hide = true) {\n const appNavigationToggle = document.querySelector(\".app-navigation .app-navigation-toggle\");\n if (appNavigationToggle) {\n appNavigationToggle.style.display = hide ? \"none\" : null;\n if (hide === true) {\n emit(\"toggle-navigation\", { open: false });\n }\n }\n }\n }\n};\nvar _sfc_render$1 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"NcButton\", { directives: [{ name: \"tooltip\", rawName: \"v-tooltip\", value: _vm.title, expression: \"title\" }], staticClass: \"app-details-toggle\", class: { \"app-details-toggle--mobile\": _vm.isMobile }, attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.title }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"ArrowRight\", { attrs: { \"size\": 20 } })];\n }, proxy: true }]) });\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n \"7692fc78\"\n);\nconst NcAppDetailsToggle = __component__$1.exports;\nconst browserStorage = getBuilder(\"nextcloud\").persist().build();\nconst _sfc_main = {\n name: \"NcAppContent\",\n components: {\n NcAppDetailsToggle,\n Pane,\n Splitpanes\n },\n props: {\n /**\n * Allows to disable the control by swipe of the app navigation open state\n */\n allowSwipeNavigation: {\n type: Boolean,\n default: true\n },\n /**\n * Allows you to set the default width of the resizable list in % on vertical-split\n * Allows you to set the default height of the resizable list in % on horizontal-split\n * Must be between listMinWidth and listMaxWidth\n */\n listSize: {\n type: Number,\n default: 20\n },\n /**\n * Allows you to set the minimum width of the list column in % on vertical-split\n * Allows you to set the minimum height of the list column in % on horizontal-split\n */\n listMinWidth: {\n type: Number,\n default: 15\n },\n /**\n * Allows you to set the maximum width of the list column in % on vertical-split\n * Allows you to set the maximum height of the list column in % on horizontal-split\n */\n listMaxWidth: {\n type: Number,\n default: 40\n },\n /**\n * Specify the config key for the pane config sizes\n * Default is the global var appName if you use the webpack-vue-config\n */\n paneConfigKey: {\n type: String,\n default: \"\"\n },\n /**\n * When in mobile view, only the list or the details are shown\n * If you provide a list, you need to provide a variable\n * that will be set to true by the user when an element of\n * the list gets selected. The details will then show a back\n * arrow to return to the list that will update this prop to false.\n */\n showDetails: {\n type: Boolean,\n default: true\n },\n /**\n * Specify the `` page heading\n */\n pageHeading: {\n type: String,\n default: null\n },\n /**\n * Content layout used when there is a list together with content:\n * - `vertical-split` - a 2-column layout with list and default content separated vertically\n * - `no-split` - a single column layout; List is shown when `showDetails` is `false`, otherwise the default slot content is shown with a back button to return to the list.\n * - 'horizontal-split' - a 2-column layout with list and default content separated horizontally\n * On mobile screen `no-split` layout is forced.\n */\n layout: {\n type: String,\n default: \"vertical-split\",\n validator(value) {\n return [\"no-split\", \"vertical-split\", \"horizontal-split\"].includes(value);\n }\n }\n },\n emits: [\n \"update:showDetails\",\n \"resize:list\"\n ],\n setup() {\n return {\n isMobile: useIsMobile()\n };\n },\n data() {\n return {\n contentHeight: 0,\n hasList: false,\n hasContent: false,\n swiping: {},\n listPaneSize: this.restorePaneConfig()\n };\n },\n computed: {\n paneConfigID() {\n if (this.paneConfigKey !== \"\") {\n return \"pane-list-size-\".concat(this.paneConfigKey);\n }\n try {\n return \"pane-list-size-\".concat(appName);\n } catch (e) {\n console.info(\"[INFO] AppContent:\", \"falling back to global nextcloud pane config\");\n return \"pane-list-size-nextcloud\";\n }\n },\n detailsPaneSize() {\n if (this.listPaneSize) {\n return 100 - this.listPaneSize;\n }\n return this.paneDefaults.details.size;\n },\n paneDefaults() {\n return {\n list: {\n size: this.listSize,\n min: this.listMinWidth,\n max: this.listMaxWidth\n },\n // set the inverse values of the details column\n // based on the provided (or default) values of the list column\n details: {\n size: 100 - this.listSize,\n min: 100 - this.listMaxWidth,\n max: 100 - this.listMinWidth\n }\n };\n }\n },\n updated() {\n this.checkSlots();\n },\n mounted() {\n if (this.allowSwipeNavigation) {\n this.swiping = useSwipe(this.$el, {\n onSwipeEnd: this.handleSwipe\n });\n }\n this.checkSlots();\n this.restorePaneConfig();\n },\n methods: {\n /**\n * handle the swipe event\n *\n * @param {TouchEvent} e The touch event\n * @param {import('@vueuse/core').SwipeDirection} direction The swipe direction of the event\n */\n handleSwipe(e, direction) {\n const minSwipeX = 70;\n const touchZone = 300;\n if (Math.abs(this.swiping.lengthX) > minSwipeX) {\n if (this.swiping.coordsStart.x < touchZone / 2 && direction === \"right\") {\n emit(\"toggle-navigation\", {\n open: true\n });\n } else if (this.swiping.coordsStart.x < touchZone * 1.5 && direction === \"left\") {\n emit(\"toggle-navigation\", {\n open: false\n });\n }\n }\n },\n handlePaneResize(event) {\n const listPaneSize = parseInt(event[0].size, 10);\n browserStorage.setItem(this.paneConfigID, JSON.stringify(listPaneSize));\n this.listPaneSize = listPaneSize;\n this.$emit(\"resize:list\", { size: listPaneSize });\n console.debug(\"AppContent pane config\", listPaneSize);\n },\n // $slots is not reactive, we need to update this manually\n checkSlots() {\n this.hasList = !!this.$scopedSlots.list;\n this.hasContent = !!this.$scopedSlots.default;\n },\n // browserStorage is not reactive, we need to update this manually\n restorePaneConfig() {\n const listPaneSize = parseInt(browserStorage.getItem(this.paneConfigID), 10);\n if (!isNaN(listPaneSize) && listPaneSize !== this.listPaneSize) {\n console.debug(\"AppContent pane config\", listPaneSize);\n this.listPaneSize = listPaneSize;\n return listPaneSize;\n }\n },\n /**\n * The user clicked the back arrow from the details view\n */\n hideDetails() {\n this.$emit(\"update:showDetails\", false);\n }\n }\n};\nvar _sfc_render = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"main\", { staticClass: \"app-content no-snapper\", class: { \"app-content--has-list\": _vm.hasList }, attrs: { \"id\": \"app-content-vue\" } }, [_vm.pageHeading ? _c(\"h1\", { staticClass: \"hidden-visually\" }, [_vm._v(\" \" + _vm._s(_vm.pageHeading) + \" \")]) : _vm._e(), _vm.hasList ? [_vm.isMobile || _vm.layout === \"no-split\" ? _c(\"div\", { staticClass: \"app-content-wrapper app-content-wrapper--no-split\", class: {\n \"app-content-wrapper--show-details\": _vm.showDetails,\n \"app-content-wrapper--show-list\": !_vm.showDetails,\n \"app-content-wrapper--mobile\": _vm.isMobile\n } }, [_vm.showDetails ? _c(\"NcAppDetailsToggle\", { nativeOn: { \"click\": function($event) {\n $event.stopPropagation();\n $event.preventDefault();\n return _vm.hideDetails.apply(null, arguments);\n } } }) : _vm._e(), !_vm.showDetails ? _vm._t(\"list\") : _vm._t(\"default\")], 2) : _vm.layout === \"vertical-split\" || _vm.layout === \"horizontal-split\" ? _c(\"div\", { staticClass: \"app-content-wrapper\" }, [_c(\"Splitpanes\", { staticClass: \"default-theme\", class: {\n \"splitpanes--horizontal\": _vm.layout === \"horizontal-split\",\n \"splitpanes--vertical\": _vm.layout === \"vertical-split\"\n }, attrs: { \"horizontal\": _vm.layout === \"horizontal-split\" }, on: { \"resized\": _vm.handlePaneResize } }, [_c(\"Pane\", { staticClass: \"splitpanes__pane-list\", attrs: { \"size\": _vm.listPaneSize || _vm.paneDefaults.list.size, \"min-size\": _vm.paneDefaults.list.min, \"max-size\": _vm.paneDefaults.list.max } }, [_vm._t(\"list\")], 2), _c(\"Pane\", { staticClass: \"splitpanes__pane-details\", attrs: { \"size\": _vm.detailsPaneSize, \"min-size\": _vm.paneDefaults.details.min, \"max-size\": _vm.paneDefaults.details.max } }, [_vm._t(\"default\")], 2)], 1)], 1) : _vm._e()] : _vm._e(), !_vm.hasList ? _vm._t(\"default\") : _vm._e()], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"de6986e3\"\n);\nconst NcAppContent = __component__.exports;\nexport {\n NcAppContent as N\n};\n","var $placeholder = Symbol();\n\nvar $fakeParent = Symbol();\n\nvar $nextSiblingPatched = Symbol();\n\nvar $childNodesPatched = Symbol();\n\nvar isFrag = function isFrag(node) {\n return \"frag\" in node;\n};\n\nvar parentNodeDescriptor = {\n get: function get() {\n return this[$fakeParent] || this.parentElement;\n },\n configurable: true\n};\n\nvar patchParentNode = function patchParentNode(node, fakeParent) {\n if ($fakeParent in node) {\n return;\n }\n node[$fakeParent] = fakeParent;\n Object.defineProperty(node, \"parentNode\", parentNodeDescriptor);\n};\n\nvar nextSiblingDescriptor = {\n get: function get() {\n var childNodes = this.parentNode.childNodes;\n var index = childNodes.indexOf(this);\n if (index > -1) {\n return childNodes[index + 1] || null;\n }\n return null;\n }\n};\n\nvar patchNextSibling = function patchNextSibling(node) {\n if ($nextSiblingPatched in node) {\n return;\n }\n node[$nextSiblingPatched] = true;\n Object.defineProperty(node, \"nextSibling\", nextSiblingDescriptor);\n};\n\nvar getTopFragment = function getTopFragment(node, fromParent) {\n while (node.parentNode !== fromParent) {\n var _node = node, parentNode = _node.parentNode;\n if (parentNode) {\n node = parentNode;\n }\n }\n return node;\n};\n\nvar getChildNodes;\n\nvar getChildNodesWithFragments = function getChildNodesWithFragments(node) {\n if (!getChildNodes) {\n var _childNodesDescriptor = Object.getOwnPropertyDescriptor(Node.prototype, \"childNodes\");\n getChildNodes = _childNodesDescriptor.get;\n }\n var realChildNodes = getChildNodes.apply(node);\n var childNodes = Array.from(realChildNodes).map((function(childNode) {\n return getTopFragment(childNode, node);\n }));\n return childNodes.filter((function(childNode, index) {\n return childNode !== childNodes[index - 1];\n }));\n};\n\nvar childNodesDescriptor = {\n get: function get() {\n return this.frag || getChildNodesWithFragments(this);\n }\n};\n\nvar firstChildDescriptor = {\n get: function get() {\n return this.childNodes[0] || null;\n }\n};\n\nfunction hasChildNodes() {\n return this.childNodes.length > 0;\n}\n\nvar patchChildNodes = function patchChildNodes(node) {\n if ($childNodesPatched in node) {\n return;\n }\n node[$childNodesPatched] = true;\n Object.defineProperties(node, {\n childNodes: childNodesDescriptor,\n firstChild: firstChildDescriptor\n });\n node.hasChildNodes = hasChildNodes;\n};\n\nfunction before() {\n var _this$frag$;\n (_this$frag$ = this.frag[0]).before.apply(_this$frag$, arguments);\n}\n\nfunction remove() {\n var frag = this.frag;\n var removed = frag.splice(0, frag.length);\n removed.forEach((function(node) {\n node.remove();\n }));\n}\n\nvar getFragmentLeafNodes = function getFragmentLeafNodes(children) {\n var _Array$prototype;\n return (_Array$prototype = Array.prototype).concat.apply(_Array$prototype, children.map((function(childNode) {\n return isFrag(childNode) ? getFragmentLeafNodes(childNode.frag) : childNode;\n })));\n};\n\nvar addPlaceholder = function addPlaceholder(node, insertBeforeNode) {\n var placeholder = node[$placeholder];\n insertBeforeNode.before(placeholder);\n patchParentNode(placeholder, node);\n node.frag.unshift(placeholder);\n};\n\nfunction removeChild(node) {\n if (isFrag(this)) {\n var hasChildInFragment = this.frag.indexOf(node);\n if (hasChildInFragment > -1) {\n var _this$frag$splice = this.frag.splice(hasChildInFragment, 1), removedNode = _this$frag$splice[0];\n if (this.frag.length === 0) {\n addPlaceholder(this, removedNode);\n }\n node.remove();\n }\n } else {\n var children = getChildNodesWithFragments(this);\n var hasChild = children.indexOf(node);\n if (hasChild > -1) {\n node.remove();\n }\n }\n return node;\n}\n\nfunction insertBefore(insertNode, insertBeforeNode) {\n var _this = this;\n var insertNodes = insertNode.frag || [ insertNode ];\n if (isFrag(this)) {\n if (insertNode[$fakeParent] === this && insertNode.parentElement) {\n return insertNode;\n }\n var _frag = this.frag;\n if (insertBeforeNode) {\n var index = _frag.indexOf(insertBeforeNode);\n if (index > -1) {\n _frag.splice.apply(_frag, [ index, 0 ].concat(insertNodes));\n insertBeforeNode.before.apply(insertBeforeNode, insertNodes);\n }\n } else {\n var _lastNode = _frag[_frag.length - 1];\n _frag.push.apply(_frag, insertNodes);\n _lastNode.after.apply(_lastNode, insertNodes);\n }\n removePlaceholder(this);\n } else if (insertBeforeNode) {\n if (this.childNodes.includes(insertBeforeNode)) {\n insertBeforeNode.before.apply(insertBeforeNode, insertNodes);\n }\n } else {\n this.append.apply(this, insertNodes);\n }\n insertNodes.forEach((function(node) {\n patchParentNode(node, _this);\n }));\n var lastNode = insertNodes[insertNodes.length - 1];\n patchNextSibling(lastNode);\n return insertNode;\n}\n\nfunction appendChild(node) {\n if (node[$fakeParent] === this && node.parentElement) {\n return node;\n }\n var frag = this.frag;\n var lastChild = frag[frag.length - 1];\n lastChild.after(node);\n patchParentNode(node, this);\n removePlaceholder(this);\n frag.push(node);\n return node;\n}\n\nvar removePlaceholder = function removePlaceholder(node) {\n var placeholder = node[$placeholder];\n if (node.frag[0] === placeholder) {\n node.frag.shift();\n placeholder.remove();\n }\n};\n\nvar innerHTMLDescriptor = {\n set: function set(htmlString) {\n var _this2 = this;\n if (this.frag[0] !== this[$placeholder]) {\n this.frag.slice().forEach((function(child) {\n return _this2.removeChild(child);\n }));\n }\n if (htmlString) {\n var domify = document.createElement(\"div\");\n domify.innerHTML = htmlString;\n Array.from(domify.childNodes).forEach((function(node) {\n _this2.appendChild(node);\n }));\n }\n },\n get: function get() {\n return \"\";\n }\n};\n\nvar frag = {\n inserted: function inserted(element) {\n var parentNode = element.parentNode, nextSibling = element.nextSibling, previousSibling = element.previousSibling;\n var childNodes = Array.from(element.childNodes);\n var placeholder = document.createComment(\"\");\n if (childNodes.length === 0) {\n childNodes.push(placeholder);\n }\n element.frag = childNodes;\n element[$placeholder] = placeholder;\n var fragment = document.createDocumentFragment();\n fragment.append.apply(fragment, getFragmentLeafNodes(childNodes));\n element.replaceWith(fragment);\n childNodes.forEach((function(node) {\n patchParentNode(node, element);\n patchNextSibling(node);\n }));\n patchChildNodes(element);\n Object.assign(element, {\n remove: remove,\n appendChild: appendChild,\n insertBefore: insertBefore,\n removeChild: removeChild,\n before: before\n });\n Object.defineProperty(element, \"innerHTML\", innerHTMLDescriptor);\n if (parentNode) {\n Object.assign(parentNode, {\n removeChild: removeChild,\n insertBefore: insertBefore\n });\n patchParentNode(element, parentNode);\n patchChildNodes(parentNode);\n }\n if (nextSibling) {\n patchNextSibling(element);\n }\n if (previousSibling) {\n patchNextSibling(previousSibling);\n }\n },\n unbind: function unbind(element) {\n element.remove();\n }\n};\n\nvar fragment = {\n name: \"Fragment\",\n directives: {\n frag: frag\n },\n render: function render(h) {\n return h(\"div\", {\n directives: [ {\n name: \"frag\"\n } ]\n }, this.$slots[\"default\"]);\n }\n};\n\nexport { fragment as Fragment, frag as default };\n","\n\n\n\t\n\t\t\n\t\t\t{{ dateText }}\n\t\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n","export default \"\"","/**\n* @vue/shared v3.5.13\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction makeMap(str) {\n const map = /* @__PURE__ */ Object.create(null);\n for (const key of str.split(\",\")) map[key] = 1;\n return (val) => val in map;\n}\n\nconst EMPTY_OBJ = !!(process.env.NODE_ENV !== \"production\") ? Object.freeze({}) : {};\nconst EMPTY_ARR = !!(process.env.NODE_ENV !== \"production\") ? Object.freeze([]) : [];\nconst NOOP = () => {\n};\nconst NO = () => false;\nconst isOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter\n(key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97);\nconst isModelListener = (key) => key.startsWith(\"onUpdate:\");\nconst extend = Object.assign;\nconst remove = (arr, el) => {\n const i = arr.indexOf(el);\n if (i > -1) {\n arr.splice(i, 1);\n }\n};\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nconst hasOwn = (val, key) => hasOwnProperty.call(val, key);\nconst isArray = Array.isArray;\nconst isMap = (val) => toTypeString(val) === \"[object Map]\";\nconst isSet = (val) => toTypeString(val) === \"[object Set]\";\nconst isDate = (val) => toTypeString(val) === \"[object Date]\";\nconst isRegExp = (val) => toTypeString(val) === \"[object RegExp]\";\nconst isFunction = (val) => typeof val === \"function\";\nconst isString = (val) => typeof val === \"string\";\nconst isSymbol = (val) => typeof val === \"symbol\";\nconst isObject = (val) => val !== null && typeof val === \"object\";\nconst isPromise = (val) => {\n return (isObject(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch);\n};\nconst objectToString = Object.prototype.toString;\nconst toTypeString = (value) => objectToString.call(value);\nconst toRawType = (value) => {\n return toTypeString(value).slice(8, -1);\n};\nconst isPlainObject = (val) => toTypeString(val) === \"[object Object]\";\nconst isIntegerKey = (key) => isString(key) && key !== \"NaN\" && key[0] !== \"-\" && \"\" + parseInt(key, 10) === key;\nconst isReservedProp = /* @__PURE__ */ makeMap(\n // the leading comma is intentional so empty string \"\" is also included\n \",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted\"\n);\nconst isBuiltInDirective = /* @__PURE__ */ makeMap(\n \"bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo\"\n);\nconst cacheStringFunction = (fn) => {\n const cache = /* @__PURE__ */ Object.create(null);\n return (str) => {\n const hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n};\nconst camelizeRE = /-(\\w)/g;\nconst camelize = cacheStringFunction(\n (str) => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : \"\");\n }\n);\nconst hyphenateRE = /\\B([A-Z])/g;\nconst hyphenate = cacheStringFunction(\n (str) => str.replace(hyphenateRE, \"-$1\").toLowerCase()\n);\nconst capitalize = cacheStringFunction((str) => {\n return str.charAt(0).toUpperCase() + str.slice(1);\n});\nconst toHandlerKey = cacheStringFunction(\n (str) => {\n const s = str ? `on${capitalize(str)}` : ``;\n return s;\n }\n);\nconst hasChanged = (value, oldValue) => !Object.is(value, oldValue);\nconst invokeArrayFns = (fns, ...arg) => {\n for (let i = 0; i < fns.length; i++) {\n fns[i](...arg);\n }\n};\nconst def = (obj, key, value, writable = false) => {\n Object.defineProperty(obj, key, {\n configurable: true,\n enumerable: false,\n writable,\n value\n });\n};\nconst looseToNumber = (val) => {\n const n = parseFloat(val);\n return isNaN(n) ? val : n;\n};\nconst toNumber = (val) => {\n const n = isString(val) ? Number(val) : NaN;\n return isNaN(n) ? val : n;\n};\nlet _globalThis;\nconst getGlobalThis = () => {\n return _globalThis || (_globalThis = typeof globalThis !== \"undefined\" ? globalThis : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : typeof global !== \"undefined\" ? global : {});\n};\nconst identRE = /^[_$a-zA-Z\\xA0-\\uFFFF][_$a-zA-Z0-9\\xA0-\\uFFFF]*$/;\nfunction genPropsAccessExp(name) {\n return identRE.test(name) ? `__props.${name}` : `__props[${JSON.stringify(name)}]`;\n}\nfunction genCacheKey(source, options) {\n return source + JSON.stringify(\n options,\n (_, val) => typeof val === \"function\" ? val.toString() : val\n );\n}\n\nconst PatchFlags = {\n \"TEXT\": 1,\n \"1\": \"TEXT\",\n \"CLASS\": 2,\n \"2\": \"CLASS\",\n \"STYLE\": 4,\n \"4\": \"STYLE\",\n \"PROPS\": 8,\n \"8\": \"PROPS\",\n \"FULL_PROPS\": 16,\n \"16\": \"FULL_PROPS\",\n \"NEED_HYDRATION\": 32,\n \"32\": \"NEED_HYDRATION\",\n \"STABLE_FRAGMENT\": 64,\n \"64\": \"STABLE_FRAGMENT\",\n \"KEYED_FRAGMENT\": 128,\n \"128\": \"KEYED_FRAGMENT\",\n \"UNKEYED_FRAGMENT\": 256,\n \"256\": \"UNKEYED_FRAGMENT\",\n \"NEED_PATCH\": 512,\n \"512\": \"NEED_PATCH\",\n \"DYNAMIC_SLOTS\": 1024,\n \"1024\": \"DYNAMIC_SLOTS\",\n \"DEV_ROOT_FRAGMENT\": 2048,\n \"2048\": \"DEV_ROOT_FRAGMENT\",\n \"CACHED\": -1,\n \"-1\": \"CACHED\",\n \"BAIL\": -2,\n \"-2\": \"BAIL\"\n};\nconst PatchFlagNames = {\n [1]: `TEXT`,\n [2]: `CLASS`,\n [4]: `STYLE`,\n [8]: `PROPS`,\n [16]: `FULL_PROPS`,\n [32]: `NEED_HYDRATION`,\n [64]: `STABLE_FRAGMENT`,\n [128]: `KEYED_FRAGMENT`,\n [256]: `UNKEYED_FRAGMENT`,\n [512]: `NEED_PATCH`,\n [1024]: `DYNAMIC_SLOTS`,\n [2048]: `DEV_ROOT_FRAGMENT`,\n [-1]: `HOISTED`,\n [-2]: `BAIL`\n};\n\nconst ShapeFlags = {\n \"ELEMENT\": 1,\n \"1\": \"ELEMENT\",\n \"FUNCTIONAL_COMPONENT\": 2,\n \"2\": \"FUNCTIONAL_COMPONENT\",\n \"STATEFUL_COMPONENT\": 4,\n \"4\": \"STATEFUL_COMPONENT\",\n \"TEXT_CHILDREN\": 8,\n \"8\": \"TEXT_CHILDREN\",\n \"ARRAY_CHILDREN\": 16,\n \"16\": \"ARRAY_CHILDREN\",\n \"SLOTS_CHILDREN\": 32,\n \"32\": \"SLOTS_CHILDREN\",\n \"TELEPORT\": 64,\n \"64\": \"TELEPORT\",\n \"SUSPENSE\": 128,\n \"128\": \"SUSPENSE\",\n \"COMPONENT_SHOULD_KEEP_ALIVE\": 256,\n \"256\": \"COMPONENT_SHOULD_KEEP_ALIVE\",\n \"COMPONENT_KEPT_ALIVE\": 512,\n \"512\": \"COMPONENT_KEPT_ALIVE\",\n \"COMPONENT\": 6,\n \"6\": \"COMPONENT\"\n};\n\nconst SlotFlags = {\n \"STABLE\": 1,\n \"1\": \"STABLE\",\n \"DYNAMIC\": 2,\n \"2\": \"DYNAMIC\",\n \"FORWARDED\": 3,\n \"3\": \"FORWARDED\"\n};\nconst slotFlagsText = {\n [1]: \"STABLE\",\n [2]: \"DYNAMIC\",\n [3]: \"FORWARDED\"\n};\n\nconst GLOBALS_ALLOWED = \"Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol\";\nconst isGloballyAllowed = /* @__PURE__ */ makeMap(GLOBALS_ALLOWED);\nconst isGloballyWhitelisted = isGloballyAllowed;\n\nconst range = 2;\nfunction generateCodeFrame(source, start = 0, end = source.length) {\n start = Math.max(0, Math.min(start, source.length));\n end = Math.max(0, Math.min(end, source.length));\n if (start > end) return \"\";\n let lines = source.split(/(\\r?\\n)/);\n const newlineSequences = lines.filter((_, idx) => idx % 2 === 1);\n lines = lines.filter((_, idx) => idx % 2 === 0);\n let count = 0;\n const res = [];\n for (let i = 0; i < lines.length; i++) {\n count += lines[i].length + (newlineSequences[i] && newlineSequences[i].length || 0);\n if (count >= start) {\n for (let j = i - range; j <= i + range || end > count; j++) {\n if (j < 0 || j >= lines.length) continue;\n const line = j + 1;\n res.push(\n `${line}${\" \".repeat(Math.max(3 - String(line).length, 0))}| ${lines[j]}`\n );\n const lineLength = lines[j].length;\n const newLineSeqLength = newlineSequences[j] && newlineSequences[j].length || 0;\n if (j === i) {\n const pad = start - (count - (lineLength + newLineSeqLength));\n const length = Math.max(\n 1,\n end > count ? lineLength - pad : end - start\n );\n res.push(` | ` + \" \".repeat(pad) + \"^\".repeat(length));\n } else if (j > i) {\n if (end > count) {\n const length = Math.max(Math.min(end - count, lineLength), 1);\n res.push(` | ` + \"^\".repeat(length));\n }\n count += lineLength + newLineSeqLength;\n }\n }\n break;\n }\n }\n return res.join(\"\\n\");\n}\n\nfunction normalizeStyle(value) {\n if (isArray(value)) {\n const res = {};\n for (let i = 0; i < value.length; i++) {\n const item = value[i];\n const normalized = isString(item) ? parseStringStyle(item) : normalizeStyle(item);\n if (normalized) {\n for (const key in normalized) {\n res[key] = normalized[key];\n }\n }\n }\n return res;\n } else if (isString(value) || isObject(value)) {\n return value;\n }\n}\nconst listDelimiterRE = /;(?![^(]*\\))/g;\nconst propertyDelimiterRE = /:([^]+)/;\nconst styleCommentRE = /\\/\\*[^]*?\\*\\//g;\nfunction parseStringStyle(cssText) {\n const ret = {};\n cssText.replace(styleCommentRE, \"\").split(listDelimiterRE).forEach((item) => {\n if (item) {\n const tmp = item.split(propertyDelimiterRE);\n tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return ret;\n}\nfunction stringifyStyle(styles) {\n if (!styles) return \"\";\n if (isString(styles)) return styles;\n let ret = \"\";\n for (const key in styles) {\n const value = styles[key];\n if (isString(value) || typeof value === \"number\") {\n const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);\n ret += `${normalizedKey}:${value};`;\n }\n }\n return ret;\n}\nfunction normalizeClass(value) {\n let res = \"\";\n if (isString(value)) {\n res = value;\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n const normalized = normalizeClass(value[i]);\n if (normalized) {\n res += normalized + \" \";\n }\n }\n } else if (isObject(value)) {\n for (const name in value) {\n if (value[name]) {\n res += name + \" \";\n }\n }\n }\n return res.trim();\n}\nfunction normalizeProps(props) {\n if (!props) return null;\n let { class: klass, style } = props;\n if (klass && !isString(klass)) {\n props.class = normalizeClass(klass);\n }\n if (style) {\n props.style = normalizeStyle(style);\n }\n return props;\n}\n\nconst HTML_TAGS = \"html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot\";\nconst SVG_TAGS = \"svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,feDistantLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,mesh,meshgradient,meshpatch,meshrow,metadata,mpath,path,pattern,polygon,polyline,radialGradient,rect,set,solidcolor,stop,switch,symbol,text,textPath,title,tspan,unknown,use,view\";\nconst MATH_TAGS = \"annotation,annotation-xml,maction,maligngroup,malignmark,math,menclose,merror,mfenced,mfrac,mfraction,mglyph,mi,mlabeledtr,mlongdiv,mmultiscripts,mn,mo,mover,mpadded,mphantom,mprescripts,mroot,mrow,ms,mscarries,mscarry,msgroup,msline,mspace,msqrt,msrow,mstack,mstyle,msub,msubsup,msup,mtable,mtd,mtext,mtr,munder,munderover,none,semantics\";\nconst VOID_TAGS = \"area,base,br,col,embed,hr,img,input,link,meta,param,source,track,wbr\";\nconst isHTMLTag = /* @__PURE__ */ makeMap(HTML_TAGS);\nconst isSVGTag = /* @__PURE__ */ makeMap(SVG_TAGS);\nconst isMathMLTag = /* @__PURE__ */ makeMap(MATH_TAGS);\nconst isVoidTag = /* @__PURE__ */ makeMap(VOID_TAGS);\n\nconst specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`;\nconst isSpecialBooleanAttr = /* @__PURE__ */ makeMap(specialBooleanAttrs);\nconst isBooleanAttr = /* @__PURE__ */ makeMap(\n specialBooleanAttrs + `,async,autofocus,autoplay,controls,default,defer,disabled,hidden,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected`\n);\nfunction includeBooleanAttr(value) {\n return !!value || value === \"\";\n}\nconst unsafeAttrCharRE = /[>/=\"'\\u0009\\u000a\\u000c\\u0020]/;\nconst attrValidationCache = {};\nfunction isSSRSafeAttrName(name) {\n if (attrValidationCache.hasOwnProperty(name)) {\n return attrValidationCache[name];\n }\n const isUnsafe = unsafeAttrCharRE.test(name);\n if (isUnsafe) {\n console.error(`unsafe attribute name: ${name}`);\n }\n return attrValidationCache[name] = !isUnsafe;\n}\nconst propsToAttrMap = {\n acceptCharset: \"accept-charset\",\n className: \"class\",\n htmlFor: \"for\",\n httpEquiv: \"http-equiv\"\n};\nconst isKnownHtmlAttr = /* @__PURE__ */ makeMap(\n `accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,inert,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap`\n);\nconst isKnownSvgAttr = /* @__PURE__ */ makeMap(\n `xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan`\n);\nconst isKnownMathMLAttr = /* @__PURE__ */ makeMap(\n `accent,accentunder,actiontype,align,alignmentscope,altimg,altimg-height,altimg-valign,altimg-width,alttext,bevelled,close,columnsalign,columnlines,columnspan,denomalign,depth,dir,display,displaystyle,encoding,equalcolumns,equalrows,fence,fontstyle,fontweight,form,frame,framespacing,groupalign,height,href,id,indentalign,indentalignfirst,indentalignlast,indentshift,indentshiftfirst,indentshiftlast,indextype,justify,largetop,largeop,lquote,lspace,mathbackground,mathcolor,mathsize,mathvariant,maxsize,minlabelspacing,mode,other,overflow,position,rowalign,rowlines,rowspan,rquote,rspace,scriptlevel,scriptminsize,scriptsizemultiplier,selection,separator,separators,shift,side,src,stackalign,stretchy,subscriptshift,superscriptshift,symmetric,voffset,width,widths,xlink:href,xlink:show,xlink:type,xmlns`\n);\nfunction isRenderableAttrValue(value) {\n if (value == null) {\n return false;\n }\n const type = typeof value;\n return type === \"string\" || type === \"number\" || type === \"boolean\";\n}\n\nconst escapeRE = /[\"'&<>]/;\nfunction escapeHtml(string) {\n const str = \"\" + string;\n const match = escapeRE.exec(str);\n if (!match) {\n return str;\n }\n let html = \"\";\n let escaped;\n let index;\n let lastIndex = 0;\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34:\n escaped = \""\";\n break;\n case 38:\n escaped = \"&\";\n break;\n case 39:\n escaped = \"'\";\n break;\n case 60:\n escaped = \"<\";\n break;\n case 62:\n escaped = \">\";\n break;\n default:\n continue;\n }\n if (lastIndex !== index) {\n html += str.slice(lastIndex, index);\n }\n lastIndex = index + 1;\n html += escaped;\n }\n return lastIndex !== index ? html + str.slice(lastIndex, index) : html;\n}\nconst commentStripRE = /^-?>||--!>|?@[\\\\\\]^`{|}~]/g;\nfunction getEscapedCssVarName(key, doubleEscape) {\n return key.replace(\n cssVarNameEscapeSymbolsRE,\n (s) => doubleEscape ? s === '\"' ? '\\\\\\\\\\\\\"' : `\\\\\\\\${s}` : `\\\\${s}`\n );\n}\n\nfunction looseCompareArrays(a, b) {\n if (a.length !== b.length) return false;\n let equal = true;\n for (let i = 0; equal && i < a.length; i++) {\n equal = looseEqual(a[i], b[i]);\n }\n return equal;\n}\nfunction looseEqual(a, b) {\n if (a === b) return true;\n let aValidType = isDate(a);\n let bValidType = isDate(b);\n if (aValidType || bValidType) {\n return aValidType && bValidType ? a.getTime() === b.getTime() : false;\n }\n aValidType = isSymbol(a);\n bValidType = isSymbol(b);\n if (aValidType || bValidType) {\n return a === b;\n }\n aValidType = isArray(a);\n bValidType = isArray(b);\n if (aValidType || bValidType) {\n return aValidType && bValidType ? looseCompareArrays(a, b) : false;\n }\n aValidType = isObject(a);\n bValidType = isObject(b);\n if (aValidType || bValidType) {\n if (!aValidType || !bValidType) {\n return false;\n }\n const aKeysCount = Object.keys(a).length;\n const bKeysCount = Object.keys(b).length;\n if (aKeysCount !== bKeysCount) {\n return false;\n }\n for (const key in a) {\n const aHasKey = a.hasOwnProperty(key);\n const bHasKey = b.hasOwnProperty(key);\n if (aHasKey && !bHasKey || !aHasKey && bHasKey || !looseEqual(a[key], b[key])) {\n return false;\n }\n }\n }\n return String(a) === String(b);\n}\nfunction looseIndexOf(arr, val) {\n return arr.findIndex((item) => looseEqual(item, val));\n}\n\nconst isRef = (val) => {\n return !!(val && val[\"__v_isRef\"] === true);\n};\nconst toDisplayString = (val) => {\n return isString(val) ? val : val == null ? \"\" : isArray(val) || isObject(val) && (val.toString === objectToString || !isFunction(val.toString)) ? isRef(val) ? toDisplayString(val.value) : JSON.stringify(val, replacer, 2) : String(val);\n};\nconst replacer = (_key, val) => {\n if (isRef(val)) {\n return replacer(_key, val.value);\n } else if (isMap(val)) {\n return {\n [`Map(${val.size})`]: [...val.entries()].reduce(\n (entries, [key, val2], i) => {\n entries[stringifySymbol(key, i) + \" =>\"] = val2;\n return entries;\n },\n {}\n )\n };\n } else if (isSet(val)) {\n return {\n [`Set(${val.size})`]: [...val.values()].map((v) => stringifySymbol(v))\n };\n } else if (isSymbol(val)) {\n return stringifySymbol(val);\n } else if (isObject(val) && !isArray(val) && !isPlainObject(val)) {\n return String(val);\n }\n return val;\n};\nconst stringifySymbol = (v, i = \"\") => {\n var _a;\n return (\n // Symbol.description in es2019+ so we need to cast here to pass\n // the lib: es2016 check\n isSymbol(v) ? `Symbol(${(_a = v.description) != null ? _a : i})` : v\n );\n};\n\nexport { EMPTY_ARR, EMPTY_OBJ, NO, NOOP, PatchFlagNames, PatchFlags, ShapeFlags, SlotFlags, camelize, capitalize, cssVarNameEscapeSymbolsRE, def, escapeHtml, escapeHtmlComment, extend, genCacheKey, genPropsAccessExp, generateCodeFrame, getEscapedCssVarName, getGlobalThis, hasChanged, hasOwn, hyphenate, includeBooleanAttr, invokeArrayFns, isArray, isBooleanAttr, isBuiltInDirective, isDate, isFunction, isGloballyAllowed, isGloballyWhitelisted, isHTMLTag, isIntegerKey, isKnownHtmlAttr, isKnownMathMLAttr, isKnownSvgAttr, isMap, isMathMLTag, isModelListener, isObject, isOn, isPlainObject, isPromise, isRegExp, isRenderableAttrValue, isReservedProp, isSSRSafeAttrName, isSVGTag, isSet, isSpecialBooleanAttr, isString, isSymbol, isVoidTag, looseEqual, looseIndexOf, looseToNumber, makeMap, normalizeClass, normalizeProps, normalizeStyle, objectToString, parseStringStyle, propsToAttrMap, remove, slotFlagsText, stringifyStyle, toDisplayString, toHandlerKey, toNumber, toRawType, toTypeString };\n","/**\n* @vue/reactivity v3.5.13\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\nimport { hasChanged, extend, isArray, isIntegerKey, isSymbol, isMap, hasOwn, isObject, makeMap, toRawType, capitalize, def, isFunction, EMPTY_OBJ, isSet, isPlainObject, NOOP, remove } from '@vue/shared';\n\nfunction warn(msg, ...args) {\n console.warn(`[Vue warn] ${msg}`, ...args);\n}\n\nlet activeEffectScope;\nclass EffectScope {\n constructor(detached = false) {\n this.detached = detached;\n /**\n * @internal\n */\n this._active = true;\n /**\n * @internal\n */\n this.effects = [];\n /**\n * @internal\n */\n this.cleanups = [];\n this._isPaused = false;\n this.parent = activeEffectScope;\n if (!detached && activeEffectScope) {\n this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(\n this\n ) - 1;\n }\n }\n get active() {\n return this._active;\n }\n pause() {\n if (this._active) {\n this._isPaused = true;\n let i, l;\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].pause();\n }\n }\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].pause();\n }\n }\n }\n /**\n * Resumes the effect scope, including all child scopes and effects.\n */\n resume() {\n if (this._active) {\n if (this._isPaused) {\n this._isPaused = false;\n let i, l;\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].resume();\n }\n }\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].resume();\n }\n }\n }\n }\n run(fn) {\n if (this._active) {\n const currentEffectScope = activeEffectScope;\n try {\n activeEffectScope = this;\n return fn();\n } finally {\n activeEffectScope = currentEffectScope;\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(`cannot run an inactive effect scope.`);\n }\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n on() {\n activeEffectScope = this;\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n off() {\n activeEffectScope = this.parent;\n }\n stop(fromParent) {\n if (this._active) {\n this._active = false;\n let i, l;\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].stop();\n }\n this.effects.length = 0;\n for (i = 0, l = this.cleanups.length; i < l; i++) {\n this.cleanups[i]();\n }\n this.cleanups.length = 0;\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].stop(true);\n }\n this.scopes.length = 0;\n }\n if (!this.detached && this.parent && !fromParent) {\n const last = this.parent.scopes.pop();\n if (last && last !== this) {\n this.parent.scopes[this.index] = last;\n last.index = this.index;\n }\n }\n this.parent = void 0;\n }\n }\n}\nfunction effectScope(detached) {\n return new EffectScope(detached);\n}\nfunction getCurrentScope() {\n return activeEffectScope;\n}\nfunction onScopeDispose(fn, failSilently = false) {\n if (activeEffectScope) {\n activeEffectScope.cleanups.push(fn);\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(\n `onScopeDispose() is called when there is no active effect scope to be associated with.`\n );\n }\n}\n\nlet activeSub;\nconst EffectFlags = {\n \"ACTIVE\": 1,\n \"1\": \"ACTIVE\",\n \"RUNNING\": 2,\n \"2\": \"RUNNING\",\n \"TRACKING\": 4,\n \"4\": \"TRACKING\",\n \"NOTIFIED\": 8,\n \"8\": \"NOTIFIED\",\n \"DIRTY\": 16,\n \"16\": \"DIRTY\",\n \"ALLOW_RECURSE\": 32,\n \"32\": \"ALLOW_RECURSE\",\n \"PAUSED\": 64,\n \"64\": \"PAUSED\"\n};\nconst pausedQueueEffects = /* @__PURE__ */ new WeakSet();\nclass ReactiveEffect {\n constructor(fn) {\n this.fn = fn;\n /**\n * @internal\n */\n this.deps = void 0;\n /**\n * @internal\n */\n this.depsTail = void 0;\n /**\n * @internal\n */\n this.flags = 1 | 4;\n /**\n * @internal\n */\n this.next = void 0;\n /**\n * @internal\n */\n this.cleanup = void 0;\n this.scheduler = void 0;\n if (activeEffectScope && activeEffectScope.active) {\n activeEffectScope.effects.push(this);\n }\n }\n pause() {\n this.flags |= 64;\n }\n resume() {\n if (this.flags & 64) {\n this.flags &= ~64;\n if (pausedQueueEffects.has(this)) {\n pausedQueueEffects.delete(this);\n this.trigger();\n }\n }\n }\n /**\n * @internal\n */\n notify() {\n if (this.flags & 2 && !(this.flags & 32)) {\n return;\n }\n if (!(this.flags & 8)) {\n batch(this);\n }\n }\n run() {\n if (!(this.flags & 1)) {\n return this.fn();\n }\n this.flags |= 2;\n cleanupEffect(this);\n prepareDeps(this);\n const prevEffect = activeSub;\n const prevShouldTrack = shouldTrack;\n activeSub = this;\n shouldTrack = true;\n try {\n return this.fn();\n } finally {\n if (!!(process.env.NODE_ENV !== \"production\") && activeSub !== this) {\n warn(\n \"Active effect was not restored correctly - this is likely a Vue internal bug.\"\n );\n }\n cleanupDeps(this);\n activeSub = prevEffect;\n shouldTrack = prevShouldTrack;\n this.flags &= ~2;\n }\n }\n stop() {\n if (this.flags & 1) {\n for (let link = this.deps; link; link = link.nextDep) {\n removeSub(link);\n }\n this.deps = this.depsTail = void 0;\n cleanupEffect(this);\n this.onStop && this.onStop();\n this.flags &= ~1;\n }\n }\n trigger() {\n if (this.flags & 64) {\n pausedQueueEffects.add(this);\n } else if (this.scheduler) {\n this.scheduler();\n } else {\n this.runIfDirty();\n }\n }\n /**\n * @internal\n */\n runIfDirty() {\n if (isDirty(this)) {\n this.run();\n }\n }\n get dirty() {\n return isDirty(this);\n }\n}\nlet batchDepth = 0;\nlet batchedSub;\nlet batchedComputed;\nfunction batch(sub, isComputed = false) {\n sub.flags |= 8;\n if (isComputed) {\n sub.next = batchedComputed;\n batchedComputed = sub;\n return;\n }\n sub.next = batchedSub;\n batchedSub = sub;\n}\nfunction startBatch() {\n batchDepth++;\n}\nfunction endBatch() {\n if (--batchDepth > 0) {\n return;\n }\n if (batchedComputed) {\n let e = batchedComputed;\n batchedComputed = void 0;\n while (e) {\n const next = e.next;\n e.next = void 0;\n e.flags &= ~8;\n e = next;\n }\n }\n let error;\n while (batchedSub) {\n let e = batchedSub;\n batchedSub = void 0;\n while (e) {\n const next = e.next;\n e.next = void 0;\n e.flags &= ~8;\n if (e.flags & 1) {\n try {\n ;\n e.trigger();\n } catch (err) {\n if (!error) error = err;\n }\n }\n e = next;\n }\n }\n if (error) throw error;\n}\nfunction prepareDeps(sub) {\n for (let link = sub.deps; link; link = link.nextDep) {\n link.version = -1;\n link.prevActiveLink = link.dep.activeLink;\n link.dep.activeLink = link;\n }\n}\nfunction cleanupDeps(sub) {\n let head;\n let tail = sub.depsTail;\n let link = tail;\n while (link) {\n const prev = link.prevDep;\n if (link.version === -1) {\n if (link === tail) tail = prev;\n removeSub(link);\n removeDep(link);\n } else {\n head = link;\n }\n link.dep.activeLink = link.prevActiveLink;\n link.prevActiveLink = void 0;\n link = prev;\n }\n sub.deps = head;\n sub.depsTail = tail;\n}\nfunction isDirty(sub) {\n for (let link = sub.deps; link; link = link.nextDep) {\n if (link.dep.version !== link.version || link.dep.computed && (refreshComputed(link.dep.computed) || link.dep.version !== link.version)) {\n return true;\n }\n }\n if (sub._dirty) {\n return true;\n }\n return false;\n}\nfunction refreshComputed(computed) {\n if (computed.flags & 4 && !(computed.flags & 16)) {\n return;\n }\n computed.flags &= ~16;\n if (computed.globalVersion === globalVersion) {\n return;\n }\n computed.globalVersion = globalVersion;\n const dep = computed.dep;\n computed.flags |= 2;\n if (dep.version > 0 && !computed.isSSR && computed.deps && !isDirty(computed)) {\n computed.flags &= ~2;\n return;\n }\n const prevSub = activeSub;\n const prevShouldTrack = shouldTrack;\n activeSub = computed;\n shouldTrack = true;\n try {\n prepareDeps(computed);\n const value = computed.fn(computed._value);\n if (dep.version === 0 || hasChanged(value, computed._value)) {\n computed._value = value;\n dep.version++;\n }\n } catch (err) {\n dep.version++;\n throw err;\n } finally {\n activeSub = prevSub;\n shouldTrack = prevShouldTrack;\n cleanupDeps(computed);\n computed.flags &= ~2;\n }\n}\nfunction removeSub(link, soft = false) {\n const { dep, prevSub, nextSub } = link;\n if (prevSub) {\n prevSub.nextSub = nextSub;\n link.prevSub = void 0;\n }\n if (nextSub) {\n nextSub.prevSub = prevSub;\n link.nextSub = void 0;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && dep.subsHead === link) {\n dep.subsHead = nextSub;\n }\n if (dep.subs === link) {\n dep.subs = prevSub;\n if (!prevSub && dep.computed) {\n dep.computed.flags &= ~4;\n for (let l = dep.computed.deps; l; l = l.nextDep) {\n removeSub(l, true);\n }\n }\n }\n if (!soft && !--dep.sc && dep.map) {\n dep.map.delete(dep.key);\n }\n}\nfunction removeDep(link) {\n const { prevDep, nextDep } = link;\n if (prevDep) {\n prevDep.nextDep = nextDep;\n link.prevDep = void 0;\n }\n if (nextDep) {\n nextDep.prevDep = prevDep;\n link.nextDep = void 0;\n }\n}\nfunction effect(fn, options) {\n if (fn.effect instanceof ReactiveEffect) {\n fn = fn.effect.fn;\n }\n const e = new ReactiveEffect(fn);\n if (options) {\n extend(e, options);\n }\n try {\n e.run();\n } catch (err) {\n e.stop();\n throw err;\n }\n const runner = e.run.bind(e);\n runner.effect = e;\n return runner;\n}\nfunction stop(runner) {\n runner.effect.stop();\n}\nlet shouldTrack = true;\nconst trackStack = [];\nfunction pauseTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = false;\n}\nfunction enableTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = true;\n}\nfunction resetTracking() {\n const last = trackStack.pop();\n shouldTrack = last === void 0 ? true : last;\n}\nfunction onEffectCleanup(fn, failSilently = false) {\n if (activeSub instanceof ReactiveEffect) {\n activeSub.cleanup = fn;\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(\n `onEffectCleanup() was called when there was no active effect to associate with.`\n );\n }\n}\nfunction cleanupEffect(e) {\n const { cleanup } = e;\n e.cleanup = void 0;\n if (cleanup) {\n const prevSub = activeSub;\n activeSub = void 0;\n try {\n cleanup();\n } finally {\n activeSub = prevSub;\n }\n }\n}\n\nlet globalVersion = 0;\nclass Link {\n constructor(sub, dep) {\n this.sub = sub;\n this.dep = dep;\n this.version = dep.version;\n this.nextDep = this.prevDep = this.nextSub = this.prevSub = this.prevActiveLink = void 0;\n }\n}\nclass Dep {\n constructor(computed) {\n this.computed = computed;\n this.version = 0;\n /**\n * Link between this dep and the current active effect\n */\n this.activeLink = void 0;\n /**\n * Doubly linked list representing the subscribing effects (tail)\n */\n this.subs = void 0;\n /**\n * For object property deps cleanup\n */\n this.map = void 0;\n this.key = void 0;\n /**\n * Subscriber counter\n */\n this.sc = 0;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.subsHead = void 0;\n }\n }\n track(debugInfo) {\n if (!activeSub || !shouldTrack || activeSub === this.computed) {\n return;\n }\n let link = this.activeLink;\n if (link === void 0 || link.sub !== activeSub) {\n link = this.activeLink = new Link(activeSub, this);\n if (!activeSub.deps) {\n activeSub.deps = activeSub.depsTail = link;\n } else {\n link.prevDep = activeSub.depsTail;\n activeSub.depsTail.nextDep = link;\n activeSub.depsTail = link;\n }\n addSub(link);\n } else if (link.version === -1) {\n link.version = this.version;\n if (link.nextDep) {\n const next = link.nextDep;\n next.prevDep = link.prevDep;\n if (link.prevDep) {\n link.prevDep.nextDep = next;\n }\n link.prevDep = activeSub.depsTail;\n link.nextDep = void 0;\n activeSub.depsTail.nextDep = link;\n activeSub.depsTail = link;\n if (activeSub.deps === link) {\n activeSub.deps = next;\n }\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") && activeSub.onTrack) {\n activeSub.onTrack(\n extend(\n {\n effect: activeSub\n },\n debugInfo\n )\n );\n }\n return link;\n }\n trigger(debugInfo) {\n this.version++;\n globalVersion++;\n this.notify(debugInfo);\n }\n notify(debugInfo) {\n startBatch();\n try {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n for (let head = this.subsHead; head; head = head.nextSub) {\n if (head.sub.onTrigger && !(head.sub.flags & 8)) {\n head.sub.onTrigger(\n extend(\n {\n effect: head.sub\n },\n debugInfo\n )\n );\n }\n }\n }\n for (let link = this.subs; link; link = link.prevSub) {\n if (link.sub.notify()) {\n ;\n link.sub.dep.notify();\n }\n }\n } finally {\n endBatch();\n }\n }\n}\nfunction addSub(link) {\n link.dep.sc++;\n if (link.sub.flags & 4) {\n const computed = link.dep.computed;\n if (computed && !link.dep.subs) {\n computed.flags |= 4 | 16;\n for (let l = computed.deps; l; l = l.nextDep) {\n addSub(l);\n }\n }\n const currentTail = link.dep.subs;\n if (currentTail !== link) {\n link.prevSub = currentTail;\n if (currentTail) currentTail.nextSub = link;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && link.dep.subsHead === void 0) {\n link.dep.subsHead = link;\n }\n link.dep.subs = link;\n }\n}\nconst targetMap = /* @__PURE__ */ new WeakMap();\nconst ITERATE_KEY = Symbol(\n !!(process.env.NODE_ENV !== \"production\") ? \"Object iterate\" : \"\"\n);\nconst MAP_KEY_ITERATE_KEY = Symbol(\n !!(process.env.NODE_ENV !== \"production\") ? \"Map keys iterate\" : \"\"\n);\nconst ARRAY_ITERATE_KEY = Symbol(\n !!(process.env.NODE_ENV !== \"production\") ? \"Array iterate\" : \"\"\n);\nfunction track(target, type, key) {\n if (shouldTrack && activeSub) {\n let depsMap = targetMap.get(target);\n if (!depsMap) {\n targetMap.set(target, depsMap = /* @__PURE__ */ new Map());\n }\n let dep = depsMap.get(key);\n if (!dep) {\n depsMap.set(key, dep = new Dep());\n dep.map = depsMap;\n dep.key = key;\n }\n if (!!(process.env.NODE_ENV !== \"production\")) {\n dep.track({\n target,\n type,\n key\n });\n } else {\n dep.track();\n }\n }\n}\nfunction trigger(target, type, key, newValue, oldValue, oldTarget) {\n const depsMap = targetMap.get(target);\n if (!depsMap) {\n globalVersion++;\n return;\n }\n const run = (dep) => {\n if (dep) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n dep.trigger({\n target,\n type,\n key,\n newValue,\n oldValue,\n oldTarget\n });\n } else {\n dep.trigger();\n }\n }\n };\n startBatch();\n if (type === \"clear\") {\n depsMap.forEach(run);\n } else {\n const targetIsArray = isArray(target);\n const isArrayIndex = targetIsArray && isIntegerKey(key);\n if (targetIsArray && key === \"length\") {\n const newLength = Number(newValue);\n depsMap.forEach((dep, key2) => {\n if (key2 === \"length\" || key2 === ARRAY_ITERATE_KEY || !isSymbol(key2) && key2 >= newLength) {\n run(dep);\n }\n });\n } else {\n if (key !== void 0 || depsMap.has(void 0)) {\n run(depsMap.get(key));\n }\n if (isArrayIndex) {\n run(depsMap.get(ARRAY_ITERATE_KEY));\n }\n switch (type) {\n case \"add\":\n if (!targetIsArray) {\n run(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n run(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n } else if (isArrayIndex) {\n run(depsMap.get(\"length\"));\n }\n break;\n case \"delete\":\n if (!targetIsArray) {\n run(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n run(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n }\n break;\n case \"set\":\n if (isMap(target)) {\n run(depsMap.get(ITERATE_KEY));\n }\n break;\n }\n }\n }\n endBatch();\n}\nfunction getDepFromReactive(object, key) {\n const depMap = targetMap.get(object);\n return depMap && depMap.get(key);\n}\n\nfunction reactiveReadArray(array) {\n const raw = toRaw(array);\n if (raw === array) return raw;\n track(raw, \"iterate\", ARRAY_ITERATE_KEY);\n return isShallow(array) ? raw : raw.map(toReactive);\n}\nfunction shallowReadArray(arr) {\n track(arr = toRaw(arr), \"iterate\", ARRAY_ITERATE_KEY);\n return arr;\n}\nconst arrayInstrumentations = {\n __proto__: null,\n [Symbol.iterator]() {\n return iterator(this, Symbol.iterator, toReactive);\n },\n concat(...args) {\n return reactiveReadArray(this).concat(\n ...args.map((x) => isArray(x) ? reactiveReadArray(x) : x)\n );\n },\n entries() {\n return iterator(this, \"entries\", (value) => {\n value[1] = toReactive(value[1]);\n return value;\n });\n },\n every(fn, thisArg) {\n return apply(this, \"every\", fn, thisArg, void 0, arguments);\n },\n filter(fn, thisArg) {\n return apply(this, \"filter\", fn, thisArg, (v) => v.map(toReactive), arguments);\n },\n find(fn, thisArg) {\n return apply(this, \"find\", fn, thisArg, toReactive, arguments);\n },\n findIndex(fn, thisArg) {\n return apply(this, \"findIndex\", fn, thisArg, void 0, arguments);\n },\n findLast(fn, thisArg) {\n return apply(this, \"findLast\", fn, thisArg, toReactive, arguments);\n },\n findLastIndex(fn, thisArg) {\n return apply(this, \"findLastIndex\", fn, thisArg, void 0, arguments);\n },\n // flat, flatMap could benefit from ARRAY_ITERATE but are not straight-forward to implement\n forEach(fn, thisArg) {\n return apply(this, \"forEach\", fn, thisArg, void 0, arguments);\n },\n includes(...args) {\n return searchProxy(this, \"includes\", args);\n },\n indexOf(...args) {\n return searchProxy(this, \"indexOf\", args);\n },\n join(separator) {\n return reactiveReadArray(this).join(separator);\n },\n // keys() iterator only reads `length`, no optimisation required\n lastIndexOf(...args) {\n return searchProxy(this, \"lastIndexOf\", args);\n },\n map(fn, thisArg) {\n return apply(this, \"map\", fn, thisArg, void 0, arguments);\n },\n pop() {\n return noTracking(this, \"pop\");\n },\n push(...args) {\n return noTracking(this, \"push\", args);\n },\n reduce(fn, ...args) {\n return reduce(this, \"reduce\", fn, args);\n },\n reduceRight(fn, ...args) {\n return reduce(this, \"reduceRight\", fn, args);\n },\n shift() {\n return noTracking(this, \"shift\");\n },\n // slice could use ARRAY_ITERATE but also seems to beg for range tracking\n some(fn, thisArg) {\n return apply(this, \"some\", fn, thisArg, void 0, arguments);\n },\n splice(...args) {\n return noTracking(this, \"splice\", args);\n },\n toReversed() {\n return reactiveReadArray(this).toReversed();\n },\n toSorted(comparer) {\n return reactiveReadArray(this).toSorted(comparer);\n },\n toSpliced(...args) {\n return reactiveReadArray(this).toSpliced(...args);\n },\n unshift(...args) {\n return noTracking(this, \"unshift\", args);\n },\n values() {\n return iterator(this, \"values\", toReactive);\n }\n};\nfunction iterator(self, method, wrapValue) {\n const arr = shallowReadArray(self);\n const iter = arr[method]();\n if (arr !== self && !isShallow(self)) {\n iter._next = iter.next;\n iter.next = () => {\n const result = iter._next();\n if (result.value) {\n result.value = wrapValue(result.value);\n }\n return result;\n };\n }\n return iter;\n}\nconst arrayProto = Array.prototype;\nfunction apply(self, method, fn, thisArg, wrappedRetFn, args) {\n const arr = shallowReadArray(self);\n const needsWrap = arr !== self && !isShallow(self);\n const methodFn = arr[method];\n if (methodFn !== arrayProto[method]) {\n const result2 = methodFn.apply(self, args);\n return needsWrap ? toReactive(result2) : result2;\n }\n let wrappedFn = fn;\n if (arr !== self) {\n if (needsWrap) {\n wrappedFn = function(item, index) {\n return fn.call(this, toReactive(item), index, self);\n };\n } else if (fn.length > 2) {\n wrappedFn = function(item, index) {\n return fn.call(this, item, index, self);\n };\n }\n }\n const result = methodFn.call(arr, wrappedFn, thisArg);\n return needsWrap && wrappedRetFn ? wrappedRetFn(result) : result;\n}\nfunction reduce(self, method, fn, args) {\n const arr = shallowReadArray(self);\n let wrappedFn = fn;\n if (arr !== self) {\n if (!isShallow(self)) {\n wrappedFn = function(acc, item, index) {\n return fn.call(this, acc, toReactive(item), index, self);\n };\n } else if (fn.length > 3) {\n wrappedFn = function(acc, item, index) {\n return fn.call(this, acc, item, index, self);\n };\n }\n }\n return arr[method](wrappedFn, ...args);\n}\nfunction searchProxy(self, method, args) {\n const arr = toRaw(self);\n track(arr, \"iterate\", ARRAY_ITERATE_KEY);\n const res = arr[method](...args);\n if ((res === -1 || res === false) && isProxy(args[0])) {\n args[0] = toRaw(args[0]);\n return arr[method](...args);\n }\n return res;\n}\nfunction noTracking(self, method, args = []) {\n pauseTracking();\n startBatch();\n const res = toRaw(self)[method].apply(self, args);\n endBatch();\n resetTracking();\n return res;\n}\n\nconst isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);\nconst builtInSymbols = new Set(\n /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== \"arguments\" && key !== \"caller\").map((key) => Symbol[key]).filter(isSymbol)\n);\nfunction hasOwnProperty(key) {\n if (!isSymbol(key)) key = String(key);\n const obj = toRaw(this);\n track(obj, \"has\", key);\n return obj.hasOwnProperty(key);\n}\nclass BaseReactiveHandler {\n constructor(_isReadonly = false, _isShallow = false) {\n this._isReadonly = _isReadonly;\n this._isShallow = _isShallow;\n }\n get(target, key, receiver) {\n if (key === \"__v_skip\") return target[\"__v_skip\"];\n const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow;\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_isShallow\") {\n return isShallow2;\n } else if (key === \"__v_raw\") {\n if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype\n // this means the receiver is a user proxy of the reactive proxy\n Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) {\n return target;\n }\n return;\n }\n const targetIsArray = isArray(target);\n if (!isReadonly2) {\n let fn;\n if (targetIsArray && (fn = arrayInstrumentations[key])) {\n return fn;\n }\n if (key === \"hasOwnProperty\") {\n return hasOwnProperty;\n }\n }\n const res = Reflect.get(\n target,\n key,\n // if this is a proxy wrapping a ref, return methods using the raw ref\n // as receiver so that we don't have to call `toRaw` on the ref in all\n // its class methods\n isRef(target) ? target : receiver\n );\n if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {\n return res;\n }\n if (!isReadonly2) {\n track(target, \"get\", key);\n }\n if (isShallow2) {\n return res;\n }\n if (isRef(res)) {\n return targetIsArray && isIntegerKey(key) ? res : res.value;\n }\n if (isObject(res)) {\n return isReadonly2 ? readonly(res) : reactive(res);\n }\n return res;\n }\n}\nclass MutableReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(false, isShallow2);\n }\n set(target, key, value, receiver) {\n let oldValue = target[key];\n if (!this._isShallow) {\n const isOldValueReadonly = isReadonly(oldValue);\n if (!isShallow(value) && !isReadonly(value)) {\n oldValue = toRaw(oldValue);\n value = toRaw(value);\n }\n if (!isArray(target) && isRef(oldValue) && !isRef(value)) {\n if (isOldValueReadonly) {\n return false;\n } else {\n oldValue.value = value;\n return true;\n }\n }\n }\n const hadKey = isArray(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key);\n const result = Reflect.set(\n target,\n key,\n value,\n isRef(target) ? target : receiver\n );\n if (target === toRaw(receiver)) {\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n }\n return result;\n }\n deleteProperty(target, key) {\n const hadKey = hasOwn(target, key);\n const oldValue = target[key];\n const result = Reflect.deleteProperty(target, key);\n if (result && hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n }\n has(target, key) {\n const result = Reflect.has(target, key);\n if (!isSymbol(key) || !builtInSymbols.has(key)) {\n track(target, \"has\", key);\n }\n return result;\n }\n ownKeys(target) {\n track(\n target,\n \"iterate\",\n isArray(target) ? \"length\" : ITERATE_KEY\n );\n return Reflect.ownKeys(target);\n }\n}\nclass ReadonlyReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(true, isShallow2);\n }\n set(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `Set operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n deleteProperty(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `Delete operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n}\nconst mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler();\nconst readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler();\nconst shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(true);\nconst shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true);\n\nconst toShallow = (value) => value;\nconst getProto = (v) => Reflect.getPrototypeOf(v);\nfunction createIterableMethod(method, isReadonly2, isShallow2) {\n return function(...args) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const targetIsMap = isMap(rawTarget);\n const isPair = method === \"entries\" || method === Symbol.iterator && targetIsMap;\n const isKeyOnly = method === \"keys\" && targetIsMap;\n const innerIterator = target[method](...args);\n const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;\n !isReadonly2 && track(\n rawTarget,\n \"iterate\",\n isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY\n );\n return {\n // iterator protocol\n next() {\n const { value, done } = innerIterator.next();\n return done ? { value, done } : {\n value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),\n done\n };\n },\n // iterable protocol\n [Symbol.iterator]() {\n return this;\n }\n };\n };\n}\nfunction createReadonlyMethod(type) {\n return function(...args) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const key = args[0] ? `on key \"${args[0]}\" ` : ``;\n warn(\n `${capitalize(type)} operation ${key}failed: target is readonly.`,\n toRaw(this)\n );\n }\n return type === \"delete\" ? false : type === \"clear\" ? void 0 : this;\n };\n}\nfunction createInstrumentations(readonly, shallow) {\n const instrumentations = {\n get(key) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!readonly) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"get\", key);\n }\n track(rawTarget, \"get\", rawKey);\n }\n const { has } = getProto(rawTarget);\n const wrap = shallow ? toShallow : readonly ? toReadonly : toReactive;\n if (has.call(rawTarget, key)) {\n return wrap(target.get(key));\n } else if (has.call(rawTarget, rawKey)) {\n return wrap(target.get(rawKey));\n } else if (target !== rawTarget) {\n target.get(key);\n }\n },\n get size() {\n const target = this[\"__v_raw\"];\n !readonly && track(toRaw(target), \"iterate\", ITERATE_KEY);\n return Reflect.get(target, \"size\", target);\n },\n has(key) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!readonly) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"has\", key);\n }\n track(rawTarget, \"has\", rawKey);\n }\n return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey);\n },\n forEach(callback, thisArg) {\n const observed = this;\n const target = observed[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const wrap = shallow ? toShallow : readonly ? toReadonly : toReactive;\n !readonly && track(rawTarget, \"iterate\", ITERATE_KEY);\n return target.forEach((value, key) => {\n return callback.call(thisArg, wrap(value), wrap(key), observed);\n });\n }\n };\n extend(\n instrumentations,\n readonly ? {\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\")\n } : {\n add(value) {\n if (!shallow && !isShallow(value) && !isReadonly(value)) {\n value = toRaw(value);\n }\n const target = toRaw(this);\n const proto = getProto(target);\n const hadKey = proto.has.call(target, value);\n if (!hadKey) {\n target.add(value);\n trigger(target, \"add\", value, value);\n }\n return this;\n },\n set(key, value) {\n if (!shallow && !isShallow(value) && !isReadonly(value)) {\n value = toRaw(value);\n }\n const target = toRaw(this);\n const { has, get } = getProto(target);\n let hadKey = has.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has, key);\n }\n const oldValue = get.call(target, key);\n target.set(key, value);\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n return this;\n },\n delete(key) {\n const target = toRaw(this);\n const { has, get } = getProto(target);\n let hadKey = has.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has, key);\n }\n const oldValue = get ? get.call(target, key) : void 0;\n const result = target.delete(key);\n if (hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n },\n clear() {\n const target = toRaw(this);\n const hadItems = target.size !== 0;\n const oldTarget = !!(process.env.NODE_ENV !== \"production\") ? isMap(target) ? new Map(target) : new Set(target) : void 0;\n const result = target.clear();\n if (hadItems) {\n trigger(\n target,\n \"clear\",\n void 0,\n void 0,\n oldTarget\n );\n }\n return result;\n }\n }\n );\n const iteratorMethods = [\n \"keys\",\n \"values\",\n \"entries\",\n Symbol.iterator\n ];\n iteratorMethods.forEach((method) => {\n instrumentations[method] = createIterableMethod(method, readonly, shallow);\n });\n return instrumentations;\n}\nfunction createInstrumentationGetter(isReadonly2, shallow) {\n const instrumentations = createInstrumentations(isReadonly2, shallow);\n return (target, key, receiver) => {\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_raw\") {\n return target;\n }\n return Reflect.get(\n hasOwn(instrumentations, key) && key in target ? instrumentations : target,\n key,\n receiver\n );\n };\n}\nconst mutableCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, false)\n};\nconst shallowCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, true)\n};\nconst readonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, false)\n};\nconst shallowReadonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, true)\n};\nfunction checkIdentityKeys(target, has, key) {\n const rawKey = toRaw(key);\n if (rawKey !== key && has.call(target, rawKey)) {\n const type = toRawType(target);\n warn(\n `Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`\n );\n }\n}\n\nconst reactiveMap = /* @__PURE__ */ new WeakMap();\nconst shallowReactiveMap = /* @__PURE__ */ new WeakMap();\nconst readonlyMap = /* @__PURE__ */ new WeakMap();\nconst shallowReadonlyMap = /* @__PURE__ */ new WeakMap();\nfunction targetTypeMap(rawType) {\n switch (rawType) {\n case \"Object\":\n case \"Array\":\n return 1 /* COMMON */;\n case \"Map\":\n case \"Set\":\n case \"WeakMap\":\n case \"WeakSet\":\n return 2 /* COLLECTION */;\n default:\n return 0 /* INVALID */;\n }\n}\nfunction getTargetType(value) {\n return value[\"__v_skip\"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));\n}\nfunction reactive(target) {\n if (isReadonly(target)) {\n return target;\n }\n return createReactiveObject(\n target,\n false,\n mutableHandlers,\n mutableCollectionHandlers,\n reactiveMap\n );\n}\nfunction shallowReactive(target) {\n return createReactiveObject(\n target,\n false,\n shallowReactiveHandlers,\n shallowCollectionHandlers,\n shallowReactiveMap\n );\n}\nfunction readonly(target) {\n return createReactiveObject(\n target,\n true,\n readonlyHandlers,\n readonlyCollectionHandlers,\n readonlyMap\n );\n}\nfunction shallowReadonly(target) {\n return createReactiveObject(\n target,\n true,\n shallowReadonlyHandlers,\n shallowReadonlyCollectionHandlers,\n shallowReadonlyMap\n );\n}\nfunction createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) {\n if (!isObject(target)) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `value cannot be made ${isReadonly2 ? \"readonly\" : \"reactive\"}: ${String(\n target\n )}`\n );\n }\n return target;\n }\n if (target[\"__v_raw\"] && !(isReadonly2 && target[\"__v_isReactive\"])) {\n return target;\n }\n const existingProxy = proxyMap.get(target);\n if (existingProxy) {\n return existingProxy;\n }\n const targetType = getTargetType(target);\n if (targetType === 0 /* INVALID */) {\n return target;\n }\n const proxy = new Proxy(\n target,\n targetType === 2 /* COLLECTION */ ? collectionHandlers : baseHandlers\n );\n proxyMap.set(target, proxy);\n return proxy;\n}\nfunction isReactive(value) {\n if (isReadonly(value)) {\n return isReactive(value[\"__v_raw\"]);\n }\n return !!(value && value[\"__v_isReactive\"]);\n}\nfunction isReadonly(value) {\n return !!(value && value[\"__v_isReadonly\"]);\n}\nfunction isShallow(value) {\n return !!(value && value[\"__v_isShallow\"]);\n}\nfunction isProxy(value) {\n return value ? !!value[\"__v_raw\"] : false;\n}\nfunction toRaw(observed) {\n const raw = observed && observed[\"__v_raw\"];\n return raw ? toRaw(raw) : observed;\n}\nfunction markRaw(value) {\n if (!hasOwn(value, \"__v_skip\") && Object.isExtensible(value)) {\n def(value, \"__v_skip\", true);\n }\n return value;\n}\nconst toReactive = (value) => isObject(value) ? reactive(value) : value;\nconst toReadonly = (value) => isObject(value) ? readonly(value) : value;\n\nfunction isRef(r) {\n return r ? r[\"__v_isRef\"] === true : false;\n}\nfunction ref(value) {\n return createRef(value, false);\n}\nfunction shallowRef(value) {\n return createRef(value, true);\n}\nfunction createRef(rawValue, shallow) {\n if (isRef(rawValue)) {\n return rawValue;\n }\n return new RefImpl(rawValue, shallow);\n}\nclass RefImpl {\n constructor(value, isShallow2) {\n this.dep = new Dep();\n this[\"__v_isRef\"] = true;\n this[\"__v_isShallow\"] = false;\n this._rawValue = isShallow2 ? value : toRaw(value);\n this._value = isShallow2 ? value : toReactive(value);\n this[\"__v_isShallow\"] = isShallow2;\n }\n get value() {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.dep.track({\n target: this,\n type: \"get\",\n key: \"value\"\n });\n } else {\n this.dep.track();\n }\n return this._value;\n }\n set value(newValue) {\n const oldValue = this._rawValue;\n const useDirectValue = this[\"__v_isShallow\"] || isShallow(newValue) || isReadonly(newValue);\n newValue = useDirectValue ? newValue : toRaw(newValue);\n if (hasChanged(newValue, oldValue)) {\n this._rawValue = newValue;\n this._value = useDirectValue ? newValue : toReactive(newValue);\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.dep.trigger({\n target: this,\n type: \"set\",\n key: \"value\",\n newValue,\n oldValue\n });\n } else {\n this.dep.trigger();\n }\n }\n }\n}\nfunction triggerRef(ref2) {\n if (ref2.dep) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n ref2.dep.trigger({\n target: ref2,\n type: \"set\",\n key: \"value\",\n newValue: ref2._value\n });\n } else {\n ref2.dep.trigger();\n }\n }\n}\nfunction unref(ref2) {\n return isRef(ref2) ? ref2.value : ref2;\n}\nfunction toValue(source) {\n return isFunction(source) ? source() : unref(source);\n}\nconst shallowUnwrapHandlers = {\n get: (target, key, receiver) => key === \"__v_raw\" ? target : unref(Reflect.get(target, key, receiver)),\n set: (target, key, value, receiver) => {\n const oldValue = target[key];\n if (isRef(oldValue) && !isRef(value)) {\n oldValue.value = value;\n return true;\n } else {\n return Reflect.set(target, key, value, receiver);\n }\n }\n};\nfunction proxyRefs(objectWithRefs) {\n return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);\n}\nclass CustomRefImpl {\n constructor(factory) {\n this[\"__v_isRef\"] = true;\n this._value = void 0;\n const dep = this.dep = new Dep();\n const { get, set } = factory(dep.track.bind(dep), dep.trigger.bind(dep));\n this._get = get;\n this._set = set;\n }\n get value() {\n return this._value = this._get();\n }\n set value(newVal) {\n this._set(newVal);\n }\n}\nfunction customRef(factory) {\n return new CustomRefImpl(factory);\n}\nfunction toRefs(object) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isProxy(object)) {\n warn(`toRefs() expects a reactive object but received a plain one.`);\n }\n const ret = isArray(object) ? new Array(object.length) : {};\n for (const key in object) {\n ret[key] = propertyToRef(object, key);\n }\n return ret;\n}\nclass ObjectRefImpl {\n constructor(_object, _key, _defaultValue) {\n this._object = _object;\n this._key = _key;\n this._defaultValue = _defaultValue;\n this[\"__v_isRef\"] = true;\n this._value = void 0;\n }\n get value() {\n const val = this._object[this._key];\n return this._value = val === void 0 ? this._defaultValue : val;\n }\n set value(newVal) {\n this._object[this._key] = newVal;\n }\n get dep() {\n return getDepFromReactive(toRaw(this._object), this._key);\n }\n}\nclass GetterRefImpl {\n constructor(_getter) {\n this._getter = _getter;\n this[\"__v_isRef\"] = true;\n this[\"__v_isReadonly\"] = true;\n this._value = void 0;\n }\n get value() {\n return this._value = this._getter();\n }\n}\nfunction toRef(source, key, defaultValue) {\n if (isRef(source)) {\n return source;\n } else if (isFunction(source)) {\n return new GetterRefImpl(source);\n } else if (isObject(source) && arguments.length > 1) {\n return propertyToRef(source, key, defaultValue);\n } else {\n return ref(source);\n }\n}\nfunction propertyToRef(source, key, defaultValue) {\n const val = source[key];\n return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue);\n}\n\nclass ComputedRefImpl {\n constructor(fn, setter, isSSR) {\n this.fn = fn;\n this.setter = setter;\n /**\n * @internal\n */\n this._value = void 0;\n /**\n * @internal\n */\n this.dep = new Dep(this);\n /**\n * @internal\n */\n this.__v_isRef = true;\n // TODO isolatedDeclarations \"__v_isReadonly\"\n // A computed is also a subscriber that tracks other deps\n /**\n * @internal\n */\n this.deps = void 0;\n /**\n * @internal\n */\n this.depsTail = void 0;\n /**\n * @internal\n */\n this.flags = 16;\n /**\n * @internal\n */\n this.globalVersion = globalVersion - 1;\n /**\n * @internal\n */\n this.next = void 0;\n // for backwards compat\n this.effect = this;\n this[\"__v_isReadonly\"] = !setter;\n this.isSSR = isSSR;\n }\n /**\n * @internal\n */\n notify() {\n this.flags |= 16;\n if (!(this.flags & 8) && // avoid infinite self recursion\n activeSub !== this) {\n batch(this, true);\n return true;\n } else if (!!(process.env.NODE_ENV !== \"production\")) ;\n }\n get value() {\n const link = !!(process.env.NODE_ENV !== \"production\") ? this.dep.track({\n target: this,\n type: \"get\",\n key: \"value\"\n }) : this.dep.track();\n refreshComputed(this);\n if (link) {\n link.version = this.dep.version;\n }\n return this._value;\n }\n set value(newValue) {\n if (this.setter) {\n this.setter(newValue);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\"Write operation failed: computed value is readonly\");\n }\n }\n}\nfunction computed(getterOrOptions, debugOptions, isSSR = false) {\n let getter;\n let setter;\n if (isFunction(getterOrOptions)) {\n getter = getterOrOptions;\n } else {\n getter = getterOrOptions.get;\n setter = getterOrOptions.set;\n }\n const cRef = new ComputedRefImpl(getter, setter, isSSR);\n if (!!(process.env.NODE_ENV !== \"production\") && debugOptions && !isSSR) {\n cRef.onTrack = debugOptions.onTrack;\n cRef.onTrigger = debugOptions.onTrigger;\n }\n return cRef;\n}\n\nconst TrackOpTypes = {\n \"GET\": \"get\",\n \"HAS\": \"has\",\n \"ITERATE\": \"iterate\"\n};\nconst TriggerOpTypes = {\n \"SET\": \"set\",\n \"ADD\": \"add\",\n \"DELETE\": \"delete\",\n \"CLEAR\": \"clear\"\n};\nconst ReactiveFlags = {\n \"SKIP\": \"__v_skip\",\n \"IS_REACTIVE\": \"__v_isReactive\",\n \"IS_READONLY\": \"__v_isReadonly\",\n \"IS_SHALLOW\": \"__v_isShallow\",\n \"RAW\": \"__v_raw\",\n \"IS_REF\": \"__v_isRef\"\n};\n\nconst WatchErrorCodes = {\n \"WATCH_GETTER\": 2,\n \"2\": \"WATCH_GETTER\",\n \"WATCH_CALLBACK\": 3,\n \"3\": \"WATCH_CALLBACK\",\n \"WATCH_CLEANUP\": 4,\n \"4\": \"WATCH_CLEANUP\"\n};\nconst INITIAL_WATCHER_VALUE = {};\nconst cleanupMap = /* @__PURE__ */ new WeakMap();\nlet activeWatcher = void 0;\nfunction getCurrentWatcher() {\n return activeWatcher;\n}\nfunction onWatcherCleanup(cleanupFn, failSilently = false, owner = activeWatcher) {\n if (owner) {\n let cleanups = cleanupMap.get(owner);\n if (!cleanups) cleanupMap.set(owner, cleanups = []);\n cleanups.push(cleanupFn);\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(\n `onWatcherCleanup() was called when there was no active watcher to associate with.`\n );\n }\n}\nfunction watch(source, cb, options = EMPTY_OBJ) {\n const { immediate, deep, once, scheduler, augmentJob, call } = options;\n const warnInvalidSource = (s) => {\n (options.onWarn || warn)(\n `Invalid watch source: `,\n s,\n `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`\n );\n };\n const reactiveGetter = (source2) => {\n if (deep) return source2;\n if (isShallow(source2) || deep === false || deep === 0)\n return traverse(source2, 1);\n return traverse(source2);\n };\n let effect;\n let getter;\n let cleanup;\n let boundCleanup;\n let forceTrigger = false;\n let isMultiSource = false;\n if (isRef(source)) {\n getter = () => source.value;\n forceTrigger = isShallow(source);\n } else if (isReactive(source)) {\n getter = () => reactiveGetter(source);\n forceTrigger = true;\n } else if (isArray(source)) {\n isMultiSource = true;\n forceTrigger = source.some((s) => isReactive(s) || isShallow(s));\n getter = () => source.map((s) => {\n if (isRef(s)) {\n return s.value;\n } else if (isReactive(s)) {\n return reactiveGetter(s);\n } else if (isFunction(s)) {\n return call ? call(s, 2) : s();\n } else {\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(s);\n }\n });\n } else if (isFunction(source)) {\n if (cb) {\n getter = call ? () => call(source, 2) : source;\n } else {\n getter = () => {\n if (cleanup) {\n pauseTracking();\n try {\n cleanup();\n } finally {\n resetTracking();\n }\n }\n const currentEffect = activeWatcher;\n activeWatcher = effect;\n try {\n return call ? call(source, 3, [boundCleanup]) : source(boundCleanup);\n } finally {\n activeWatcher = currentEffect;\n }\n };\n }\n } else {\n getter = NOOP;\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(source);\n }\n if (cb && deep) {\n const baseGetter = getter;\n const depth = deep === true ? Infinity : deep;\n getter = () => traverse(baseGetter(), depth);\n }\n const scope = getCurrentScope();\n const watchHandle = () => {\n effect.stop();\n if (scope && scope.active) {\n remove(scope.effects, effect);\n }\n };\n if (once && cb) {\n const _cb = cb;\n cb = (...args) => {\n _cb(...args);\n watchHandle();\n };\n }\n let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;\n const job = (immediateFirstRun) => {\n if (!(effect.flags & 1) || !effect.dirty && !immediateFirstRun) {\n return;\n }\n if (cb) {\n const newValue = effect.run();\n if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue))) {\n if (cleanup) {\n cleanup();\n }\n const currentWatcher = activeWatcher;\n activeWatcher = effect;\n try {\n const args = [\n newValue,\n // pass undefined as the old value when it's changed for the first time\n oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue,\n boundCleanup\n ];\n call ? call(cb, 3, args) : (\n // @ts-expect-error\n cb(...args)\n );\n oldValue = newValue;\n } finally {\n activeWatcher = currentWatcher;\n }\n }\n } else {\n effect.run();\n }\n };\n if (augmentJob) {\n augmentJob(job);\n }\n effect = new ReactiveEffect(getter);\n effect.scheduler = scheduler ? () => scheduler(job, false) : job;\n boundCleanup = (fn) => onWatcherCleanup(fn, false, effect);\n cleanup = effect.onStop = () => {\n const cleanups = cleanupMap.get(effect);\n if (cleanups) {\n if (call) {\n call(cleanups, 4);\n } else {\n for (const cleanup2 of cleanups) cleanup2();\n }\n cleanupMap.delete(effect);\n }\n };\n if (!!(process.env.NODE_ENV !== \"production\")) {\n effect.onTrack = options.onTrack;\n effect.onTrigger = options.onTrigger;\n }\n if (cb) {\n if (immediate) {\n job(true);\n } else {\n oldValue = effect.run();\n }\n } else if (scheduler) {\n scheduler(job.bind(null, true), true);\n } else {\n effect.run();\n }\n watchHandle.pause = effect.pause.bind(effect);\n watchHandle.resume = effect.resume.bind(effect);\n watchHandle.stop = watchHandle;\n return watchHandle;\n}\nfunction traverse(value, depth = Infinity, seen) {\n if (depth <= 0 || !isObject(value) || value[\"__v_skip\"]) {\n return value;\n }\n seen = seen || /* @__PURE__ */ new Set();\n if (seen.has(value)) {\n return value;\n }\n seen.add(value);\n depth--;\n if (isRef(value)) {\n traverse(value.value, depth, seen);\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n traverse(value[i], depth, seen);\n }\n } else if (isSet(value) || isMap(value)) {\n value.forEach((v) => {\n traverse(v, depth, seen);\n });\n } else if (isPlainObject(value)) {\n for (const key in value) {\n traverse(value[key], depth, seen);\n }\n for (const key of Object.getOwnPropertySymbols(value)) {\n if (Object.prototype.propertyIsEnumerable.call(value, key)) {\n traverse(value[key], depth, seen);\n }\n }\n }\n return value;\n}\n\nexport { ARRAY_ITERATE_KEY, EffectFlags, EffectScope, ITERATE_KEY, MAP_KEY_ITERATE_KEY, ReactiveEffect, ReactiveFlags, TrackOpTypes, TriggerOpTypes, WatchErrorCodes, computed, customRef, effect, effectScope, enableTracking, getCurrentScope, getCurrentWatcher, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onEffectCleanup, onScopeDispose, onWatcherCleanup, pauseTracking, proxyRefs, reactive, reactiveReadArray, readonly, ref, resetTracking, shallowReactive, shallowReadArray, shallowReadonly, shallowRef, stop, toRaw, toReactive, toReadonly, toRef, toRefs, toValue, track, traverse, trigger, triggerRef, unref, watch };\n","/**\n* @vue/runtime-core v3.5.13\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\nimport { pauseTracking, resetTracking, isRef, toRaw, traverse, shallowRef, readonly, isReactive, ref, isShallow, shallowReadArray, toReactive, shallowReadonly, track, reactive, shallowReactive, trigger, ReactiveEffect, watch as watch$1, customRef, isProxy, proxyRefs, markRaw, EffectScope, computed as computed$1, isReadonly } from '@vue/reactivity';\nexport { EffectScope, ReactiveEffect, TrackOpTypes, TriggerOpTypes, customRef, effect, effectScope, getCurrentScope, getCurrentWatcher, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onScopeDispose, onWatcherCleanup, proxyRefs, reactive, readonly, ref, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, toValue, triggerRef, unref } from '@vue/reactivity';\nimport { isString, isFunction, isPromise, isArray, EMPTY_OBJ, NOOP, getGlobalThis, extend, isBuiltInDirective, hasOwn, remove, def, isOn, isReservedProp, normalizeClass, stringifyStyle, normalizeStyle, isKnownSvgAttr, isBooleanAttr, isKnownHtmlAttr, includeBooleanAttr, isRenderableAttrValue, getEscapedCssVarName, isObject, isRegExp, invokeArrayFns, toHandlerKey, capitalize, camelize, isSymbol, isGloballyAllowed, NO, hyphenate, EMPTY_ARR, toRawType, makeMap, hasChanged, looseToNumber, isModelListener, toNumber } from '@vue/shared';\nexport { camelize, capitalize, normalizeClass, normalizeProps, normalizeStyle, toDisplayString, toHandlerKey } from '@vue/shared';\n\nconst stack = [];\nfunction pushWarningContext(vnode) {\n stack.push(vnode);\n}\nfunction popWarningContext() {\n stack.pop();\n}\nlet isWarning = false;\nfunction warn$1(msg, ...args) {\n if (isWarning) return;\n isWarning = true;\n pauseTracking();\n const instance = stack.length ? stack[stack.length - 1].component : null;\n const appWarnHandler = instance && instance.appContext.config.warnHandler;\n const trace = getComponentTrace();\n if (appWarnHandler) {\n callWithErrorHandling(\n appWarnHandler,\n instance,\n 11,\n [\n // eslint-disable-next-line no-restricted-syntax\n msg + args.map((a) => {\n var _a, _b;\n return (_b = (_a = a.toString) == null ? void 0 : _a.call(a)) != null ? _b : JSON.stringify(a);\n }).join(\"\"),\n instance && instance.proxy,\n trace.map(\n ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>`\n ).join(\"\\n\"),\n trace\n ]\n );\n } else {\n const warnArgs = [`[Vue warn]: ${msg}`, ...args];\n if (trace.length && // avoid spamming console during tests\n true) {\n warnArgs.push(`\n`, ...formatTrace(trace));\n }\n console.warn(...warnArgs);\n }\n resetTracking();\n isWarning = false;\n}\nfunction getComponentTrace() {\n let currentVNode = stack[stack.length - 1];\n if (!currentVNode) {\n return [];\n }\n const normalizedStack = [];\n while (currentVNode) {\n const last = normalizedStack[0];\n if (last && last.vnode === currentVNode) {\n last.recurseCount++;\n } else {\n normalizedStack.push({\n vnode: currentVNode,\n recurseCount: 0\n });\n }\n const parentInstance = currentVNode.component && currentVNode.component.parent;\n currentVNode = parentInstance && parentInstance.vnode;\n }\n return normalizedStack;\n}\nfunction formatTrace(trace) {\n const logs = [];\n trace.forEach((entry, i) => {\n logs.push(...i === 0 ? [] : [`\n`], ...formatTraceEntry(entry));\n });\n return logs;\n}\nfunction formatTraceEntry({ vnode, recurseCount }) {\n const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``;\n const isRoot = vnode.component ? vnode.component.parent == null : false;\n const open = ` at <${formatComponentName(\n vnode.component,\n vnode.type,\n isRoot\n )}`;\n const close = `>` + postfix;\n return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close];\n}\nfunction formatProps(props) {\n const res = [];\n const keys = Object.keys(props);\n keys.slice(0, 3).forEach((key) => {\n res.push(...formatProp(key, props[key]));\n });\n if (keys.length > 3) {\n res.push(` ...`);\n }\n return res;\n}\nfunction formatProp(key, value, raw) {\n if (isString(value)) {\n value = JSON.stringify(value);\n return raw ? value : [`${key}=${value}`];\n } else if (typeof value === \"number\" || typeof value === \"boolean\" || value == null) {\n return raw ? value : [`${key}=${value}`];\n } else if (isRef(value)) {\n value = formatProp(key, toRaw(value.value), true);\n return raw ? value : [`${key}=Ref<`, value, `>`];\n } else if (isFunction(value)) {\n return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];\n } else {\n value = toRaw(value);\n return raw ? value : [`${key}=`, value];\n }\n}\nfunction assertNumber(val, type) {\n if (!!!(process.env.NODE_ENV !== \"production\")) return;\n if (val === void 0) {\n return;\n } else if (typeof val !== \"number\") {\n warn$1(`${type} is not a valid number - got ${JSON.stringify(val)}.`);\n } else if (isNaN(val)) {\n warn$1(`${type} is NaN - the duration expression might be incorrect.`);\n }\n}\n\nconst ErrorCodes = {\n \"SETUP_FUNCTION\": 0,\n \"0\": \"SETUP_FUNCTION\",\n \"RENDER_FUNCTION\": 1,\n \"1\": \"RENDER_FUNCTION\",\n \"NATIVE_EVENT_HANDLER\": 5,\n \"5\": \"NATIVE_EVENT_HANDLER\",\n \"COMPONENT_EVENT_HANDLER\": 6,\n \"6\": \"COMPONENT_EVENT_HANDLER\",\n \"VNODE_HOOK\": 7,\n \"7\": \"VNODE_HOOK\",\n \"DIRECTIVE_HOOK\": 8,\n \"8\": \"DIRECTIVE_HOOK\",\n \"TRANSITION_HOOK\": 9,\n \"9\": \"TRANSITION_HOOK\",\n \"APP_ERROR_HANDLER\": 10,\n \"10\": \"APP_ERROR_HANDLER\",\n \"APP_WARN_HANDLER\": 11,\n \"11\": \"APP_WARN_HANDLER\",\n \"FUNCTION_REF\": 12,\n \"12\": \"FUNCTION_REF\",\n \"ASYNC_COMPONENT_LOADER\": 13,\n \"13\": \"ASYNC_COMPONENT_LOADER\",\n \"SCHEDULER\": 14,\n \"14\": \"SCHEDULER\",\n \"COMPONENT_UPDATE\": 15,\n \"15\": \"COMPONENT_UPDATE\",\n \"APP_UNMOUNT_CLEANUP\": 16,\n \"16\": \"APP_UNMOUNT_CLEANUP\"\n};\nconst ErrorTypeStrings$1 = {\n [\"sp\"]: \"serverPrefetch hook\",\n [\"bc\"]: \"beforeCreate hook\",\n [\"c\"]: \"created hook\",\n [\"bm\"]: \"beforeMount hook\",\n [\"m\"]: \"mounted hook\",\n [\"bu\"]: \"beforeUpdate hook\",\n [\"u\"]: \"updated\",\n [\"bum\"]: \"beforeUnmount hook\",\n [\"um\"]: \"unmounted hook\",\n [\"a\"]: \"activated hook\",\n [\"da\"]: \"deactivated hook\",\n [\"ec\"]: \"errorCaptured hook\",\n [\"rtc\"]: \"renderTracked hook\",\n [\"rtg\"]: \"renderTriggered hook\",\n [0]: \"setup function\",\n [1]: \"render function\",\n [2]: \"watcher getter\",\n [3]: \"watcher callback\",\n [4]: \"watcher cleanup function\",\n [5]: \"native event handler\",\n [6]: \"component event handler\",\n [7]: \"vnode hook\",\n [8]: \"directive hook\",\n [9]: \"transition hook\",\n [10]: \"app errorHandler\",\n [11]: \"app warnHandler\",\n [12]: \"ref function\",\n [13]: \"async component loader\",\n [14]: \"scheduler flush\",\n [15]: \"component update\",\n [16]: \"app unmount cleanup function\"\n};\nfunction callWithErrorHandling(fn, instance, type, args) {\n try {\n return args ? fn(...args) : fn();\n } catch (err) {\n handleError(err, instance, type);\n }\n}\nfunction callWithAsyncErrorHandling(fn, instance, type, args) {\n if (isFunction(fn)) {\n const res = callWithErrorHandling(fn, instance, type, args);\n if (res && isPromise(res)) {\n res.catch((err) => {\n handleError(err, instance, type);\n });\n }\n return res;\n }\n if (isArray(fn)) {\n const values = [];\n for (let i = 0; i < fn.length; i++) {\n values.push(callWithAsyncErrorHandling(fn[i], instance, type, args));\n }\n return values;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `Invalid value type passed to callWithAsyncErrorHandling(): ${typeof fn}`\n );\n }\n}\nfunction handleError(err, instance, type, throwInDev = true) {\n const contextVNode = instance ? instance.vnode : null;\n const { errorHandler, throwUnhandledErrorInProduction } = instance && instance.appContext.config || EMPTY_OBJ;\n if (instance) {\n let cur = instance.parent;\n const exposedInstance = instance.proxy;\n const errorInfo = !!(process.env.NODE_ENV !== \"production\") ? ErrorTypeStrings$1[type] : `https://vuejs.org/error-reference/#runtime-${type}`;\n while (cur) {\n const errorCapturedHooks = cur.ec;\n if (errorCapturedHooks) {\n for (let i = 0; i < errorCapturedHooks.length; i++) {\n if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) {\n return;\n }\n }\n }\n cur = cur.parent;\n }\n if (errorHandler) {\n pauseTracking();\n callWithErrorHandling(errorHandler, null, 10, [\n err,\n exposedInstance,\n errorInfo\n ]);\n resetTracking();\n return;\n }\n }\n logError(err, type, contextVNode, throwInDev, throwUnhandledErrorInProduction);\n}\nfunction logError(err, type, contextVNode, throwInDev = true, throwInProd = false) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const info = ErrorTypeStrings$1[type];\n if (contextVNode) {\n pushWarningContext(contextVNode);\n }\n warn$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`);\n if (contextVNode) {\n popWarningContext();\n }\n if (throwInDev) {\n throw err;\n } else {\n console.error(err);\n }\n } else if (throwInProd) {\n throw err;\n } else {\n console.error(err);\n }\n}\n\nconst queue = [];\nlet flushIndex = -1;\nconst pendingPostFlushCbs = [];\nlet activePostFlushCbs = null;\nlet postFlushIndex = 0;\nconst resolvedPromise = /* @__PURE__ */ Promise.resolve();\nlet currentFlushPromise = null;\nconst RECURSION_LIMIT = 100;\nfunction nextTick(fn) {\n const p = currentFlushPromise || resolvedPromise;\n return fn ? p.then(this ? fn.bind(this) : fn) : p;\n}\nfunction findInsertionIndex(id) {\n let start = flushIndex + 1;\n let end = queue.length;\n while (start < end) {\n const middle = start + end >>> 1;\n const middleJob = queue[middle];\n const middleJobId = getId(middleJob);\n if (middleJobId < id || middleJobId === id && middleJob.flags & 2) {\n start = middle + 1;\n } else {\n end = middle;\n }\n }\n return start;\n}\nfunction queueJob(job) {\n if (!(job.flags & 1)) {\n const jobId = getId(job);\n const lastJob = queue[queue.length - 1];\n if (!lastJob || // fast path when the job id is larger than the tail\n !(job.flags & 2) && jobId >= getId(lastJob)) {\n queue.push(job);\n } else {\n queue.splice(findInsertionIndex(jobId), 0, job);\n }\n job.flags |= 1;\n queueFlush();\n }\n}\nfunction queueFlush() {\n if (!currentFlushPromise) {\n currentFlushPromise = resolvedPromise.then(flushJobs);\n }\n}\nfunction queuePostFlushCb(cb) {\n if (!isArray(cb)) {\n if (activePostFlushCbs && cb.id === -1) {\n activePostFlushCbs.splice(postFlushIndex + 1, 0, cb);\n } else if (!(cb.flags & 1)) {\n pendingPostFlushCbs.push(cb);\n cb.flags |= 1;\n }\n } else {\n pendingPostFlushCbs.push(...cb);\n }\n queueFlush();\n}\nfunction flushPreFlushCbs(instance, seen, i = flushIndex + 1) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n for (; i < queue.length; i++) {\n const cb = queue[i];\n if (cb && cb.flags & 2) {\n if (instance && cb.id !== instance.uid) {\n continue;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && checkRecursiveUpdates(seen, cb)) {\n continue;\n }\n queue.splice(i, 1);\n i--;\n if (cb.flags & 4) {\n cb.flags &= ~1;\n }\n cb();\n if (!(cb.flags & 4)) {\n cb.flags &= ~1;\n }\n }\n }\n}\nfunction flushPostFlushCbs(seen) {\n if (pendingPostFlushCbs.length) {\n const deduped = [...new Set(pendingPostFlushCbs)].sort(\n (a, b) => getId(a) - getId(b)\n );\n pendingPostFlushCbs.length = 0;\n if (activePostFlushCbs) {\n activePostFlushCbs.push(...deduped);\n return;\n }\n activePostFlushCbs = deduped;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {\n const cb = activePostFlushCbs[postFlushIndex];\n if (!!(process.env.NODE_ENV !== \"production\") && checkRecursiveUpdates(seen, cb)) {\n continue;\n }\n if (cb.flags & 4) {\n cb.flags &= ~1;\n }\n if (!(cb.flags & 8)) cb();\n cb.flags &= ~1;\n }\n activePostFlushCbs = null;\n postFlushIndex = 0;\n }\n}\nconst getId = (job) => job.id == null ? job.flags & 2 ? -1 : Infinity : job.id;\nfunction flushJobs(seen) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n const check = !!(process.env.NODE_ENV !== \"production\") ? (job) => checkRecursiveUpdates(seen, job) : NOOP;\n try {\n for (flushIndex = 0; flushIndex < queue.length; flushIndex++) {\n const job = queue[flushIndex];\n if (job && !(job.flags & 8)) {\n if (!!(process.env.NODE_ENV !== \"production\") && check(job)) {\n continue;\n }\n if (job.flags & 4) {\n job.flags &= ~1;\n }\n callWithErrorHandling(\n job,\n job.i,\n job.i ? 15 : 14\n );\n if (!(job.flags & 4)) {\n job.flags &= ~1;\n }\n }\n }\n } finally {\n for (; flushIndex < queue.length; flushIndex++) {\n const job = queue[flushIndex];\n if (job) {\n job.flags &= ~1;\n }\n }\n flushIndex = -1;\n queue.length = 0;\n flushPostFlushCbs(seen);\n currentFlushPromise = null;\n if (queue.length || pendingPostFlushCbs.length) {\n flushJobs(seen);\n }\n }\n}\nfunction checkRecursiveUpdates(seen, fn) {\n const count = seen.get(fn) || 0;\n if (count > RECURSION_LIMIT) {\n const instance = fn.i;\n const componentName = instance && getComponentName(instance.type);\n handleError(\n `Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,\n null,\n 10\n );\n return true;\n }\n seen.set(fn, count + 1);\n return false;\n}\n\nlet isHmrUpdating = false;\nconst hmrDirtyComponents = /* @__PURE__ */ new Map();\nif (!!(process.env.NODE_ENV !== \"production\")) {\n getGlobalThis().__VUE_HMR_RUNTIME__ = {\n createRecord: tryWrap(createRecord),\n rerender: tryWrap(rerender),\n reload: tryWrap(reload)\n };\n}\nconst map = /* @__PURE__ */ new Map();\nfunction registerHMR(instance) {\n const id = instance.type.__hmrId;\n let record = map.get(id);\n if (!record) {\n createRecord(id, instance.type);\n record = map.get(id);\n }\n record.instances.add(instance);\n}\nfunction unregisterHMR(instance) {\n map.get(instance.type.__hmrId).instances.delete(instance);\n}\nfunction createRecord(id, initialDef) {\n if (map.has(id)) {\n return false;\n }\n map.set(id, {\n initialDef: normalizeClassComponent(initialDef),\n instances: /* @__PURE__ */ new Set()\n });\n return true;\n}\nfunction normalizeClassComponent(component) {\n return isClassComponent(component) ? component.__vccOpts : component;\n}\nfunction rerender(id, newRender) {\n const record = map.get(id);\n if (!record) {\n return;\n }\n record.initialDef.render = newRender;\n [...record.instances].forEach((instance) => {\n if (newRender) {\n instance.render = newRender;\n normalizeClassComponent(instance.type).render = newRender;\n }\n instance.renderCache = [];\n isHmrUpdating = true;\n instance.update();\n isHmrUpdating = false;\n });\n}\nfunction reload(id, newComp) {\n const record = map.get(id);\n if (!record) return;\n newComp = normalizeClassComponent(newComp);\n updateComponentDef(record.initialDef, newComp);\n const instances = [...record.instances];\n for (let i = 0; i < instances.length; i++) {\n const instance = instances[i];\n const oldComp = normalizeClassComponent(instance.type);\n let dirtyInstances = hmrDirtyComponents.get(oldComp);\n if (!dirtyInstances) {\n if (oldComp !== record.initialDef) {\n updateComponentDef(oldComp, newComp);\n }\n hmrDirtyComponents.set(oldComp, dirtyInstances = /* @__PURE__ */ new Set());\n }\n dirtyInstances.add(instance);\n instance.appContext.propsCache.delete(instance.type);\n instance.appContext.emitsCache.delete(instance.type);\n instance.appContext.optionsCache.delete(instance.type);\n if (instance.ceReload) {\n dirtyInstances.add(instance);\n instance.ceReload(newComp.styles);\n dirtyInstances.delete(instance);\n } else if (instance.parent) {\n queueJob(() => {\n isHmrUpdating = true;\n instance.parent.update();\n isHmrUpdating = false;\n dirtyInstances.delete(instance);\n });\n } else if (instance.appContext.reload) {\n instance.appContext.reload();\n } else if (typeof window !== \"undefined\") {\n window.location.reload();\n } else {\n console.warn(\n \"[HMR] Root or manually mounted instance modified. Full reload required.\"\n );\n }\n if (instance.root.ce && instance !== instance.root) {\n instance.root.ce._removeChildStyle(oldComp);\n }\n }\n queuePostFlushCb(() => {\n hmrDirtyComponents.clear();\n });\n}\nfunction updateComponentDef(oldComp, newComp) {\n extend(oldComp, newComp);\n for (const key in oldComp) {\n if (key !== \"__file\" && !(key in newComp)) {\n delete oldComp[key];\n }\n }\n}\nfunction tryWrap(fn) {\n return (id, arg) => {\n try {\n return fn(id, arg);\n } catch (e) {\n console.error(e);\n console.warn(\n `[HMR] Something went wrong during Vue component hot-reload. Full reload required.`\n );\n }\n };\n}\n\nlet devtools$1;\nlet buffer = [];\nlet devtoolsNotInstalled = false;\nfunction emit$1(event, ...args) {\n if (devtools$1) {\n devtools$1.emit(event, ...args);\n } else if (!devtoolsNotInstalled) {\n buffer.push({ event, args });\n }\n}\nfunction setDevtoolsHook$1(hook, target) {\n var _a, _b;\n devtools$1 = hook;\n if (devtools$1) {\n devtools$1.enabled = true;\n buffer.forEach(({ event, args }) => devtools$1.emit(event, ...args));\n buffer = [];\n } else if (\n // handle late devtools injection - only do this if we are in an actual\n // browser environment to avoid the timer handle stalling test runner exit\n // (#4815)\n typeof window !== \"undefined\" && // some envs mock window but not fully\n window.HTMLElement && // also exclude jsdom\n // eslint-disable-next-line no-restricted-syntax\n !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes(\"jsdom\"))\n ) {\n const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || [];\n replay.push((newHook) => {\n setDevtoolsHook$1(newHook, target);\n });\n setTimeout(() => {\n if (!devtools$1) {\n target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null;\n devtoolsNotInstalled = true;\n buffer = [];\n }\n }, 3e3);\n } else {\n devtoolsNotInstalled = true;\n buffer = [];\n }\n}\nfunction devtoolsInitApp(app, version) {\n emit$1(\"app:init\" /* APP_INIT */, app, version, {\n Fragment,\n Text,\n Comment,\n Static\n });\n}\nfunction devtoolsUnmountApp(app) {\n emit$1(\"app:unmount\" /* APP_UNMOUNT */, app);\n}\nconst devtoolsComponentAdded = /* @__PURE__ */ createDevtoolsComponentHook(\"component:added\" /* COMPONENT_ADDED */);\nconst devtoolsComponentUpdated = /* @__PURE__ */ createDevtoolsComponentHook(\"component:updated\" /* COMPONENT_UPDATED */);\nconst _devtoolsComponentRemoved = /* @__PURE__ */ createDevtoolsComponentHook(\n \"component:removed\" /* COMPONENT_REMOVED */\n);\nconst devtoolsComponentRemoved = (component) => {\n if (devtools$1 && typeof devtools$1.cleanupBuffer === \"function\" && // remove the component if it wasn't buffered\n !devtools$1.cleanupBuffer(component)) {\n _devtoolsComponentRemoved(component);\n }\n};\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction createDevtoolsComponentHook(hook) {\n return (component) => {\n emit$1(\n hook,\n component.appContext.app,\n component.uid,\n component.parent ? component.parent.uid : void 0,\n component\n );\n };\n}\nconst devtoolsPerfStart = /* @__PURE__ */ createDevtoolsPerformanceHook(\"perf:start\" /* PERFORMANCE_START */);\nconst devtoolsPerfEnd = /* @__PURE__ */ createDevtoolsPerformanceHook(\"perf:end\" /* PERFORMANCE_END */);\nfunction createDevtoolsPerformanceHook(hook) {\n return (component, type, time) => {\n emit$1(hook, component.appContext.app, component.uid, component, type, time);\n };\n}\nfunction devtoolsComponentEmit(component, event, params) {\n emit$1(\n \"component:emit\" /* COMPONENT_EMIT */,\n component.appContext.app,\n component,\n event,\n params\n );\n}\n\nlet currentRenderingInstance = null;\nlet currentScopeId = null;\nfunction setCurrentRenderingInstance(instance) {\n const prev = currentRenderingInstance;\n currentRenderingInstance = instance;\n currentScopeId = instance && instance.type.__scopeId || null;\n return prev;\n}\nfunction pushScopeId(id) {\n currentScopeId = id;\n}\nfunction popScopeId() {\n currentScopeId = null;\n}\nconst withScopeId = (_id) => withCtx;\nfunction withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) {\n if (!ctx) return fn;\n if (fn._n) {\n return fn;\n }\n const renderFnWithContext = (...args) => {\n if (renderFnWithContext._d) {\n setBlockTracking(-1);\n }\n const prevInstance = setCurrentRenderingInstance(ctx);\n let res;\n try {\n res = fn(...args);\n } finally {\n setCurrentRenderingInstance(prevInstance);\n if (renderFnWithContext._d) {\n setBlockTracking(1);\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentUpdated(ctx);\n }\n return res;\n };\n renderFnWithContext._n = true;\n renderFnWithContext._c = true;\n renderFnWithContext._d = true;\n return renderFnWithContext;\n}\n\nfunction validateDirectiveName(name) {\n if (isBuiltInDirective(name)) {\n warn$1(\"Do not use built-in directive ids as custom directive id: \" + name);\n }\n}\nfunction withDirectives(vnode, directives) {\n if (currentRenderingInstance === null) {\n !!(process.env.NODE_ENV !== \"production\") && warn$1(`withDirectives can only be used inside render functions.`);\n return vnode;\n }\n const instance = getComponentPublicInstance(currentRenderingInstance);\n const bindings = vnode.dirs || (vnode.dirs = []);\n for (let i = 0; i < directives.length; i++) {\n let [dir, value, arg, modifiers = EMPTY_OBJ] = directives[i];\n if (dir) {\n if (isFunction(dir)) {\n dir = {\n mounted: dir,\n updated: dir\n };\n }\n if (dir.deep) {\n traverse(value);\n }\n bindings.push({\n dir,\n instance,\n value,\n oldValue: void 0,\n arg,\n modifiers\n });\n }\n }\n return vnode;\n}\nfunction invokeDirectiveHook(vnode, prevVNode, instance, name) {\n const bindings = vnode.dirs;\n const oldBindings = prevVNode && prevVNode.dirs;\n for (let i = 0; i < bindings.length; i++) {\n const binding = bindings[i];\n if (oldBindings) {\n binding.oldValue = oldBindings[i].value;\n }\n let hook = binding.dir[name];\n if (hook) {\n pauseTracking();\n callWithAsyncErrorHandling(hook, instance, 8, [\n vnode.el,\n binding,\n vnode,\n prevVNode\n ]);\n resetTracking();\n }\n }\n}\n\nconst TeleportEndKey = Symbol(\"_vte\");\nconst isTeleport = (type) => type.__isTeleport;\nconst isTeleportDisabled = (props) => props && (props.disabled || props.disabled === \"\");\nconst isTeleportDeferred = (props) => props && (props.defer || props.defer === \"\");\nconst isTargetSVG = (target) => typeof SVGElement !== \"undefined\" && target instanceof SVGElement;\nconst isTargetMathML = (target) => typeof MathMLElement === \"function\" && target instanceof MathMLElement;\nconst resolveTarget = (props, select) => {\n const targetSelector = props && props.to;\n if (isString(targetSelector)) {\n if (!select) {\n !!(process.env.NODE_ENV !== \"production\") && warn$1(\n `Current renderer does not support string target for Teleports. (missing querySelector renderer option)`\n );\n return null;\n } else {\n const target = select(targetSelector);\n if (!!(process.env.NODE_ENV !== \"production\") && !target && !isTeleportDisabled(props)) {\n warn$1(\n `Failed to locate Teleport target with selector \"${targetSelector}\". Note the target element must exist before the component is mounted - i.e. the target cannot be rendered by the component itself, and ideally should be outside of the entire Vue component tree.`\n );\n }\n return target;\n }\n } else {\n if (!!(process.env.NODE_ENV !== \"production\") && !targetSelector && !isTeleportDisabled(props)) {\n warn$1(`Invalid Teleport target: ${targetSelector}`);\n }\n return targetSelector;\n }\n};\nconst TeleportImpl = {\n name: \"Teleport\",\n __isTeleport: true,\n process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, internals) {\n const {\n mc: mountChildren,\n pc: patchChildren,\n pbc: patchBlockChildren,\n o: { insert, querySelector, createText, createComment }\n } = internals;\n const disabled = isTeleportDisabled(n2.props);\n let { shapeFlag, children, dynamicChildren } = n2;\n if (!!(process.env.NODE_ENV !== \"production\") && isHmrUpdating) {\n optimized = false;\n dynamicChildren = null;\n }\n if (n1 == null) {\n const placeholder = n2.el = !!(process.env.NODE_ENV !== \"production\") ? createComment(\"teleport start\") : createText(\"\");\n const mainAnchor = n2.anchor = !!(process.env.NODE_ENV !== \"production\") ? createComment(\"teleport end\") : createText(\"\");\n insert(placeholder, container, anchor);\n insert(mainAnchor, container, anchor);\n const mount = (container2, anchor2) => {\n if (shapeFlag & 16) {\n if (parentComponent && parentComponent.isCE) {\n parentComponent.ce._teleportTarget = container2;\n }\n mountChildren(\n children,\n container2,\n anchor2,\n parentComponent,\n parentSuspense,\n namespace,\n slotScopeIds,\n optimized\n );\n }\n };\n const mountToTarget = () => {\n const target = n2.target = resolveTarget(n2.props, querySelector);\n const targetAnchor = prepareAnchor(target, n2, createText, insert);\n if (target) {\n if (namespace !== \"svg\" && isTargetSVG(target)) {\n namespace = \"svg\";\n } else if (namespace !== \"mathml\" && isTargetMathML(target)) {\n namespace = \"mathml\";\n }\n if (!disabled) {\n mount(target, targetAnchor);\n updateCssVars(n2, false);\n }\n } else if (!!(process.env.NODE_ENV !== \"production\") && !disabled) {\n warn$1(\n \"Invalid Teleport target on mount:\",\n target,\n `(${typeof target})`\n );\n }\n };\n if (disabled) {\n mount(container, mainAnchor);\n updateCssVars(n2, true);\n }\n if (isTeleportDeferred(n2.props)) {\n queuePostRenderEffect(() => {\n mountToTarget();\n n2.el.__isMounted = true;\n }, parentSuspense);\n } else {\n mountToTarget();\n }\n } else {\n if (isTeleportDeferred(n2.props) && !n1.el.__isMounted) {\n queuePostRenderEffect(() => {\n TeleportImpl.process(\n n1,\n n2,\n container,\n anchor,\n parentComponent,\n parentSuspense,\n namespace,\n slotScopeIds,\n optimized,\n internals\n );\n delete n1.el.__isMounted;\n }, parentSuspense);\n return;\n }\n n2.el = n1.el;\n n2.targetStart = n1.targetStart;\n const mainAnchor = n2.anchor = n1.anchor;\n const target = n2.target = n1.target;\n const targetAnchor = n2.targetAnchor = n1.targetAnchor;\n const wasDisabled = isTeleportDisabled(n1.props);\n const currentContainer = wasDisabled ? container : target;\n const currentAnchor = wasDisabled ? mainAnchor : targetAnchor;\n if (namespace === \"svg\" || isTargetSVG(target)) {\n namespace = \"svg\";\n } else if (namespace === \"mathml\" || isTargetMathML(target)) {\n namespace = \"mathml\";\n }\n if (dynamicChildren) {\n patchBlockChildren(\n n1.dynamicChildren,\n dynamicChildren,\n currentContainer,\n parentComponent,\n parentSuspense,\n namespace,\n slotScopeIds\n );\n traverseStaticChildren(n1, n2, true);\n } else if (!optimized) {\n patchChildren(\n n1,\n n2,\n currentContainer,\n currentAnchor,\n parentComponent,\n parentSuspense,\n namespace,\n slotScopeIds,\n false\n );\n }\n if (disabled) {\n if (!wasDisabled) {\n moveTeleport(\n n2,\n container,\n mainAnchor,\n internals,\n 1\n );\n } else {\n if (n2.props && n1.props && n2.props.to !== n1.props.to) {\n n2.props.to = n1.props.to;\n }\n }\n } else {\n if ((n2.props && n2.props.to) !== (n1.props && n1.props.to)) {\n const nextTarget = n2.target = resolveTarget(\n n2.props,\n querySelector\n );\n if (nextTarget) {\n moveTeleport(\n n2,\n nextTarget,\n null,\n internals,\n 0\n );\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n \"Invalid Teleport target on update:\",\n target,\n `(${typeof target})`\n );\n }\n } else if (wasDisabled) {\n moveTeleport(\n n2,\n target,\n targetAnchor,\n internals,\n 1\n );\n }\n }\n updateCssVars(n2, disabled);\n }\n },\n remove(vnode, parentComponent, parentSuspense, { um: unmount, o: { remove: hostRemove } }, doRemove) {\n const {\n shapeFlag,\n children,\n anchor,\n targetStart,\n targetAnchor,\n target,\n props\n } = vnode;\n if (target) {\n hostRemove(targetStart);\n hostRemove(targetAnchor);\n }\n doRemove && hostRemove(anchor);\n if (shapeFlag & 16) {\n const shouldRemove = doRemove || !isTeleportDisabled(props);\n for (let i = 0; i < children.length; i++) {\n const child = children[i];\n unmount(\n child,\n parentComponent,\n parentSuspense,\n shouldRemove,\n !!child.dynamicChildren\n );\n }\n }\n },\n move: moveTeleport,\n hydrate: hydrateTeleport\n};\nfunction moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }, moveType = 2) {\n if (moveType === 0) {\n insert(vnode.targetAnchor, container, parentAnchor);\n }\n const { el, anchor, shapeFlag, children, props } = vnode;\n const isReorder = moveType === 2;\n if (isReorder) {\n insert(el, container, parentAnchor);\n }\n if (!isReorder || isTeleportDisabled(props)) {\n if (shapeFlag & 16) {\n for (let i = 0; i < children.length; i++) {\n move(\n children[i],\n container,\n parentAnchor,\n 2\n );\n }\n }\n }\n if (isReorder) {\n insert(anchor, container, parentAnchor);\n }\n}\nfunction hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, {\n o: { nextSibling, parentNode, querySelector, insert, createText }\n}, hydrateChildren) {\n const target = vnode.target = resolveTarget(\n vnode.props,\n querySelector\n );\n if (target) {\n const disabled = isTeleportDisabled(vnode.props);\n const targetNode = target._lpa || target.firstChild;\n if (vnode.shapeFlag & 16) {\n if (disabled) {\n vnode.anchor = hydrateChildren(\n nextSibling(node),\n vnode,\n parentNode(node),\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n vnode.targetStart = targetNode;\n vnode.targetAnchor = targetNode && nextSibling(targetNode);\n } else {\n vnode.anchor = nextSibling(node);\n let targetAnchor = targetNode;\n while (targetAnchor) {\n if (targetAnchor && targetAnchor.nodeType === 8) {\n if (targetAnchor.data === \"teleport start anchor\") {\n vnode.targetStart = targetAnchor;\n } else if (targetAnchor.data === \"teleport anchor\") {\n vnode.targetAnchor = targetAnchor;\n target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);\n break;\n }\n }\n targetAnchor = nextSibling(targetAnchor);\n }\n if (!vnode.targetAnchor) {\n prepareAnchor(target, vnode, createText, insert);\n }\n hydrateChildren(\n targetNode && nextSibling(targetNode),\n vnode,\n target,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n }\n }\n updateCssVars(vnode, disabled);\n }\n return vnode.anchor && nextSibling(vnode.anchor);\n}\nconst Teleport = TeleportImpl;\nfunction updateCssVars(vnode, isDisabled) {\n const ctx = vnode.ctx;\n if (ctx && ctx.ut) {\n let node, anchor;\n if (isDisabled) {\n node = vnode.el;\n anchor = vnode.anchor;\n } else {\n node = vnode.targetStart;\n anchor = vnode.targetAnchor;\n }\n while (node && node !== anchor) {\n if (node.nodeType === 1) node.setAttribute(\"data-v-owner\", ctx.uid);\n node = node.nextSibling;\n }\n ctx.ut();\n }\n}\nfunction prepareAnchor(target, vnode, createText, insert) {\n const targetStart = vnode.targetStart = createText(\"\");\n const targetAnchor = vnode.targetAnchor = createText(\"\");\n targetStart[TeleportEndKey] = targetAnchor;\n if (target) {\n insert(targetStart, target);\n insert(targetAnchor, target);\n }\n return targetAnchor;\n}\n\nconst leaveCbKey = Symbol(\"_leaveCb\");\nconst enterCbKey = Symbol(\"_enterCb\");\nfunction useTransitionState() {\n const state = {\n isMounted: false,\n isLeaving: false,\n isUnmounting: false,\n leavingVNodes: /* @__PURE__ */ new Map()\n };\n onMounted(() => {\n state.isMounted = true;\n });\n onBeforeUnmount(() => {\n state.isUnmounting = true;\n });\n return state;\n}\nconst TransitionHookValidator = [Function, Array];\nconst BaseTransitionPropsValidators = {\n mode: String,\n appear: Boolean,\n persisted: Boolean,\n // enter\n onBeforeEnter: TransitionHookValidator,\n onEnter: TransitionHookValidator,\n onAfterEnter: TransitionHookValidator,\n onEnterCancelled: TransitionHookValidator,\n // leave\n onBeforeLeave: TransitionHookValidator,\n onLeave: TransitionHookValidator,\n onAfterLeave: TransitionHookValidator,\n onLeaveCancelled: TransitionHookValidator,\n // appear\n onBeforeAppear: TransitionHookValidator,\n onAppear: TransitionHookValidator,\n onAfterAppear: TransitionHookValidator,\n onAppearCancelled: TransitionHookValidator\n};\nconst recursiveGetSubtree = (instance) => {\n const subTree = instance.subTree;\n return subTree.component ? recursiveGetSubtree(subTree.component) : subTree;\n};\nconst BaseTransitionImpl = {\n name: `BaseTransition`,\n props: BaseTransitionPropsValidators,\n setup(props, { slots }) {\n const instance = getCurrentInstance();\n const state = useTransitionState();\n return () => {\n const children = slots.default && getTransitionRawChildren(slots.default(), true);\n if (!children || !children.length) {\n return;\n }\n const child = findNonCommentChild(children);\n const rawProps = toRaw(props);\n const { mode } = rawProps;\n if (!!(process.env.NODE_ENV !== \"production\") && mode && mode !== \"in-out\" && mode !== \"out-in\" && mode !== \"default\") {\n warn$1(`invalid mode: ${mode}`);\n }\n if (state.isLeaving) {\n return emptyPlaceholder(child);\n }\n const innerChild = getInnerChild$1(child);\n if (!innerChild) {\n return emptyPlaceholder(child);\n }\n let enterHooks = resolveTransitionHooks(\n innerChild,\n rawProps,\n state,\n instance,\n // #11061, ensure enterHooks is fresh after clone\n (hooks) => enterHooks = hooks\n );\n if (innerChild.type !== Comment) {\n setTransitionHooks(innerChild, enterHooks);\n }\n let oldInnerChild = instance.subTree && getInnerChild$1(instance.subTree);\n if (oldInnerChild && oldInnerChild.type !== Comment && !isSameVNodeType(innerChild, oldInnerChild) && recursiveGetSubtree(instance).type !== Comment) {\n let leavingHooks = resolveTransitionHooks(\n oldInnerChild,\n rawProps,\n state,\n instance\n );\n setTransitionHooks(oldInnerChild, leavingHooks);\n if (mode === \"out-in\" && innerChild.type !== Comment) {\n state.isLeaving = true;\n leavingHooks.afterLeave = () => {\n state.isLeaving = false;\n if (!(instance.job.flags & 8)) {\n instance.update();\n }\n delete leavingHooks.afterLeave;\n oldInnerChild = void 0;\n };\n return emptyPlaceholder(child);\n } else if (mode === \"in-out\" && innerChild.type !== Comment) {\n leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => {\n const leavingVNodesCache = getLeavingNodesForType(\n state,\n oldInnerChild\n );\n leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild;\n el[leaveCbKey] = () => {\n earlyRemove();\n el[leaveCbKey] = void 0;\n delete enterHooks.delayedLeave;\n oldInnerChild = void 0;\n };\n enterHooks.delayedLeave = () => {\n delayedLeave();\n delete enterHooks.delayedLeave;\n oldInnerChild = void 0;\n };\n };\n } else {\n oldInnerChild = void 0;\n }\n } else if (oldInnerChild) {\n oldInnerChild = void 0;\n }\n return child;\n };\n }\n};\nfunction findNonCommentChild(children) {\n let child = children[0];\n if (children.length > 1) {\n let hasFound = false;\n for (const c of children) {\n if (c.type !== Comment) {\n if (!!(process.env.NODE_ENV !== \"production\") && hasFound) {\n warn$1(\n \" can only be used on a single element or component. Use for lists.\"\n );\n break;\n }\n child = c;\n hasFound = true;\n if (!!!(process.env.NODE_ENV !== \"production\")) break;\n }\n }\n }\n return child;\n}\nconst BaseTransition = BaseTransitionImpl;\nfunction getLeavingNodesForType(state, vnode) {\n const { leavingVNodes } = state;\n let leavingVNodesCache = leavingVNodes.get(vnode.type);\n if (!leavingVNodesCache) {\n leavingVNodesCache = /* @__PURE__ */ Object.create(null);\n leavingVNodes.set(vnode.type, leavingVNodesCache);\n }\n return leavingVNodesCache;\n}\nfunction resolveTransitionHooks(vnode, props, state, instance, postClone) {\n const {\n appear,\n mode,\n persisted = false,\n onBeforeEnter,\n onEnter,\n onAfterEnter,\n onEnterCancelled,\n onBeforeLeave,\n onLeave,\n onAfterLeave,\n onLeaveCancelled,\n onBeforeAppear,\n onAppear,\n onAfterAppear,\n onAppearCancelled\n } = props;\n const key = String(vnode.key);\n const leavingVNodesCache = getLeavingNodesForType(state, vnode);\n const callHook = (hook, args) => {\n hook && callWithAsyncErrorHandling(\n hook,\n instance,\n 9,\n args\n );\n };\n const callAsyncHook = (hook, args) => {\n const done = args[1];\n callHook(hook, args);\n if (isArray(hook)) {\n if (hook.every((hook2) => hook2.length <= 1)) done();\n } else if (hook.length <= 1) {\n done();\n }\n };\n const hooks = {\n mode,\n persisted,\n beforeEnter(el) {\n let hook = onBeforeEnter;\n if (!state.isMounted) {\n if (appear) {\n hook = onBeforeAppear || onBeforeEnter;\n } else {\n return;\n }\n }\n if (el[leaveCbKey]) {\n el[leaveCbKey](\n true\n /* cancelled */\n );\n }\n const leavingVNode = leavingVNodesCache[key];\n if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el[leaveCbKey]) {\n leavingVNode.el[leaveCbKey]();\n }\n callHook(hook, [el]);\n },\n enter(el) {\n let hook = onEnter;\n let afterHook = onAfterEnter;\n let cancelHook = onEnterCancelled;\n if (!state.isMounted) {\n if (appear) {\n hook = onAppear || onEnter;\n afterHook = onAfterAppear || onAfterEnter;\n cancelHook = onAppearCancelled || onEnterCancelled;\n } else {\n return;\n }\n }\n let called = false;\n const done = el[enterCbKey] = (cancelled) => {\n if (called) return;\n called = true;\n if (cancelled) {\n callHook(cancelHook, [el]);\n } else {\n callHook(afterHook, [el]);\n }\n if (hooks.delayedLeave) {\n hooks.delayedLeave();\n }\n el[enterCbKey] = void 0;\n };\n if (hook) {\n callAsyncHook(hook, [el, done]);\n } else {\n done();\n }\n },\n leave(el, remove) {\n const key2 = String(vnode.key);\n if (el[enterCbKey]) {\n el[enterCbKey](\n true\n /* cancelled */\n );\n }\n if (state.isUnmounting) {\n return remove();\n }\n callHook(onBeforeLeave, [el]);\n let called = false;\n const done = el[leaveCbKey] = (cancelled) => {\n if (called) return;\n called = true;\n remove();\n if (cancelled) {\n callHook(onLeaveCancelled, [el]);\n } else {\n callHook(onAfterLeave, [el]);\n }\n el[leaveCbKey] = void 0;\n if (leavingVNodesCache[key2] === vnode) {\n delete leavingVNodesCache[key2];\n }\n };\n leavingVNodesCache[key2] = vnode;\n if (onLeave) {\n callAsyncHook(onLeave, [el, done]);\n } else {\n done();\n }\n },\n clone(vnode2) {\n const hooks2 = resolveTransitionHooks(\n vnode2,\n props,\n state,\n instance,\n postClone\n );\n if (postClone) postClone(hooks2);\n return hooks2;\n }\n };\n return hooks;\n}\nfunction emptyPlaceholder(vnode) {\n if (isKeepAlive(vnode)) {\n vnode = cloneVNode(vnode);\n vnode.children = null;\n return vnode;\n }\n}\nfunction getInnerChild$1(vnode) {\n if (!isKeepAlive(vnode)) {\n if (isTeleport(vnode.type) && vnode.children) {\n return findNonCommentChild(vnode.children);\n }\n return vnode;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && vnode.component) {\n return vnode.component.subTree;\n }\n const { shapeFlag, children } = vnode;\n if (children) {\n if (shapeFlag & 16) {\n return children[0];\n }\n if (shapeFlag & 32 && isFunction(children.default)) {\n return children.default();\n }\n }\n}\nfunction setTransitionHooks(vnode, hooks) {\n if (vnode.shapeFlag & 6 && vnode.component) {\n vnode.transition = hooks;\n setTransitionHooks(vnode.component.subTree, hooks);\n } else if (vnode.shapeFlag & 128) {\n vnode.ssContent.transition = hooks.clone(vnode.ssContent);\n vnode.ssFallback.transition = hooks.clone(vnode.ssFallback);\n } else {\n vnode.transition = hooks;\n }\n}\nfunction getTransitionRawChildren(children, keepComment = false, parentKey) {\n let ret = [];\n let keyedFragmentCount = 0;\n for (let i = 0; i < children.length; i++) {\n let child = children[i];\n const key = parentKey == null ? child.key : String(parentKey) + String(child.key != null ? child.key : i);\n if (child.type === Fragment) {\n if (child.patchFlag & 128) keyedFragmentCount++;\n ret = ret.concat(\n getTransitionRawChildren(child.children, keepComment, key)\n );\n } else if (keepComment || child.type !== Comment) {\n ret.push(key != null ? cloneVNode(child, { key }) : child);\n }\n }\n if (keyedFragmentCount > 1) {\n for (let i = 0; i < ret.length; i++) {\n ret[i].patchFlag = -2;\n }\n }\n return ret;\n}\n\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction defineComponent(options, extraOptions) {\n return isFunction(options) ? (\n // #8236: extend call and options.name access are considered side-effects\n // by Rollup, so we have to wrap it in a pure-annotated IIFE.\n /* @__PURE__ */ (() => extend({ name: options.name }, extraOptions, { setup: options }))()\n ) : options;\n}\n\nfunction useId() {\n const i = getCurrentInstance();\n if (i) {\n return (i.appContext.config.idPrefix || \"v\") + \"-\" + i.ids[0] + i.ids[1]++;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `useId() is called when there is no active component instance to be associated with.`\n );\n }\n return \"\";\n}\nfunction markAsyncBoundary(instance) {\n instance.ids = [instance.ids[0] + instance.ids[2]++ + \"-\", 0, 0];\n}\n\nconst knownTemplateRefs = /* @__PURE__ */ new WeakSet();\nfunction useTemplateRef(key) {\n const i = getCurrentInstance();\n const r = shallowRef(null);\n if (i) {\n const refs = i.refs === EMPTY_OBJ ? i.refs = {} : i.refs;\n let desc;\n if (!!(process.env.NODE_ENV !== \"production\") && (desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable) {\n warn$1(`useTemplateRef('${key}') already exists.`);\n } else {\n Object.defineProperty(refs, key, {\n enumerable: true,\n get: () => r.value,\n set: (val) => r.value = val\n });\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `useTemplateRef() is called when there is no active component instance to be associated with.`\n );\n }\n const ret = !!(process.env.NODE_ENV !== \"production\") ? readonly(r) : r;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n knownTemplateRefs.add(ret);\n }\n return ret;\n}\n\nfunction setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {\n if (isArray(rawRef)) {\n rawRef.forEach(\n (r, i) => setRef(\n r,\n oldRawRef && (isArray(oldRawRef) ? oldRawRef[i] : oldRawRef),\n parentSuspense,\n vnode,\n isUnmount\n )\n );\n return;\n }\n if (isAsyncWrapper(vnode) && !isUnmount) {\n if (vnode.shapeFlag & 512 && vnode.type.__asyncResolved && vnode.component.subTree.component) {\n setRef(rawRef, oldRawRef, parentSuspense, vnode.component.subTree);\n }\n return;\n }\n const refValue = vnode.shapeFlag & 4 ? getComponentPublicInstance(vnode.component) : vnode.el;\n const value = isUnmount ? null : refValue;\n const { i: owner, r: ref } = rawRef;\n if (!!(process.env.NODE_ENV !== \"production\") && !owner) {\n warn$1(\n `Missing ref owner context. ref cannot be used on hoisted vnodes. A vnode with ref must be created inside the render function.`\n );\n return;\n }\n const oldRef = oldRawRef && oldRawRef.r;\n const refs = owner.refs === EMPTY_OBJ ? owner.refs = {} : owner.refs;\n const setupState = owner.setupState;\n const rawSetupState = toRaw(setupState);\n const canSetSetupRef = setupState === EMPTY_OBJ ? () => false : (key) => {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n if (hasOwn(rawSetupState, key) && !isRef(rawSetupState[key])) {\n warn$1(\n `Template ref \"${key}\" used on a non-ref value. It will not work in the production build.`\n );\n }\n if (knownTemplateRefs.has(rawSetupState[key])) {\n return false;\n }\n }\n return hasOwn(rawSetupState, key);\n };\n if (oldRef != null && oldRef !== ref) {\n if (isString(oldRef)) {\n refs[oldRef] = null;\n if (canSetSetupRef(oldRef)) {\n setupState[oldRef] = null;\n }\n } else if (isRef(oldRef)) {\n oldRef.value = null;\n }\n }\n if (isFunction(ref)) {\n callWithErrorHandling(ref, owner, 12, [value, refs]);\n } else {\n const _isString = isString(ref);\n const _isRef = isRef(ref);\n if (_isString || _isRef) {\n const doSet = () => {\n if (rawRef.f) {\n const existing = _isString ? canSetSetupRef(ref) ? setupState[ref] : refs[ref] : ref.value;\n if (isUnmount) {\n isArray(existing) && remove(existing, refValue);\n } else {\n if (!isArray(existing)) {\n if (_isString) {\n refs[ref] = [refValue];\n if (canSetSetupRef(ref)) {\n setupState[ref] = refs[ref];\n }\n } else {\n ref.value = [refValue];\n if (rawRef.k) refs[rawRef.k] = ref.value;\n }\n } else if (!existing.includes(refValue)) {\n existing.push(refValue);\n }\n }\n } else if (_isString) {\n refs[ref] = value;\n if (canSetSetupRef(ref)) {\n setupState[ref] = value;\n }\n } else if (_isRef) {\n ref.value = value;\n if (rawRef.k) refs[rawRef.k] = value;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\"Invalid template ref type:\", ref, `(${typeof ref})`);\n }\n };\n if (value) {\n doSet.id = -1;\n queuePostRenderEffect(doSet, parentSuspense);\n } else {\n doSet();\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\"Invalid template ref type:\", ref, `(${typeof ref})`);\n }\n }\n}\n\nlet hasLoggedMismatchError = false;\nconst logMismatchError = () => {\n if (hasLoggedMismatchError) {\n return;\n }\n console.error(\"Hydration completed but contains mismatches.\");\n hasLoggedMismatchError = true;\n};\nconst isSVGContainer = (container) => container.namespaceURI.includes(\"svg\") && container.tagName !== \"foreignObject\";\nconst isMathMLContainer = (container) => container.namespaceURI.includes(\"MathML\");\nconst getContainerType = (container) => {\n if (container.nodeType !== 1) return void 0;\n if (isSVGContainer(container)) return \"svg\";\n if (isMathMLContainer(container)) return \"mathml\";\n return void 0;\n};\nconst isComment = (node) => node.nodeType === 8;\nfunction createHydrationFunctions(rendererInternals) {\n const {\n mt: mountComponent,\n p: patch,\n o: {\n patchProp,\n createText,\n nextSibling,\n parentNode,\n remove,\n insert,\n createComment\n }\n } = rendererInternals;\n const hydrate = (vnode, container) => {\n if (!container.hasChildNodes()) {\n (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(\n `Attempting to hydrate existing markup but container is empty. Performing full mount instead.`\n );\n patch(null, vnode, container);\n flushPostFlushCbs();\n container._vnode = vnode;\n return;\n }\n hydrateNode(container.firstChild, vnode, null, null, null);\n flushPostFlushCbs();\n container._vnode = vnode;\n };\n const hydrateNode = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized = false) => {\n optimized = optimized || !!vnode.dynamicChildren;\n const isFragmentStart = isComment(node) && node.data === \"[\";\n const onMismatch = () => handleMismatch(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n isFragmentStart\n );\n const { type, ref, shapeFlag, patchFlag } = vnode;\n let domType = node.nodeType;\n vnode.el = node;\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n def(node, \"__vnode\", vnode, true);\n def(node, \"__vueParentComponent\", parentComponent, true);\n }\n if (patchFlag === -2) {\n optimized = false;\n vnode.dynamicChildren = null;\n }\n let nextNode = null;\n switch (type) {\n case Text:\n if (domType !== 3) {\n if (vnode.children === \"\") {\n insert(vnode.el = createText(\"\"), parentNode(node), node);\n nextNode = node;\n } else {\n nextNode = onMismatch();\n }\n } else {\n if (node.data !== vnode.children) {\n (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(\n `Hydration text mismatch in`,\n node.parentNode,\n `\n - rendered on server: ${JSON.stringify(\n node.data\n )}\n - expected on client: ${JSON.stringify(vnode.children)}`\n );\n logMismatchError();\n node.data = vnode.children;\n }\n nextNode = nextSibling(node);\n }\n break;\n case Comment:\n if (isTemplateNode(node)) {\n nextNode = nextSibling(node);\n replaceNode(\n vnode.el = node.content.firstChild,\n node,\n parentComponent\n );\n } else if (domType !== 8 || isFragmentStart) {\n nextNode = onMismatch();\n } else {\n nextNode = nextSibling(node);\n }\n break;\n case Static:\n if (isFragmentStart) {\n node = nextSibling(node);\n domType = node.nodeType;\n }\n if (domType === 1 || domType === 3) {\n nextNode = node;\n const needToAdoptContent = !vnode.children.length;\n for (let i = 0; i < vnode.staticCount; i++) {\n if (needToAdoptContent)\n vnode.children += nextNode.nodeType === 1 ? nextNode.outerHTML : nextNode.data;\n if (i === vnode.staticCount - 1) {\n vnode.anchor = nextNode;\n }\n nextNode = nextSibling(nextNode);\n }\n return isFragmentStart ? nextSibling(nextNode) : nextNode;\n } else {\n onMismatch();\n }\n break;\n case Fragment:\n if (!isFragmentStart) {\n nextNode = onMismatch();\n } else {\n nextNode = hydrateFragment(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n }\n break;\n default:\n if (shapeFlag & 1) {\n if ((domType !== 1 || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode(node)) {\n nextNode = onMismatch();\n } else {\n nextNode = hydrateElement(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n }\n } else if (shapeFlag & 6) {\n vnode.slotScopeIds = slotScopeIds;\n const container = parentNode(node);\n if (isFragmentStart) {\n nextNode = locateClosingAnchor(node);\n } else if (isComment(node) && node.data === \"teleport start\") {\n nextNode = locateClosingAnchor(node, node.data, \"teleport end\");\n } else {\n nextNode = nextSibling(node);\n }\n mountComponent(\n vnode,\n container,\n null,\n parentComponent,\n parentSuspense,\n getContainerType(container),\n optimized\n );\n if (isAsyncWrapper(vnode) && !vnode.type.__asyncResolved) {\n let subTree;\n if (isFragmentStart) {\n subTree = createVNode(Fragment);\n subTree.anchor = nextNode ? nextNode.previousSibling : container.lastChild;\n } else {\n subTree = node.nodeType === 3 ? createTextVNode(\"\") : createVNode(\"div\");\n }\n subTree.el = node;\n vnode.component.subTree = subTree;\n }\n } else if (shapeFlag & 64) {\n if (domType !== 8) {\n nextNode = onMismatch();\n } else {\n nextNode = vnode.type.hydrate(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized,\n rendererInternals,\n hydrateChildren\n );\n }\n } else if (shapeFlag & 128) {\n nextNode = vnode.type.hydrate(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n getContainerType(parentNode(node)),\n slotScopeIds,\n optimized,\n rendererInternals,\n hydrateNode\n );\n } else if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) {\n warn$1(\"Invalid HostVNode type:\", type, `(${typeof type})`);\n }\n }\n if (ref != null) {\n setRef(ref, null, parentSuspense, vnode);\n }\n return nextNode;\n };\n const hydrateElement = (el, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => {\n optimized = optimized || !!vnode.dynamicChildren;\n const { type, props, patchFlag, shapeFlag, dirs, transition } = vnode;\n const forcePatch = type === \"input\" || type === \"option\";\n if (!!(process.env.NODE_ENV !== \"production\") || forcePatch || patchFlag !== -1) {\n if (dirs) {\n invokeDirectiveHook(vnode, null, parentComponent, \"created\");\n }\n let needCallTransitionHooks = false;\n if (isTemplateNode(el)) {\n needCallTransitionHooks = needTransition(\n null,\n // no need check parentSuspense in hydration\n transition\n ) && parentComponent && parentComponent.vnode.props && parentComponent.vnode.props.appear;\n const content = el.content.firstChild;\n if (needCallTransitionHooks) {\n transition.beforeEnter(content);\n }\n replaceNode(content, el, parentComponent);\n vnode.el = el = content;\n }\n if (shapeFlag & 16 && // skip if element has innerHTML / textContent\n !(props && (props.innerHTML || props.textContent))) {\n let next = hydrateChildren(\n el.firstChild,\n vnode,\n el,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n let hasWarned = false;\n while (next) {\n if (!isMismatchAllowed(el, 1 /* CHILDREN */)) {\n if ((!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && !hasWarned) {\n warn$1(\n `Hydration children mismatch on`,\n el,\n `\nServer rendered element contains more child nodes than client vdom.`\n );\n hasWarned = true;\n }\n logMismatchError();\n }\n const cur = next;\n next = next.nextSibling;\n remove(cur);\n }\n } else if (shapeFlag & 8) {\n let clientText = vnode.children;\n if (clientText[0] === \"\\n\" && (el.tagName === \"PRE\" || el.tagName === \"TEXTAREA\")) {\n clientText = clientText.slice(1);\n }\n if (el.textContent !== clientText) {\n if (!isMismatchAllowed(el, 0 /* TEXT */)) {\n (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(\n `Hydration text content mismatch on`,\n el,\n `\n - rendered on server: ${el.textContent}\n - expected on client: ${vnode.children}`\n );\n logMismatchError();\n }\n el.textContent = vnode.children;\n }\n }\n if (props) {\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__ || forcePatch || !optimized || patchFlag & (16 | 32)) {\n const isCustomElement = el.tagName.includes(\"-\");\n for (const key in props) {\n if ((!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && // #11189 skip if this node has directives that have created hooks\n // as it could have mutated the DOM in any possible way\n !(dirs && dirs.some((d) => d.dir.created)) && propHasMismatch(el, key, props[key], vnode, parentComponent)) {\n logMismatchError();\n }\n if (forcePatch && (key.endsWith(\"value\") || key === \"indeterminate\") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers\n key[0] === \".\" || isCustomElement) {\n patchProp(el, key, null, props[key], void 0, parentComponent);\n }\n }\n } else if (props.onClick) {\n patchProp(\n el,\n \"onClick\",\n null,\n props.onClick,\n void 0,\n parentComponent\n );\n } else if (patchFlag & 4 && isReactive(props.style)) {\n for (const key in props.style) props.style[key];\n }\n }\n let vnodeHooks;\n if (vnodeHooks = props && props.onVnodeBeforeMount) {\n invokeVNodeHook(vnodeHooks, parentComponent, vnode);\n }\n if (dirs) {\n invokeDirectiveHook(vnode, null, parentComponent, \"beforeMount\");\n }\n if ((vnodeHooks = props && props.onVnodeMounted) || dirs || needCallTransitionHooks) {\n queueEffectWithSuspense(() => {\n vnodeHooks && invokeVNodeHook(vnodeHooks, parentComponent, vnode);\n needCallTransitionHooks && transition.enter(el);\n dirs && invokeDirectiveHook(vnode, null, parentComponent, \"mounted\");\n }, parentSuspense);\n }\n }\n return el.nextSibling;\n };\n const hydrateChildren = (node, parentVNode, container, parentComponent, parentSuspense, slotScopeIds, optimized) => {\n optimized = optimized || !!parentVNode.dynamicChildren;\n const children = parentVNode.children;\n const l = children.length;\n let hasWarned = false;\n for (let i = 0; i < l; i++) {\n const vnode = optimized ? children[i] : children[i] = normalizeVNode(children[i]);\n const isText = vnode.type === Text;\n if (node) {\n if (isText && !optimized) {\n if (i + 1 < l && normalizeVNode(children[i + 1]).type === Text) {\n insert(\n createText(\n node.data.slice(vnode.children.length)\n ),\n container,\n nextSibling(node)\n );\n node.data = vnode.children;\n }\n }\n node = hydrateNode(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n } else if (isText && !vnode.children) {\n insert(vnode.el = createText(\"\"), container);\n } else {\n if (!isMismatchAllowed(container, 1 /* CHILDREN */)) {\n if ((!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && !hasWarned) {\n warn$1(\n `Hydration children mismatch on`,\n container,\n `\nServer rendered element contains fewer child nodes than client vdom.`\n );\n hasWarned = true;\n }\n logMismatchError();\n }\n patch(\n null,\n vnode,\n container,\n null,\n parentComponent,\n parentSuspense,\n getContainerType(container),\n slotScopeIds\n );\n }\n }\n return node;\n };\n const hydrateFragment = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => {\n const { slotScopeIds: fragmentSlotScopeIds } = vnode;\n if (fragmentSlotScopeIds) {\n slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds;\n }\n const container = parentNode(node);\n const next = hydrateChildren(\n nextSibling(node),\n vnode,\n container,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n if (next && isComment(next) && next.data === \"]\") {\n return nextSibling(vnode.anchor = next);\n } else {\n logMismatchError();\n insert(vnode.anchor = createComment(`]`), container, next);\n return next;\n }\n };\n const handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => {\n if (!isMismatchAllowed(node.parentElement, 1 /* CHILDREN */)) {\n (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(\n `Hydration node mismatch:\n- rendered on server:`,\n node,\n node.nodeType === 3 ? `(text)` : isComment(node) && node.data === \"[\" ? `(start of fragment)` : ``,\n `\n- expected on client:`,\n vnode.type\n );\n logMismatchError();\n }\n vnode.el = null;\n if (isFragment) {\n const end = locateClosingAnchor(node);\n while (true) {\n const next2 = nextSibling(node);\n if (next2 && next2 !== end) {\n remove(next2);\n } else {\n break;\n }\n }\n }\n const next = nextSibling(node);\n const container = parentNode(node);\n remove(node);\n patch(\n null,\n vnode,\n container,\n next,\n parentComponent,\n parentSuspense,\n getContainerType(container),\n slotScopeIds\n );\n if (parentComponent) {\n parentComponent.vnode.el = vnode.el;\n updateHOCHostEl(parentComponent, vnode.el);\n }\n return next;\n };\n const locateClosingAnchor = (node, open = \"[\", close = \"]\") => {\n let match = 0;\n while (node) {\n node = nextSibling(node);\n if (node && isComment(node)) {\n if (node.data === open) match++;\n if (node.data === close) {\n if (match === 0) {\n return nextSibling(node);\n } else {\n match--;\n }\n }\n }\n }\n return node;\n };\n const replaceNode = (newNode, oldNode, parentComponent) => {\n const parentNode2 = oldNode.parentNode;\n if (parentNode2) {\n parentNode2.replaceChild(newNode, oldNode);\n }\n let parent = parentComponent;\n while (parent) {\n if (parent.vnode.el === oldNode) {\n parent.vnode.el = parent.subTree.el = newNode;\n }\n parent = parent.parent;\n }\n };\n const isTemplateNode = (node) => {\n return node.nodeType === 1 && node.tagName === \"TEMPLATE\";\n };\n return [hydrate, hydrateNode];\n}\nfunction propHasMismatch(el, key, clientValue, vnode, instance) {\n let mismatchType;\n let mismatchKey;\n let actual;\n let expected;\n if (key === \"class\") {\n actual = el.getAttribute(\"class\");\n expected = normalizeClass(clientValue);\n if (!isSetEqual(toClassSet(actual || \"\"), toClassSet(expected))) {\n mismatchType = 2 /* CLASS */;\n mismatchKey = `class`;\n }\n } else if (key === \"style\") {\n actual = el.getAttribute(\"style\") || \"\";\n expected = isString(clientValue) ? clientValue : stringifyStyle(normalizeStyle(clientValue));\n const actualMap = toStyleMap(actual);\n const expectedMap = toStyleMap(expected);\n if (vnode.dirs) {\n for (const { dir, value } of vnode.dirs) {\n if (dir.name === \"show\" && !value) {\n expectedMap.set(\"display\", \"none\");\n }\n }\n }\n if (instance) {\n resolveCssVars(instance, vnode, expectedMap);\n }\n if (!isMapEqual(actualMap, expectedMap)) {\n mismatchType = 3 /* STYLE */;\n mismatchKey = \"style\";\n }\n } else if (el instanceof SVGElement && isKnownSvgAttr(key) || el instanceof HTMLElement && (isBooleanAttr(key) || isKnownHtmlAttr(key))) {\n if (isBooleanAttr(key)) {\n actual = el.hasAttribute(key);\n expected = includeBooleanAttr(clientValue);\n } else if (clientValue == null) {\n actual = el.hasAttribute(key);\n expected = false;\n } else {\n if (el.hasAttribute(key)) {\n actual = el.getAttribute(key);\n } else if (key === \"value\" && el.tagName === \"TEXTAREA\") {\n actual = el.value;\n } else {\n actual = false;\n }\n expected = isRenderableAttrValue(clientValue) ? String(clientValue) : false;\n }\n if (actual !== expected) {\n mismatchType = 4 /* ATTRIBUTE */;\n mismatchKey = key;\n }\n }\n if (mismatchType != null && !isMismatchAllowed(el, mismatchType)) {\n const format = (v) => v === false ? `(not rendered)` : `${mismatchKey}=\"${v}\"`;\n const preSegment = `Hydration ${MismatchTypeString[mismatchType]} mismatch on`;\n const postSegment = `\n - rendered on server: ${format(actual)}\n - expected on client: ${format(expected)}\n Note: this mismatch is check-only. The DOM will not be rectified in production due to performance overhead.\n You should fix the source of the mismatch.`;\n {\n warn$1(preSegment, el, postSegment);\n }\n return true;\n }\n return false;\n}\nfunction toClassSet(str) {\n return new Set(str.trim().split(/\\s+/));\n}\nfunction isSetEqual(a, b) {\n if (a.size !== b.size) {\n return false;\n }\n for (const s of a) {\n if (!b.has(s)) {\n return false;\n }\n }\n return true;\n}\nfunction toStyleMap(str) {\n const styleMap = /* @__PURE__ */ new Map();\n for (const item of str.split(\";\")) {\n let [key, value] = item.split(\":\");\n key = key.trim();\n value = value && value.trim();\n if (key && value) {\n styleMap.set(key, value);\n }\n }\n return styleMap;\n}\nfunction isMapEqual(a, b) {\n if (a.size !== b.size) {\n return false;\n }\n for (const [key, value] of a) {\n if (value !== b.get(key)) {\n return false;\n }\n }\n return true;\n}\nfunction resolveCssVars(instance, vnode, expectedMap) {\n const root = instance.subTree;\n if (instance.getCssVars && (vnode === root || root && root.type === Fragment && root.children.includes(vnode))) {\n const cssVars = instance.getCssVars();\n for (const key in cssVars) {\n expectedMap.set(\n `--${getEscapedCssVarName(key, false)}`,\n String(cssVars[key])\n );\n }\n }\n if (vnode === root && instance.parent) {\n resolveCssVars(instance.parent, instance.vnode, expectedMap);\n }\n}\nconst allowMismatchAttr = \"data-allow-mismatch\";\nconst MismatchTypeString = {\n [0 /* TEXT */]: \"text\",\n [1 /* CHILDREN */]: \"children\",\n [2 /* CLASS */]: \"class\",\n [3 /* STYLE */]: \"style\",\n [4 /* ATTRIBUTE */]: \"attribute\"\n};\nfunction isMismatchAllowed(el, allowedType) {\n if (allowedType === 0 /* TEXT */ || allowedType === 1 /* CHILDREN */) {\n while (el && !el.hasAttribute(allowMismatchAttr)) {\n el = el.parentElement;\n }\n }\n const allowedAttr = el && el.getAttribute(allowMismatchAttr);\n if (allowedAttr == null) {\n return false;\n } else if (allowedAttr === \"\") {\n return true;\n } else {\n const list = allowedAttr.split(\",\");\n if (allowedType === 0 /* TEXT */ && list.includes(\"children\")) {\n return true;\n }\n return allowedAttr.split(\",\").includes(MismatchTypeString[allowedType]);\n }\n}\n\nconst requestIdleCallback = getGlobalThis().requestIdleCallback || ((cb) => setTimeout(cb, 1));\nconst cancelIdleCallback = getGlobalThis().cancelIdleCallback || ((id) => clearTimeout(id));\nconst hydrateOnIdle = (timeout = 1e4) => (hydrate) => {\n const id = requestIdleCallback(hydrate, { timeout });\n return () => cancelIdleCallback(id);\n};\nfunction elementIsVisibleInViewport(el) {\n const { top, left, bottom, right } = el.getBoundingClientRect();\n const { innerHeight, innerWidth } = window;\n return (top > 0 && top < innerHeight || bottom > 0 && bottom < innerHeight) && (left > 0 && left < innerWidth || right > 0 && right < innerWidth);\n}\nconst hydrateOnVisible = (opts) => (hydrate, forEach) => {\n const ob = new IntersectionObserver((entries) => {\n for (const e of entries) {\n if (!e.isIntersecting) continue;\n ob.disconnect();\n hydrate();\n break;\n }\n }, opts);\n forEach((el) => {\n if (!(el instanceof Element)) return;\n if (elementIsVisibleInViewport(el)) {\n hydrate();\n ob.disconnect();\n return false;\n }\n ob.observe(el);\n });\n return () => ob.disconnect();\n};\nconst hydrateOnMediaQuery = (query) => (hydrate) => {\n if (query) {\n const mql = matchMedia(query);\n if (mql.matches) {\n hydrate();\n } else {\n mql.addEventListener(\"change\", hydrate, { once: true });\n return () => mql.removeEventListener(\"change\", hydrate);\n }\n }\n};\nconst hydrateOnInteraction = (interactions = []) => (hydrate, forEach) => {\n if (isString(interactions)) interactions = [interactions];\n let hasHydrated = false;\n const doHydrate = (e) => {\n if (!hasHydrated) {\n hasHydrated = true;\n teardown();\n hydrate();\n e.target.dispatchEvent(new e.constructor(e.type, e));\n }\n };\n const teardown = () => {\n forEach((el) => {\n for (const i of interactions) {\n el.removeEventListener(i, doHydrate);\n }\n });\n };\n forEach((el) => {\n for (const i of interactions) {\n el.addEventListener(i, doHydrate, { once: true });\n }\n });\n return teardown;\n};\nfunction forEachElement(node, cb) {\n if (isComment(node) && node.data === \"[\") {\n let depth = 1;\n let next = node.nextSibling;\n while (next) {\n if (next.nodeType === 1) {\n const result = cb(next);\n if (result === false) {\n break;\n }\n } else if (isComment(next)) {\n if (next.data === \"]\") {\n if (--depth === 0) break;\n } else if (next.data === \"[\") {\n depth++;\n }\n }\n next = next.nextSibling;\n }\n } else {\n cb(node);\n }\n}\n\nconst isAsyncWrapper = (i) => !!i.type.__asyncLoader;\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction defineAsyncComponent(source) {\n if (isFunction(source)) {\n source = { loader: source };\n }\n const {\n loader,\n loadingComponent,\n errorComponent,\n delay = 200,\n hydrate: hydrateStrategy,\n timeout,\n // undefined = never times out\n suspensible = true,\n onError: userOnError\n } = source;\n let pendingRequest = null;\n let resolvedComp;\n let retries = 0;\n const retry = () => {\n retries++;\n pendingRequest = null;\n return load();\n };\n const load = () => {\n let thisRequest;\n return pendingRequest || (thisRequest = pendingRequest = loader().catch((err) => {\n err = err instanceof Error ? err : new Error(String(err));\n if (userOnError) {\n return new Promise((resolve, reject) => {\n const userRetry = () => resolve(retry());\n const userFail = () => reject(err);\n userOnError(err, userRetry, userFail, retries + 1);\n });\n } else {\n throw err;\n }\n }).then((comp) => {\n if (thisRequest !== pendingRequest && pendingRequest) {\n return pendingRequest;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && !comp) {\n warn$1(\n `Async component loader resolved to undefined. If you are using retry(), make sure to return its return value.`\n );\n }\n if (comp && (comp.__esModule || comp[Symbol.toStringTag] === \"Module\")) {\n comp = comp.default;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && comp && !isObject(comp) && !isFunction(comp)) {\n throw new Error(`Invalid async component load result: ${comp}`);\n }\n resolvedComp = comp;\n return comp;\n }));\n };\n return defineComponent({\n name: \"AsyncComponentWrapper\",\n __asyncLoader: load,\n __asyncHydrate(el, instance, hydrate) {\n const doHydrate = hydrateStrategy ? () => {\n const teardown = hydrateStrategy(\n hydrate,\n (cb) => forEachElement(el, cb)\n );\n if (teardown) {\n (instance.bum || (instance.bum = [])).push(teardown);\n }\n } : hydrate;\n if (resolvedComp) {\n doHydrate();\n } else {\n load().then(() => !instance.isUnmounted && doHydrate());\n }\n },\n get __asyncResolved() {\n return resolvedComp;\n },\n setup() {\n const instance = currentInstance;\n markAsyncBoundary(instance);\n if (resolvedComp) {\n return () => createInnerComp(resolvedComp, instance);\n }\n const onError = (err) => {\n pendingRequest = null;\n handleError(\n err,\n instance,\n 13,\n !errorComponent\n );\n };\n if (suspensible && instance.suspense || isInSSRComponentSetup) {\n return load().then((comp) => {\n return () => createInnerComp(comp, instance);\n }).catch((err) => {\n onError(err);\n return () => errorComponent ? createVNode(errorComponent, {\n error: err\n }) : null;\n });\n }\n const loaded = ref(false);\n const error = ref();\n const delayed = ref(!!delay);\n if (delay) {\n setTimeout(() => {\n delayed.value = false;\n }, delay);\n }\n if (timeout != null) {\n setTimeout(() => {\n if (!loaded.value && !error.value) {\n const err = new Error(\n `Async component timed out after ${timeout}ms.`\n );\n onError(err);\n error.value = err;\n }\n }, timeout);\n }\n load().then(() => {\n loaded.value = true;\n if (instance.parent && isKeepAlive(instance.parent.vnode)) {\n instance.parent.update();\n }\n }).catch((err) => {\n onError(err);\n error.value = err;\n });\n return () => {\n if (loaded.value && resolvedComp) {\n return createInnerComp(resolvedComp, instance);\n } else if (error.value && errorComponent) {\n return createVNode(errorComponent, {\n error: error.value\n });\n } else if (loadingComponent && !delayed.value) {\n return createVNode(loadingComponent);\n }\n };\n }\n });\n}\nfunction createInnerComp(comp, parent) {\n const { ref: ref2, props, children, ce } = parent.vnode;\n const vnode = createVNode(comp, props, children);\n vnode.ref = ref2;\n vnode.ce = ce;\n delete parent.vnode.ce;\n return vnode;\n}\n\nconst isKeepAlive = (vnode) => vnode.type.__isKeepAlive;\nconst KeepAliveImpl = {\n name: `KeepAlive`,\n // Marker for special handling inside the renderer. We are not using a ===\n // check directly on KeepAlive in the renderer, because importing it directly\n // would prevent it from being tree-shaken.\n __isKeepAlive: true,\n props: {\n include: [String, RegExp, Array],\n exclude: [String, RegExp, Array],\n max: [String, Number]\n },\n setup(props, { slots }) {\n const instance = getCurrentInstance();\n const sharedContext = instance.ctx;\n if (!sharedContext.renderer) {\n return () => {\n const children = slots.default && slots.default();\n return children && children.length === 1 ? children[0] : children;\n };\n }\n const cache = /* @__PURE__ */ new Map();\n const keys = /* @__PURE__ */ new Set();\n let current = null;\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n instance.__v_cache = cache;\n }\n const parentSuspense = instance.suspense;\n const {\n renderer: {\n p: patch,\n m: move,\n um: _unmount,\n o: { createElement }\n }\n } = sharedContext;\n const storageContainer = createElement(\"div\");\n sharedContext.activate = (vnode, container, anchor, namespace, optimized) => {\n const instance2 = vnode.component;\n move(vnode, container, anchor, 0, parentSuspense);\n patch(\n instance2.vnode,\n vnode,\n container,\n anchor,\n instance2,\n parentSuspense,\n namespace,\n vnode.slotScopeIds,\n optimized\n );\n queuePostRenderEffect(() => {\n instance2.isDeactivated = false;\n if (instance2.a) {\n invokeArrayFns(instance2.a);\n }\n const vnodeHook = vnode.props && vnode.props.onVnodeMounted;\n if (vnodeHook) {\n invokeVNodeHook(vnodeHook, instance2.parent, vnode);\n }\n }, parentSuspense);\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentAdded(instance2);\n }\n };\n sharedContext.deactivate = (vnode) => {\n const instance2 = vnode.component;\n invalidateMount(instance2.m);\n invalidateMount(instance2.a);\n move(vnode, storageContainer, null, 1, parentSuspense);\n queuePostRenderEffect(() => {\n if (instance2.da) {\n invokeArrayFns(instance2.da);\n }\n const vnodeHook = vnode.props && vnode.props.onVnodeUnmounted;\n if (vnodeHook) {\n invokeVNodeHook(vnodeHook, instance2.parent, vnode);\n }\n instance2.isDeactivated = true;\n }, parentSuspense);\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentAdded(instance2);\n }\n };\n function unmount(vnode) {\n resetShapeFlag(vnode);\n _unmount(vnode, instance, parentSuspense, true);\n }\n function pruneCache(filter) {\n cache.forEach((vnode, key) => {\n const name = getComponentName(vnode.type);\n if (name && !filter(name)) {\n pruneCacheEntry(key);\n }\n });\n }\n function pruneCacheEntry(key) {\n const cached = cache.get(key);\n if (cached && (!current || !isSameVNodeType(cached, current))) {\n unmount(cached);\n } else if (current) {\n resetShapeFlag(current);\n }\n cache.delete(key);\n keys.delete(key);\n }\n watch(\n () => [props.include, props.exclude],\n ([include, exclude]) => {\n include && pruneCache((name) => matches(include, name));\n exclude && pruneCache((name) => !matches(exclude, name));\n },\n // prune post-render after `current` has been updated\n { flush: \"post\", deep: true }\n );\n let pendingCacheKey = null;\n const cacheSubtree = () => {\n if (pendingCacheKey != null) {\n if (isSuspense(instance.subTree.type)) {\n queuePostRenderEffect(() => {\n cache.set(pendingCacheKey, getInnerChild(instance.subTree));\n }, instance.subTree.suspense);\n } else {\n cache.set(pendingCacheKey, getInnerChild(instance.subTree));\n }\n }\n };\n onMounted(cacheSubtree);\n onUpdated(cacheSubtree);\n onBeforeUnmount(() => {\n cache.forEach((cached) => {\n const { subTree, suspense } = instance;\n const vnode = getInnerChild(subTree);\n if (cached.type === vnode.type && cached.key === vnode.key) {\n resetShapeFlag(vnode);\n const da = vnode.component.da;\n da && queuePostRenderEffect(da, suspense);\n return;\n }\n unmount(cached);\n });\n });\n return () => {\n pendingCacheKey = null;\n if (!slots.default) {\n return current = null;\n }\n const children = slots.default();\n const rawVNode = children[0];\n if (children.length > 1) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(`KeepAlive should contain exactly one component child.`);\n }\n current = null;\n return children;\n } else if (!isVNode(rawVNode) || !(rawVNode.shapeFlag & 4) && !(rawVNode.shapeFlag & 128)) {\n current = null;\n return rawVNode;\n }\n let vnode = getInnerChild(rawVNode);\n if (vnode.type === Comment) {\n current = null;\n return vnode;\n }\n const comp = vnode.type;\n const name = getComponentName(\n isAsyncWrapper(vnode) ? vnode.type.__asyncResolved || {} : comp\n );\n const { include, exclude, max } = props;\n if (include && (!name || !matches(include, name)) || exclude && name && matches(exclude, name)) {\n vnode.shapeFlag &= ~256;\n current = vnode;\n return rawVNode;\n }\n const key = vnode.key == null ? comp : vnode.key;\n const cachedVNode = cache.get(key);\n if (vnode.el) {\n vnode = cloneVNode(vnode);\n if (rawVNode.shapeFlag & 128) {\n rawVNode.ssContent = vnode;\n }\n }\n pendingCacheKey = key;\n if (cachedVNode) {\n vnode.el = cachedVNode.el;\n vnode.component = cachedVNode.component;\n if (vnode.transition) {\n setTransitionHooks(vnode, vnode.transition);\n }\n vnode.shapeFlag |= 512;\n keys.delete(key);\n keys.add(key);\n } else {\n keys.add(key);\n if (max && keys.size > parseInt(max, 10)) {\n pruneCacheEntry(keys.values().next().value);\n }\n }\n vnode.shapeFlag |= 256;\n current = vnode;\n return isSuspense(rawVNode.type) ? rawVNode : vnode;\n };\n }\n};\nconst KeepAlive = KeepAliveImpl;\nfunction matches(pattern, name) {\n if (isArray(pattern)) {\n return pattern.some((p) => matches(p, name));\n } else if (isString(pattern)) {\n return pattern.split(\",\").includes(name);\n } else if (isRegExp(pattern)) {\n pattern.lastIndex = 0;\n return pattern.test(name);\n }\n return false;\n}\nfunction onActivated(hook, target) {\n registerKeepAliveHook(hook, \"a\", target);\n}\nfunction onDeactivated(hook, target) {\n registerKeepAliveHook(hook, \"da\", target);\n}\nfunction registerKeepAliveHook(hook, type, target = currentInstance) {\n const wrappedHook = hook.__wdc || (hook.__wdc = () => {\n let current = target;\n while (current) {\n if (current.isDeactivated) {\n return;\n }\n current = current.parent;\n }\n return hook();\n });\n injectHook(type, wrappedHook, target);\n if (target) {\n let current = target.parent;\n while (current && current.parent) {\n if (isKeepAlive(current.parent.vnode)) {\n injectToKeepAliveRoot(wrappedHook, type, target, current);\n }\n current = current.parent;\n }\n }\n}\nfunction injectToKeepAliveRoot(hook, type, target, keepAliveRoot) {\n const injected = injectHook(\n type,\n hook,\n keepAliveRoot,\n true\n /* prepend */\n );\n onUnmounted(() => {\n remove(keepAliveRoot[type], injected);\n }, target);\n}\nfunction resetShapeFlag(vnode) {\n vnode.shapeFlag &= ~256;\n vnode.shapeFlag &= ~512;\n}\nfunction getInnerChild(vnode) {\n return vnode.shapeFlag & 128 ? vnode.ssContent : vnode;\n}\n\nfunction injectHook(type, hook, target = currentInstance, prepend = false) {\n if (target) {\n const hooks = target[type] || (target[type] = []);\n const wrappedHook = hook.__weh || (hook.__weh = (...args) => {\n pauseTracking();\n const reset = setCurrentInstance(target);\n const res = callWithAsyncErrorHandling(hook, target, type, args);\n reset();\n resetTracking();\n return res;\n });\n if (prepend) {\n hooks.unshift(wrappedHook);\n } else {\n hooks.push(wrappedHook);\n }\n return wrappedHook;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n const apiName = toHandlerKey(ErrorTypeStrings$1[type].replace(/ hook$/, \"\"));\n warn$1(\n `${apiName} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup().` + (` If you are using async setup(), make sure to register lifecycle hooks before the first await statement.` )\n );\n }\n}\nconst createHook = (lifecycle) => (hook, target = currentInstance) => {\n if (!isInSSRComponentSetup || lifecycle === \"sp\") {\n injectHook(lifecycle, (...args) => hook(...args), target);\n }\n};\nconst onBeforeMount = createHook(\"bm\");\nconst onMounted = createHook(\"m\");\nconst onBeforeUpdate = createHook(\n \"bu\"\n);\nconst onUpdated = createHook(\"u\");\nconst onBeforeUnmount = createHook(\n \"bum\"\n);\nconst onUnmounted = createHook(\"um\");\nconst onServerPrefetch = createHook(\n \"sp\"\n);\nconst onRenderTriggered = createHook(\"rtg\");\nconst onRenderTracked = createHook(\"rtc\");\nfunction onErrorCaptured(hook, target = currentInstance) {\n injectHook(\"ec\", hook, target);\n}\n\nconst COMPONENTS = \"components\";\nconst DIRECTIVES = \"directives\";\nfunction resolveComponent(name, maybeSelfReference) {\n return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name;\n}\nconst NULL_DYNAMIC_COMPONENT = Symbol.for(\"v-ndc\");\nfunction resolveDynamicComponent(component) {\n if (isString(component)) {\n return resolveAsset(COMPONENTS, component, false) || component;\n } else {\n return component || NULL_DYNAMIC_COMPONENT;\n }\n}\nfunction resolveDirective(name) {\n return resolveAsset(DIRECTIVES, name);\n}\nfunction resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) {\n const instance = currentRenderingInstance || currentInstance;\n if (instance) {\n const Component = instance.type;\n if (type === COMPONENTS) {\n const selfName = getComponentName(\n Component,\n false\n );\n if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) {\n return Component;\n }\n }\n const res = (\n // local registration\n // check instance[type] first which is resolved for options API\n resolve(instance[type] || Component[type], name) || // global registration\n resolve(instance.appContext[type], name)\n );\n if (!res && maybeSelfReference) {\n return Component;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && warnMissing && !res) {\n const extra = type === COMPONENTS ? `\nIf this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.` : ``;\n warn$1(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);\n }\n return res;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `resolve${capitalize(type.slice(0, -1))} can only be used in render() or setup().`\n );\n }\n}\nfunction resolve(registry, name) {\n return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]);\n}\n\nfunction renderList(source, renderItem, cache, index) {\n let ret;\n const cached = cache && cache[index];\n const sourceIsArray = isArray(source);\n if (sourceIsArray || isString(source)) {\n const sourceIsReactiveArray = sourceIsArray && isReactive(source);\n let needsWrap = false;\n if (sourceIsReactiveArray) {\n needsWrap = !isShallow(source);\n source = shallowReadArray(source);\n }\n ret = new Array(source.length);\n for (let i = 0, l = source.length; i < l; i++) {\n ret[i] = renderItem(\n needsWrap ? toReactive(source[i]) : source[i],\n i,\n void 0,\n cached && cached[i]\n );\n }\n } else if (typeof source === \"number\") {\n if (!!(process.env.NODE_ENV !== \"production\") && !Number.isInteger(source)) {\n warn$1(`The v-for range expect an integer value but got ${source}.`);\n }\n ret = new Array(source);\n for (let i = 0; i < source; i++) {\n ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]);\n }\n } else if (isObject(source)) {\n if (source[Symbol.iterator]) {\n ret = Array.from(\n source,\n (item, i) => renderItem(item, i, void 0, cached && cached[i])\n );\n } else {\n const keys = Object.keys(source);\n ret = new Array(keys.length);\n for (let i = 0, l = keys.length; i < l; i++) {\n const key = keys[i];\n ret[i] = renderItem(source[key], key, i, cached && cached[i]);\n }\n }\n } else {\n ret = [];\n }\n if (cache) {\n cache[index] = ret;\n }\n return ret;\n}\n\nfunction createSlots(slots, dynamicSlots) {\n for (let i = 0; i < dynamicSlots.length; i++) {\n const slot = dynamicSlots[i];\n if (isArray(slot)) {\n for (let j = 0; j < slot.length; j++) {\n slots[slot[j].name] = slot[j].fn;\n }\n } else if (slot) {\n slots[slot.name] = slot.key ? (...args) => {\n const res = slot.fn(...args);\n if (res) res.key = slot.key;\n return res;\n } : slot.fn;\n }\n }\n return slots;\n}\n\nfunction renderSlot(slots, name, props = {}, fallback, noSlotted) {\n if (currentRenderingInstance.ce || currentRenderingInstance.parent && isAsyncWrapper(currentRenderingInstance.parent) && currentRenderingInstance.parent.ce) {\n if (name !== \"default\") props.name = name;\n return openBlock(), createBlock(\n Fragment,\n null,\n [createVNode(\"slot\", props, fallback && fallback())],\n 64\n );\n }\n let slot = slots[name];\n if (!!(process.env.NODE_ENV !== \"production\") && slot && slot.length > 1) {\n warn$1(\n `SSR-optimized slot function detected in a non-SSR-optimized render function. You need to mark this component with $dynamic-slots in the parent template.`\n );\n slot = () => [];\n }\n if (slot && slot._c) {\n slot._d = false;\n }\n openBlock();\n const validSlotContent = slot && ensureValidVNode(slot(props));\n const slotKey = props.key || // slot content array of a dynamic conditional slot may have a branch\n // key attached in the `createSlots` helper, respect that\n validSlotContent && validSlotContent.key;\n const rendered = createBlock(\n Fragment,\n {\n key: (slotKey && !isSymbol(slotKey) ? slotKey : `_${name}`) + // #7256 force differentiate fallback content from actual content\n (!validSlotContent && fallback ? \"_fb\" : \"\")\n },\n validSlotContent || (fallback ? fallback() : []),\n validSlotContent && slots._ === 1 ? 64 : -2\n );\n if (!noSlotted && rendered.scopeId) {\n rendered.slotScopeIds = [rendered.scopeId + \"-s\"];\n }\n if (slot && slot._c) {\n slot._d = true;\n }\n return rendered;\n}\nfunction ensureValidVNode(vnodes) {\n return vnodes.some((child) => {\n if (!isVNode(child)) return true;\n if (child.type === Comment) return false;\n if (child.type === Fragment && !ensureValidVNode(child.children))\n return false;\n return true;\n }) ? vnodes : null;\n}\n\nfunction toHandlers(obj, preserveCaseIfNecessary) {\n const ret = {};\n if (!!(process.env.NODE_ENV !== \"production\") && !isObject(obj)) {\n warn$1(`v-on with no argument expects an object value.`);\n return ret;\n }\n for (const key in obj) {\n ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = obj[key];\n }\n return ret;\n}\n\nconst getPublicInstance = (i) => {\n if (!i) return null;\n if (isStatefulComponent(i)) return getComponentPublicInstance(i);\n return getPublicInstance(i.parent);\n};\nconst publicPropertiesMap = (\n // Move PURE marker to new line to workaround compiler discarding it\n // due to type annotation\n /* @__PURE__ */ extend(/* @__PURE__ */ Object.create(null), {\n $: (i) => i,\n $el: (i) => i.vnode.el,\n $data: (i) => i.data,\n $props: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.props) : i.props,\n $attrs: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.attrs) : i.attrs,\n $slots: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.slots) : i.slots,\n $refs: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.refs) : i.refs,\n $parent: (i) => getPublicInstance(i.parent),\n $root: (i) => getPublicInstance(i.root),\n $host: (i) => i.ce,\n $emit: (i) => i.emit,\n $options: (i) => __VUE_OPTIONS_API__ ? resolveMergedOptions(i) : i.type,\n $forceUpdate: (i) => i.f || (i.f = () => {\n queueJob(i.update);\n }),\n $nextTick: (i) => i.n || (i.n = nextTick.bind(i.proxy)),\n $watch: (i) => __VUE_OPTIONS_API__ ? instanceWatch.bind(i) : NOOP\n })\n);\nconst isReservedPrefix = (key) => key === \"_\" || key === \"$\";\nconst hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key);\nconst PublicInstanceProxyHandlers = {\n get({ _: instance }, key) {\n if (key === \"__v_skip\") {\n return true;\n }\n const { ctx, setupState, data, props, accessCache, type, appContext } = instance;\n if (!!(process.env.NODE_ENV !== \"production\") && key === \"__isVue\") {\n return true;\n }\n let normalizedProps;\n if (key[0] !== \"$\") {\n const n = accessCache[key];\n if (n !== void 0) {\n switch (n) {\n case 1 /* SETUP */:\n return setupState[key];\n case 2 /* DATA */:\n return data[key];\n case 4 /* CONTEXT */:\n return ctx[key];\n case 3 /* PROPS */:\n return props[key];\n }\n } else if (hasSetupBinding(setupState, key)) {\n accessCache[key] = 1 /* SETUP */;\n return setupState[key];\n } else if (data !== EMPTY_OBJ && hasOwn(data, key)) {\n accessCache[key] = 2 /* DATA */;\n return data[key];\n } else if (\n // only cache other properties when instance has declared (thus stable)\n // props\n (normalizedProps = instance.propsOptions[0]) && hasOwn(normalizedProps, key)\n ) {\n accessCache[key] = 3 /* PROPS */;\n return props[key];\n } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (!__VUE_OPTIONS_API__ || shouldCacheAccess) {\n accessCache[key] = 0 /* OTHER */;\n }\n }\n const publicGetter = publicPropertiesMap[key];\n let cssModule, globalProperties;\n if (publicGetter) {\n if (key === \"$attrs\") {\n track(instance.attrs, \"get\", \"\");\n !!(process.env.NODE_ENV !== \"production\") && markAttrsAccessed();\n } else if (!!(process.env.NODE_ENV !== \"production\") && key === \"$slots\") {\n track(instance, \"get\", key);\n }\n return publicGetter(instance);\n } else if (\n // css module (injected by vue-loader)\n (cssModule = type.__cssModules) && (cssModule = cssModule[key])\n ) {\n return cssModule;\n } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (\n // global properties\n globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key)\n ) {\n {\n return globalProperties[key];\n }\n } else if (!!(process.env.NODE_ENV !== \"production\") && currentRenderingInstance && (!isString(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading\n // to infinite warning loop\n key.indexOf(\"__v\") !== 0)) {\n if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) {\n warn$1(\n `Property ${JSON.stringify(\n key\n )} must be accessed via $data because it starts with a reserved character (\"$\" or \"_\") and is not proxied on the render context.`\n );\n } else if (instance === currentRenderingInstance) {\n warn$1(\n `Property ${JSON.stringify(key)} was accessed during render but is not defined on instance.`\n );\n }\n }\n },\n set({ _: instance }, key, value) {\n const { data, setupState, ctx } = instance;\n if (hasSetupBinding(setupState, key)) {\n setupState[key] = value;\n return true;\n } else if (!!(process.env.NODE_ENV !== \"production\") && setupState.__isScriptSetup && hasOwn(setupState, key)) {\n warn$1(`Cannot mutate \n\n\n","import '../assets/NcAppNavigationList-BIbyyT7b.css';\nimport { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcAppNavigationList\"\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"ul\", { staticClass: \"app-navigation-list\" }, [_vm._t(\"default\")], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"058e6060\"\n);\nconst NcAppNavigationList = __component__.exports;\nexport {\n NcAppNavigationList as default\n};\n","import '../assets/NcAppNavigationToggle-DvYpNzHv.css';\nimport NcButton from \"../Components/NcButton.mjs\";\nimport { r as register, C as t19, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t19);\nconst _sfc_main$2 = {\n name: \"MenuIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon menu-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null\n);\nconst MenuIcon = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"MenuOpenIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon menu-open-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"M21,15.61L19.59,17L14.58,12L19.59,7L21,8.39L17.44,12L21,15.61M3,6H16V8H3V6M3,13V11H13V13H3M3,18V16H16V18H3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst MenuOpenIcon = __component__$1.exports;\nconst _sfc_main = {\n name: \"NcAppNavigationToggle\",\n components: {\n NcButton,\n MenuIcon,\n MenuOpenIcon\n },\n props: {\n /**\n * Tracks whether the toggle has been clicked or not.\n * If it has been clicked, switches between the different MenuIcons\n * and emits a boolean indicating its opened status\n */\n open: {\n type: Boolean,\n required: true\n }\n },\n emits: [\"update:open\"],\n computed: {\n label() {\n return this.open ? t(\"Close navigation\") : t(\"Open navigation\");\n }\n },\n methods: {\n /**\n * Once the toggle has been clicked, emits the toggle status\n * so parent components can gauge the status of the navigation button\n */\n toggleNavigation() {\n this.$emit(\"update:open\", !this.open);\n }\n }\n};\nvar _sfc_render = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"app-navigation-toggle-wrapper\" }, [_c(\"NcButton\", { staticClass: \"app-navigation-toggle\", attrs: { \"type\": \"tertiary\", \"aria-expanded\": _vm.open ? \"true\" : \"false\", \"aria-label\": _vm.label, \"title\": _vm.label, \"aria-controls\": \"app-navigation-vue\" }, on: { \"click\": _vm.toggleNavigation }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm.open ? _c(\"MenuOpenIcon\", { attrs: { \"size\": 20 } }) : _c(\"MenuIcon\", { attrs: { \"size\": 20 } })];\n }, proxy: true }]) })], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"b6024aba\"\n);\nconst NcAppNavigationToggle = __component__.exports;\nexport {\n NcAppNavigationToggle as N\n};\n","import '../assets/NcAppNavigation-fhylfTxx.css';\nimport { useIsMobile } from \"../Composables/useIsMobile.mjs\";\nimport { g as getTrapStack } from \"./focusTrap-Cecv_gjR.mjs\";\nimport { subscribe, emit, unsubscribe } from \"@nextcloud/event-bus\";\nimport { createFocusTrap } from \"focus-trap\";\nimport NcAppNavigationList from \"../Components/NcAppNavigationList.mjs\";\nimport { N as NcAppNavigationToggle } from \"./NcAppNavigationToggle-BXainLDc.mjs\";\nimport Vue from \"vue\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcAppNavigation\",\n components: {\n NcAppNavigationList,\n NcAppNavigationToggle\n },\n // Injected from NcContent\n inject: {\n setHasAppNavigation: {\n default: () => () => Vue.util.warn(\"NcAppNavigation is not mounted inside NcContent, this is probably an error.\"),\n from: \"NcContent:setHasAppNavigation\"\n }\n },\n props: {\n /**\n * The aria label to describe the navigation\n */\n ariaLabel: {\n type: String,\n default: \"\"\n },\n /**\n * aria-labelledby attribute to describe the navigation\n */\n ariaLabelledby: {\n type: String,\n default: \"\"\n }\n },\n setup() {\n return {\n isMobile: useIsMobile()\n };\n },\n data() {\n return {\n open: !this.isMobile,\n focusTrap: null\n };\n },\n watch: {\n isMobile() {\n this.open = !this.isMobile;\n this.toggleFocusTrap();\n },\n open() {\n this.toggleFocusTrap();\n }\n },\n mounted() {\n this.setHasAppNavigation(true);\n subscribe(\"toggle-navigation\", this.toggleNavigationByEventBus);\n emit(\"navigation-toggled\", {\n open: this.open\n });\n this.focusTrap = createFocusTrap(this.$refs.appNavigationContainer, {\n allowOutsideClick: true,\n fallbackFocus: this.$refs.appNavigationContainer,\n trapStack: getTrapStack(),\n escapeDeactivates: false\n });\n this.toggleFocusTrap();\n },\n unmounted() {\n this.setHasAppNavigation(false);\n unsubscribe(\"toggle-navigation\", this.toggleNavigationByEventBus);\n this.focusTrap.deactivate();\n },\n methods: {\n /**\n * Toggle the navigation\n *\n * @param {boolean} [state] set the state instead of inverting the current one\n */\n toggleNavigation(state) {\n if (this.open === state) {\n emit(\"navigation-toggled\", {\n open: this.open\n });\n return;\n }\n this.open = typeof state === \"undefined\" ? !this.open : state;\n const bodyStyles = getComputedStyle(document.body);\n const animationLength = parseInt(bodyStyles.getPropertyValue(\"--animation-quick\")) || 100;\n setTimeout(() => {\n emit(\"navigation-toggled\", {\n open: this.open\n });\n }, 1.5 * animationLength);\n },\n toggleNavigationByEventBus({ open }) {\n this.toggleNavigation(open);\n },\n /**\n * Activate focus trap if it is currently needed, otherwise deactivate\n */\n toggleFocusTrap() {\n if (this.isMobile && this.open) {\n this.focusTrap.activate();\n } else {\n this.focusTrap.deactivate();\n }\n },\n handleEsc() {\n if (this.isMobile) {\n this.toggleNavigation(false);\n }\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { ref: \"appNavigationContainer\", staticClass: \"app-navigation\", class: { \"app-navigation--close\": !_vm.open } }, [_c(\"nav\", { staticClass: \"app-navigation__content\", attrs: { \"id\": \"app-navigation-vue\", \"aria-hidden\": _vm.open ? \"false\" : \"true\", \"aria-label\": _vm.ariaLabel || void 0, \"aria-labelledby\": _vm.ariaLabelledby || void 0, \"inert\": !_vm.open || void 0 }, on: { \"keydown\": function($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) return null;\n return _vm.handleEsc.apply(null, arguments);\n } } }, [_c(\"div\", { staticClass: \"app-navigation__search\" }, [_vm._t(\"search\")], 2), _c(\"div\", { staticClass: \"app-navigation__body\", class: { \"app-navigation__body--no-list\": !_vm.$scopedSlots.list } }, [_vm._t(\"default\")], 2), _vm.$scopedSlots.list ? _c(\"NcAppNavigationList\", { staticClass: \"app-navigation__list\" }, [_vm._t(\"list\")], 2) : _vm._e(), _vm._t(\"footer\")], 2), _c(\"NcAppNavigationToggle\", { attrs: { \"open\": _vm.open }, on: { \"update:open\": _vm.toggleNavigation } })], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"e7d078cc\"\n);\nconst NcAppNavigation = __component__.exports;\nexport {\n NcAppNavigation as N\n};\n","import '../assets/NcActionButton-D90PTEA5.css';\nimport { C as Check } from \"../chunks/Check-XHAzUBkX.mjs\";\nimport { C as ChevronRight } from \"../chunks/ChevronRight-C3eVhc5a.mjs\";\nimport { A as ActionTextMixin } from \"../chunks/actionText-fFcUPi2g.mjs\";\nimport { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcActionButton\",\n components: {\n CheckIcon: Check,\n ChevronRightIcon: ChevronRight\n },\n mixins: [ActionTextMixin],\n inject: {\n isInSemanticMenu: {\n from: \"NcActions:isSemanticMenu\",\n default: false\n }\n },\n props: {\n /**\n * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.\n * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,\n * otherwise root element will inherit incorrect aria-hidden.\n */\n ariaHidden: {\n type: Boolean,\n default: null\n },\n /**\n * disabled state of the action button\n */\n disabled: {\n type: Boolean,\n default: false\n },\n /**\n * If this is a menu, a chevron icon will\n * be added at the end of the line\n */\n isMenu: {\n type: Boolean,\n default: false\n },\n /**\n * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.\n * But you can also set to checkbox button behavior with tri-state or radio button like behavior.\n * This extends the native HTML button type attribute.\n */\n type: {\n type: String,\n default: \"button\",\n validator: (behavior) => [\"button\", \"checkbox\", \"radio\", \"reset\", \"submit\"].includes(behavior)\n },\n /**\n * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).\n * For checkbox and toggle button behavior - boolean value.\n * For radio button behavior - could be a boolean checked or a string with the value of the button.\n * Note: Unlike native radio buttons, NcActionButton are not grouped by name, so you need to connect them by bind correct modelValue.\n *\n * **This is not availabe for `type='submit'` or `type='reset'`**\n *\n * If using `type='checkbox'` a `model-value` of `true` means checked, `false` means unchecked and `null` means indeterminate (tri-state)\n * For `type='radio'` `null` is equal to `false`\n */\n modelValue: {\n type: [Boolean, String],\n default: null\n },\n /**\n * The value used for the `modelValue` when this component is used with radio behavior\n * Similar to the `value` attribute of ``\n */\n value: {\n type: String,\n default: null\n }\n },\n computed: {\n /**\n * determines if the action is focusable\n *\n * @return {boolean} is the action focusable ?\n */\n isFocusable() {\n return !this.disabled;\n },\n /**\n * The current \"checked\" or \"pressed\" state for the model behavior\n */\n isChecked() {\n if (this.type === \"radio\" && typeof this.modelValue !== \"boolean\") {\n return this.modelValue === this.value;\n }\n return this.modelValue;\n },\n /**\n * The native HTML type to set on the button\n */\n nativeType() {\n if (this.type === \"submit\" || this.type === \"reset\") {\n return this.type;\n }\n return \"button\";\n },\n /**\n * HTML attributes to bind to the \n */\n buttonAttributes() {\n const attributes = {};\n if (this.isInSemanticMenu) {\n attributes.role = \"menuitem\";\n if (this.type === \"radio\") {\n attributes.role = \"menuitemradio\";\n attributes[\"aria-checked\"] = this.isChecked ? \"true\" : \"false\";\n } else if (this.type === \"checkbox\" || this.nativeType === \"button\" && this.modelValue !== null) {\n attributes.role = \"menuitemcheckbox\";\n attributes[\"aria-checked\"] = this.modelValue === null ? \"mixed\" : this.modelValue ? \"true\" : \"false\";\n }\n } else if (this.modelValue !== null && this.nativeType === \"button\") {\n attributes[\"aria-pressed\"] = this.modelValue ? \"true\" : \"false\";\n }\n return attributes;\n }\n },\n methods: {\n /**\n * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed\n * @param {MouseEvent} event The click event\n */\n handleClick(event) {\n this.onClick(event);\n if (this.modelValue !== null || this.type !== \"button\") {\n if (this.type === \"radio\") {\n if (typeof this.modelValue !== \"boolean\") {\n if (!this.isChecked) {\n this.$emit(\"update:modelValue\", this.value);\n }\n } else {\n this.$emit(\"update:modelValue\", !this.isChecked);\n }\n } else {\n this.$emit(\"update:modelValue\", !this.isChecked);\n }\n }\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"li\", { staticClass: \"action\", class: { \"action--disabled\": _vm.disabled }, attrs: { \"role\": _vm.isInSemanticMenu && \"presentation\" } }, [_c(\"button\", _vm._b({ class: [\"action-button button-vue\", {\n \"action-button--active\": _vm.isChecked,\n focusable: _vm.isFocusable\n }], attrs: { \"aria-label\": _vm.ariaLabel, \"disabled\": _vm.disabled, \"title\": _vm.title, \"type\": _vm.nativeType }, on: { \"click\": _vm.handleClick } }, \"button\", _vm.buttonAttributes, false), [_vm._t(\"icon\", function() {\n return [_c(\"span\", { staticClass: \"action-button__icon\", class: [_vm.isIconUrl ? \"action-button__icon--url\" : _vm.icon], style: { backgroundImage: _vm.isIconUrl ? \"url(\".concat(_vm.icon, \")\") : null }, attrs: { \"aria-hidden\": \"true\" } })];\n }), _vm.name ? _c(\"span\", { staticClass: \"action-button__longtext-wrapper\" }, [_c(\"strong\", { staticClass: \"action-button__name\" }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")]), _c(\"br\"), _c(\"span\", { staticClass: \"action-button__longtext\", domProps: { \"textContent\": _vm._s(_vm.text) } })]) : _vm.isLongText ? _c(\"span\", { staticClass: \"action-button__longtext\", domProps: { \"textContent\": _vm._s(_vm.text) } }) : _c(\"span\", { staticClass: \"action-button__text\" }, [_vm._v(_vm._s(_vm.text))]), _vm.isMenu ? _c(\"ChevronRightIcon\", { staticClass: \"action-button__menu-icon\", attrs: { \"size\": 20 } }) : _vm.isChecked === true ? _c(\"CheckIcon\", { staticClass: \"action-button__pressed-icon\", attrs: { \"size\": 20 } }) : _vm.isChecked === false ? _c(\"span\", { staticClass: \"action-button__pressed-icon material-design-icon\" }) : _vm._e(), _vm._e()], 2)]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"dba65098\"\n);\nconst NcActionButton = __component__.exports;\nexport {\n NcActionButton as default\n};\n","import { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcVNodes\",\n props: {\n /**\n * The vnodes to render\n */\n vnodes: {\n type: [Array, Object],\n default: null\n }\n },\n /**\n * The render function to display the component\n *\n * @param {Function} h The function to create VNodes\n * @return {object} The created VNode\n */\n render(h) {\n var _a, _b, _c;\n return this.vnodes || ((_a = this.$slots) == null ? void 0 : _a.default) || ((_c = (_b = this.$scopedSlots) == null ? void 0 : _b.default) == null ? void 0 : _c.call(_b));\n }\n};\nconst _sfc_render = null;\nconst _sfc_staticRenderFns = null;\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst NcVNodes = __component__.exports;\nexport {\n NcVNodes as default\n};\n","import { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"ChevronUpIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon chevron-up-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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.41,15.41L12,10.83L16.59,15.41L18,14L12,8L6,14L7.41,15.41Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst ChevronUp = __component__.exports;\nexport {\n ChevronUp as C\n};\n","import '../assets/NcInputConfirmCancel-SGr0-6w8.css';\nimport NcButton from \"../Components/NcButton.mjs\";\nimport { r as register, p as t13, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport { A as ArrowRight } from \"./ArrowRight-KsL2PC-o.mjs\";\nimport { C as Close } from \"./Close-B6ccm1RP.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t13);\nconst _sfc_main = {\n name: \"NcInputConfirmCancel\",\n components: {\n NcButton,\n ArrowRight,\n Close\n },\n props: {\n /**\n * If this element is used on a primary element set to true for primary styling.\n */\n primary: {\n default: false,\n type: Boolean\n },\n placeholder: {\n default: \"\",\n type: String\n },\n value: {\n default: \"\",\n type: String\n }\n },\n emits: [\n \"input\",\n \"confirm\",\n \"cancel\"\n ],\n data() {\n return {\n labelConfirm: t(\"Confirm changes\"),\n labelCancel: t(\"Cancel changes\")\n };\n },\n computed: {\n valueModel: {\n get() {\n return this.value;\n },\n set(newValue) {\n this.$emit(\"input\", newValue);\n }\n }\n },\n methods: {\n confirm() {\n this.$emit(\"confirm\");\n },\n cancel() {\n this.$emit(\"cancel\");\n },\n focusInput() {\n this.$refs.input.focus();\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"app-navigation-input-confirm\" }, [_c(\"form\", { on: { \"submit\": function($event) {\n $event.preventDefault();\n return _vm.confirm.apply(null, arguments);\n }, \"keydown\": function($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) return null;\n if ($event.ctrlKey || $event.shiftKey || $event.altKey || $event.metaKey) return null;\n $event.stopPropagation();\n $event.preventDefault();\n return _vm.cancel.apply(null, arguments);\n }, \"click\": function($event) {\n $event.stopPropagation();\n $event.preventDefault();\n } } }, [_c(\"input\", { directives: [{ name: \"model\", rawName: \"v-model\", value: _vm.valueModel, expression: \"valueModel\" }], ref: \"input\", staticClass: \"app-navigation-input-confirm__input\", attrs: { \"type\": \"text\", \"placeholder\": _vm.placeholder }, domProps: { \"value\": _vm.valueModel }, on: { \"input\": function($event) {\n if ($event.target.composing) return;\n _vm.valueModel = $event.target.value;\n } } }), _c(\"NcButton\", { attrs: { \"native-type\": \"submit\", \"type\": \"primary\", \"aria-label\": _vm.labelConfirm }, on: { \"click\": function($event) {\n $event.stopPropagation();\n $event.preventDefault();\n return _vm.confirm.apply(null, arguments);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"ArrowRight\", { attrs: { \"size\": 20 } })];\n }, proxy: true }]) }), _c(\"NcButton\", { attrs: { \"native-type\": \"reset\", \"type\": _vm.primary ? \"primary\" : \"tertiary\", \"aria-label\": _vm.labelCancel }, on: { \"click\": function($event) {\n $event.stopPropagation();\n $event.preventDefault();\n return _vm.cancel.apply(null, arguments);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"Close\", { attrs: { \"size\": 20 } })];\n }, proxy: true }]) })], 1)]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"0e795eb7\"\n);\nconst NcInputConfirmCancel = __component__.exports;\nexport {\n NcInputConfirmCancel as N\n};\n","import '../assets/NcAppNavigationItem-CxlG8Qdb.css';\nimport { N as NcActions } from \"./NcActions-BgYpDq2n.mjs\";\nimport NcActionButton from \"../Components/NcActionButton.mjs\";\nimport NcLoadingIcon from \"../Components/NcLoadingIcon.mjs\";\nimport NcVNodes from \"../Components/NcVNodes.mjs\";\nimport NcButton from \"../Components/NcButton.mjs\";\nimport { r as register, L as t20, a as t, d as t48, M as t21 } from \"./_l10n-JYjUKekn.mjs\";\nimport { C as ChevronDown } from \"./ChevronDown-D3Tfshug.mjs\";\nimport { C as ChevronUp } from \"./ChevronUp-ljACquzS.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nimport { useIsMobile } from \"../Composables/useIsMobile.mjs\";\nimport { N as NcInputConfirmCancel } from \"./NcInputConfirmCancel-PXVZ7mLT.mjs\";\nimport { G as GenRandomId } from \"./GenRandomId-CMooMQt0.mjs\";\nregister(t20);\nconst _sfc_main$3 = {\n name: \"NcAppNavigationIconCollapsible\",\n components: {\n NcButton,\n ChevronDown,\n ChevronUp\n },\n props: {\n open: {\n type: Boolean,\n default: true\n }\n },\n emits: [\"click\"],\n computed: {\n labelButton() {\n return this.open ? t(\"Collapse menu\") : t(\"Open menu\");\n }\n },\n methods: {\n onClick(e) {\n this.$emit(\"click\", e);\n }\n }\n};\nvar _sfc_render$3 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"NcButton\", { staticClass: \"icon-collapse\", class: { \"icon-collapse--open\": _vm.open }, attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.labelButton }, on: { \"click\": _vm.onClick }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm.open ? _c(\"ChevronUp\", { attrs: { \"size\": 20 } }) : _c(\"ChevronDown\", { attrs: { \"size\": 20 } })];\n }, proxy: true }]) });\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n \"cadd59ae\"\n);\nconst NcAppNavigationIconCollapsible = __component__$3.exports;\nregister(t21, t48);\nconst _sfc_main$2 = {\n name: \"PencilIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon pencil-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"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\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null\n);\nconst Pencil = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"UndoIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon undo-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"M12.5,8C9.85,8 7.45,9 5.6,10.6L2,7V16H11L7.38,12.38C8.77,11.22 10.54,10.5 12.5,10.5C16.04,10.5 19.05,12.81 20.1,16L22.47,15.22C21.08,11.03 17.15,8 12.5,8Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst Undo = __component__$1.exports;\nconst _sfc_main = {\n name: \"NcAppNavigationItem\",\n components: {\n NcActions,\n NcActionButton,\n NcAppNavigationIconCollapsible,\n NcInputConfirmCancel,\n NcLoadingIcon,\n NcVNodes,\n Pencil,\n Undo\n },\n props: {\n /**\n * If you are not using vue-router you can use the property to set this item as the active navigation entry.\n * When using vue-router and the `to` property this is set automatically.\n */\n active: {\n type: Boolean,\n default: false\n },\n /**\n * The main text content of the entry.\n */\n name: {\n type: String,\n required: true\n },\n /**\n * The title attribute of the element.\n */\n title: {\n type: String,\n default: null\n },\n /**\n * id attribute of the list item element\n */\n id: {\n type: String,\n default: () => \"app-navigation-item-\" + GenRandomId(),\n validator: (id) => id.trim() !== \"\"\n },\n /**\n * Refers to the icon on the left, this prop accepts a class\n * like 'icon-category-enabled'.\n */\n icon: {\n type: String,\n default: \"\"\n },\n /**\n * Displays a loading animated icon on the left of the element\n * instead of the icon.\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * Passing in a route will make the root element of this\n * component a `` that points to that route.\n * By leaving this blank, the root element will be a ``.\n */\n to: {\n type: [String, Object],\n default: null\n },\n /**\n * A direct link. This will be used as the `href` attribute.\n * This will ignore any `to` prop being defined.\n */\n href: {\n type: String,\n default: null\n },\n /**\n * Pass in `true` if you want the matching behaviour to\n * be non-inclusive: https://router.vuejs.org/api/#exact\n */\n exact: {\n type: Boolean,\n default: false\n },\n /**\n * Gives the possibility to collapse the children elements into the\n * parent element (true) or expands the children elements (false).\n */\n allowCollapse: {\n type: Boolean,\n default: false\n },\n /**\n * Makes the name of the item editable by providing an `ActionButton`\n * component that toggles a form\n */\n editable: {\n type: Boolean,\n default: false\n },\n /**\n * Only for 'editable' items, sets label for the edit action button.\n */\n editLabel: {\n type: String,\n default: \"\"\n },\n /**\n * Only for items in 'editable' mode, sets the placeholder text for the editing form.\n */\n editPlaceholder: {\n type: String,\n default: \"\"\n },\n /**\n * Pins the item to the bottom left area, above the settings. Do not\n * place 'non-pinned' `AppnavigationItem` components below `pinned`\n * ones.\n */\n pinned: {\n type: Boolean,\n default: false\n },\n /**\n * Puts the item in the 'undo' state.\n */\n undo: {\n type: Boolean,\n default: false\n },\n /**\n * The navigation collapsible state (synced)\n */\n open: {\n type: Boolean,\n default: false\n },\n /**\n * The actions menu open state (synced)\n */\n menuOpen: {\n type: Boolean,\n default: false\n },\n /**\n * Force the actions to display in a three dot menu\n */\n forceMenu: {\n type: Boolean,\n default: false\n },\n /**\n * The action's menu default icon\n */\n menuIcon: {\n type: String,\n default: void 0\n },\n /**\n * The action's menu direction\n */\n menuPlacement: {\n type: String,\n default: \"bottom\"\n },\n /**\n * Entry aria details\n */\n ariaDescription: {\n type: String,\n default: null\n },\n /**\n * To be used only when the elements in the actions menu are very important\n */\n forceDisplayActions: {\n type: Boolean,\n default: false\n },\n /**\n * Number of action items outside the menu\n */\n inlineActions: {\n type: Number,\n default: 0\n }\n },\n emits: [\n \"update:menuOpen\",\n \"update:open\",\n \"update:name\",\n \"click\",\n \"undo\"\n ],\n setup() {\n return {\n isMobile: useIsMobile()\n };\n },\n data() {\n return {\n editingValue: \"\",\n opened: this.open,\n // Collapsible state\n editingActive: false,\n hasChildren: false,\n /**\n * Tracks the open state of the actions menu\n */\n menuOpenLocalValue: false,\n focused: false,\n collapsible: false,\n actionsBoundariesElement: void 0\n };\n },\n computed: {\n isRouterLink() {\n return this.to && !this.href;\n },\n // Checks if the component is already a children of another\n // instance of AppNavigationItem\n canHaveChildren() {\n if (this.$parent.$options._componentTag === \"AppNavigationItem\") {\n return false;\n } else {\n return true;\n }\n },\n hasUtils() {\n if (this.$slots.actions || this.$slots.counter || this.editable || this.undo) {\n return true;\n }\n return false;\n },\n editButtonAriaLabel() {\n return this.editLabel ? this.editLabel : t(\"Edit item\");\n },\n undoButtonAriaLabel() {\n return t(\"Undo changes\");\n }\n },\n watch: {\n open(newVal) {\n this.opened = newVal;\n }\n },\n mounted() {\n this.actionsBoundariesElement = document.querySelector(\"#content-vue\") || void 0;\n },\n created() {\n this.updateSlotInfo();\n },\n beforeUpdate() {\n this.updateSlotInfo();\n },\n methods: {\n // sync opened menu state with prop\n onMenuToggle(state) {\n this.$emit(\"update:menuOpen\", state);\n this.menuOpenLocalValue = state;\n },\n // toggle the collapsible state\n toggleCollapse() {\n this.opened = !this.opened;\n this.$emit(\"update:open\", this.opened);\n },\n /**\n * Handle link click\n *\n * @param {PointerEvent} event - Native click event\n * @param {Function} [navigate] - VueRouter link's navigate if any\n * @param {string} [routerLinkHref] - VueRouter link's href\n */\n onClick(event, navigate, routerLinkHref) {\n this.$emit(\"click\", event);\n if (event.metaKey || event.altKey || event.ctrlKey || event.shiftKey) {\n return;\n }\n if (routerLinkHref) {\n navigate == null ? void 0 : navigate(event);\n event.preventDefault();\n }\n },\n // Edition methods\n handleEdit() {\n this.editingValue = this.name;\n this.editingActive = true;\n this.onMenuToggle(false);\n this.$nextTick(() => {\n this.$refs.editingInput.focusInput();\n });\n },\n cancelEditing() {\n this.editingActive = false;\n },\n handleEditingDone() {\n this.$emit(\"update:name\", this.editingValue);\n this.editingValue = \"\";\n this.editingActive = false;\n },\n // Undo methods\n handleUndo() {\n this.$emit(\"undo\");\n },\n updateSlotInfo() {\n this.hasChildren = !!this.$slots.default;\n this.collapsible = this.allowCollapse && !!this.$slots.default;\n },\n /**\n * Show actions upon focus\n */\n handleFocus() {\n this.focused = true;\n },\n handleBlur() {\n this.focused = false;\n },\n /**\n * This method checks if the root element of the component is focused and\n * if that's the case it focuses the actions button if available\n *\n * @param {Event} e the keydown event\n */\n handleTab(e) {\n if (!this.$refs.actions) {\n return;\n }\n if (this.focused) {\n e.preventDefault();\n this.$refs.actions.$refs.menuButton.$el.focus();\n this.focused = false;\n } else {\n this.$refs.actions.$refs.menuButton.$el.blur();\n }\n },\n /**\n * Is this an external link\n *\n * @param {string} href The link to check\n * @return {boolean} Whether it is external or not\n */\n isExternal(href) {\n return href && href.match(/[a-z]+:\\/\\//i);\n }\n }\n};\nvar _sfc_render = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"li\", { staticClass: \"app-navigation-entry-wrapper\", class: {\n \"app-navigation-entry--opened\": _vm.opened,\n \"app-navigation-entry--pinned\": _vm.pinned,\n \"app-navigation-entry--collapsible\": _vm.collapsible\n }, attrs: { \"id\": _vm.id } }, [_c(_vm.isRouterLink ? \"router-link\" : \"NcVNodes\", { tag: \"component\", attrs: { \"custom\": _vm.isRouterLink ? true : false, \"to\": _vm.to, \"exact\": _vm.isRouterLink ? _vm.exact : null }, scopedSlots: _vm._u([{ key: \"default\", fn: function({ href: routerLinkHref, navigate, isActive }) {\n return [_c(\"div\", { staticClass: \"app-navigation-entry\", class: {\n \"app-navigation-entry--editing\": _vm.editingActive,\n \"app-navigation-entry--deleted\": _vm.undo,\n \"active\": isActive && _vm.to || _vm.active\n } }, [!_vm.undo ? _c(\"a\", { staticClass: \"app-navigation-entry-link\", attrs: { \"aria-current\": _vm.active || isActive && _vm.to ? \"page\" : void 0, \"aria-description\": _vm.ariaDescription, \"aria-expanded\": _vm.hasChildren ? _vm.opened.toString() : void 0, \"href\": _vm.href || routerLinkHref || \"#\", \"target\": _vm.isExternal(_vm.href) ? \"_blank\" : void 0, \"title\": _vm.title || _vm.name }, on: { \"blur\": _vm.handleBlur, \"click\": function($event) {\n return _vm.onClick($event, navigate, routerLinkHref);\n }, \"focus\": _vm.handleFocus, \"keydown\": function($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"tab\", 9, $event.key, \"Tab\")) return null;\n if ($event.ctrlKey || $event.shiftKey || $event.altKey || $event.metaKey) return null;\n return _vm.handleTab.apply(null, arguments);\n } } }, [_c(\"div\", { staticClass: \"app-navigation-entry-icon\", class: { [_vm.icon]: _vm.icon } }, [_vm.loading ? _c(\"NcLoadingIcon\") : _vm._t(\"icon\")], 2), !_vm.editingActive ? _c(\"span\", { staticClass: \"app-navigation-entry__name\" }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")]) : _vm._e(), _vm.editingActive ? _c(\"div\", { staticClass: \"editingContainer\" }, [_c(\"NcInputConfirmCancel\", { ref: \"editingInput\", attrs: { \"placeholder\": _vm.editPlaceholder !== \"\" ? _vm.editPlaceholder : _vm.name, \"primary\": isActive && _vm.to || _vm.active }, on: { \"cancel\": _vm.cancelEditing, \"confirm\": _vm.handleEditingDone }, model: { value: _vm.editingValue, callback: function($$v) {\n _vm.editingValue = $$v;\n }, expression: \"editingValue\" } })], 1) : _vm._e()]) : _vm._e(), _vm.undo ? _c(\"div\", { staticClass: \"app-navigation-entry__deleted\" }, [_c(\"div\", { staticClass: \"app-navigation-entry__deleted-description\" }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")])]) : _vm._e(), _vm.hasUtils && !_vm.editingActive ? _c(\"div\", { staticClass: \"app-navigation-entry__utils\", class: { \"app-navigation-entry__utils--display-actions\": _vm.forceDisplayActions || _vm.menuOpenLocalValue || _vm.menuOpen } }, [_vm.$slots.counter ? _c(\"div\", { staticClass: \"app-navigation-entry__counter-wrapper\" }, [_vm._t(\"counter\")], 2) : _vm._e(), _vm.$slots.actions || _vm.editable && !_vm.editingActive || _vm.undo ? _c(\"NcActions\", { ref: \"actions\", staticClass: \"app-navigation-entry__actions\", attrs: { \"inline\": _vm.inlineActions, \"container\": \"#app-navigation-vue\", \"boundaries-element\": _vm.actionsBoundariesElement, \"placement\": _vm.menuPlacement, \"open\": _vm.menuOpen, \"type\": isActive && _vm.to || _vm.active ? \"primary\" : null, \"force-menu\": _vm.forceMenu, \"default-icon\": _vm.menuIcon }, on: { \"update:open\": _vm.onMenuToggle }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm._t(\"menu-icon\")];\n }, proxy: true }], null, true) }, [_vm.editable && !_vm.editingActive ? _c(\"NcActionButton\", { attrs: { \"aria-label\": _vm.editButtonAriaLabel }, on: { \"click\": _vm.handleEdit }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"Pencil\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, true) }, [_vm._v(\" \" + _vm._s(_vm.editLabel) + \" \")]) : _vm._e(), _vm.undo ? _c(\"NcActionButton\", { attrs: { \"aria-label\": _vm.undoButtonAriaLabel }, on: { \"click\": _vm.handleUndo }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"Undo\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, true) }) : _vm._e(), _vm._t(\"actions\")], 2) : _vm._e()], 1) : _vm._e(), _vm.collapsible ? _c(\"NcAppNavigationIconCollapsible\", { attrs: { \"open\": _vm.opened }, on: { \"click\": function($event) {\n $event.preventDefault();\n $event.stopPropagation();\n return _vm.toggleCollapse.apply(null, arguments);\n } } }) : _vm._e(), _vm._t(\"extra\")], 2)];\n } }], null, true) }), _vm.canHaveChildren && _vm.hasChildren ? _c(\"ul\", { staticClass: \"app-navigation-entry__children\" }, [_vm._t(\"default\")], 2) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"97fce21a\"\n);\nconst NcAppNavigationItem = __component__.exports;\nexport {\n NcAppNavigationItem as N\n};\n","const clickOutsideOptions = {\n props: {\n /**\n * A query-selector or an array of query-selectors\n * to be ignored when clicking outside an element\n */\n excludeClickOutsideSelectors: {\n type: [String, Array],\n default: () => []\n }\n },\n computed: {\n clickOutsideOptions() {\n const excludedQuerySelectors = Array.isArray(this.excludeClickOutsideSelectors) ? this.excludeClickOutsideSelectors : [this.excludeClickOutsideSelectors];\n return { ignore: excludedQuerySelectors };\n }\n }\n};\nexport {\n clickOutsideOptions as default\n};\n","import '../assets/NcMentionBubble-C6t8od-_.css';\nimport '../assets/NcAppNavigationSettings-AzpTlUym.css';\nimport { r as register, w as t44, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport clickOutsideOptions from \"../Mixins/clickOutsideOptions.mjs\";\nimport \"../Composables/useIsFullscreen.mjs\";\nimport \"../Composables/useIsMobile.mjs\";\nimport \"@nextcloud/router\";\n/* empty css */\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nimport \"linkify-string\";\nimport \"escape-html\";\nimport \"striptags\";\nimport \"vue\";\nimport \"@nextcloud/auth\";\nimport \"@nextcloud/axios\";\nimport \"@nextcloud/capabilities\";\nimport { vOnClickOutside } from \"@vueuse/components\";\nregister(t44);\nconst _sfc_main$1 = {\n name: \"CogIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cog-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst Cog = __component__$1.exports;\nconst _sfc_main = {\n directives: {\n ClickOutside: vOnClickOutside\n },\n components: {\n Cog\n },\n mixins: [\n clickOutsideOptions\n ],\n props: {\n name: {\n type: String,\n required: false,\n default: t(\"Settings\")\n }\n },\n data() {\n return {\n open: false\n };\n },\n computed: {\n clickOutsideConfig() {\n return [\n this.closeMenu,\n this.clickOutsideOptions\n ];\n }\n },\n methods: {\n toggleMenu() {\n this.open = !this.open;\n },\n closeMenu() {\n this.open = false;\n }\n }\n};\nvar _sfc_render = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { directives: [{ name: \"click-outside\", rawName: \"v-click-outside\", value: _vm.clickOutsideConfig, expression: \"clickOutsideConfig\" }], class: { open: _vm.open }, attrs: { \"id\": \"app-settings\" } }, [_c(\"div\", { attrs: { \"id\": \"app-settings__header\" } }, [_c(\"button\", { staticClass: \"settings-button\", attrs: { \"type\": \"button\", \"aria-expanded\": _vm.open ? \"true\" : \"false\", \"aria-controls\": \"app-settings__content\" }, on: { \"click\": _vm.toggleMenu } }, [_c(\"Cog\", { staticClass: \"settings-button__icon\", attrs: { \"size\": 20 } }), _c(\"span\", { staticClass: \"settings-button__label\" }, [_vm._v(_vm._s(_vm.name))])], 1)]), _c(\"Transition\", { attrs: { \"name\": \"slide-up\" } }, [_c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.open, expression: \"open\" }], attrs: { \"id\": \"app-settings__content\" } }, [_vm._t(\"default\")], 2)])], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"981e215c\"\n);\nconst NcAppNavigationSettings = __component__.exports;\nexport {\n NcAppNavigationSettings as N\n};\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","\n\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{ t('activity', 'Enable RSS feed') }}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{ t('activity', 'Personal notification settings') }}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { RouteConfig } from 'vue-router'\nimport ActivityAppFeed from './views/ActivityAppFeed.vue'\nimport ActivityAppNavigation from './views/ActivityAppNavigation.vue'\n\nexport const routes = [\n\t{\n\t\tpath: '/',\n\t\tname: 'root',\n\t\tredirect: { path: '/all' },\n\t},\n\t{\n\t\tpath: '/:filter?',\n\t\tcomponents: {\n\t\t\tdefault: ActivityAppFeed,\n\t\t\tnavigation: ActivityAppNavigation,\n\t\t},\n\t\tprops: {\n\t\t\tdefault: true,\n\t\t},\n\t},\n] as RouteConfig[]\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport Vue from 'vue'\nimport VueRouter from 'vue-router'\nimport ActivityApp from './views/ActivityApp.vue'\n\nimport { translate, translatePlural } from '@nextcloud/l10n'\nimport { generateUrl } from '@nextcloud/router'\n\nimport { routes } from './routes'\n\n// Set up Vue\nVue.prototype.t = translate\nVue.prototype.n = translatePlural\n\nVue.use(VueRouter)\n\nconst router = new VueRouter({\n\tmode: 'history',\n\tbase: generateUrl('/apps/activity'),\n\tlinkActiveClass: 'active',\n\troutes,\n})\n\nexport default new Vue({\n\tel: '#content',\n\t// eslint-disable-next-line vue/match-component-file-name\n\tname: 'ActivityRoot',\n\trouter,\n\trender: h => h(ActivityApp),\n})\n"],"names":["urlAlphabet","nanoid","size","id","_typeof","obj","config","setSelector","selector","isBrowser","TargetContainer","Vue","vm","h","nodes","el","Portal","_this","disabled","parent","child","targetEl","install","_Vue","options","register","t29","contentSvg","navigationSvg","_sfc_main","NcButton","NcIconSvgWrapper","useIsMobile","container","t","emit","value","_sfc_render","_vm","_c","$event","_sfc_staticRenderFns","__component__","normalizeComponent","NcContent","__defProp","__defProps","__getOwnPropDescs","__getOwnPropSymbols","__hasOwnProp","__propIsEnum","__defNormalProp","key","__spreadValues","a","b","prop","__spreadProps","__objRest","source","exclude","target","scriptExports","render2","staticRenderFns2","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","originalRender","context","existing","__vue2_script$1","pane2","event","splitterIndex","totalMinSizes","i","paneId","rect","clientX","clientY","drag","containerSize","sums","minDrag","maxDrag","dragPercentage","panesToResize","paneBefore","paneAfter","paneBeforeMaxReached","paneAfterMaxReached","vars","total","p","isPane","isSplitter","paneIndex","nextPaneNode","isVeryFirst","elm","node","children","_a","_b","args","index","min","max","pane3","removed","changedPanes","equalSpace","leftToAllocate","ungrowable","unshrinkable","definedSizes","leftToAllocate2","addedPane","removedPane","equalSpaceToAllocate","newPaneSize","allocated","enable","splitter","__vue2_render","__vue2_staticRenderFns","__cssModules$1","__component__$1","__vue2_injectStyles$1","o","splitpanes","render","_h","staticRenderFns","__vue2_script","style","__cssModules","__vue2_injectStyles","pane","t26","_sfc_main$1","VTooltip","ArrowRight","hide","appNavigationToggle","_sfc_render$1","_sfc_staticRenderFns$1","NcAppDetailsToggle","browserStorage","getBuilder","Pane","Splitpanes","appName","useSwipe","e","direction","listPaneSize","NcAppContent","$placeholder","$fakeParent","$nextSiblingPatched","$childNodesPatched","isFrag","parentNodeDescriptor","patchParentNode","fakeParent","nextSiblingDescriptor","childNodes","patchNextSibling","getTopFragment","fromParent","_node","parentNode","getChildNodes","getChildNodesWithFragments","_childNodesDescriptor","realChildNodes","childNode","childNodesDescriptor","firstChildDescriptor","hasChildNodes","patchChildNodes","before","_this$frag$","remove","frag","getFragmentLeafNodes","_Array$prototype","addPlaceholder","insertBeforeNode","placeholder","removeChild","hasChildInFragment","_this$frag$splice","removedNode","hasChild","insertBefore","insertNode","insertNodes","_frag","_lastNode","removePlaceholder","lastNode","appendChild","lastChild","innerHTMLDescriptor","htmlString","_this2","domify","element","nextSibling","previousSibling","fragment","dateText","computed","today","moment","yesterday","first","props","fullDate","formatted","appIconSVG","makeMap","str","map","val","EMPTY_OBJ","NOOP","extend","hasOwnProperty","hasOwn","isArray","isMap","toTypeString","isSet","isFunction","isString","isSymbol","isObject","isPromise","objectToString","toRawType","isPlainObject","isIntegerKey","hasChanged","oldValue","_globalThis","getGlobalThis","global","activeSub","pausedQueueEffects","ReactiveEffect","fn","batch","cleanupEffect","prepareDeps","prevEffect","prevShouldTrack","shouldTrack","cleanupDeps","link","removeSub","isDirty","batchDepth","batchedSub","batchedComputed","sub","isComputed","startBatch","endBatch","next","error","err","head","tail","prev","removeDep","refreshComputed","globalVersion","dep","prevSub","soft","nextSub","l","prevDep","nextDep","trackStack","pauseTracking","resetTracking","last","cleanup","Link","Dep","debugInfo","addSub","currentTail","targetMap","ITERATE_KEY","MAP_KEY_ITERATE_KEY","ARRAY_ITERATE_KEY","track","type","depsMap","trigger","newValue","oldTarget","run","targetIsArray","isArrayIndex","newLength","key2","reactiveReadArray","array","raw","toRaw","isShallow","toReactive","shallowReadArray","arr","arrayInstrumentations","iterator","x","thisArg","apply","v","searchProxy","separator","noTracking","reduce","comparer","self","method","wrapValue","iter","result","arrayProto","wrappedRetFn","needsWrap","methodFn","result2","wrappedFn","item","acc","res","isProxy","isNonTrackableKeys","builtInSymbols","BaseReactiveHandler","_isReadonly","_isShallow","receiver","isReadonly2","isShallow2","shallowReadonlyMap","readonlyMap","shallowReactiveMap","reactiveMap","isRef","readonly","reactive","MutableReactiveHandler","isOldValueReadonly","isReadonly","hadKey","ReadonlyReactiveHandler","mutableHandlers","readonlyHandlers","toShallow","getProto","createIterableMethod","rawTarget","targetIsMap","isPair","isKeyOnly","innerIterator","wrap","toReadonly","done","createReadonlyMethod","createInstrumentations","shallow","instrumentations","rawKey","has","callback","observed","get","hadItems","createInstrumentationGetter","mutableCollectionHandlers","readonlyCollectionHandlers","targetTypeMap","rawType","getTargetType","createReactiveObject","baseHandlers","collectionHandlers","proxyMap","existingProxy","targetType","proxy","isReactive","r","ref","createRef","shallowRef","rawValue","RefImpl","useDirectValue","unref","ref2","toValue","ComputedRefImpl","setter","isSSR","getterOrOptions","debugOptions","getter","INITIAL_WATCHER_VALUE","cleanupMap","activeWatcher","onWatcherCleanup","cleanupFn","failSilently","owner","cleanups","watch","cb","immediate","deep","once","scheduler","augmentJob","call","reactiveGetter","source2","traverse","effect","boundCleanup","forceTrigger","isMultiSource","s","currentEffect","baseGetter","depth","watchHandle","_cb","job","immediateFirstRun","currentWatcher","cleanup2","seen","callWithErrorHandling","instance","handleError","callWithAsyncErrorHandling","values","throwInDev","contextVNode","errorHandler","throwUnhandledErrorInProduction","cur","exposedInstance","errorInfo","errorCapturedHooks","logError","throwInProd","queue","flushIndex","pendingPostFlushCbs","activePostFlushCbs","postFlushIndex","resolvedPromise","currentFlushPromise","nextTick","findInsertionIndex","start","end","middle","middleJob","middleJobId","getId","queueJob","jobId","lastJob","queueFlush","flushJobs","queuePostFlushCb","flushPostFlushCbs","deduped","currentRenderingInstance","injectHook","currentInstance","prepend","hooks","wrappedHook","reset","setCurrentInstance","createHook","lifecycle","isInSSRComponentSetup","onMounted","onUnmounted","currentApp","inject","defaultValue","treatDefaultAsFactory","provides","queuePostRenderEffect","queueEffectWithSuspense","ssrContextKey","useSSRContext","doWatch","flush","baseWatchOptions","runsImmediately","ssrCleanup","ctx","watchStopHandle","isPre","isFirstRun","watch$1","suspense","getCurrentInstance","internalSetCurrentInstance","g","registerGlobalSetter","setters","set","computed$1","isClient","notNullish","toString","noop","createFilterWrapper","filter","wrapper","resolve","reject","debounceFilter","ms","timer","maxTimer","lastRejector","_clearTimeout","timer2","lastInvoker","invoke","duration","toValue$1","maxDuration","throttleFilter","lastExec","isLeading","lastValue","trailing","leading","rejectOnCancel","clear","_invoke","elapsed","getLifeCycleTarget","toArray","useDebounceFn","useThrottleFn","tryOnMounted","sync","tryOnUnmounted","watchImmediate","watchOnce","stop","defaultWindow","unrefElement","elRef","plain","useEventListener","listener","firstParamTargets","test","stopWatch","raw_targets","raw_events","raw_listeners","raw_options","optionsClone","useMounted","isMounted","useSupported","useIntersectionObserver","root","rootMargin","threshold","window","isSupported","targets","_target","isActive","targets2","root2","observer","useElementVisibility","scrollTarget","elementIsVisible","intersectionObserverEntries","isIntersecting","latestTime","entry","resolveElement","ARRIVED_STATE_THRESHOLD_PIXELS","useScroll","throttle","idle","onStop","onScroll","offset","eventListenerOptions","behavior","onError","internalX","internalY","x2","scrollTo","y","y2","_x","_y","_d","_element","scrollContainer","isScrolling","arrivedState","directions","onScrollEnd","onScrollEndDebounced","setArrivedState","display","flexDirection","directionMultipler","scrollLeft","left","right","scrollTop","top","bottom","onScrollHandler","eventTarget","useInfiniteScroll","onLoadMore","interval","canLoadMore","state","promise","isLoading","observedElement","isElementVisible","checkAndLoad","scrollHeight","clientHeight","scrollWidth","clientWidth","isNarrower","useRoute","route","effectScope","shallowReactive","to","navigationList","loadState","loading","hasMoreActivites","allActivities","lastActivityLoaded","loadActivities","groupedActivities","groups","activity","date","headingTitle","navigationEl","since","response","ncAxios","generateOcsUrl","ActivityModel","axios","logger","showError","NcAppNavigationList","t19","_sfc_main$2","_sfc_render$2","_sfc_staticRenderFns$2","__component__$2","MenuIcon","MenuOpenIcon","NcAppNavigationToggle","subscribe","createFocusTrap","getTrapStack","unsubscribe","bodyStyles","animationLength","open","NcAppNavigation","Check","ChevronRight","ActionTextMixin","attributes","NcActionButton","NcVNodes","ChevronUp","t13","Close","NcInputConfirmCancel","t20","_sfc_main$3","ChevronDown","_sfc_render$3","_sfc_staticRenderFns$3","__component__$3","NcAppNavigationIconCollapsible","t21","t48","Pencil","Undo","NcActions","NcLoadingIcon","GenRandomId","newVal","navigate","routerLinkHref","href","$$v","NcAppNavigationItem","clickOutsideOptions","t44","Cog","vOnClickOutside","NcAppNavigationSettings","initialRSSLink","personalSettingsLink","rssLink","hasRSSLink","toggleRSSLink","data","generateUrl","copyRSSLink","showSuccess","routes","ActivityAppFeed","ActivityAppNavigation","translate","translatePlural","VueRouter","router","ActivityApp"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,8,9,10,11,12,13,15,16,17,18,19,20,21,22,23,24,25]} \ No newline at end of file +{"version":3,"file":"activity-app.mjs","sources":["../node_modules/nanoid/non-secure/index.js","../node_modules/@linusborg/vue-simple-portal/dist/index.esm.js","../node_modules/@nextcloud/vue/dist/chunks/NcContent-DKpTIl9F.mjs","../node_modules/splitpanes/dist/splitpanes.es.js","../node_modules/@nextcloud/vue/dist/chunks/NcAppContent-lEyly7Jk.mjs","../node_modules/vue-frag/dist/frag.esm.js","../src/components/ActivityGroup.vue","../img/activity-dark.svg?raw","../node_modules/@vue/shared/dist/shared.esm-bundler.js","../node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js","../node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js","../node_modules/@vueuse/core/node_modules/@vueuse/shared/index.mjs","../node_modules/@vueuse/core/index.mjs","../node_modules/vue-router/composables.mjs","../src/views/ActivityAppFeed.vue","../node_modules/@nextcloud/vue/dist/Components/NcAppNavigationList.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationToggle-BXainLDc.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigation-CxsxPI9x.mjs","../node_modules/@nextcloud/vue/dist/Components/NcActionButton.mjs","../node_modules/@nextcloud/vue/dist/Components/NcVNodes.mjs","../node_modules/@nextcloud/vue/dist/chunks/ChevronUp-ljACquzS.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcInputConfirmCancel-PXVZ7mLT.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationItem-MvvOWnip.mjs","../node_modules/@nextcloud/vue/dist/Mixins/clickOutsideOptions.mjs","../node_modules/@nextcloud/vue/dist/chunks/NcAppNavigationSettings-DScz0UWm.mjs","../node_modules/vue-material-design-icons/ContentCopy.vue","../src/views/ActivityAppNavigation.vue","../src/routes.ts","../src/app.ts"],"sourcesContent":["// This alphabet uses `A-Za-z0-9_-` symbols.\n// The order of characters is optimized for better gzip and brotli compression.\n// References to the same file (works both for gzip and brotli):\n// `'use`, `andom`, and `rict'`\n// References to the brotli default dictionary:\n// `-26T`, `1983`, `40px`, `75px`, `bush`, `jack`, `mind`, `very`, and `wolf`\nlet urlAlphabet =\n 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'\n\nlet customAlphabet = (alphabet, defaultSize = 21) => {\n return (size = defaultSize) => {\n let id = ''\n // A compact alternative for `for (var i = 0; i < step; i++)`.\n let i = size | 0\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += alphabet[(Math.random() * alphabet.length) | 0]\n }\n return id\n }\n}\n\nlet nanoid = (size = 21) => {\n let id = ''\n // A compact alternative for `for (var i = 0; i < step; i++)`.\n let i = size | 0\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += urlAlphabet[(Math.random() * 64) | 0]\n }\n return id\n}\n\nexport { nanoid, customAlphabet }\n","\n/**\n * vue-simple-portal\n * version: 0.1.5,\n * (c) Thorsten Lünborg, 2021 - present\n * LICENCE: Apache-2.0\n * http://github.com/linusborg/vue-simple-portal\n*/\nimport Vue from 'vue';\nimport { nanoid } from 'nanoid/non-secure';\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nvar config = {\n selector: \"vue-portal-target-\".concat(nanoid())\n};\nvar setSelector = function setSelector(selector) {\n return config.selector = selector;\n};\nvar isBrowser = typeof window !== 'undefined' && (typeof document === \"undefined\" ? \"undefined\" : _typeof(document)) !== undefined;\n\nvar TargetContainer = Vue.extend({\n // as an abstract component, it doesn't appear in\n // the $parent chain of components.\n // which means the next parent of any component rendered inside of this oen\n // will be the parent from which is was sent\n // @ts-expect-error\n abstract: true,\n name: 'PortalOutlet',\n props: ['nodes', 'tag'],\n data: function data(vm) {\n return {\n updatedNodes: vm.nodes\n };\n },\n render: function render(h) {\n var nodes = this.updatedNodes && this.updatedNodes();\n if (!nodes) return h();\n return nodes.length === 1 && !nodes[0].text ? nodes : h(this.tag || 'DIV', nodes);\n },\n destroyed: function destroyed() {\n var el = this.$el;\n el && el.parentNode.removeChild(el);\n }\n});\n\nvar Portal = Vue.extend({\n name: 'VueSimplePortal',\n props: {\n disabled: {\n type: Boolean\n },\n prepend: {\n type: Boolean\n },\n selector: {\n type: String,\n default: function _default() {\n return \"#\".concat(config.selector);\n }\n },\n tag: {\n type: String,\n default: 'DIV'\n }\n },\n render: function render(h) {\n if (this.disabled) {\n var nodes = this.$scopedSlots && this.$scopedSlots.default();\n if (!nodes) return h();\n return nodes.length < 2 && !nodes[0].text ? nodes : h(this.tag, nodes);\n }\n\n return h();\n },\n created: function created() {\n if (!this.getTargetEl()) {\n this.insertTargetEl();\n }\n },\n updated: function updated() {\n var _this = this;\n\n // We only update the target container component\n // if the scoped slot function is a fresh one\n // The new slot syntax (since Vue 2.6) can cache unchanged slot functions\n // and we want to respect that here.\n this.$nextTick(function () {\n if (!_this.disabled && _this.slotFn !== _this.$scopedSlots.default) {\n _this.container.updatedNodes = _this.$scopedSlots.default;\n }\n\n _this.slotFn = _this.$scopedSlots.default;\n });\n },\n beforeDestroy: function beforeDestroy() {\n this.unmount();\n },\n watch: {\n disabled: {\n immediate: true,\n handler: function handler(disabled) {\n disabled ? this.unmount() : this.$nextTick(this.mount);\n }\n }\n },\n methods: {\n // This returns the element into which the content should be mounted.\n getTargetEl: function getTargetEl() {\n if (!isBrowser) return;\n return document.querySelector(this.selector);\n },\n insertTargetEl: function insertTargetEl() {\n if (!isBrowser) return;\n var parent = document.querySelector('body');\n var child = document.createElement(this.tag);\n child.id = this.selector.substring(1);\n parent.appendChild(child);\n },\n mount: function mount() {\n if (!isBrowser) return;\n var targetEl = this.getTargetEl();\n var el = document.createElement('DIV');\n\n if (this.prepend && targetEl.firstChild) {\n targetEl.insertBefore(el, targetEl.firstChild);\n } else {\n targetEl.appendChild(el);\n }\n\n this.container = new TargetContainer({\n el: el,\n parent: this,\n propsData: {\n tag: this.tag,\n nodes: this.$scopedSlots.default\n }\n });\n },\n unmount: function unmount() {\n if (this.container) {\n this.container.$destroy();\n delete this.container;\n }\n }\n }\n});\n\nfunction install(_Vue) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _Vue.component(options.name || 'portal', Portal);\n\n if (options.defaultSelector) {\n setSelector(options.defaultSelector);\n }\n}\n\nif (typeof window !== 'undefined' && window.Vue && window.Vue === Vue) {\n // plugin was inlcuded directly in a browser\n Vue.use(install);\n}\n\nexport default install;\nexport { Portal, config, setSelector };\n","import '../assets/NcContent-ZFNIjylG.css';\nimport { emit } from \"@nextcloud/event-bus\";\nimport { Portal } from \"@linusborg/vue-simple-portal\";\nimport { useIsMobile } from \"../Composables/useIsMobile.mjs\";\nimport { r as register, G as t29, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport NcButton from \"../Components/NcButton.mjs\";\nimport { N as NcIconSvgWrapper } from \"./NcIconSvgWrapper-DjrkBUkC.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t29);\nconst contentSvg = '\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n';\nconst navigationSvg = '\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n';\nconst _sfc_main = {\n name: \"NcContent\",\n components: {\n NcButton,\n NcIconSvgWrapper,\n Teleport: Portal\n },\n provide() {\n return {\n \"NcContent:setHasAppNavigation\": this.setAppNavigation,\n \"NcContent:selector\": \"#content-vue\"\n };\n },\n props: {\n appName: {\n type: String,\n required: true\n }\n },\n setup() {\n const isMobile = useIsMobile();\n return {\n isMobile\n };\n },\n data() {\n return {\n hasAppNavigation: false,\n currentFocus: \"\"\n // unknown\n };\n },\n computed: {\n currentImage() {\n if (this.currentFocus === \"navigation\") {\n return navigationSvg;\n }\n return contentSvg;\n }\n },\n beforeMount() {\n const container = document.getElementById(\"skip-actions\");\n if (container) {\n container.innerHTML = \"\";\n container.classList.add(\"vue-skip-actions\");\n }\n },\n methods: {\n t,\n openAppNavigation() {\n emit(\"toggle-navigation\", { open: true });\n this.$nextTick(() => {\n window.location.hash = \"app-navigation-vue\";\n document.getElementById(\"app-navigation-vue\").focus();\n });\n },\n setAppNavigation(value) {\n this.hasAppNavigation = value;\n if (this.currentFocus === \"\") {\n this.currentFocus = \"navigation\";\n }\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { class: [\"content\", \"app-\".concat(_vm.appName.toLowerCase())], attrs: { \"id\": \"content-vue\" } }, [_c(\"Teleport\", { attrs: { \"selector\": \"#skip-actions\" } }, [_c(\"div\", { staticClass: \"vue-skip-actions__container\" }, [_c(\"div\", { staticClass: \"vue-skip-actions__headline\" }, [_vm._v(\" \" + _vm._s(_vm.t(\"Keyboard navigation help\")) + \" \")]), _c(\"div\", { staticClass: \"vue-skip-actions__buttons\" }, [_c(\"NcButton\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.hasAppNavigation, expression: \"hasAppNavigation\" }], attrs: { \"type\": \"tertiary\", \"href\": \"#app-navigation-vue\" }, on: { \"click\": function($event) {\n $event.preventDefault();\n return _vm.openAppNavigation.apply(null, arguments);\n }, \"focusin\": function($event) {\n _vm.currentFocus = \"navigation\";\n }, \"mouseover\": function($event) {\n _vm.currentFocus = \"navigation\";\n } } }, [_vm._v(\" \" + _vm._s(_vm.t(\"Skip to app navigation\")) + \" \")]), _c(\"NcButton\", { attrs: { \"type\": \"tertiary\", \"href\": \"#app-content-vue\" }, on: { \"focusin\": function($event) {\n _vm.currentFocus = \"content\";\n }, \"mouseover\": function($event) {\n _vm.currentFocus = \"content\";\n } } }, [_vm._v(\" \" + _vm._s(_vm.t(\"Skip to main content\")) + \" \")])], 1), _c(\"NcIconSvgWrapper\", { directives: [{ name: \"show\", rawName: \"v-show\", value: !_vm.isMobile, expression: \"!isMobile\" }], staticClass: \"vue-skip-actions__image\", attrs: { \"svg\": _vm.currentImage, \"size\": \"auto\" } })], 1), _vm._v(\" \")]), _vm._t(\"default\")], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"d8f0539f\"\n);\nconst NcContent = __component__.exports;\nexport {\n NcContent as N\n};\n","var __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nvar splitpanes_vue_vue_type_style_index_0_lang = \"\";\nfunction normalizeComponent(scriptExports, render2, staticRenderFns2, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render2) {\n options.render = render2;\n options.staticRenderFns = staticRenderFns2;\n options._compiled = true;\n }\n if (functionalTemplate) {\n options.functional = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n var hook;\n if (moduleIdentifier) {\n hook = function(context) {\n context = context || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;\n if (!context && typeof __VUE_SSR_CONTEXT__ !== \"undefined\") {\n context = __VUE_SSR_CONTEXT__;\n }\n if (injectStyles) {\n injectStyles.call(this, context);\n }\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n };\n options._ssrRegister = hook;\n } else if (injectStyles) {\n hook = shadowMode ? function() {\n injectStyles.call(this, (options.functional ? this.parent : this).$root.$options.shadowRoot);\n } : injectStyles;\n }\n if (hook) {\n if (options.functional) {\n options._injectStyles = hook;\n var originalRender = options.render;\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst __vue2_script$1 = {\n name: \"splitpanes\",\n props: {\n horizontal: { type: Boolean },\n pushOtherPanes: { type: Boolean, default: true },\n dblClickSplitter: { type: Boolean, default: true },\n rtl: { type: Boolean, default: false },\n firstSplitter: { type: Boolean }\n },\n provide() {\n return {\n requestUpdate: this.requestUpdate,\n onPaneAdd: this.onPaneAdd,\n onPaneRemove: this.onPaneRemove,\n onPaneClick: this.onPaneClick\n };\n },\n data: () => ({\n container: null,\n ready: false,\n panes: [],\n touch: {\n mouseDown: false,\n dragging: false,\n activeSplitter: null\n },\n splitterTaps: {\n splitter: null,\n timeoutId: null\n }\n }),\n computed: {\n panesCount() {\n return this.panes.length;\n },\n indexedPanes() {\n return this.panes.reduce((obj, pane2) => (obj[pane2.id] = pane2) && obj, {});\n }\n },\n methods: {\n updatePaneComponents() {\n this.panes.forEach((pane2) => {\n pane2.update && pane2.update({\n [this.horizontal ? \"height\" : \"width\"]: `${this.indexedPanes[pane2.id].size}%`\n });\n });\n },\n bindEvents() {\n document.addEventListener(\"mousemove\", this.onMouseMove, { passive: false });\n document.addEventListener(\"mouseup\", this.onMouseUp);\n if (\"ontouchstart\" in window) {\n document.addEventListener(\"touchmove\", this.onMouseMove, { passive: false });\n document.addEventListener(\"touchend\", this.onMouseUp);\n }\n },\n unbindEvents() {\n document.removeEventListener(\"mousemove\", this.onMouseMove, { passive: false });\n document.removeEventListener(\"mouseup\", this.onMouseUp);\n if (\"ontouchstart\" in window) {\n document.removeEventListener(\"touchmove\", this.onMouseMove, { passive: false });\n document.removeEventListener(\"touchend\", this.onMouseUp);\n }\n },\n onMouseDown(event, splitterIndex) {\n this.bindEvents();\n this.touch.mouseDown = true;\n this.touch.activeSplitter = splitterIndex;\n },\n onMouseMove(event) {\n if (this.touch.mouseDown) {\n event.preventDefault();\n this.touch.dragging = true;\n this.calculatePanesSize(this.getCurrentMouseDrag(event));\n this.$emit(\"resize\", this.panes.map((pane2) => ({ min: pane2.min, max: pane2.max, size: pane2.size })));\n }\n },\n onMouseUp() {\n if (this.touch.dragging) {\n this.$emit(\"resized\", this.panes.map((pane2) => ({ min: pane2.min, max: pane2.max, size: pane2.size })));\n }\n this.touch.mouseDown = false;\n setTimeout(() => {\n this.touch.dragging = false;\n this.unbindEvents();\n }, 100);\n },\n onSplitterClick(event, splitterIndex) {\n if (\"ontouchstart\" in window) {\n event.preventDefault();\n if (this.dblClickSplitter) {\n if (this.splitterTaps.splitter === splitterIndex) {\n clearTimeout(this.splitterTaps.timeoutId);\n this.splitterTaps.timeoutId = null;\n this.onSplitterDblClick(event, splitterIndex);\n this.splitterTaps.splitter = null;\n } else {\n this.splitterTaps.splitter = splitterIndex;\n this.splitterTaps.timeoutId = setTimeout(() => {\n this.splitterTaps.splitter = null;\n }, 500);\n }\n }\n }\n if (!this.touch.dragging)\n this.$emit(\"splitter-click\", this.panes[splitterIndex]);\n },\n onSplitterDblClick(event, splitterIndex) {\n let totalMinSizes = 0;\n this.panes = this.panes.map((pane2, i) => {\n pane2.size = i === splitterIndex ? pane2.max : pane2.min;\n if (i !== splitterIndex)\n totalMinSizes += pane2.min;\n return pane2;\n });\n this.panes[splitterIndex].size -= totalMinSizes;\n this.$emit(\"pane-maximize\", this.panes[splitterIndex]);\n },\n onPaneClick(event, paneId) {\n this.$emit(\"pane-click\", this.indexedPanes[paneId]);\n },\n getCurrentMouseDrag(event) {\n const rect = this.container.getBoundingClientRect();\n const { clientX, clientY } = \"ontouchstart\" in window && event.touches ? event.touches[0] : event;\n return {\n x: clientX - rect.left,\n y: clientY - rect.top\n };\n },\n getCurrentDragPercentage(drag) {\n drag = drag[this.horizontal ? \"y\" : \"x\"];\n const containerSize = this.container[this.horizontal ? \"clientHeight\" : \"clientWidth\"];\n if (this.rtl && !this.horizontal)\n drag = containerSize - drag;\n return drag * 100 / containerSize;\n },\n calculatePanesSize(drag) {\n const splitterIndex = this.touch.activeSplitter;\n let sums = {\n prevPanesSize: this.sumPrevPanesSize(splitterIndex),\n nextPanesSize: this.sumNextPanesSize(splitterIndex),\n prevReachedMinPanes: 0,\n nextReachedMinPanes: 0\n };\n const minDrag = 0 + (this.pushOtherPanes ? 0 : sums.prevPanesSize);\n const maxDrag = 100 - (this.pushOtherPanes ? 0 : sums.nextPanesSize);\n const dragPercentage = Math.max(Math.min(this.getCurrentDragPercentage(drag), maxDrag), minDrag);\n let panesToResize = [splitterIndex, splitterIndex + 1];\n let paneBefore = this.panes[panesToResize[0]] || null;\n let paneAfter = this.panes[panesToResize[1]] || null;\n const paneBeforeMaxReached = paneBefore.max < 100 && dragPercentage >= paneBefore.max + sums.prevPanesSize;\n const paneAfterMaxReached = paneAfter.max < 100 && dragPercentage <= 100 - (paneAfter.max + this.sumNextPanesSize(splitterIndex + 1));\n if (paneBeforeMaxReached || paneAfterMaxReached) {\n if (paneBeforeMaxReached) {\n paneBefore.size = paneBefore.max;\n paneAfter.size = Math.max(100 - paneBefore.max - sums.prevPanesSize - sums.nextPanesSize, 0);\n } else {\n paneBefore.size = Math.max(100 - paneAfter.max - sums.prevPanesSize - this.sumNextPanesSize(splitterIndex + 1), 0);\n paneAfter.size = paneAfter.max;\n }\n return;\n }\n if (this.pushOtherPanes) {\n const vars = this.doPushOtherPanes(sums, dragPercentage);\n if (!vars)\n return;\n ({ sums, panesToResize } = vars);\n paneBefore = this.panes[panesToResize[0]] || null;\n paneAfter = this.panes[panesToResize[1]] || null;\n }\n if (paneBefore !== null) {\n paneBefore.size = Math.min(Math.max(dragPercentage - sums.prevPanesSize - sums.prevReachedMinPanes, paneBefore.min), paneBefore.max);\n }\n if (paneAfter !== null) {\n paneAfter.size = Math.min(Math.max(100 - dragPercentage - sums.nextPanesSize - sums.nextReachedMinPanes, paneAfter.min), paneAfter.max);\n }\n },\n doPushOtherPanes(sums, dragPercentage) {\n const splitterIndex = this.touch.activeSplitter;\n const panesToResize = [splitterIndex, splitterIndex + 1];\n if (dragPercentage < sums.prevPanesSize + this.panes[panesToResize[0]].min) {\n panesToResize[0] = this.findPrevExpandedPane(splitterIndex).index;\n sums.prevReachedMinPanes = 0;\n if (panesToResize[0] < splitterIndex) {\n this.panes.forEach((pane2, i) => {\n if (i > panesToResize[0] && i <= splitterIndex) {\n pane2.size = pane2.min;\n sums.prevReachedMinPanes += pane2.min;\n }\n });\n }\n sums.prevPanesSize = this.sumPrevPanesSize(panesToResize[0]);\n if (panesToResize[0] === void 0) {\n sums.prevReachedMinPanes = 0;\n this.panes[0].size = this.panes[0].min;\n this.panes.forEach((pane2, i) => {\n if (i > 0 && i <= splitterIndex) {\n pane2.size = pane2.min;\n sums.prevReachedMinPanes += pane2.min;\n }\n });\n this.panes[panesToResize[1]].size = 100 - sums.prevReachedMinPanes - this.panes[0].min - sums.prevPanesSize - sums.nextPanesSize;\n return null;\n }\n }\n if (dragPercentage > 100 - sums.nextPanesSize - this.panes[panesToResize[1]].min) {\n panesToResize[1] = this.findNextExpandedPane(splitterIndex).index;\n sums.nextReachedMinPanes = 0;\n if (panesToResize[1] > splitterIndex + 1) {\n this.panes.forEach((pane2, i) => {\n if (i > splitterIndex && i < panesToResize[1]) {\n pane2.size = pane2.min;\n sums.nextReachedMinPanes += pane2.min;\n }\n });\n }\n sums.nextPanesSize = this.sumNextPanesSize(panesToResize[1] - 1);\n if (panesToResize[1] === void 0) {\n sums.nextReachedMinPanes = 0;\n this.panes[this.panesCount - 1].size = this.panes[this.panesCount - 1].min;\n this.panes.forEach((pane2, i) => {\n if (i < this.panesCount - 1 && i >= splitterIndex + 1) {\n pane2.size = pane2.min;\n sums.nextReachedMinPanes += pane2.min;\n }\n });\n this.panes[panesToResize[0]].size = 100 - sums.prevPanesSize - sums.nextReachedMinPanes - this.panes[this.panesCount - 1].min - sums.nextPanesSize;\n return null;\n }\n }\n return { sums, panesToResize };\n },\n sumPrevPanesSize(splitterIndex) {\n return this.panes.reduce((total, pane2, i) => total + (i < splitterIndex ? pane2.size : 0), 0);\n },\n sumNextPanesSize(splitterIndex) {\n return this.panes.reduce((total, pane2, i) => total + (i > splitterIndex + 1 ? pane2.size : 0), 0);\n },\n findPrevExpandedPane(splitterIndex) {\n const pane2 = [...this.panes].reverse().find((p) => p.index < splitterIndex && p.size > p.min);\n return pane2 || {};\n },\n findNextExpandedPane(splitterIndex) {\n const pane2 = this.panes.find((p) => p.index > splitterIndex + 1 && p.size > p.min);\n return pane2 || {};\n },\n checkSplitpanesNodes() {\n const children = Array.from(this.container.children);\n children.forEach((child) => {\n const isPane = child.classList.contains(\"splitpanes__pane\");\n const isSplitter = child.classList.contains(\"splitpanes__splitter\");\n if (!isPane && !isSplitter) {\n child.parentNode.removeChild(child);\n console.warn(\"Splitpanes: Only elements are allowed at the root of . One of your DOM nodes was removed.\");\n return;\n }\n });\n },\n addSplitter(paneIndex, nextPaneNode, isVeryFirst = false) {\n const splitterIndex = paneIndex - 1;\n const elm = document.createElement(\"div\");\n elm.classList.add(\"splitpanes__splitter\");\n if (!isVeryFirst) {\n elm.onmousedown = (event) => this.onMouseDown(event, splitterIndex);\n if (typeof window !== \"undefined\" && \"ontouchstart\" in window) {\n elm.ontouchstart = (event) => this.onMouseDown(event, splitterIndex);\n }\n elm.onclick = (event) => this.onSplitterClick(event, splitterIndex + 1);\n }\n if (this.dblClickSplitter) {\n elm.ondblclick = (event) => this.onSplitterDblClick(event, splitterIndex + 1);\n }\n nextPaneNode.parentNode.insertBefore(elm, nextPaneNode);\n },\n removeSplitter(node) {\n node.onmousedown = void 0;\n node.onclick = void 0;\n node.ondblclick = void 0;\n node.parentNode.removeChild(node);\n },\n redoSplitters() {\n const children = Array.from(this.container.children);\n children.forEach((el) => {\n if (el.className.includes(\"splitpanes__splitter\"))\n this.removeSplitter(el);\n });\n let paneIndex = 0;\n children.forEach((el) => {\n if (el.className.includes(\"splitpanes__pane\")) {\n if (!paneIndex && this.firstSplitter)\n this.addSplitter(paneIndex, el, true);\n else if (paneIndex)\n this.addSplitter(paneIndex, el);\n paneIndex++;\n }\n });\n },\n requestUpdate(_a) {\n var _b = _a, { target } = _b, args = __objRest(_b, [\"target\"]);\n const pane2 = this.indexedPanes[target._uid];\n Object.entries(args).forEach(([key, value]) => pane2[key] = value);\n },\n onPaneAdd(pane2) {\n let index = -1;\n Array.from(pane2.$el.parentNode.children).some((el) => {\n if (el.className.includes(\"splitpanes__pane\"))\n index++;\n return el === pane2.$el;\n });\n const min = parseFloat(pane2.minSize);\n const max = parseFloat(pane2.maxSize);\n this.panes.splice(index, 0, {\n id: pane2._uid,\n index,\n min: isNaN(min) ? 0 : min,\n max: isNaN(max) ? 100 : max,\n size: pane2.size === null ? null : parseFloat(pane2.size),\n givenSize: pane2.size,\n update: pane2.update\n });\n this.panes.forEach((p, i) => p.index = i);\n if (this.ready) {\n this.$nextTick(() => {\n this.redoSplitters();\n this.resetPaneSizes({ addedPane: this.panes[index] });\n this.$emit(\"pane-add\", { index, panes: this.panes.map((pane3) => ({ min: pane3.min, max: pane3.max, size: pane3.size })) });\n });\n }\n },\n onPaneRemove(pane2) {\n const index = this.panes.findIndex((p) => p.id === pane2._uid);\n const removed = this.panes.splice(index, 1)[0];\n this.panes.forEach((p, i) => p.index = i);\n this.$nextTick(() => {\n this.redoSplitters();\n this.resetPaneSizes({ removedPane: __spreadProps(__spreadValues({}, removed), { index }) });\n this.$emit(\"pane-remove\", { removed, panes: this.panes.map((pane3) => ({ min: pane3.min, max: pane3.max, size: pane3.size })) });\n });\n },\n resetPaneSizes(changedPanes = {}) {\n if (!changedPanes.addedPane && !changedPanes.removedPane)\n this.initialPanesSizing();\n else if (this.panes.some((pane2) => pane2.givenSize !== null || pane2.min || pane2.max < 100))\n this.equalizeAfterAddOrRemove(changedPanes);\n else\n this.equalize();\n if (this.ready)\n this.$emit(\"resized\", this.panes.map((pane2) => ({ min: pane2.min, max: pane2.max, size: pane2.size })));\n },\n equalize() {\n const equalSpace = 100 / this.panesCount;\n let leftToAllocate = 0;\n let ungrowable = [];\n let unshrinkable = [];\n this.panes.forEach((pane2) => {\n pane2.size = Math.max(Math.min(equalSpace, pane2.max), pane2.min);\n leftToAllocate -= pane2.size;\n if (pane2.size >= pane2.max)\n ungrowable.push(pane2.id);\n if (pane2.size <= pane2.min)\n unshrinkable.push(pane2.id);\n });\n if (leftToAllocate > 0.1)\n this.readjustSizes(leftToAllocate, ungrowable, unshrinkable);\n },\n initialPanesSizing() {\n 100 / this.panesCount;\n let leftToAllocate = 100;\n let ungrowable = [];\n let unshrinkable = [];\n let definedSizes = 0;\n this.panes.forEach((pane2) => {\n leftToAllocate -= pane2.size;\n if (pane2.size !== null)\n definedSizes++;\n if (pane2.size >= pane2.max)\n ungrowable.push(pane2.id);\n if (pane2.size <= pane2.min)\n unshrinkable.push(pane2.id);\n });\n let leftToAllocate2 = 100;\n if (leftToAllocate > 0.1) {\n this.panes.forEach((pane2) => {\n if (pane2.size === null) {\n pane2.size = Math.max(Math.min(leftToAllocate / (this.panesCount - definedSizes), pane2.max), pane2.min);\n }\n leftToAllocate2 -= pane2.size;\n });\n if (leftToAllocate2 > 0.1)\n this.readjustSizes(leftToAllocate, ungrowable, unshrinkable);\n }\n },\n equalizeAfterAddOrRemove({ addedPane, removedPane } = {}) {\n let equalSpace = 100 / this.panesCount;\n let leftToAllocate = 0;\n let ungrowable = [];\n let unshrinkable = [];\n if (addedPane && addedPane.givenSize !== null) {\n equalSpace = (100 - addedPane.givenSize) / (this.panesCount - 1);\n }\n this.panes.forEach((pane2) => {\n leftToAllocate -= pane2.size;\n if (pane2.size >= pane2.max)\n ungrowable.push(pane2.id);\n if (pane2.size <= pane2.min)\n unshrinkable.push(pane2.id);\n });\n if (Math.abs(leftToAllocate) < 0.1)\n return;\n this.panes.forEach((pane2) => {\n if (addedPane && addedPane.givenSize !== null && addedPane.id === pane2.id)\n ;\n else\n pane2.size = Math.max(Math.min(equalSpace, pane2.max), pane2.min);\n leftToAllocate -= pane2.size;\n if (pane2.size >= pane2.max)\n ungrowable.push(pane2.id);\n if (pane2.size <= pane2.min)\n unshrinkable.push(pane2.id);\n });\n if (leftToAllocate > 0.1)\n this.readjustSizes(leftToAllocate, ungrowable, unshrinkable);\n },\n readjustSizes(leftToAllocate, ungrowable, unshrinkable) {\n let equalSpaceToAllocate;\n if (leftToAllocate > 0)\n equalSpaceToAllocate = leftToAllocate / (this.panesCount - ungrowable.length);\n else\n equalSpaceToAllocate = leftToAllocate / (this.panesCount - unshrinkable.length);\n this.panes.forEach((pane2, i) => {\n if (leftToAllocate > 0 && !ungrowable.includes(pane2.id)) {\n const newPaneSize = Math.max(Math.min(pane2.size + equalSpaceToAllocate, pane2.max), pane2.min);\n const allocated = newPaneSize - pane2.size;\n leftToAllocate -= allocated;\n pane2.size = newPaneSize;\n } else if (!unshrinkable.includes(pane2.id)) {\n const newPaneSize = Math.max(Math.min(pane2.size + equalSpaceToAllocate, pane2.max), pane2.min);\n const allocated = newPaneSize - pane2.size;\n leftToAllocate -= allocated;\n pane2.size = newPaneSize;\n }\n pane2.update({\n [this.horizontal ? \"height\" : \"width\"]: `${this.indexedPanes[pane2.id].size}%`\n });\n });\n if (Math.abs(leftToAllocate) > 0.1) {\n this.$nextTick(() => {\n if (this.ready) {\n console.warn(\"Splitpanes: Could not resize panes correctly due to their constraints.\");\n }\n });\n }\n }\n },\n watch: {\n panes: {\n deep: true,\n immediate: false,\n handler() {\n this.updatePaneComponents();\n }\n },\n horizontal() {\n this.updatePaneComponents();\n },\n firstSplitter() {\n this.redoSplitters();\n },\n dblClickSplitter(enable) {\n const splitters = [...this.container.querySelectorAll(\".splitpanes__splitter\")];\n splitters.forEach((splitter, i) => {\n splitter.ondblclick = enable ? (event) => this.onSplitterDblClick(event, i) : void 0;\n });\n }\n },\n beforeDestroy() {\n this.ready = false;\n },\n mounted() {\n this.container = this.$refs.container;\n this.checkSplitpanesNodes();\n this.redoSplitters();\n this.resetPaneSizes();\n this.$emit(\"ready\");\n this.ready = true;\n },\n render(h) {\n return h(\"div\", {\n ref: \"container\",\n class: [\n \"splitpanes\",\n `splitpanes--${this.horizontal ? \"horizontal\" : \"vertical\"}`,\n {\n \"splitpanes--dragging\": this.touch.dragging\n }\n ]\n }, this.$slots.default);\n }\n};\nlet __vue2_render, __vue2_staticRenderFns;\nconst __cssModules$1 = {};\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(__vue2_script$1, __vue2_render, __vue2_staticRenderFns, false, __vue2_injectStyles$1, null, null, null);\nfunction __vue2_injectStyles$1(context) {\n for (let o in __cssModules$1) {\n this[o] = __cssModules$1[o];\n }\n}\nvar splitpanes = /* @__PURE__ */ function() {\n return __component__$1.exports;\n}();\nvar render = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\"div\", { staticClass: \"splitpanes__pane\", style: _vm.style, on: { \"click\": function($event) {\n return _vm.onPaneClick($event, _vm._uid);\n } } }, [_vm._t(\"default\")], 2);\n};\nvar staticRenderFns = [];\nconst __vue2_script = {\n name: \"pane\",\n inject: [\"requestUpdate\", \"onPaneAdd\", \"onPaneRemove\", \"onPaneClick\"],\n props: {\n size: { type: [Number, String], default: null },\n minSize: { type: [Number, String], default: 0 },\n maxSize: { type: [Number, String], default: 100 }\n },\n data: () => ({\n style: {}\n }),\n mounted() {\n this.onPaneAdd(this);\n },\n beforeDestroy() {\n this.onPaneRemove(this);\n },\n methods: {\n update(style) {\n this.style = style;\n }\n },\n computed: {\n sizeNumber() {\n return this.size || this.size === 0 ? parseFloat(this.size) : null;\n },\n minSizeNumber() {\n return parseFloat(this.minSize);\n },\n maxSizeNumber() {\n return parseFloat(this.maxSize);\n }\n },\n watch: {\n sizeNumber(size) {\n this.requestUpdate({ target: this, size });\n },\n minSizeNumber(min) {\n this.requestUpdate({ target: this, min });\n },\n maxSizeNumber(max) {\n this.requestUpdate({ target: this, max });\n }\n }\n};\nconst __cssModules = {};\nvar __component__ = /* @__PURE__ */ normalizeComponent(__vue2_script, render, staticRenderFns, false, __vue2_injectStyles, null, null, null);\nfunction __vue2_injectStyles(context) {\n for (let o in __cssModules) {\n this[o] = __cssModules[o];\n }\n}\nvar pane = /* @__PURE__ */ function() {\n return __component__.exports;\n}();\nexport { pane as Pane, splitpanes as Splitpanes };\n","import '../assets/NcAppContent-DVBVZyuW.css';\nimport NcButton from \"../Components/NcButton.mjs\";\nimport { r as register, D as t26, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport \"../Directives/Tooltip.mjs\";\nimport { emit } from \"@nextcloud/event-bus\";\nimport { A as ArrowRight } from \"./ArrowRight-KsL2PC-o.mjs\";\nimport { useIsMobile } from \"../Composables/useIsMobile.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nimport { VTooltip } from \"floating-vue\";\nimport { getBuilder } from \"@nextcloud/browser-storage\";\nimport { useSwipe } from \"@vueuse/core\";\nimport { Pane, Splitpanes } from \"splitpanes\";\nimport \"splitpanes/dist/splitpanes.css\";\nregister(t26);\nconst _sfc_main$1 = {\n name: \"NcAppDetailsToggle\",\n directives: {\n tooltip: VTooltip\n },\n components: {\n NcButton,\n ArrowRight\n },\n setup() {\n return {\n isMobile: useIsMobile()\n };\n },\n computed: {\n title() {\n return t(\"Go back to the list\");\n }\n },\n watch: {\n isMobile: {\n immediate: true,\n handler() {\n this.toggleAppNavigationButton(this.isMobile);\n }\n }\n },\n beforeDestroy() {\n if (this.isMobile) {\n this.toggleAppNavigationButton(false);\n }\n },\n methods: {\n toggleAppNavigationButton(hide = true) {\n const appNavigationToggle = document.querySelector(\".app-navigation .app-navigation-toggle\");\n if (appNavigationToggle) {\n appNavigationToggle.style.display = hide ? \"none\" : null;\n if (hide === true) {\n emit(\"toggle-navigation\", { open: false });\n }\n }\n }\n }\n};\nvar _sfc_render$1 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"NcButton\", { directives: [{ name: \"tooltip\", rawName: \"v-tooltip\", value: _vm.title, expression: \"title\" }], staticClass: \"app-details-toggle\", class: { \"app-details-toggle--mobile\": _vm.isMobile }, attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.title }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"ArrowRight\", { attrs: { \"size\": 20 } })];\n }, proxy: true }]) });\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n \"7692fc78\"\n);\nconst NcAppDetailsToggle = __component__$1.exports;\nconst browserStorage = getBuilder(\"nextcloud\").persist().build();\nconst _sfc_main = {\n name: \"NcAppContent\",\n components: {\n NcAppDetailsToggle,\n Pane,\n Splitpanes\n },\n props: {\n /**\n * Allows to disable the control by swipe of the app navigation open state\n */\n allowSwipeNavigation: {\n type: Boolean,\n default: true\n },\n /**\n * Allows you to set the default width of the resizable list in % on vertical-split\n * Allows you to set the default height of the resizable list in % on horizontal-split\n * Must be between listMinWidth and listMaxWidth\n */\n listSize: {\n type: Number,\n default: 20\n },\n /**\n * Allows you to set the minimum width of the list column in % on vertical-split\n * Allows you to set the minimum height of the list column in % on horizontal-split\n */\n listMinWidth: {\n type: Number,\n default: 15\n },\n /**\n * Allows you to set the maximum width of the list column in % on vertical-split\n * Allows you to set the maximum height of the list column in % on horizontal-split\n */\n listMaxWidth: {\n type: Number,\n default: 40\n },\n /**\n * Specify the config key for the pane config sizes\n * Default is the global var appName if you use the webpack-vue-config\n */\n paneConfigKey: {\n type: String,\n default: \"\"\n },\n /**\n * When in mobile view, only the list or the details are shown\n * If you provide a list, you need to provide a variable\n * that will be set to true by the user when an element of\n * the list gets selected. The details will then show a back\n * arrow to return to the list that will update this prop to false.\n */\n showDetails: {\n type: Boolean,\n default: true\n },\n /**\n * Specify the `` page heading\n */\n pageHeading: {\n type: String,\n default: null\n },\n /**\n * Content layout used when there is a list together with content:\n * - `vertical-split` - a 2-column layout with list and default content separated vertically\n * - `no-split` - a single column layout; List is shown when `showDetails` is `false`, otherwise the default slot content is shown with a back button to return to the list.\n * - 'horizontal-split' - a 2-column layout with list and default content separated horizontally\n * On mobile screen `no-split` layout is forced.\n */\n layout: {\n type: String,\n default: \"vertical-split\",\n validator(value) {\n return [\"no-split\", \"vertical-split\", \"horizontal-split\"].includes(value);\n }\n }\n },\n emits: [\n \"update:showDetails\",\n \"resize:list\"\n ],\n setup() {\n return {\n isMobile: useIsMobile()\n };\n },\n data() {\n return {\n contentHeight: 0,\n hasList: false,\n hasContent: false,\n swiping: {},\n listPaneSize: this.restorePaneConfig()\n };\n },\n computed: {\n paneConfigID() {\n if (this.paneConfigKey !== \"\") {\n return \"pane-list-size-\".concat(this.paneConfigKey);\n }\n try {\n return \"pane-list-size-\".concat(appName);\n } catch (e) {\n console.info(\"[INFO] AppContent:\", \"falling back to global nextcloud pane config\");\n return \"pane-list-size-nextcloud\";\n }\n },\n detailsPaneSize() {\n if (this.listPaneSize) {\n return 100 - this.listPaneSize;\n }\n return this.paneDefaults.details.size;\n },\n paneDefaults() {\n return {\n list: {\n size: this.listSize,\n min: this.listMinWidth,\n max: this.listMaxWidth\n },\n // set the inverse values of the details column\n // based on the provided (or default) values of the list column\n details: {\n size: 100 - this.listSize,\n min: 100 - this.listMaxWidth,\n max: 100 - this.listMinWidth\n }\n };\n }\n },\n updated() {\n this.checkSlots();\n },\n mounted() {\n if (this.allowSwipeNavigation) {\n this.swiping = useSwipe(this.$el, {\n onSwipeEnd: this.handleSwipe\n });\n }\n this.checkSlots();\n this.restorePaneConfig();\n },\n methods: {\n /**\n * handle the swipe event\n *\n * @param {TouchEvent} e The touch event\n * @param {import('@vueuse/core').SwipeDirection} direction The swipe direction of the event\n */\n handleSwipe(e, direction) {\n const minSwipeX = 70;\n const touchZone = 300;\n if (Math.abs(this.swiping.lengthX) > minSwipeX) {\n if (this.swiping.coordsStart.x < touchZone / 2 && direction === \"right\") {\n emit(\"toggle-navigation\", {\n open: true\n });\n } else if (this.swiping.coordsStart.x < touchZone * 1.5 && direction === \"left\") {\n emit(\"toggle-navigation\", {\n open: false\n });\n }\n }\n },\n handlePaneResize(event) {\n const listPaneSize = parseInt(event[0].size, 10);\n browserStorage.setItem(this.paneConfigID, JSON.stringify(listPaneSize));\n this.listPaneSize = listPaneSize;\n this.$emit(\"resize:list\", { size: listPaneSize });\n console.debug(\"AppContent pane config\", listPaneSize);\n },\n // $slots is not reactive, we need to update this manually\n checkSlots() {\n this.hasList = !!this.$scopedSlots.list;\n this.hasContent = !!this.$scopedSlots.default;\n },\n // browserStorage is not reactive, we need to update this manually\n restorePaneConfig() {\n const listPaneSize = parseInt(browserStorage.getItem(this.paneConfigID), 10);\n if (!isNaN(listPaneSize) && listPaneSize !== this.listPaneSize) {\n console.debug(\"AppContent pane config\", listPaneSize);\n this.listPaneSize = listPaneSize;\n return listPaneSize;\n }\n },\n /**\n * The user clicked the back arrow from the details view\n */\n hideDetails() {\n this.$emit(\"update:showDetails\", false);\n }\n }\n};\nvar _sfc_render = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"main\", { staticClass: \"app-content no-snapper\", class: { \"app-content--has-list\": _vm.hasList }, attrs: { \"id\": \"app-content-vue\" } }, [_vm.pageHeading ? _c(\"h1\", { staticClass: \"hidden-visually\" }, [_vm._v(\" \" + _vm._s(_vm.pageHeading) + \" \")]) : _vm._e(), _vm.hasList ? [_vm.isMobile || _vm.layout === \"no-split\" ? _c(\"div\", { staticClass: \"app-content-wrapper app-content-wrapper--no-split\", class: {\n \"app-content-wrapper--show-details\": _vm.showDetails,\n \"app-content-wrapper--show-list\": !_vm.showDetails,\n \"app-content-wrapper--mobile\": _vm.isMobile\n } }, [_vm.showDetails ? _c(\"NcAppDetailsToggle\", { nativeOn: { \"click\": function($event) {\n $event.stopPropagation();\n $event.preventDefault();\n return _vm.hideDetails.apply(null, arguments);\n } } }) : _vm._e(), !_vm.showDetails ? _vm._t(\"list\") : _vm._t(\"default\")], 2) : _vm.layout === \"vertical-split\" || _vm.layout === \"horizontal-split\" ? _c(\"div\", { staticClass: \"app-content-wrapper\" }, [_c(\"Splitpanes\", { staticClass: \"default-theme\", class: {\n \"splitpanes--horizontal\": _vm.layout === \"horizontal-split\",\n \"splitpanes--vertical\": _vm.layout === \"vertical-split\"\n }, attrs: { \"horizontal\": _vm.layout === \"horizontal-split\" }, on: { \"resized\": _vm.handlePaneResize } }, [_c(\"Pane\", { staticClass: \"splitpanes__pane-list\", attrs: { \"size\": _vm.listPaneSize || _vm.paneDefaults.list.size, \"min-size\": _vm.paneDefaults.list.min, \"max-size\": _vm.paneDefaults.list.max } }, [_vm._t(\"list\")], 2), _c(\"Pane\", { staticClass: \"splitpanes__pane-details\", attrs: { \"size\": _vm.detailsPaneSize, \"min-size\": _vm.paneDefaults.details.min, \"max-size\": _vm.paneDefaults.details.max } }, [_vm._t(\"default\")], 2)], 1)], 1) : _vm._e()] : _vm._e(), !_vm.hasList ? _vm._t(\"default\") : _vm._e()], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"de6986e3\"\n);\nconst NcAppContent = __component__.exports;\nexport {\n NcAppContent as N\n};\n","var $placeholder = Symbol();\n\nvar $fakeParent = Symbol();\n\nvar $nextSiblingPatched = Symbol();\n\nvar $childNodesPatched = Symbol();\n\nvar isFrag = function isFrag(node) {\n return \"frag\" in node;\n};\n\nvar parentNodeDescriptor = {\n get: function get() {\n return this[$fakeParent] || this.parentElement;\n },\n configurable: true\n};\n\nvar patchParentNode = function patchParentNode(node, fakeParent) {\n if ($fakeParent in node) {\n return;\n }\n node[$fakeParent] = fakeParent;\n Object.defineProperty(node, \"parentNode\", parentNodeDescriptor);\n};\n\nvar nextSiblingDescriptor = {\n get: function get() {\n var childNodes = this.parentNode.childNodes;\n var index = childNodes.indexOf(this);\n if (index > -1) {\n return childNodes[index + 1] || null;\n }\n return null;\n }\n};\n\nvar patchNextSibling = function patchNextSibling(node) {\n if ($nextSiblingPatched in node) {\n return;\n }\n node[$nextSiblingPatched] = true;\n Object.defineProperty(node, \"nextSibling\", nextSiblingDescriptor);\n};\n\nvar getTopFragment = function getTopFragment(node, fromParent) {\n while (node.parentNode !== fromParent) {\n var _node = node, parentNode = _node.parentNode;\n if (parentNode) {\n node = parentNode;\n }\n }\n return node;\n};\n\nvar getChildNodes;\n\nvar getChildNodesWithFragments = function getChildNodesWithFragments(node) {\n if (!getChildNodes) {\n var _childNodesDescriptor = Object.getOwnPropertyDescriptor(Node.prototype, \"childNodes\");\n getChildNodes = _childNodesDescriptor.get;\n }\n var realChildNodes = getChildNodes.apply(node);\n var childNodes = Array.from(realChildNodes).map((function(childNode) {\n return getTopFragment(childNode, node);\n }));\n return childNodes.filter((function(childNode, index) {\n return childNode !== childNodes[index - 1];\n }));\n};\n\nvar childNodesDescriptor = {\n get: function get() {\n return this.frag || getChildNodesWithFragments(this);\n }\n};\n\nvar firstChildDescriptor = {\n get: function get() {\n return this.childNodes[0] || null;\n }\n};\n\nfunction hasChildNodes() {\n return this.childNodes.length > 0;\n}\n\nvar patchChildNodes = function patchChildNodes(node) {\n if ($childNodesPatched in node) {\n return;\n }\n node[$childNodesPatched] = true;\n Object.defineProperties(node, {\n childNodes: childNodesDescriptor,\n firstChild: firstChildDescriptor\n });\n node.hasChildNodes = hasChildNodes;\n};\n\nfunction before() {\n var _this$frag$;\n (_this$frag$ = this.frag[0]).before.apply(_this$frag$, arguments);\n}\n\nfunction remove() {\n var frag = this.frag;\n var removed = frag.splice(0, frag.length);\n removed.forEach((function(node) {\n node.remove();\n }));\n}\n\nvar getFragmentLeafNodes = function getFragmentLeafNodes(children) {\n var _Array$prototype;\n return (_Array$prototype = Array.prototype).concat.apply(_Array$prototype, children.map((function(childNode) {\n return isFrag(childNode) ? getFragmentLeafNodes(childNode.frag) : childNode;\n })));\n};\n\nvar addPlaceholder = function addPlaceholder(node, insertBeforeNode) {\n var placeholder = node[$placeholder];\n insertBeforeNode.before(placeholder);\n patchParentNode(placeholder, node);\n node.frag.unshift(placeholder);\n};\n\nfunction removeChild(node) {\n if (isFrag(this)) {\n var hasChildInFragment = this.frag.indexOf(node);\n if (hasChildInFragment > -1) {\n var _this$frag$splice = this.frag.splice(hasChildInFragment, 1), removedNode = _this$frag$splice[0];\n if (this.frag.length === 0) {\n addPlaceholder(this, removedNode);\n }\n node.remove();\n }\n } else {\n var children = getChildNodesWithFragments(this);\n var hasChild = children.indexOf(node);\n if (hasChild > -1) {\n node.remove();\n }\n }\n return node;\n}\n\nfunction insertBefore(insertNode, insertBeforeNode) {\n var _this = this;\n var insertNodes = insertNode.frag || [ insertNode ];\n if (isFrag(this)) {\n if (insertNode[$fakeParent] === this && insertNode.parentElement) {\n return insertNode;\n }\n var _frag = this.frag;\n if (insertBeforeNode) {\n var index = _frag.indexOf(insertBeforeNode);\n if (index > -1) {\n _frag.splice.apply(_frag, [ index, 0 ].concat(insertNodes));\n insertBeforeNode.before.apply(insertBeforeNode, insertNodes);\n }\n } else {\n var _lastNode = _frag[_frag.length - 1];\n _frag.push.apply(_frag, insertNodes);\n _lastNode.after.apply(_lastNode, insertNodes);\n }\n removePlaceholder(this);\n } else if (insertBeforeNode) {\n if (this.childNodes.includes(insertBeforeNode)) {\n insertBeforeNode.before.apply(insertBeforeNode, insertNodes);\n }\n } else {\n this.append.apply(this, insertNodes);\n }\n insertNodes.forEach((function(node) {\n patchParentNode(node, _this);\n }));\n var lastNode = insertNodes[insertNodes.length - 1];\n patchNextSibling(lastNode);\n return insertNode;\n}\n\nfunction appendChild(node) {\n if (node[$fakeParent] === this && node.parentElement) {\n return node;\n }\n var frag = this.frag;\n var lastChild = frag[frag.length - 1];\n lastChild.after(node);\n patchParentNode(node, this);\n removePlaceholder(this);\n frag.push(node);\n return node;\n}\n\nvar removePlaceholder = function removePlaceholder(node) {\n var placeholder = node[$placeholder];\n if (node.frag[0] === placeholder) {\n node.frag.shift();\n placeholder.remove();\n }\n};\n\nvar innerHTMLDescriptor = {\n set: function set(htmlString) {\n var _this2 = this;\n if (this.frag[0] !== this[$placeholder]) {\n this.frag.slice().forEach((function(child) {\n return _this2.removeChild(child);\n }));\n }\n if (htmlString) {\n var domify = document.createElement(\"div\");\n domify.innerHTML = htmlString;\n Array.from(domify.childNodes).forEach((function(node) {\n _this2.appendChild(node);\n }));\n }\n },\n get: function get() {\n return \"\";\n }\n};\n\nvar frag = {\n inserted: function inserted(element) {\n var parentNode = element.parentNode, nextSibling = element.nextSibling, previousSibling = element.previousSibling;\n var childNodes = Array.from(element.childNodes);\n var placeholder = document.createComment(\"\");\n if (childNodes.length === 0) {\n childNodes.push(placeholder);\n }\n element.frag = childNodes;\n element[$placeholder] = placeholder;\n var fragment = document.createDocumentFragment();\n fragment.append.apply(fragment, getFragmentLeafNodes(childNodes));\n element.replaceWith(fragment);\n childNodes.forEach((function(node) {\n patchParentNode(node, element);\n patchNextSibling(node);\n }));\n patchChildNodes(element);\n Object.assign(element, {\n remove: remove,\n appendChild: appendChild,\n insertBefore: insertBefore,\n removeChild: removeChild,\n before: before\n });\n Object.defineProperty(element, \"innerHTML\", innerHTMLDescriptor);\n if (parentNode) {\n Object.assign(parentNode, {\n removeChild: removeChild,\n insertBefore: insertBefore\n });\n patchParentNode(element, parentNode);\n patchChildNodes(parentNode);\n }\n if (nextSibling) {\n patchNextSibling(element);\n }\n if (previousSibling) {\n patchNextSibling(previousSibling);\n }\n },\n unbind: function unbind(element) {\n element.remove();\n }\n};\n\nvar fragment = {\n name: \"Fragment\",\n directives: {\n frag: frag\n },\n render: function render(h) {\n return h(\"div\", {\n directives: [ {\n name: \"frag\"\n } ]\n }, this.$slots[\"default\"]);\n }\n};\n\nexport { fragment as Fragment, frag as default };\n","\n\n\n\t\n\t\t\n\t\t\t{{ dateText }}\n\t\t\n\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n","export default \"\"","/**\n* @vue/shared v3.5.13\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction makeMap(str) {\n const map = /* @__PURE__ */ Object.create(null);\n for (const key of str.split(\",\")) map[key] = 1;\n return (val) => val in map;\n}\n\nconst EMPTY_OBJ = !!(process.env.NODE_ENV !== \"production\") ? Object.freeze({}) : {};\nconst EMPTY_ARR = !!(process.env.NODE_ENV !== \"production\") ? Object.freeze([]) : [];\nconst NOOP = () => {\n};\nconst NO = () => false;\nconst isOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter\n(key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97);\nconst isModelListener = (key) => key.startsWith(\"onUpdate:\");\nconst extend = Object.assign;\nconst remove = (arr, el) => {\n const i = arr.indexOf(el);\n if (i > -1) {\n arr.splice(i, 1);\n }\n};\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nconst hasOwn = (val, key) => hasOwnProperty.call(val, key);\nconst isArray = Array.isArray;\nconst isMap = (val) => toTypeString(val) === \"[object Map]\";\nconst isSet = (val) => toTypeString(val) === \"[object Set]\";\nconst isDate = (val) => toTypeString(val) === \"[object Date]\";\nconst isRegExp = (val) => toTypeString(val) === \"[object RegExp]\";\nconst isFunction = (val) => typeof val === \"function\";\nconst isString = (val) => typeof val === \"string\";\nconst isSymbol = (val) => typeof val === \"symbol\";\nconst isObject = (val) => val !== null && typeof val === \"object\";\nconst isPromise = (val) => {\n return (isObject(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch);\n};\nconst objectToString = Object.prototype.toString;\nconst toTypeString = (value) => objectToString.call(value);\nconst toRawType = (value) => {\n return toTypeString(value).slice(8, -1);\n};\nconst isPlainObject = (val) => toTypeString(val) === \"[object Object]\";\nconst isIntegerKey = (key) => isString(key) && key !== \"NaN\" && key[0] !== \"-\" && \"\" + parseInt(key, 10) === key;\nconst isReservedProp = /* @__PURE__ */ makeMap(\n // the leading comma is intentional so empty string \"\" is also included\n \",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted\"\n);\nconst isBuiltInDirective = /* @__PURE__ */ makeMap(\n \"bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo\"\n);\nconst cacheStringFunction = (fn) => {\n const cache = /* @__PURE__ */ Object.create(null);\n return (str) => {\n const hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n};\nconst camelizeRE = /-(\\w)/g;\nconst camelize = cacheStringFunction(\n (str) => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : \"\");\n }\n);\nconst hyphenateRE = /\\B([A-Z])/g;\nconst hyphenate = cacheStringFunction(\n (str) => str.replace(hyphenateRE, \"-$1\").toLowerCase()\n);\nconst capitalize = cacheStringFunction((str) => {\n return str.charAt(0).toUpperCase() + str.slice(1);\n});\nconst toHandlerKey = cacheStringFunction(\n (str) => {\n const s = str ? `on${capitalize(str)}` : ``;\n return s;\n }\n);\nconst hasChanged = (value, oldValue) => !Object.is(value, oldValue);\nconst invokeArrayFns = (fns, ...arg) => {\n for (let i = 0; i < fns.length; i++) {\n fns[i](...arg);\n }\n};\nconst def = (obj, key, value, writable = false) => {\n Object.defineProperty(obj, key, {\n configurable: true,\n enumerable: false,\n writable,\n value\n });\n};\nconst looseToNumber = (val) => {\n const n = parseFloat(val);\n return isNaN(n) ? val : n;\n};\nconst toNumber = (val) => {\n const n = isString(val) ? Number(val) : NaN;\n return isNaN(n) ? val : n;\n};\nlet _globalThis;\nconst getGlobalThis = () => {\n return _globalThis || (_globalThis = typeof globalThis !== \"undefined\" ? globalThis : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : typeof global !== \"undefined\" ? global : {});\n};\nconst identRE = /^[_$a-zA-Z\\xA0-\\uFFFF][_$a-zA-Z0-9\\xA0-\\uFFFF]*$/;\nfunction genPropsAccessExp(name) {\n return identRE.test(name) ? `__props.${name}` : `__props[${JSON.stringify(name)}]`;\n}\nfunction genCacheKey(source, options) {\n return source + JSON.stringify(\n options,\n (_, val) => typeof val === \"function\" ? val.toString() : val\n );\n}\n\nconst PatchFlags = {\n \"TEXT\": 1,\n \"1\": \"TEXT\",\n \"CLASS\": 2,\n \"2\": \"CLASS\",\n \"STYLE\": 4,\n \"4\": \"STYLE\",\n \"PROPS\": 8,\n \"8\": \"PROPS\",\n \"FULL_PROPS\": 16,\n \"16\": \"FULL_PROPS\",\n \"NEED_HYDRATION\": 32,\n \"32\": \"NEED_HYDRATION\",\n \"STABLE_FRAGMENT\": 64,\n \"64\": \"STABLE_FRAGMENT\",\n \"KEYED_FRAGMENT\": 128,\n \"128\": \"KEYED_FRAGMENT\",\n \"UNKEYED_FRAGMENT\": 256,\n \"256\": \"UNKEYED_FRAGMENT\",\n \"NEED_PATCH\": 512,\n \"512\": \"NEED_PATCH\",\n \"DYNAMIC_SLOTS\": 1024,\n \"1024\": \"DYNAMIC_SLOTS\",\n \"DEV_ROOT_FRAGMENT\": 2048,\n \"2048\": \"DEV_ROOT_FRAGMENT\",\n \"CACHED\": -1,\n \"-1\": \"CACHED\",\n \"BAIL\": -2,\n \"-2\": \"BAIL\"\n};\nconst PatchFlagNames = {\n [1]: `TEXT`,\n [2]: `CLASS`,\n [4]: `STYLE`,\n [8]: `PROPS`,\n [16]: `FULL_PROPS`,\n [32]: `NEED_HYDRATION`,\n [64]: `STABLE_FRAGMENT`,\n [128]: `KEYED_FRAGMENT`,\n [256]: `UNKEYED_FRAGMENT`,\n [512]: `NEED_PATCH`,\n [1024]: `DYNAMIC_SLOTS`,\n [2048]: `DEV_ROOT_FRAGMENT`,\n [-1]: `HOISTED`,\n [-2]: `BAIL`\n};\n\nconst ShapeFlags = {\n \"ELEMENT\": 1,\n \"1\": \"ELEMENT\",\n \"FUNCTIONAL_COMPONENT\": 2,\n \"2\": \"FUNCTIONAL_COMPONENT\",\n \"STATEFUL_COMPONENT\": 4,\n \"4\": \"STATEFUL_COMPONENT\",\n \"TEXT_CHILDREN\": 8,\n \"8\": \"TEXT_CHILDREN\",\n \"ARRAY_CHILDREN\": 16,\n \"16\": \"ARRAY_CHILDREN\",\n \"SLOTS_CHILDREN\": 32,\n \"32\": \"SLOTS_CHILDREN\",\n \"TELEPORT\": 64,\n \"64\": \"TELEPORT\",\n \"SUSPENSE\": 128,\n \"128\": \"SUSPENSE\",\n \"COMPONENT_SHOULD_KEEP_ALIVE\": 256,\n \"256\": \"COMPONENT_SHOULD_KEEP_ALIVE\",\n \"COMPONENT_KEPT_ALIVE\": 512,\n \"512\": \"COMPONENT_KEPT_ALIVE\",\n \"COMPONENT\": 6,\n \"6\": \"COMPONENT\"\n};\n\nconst SlotFlags = {\n \"STABLE\": 1,\n \"1\": \"STABLE\",\n \"DYNAMIC\": 2,\n \"2\": \"DYNAMIC\",\n \"FORWARDED\": 3,\n \"3\": \"FORWARDED\"\n};\nconst slotFlagsText = {\n [1]: \"STABLE\",\n [2]: \"DYNAMIC\",\n [3]: \"FORWARDED\"\n};\n\nconst GLOBALS_ALLOWED = \"Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol\";\nconst isGloballyAllowed = /* @__PURE__ */ makeMap(GLOBALS_ALLOWED);\nconst isGloballyWhitelisted = isGloballyAllowed;\n\nconst range = 2;\nfunction generateCodeFrame(source, start = 0, end = source.length) {\n start = Math.max(0, Math.min(start, source.length));\n end = Math.max(0, Math.min(end, source.length));\n if (start > end) return \"\";\n let lines = source.split(/(\\r?\\n)/);\n const newlineSequences = lines.filter((_, idx) => idx % 2 === 1);\n lines = lines.filter((_, idx) => idx % 2 === 0);\n let count = 0;\n const res = [];\n for (let i = 0; i < lines.length; i++) {\n count += lines[i].length + (newlineSequences[i] && newlineSequences[i].length || 0);\n if (count >= start) {\n for (let j = i - range; j <= i + range || end > count; j++) {\n if (j < 0 || j >= lines.length) continue;\n const line = j + 1;\n res.push(\n `${line}${\" \".repeat(Math.max(3 - String(line).length, 0))}| ${lines[j]}`\n );\n const lineLength = lines[j].length;\n const newLineSeqLength = newlineSequences[j] && newlineSequences[j].length || 0;\n if (j === i) {\n const pad = start - (count - (lineLength + newLineSeqLength));\n const length = Math.max(\n 1,\n end > count ? lineLength - pad : end - start\n );\n res.push(` | ` + \" \".repeat(pad) + \"^\".repeat(length));\n } else if (j > i) {\n if (end > count) {\n const length = Math.max(Math.min(end - count, lineLength), 1);\n res.push(` | ` + \"^\".repeat(length));\n }\n count += lineLength + newLineSeqLength;\n }\n }\n break;\n }\n }\n return res.join(\"\\n\");\n}\n\nfunction normalizeStyle(value) {\n if (isArray(value)) {\n const res = {};\n for (let i = 0; i < value.length; i++) {\n const item = value[i];\n const normalized = isString(item) ? parseStringStyle(item) : normalizeStyle(item);\n if (normalized) {\n for (const key in normalized) {\n res[key] = normalized[key];\n }\n }\n }\n return res;\n } else if (isString(value) || isObject(value)) {\n return value;\n }\n}\nconst listDelimiterRE = /;(?![^(]*\\))/g;\nconst propertyDelimiterRE = /:([^]+)/;\nconst styleCommentRE = /\\/\\*[^]*?\\*\\//g;\nfunction parseStringStyle(cssText) {\n const ret = {};\n cssText.replace(styleCommentRE, \"\").split(listDelimiterRE).forEach((item) => {\n if (item) {\n const tmp = item.split(propertyDelimiterRE);\n tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return ret;\n}\nfunction stringifyStyle(styles) {\n if (!styles) return \"\";\n if (isString(styles)) return styles;\n let ret = \"\";\n for (const key in styles) {\n const value = styles[key];\n if (isString(value) || typeof value === \"number\") {\n const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);\n ret += `${normalizedKey}:${value};`;\n }\n }\n return ret;\n}\nfunction normalizeClass(value) {\n let res = \"\";\n if (isString(value)) {\n res = value;\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n const normalized = normalizeClass(value[i]);\n if (normalized) {\n res += normalized + \" \";\n }\n }\n } else if (isObject(value)) {\n for (const name in value) {\n if (value[name]) {\n res += name + \" \";\n }\n }\n }\n return res.trim();\n}\nfunction normalizeProps(props) {\n if (!props) return null;\n let { class: klass, style } = props;\n if (klass && !isString(klass)) {\n props.class = normalizeClass(klass);\n }\n if (style) {\n props.style = normalizeStyle(style);\n }\n return props;\n}\n\nconst HTML_TAGS = \"html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot\";\nconst SVG_TAGS = \"svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,feDistantLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,mesh,meshgradient,meshpatch,meshrow,metadata,mpath,path,pattern,polygon,polyline,radialGradient,rect,set,solidcolor,stop,switch,symbol,text,textPath,title,tspan,unknown,use,view\";\nconst MATH_TAGS = \"annotation,annotation-xml,maction,maligngroup,malignmark,math,menclose,merror,mfenced,mfrac,mfraction,mglyph,mi,mlabeledtr,mlongdiv,mmultiscripts,mn,mo,mover,mpadded,mphantom,mprescripts,mroot,mrow,ms,mscarries,mscarry,msgroup,msline,mspace,msqrt,msrow,mstack,mstyle,msub,msubsup,msup,mtable,mtd,mtext,mtr,munder,munderover,none,semantics\";\nconst VOID_TAGS = \"area,base,br,col,embed,hr,img,input,link,meta,param,source,track,wbr\";\nconst isHTMLTag = /* @__PURE__ */ makeMap(HTML_TAGS);\nconst isSVGTag = /* @__PURE__ */ makeMap(SVG_TAGS);\nconst isMathMLTag = /* @__PURE__ */ makeMap(MATH_TAGS);\nconst isVoidTag = /* @__PURE__ */ makeMap(VOID_TAGS);\n\nconst specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`;\nconst isSpecialBooleanAttr = /* @__PURE__ */ makeMap(specialBooleanAttrs);\nconst isBooleanAttr = /* @__PURE__ */ makeMap(\n specialBooleanAttrs + `,async,autofocus,autoplay,controls,default,defer,disabled,hidden,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected`\n);\nfunction includeBooleanAttr(value) {\n return !!value || value === \"\";\n}\nconst unsafeAttrCharRE = /[>/=\"'\\u0009\\u000a\\u000c\\u0020]/;\nconst attrValidationCache = {};\nfunction isSSRSafeAttrName(name) {\n if (attrValidationCache.hasOwnProperty(name)) {\n return attrValidationCache[name];\n }\n const isUnsafe = unsafeAttrCharRE.test(name);\n if (isUnsafe) {\n console.error(`unsafe attribute name: ${name}`);\n }\n return attrValidationCache[name] = !isUnsafe;\n}\nconst propsToAttrMap = {\n acceptCharset: \"accept-charset\",\n className: \"class\",\n htmlFor: \"for\",\n httpEquiv: \"http-equiv\"\n};\nconst isKnownHtmlAttr = /* @__PURE__ */ makeMap(\n `accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,inert,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap`\n);\nconst isKnownSvgAttr = /* @__PURE__ */ makeMap(\n `xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan`\n);\nconst isKnownMathMLAttr = /* @__PURE__ */ makeMap(\n `accent,accentunder,actiontype,align,alignmentscope,altimg,altimg-height,altimg-valign,altimg-width,alttext,bevelled,close,columnsalign,columnlines,columnspan,denomalign,depth,dir,display,displaystyle,encoding,equalcolumns,equalrows,fence,fontstyle,fontweight,form,frame,framespacing,groupalign,height,href,id,indentalign,indentalignfirst,indentalignlast,indentshift,indentshiftfirst,indentshiftlast,indextype,justify,largetop,largeop,lquote,lspace,mathbackground,mathcolor,mathsize,mathvariant,maxsize,minlabelspacing,mode,other,overflow,position,rowalign,rowlines,rowspan,rquote,rspace,scriptlevel,scriptminsize,scriptsizemultiplier,selection,separator,separators,shift,side,src,stackalign,stretchy,subscriptshift,superscriptshift,symmetric,voffset,width,widths,xlink:href,xlink:show,xlink:type,xmlns`\n);\nfunction isRenderableAttrValue(value) {\n if (value == null) {\n return false;\n }\n const type = typeof value;\n return type === \"string\" || type === \"number\" || type === \"boolean\";\n}\n\nconst escapeRE = /[\"'&<>]/;\nfunction escapeHtml(string) {\n const str = \"\" + string;\n const match = escapeRE.exec(str);\n if (!match) {\n return str;\n }\n let html = \"\";\n let escaped;\n let index;\n let lastIndex = 0;\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34:\n escaped = \""\";\n break;\n case 38:\n escaped = \"&\";\n break;\n case 39:\n escaped = \"'\";\n break;\n case 60:\n escaped = \"<\";\n break;\n case 62:\n escaped = \">\";\n break;\n default:\n continue;\n }\n if (lastIndex !== index) {\n html += str.slice(lastIndex, index);\n }\n lastIndex = index + 1;\n html += escaped;\n }\n return lastIndex !== index ? html + str.slice(lastIndex, index) : html;\n}\nconst commentStripRE = /^-?>||--!>|?@[\\\\\\]^`{|}~]/g;\nfunction getEscapedCssVarName(key, doubleEscape) {\n return key.replace(\n cssVarNameEscapeSymbolsRE,\n (s) => doubleEscape ? s === '\"' ? '\\\\\\\\\\\\\"' : `\\\\\\\\${s}` : `\\\\${s}`\n );\n}\n\nfunction looseCompareArrays(a, b) {\n if (a.length !== b.length) return false;\n let equal = true;\n for (let i = 0; equal && i < a.length; i++) {\n equal = looseEqual(a[i], b[i]);\n }\n return equal;\n}\nfunction looseEqual(a, b) {\n if (a === b) return true;\n let aValidType = isDate(a);\n let bValidType = isDate(b);\n if (aValidType || bValidType) {\n return aValidType && bValidType ? a.getTime() === b.getTime() : false;\n }\n aValidType = isSymbol(a);\n bValidType = isSymbol(b);\n if (aValidType || bValidType) {\n return a === b;\n }\n aValidType = isArray(a);\n bValidType = isArray(b);\n if (aValidType || bValidType) {\n return aValidType && bValidType ? looseCompareArrays(a, b) : false;\n }\n aValidType = isObject(a);\n bValidType = isObject(b);\n if (aValidType || bValidType) {\n if (!aValidType || !bValidType) {\n return false;\n }\n const aKeysCount = Object.keys(a).length;\n const bKeysCount = Object.keys(b).length;\n if (aKeysCount !== bKeysCount) {\n return false;\n }\n for (const key in a) {\n const aHasKey = a.hasOwnProperty(key);\n const bHasKey = b.hasOwnProperty(key);\n if (aHasKey && !bHasKey || !aHasKey && bHasKey || !looseEqual(a[key], b[key])) {\n return false;\n }\n }\n }\n return String(a) === String(b);\n}\nfunction looseIndexOf(arr, val) {\n return arr.findIndex((item) => looseEqual(item, val));\n}\n\nconst isRef = (val) => {\n return !!(val && val[\"__v_isRef\"] === true);\n};\nconst toDisplayString = (val) => {\n return isString(val) ? val : val == null ? \"\" : isArray(val) || isObject(val) && (val.toString === objectToString || !isFunction(val.toString)) ? isRef(val) ? toDisplayString(val.value) : JSON.stringify(val, replacer, 2) : String(val);\n};\nconst replacer = (_key, val) => {\n if (isRef(val)) {\n return replacer(_key, val.value);\n } else if (isMap(val)) {\n return {\n [`Map(${val.size})`]: [...val.entries()].reduce(\n (entries, [key, val2], i) => {\n entries[stringifySymbol(key, i) + \" =>\"] = val2;\n return entries;\n },\n {}\n )\n };\n } else if (isSet(val)) {\n return {\n [`Set(${val.size})`]: [...val.values()].map((v) => stringifySymbol(v))\n };\n } else if (isSymbol(val)) {\n return stringifySymbol(val);\n } else if (isObject(val) && !isArray(val) && !isPlainObject(val)) {\n return String(val);\n }\n return val;\n};\nconst stringifySymbol = (v, i = \"\") => {\n var _a;\n return (\n // Symbol.description in es2019+ so we need to cast here to pass\n // the lib: es2016 check\n isSymbol(v) ? `Symbol(${(_a = v.description) != null ? _a : i})` : v\n );\n};\n\nexport { EMPTY_ARR, EMPTY_OBJ, NO, NOOP, PatchFlagNames, PatchFlags, ShapeFlags, SlotFlags, camelize, capitalize, cssVarNameEscapeSymbolsRE, def, escapeHtml, escapeHtmlComment, extend, genCacheKey, genPropsAccessExp, generateCodeFrame, getEscapedCssVarName, getGlobalThis, hasChanged, hasOwn, hyphenate, includeBooleanAttr, invokeArrayFns, isArray, isBooleanAttr, isBuiltInDirective, isDate, isFunction, isGloballyAllowed, isGloballyWhitelisted, isHTMLTag, isIntegerKey, isKnownHtmlAttr, isKnownMathMLAttr, isKnownSvgAttr, isMap, isMathMLTag, isModelListener, isObject, isOn, isPlainObject, isPromise, isRegExp, isRenderableAttrValue, isReservedProp, isSSRSafeAttrName, isSVGTag, isSet, isSpecialBooleanAttr, isString, isSymbol, isVoidTag, looseEqual, looseIndexOf, looseToNumber, makeMap, normalizeClass, normalizeProps, normalizeStyle, objectToString, parseStringStyle, propsToAttrMap, remove, slotFlagsText, stringifyStyle, toDisplayString, toHandlerKey, toNumber, toRawType, toTypeString };\n","/**\n* @vue/reactivity v3.5.13\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\nimport { hasChanged, extend, isArray, isIntegerKey, isSymbol, isMap, hasOwn, isObject, makeMap, toRawType, capitalize, def, isFunction, EMPTY_OBJ, isSet, isPlainObject, NOOP, remove } from '@vue/shared';\n\nfunction warn(msg, ...args) {\n console.warn(`[Vue warn] ${msg}`, ...args);\n}\n\nlet activeEffectScope;\nclass EffectScope {\n constructor(detached = false) {\n this.detached = detached;\n /**\n * @internal\n */\n this._active = true;\n /**\n * @internal\n */\n this.effects = [];\n /**\n * @internal\n */\n this.cleanups = [];\n this._isPaused = false;\n this.parent = activeEffectScope;\n if (!detached && activeEffectScope) {\n this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(\n this\n ) - 1;\n }\n }\n get active() {\n return this._active;\n }\n pause() {\n if (this._active) {\n this._isPaused = true;\n let i, l;\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].pause();\n }\n }\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].pause();\n }\n }\n }\n /**\n * Resumes the effect scope, including all child scopes and effects.\n */\n resume() {\n if (this._active) {\n if (this._isPaused) {\n this._isPaused = false;\n let i, l;\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].resume();\n }\n }\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].resume();\n }\n }\n }\n }\n run(fn) {\n if (this._active) {\n const currentEffectScope = activeEffectScope;\n try {\n activeEffectScope = this;\n return fn();\n } finally {\n activeEffectScope = currentEffectScope;\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(`cannot run an inactive effect scope.`);\n }\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n on() {\n activeEffectScope = this;\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n off() {\n activeEffectScope = this.parent;\n }\n stop(fromParent) {\n if (this._active) {\n this._active = false;\n let i, l;\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].stop();\n }\n this.effects.length = 0;\n for (i = 0, l = this.cleanups.length; i < l; i++) {\n this.cleanups[i]();\n }\n this.cleanups.length = 0;\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].stop(true);\n }\n this.scopes.length = 0;\n }\n if (!this.detached && this.parent && !fromParent) {\n const last = this.parent.scopes.pop();\n if (last && last !== this) {\n this.parent.scopes[this.index] = last;\n last.index = this.index;\n }\n }\n this.parent = void 0;\n }\n }\n}\nfunction effectScope(detached) {\n return new EffectScope(detached);\n}\nfunction getCurrentScope() {\n return activeEffectScope;\n}\nfunction onScopeDispose(fn, failSilently = false) {\n if (activeEffectScope) {\n activeEffectScope.cleanups.push(fn);\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(\n `onScopeDispose() is called when there is no active effect scope to be associated with.`\n );\n }\n}\n\nlet activeSub;\nconst EffectFlags = {\n \"ACTIVE\": 1,\n \"1\": \"ACTIVE\",\n \"RUNNING\": 2,\n \"2\": \"RUNNING\",\n \"TRACKING\": 4,\n \"4\": \"TRACKING\",\n \"NOTIFIED\": 8,\n \"8\": \"NOTIFIED\",\n \"DIRTY\": 16,\n \"16\": \"DIRTY\",\n \"ALLOW_RECURSE\": 32,\n \"32\": \"ALLOW_RECURSE\",\n \"PAUSED\": 64,\n \"64\": \"PAUSED\"\n};\nconst pausedQueueEffects = /* @__PURE__ */ new WeakSet();\nclass ReactiveEffect {\n constructor(fn) {\n this.fn = fn;\n /**\n * @internal\n */\n this.deps = void 0;\n /**\n * @internal\n */\n this.depsTail = void 0;\n /**\n * @internal\n */\n this.flags = 1 | 4;\n /**\n * @internal\n */\n this.next = void 0;\n /**\n * @internal\n */\n this.cleanup = void 0;\n this.scheduler = void 0;\n if (activeEffectScope && activeEffectScope.active) {\n activeEffectScope.effects.push(this);\n }\n }\n pause() {\n this.flags |= 64;\n }\n resume() {\n if (this.flags & 64) {\n this.flags &= ~64;\n if (pausedQueueEffects.has(this)) {\n pausedQueueEffects.delete(this);\n this.trigger();\n }\n }\n }\n /**\n * @internal\n */\n notify() {\n if (this.flags & 2 && !(this.flags & 32)) {\n return;\n }\n if (!(this.flags & 8)) {\n batch(this);\n }\n }\n run() {\n if (!(this.flags & 1)) {\n return this.fn();\n }\n this.flags |= 2;\n cleanupEffect(this);\n prepareDeps(this);\n const prevEffect = activeSub;\n const prevShouldTrack = shouldTrack;\n activeSub = this;\n shouldTrack = true;\n try {\n return this.fn();\n } finally {\n if (!!(process.env.NODE_ENV !== \"production\") && activeSub !== this) {\n warn(\n \"Active effect was not restored correctly - this is likely a Vue internal bug.\"\n );\n }\n cleanupDeps(this);\n activeSub = prevEffect;\n shouldTrack = prevShouldTrack;\n this.flags &= ~2;\n }\n }\n stop() {\n if (this.flags & 1) {\n for (let link = this.deps; link; link = link.nextDep) {\n removeSub(link);\n }\n this.deps = this.depsTail = void 0;\n cleanupEffect(this);\n this.onStop && this.onStop();\n this.flags &= ~1;\n }\n }\n trigger() {\n if (this.flags & 64) {\n pausedQueueEffects.add(this);\n } else if (this.scheduler) {\n this.scheduler();\n } else {\n this.runIfDirty();\n }\n }\n /**\n * @internal\n */\n runIfDirty() {\n if (isDirty(this)) {\n this.run();\n }\n }\n get dirty() {\n return isDirty(this);\n }\n}\nlet batchDepth = 0;\nlet batchedSub;\nlet batchedComputed;\nfunction batch(sub, isComputed = false) {\n sub.flags |= 8;\n if (isComputed) {\n sub.next = batchedComputed;\n batchedComputed = sub;\n return;\n }\n sub.next = batchedSub;\n batchedSub = sub;\n}\nfunction startBatch() {\n batchDepth++;\n}\nfunction endBatch() {\n if (--batchDepth > 0) {\n return;\n }\n if (batchedComputed) {\n let e = batchedComputed;\n batchedComputed = void 0;\n while (e) {\n const next = e.next;\n e.next = void 0;\n e.flags &= ~8;\n e = next;\n }\n }\n let error;\n while (batchedSub) {\n let e = batchedSub;\n batchedSub = void 0;\n while (e) {\n const next = e.next;\n e.next = void 0;\n e.flags &= ~8;\n if (e.flags & 1) {\n try {\n ;\n e.trigger();\n } catch (err) {\n if (!error) error = err;\n }\n }\n e = next;\n }\n }\n if (error) throw error;\n}\nfunction prepareDeps(sub) {\n for (let link = sub.deps; link; link = link.nextDep) {\n link.version = -1;\n link.prevActiveLink = link.dep.activeLink;\n link.dep.activeLink = link;\n }\n}\nfunction cleanupDeps(sub) {\n let head;\n let tail = sub.depsTail;\n let link = tail;\n while (link) {\n const prev = link.prevDep;\n if (link.version === -1) {\n if (link === tail) tail = prev;\n removeSub(link);\n removeDep(link);\n } else {\n head = link;\n }\n link.dep.activeLink = link.prevActiveLink;\n link.prevActiveLink = void 0;\n link = prev;\n }\n sub.deps = head;\n sub.depsTail = tail;\n}\nfunction isDirty(sub) {\n for (let link = sub.deps; link; link = link.nextDep) {\n if (link.dep.version !== link.version || link.dep.computed && (refreshComputed(link.dep.computed) || link.dep.version !== link.version)) {\n return true;\n }\n }\n if (sub._dirty) {\n return true;\n }\n return false;\n}\nfunction refreshComputed(computed) {\n if (computed.flags & 4 && !(computed.flags & 16)) {\n return;\n }\n computed.flags &= ~16;\n if (computed.globalVersion === globalVersion) {\n return;\n }\n computed.globalVersion = globalVersion;\n const dep = computed.dep;\n computed.flags |= 2;\n if (dep.version > 0 && !computed.isSSR && computed.deps && !isDirty(computed)) {\n computed.flags &= ~2;\n return;\n }\n const prevSub = activeSub;\n const prevShouldTrack = shouldTrack;\n activeSub = computed;\n shouldTrack = true;\n try {\n prepareDeps(computed);\n const value = computed.fn(computed._value);\n if (dep.version === 0 || hasChanged(value, computed._value)) {\n computed._value = value;\n dep.version++;\n }\n } catch (err) {\n dep.version++;\n throw err;\n } finally {\n activeSub = prevSub;\n shouldTrack = prevShouldTrack;\n cleanupDeps(computed);\n computed.flags &= ~2;\n }\n}\nfunction removeSub(link, soft = false) {\n const { dep, prevSub, nextSub } = link;\n if (prevSub) {\n prevSub.nextSub = nextSub;\n link.prevSub = void 0;\n }\n if (nextSub) {\n nextSub.prevSub = prevSub;\n link.nextSub = void 0;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && dep.subsHead === link) {\n dep.subsHead = nextSub;\n }\n if (dep.subs === link) {\n dep.subs = prevSub;\n if (!prevSub && dep.computed) {\n dep.computed.flags &= ~4;\n for (let l = dep.computed.deps; l; l = l.nextDep) {\n removeSub(l, true);\n }\n }\n }\n if (!soft && !--dep.sc && dep.map) {\n dep.map.delete(dep.key);\n }\n}\nfunction removeDep(link) {\n const { prevDep, nextDep } = link;\n if (prevDep) {\n prevDep.nextDep = nextDep;\n link.prevDep = void 0;\n }\n if (nextDep) {\n nextDep.prevDep = prevDep;\n link.nextDep = void 0;\n }\n}\nfunction effect(fn, options) {\n if (fn.effect instanceof ReactiveEffect) {\n fn = fn.effect.fn;\n }\n const e = new ReactiveEffect(fn);\n if (options) {\n extend(e, options);\n }\n try {\n e.run();\n } catch (err) {\n e.stop();\n throw err;\n }\n const runner = e.run.bind(e);\n runner.effect = e;\n return runner;\n}\nfunction stop(runner) {\n runner.effect.stop();\n}\nlet shouldTrack = true;\nconst trackStack = [];\nfunction pauseTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = false;\n}\nfunction enableTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = true;\n}\nfunction resetTracking() {\n const last = trackStack.pop();\n shouldTrack = last === void 0 ? true : last;\n}\nfunction onEffectCleanup(fn, failSilently = false) {\n if (activeSub instanceof ReactiveEffect) {\n activeSub.cleanup = fn;\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(\n `onEffectCleanup() was called when there was no active effect to associate with.`\n );\n }\n}\nfunction cleanupEffect(e) {\n const { cleanup } = e;\n e.cleanup = void 0;\n if (cleanup) {\n const prevSub = activeSub;\n activeSub = void 0;\n try {\n cleanup();\n } finally {\n activeSub = prevSub;\n }\n }\n}\n\nlet globalVersion = 0;\nclass Link {\n constructor(sub, dep) {\n this.sub = sub;\n this.dep = dep;\n this.version = dep.version;\n this.nextDep = this.prevDep = this.nextSub = this.prevSub = this.prevActiveLink = void 0;\n }\n}\nclass Dep {\n constructor(computed) {\n this.computed = computed;\n this.version = 0;\n /**\n * Link between this dep and the current active effect\n */\n this.activeLink = void 0;\n /**\n * Doubly linked list representing the subscribing effects (tail)\n */\n this.subs = void 0;\n /**\n * For object property deps cleanup\n */\n this.map = void 0;\n this.key = void 0;\n /**\n * Subscriber counter\n */\n this.sc = 0;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.subsHead = void 0;\n }\n }\n track(debugInfo) {\n if (!activeSub || !shouldTrack || activeSub === this.computed) {\n return;\n }\n let link = this.activeLink;\n if (link === void 0 || link.sub !== activeSub) {\n link = this.activeLink = new Link(activeSub, this);\n if (!activeSub.deps) {\n activeSub.deps = activeSub.depsTail = link;\n } else {\n link.prevDep = activeSub.depsTail;\n activeSub.depsTail.nextDep = link;\n activeSub.depsTail = link;\n }\n addSub(link);\n } else if (link.version === -1) {\n link.version = this.version;\n if (link.nextDep) {\n const next = link.nextDep;\n next.prevDep = link.prevDep;\n if (link.prevDep) {\n link.prevDep.nextDep = next;\n }\n link.prevDep = activeSub.depsTail;\n link.nextDep = void 0;\n activeSub.depsTail.nextDep = link;\n activeSub.depsTail = link;\n if (activeSub.deps === link) {\n activeSub.deps = next;\n }\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") && activeSub.onTrack) {\n activeSub.onTrack(\n extend(\n {\n effect: activeSub\n },\n debugInfo\n )\n );\n }\n return link;\n }\n trigger(debugInfo) {\n this.version++;\n globalVersion++;\n this.notify(debugInfo);\n }\n notify(debugInfo) {\n startBatch();\n try {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n for (let head = this.subsHead; head; head = head.nextSub) {\n if (head.sub.onTrigger && !(head.sub.flags & 8)) {\n head.sub.onTrigger(\n extend(\n {\n effect: head.sub\n },\n debugInfo\n )\n );\n }\n }\n }\n for (let link = this.subs; link; link = link.prevSub) {\n if (link.sub.notify()) {\n ;\n link.sub.dep.notify();\n }\n }\n } finally {\n endBatch();\n }\n }\n}\nfunction addSub(link) {\n link.dep.sc++;\n if (link.sub.flags & 4) {\n const computed = link.dep.computed;\n if (computed && !link.dep.subs) {\n computed.flags |= 4 | 16;\n for (let l = computed.deps; l; l = l.nextDep) {\n addSub(l);\n }\n }\n const currentTail = link.dep.subs;\n if (currentTail !== link) {\n link.prevSub = currentTail;\n if (currentTail) currentTail.nextSub = link;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && link.dep.subsHead === void 0) {\n link.dep.subsHead = link;\n }\n link.dep.subs = link;\n }\n}\nconst targetMap = /* @__PURE__ */ new WeakMap();\nconst ITERATE_KEY = Symbol(\n !!(process.env.NODE_ENV !== \"production\") ? \"Object iterate\" : \"\"\n);\nconst MAP_KEY_ITERATE_KEY = Symbol(\n !!(process.env.NODE_ENV !== \"production\") ? \"Map keys iterate\" : \"\"\n);\nconst ARRAY_ITERATE_KEY = Symbol(\n !!(process.env.NODE_ENV !== \"production\") ? \"Array iterate\" : \"\"\n);\nfunction track(target, type, key) {\n if (shouldTrack && activeSub) {\n let depsMap = targetMap.get(target);\n if (!depsMap) {\n targetMap.set(target, depsMap = /* @__PURE__ */ new Map());\n }\n let dep = depsMap.get(key);\n if (!dep) {\n depsMap.set(key, dep = new Dep());\n dep.map = depsMap;\n dep.key = key;\n }\n if (!!(process.env.NODE_ENV !== \"production\")) {\n dep.track({\n target,\n type,\n key\n });\n } else {\n dep.track();\n }\n }\n}\nfunction trigger(target, type, key, newValue, oldValue, oldTarget) {\n const depsMap = targetMap.get(target);\n if (!depsMap) {\n globalVersion++;\n return;\n }\n const run = (dep) => {\n if (dep) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n dep.trigger({\n target,\n type,\n key,\n newValue,\n oldValue,\n oldTarget\n });\n } else {\n dep.trigger();\n }\n }\n };\n startBatch();\n if (type === \"clear\") {\n depsMap.forEach(run);\n } else {\n const targetIsArray = isArray(target);\n const isArrayIndex = targetIsArray && isIntegerKey(key);\n if (targetIsArray && key === \"length\") {\n const newLength = Number(newValue);\n depsMap.forEach((dep, key2) => {\n if (key2 === \"length\" || key2 === ARRAY_ITERATE_KEY || !isSymbol(key2) && key2 >= newLength) {\n run(dep);\n }\n });\n } else {\n if (key !== void 0 || depsMap.has(void 0)) {\n run(depsMap.get(key));\n }\n if (isArrayIndex) {\n run(depsMap.get(ARRAY_ITERATE_KEY));\n }\n switch (type) {\n case \"add\":\n if (!targetIsArray) {\n run(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n run(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n } else if (isArrayIndex) {\n run(depsMap.get(\"length\"));\n }\n break;\n case \"delete\":\n if (!targetIsArray) {\n run(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n run(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n }\n break;\n case \"set\":\n if (isMap(target)) {\n run(depsMap.get(ITERATE_KEY));\n }\n break;\n }\n }\n }\n endBatch();\n}\nfunction getDepFromReactive(object, key) {\n const depMap = targetMap.get(object);\n return depMap && depMap.get(key);\n}\n\nfunction reactiveReadArray(array) {\n const raw = toRaw(array);\n if (raw === array) return raw;\n track(raw, \"iterate\", ARRAY_ITERATE_KEY);\n return isShallow(array) ? raw : raw.map(toReactive);\n}\nfunction shallowReadArray(arr) {\n track(arr = toRaw(arr), \"iterate\", ARRAY_ITERATE_KEY);\n return arr;\n}\nconst arrayInstrumentations = {\n __proto__: null,\n [Symbol.iterator]() {\n return iterator(this, Symbol.iterator, toReactive);\n },\n concat(...args) {\n return reactiveReadArray(this).concat(\n ...args.map((x) => isArray(x) ? reactiveReadArray(x) : x)\n );\n },\n entries() {\n return iterator(this, \"entries\", (value) => {\n value[1] = toReactive(value[1]);\n return value;\n });\n },\n every(fn, thisArg) {\n return apply(this, \"every\", fn, thisArg, void 0, arguments);\n },\n filter(fn, thisArg) {\n return apply(this, \"filter\", fn, thisArg, (v) => v.map(toReactive), arguments);\n },\n find(fn, thisArg) {\n return apply(this, \"find\", fn, thisArg, toReactive, arguments);\n },\n findIndex(fn, thisArg) {\n return apply(this, \"findIndex\", fn, thisArg, void 0, arguments);\n },\n findLast(fn, thisArg) {\n return apply(this, \"findLast\", fn, thisArg, toReactive, arguments);\n },\n findLastIndex(fn, thisArg) {\n return apply(this, \"findLastIndex\", fn, thisArg, void 0, arguments);\n },\n // flat, flatMap could benefit from ARRAY_ITERATE but are not straight-forward to implement\n forEach(fn, thisArg) {\n return apply(this, \"forEach\", fn, thisArg, void 0, arguments);\n },\n includes(...args) {\n return searchProxy(this, \"includes\", args);\n },\n indexOf(...args) {\n return searchProxy(this, \"indexOf\", args);\n },\n join(separator) {\n return reactiveReadArray(this).join(separator);\n },\n // keys() iterator only reads `length`, no optimisation required\n lastIndexOf(...args) {\n return searchProxy(this, \"lastIndexOf\", args);\n },\n map(fn, thisArg) {\n return apply(this, \"map\", fn, thisArg, void 0, arguments);\n },\n pop() {\n return noTracking(this, \"pop\");\n },\n push(...args) {\n return noTracking(this, \"push\", args);\n },\n reduce(fn, ...args) {\n return reduce(this, \"reduce\", fn, args);\n },\n reduceRight(fn, ...args) {\n return reduce(this, \"reduceRight\", fn, args);\n },\n shift() {\n return noTracking(this, \"shift\");\n },\n // slice could use ARRAY_ITERATE but also seems to beg for range tracking\n some(fn, thisArg) {\n return apply(this, \"some\", fn, thisArg, void 0, arguments);\n },\n splice(...args) {\n return noTracking(this, \"splice\", args);\n },\n toReversed() {\n return reactiveReadArray(this).toReversed();\n },\n toSorted(comparer) {\n return reactiveReadArray(this).toSorted(comparer);\n },\n toSpliced(...args) {\n return reactiveReadArray(this).toSpliced(...args);\n },\n unshift(...args) {\n return noTracking(this, \"unshift\", args);\n },\n values() {\n return iterator(this, \"values\", toReactive);\n }\n};\nfunction iterator(self, method, wrapValue) {\n const arr = shallowReadArray(self);\n const iter = arr[method]();\n if (arr !== self && !isShallow(self)) {\n iter._next = iter.next;\n iter.next = () => {\n const result = iter._next();\n if (result.value) {\n result.value = wrapValue(result.value);\n }\n return result;\n };\n }\n return iter;\n}\nconst arrayProto = Array.prototype;\nfunction apply(self, method, fn, thisArg, wrappedRetFn, args) {\n const arr = shallowReadArray(self);\n const needsWrap = arr !== self && !isShallow(self);\n const methodFn = arr[method];\n if (methodFn !== arrayProto[method]) {\n const result2 = methodFn.apply(self, args);\n return needsWrap ? toReactive(result2) : result2;\n }\n let wrappedFn = fn;\n if (arr !== self) {\n if (needsWrap) {\n wrappedFn = function(item, index) {\n return fn.call(this, toReactive(item), index, self);\n };\n } else if (fn.length > 2) {\n wrappedFn = function(item, index) {\n return fn.call(this, item, index, self);\n };\n }\n }\n const result = methodFn.call(arr, wrappedFn, thisArg);\n return needsWrap && wrappedRetFn ? wrappedRetFn(result) : result;\n}\nfunction reduce(self, method, fn, args) {\n const arr = shallowReadArray(self);\n let wrappedFn = fn;\n if (arr !== self) {\n if (!isShallow(self)) {\n wrappedFn = function(acc, item, index) {\n return fn.call(this, acc, toReactive(item), index, self);\n };\n } else if (fn.length > 3) {\n wrappedFn = function(acc, item, index) {\n return fn.call(this, acc, item, index, self);\n };\n }\n }\n return arr[method](wrappedFn, ...args);\n}\nfunction searchProxy(self, method, args) {\n const arr = toRaw(self);\n track(arr, \"iterate\", ARRAY_ITERATE_KEY);\n const res = arr[method](...args);\n if ((res === -1 || res === false) && isProxy(args[0])) {\n args[0] = toRaw(args[0]);\n return arr[method](...args);\n }\n return res;\n}\nfunction noTracking(self, method, args = []) {\n pauseTracking();\n startBatch();\n const res = toRaw(self)[method].apply(self, args);\n endBatch();\n resetTracking();\n return res;\n}\n\nconst isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);\nconst builtInSymbols = new Set(\n /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== \"arguments\" && key !== \"caller\").map((key) => Symbol[key]).filter(isSymbol)\n);\nfunction hasOwnProperty(key) {\n if (!isSymbol(key)) key = String(key);\n const obj = toRaw(this);\n track(obj, \"has\", key);\n return obj.hasOwnProperty(key);\n}\nclass BaseReactiveHandler {\n constructor(_isReadonly = false, _isShallow = false) {\n this._isReadonly = _isReadonly;\n this._isShallow = _isShallow;\n }\n get(target, key, receiver) {\n if (key === \"__v_skip\") return target[\"__v_skip\"];\n const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow;\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_isShallow\") {\n return isShallow2;\n } else if (key === \"__v_raw\") {\n if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype\n // this means the receiver is a user proxy of the reactive proxy\n Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) {\n return target;\n }\n return;\n }\n const targetIsArray = isArray(target);\n if (!isReadonly2) {\n let fn;\n if (targetIsArray && (fn = arrayInstrumentations[key])) {\n return fn;\n }\n if (key === \"hasOwnProperty\") {\n return hasOwnProperty;\n }\n }\n const res = Reflect.get(\n target,\n key,\n // if this is a proxy wrapping a ref, return methods using the raw ref\n // as receiver so that we don't have to call `toRaw` on the ref in all\n // its class methods\n isRef(target) ? target : receiver\n );\n if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {\n return res;\n }\n if (!isReadonly2) {\n track(target, \"get\", key);\n }\n if (isShallow2) {\n return res;\n }\n if (isRef(res)) {\n return targetIsArray && isIntegerKey(key) ? res : res.value;\n }\n if (isObject(res)) {\n return isReadonly2 ? readonly(res) : reactive(res);\n }\n return res;\n }\n}\nclass MutableReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(false, isShallow2);\n }\n set(target, key, value, receiver) {\n let oldValue = target[key];\n if (!this._isShallow) {\n const isOldValueReadonly = isReadonly(oldValue);\n if (!isShallow(value) && !isReadonly(value)) {\n oldValue = toRaw(oldValue);\n value = toRaw(value);\n }\n if (!isArray(target) && isRef(oldValue) && !isRef(value)) {\n if (isOldValueReadonly) {\n return false;\n } else {\n oldValue.value = value;\n return true;\n }\n }\n }\n const hadKey = isArray(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key);\n const result = Reflect.set(\n target,\n key,\n value,\n isRef(target) ? target : receiver\n );\n if (target === toRaw(receiver)) {\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n }\n return result;\n }\n deleteProperty(target, key) {\n const hadKey = hasOwn(target, key);\n const oldValue = target[key];\n const result = Reflect.deleteProperty(target, key);\n if (result && hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n }\n has(target, key) {\n const result = Reflect.has(target, key);\n if (!isSymbol(key) || !builtInSymbols.has(key)) {\n track(target, \"has\", key);\n }\n return result;\n }\n ownKeys(target) {\n track(\n target,\n \"iterate\",\n isArray(target) ? \"length\" : ITERATE_KEY\n );\n return Reflect.ownKeys(target);\n }\n}\nclass ReadonlyReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(true, isShallow2);\n }\n set(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `Set operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n deleteProperty(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `Delete operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n}\nconst mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler();\nconst readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler();\nconst shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(true);\nconst shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true);\n\nconst toShallow = (value) => value;\nconst getProto = (v) => Reflect.getPrototypeOf(v);\nfunction createIterableMethod(method, isReadonly2, isShallow2) {\n return function(...args) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const targetIsMap = isMap(rawTarget);\n const isPair = method === \"entries\" || method === Symbol.iterator && targetIsMap;\n const isKeyOnly = method === \"keys\" && targetIsMap;\n const innerIterator = target[method](...args);\n const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;\n !isReadonly2 && track(\n rawTarget,\n \"iterate\",\n isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY\n );\n return {\n // iterator protocol\n next() {\n const { value, done } = innerIterator.next();\n return done ? { value, done } : {\n value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),\n done\n };\n },\n // iterable protocol\n [Symbol.iterator]() {\n return this;\n }\n };\n };\n}\nfunction createReadonlyMethod(type) {\n return function(...args) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const key = args[0] ? `on key \"${args[0]}\" ` : ``;\n warn(\n `${capitalize(type)} operation ${key}failed: target is readonly.`,\n toRaw(this)\n );\n }\n return type === \"delete\" ? false : type === \"clear\" ? void 0 : this;\n };\n}\nfunction createInstrumentations(readonly, shallow) {\n const instrumentations = {\n get(key) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!readonly) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"get\", key);\n }\n track(rawTarget, \"get\", rawKey);\n }\n const { has } = getProto(rawTarget);\n const wrap = shallow ? toShallow : readonly ? toReadonly : toReactive;\n if (has.call(rawTarget, key)) {\n return wrap(target.get(key));\n } else if (has.call(rawTarget, rawKey)) {\n return wrap(target.get(rawKey));\n } else if (target !== rawTarget) {\n target.get(key);\n }\n },\n get size() {\n const target = this[\"__v_raw\"];\n !readonly && track(toRaw(target), \"iterate\", ITERATE_KEY);\n return Reflect.get(target, \"size\", target);\n },\n has(key) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!readonly) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"has\", key);\n }\n track(rawTarget, \"has\", rawKey);\n }\n return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey);\n },\n forEach(callback, thisArg) {\n const observed = this;\n const target = observed[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const wrap = shallow ? toShallow : readonly ? toReadonly : toReactive;\n !readonly && track(rawTarget, \"iterate\", ITERATE_KEY);\n return target.forEach((value, key) => {\n return callback.call(thisArg, wrap(value), wrap(key), observed);\n });\n }\n };\n extend(\n instrumentations,\n readonly ? {\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\")\n } : {\n add(value) {\n if (!shallow && !isShallow(value) && !isReadonly(value)) {\n value = toRaw(value);\n }\n const target = toRaw(this);\n const proto = getProto(target);\n const hadKey = proto.has.call(target, value);\n if (!hadKey) {\n target.add(value);\n trigger(target, \"add\", value, value);\n }\n return this;\n },\n set(key, value) {\n if (!shallow && !isShallow(value) && !isReadonly(value)) {\n value = toRaw(value);\n }\n const target = toRaw(this);\n const { has, get } = getProto(target);\n let hadKey = has.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has, key);\n }\n const oldValue = get.call(target, key);\n target.set(key, value);\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n return this;\n },\n delete(key) {\n const target = toRaw(this);\n const { has, get } = getProto(target);\n let hadKey = has.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has, key);\n }\n const oldValue = get ? get.call(target, key) : void 0;\n const result = target.delete(key);\n if (hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n },\n clear() {\n const target = toRaw(this);\n const hadItems = target.size !== 0;\n const oldTarget = !!(process.env.NODE_ENV !== \"production\") ? isMap(target) ? new Map(target) : new Set(target) : void 0;\n const result = target.clear();\n if (hadItems) {\n trigger(\n target,\n \"clear\",\n void 0,\n void 0,\n oldTarget\n );\n }\n return result;\n }\n }\n );\n const iteratorMethods = [\n \"keys\",\n \"values\",\n \"entries\",\n Symbol.iterator\n ];\n iteratorMethods.forEach((method) => {\n instrumentations[method] = createIterableMethod(method, readonly, shallow);\n });\n return instrumentations;\n}\nfunction createInstrumentationGetter(isReadonly2, shallow) {\n const instrumentations = createInstrumentations(isReadonly2, shallow);\n return (target, key, receiver) => {\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_raw\") {\n return target;\n }\n return Reflect.get(\n hasOwn(instrumentations, key) && key in target ? instrumentations : target,\n key,\n receiver\n );\n };\n}\nconst mutableCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, false)\n};\nconst shallowCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, true)\n};\nconst readonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, false)\n};\nconst shallowReadonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, true)\n};\nfunction checkIdentityKeys(target, has, key) {\n const rawKey = toRaw(key);\n if (rawKey !== key && has.call(target, rawKey)) {\n const type = toRawType(target);\n warn(\n `Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`\n );\n }\n}\n\nconst reactiveMap = /* @__PURE__ */ new WeakMap();\nconst shallowReactiveMap = /* @__PURE__ */ new WeakMap();\nconst readonlyMap = /* @__PURE__ */ new WeakMap();\nconst shallowReadonlyMap = /* @__PURE__ */ new WeakMap();\nfunction targetTypeMap(rawType) {\n switch (rawType) {\n case \"Object\":\n case \"Array\":\n return 1 /* COMMON */;\n case \"Map\":\n case \"Set\":\n case \"WeakMap\":\n case \"WeakSet\":\n return 2 /* COLLECTION */;\n default:\n return 0 /* INVALID */;\n }\n}\nfunction getTargetType(value) {\n return value[\"__v_skip\"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));\n}\nfunction reactive(target) {\n if (isReadonly(target)) {\n return target;\n }\n return createReactiveObject(\n target,\n false,\n mutableHandlers,\n mutableCollectionHandlers,\n reactiveMap\n );\n}\nfunction shallowReactive(target) {\n return createReactiveObject(\n target,\n false,\n shallowReactiveHandlers,\n shallowCollectionHandlers,\n shallowReactiveMap\n );\n}\nfunction readonly(target) {\n return createReactiveObject(\n target,\n true,\n readonlyHandlers,\n readonlyCollectionHandlers,\n readonlyMap\n );\n}\nfunction shallowReadonly(target) {\n return createReactiveObject(\n target,\n true,\n shallowReadonlyHandlers,\n shallowReadonlyCollectionHandlers,\n shallowReadonlyMap\n );\n}\nfunction createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) {\n if (!isObject(target)) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `value cannot be made ${isReadonly2 ? \"readonly\" : \"reactive\"}: ${String(\n target\n )}`\n );\n }\n return target;\n }\n if (target[\"__v_raw\"] && !(isReadonly2 && target[\"__v_isReactive\"])) {\n return target;\n }\n const existingProxy = proxyMap.get(target);\n if (existingProxy) {\n return existingProxy;\n }\n const targetType = getTargetType(target);\n if (targetType === 0 /* INVALID */) {\n return target;\n }\n const proxy = new Proxy(\n target,\n targetType === 2 /* COLLECTION */ ? collectionHandlers : baseHandlers\n );\n proxyMap.set(target, proxy);\n return proxy;\n}\nfunction isReactive(value) {\n if (isReadonly(value)) {\n return isReactive(value[\"__v_raw\"]);\n }\n return !!(value && value[\"__v_isReactive\"]);\n}\nfunction isReadonly(value) {\n return !!(value && value[\"__v_isReadonly\"]);\n}\nfunction isShallow(value) {\n return !!(value && value[\"__v_isShallow\"]);\n}\nfunction isProxy(value) {\n return value ? !!value[\"__v_raw\"] : false;\n}\nfunction toRaw(observed) {\n const raw = observed && observed[\"__v_raw\"];\n return raw ? toRaw(raw) : observed;\n}\nfunction markRaw(value) {\n if (!hasOwn(value, \"__v_skip\") && Object.isExtensible(value)) {\n def(value, \"__v_skip\", true);\n }\n return value;\n}\nconst toReactive = (value) => isObject(value) ? reactive(value) : value;\nconst toReadonly = (value) => isObject(value) ? readonly(value) : value;\n\nfunction isRef(r) {\n return r ? r[\"__v_isRef\"] === true : false;\n}\nfunction ref(value) {\n return createRef(value, false);\n}\nfunction shallowRef(value) {\n return createRef(value, true);\n}\nfunction createRef(rawValue, shallow) {\n if (isRef(rawValue)) {\n return rawValue;\n }\n return new RefImpl(rawValue, shallow);\n}\nclass RefImpl {\n constructor(value, isShallow2) {\n this.dep = new Dep();\n this[\"__v_isRef\"] = true;\n this[\"__v_isShallow\"] = false;\n this._rawValue = isShallow2 ? value : toRaw(value);\n this._value = isShallow2 ? value : toReactive(value);\n this[\"__v_isShallow\"] = isShallow2;\n }\n get value() {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.dep.track({\n target: this,\n type: \"get\",\n key: \"value\"\n });\n } else {\n this.dep.track();\n }\n return this._value;\n }\n set value(newValue) {\n const oldValue = this._rawValue;\n const useDirectValue = this[\"__v_isShallow\"] || isShallow(newValue) || isReadonly(newValue);\n newValue = useDirectValue ? newValue : toRaw(newValue);\n if (hasChanged(newValue, oldValue)) {\n this._rawValue = newValue;\n this._value = useDirectValue ? newValue : toReactive(newValue);\n if (!!(process.env.NODE_ENV !== \"production\")) {\n this.dep.trigger({\n target: this,\n type: \"set\",\n key: \"value\",\n newValue,\n oldValue\n });\n } else {\n this.dep.trigger();\n }\n }\n }\n}\nfunction triggerRef(ref2) {\n if (ref2.dep) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n ref2.dep.trigger({\n target: ref2,\n type: \"set\",\n key: \"value\",\n newValue: ref2._value\n });\n } else {\n ref2.dep.trigger();\n }\n }\n}\nfunction unref(ref2) {\n return isRef(ref2) ? ref2.value : ref2;\n}\nfunction toValue(source) {\n return isFunction(source) ? source() : unref(source);\n}\nconst shallowUnwrapHandlers = {\n get: (target, key, receiver) => key === \"__v_raw\" ? target : unref(Reflect.get(target, key, receiver)),\n set: (target, key, value, receiver) => {\n const oldValue = target[key];\n if (isRef(oldValue) && !isRef(value)) {\n oldValue.value = value;\n return true;\n } else {\n return Reflect.set(target, key, value, receiver);\n }\n }\n};\nfunction proxyRefs(objectWithRefs) {\n return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);\n}\nclass CustomRefImpl {\n constructor(factory) {\n this[\"__v_isRef\"] = true;\n this._value = void 0;\n const dep = this.dep = new Dep();\n const { get, set } = factory(dep.track.bind(dep), dep.trigger.bind(dep));\n this._get = get;\n this._set = set;\n }\n get value() {\n return this._value = this._get();\n }\n set value(newVal) {\n this._set(newVal);\n }\n}\nfunction customRef(factory) {\n return new CustomRefImpl(factory);\n}\nfunction toRefs(object) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isProxy(object)) {\n warn(`toRefs() expects a reactive object but received a plain one.`);\n }\n const ret = isArray(object) ? new Array(object.length) : {};\n for (const key in object) {\n ret[key] = propertyToRef(object, key);\n }\n return ret;\n}\nclass ObjectRefImpl {\n constructor(_object, _key, _defaultValue) {\n this._object = _object;\n this._key = _key;\n this._defaultValue = _defaultValue;\n this[\"__v_isRef\"] = true;\n this._value = void 0;\n }\n get value() {\n const val = this._object[this._key];\n return this._value = val === void 0 ? this._defaultValue : val;\n }\n set value(newVal) {\n this._object[this._key] = newVal;\n }\n get dep() {\n return getDepFromReactive(toRaw(this._object), this._key);\n }\n}\nclass GetterRefImpl {\n constructor(_getter) {\n this._getter = _getter;\n this[\"__v_isRef\"] = true;\n this[\"__v_isReadonly\"] = true;\n this._value = void 0;\n }\n get value() {\n return this._value = this._getter();\n }\n}\nfunction toRef(source, key, defaultValue) {\n if (isRef(source)) {\n return source;\n } else if (isFunction(source)) {\n return new GetterRefImpl(source);\n } else if (isObject(source) && arguments.length > 1) {\n return propertyToRef(source, key, defaultValue);\n } else {\n return ref(source);\n }\n}\nfunction propertyToRef(source, key, defaultValue) {\n const val = source[key];\n return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue);\n}\n\nclass ComputedRefImpl {\n constructor(fn, setter, isSSR) {\n this.fn = fn;\n this.setter = setter;\n /**\n * @internal\n */\n this._value = void 0;\n /**\n * @internal\n */\n this.dep = new Dep(this);\n /**\n * @internal\n */\n this.__v_isRef = true;\n // TODO isolatedDeclarations \"__v_isReadonly\"\n // A computed is also a subscriber that tracks other deps\n /**\n * @internal\n */\n this.deps = void 0;\n /**\n * @internal\n */\n this.depsTail = void 0;\n /**\n * @internal\n */\n this.flags = 16;\n /**\n * @internal\n */\n this.globalVersion = globalVersion - 1;\n /**\n * @internal\n */\n this.next = void 0;\n // for backwards compat\n this.effect = this;\n this[\"__v_isReadonly\"] = !setter;\n this.isSSR = isSSR;\n }\n /**\n * @internal\n */\n notify() {\n this.flags |= 16;\n if (!(this.flags & 8) && // avoid infinite self recursion\n activeSub !== this) {\n batch(this, true);\n return true;\n } else if (!!(process.env.NODE_ENV !== \"production\")) ;\n }\n get value() {\n const link = !!(process.env.NODE_ENV !== \"production\") ? this.dep.track({\n target: this,\n type: \"get\",\n key: \"value\"\n }) : this.dep.track();\n refreshComputed(this);\n if (link) {\n link.version = this.dep.version;\n }\n return this._value;\n }\n set value(newValue) {\n if (this.setter) {\n this.setter(newValue);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\"Write operation failed: computed value is readonly\");\n }\n }\n}\nfunction computed(getterOrOptions, debugOptions, isSSR = false) {\n let getter;\n let setter;\n if (isFunction(getterOrOptions)) {\n getter = getterOrOptions;\n } else {\n getter = getterOrOptions.get;\n setter = getterOrOptions.set;\n }\n const cRef = new ComputedRefImpl(getter, setter, isSSR);\n if (!!(process.env.NODE_ENV !== \"production\") && debugOptions && !isSSR) {\n cRef.onTrack = debugOptions.onTrack;\n cRef.onTrigger = debugOptions.onTrigger;\n }\n return cRef;\n}\n\nconst TrackOpTypes = {\n \"GET\": \"get\",\n \"HAS\": \"has\",\n \"ITERATE\": \"iterate\"\n};\nconst TriggerOpTypes = {\n \"SET\": \"set\",\n \"ADD\": \"add\",\n \"DELETE\": \"delete\",\n \"CLEAR\": \"clear\"\n};\nconst ReactiveFlags = {\n \"SKIP\": \"__v_skip\",\n \"IS_REACTIVE\": \"__v_isReactive\",\n \"IS_READONLY\": \"__v_isReadonly\",\n \"IS_SHALLOW\": \"__v_isShallow\",\n \"RAW\": \"__v_raw\",\n \"IS_REF\": \"__v_isRef\"\n};\n\nconst WatchErrorCodes = {\n \"WATCH_GETTER\": 2,\n \"2\": \"WATCH_GETTER\",\n \"WATCH_CALLBACK\": 3,\n \"3\": \"WATCH_CALLBACK\",\n \"WATCH_CLEANUP\": 4,\n \"4\": \"WATCH_CLEANUP\"\n};\nconst INITIAL_WATCHER_VALUE = {};\nconst cleanupMap = /* @__PURE__ */ new WeakMap();\nlet activeWatcher = void 0;\nfunction getCurrentWatcher() {\n return activeWatcher;\n}\nfunction onWatcherCleanup(cleanupFn, failSilently = false, owner = activeWatcher) {\n if (owner) {\n let cleanups = cleanupMap.get(owner);\n if (!cleanups) cleanupMap.set(owner, cleanups = []);\n cleanups.push(cleanupFn);\n } else if (!!(process.env.NODE_ENV !== \"production\") && !failSilently) {\n warn(\n `onWatcherCleanup() was called when there was no active watcher to associate with.`\n );\n }\n}\nfunction watch(source, cb, options = EMPTY_OBJ) {\n const { immediate, deep, once, scheduler, augmentJob, call } = options;\n const warnInvalidSource = (s) => {\n (options.onWarn || warn)(\n `Invalid watch source: `,\n s,\n `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`\n );\n };\n const reactiveGetter = (source2) => {\n if (deep) return source2;\n if (isShallow(source2) || deep === false || deep === 0)\n return traverse(source2, 1);\n return traverse(source2);\n };\n let effect;\n let getter;\n let cleanup;\n let boundCleanup;\n let forceTrigger = false;\n let isMultiSource = false;\n if (isRef(source)) {\n getter = () => source.value;\n forceTrigger = isShallow(source);\n } else if (isReactive(source)) {\n getter = () => reactiveGetter(source);\n forceTrigger = true;\n } else if (isArray(source)) {\n isMultiSource = true;\n forceTrigger = source.some((s) => isReactive(s) || isShallow(s));\n getter = () => source.map((s) => {\n if (isRef(s)) {\n return s.value;\n } else if (isReactive(s)) {\n return reactiveGetter(s);\n } else if (isFunction(s)) {\n return call ? call(s, 2) : s();\n } else {\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(s);\n }\n });\n } else if (isFunction(source)) {\n if (cb) {\n getter = call ? () => call(source, 2) : source;\n } else {\n getter = () => {\n if (cleanup) {\n pauseTracking();\n try {\n cleanup();\n } finally {\n resetTracking();\n }\n }\n const currentEffect = activeWatcher;\n activeWatcher = effect;\n try {\n return call ? call(source, 3, [boundCleanup]) : source(boundCleanup);\n } finally {\n activeWatcher = currentEffect;\n }\n };\n }\n } else {\n getter = NOOP;\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(source);\n }\n if (cb && deep) {\n const baseGetter = getter;\n const depth = deep === true ? Infinity : deep;\n getter = () => traverse(baseGetter(), depth);\n }\n const scope = getCurrentScope();\n const watchHandle = () => {\n effect.stop();\n if (scope && scope.active) {\n remove(scope.effects, effect);\n }\n };\n if (once && cb) {\n const _cb = cb;\n cb = (...args) => {\n _cb(...args);\n watchHandle();\n };\n }\n let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;\n const job = (immediateFirstRun) => {\n if (!(effect.flags & 1) || !effect.dirty && !immediateFirstRun) {\n return;\n }\n if (cb) {\n const newValue = effect.run();\n if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue))) {\n if (cleanup) {\n cleanup();\n }\n const currentWatcher = activeWatcher;\n activeWatcher = effect;\n try {\n const args = [\n newValue,\n // pass undefined as the old value when it's changed for the first time\n oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue,\n boundCleanup\n ];\n call ? call(cb, 3, args) : (\n // @ts-expect-error\n cb(...args)\n );\n oldValue = newValue;\n } finally {\n activeWatcher = currentWatcher;\n }\n }\n } else {\n effect.run();\n }\n };\n if (augmentJob) {\n augmentJob(job);\n }\n effect = new ReactiveEffect(getter);\n effect.scheduler = scheduler ? () => scheduler(job, false) : job;\n boundCleanup = (fn) => onWatcherCleanup(fn, false, effect);\n cleanup = effect.onStop = () => {\n const cleanups = cleanupMap.get(effect);\n if (cleanups) {\n if (call) {\n call(cleanups, 4);\n } else {\n for (const cleanup2 of cleanups) cleanup2();\n }\n cleanupMap.delete(effect);\n }\n };\n if (!!(process.env.NODE_ENV !== \"production\")) {\n effect.onTrack = options.onTrack;\n effect.onTrigger = options.onTrigger;\n }\n if (cb) {\n if (immediate) {\n job(true);\n } else {\n oldValue = effect.run();\n }\n } else if (scheduler) {\n scheduler(job.bind(null, true), true);\n } else {\n effect.run();\n }\n watchHandle.pause = effect.pause.bind(effect);\n watchHandle.resume = effect.resume.bind(effect);\n watchHandle.stop = watchHandle;\n return watchHandle;\n}\nfunction traverse(value, depth = Infinity, seen) {\n if (depth <= 0 || !isObject(value) || value[\"__v_skip\"]) {\n return value;\n }\n seen = seen || /* @__PURE__ */ new Set();\n if (seen.has(value)) {\n return value;\n }\n seen.add(value);\n depth--;\n if (isRef(value)) {\n traverse(value.value, depth, seen);\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n traverse(value[i], depth, seen);\n }\n } else if (isSet(value) || isMap(value)) {\n value.forEach((v) => {\n traverse(v, depth, seen);\n });\n } else if (isPlainObject(value)) {\n for (const key in value) {\n traverse(value[key], depth, seen);\n }\n for (const key of Object.getOwnPropertySymbols(value)) {\n if (Object.prototype.propertyIsEnumerable.call(value, key)) {\n traverse(value[key], depth, seen);\n }\n }\n }\n return value;\n}\n\nexport { ARRAY_ITERATE_KEY, EffectFlags, EffectScope, ITERATE_KEY, MAP_KEY_ITERATE_KEY, ReactiveEffect, ReactiveFlags, TrackOpTypes, TriggerOpTypes, WatchErrorCodes, computed, customRef, effect, effectScope, enableTracking, getCurrentScope, getCurrentWatcher, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onEffectCleanup, onScopeDispose, onWatcherCleanup, pauseTracking, proxyRefs, reactive, reactiveReadArray, readonly, ref, resetTracking, shallowReactive, shallowReadArray, shallowReadonly, shallowRef, stop, toRaw, toReactive, toReadonly, toRef, toRefs, toValue, track, traverse, trigger, triggerRef, unref, watch };\n","/**\n* @vue/runtime-core v3.5.13\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\nimport { pauseTracking, resetTracking, isRef, toRaw, traverse, shallowRef, readonly, isReactive, ref, isShallow, shallowReadArray, toReactive, shallowReadonly, track, reactive, shallowReactive, trigger, ReactiveEffect, watch as watch$1, customRef, isProxy, proxyRefs, markRaw, EffectScope, computed as computed$1, isReadonly } from '@vue/reactivity';\nexport { EffectScope, ReactiveEffect, TrackOpTypes, TriggerOpTypes, customRef, effect, effectScope, getCurrentScope, getCurrentWatcher, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onScopeDispose, onWatcherCleanup, proxyRefs, reactive, readonly, ref, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, toValue, triggerRef, unref } from '@vue/reactivity';\nimport { isString, isFunction, isPromise, isArray, EMPTY_OBJ, NOOP, getGlobalThis, extend, isBuiltInDirective, hasOwn, remove, def, isOn, isReservedProp, normalizeClass, stringifyStyle, normalizeStyle, isKnownSvgAttr, isBooleanAttr, isKnownHtmlAttr, includeBooleanAttr, isRenderableAttrValue, getEscapedCssVarName, isObject, isRegExp, invokeArrayFns, toHandlerKey, capitalize, camelize, isSymbol, isGloballyAllowed, NO, hyphenate, EMPTY_ARR, toRawType, makeMap, hasChanged, looseToNumber, isModelListener, toNumber } from '@vue/shared';\nexport { camelize, capitalize, normalizeClass, normalizeProps, normalizeStyle, toDisplayString, toHandlerKey } from '@vue/shared';\n\nconst stack = [];\nfunction pushWarningContext(vnode) {\n stack.push(vnode);\n}\nfunction popWarningContext() {\n stack.pop();\n}\nlet isWarning = false;\nfunction warn$1(msg, ...args) {\n if (isWarning) return;\n isWarning = true;\n pauseTracking();\n const instance = stack.length ? stack[stack.length - 1].component : null;\n const appWarnHandler = instance && instance.appContext.config.warnHandler;\n const trace = getComponentTrace();\n if (appWarnHandler) {\n callWithErrorHandling(\n appWarnHandler,\n instance,\n 11,\n [\n // eslint-disable-next-line no-restricted-syntax\n msg + args.map((a) => {\n var _a, _b;\n return (_b = (_a = a.toString) == null ? void 0 : _a.call(a)) != null ? _b : JSON.stringify(a);\n }).join(\"\"),\n instance && instance.proxy,\n trace.map(\n ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>`\n ).join(\"\\n\"),\n trace\n ]\n );\n } else {\n const warnArgs = [`[Vue warn]: ${msg}`, ...args];\n if (trace.length && // avoid spamming console during tests\n true) {\n warnArgs.push(`\n`, ...formatTrace(trace));\n }\n console.warn(...warnArgs);\n }\n resetTracking();\n isWarning = false;\n}\nfunction getComponentTrace() {\n let currentVNode = stack[stack.length - 1];\n if (!currentVNode) {\n return [];\n }\n const normalizedStack = [];\n while (currentVNode) {\n const last = normalizedStack[0];\n if (last && last.vnode === currentVNode) {\n last.recurseCount++;\n } else {\n normalizedStack.push({\n vnode: currentVNode,\n recurseCount: 0\n });\n }\n const parentInstance = currentVNode.component && currentVNode.component.parent;\n currentVNode = parentInstance && parentInstance.vnode;\n }\n return normalizedStack;\n}\nfunction formatTrace(trace) {\n const logs = [];\n trace.forEach((entry, i) => {\n logs.push(...i === 0 ? [] : [`\n`], ...formatTraceEntry(entry));\n });\n return logs;\n}\nfunction formatTraceEntry({ vnode, recurseCount }) {\n const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``;\n const isRoot = vnode.component ? vnode.component.parent == null : false;\n const open = ` at <${formatComponentName(\n vnode.component,\n vnode.type,\n isRoot\n )}`;\n const close = `>` + postfix;\n return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close];\n}\nfunction formatProps(props) {\n const res = [];\n const keys = Object.keys(props);\n keys.slice(0, 3).forEach((key) => {\n res.push(...formatProp(key, props[key]));\n });\n if (keys.length > 3) {\n res.push(` ...`);\n }\n return res;\n}\nfunction formatProp(key, value, raw) {\n if (isString(value)) {\n value = JSON.stringify(value);\n return raw ? value : [`${key}=${value}`];\n } else if (typeof value === \"number\" || typeof value === \"boolean\" || value == null) {\n return raw ? value : [`${key}=${value}`];\n } else if (isRef(value)) {\n value = formatProp(key, toRaw(value.value), true);\n return raw ? value : [`${key}=Ref<`, value, `>`];\n } else if (isFunction(value)) {\n return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];\n } else {\n value = toRaw(value);\n return raw ? value : [`${key}=`, value];\n }\n}\nfunction assertNumber(val, type) {\n if (!!!(process.env.NODE_ENV !== \"production\")) return;\n if (val === void 0) {\n return;\n } else if (typeof val !== \"number\") {\n warn$1(`${type} is not a valid number - got ${JSON.stringify(val)}.`);\n } else if (isNaN(val)) {\n warn$1(`${type} is NaN - the duration expression might be incorrect.`);\n }\n}\n\nconst ErrorCodes = {\n \"SETUP_FUNCTION\": 0,\n \"0\": \"SETUP_FUNCTION\",\n \"RENDER_FUNCTION\": 1,\n \"1\": \"RENDER_FUNCTION\",\n \"NATIVE_EVENT_HANDLER\": 5,\n \"5\": \"NATIVE_EVENT_HANDLER\",\n \"COMPONENT_EVENT_HANDLER\": 6,\n \"6\": \"COMPONENT_EVENT_HANDLER\",\n \"VNODE_HOOK\": 7,\n \"7\": \"VNODE_HOOK\",\n \"DIRECTIVE_HOOK\": 8,\n \"8\": \"DIRECTIVE_HOOK\",\n \"TRANSITION_HOOK\": 9,\n \"9\": \"TRANSITION_HOOK\",\n \"APP_ERROR_HANDLER\": 10,\n \"10\": \"APP_ERROR_HANDLER\",\n \"APP_WARN_HANDLER\": 11,\n \"11\": \"APP_WARN_HANDLER\",\n \"FUNCTION_REF\": 12,\n \"12\": \"FUNCTION_REF\",\n \"ASYNC_COMPONENT_LOADER\": 13,\n \"13\": \"ASYNC_COMPONENT_LOADER\",\n \"SCHEDULER\": 14,\n \"14\": \"SCHEDULER\",\n \"COMPONENT_UPDATE\": 15,\n \"15\": \"COMPONENT_UPDATE\",\n \"APP_UNMOUNT_CLEANUP\": 16,\n \"16\": \"APP_UNMOUNT_CLEANUP\"\n};\nconst ErrorTypeStrings$1 = {\n [\"sp\"]: \"serverPrefetch hook\",\n [\"bc\"]: \"beforeCreate hook\",\n [\"c\"]: \"created hook\",\n [\"bm\"]: \"beforeMount hook\",\n [\"m\"]: \"mounted hook\",\n [\"bu\"]: \"beforeUpdate hook\",\n [\"u\"]: \"updated\",\n [\"bum\"]: \"beforeUnmount hook\",\n [\"um\"]: \"unmounted hook\",\n [\"a\"]: \"activated hook\",\n [\"da\"]: \"deactivated hook\",\n [\"ec\"]: \"errorCaptured hook\",\n [\"rtc\"]: \"renderTracked hook\",\n [\"rtg\"]: \"renderTriggered hook\",\n [0]: \"setup function\",\n [1]: \"render function\",\n [2]: \"watcher getter\",\n [3]: \"watcher callback\",\n [4]: \"watcher cleanup function\",\n [5]: \"native event handler\",\n [6]: \"component event handler\",\n [7]: \"vnode hook\",\n [8]: \"directive hook\",\n [9]: \"transition hook\",\n [10]: \"app errorHandler\",\n [11]: \"app warnHandler\",\n [12]: \"ref function\",\n [13]: \"async component loader\",\n [14]: \"scheduler flush\",\n [15]: \"component update\",\n [16]: \"app unmount cleanup function\"\n};\nfunction callWithErrorHandling(fn, instance, type, args) {\n try {\n return args ? fn(...args) : fn();\n } catch (err) {\n handleError(err, instance, type);\n }\n}\nfunction callWithAsyncErrorHandling(fn, instance, type, args) {\n if (isFunction(fn)) {\n const res = callWithErrorHandling(fn, instance, type, args);\n if (res && isPromise(res)) {\n res.catch((err) => {\n handleError(err, instance, type);\n });\n }\n return res;\n }\n if (isArray(fn)) {\n const values = [];\n for (let i = 0; i < fn.length; i++) {\n values.push(callWithAsyncErrorHandling(fn[i], instance, type, args));\n }\n return values;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `Invalid value type passed to callWithAsyncErrorHandling(): ${typeof fn}`\n );\n }\n}\nfunction handleError(err, instance, type, throwInDev = true) {\n const contextVNode = instance ? instance.vnode : null;\n const { errorHandler, throwUnhandledErrorInProduction } = instance && instance.appContext.config || EMPTY_OBJ;\n if (instance) {\n let cur = instance.parent;\n const exposedInstance = instance.proxy;\n const errorInfo = !!(process.env.NODE_ENV !== \"production\") ? ErrorTypeStrings$1[type] : `https://vuejs.org/error-reference/#runtime-${type}`;\n while (cur) {\n const errorCapturedHooks = cur.ec;\n if (errorCapturedHooks) {\n for (let i = 0; i < errorCapturedHooks.length; i++) {\n if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) {\n return;\n }\n }\n }\n cur = cur.parent;\n }\n if (errorHandler) {\n pauseTracking();\n callWithErrorHandling(errorHandler, null, 10, [\n err,\n exposedInstance,\n errorInfo\n ]);\n resetTracking();\n return;\n }\n }\n logError(err, type, contextVNode, throwInDev, throwUnhandledErrorInProduction);\n}\nfunction logError(err, type, contextVNode, throwInDev = true, throwInProd = false) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const info = ErrorTypeStrings$1[type];\n if (contextVNode) {\n pushWarningContext(contextVNode);\n }\n warn$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`);\n if (contextVNode) {\n popWarningContext();\n }\n if (throwInDev) {\n throw err;\n } else {\n console.error(err);\n }\n } else if (throwInProd) {\n throw err;\n } else {\n console.error(err);\n }\n}\n\nconst queue = [];\nlet flushIndex = -1;\nconst pendingPostFlushCbs = [];\nlet activePostFlushCbs = null;\nlet postFlushIndex = 0;\nconst resolvedPromise = /* @__PURE__ */ Promise.resolve();\nlet currentFlushPromise = null;\nconst RECURSION_LIMIT = 100;\nfunction nextTick(fn) {\n const p = currentFlushPromise || resolvedPromise;\n return fn ? p.then(this ? fn.bind(this) : fn) : p;\n}\nfunction findInsertionIndex(id) {\n let start = flushIndex + 1;\n let end = queue.length;\n while (start < end) {\n const middle = start + end >>> 1;\n const middleJob = queue[middle];\n const middleJobId = getId(middleJob);\n if (middleJobId < id || middleJobId === id && middleJob.flags & 2) {\n start = middle + 1;\n } else {\n end = middle;\n }\n }\n return start;\n}\nfunction queueJob(job) {\n if (!(job.flags & 1)) {\n const jobId = getId(job);\n const lastJob = queue[queue.length - 1];\n if (!lastJob || // fast path when the job id is larger than the tail\n !(job.flags & 2) && jobId >= getId(lastJob)) {\n queue.push(job);\n } else {\n queue.splice(findInsertionIndex(jobId), 0, job);\n }\n job.flags |= 1;\n queueFlush();\n }\n}\nfunction queueFlush() {\n if (!currentFlushPromise) {\n currentFlushPromise = resolvedPromise.then(flushJobs);\n }\n}\nfunction queuePostFlushCb(cb) {\n if (!isArray(cb)) {\n if (activePostFlushCbs && cb.id === -1) {\n activePostFlushCbs.splice(postFlushIndex + 1, 0, cb);\n } else if (!(cb.flags & 1)) {\n pendingPostFlushCbs.push(cb);\n cb.flags |= 1;\n }\n } else {\n pendingPostFlushCbs.push(...cb);\n }\n queueFlush();\n}\nfunction flushPreFlushCbs(instance, seen, i = flushIndex + 1) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n for (; i < queue.length; i++) {\n const cb = queue[i];\n if (cb && cb.flags & 2) {\n if (instance && cb.id !== instance.uid) {\n continue;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && checkRecursiveUpdates(seen, cb)) {\n continue;\n }\n queue.splice(i, 1);\n i--;\n if (cb.flags & 4) {\n cb.flags &= ~1;\n }\n cb();\n if (!(cb.flags & 4)) {\n cb.flags &= ~1;\n }\n }\n }\n}\nfunction flushPostFlushCbs(seen) {\n if (pendingPostFlushCbs.length) {\n const deduped = [...new Set(pendingPostFlushCbs)].sort(\n (a, b) => getId(a) - getId(b)\n );\n pendingPostFlushCbs.length = 0;\n if (activePostFlushCbs) {\n activePostFlushCbs.push(...deduped);\n return;\n }\n activePostFlushCbs = deduped;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {\n const cb = activePostFlushCbs[postFlushIndex];\n if (!!(process.env.NODE_ENV !== \"production\") && checkRecursiveUpdates(seen, cb)) {\n continue;\n }\n if (cb.flags & 4) {\n cb.flags &= ~1;\n }\n if (!(cb.flags & 8)) cb();\n cb.flags &= ~1;\n }\n activePostFlushCbs = null;\n postFlushIndex = 0;\n }\n}\nconst getId = (job) => job.id == null ? job.flags & 2 ? -1 : Infinity : job.id;\nfunction flushJobs(seen) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n const check = !!(process.env.NODE_ENV !== \"production\") ? (job) => checkRecursiveUpdates(seen, job) : NOOP;\n try {\n for (flushIndex = 0; flushIndex < queue.length; flushIndex++) {\n const job = queue[flushIndex];\n if (job && !(job.flags & 8)) {\n if (!!(process.env.NODE_ENV !== \"production\") && check(job)) {\n continue;\n }\n if (job.flags & 4) {\n job.flags &= ~1;\n }\n callWithErrorHandling(\n job,\n job.i,\n job.i ? 15 : 14\n );\n if (!(job.flags & 4)) {\n job.flags &= ~1;\n }\n }\n }\n } finally {\n for (; flushIndex < queue.length; flushIndex++) {\n const job = queue[flushIndex];\n if (job) {\n job.flags &= ~1;\n }\n }\n flushIndex = -1;\n queue.length = 0;\n flushPostFlushCbs(seen);\n currentFlushPromise = null;\n if (queue.length || pendingPostFlushCbs.length) {\n flushJobs(seen);\n }\n }\n}\nfunction checkRecursiveUpdates(seen, fn) {\n const count = seen.get(fn) || 0;\n if (count > RECURSION_LIMIT) {\n const instance = fn.i;\n const componentName = instance && getComponentName(instance.type);\n handleError(\n `Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,\n null,\n 10\n );\n return true;\n }\n seen.set(fn, count + 1);\n return false;\n}\n\nlet isHmrUpdating = false;\nconst hmrDirtyComponents = /* @__PURE__ */ new Map();\nif (!!(process.env.NODE_ENV !== \"production\")) {\n getGlobalThis().__VUE_HMR_RUNTIME__ = {\n createRecord: tryWrap(createRecord),\n rerender: tryWrap(rerender),\n reload: tryWrap(reload)\n };\n}\nconst map = /* @__PURE__ */ new Map();\nfunction registerHMR(instance) {\n const id = instance.type.__hmrId;\n let record = map.get(id);\n if (!record) {\n createRecord(id, instance.type);\n record = map.get(id);\n }\n record.instances.add(instance);\n}\nfunction unregisterHMR(instance) {\n map.get(instance.type.__hmrId).instances.delete(instance);\n}\nfunction createRecord(id, initialDef) {\n if (map.has(id)) {\n return false;\n }\n map.set(id, {\n initialDef: normalizeClassComponent(initialDef),\n instances: /* @__PURE__ */ new Set()\n });\n return true;\n}\nfunction normalizeClassComponent(component) {\n return isClassComponent(component) ? component.__vccOpts : component;\n}\nfunction rerender(id, newRender) {\n const record = map.get(id);\n if (!record) {\n return;\n }\n record.initialDef.render = newRender;\n [...record.instances].forEach((instance) => {\n if (newRender) {\n instance.render = newRender;\n normalizeClassComponent(instance.type).render = newRender;\n }\n instance.renderCache = [];\n isHmrUpdating = true;\n instance.update();\n isHmrUpdating = false;\n });\n}\nfunction reload(id, newComp) {\n const record = map.get(id);\n if (!record) return;\n newComp = normalizeClassComponent(newComp);\n updateComponentDef(record.initialDef, newComp);\n const instances = [...record.instances];\n for (let i = 0; i < instances.length; i++) {\n const instance = instances[i];\n const oldComp = normalizeClassComponent(instance.type);\n let dirtyInstances = hmrDirtyComponents.get(oldComp);\n if (!dirtyInstances) {\n if (oldComp !== record.initialDef) {\n updateComponentDef(oldComp, newComp);\n }\n hmrDirtyComponents.set(oldComp, dirtyInstances = /* @__PURE__ */ new Set());\n }\n dirtyInstances.add(instance);\n instance.appContext.propsCache.delete(instance.type);\n instance.appContext.emitsCache.delete(instance.type);\n instance.appContext.optionsCache.delete(instance.type);\n if (instance.ceReload) {\n dirtyInstances.add(instance);\n instance.ceReload(newComp.styles);\n dirtyInstances.delete(instance);\n } else if (instance.parent) {\n queueJob(() => {\n isHmrUpdating = true;\n instance.parent.update();\n isHmrUpdating = false;\n dirtyInstances.delete(instance);\n });\n } else if (instance.appContext.reload) {\n instance.appContext.reload();\n } else if (typeof window !== \"undefined\") {\n window.location.reload();\n } else {\n console.warn(\n \"[HMR] Root or manually mounted instance modified. Full reload required.\"\n );\n }\n if (instance.root.ce && instance !== instance.root) {\n instance.root.ce._removeChildStyle(oldComp);\n }\n }\n queuePostFlushCb(() => {\n hmrDirtyComponents.clear();\n });\n}\nfunction updateComponentDef(oldComp, newComp) {\n extend(oldComp, newComp);\n for (const key in oldComp) {\n if (key !== \"__file\" && !(key in newComp)) {\n delete oldComp[key];\n }\n }\n}\nfunction tryWrap(fn) {\n return (id, arg) => {\n try {\n return fn(id, arg);\n } catch (e) {\n console.error(e);\n console.warn(\n `[HMR] Something went wrong during Vue component hot-reload. Full reload required.`\n );\n }\n };\n}\n\nlet devtools$1;\nlet buffer = [];\nlet devtoolsNotInstalled = false;\nfunction emit$1(event, ...args) {\n if (devtools$1) {\n devtools$1.emit(event, ...args);\n } else if (!devtoolsNotInstalled) {\n buffer.push({ event, args });\n }\n}\nfunction setDevtoolsHook$1(hook, target) {\n var _a, _b;\n devtools$1 = hook;\n if (devtools$1) {\n devtools$1.enabled = true;\n buffer.forEach(({ event, args }) => devtools$1.emit(event, ...args));\n buffer = [];\n } else if (\n // handle late devtools injection - only do this if we are in an actual\n // browser environment to avoid the timer handle stalling test runner exit\n // (#4815)\n typeof window !== \"undefined\" && // some envs mock window but not fully\n window.HTMLElement && // also exclude jsdom\n // eslint-disable-next-line no-restricted-syntax\n !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes(\"jsdom\"))\n ) {\n const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || [];\n replay.push((newHook) => {\n setDevtoolsHook$1(newHook, target);\n });\n setTimeout(() => {\n if (!devtools$1) {\n target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null;\n devtoolsNotInstalled = true;\n buffer = [];\n }\n }, 3e3);\n } else {\n devtoolsNotInstalled = true;\n buffer = [];\n }\n}\nfunction devtoolsInitApp(app, version) {\n emit$1(\"app:init\" /* APP_INIT */, app, version, {\n Fragment,\n Text,\n Comment,\n Static\n });\n}\nfunction devtoolsUnmountApp(app) {\n emit$1(\"app:unmount\" /* APP_UNMOUNT */, app);\n}\nconst devtoolsComponentAdded = /* @__PURE__ */ createDevtoolsComponentHook(\"component:added\" /* COMPONENT_ADDED */);\nconst devtoolsComponentUpdated = /* @__PURE__ */ createDevtoolsComponentHook(\"component:updated\" /* COMPONENT_UPDATED */);\nconst _devtoolsComponentRemoved = /* @__PURE__ */ createDevtoolsComponentHook(\n \"component:removed\" /* COMPONENT_REMOVED */\n);\nconst devtoolsComponentRemoved = (component) => {\n if (devtools$1 && typeof devtools$1.cleanupBuffer === \"function\" && // remove the component if it wasn't buffered\n !devtools$1.cleanupBuffer(component)) {\n _devtoolsComponentRemoved(component);\n }\n};\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction createDevtoolsComponentHook(hook) {\n return (component) => {\n emit$1(\n hook,\n component.appContext.app,\n component.uid,\n component.parent ? component.parent.uid : void 0,\n component\n );\n };\n}\nconst devtoolsPerfStart = /* @__PURE__ */ createDevtoolsPerformanceHook(\"perf:start\" /* PERFORMANCE_START */);\nconst devtoolsPerfEnd = /* @__PURE__ */ createDevtoolsPerformanceHook(\"perf:end\" /* PERFORMANCE_END */);\nfunction createDevtoolsPerformanceHook(hook) {\n return (component, type, time) => {\n emit$1(hook, component.appContext.app, component.uid, component, type, time);\n };\n}\nfunction devtoolsComponentEmit(component, event, params) {\n emit$1(\n \"component:emit\" /* COMPONENT_EMIT */,\n component.appContext.app,\n component,\n event,\n params\n );\n}\n\nlet currentRenderingInstance = null;\nlet currentScopeId = null;\nfunction setCurrentRenderingInstance(instance) {\n const prev = currentRenderingInstance;\n currentRenderingInstance = instance;\n currentScopeId = instance && instance.type.__scopeId || null;\n return prev;\n}\nfunction pushScopeId(id) {\n currentScopeId = id;\n}\nfunction popScopeId() {\n currentScopeId = null;\n}\nconst withScopeId = (_id) => withCtx;\nfunction withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) {\n if (!ctx) return fn;\n if (fn._n) {\n return fn;\n }\n const renderFnWithContext = (...args) => {\n if (renderFnWithContext._d) {\n setBlockTracking(-1);\n }\n const prevInstance = setCurrentRenderingInstance(ctx);\n let res;\n try {\n res = fn(...args);\n } finally {\n setCurrentRenderingInstance(prevInstance);\n if (renderFnWithContext._d) {\n setBlockTracking(1);\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentUpdated(ctx);\n }\n return res;\n };\n renderFnWithContext._n = true;\n renderFnWithContext._c = true;\n renderFnWithContext._d = true;\n return renderFnWithContext;\n}\n\nfunction validateDirectiveName(name) {\n if (isBuiltInDirective(name)) {\n warn$1(\"Do not use built-in directive ids as custom directive id: \" + name);\n }\n}\nfunction withDirectives(vnode, directives) {\n if (currentRenderingInstance === null) {\n !!(process.env.NODE_ENV !== \"production\") && warn$1(`withDirectives can only be used inside render functions.`);\n return vnode;\n }\n const instance = getComponentPublicInstance(currentRenderingInstance);\n const bindings = vnode.dirs || (vnode.dirs = []);\n for (let i = 0; i < directives.length; i++) {\n let [dir, value, arg, modifiers = EMPTY_OBJ] = directives[i];\n if (dir) {\n if (isFunction(dir)) {\n dir = {\n mounted: dir,\n updated: dir\n };\n }\n if (dir.deep) {\n traverse(value);\n }\n bindings.push({\n dir,\n instance,\n value,\n oldValue: void 0,\n arg,\n modifiers\n });\n }\n }\n return vnode;\n}\nfunction invokeDirectiveHook(vnode, prevVNode, instance, name) {\n const bindings = vnode.dirs;\n const oldBindings = prevVNode && prevVNode.dirs;\n for (let i = 0; i < bindings.length; i++) {\n const binding = bindings[i];\n if (oldBindings) {\n binding.oldValue = oldBindings[i].value;\n }\n let hook = binding.dir[name];\n if (hook) {\n pauseTracking();\n callWithAsyncErrorHandling(hook, instance, 8, [\n vnode.el,\n binding,\n vnode,\n prevVNode\n ]);\n resetTracking();\n }\n }\n}\n\nconst TeleportEndKey = Symbol(\"_vte\");\nconst isTeleport = (type) => type.__isTeleport;\nconst isTeleportDisabled = (props) => props && (props.disabled || props.disabled === \"\");\nconst isTeleportDeferred = (props) => props && (props.defer || props.defer === \"\");\nconst isTargetSVG = (target) => typeof SVGElement !== \"undefined\" && target instanceof SVGElement;\nconst isTargetMathML = (target) => typeof MathMLElement === \"function\" && target instanceof MathMLElement;\nconst resolveTarget = (props, select) => {\n const targetSelector = props && props.to;\n if (isString(targetSelector)) {\n if (!select) {\n !!(process.env.NODE_ENV !== \"production\") && warn$1(\n `Current renderer does not support string target for Teleports. (missing querySelector renderer option)`\n );\n return null;\n } else {\n const target = select(targetSelector);\n if (!!(process.env.NODE_ENV !== \"production\") && !target && !isTeleportDisabled(props)) {\n warn$1(\n `Failed to locate Teleport target with selector \"${targetSelector}\". Note the target element must exist before the component is mounted - i.e. the target cannot be rendered by the component itself, and ideally should be outside of the entire Vue component tree.`\n );\n }\n return target;\n }\n } else {\n if (!!(process.env.NODE_ENV !== \"production\") && !targetSelector && !isTeleportDisabled(props)) {\n warn$1(`Invalid Teleport target: ${targetSelector}`);\n }\n return targetSelector;\n }\n};\nconst TeleportImpl = {\n name: \"Teleport\",\n __isTeleport: true,\n process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, internals) {\n const {\n mc: mountChildren,\n pc: patchChildren,\n pbc: patchBlockChildren,\n o: { insert, querySelector, createText, createComment }\n } = internals;\n const disabled = isTeleportDisabled(n2.props);\n let { shapeFlag, children, dynamicChildren } = n2;\n if (!!(process.env.NODE_ENV !== \"production\") && isHmrUpdating) {\n optimized = false;\n dynamicChildren = null;\n }\n if (n1 == null) {\n const placeholder = n2.el = !!(process.env.NODE_ENV !== \"production\") ? createComment(\"teleport start\") : createText(\"\");\n const mainAnchor = n2.anchor = !!(process.env.NODE_ENV !== \"production\") ? createComment(\"teleport end\") : createText(\"\");\n insert(placeholder, container, anchor);\n insert(mainAnchor, container, anchor);\n const mount = (container2, anchor2) => {\n if (shapeFlag & 16) {\n if (parentComponent && parentComponent.isCE) {\n parentComponent.ce._teleportTarget = container2;\n }\n mountChildren(\n children,\n container2,\n anchor2,\n parentComponent,\n parentSuspense,\n namespace,\n slotScopeIds,\n optimized\n );\n }\n };\n const mountToTarget = () => {\n const target = n2.target = resolveTarget(n2.props, querySelector);\n const targetAnchor = prepareAnchor(target, n2, createText, insert);\n if (target) {\n if (namespace !== \"svg\" && isTargetSVG(target)) {\n namespace = \"svg\";\n } else if (namespace !== \"mathml\" && isTargetMathML(target)) {\n namespace = \"mathml\";\n }\n if (!disabled) {\n mount(target, targetAnchor);\n updateCssVars(n2, false);\n }\n } else if (!!(process.env.NODE_ENV !== \"production\") && !disabled) {\n warn$1(\n \"Invalid Teleport target on mount:\",\n target,\n `(${typeof target})`\n );\n }\n };\n if (disabled) {\n mount(container, mainAnchor);\n updateCssVars(n2, true);\n }\n if (isTeleportDeferred(n2.props)) {\n queuePostRenderEffect(() => {\n mountToTarget();\n n2.el.__isMounted = true;\n }, parentSuspense);\n } else {\n mountToTarget();\n }\n } else {\n if (isTeleportDeferred(n2.props) && !n1.el.__isMounted) {\n queuePostRenderEffect(() => {\n TeleportImpl.process(\n n1,\n n2,\n container,\n anchor,\n parentComponent,\n parentSuspense,\n namespace,\n slotScopeIds,\n optimized,\n internals\n );\n delete n1.el.__isMounted;\n }, parentSuspense);\n return;\n }\n n2.el = n1.el;\n n2.targetStart = n1.targetStart;\n const mainAnchor = n2.anchor = n1.anchor;\n const target = n2.target = n1.target;\n const targetAnchor = n2.targetAnchor = n1.targetAnchor;\n const wasDisabled = isTeleportDisabled(n1.props);\n const currentContainer = wasDisabled ? container : target;\n const currentAnchor = wasDisabled ? mainAnchor : targetAnchor;\n if (namespace === \"svg\" || isTargetSVG(target)) {\n namespace = \"svg\";\n } else if (namespace === \"mathml\" || isTargetMathML(target)) {\n namespace = \"mathml\";\n }\n if (dynamicChildren) {\n patchBlockChildren(\n n1.dynamicChildren,\n dynamicChildren,\n currentContainer,\n parentComponent,\n parentSuspense,\n namespace,\n slotScopeIds\n );\n traverseStaticChildren(n1, n2, true);\n } else if (!optimized) {\n patchChildren(\n n1,\n n2,\n currentContainer,\n currentAnchor,\n parentComponent,\n parentSuspense,\n namespace,\n slotScopeIds,\n false\n );\n }\n if (disabled) {\n if (!wasDisabled) {\n moveTeleport(\n n2,\n container,\n mainAnchor,\n internals,\n 1\n );\n } else {\n if (n2.props && n1.props && n2.props.to !== n1.props.to) {\n n2.props.to = n1.props.to;\n }\n }\n } else {\n if ((n2.props && n2.props.to) !== (n1.props && n1.props.to)) {\n const nextTarget = n2.target = resolveTarget(\n n2.props,\n querySelector\n );\n if (nextTarget) {\n moveTeleport(\n n2,\n nextTarget,\n null,\n internals,\n 0\n );\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n \"Invalid Teleport target on update:\",\n target,\n `(${typeof target})`\n );\n }\n } else if (wasDisabled) {\n moveTeleport(\n n2,\n target,\n targetAnchor,\n internals,\n 1\n );\n }\n }\n updateCssVars(n2, disabled);\n }\n },\n remove(vnode, parentComponent, parentSuspense, { um: unmount, o: { remove: hostRemove } }, doRemove) {\n const {\n shapeFlag,\n children,\n anchor,\n targetStart,\n targetAnchor,\n target,\n props\n } = vnode;\n if (target) {\n hostRemove(targetStart);\n hostRemove(targetAnchor);\n }\n doRemove && hostRemove(anchor);\n if (shapeFlag & 16) {\n const shouldRemove = doRemove || !isTeleportDisabled(props);\n for (let i = 0; i < children.length; i++) {\n const child = children[i];\n unmount(\n child,\n parentComponent,\n parentSuspense,\n shouldRemove,\n !!child.dynamicChildren\n );\n }\n }\n },\n move: moveTeleport,\n hydrate: hydrateTeleport\n};\nfunction moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }, moveType = 2) {\n if (moveType === 0) {\n insert(vnode.targetAnchor, container, parentAnchor);\n }\n const { el, anchor, shapeFlag, children, props } = vnode;\n const isReorder = moveType === 2;\n if (isReorder) {\n insert(el, container, parentAnchor);\n }\n if (!isReorder || isTeleportDisabled(props)) {\n if (shapeFlag & 16) {\n for (let i = 0; i < children.length; i++) {\n move(\n children[i],\n container,\n parentAnchor,\n 2\n );\n }\n }\n }\n if (isReorder) {\n insert(anchor, container, parentAnchor);\n }\n}\nfunction hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, {\n o: { nextSibling, parentNode, querySelector, insert, createText }\n}, hydrateChildren) {\n const target = vnode.target = resolveTarget(\n vnode.props,\n querySelector\n );\n if (target) {\n const disabled = isTeleportDisabled(vnode.props);\n const targetNode = target._lpa || target.firstChild;\n if (vnode.shapeFlag & 16) {\n if (disabled) {\n vnode.anchor = hydrateChildren(\n nextSibling(node),\n vnode,\n parentNode(node),\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n vnode.targetStart = targetNode;\n vnode.targetAnchor = targetNode && nextSibling(targetNode);\n } else {\n vnode.anchor = nextSibling(node);\n let targetAnchor = targetNode;\n while (targetAnchor) {\n if (targetAnchor && targetAnchor.nodeType === 8) {\n if (targetAnchor.data === \"teleport start anchor\") {\n vnode.targetStart = targetAnchor;\n } else if (targetAnchor.data === \"teleport anchor\") {\n vnode.targetAnchor = targetAnchor;\n target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);\n break;\n }\n }\n targetAnchor = nextSibling(targetAnchor);\n }\n if (!vnode.targetAnchor) {\n prepareAnchor(target, vnode, createText, insert);\n }\n hydrateChildren(\n targetNode && nextSibling(targetNode),\n vnode,\n target,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n }\n }\n updateCssVars(vnode, disabled);\n }\n return vnode.anchor && nextSibling(vnode.anchor);\n}\nconst Teleport = TeleportImpl;\nfunction updateCssVars(vnode, isDisabled) {\n const ctx = vnode.ctx;\n if (ctx && ctx.ut) {\n let node, anchor;\n if (isDisabled) {\n node = vnode.el;\n anchor = vnode.anchor;\n } else {\n node = vnode.targetStart;\n anchor = vnode.targetAnchor;\n }\n while (node && node !== anchor) {\n if (node.nodeType === 1) node.setAttribute(\"data-v-owner\", ctx.uid);\n node = node.nextSibling;\n }\n ctx.ut();\n }\n}\nfunction prepareAnchor(target, vnode, createText, insert) {\n const targetStart = vnode.targetStart = createText(\"\");\n const targetAnchor = vnode.targetAnchor = createText(\"\");\n targetStart[TeleportEndKey] = targetAnchor;\n if (target) {\n insert(targetStart, target);\n insert(targetAnchor, target);\n }\n return targetAnchor;\n}\n\nconst leaveCbKey = Symbol(\"_leaveCb\");\nconst enterCbKey = Symbol(\"_enterCb\");\nfunction useTransitionState() {\n const state = {\n isMounted: false,\n isLeaving: false,\n isUnmounting: false,\n leavingVNodes: /* @__PURE__ */ new Map()\n };\n onMounted(() => {\n state.isMounted = true;\n });\n onBeforeUnmount(() => {\n state.isUnmounting = true;\n });\n return state;\n}\nconst TransitionHookValidator = [Function, Array];\nconst BaseTransitionPropsValidators = {\n mode: String,\n appear: Boolean,\n persisted: Boolean,\n // enter\n onBeforeEnter: TransitionHookValidator,\n onEnter: TransitionHookValidator,\n onAfterEnter: TransitionHookValidator,\n onEnterCancelled: TransitionHookValidator,\n // leave\n onBeforeLeave: TransitionHookValidator,\n onLeave: TransitionHookValidator,\n onAfterLeave: TransitionHookValidator,\n onLeaveCancelled: TransitionHookValidator,\n // appear\n onBeforeAppear: TransitionHookValidator,\n onAppear: TransitionHookValidator,\n onAfterAppear: TransitionHookValidator,\n onAppearCancelled: TransitionHookValidator\n};\nconst recursiveGetSubtree = (instance) => {\n const subTree = instance.subTree;\n return subTree.component ? recursiveGetSubtree(subTree.component) : subTree;\n};\nconst BaseTransitionImpl = {\n name: `BaseTransition`,\n props: BaseTransitionPropsValidators,\n setup(props, { slots }) {\n const instance = getCurrentInstance();\n const state = useTransitionState();\n return () => {\n const children = slots.default && getTransitionRawChildren(slots.default(), true);\n if (!children || !children.length) {\n return;\n }\n const child = findNonCommentChild(children);\n const rawProps = toRaw(props);\n const { mode } = rawProps;\n if (!!(process.env.NODE_ENV !== \"production\") && mode && mode !== \"in-out\" && mode !== \"out-in\" && mode !== \"default\") {\n warn$1(`invalid mode: ${mode}`);\n }\n if (state.isLeaving) {\n return emptyPlaceholder(child);\n }\n const innerChild = getInnerChild$1(child);\n if (!innerChild) {\n return emptyPlaceholder(child);\n }\n let enterHooks = resolveTransitionHooks(\n innerChild,\n rawProps,\n state,\n instance,\n // #11061, ensure enterHooks is fresh after clone\n (hooks) => enterHooks = hooks\n );\n if (innerChild.type !== Comment) {\n setTransitionHooks(innerChild, enterHooks);\n }\n let oldInnerChild = instance.subTree && getInnerChild$1(instance.subTree);\n if (oldInnerChild && oldInnerChild.type !== Comment && !isSameVNodeType(innerChild, oldInnerChild) && recursiveGetSubtree(instance).type !== Comment) {\n let leavingHooks = resolveTransitionHooks(\n oldInnerChild,\n rawProps,\n state,\n instance\n );\n setTransitionHooks(oldInnerChild, leavingHooks);\n if (mode === \"out-in\" && innerChild.type !== Comment) {\n state.isLeaving = true;\n leavingHooks.afterLeave = () => {\n state.isLeaving = false;\n if (!(instance.job.flags & 8)) {\n instance.update();\n }\n delete leavingHooks.afterLeave;\n oldInnerChild = void 0;\n };\n return emptyPlaceholder(child);\n } else if (mode === \"in-out\" && innerChild.type !== Comment) {\n leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => {\n const leavingVNodesCache = getLeavingNodesForType(\n state,\n oldInnerChild\n );\n leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild;\n el[leaveCbKey] = () => {\n earlyRemove();\n el[leaveCbKey] = void 0;\n delete enterHooks.delayedLeave;\n oldInnerChild = void 0;\n };\n enterHooks.delayedLeave = () => {\n delayedLeave();\n delete enterHooks.delayedLeave;\n oldInnerChild = void 0;\n };\n };\n } else {\n oldInnerChild = void 0;\n }\n } else if (oldInnerChild) {\n oldInnerChild = void 0;\n }\n return child;\n };\n }\n};\nfunction findNonCommentChild(children) {\n let child = children[0];\n if (children.length > 1) {\n let hasFound = false;\n for (const c of children) {\n if (c.type !== Comment) {\n if (!!(process.env.NODE_ENV !== \"production\") && hasFound) {\n warn$1(\n \" can only be used on a single element or component. Use for lists.\"\n );\n break;\n }\n child = c;\n hasFound = true;\n if (!!!(process.env.NODE_ENV !== \"production\")) break;\n }\n }\n }\n return child;\n}\nconst BaseTransition = BaseTransitionImpl;\nfunction getLeavingNodesForType(state, vnode) {\n const { leavingVNodes } = state;\n let leavingVNodesCache = leavingVNodes.get(vnode.type);\n if (!leavingVNodesCache) {\n leavingVNodesCache = /* @__PURE__ */ Object.create(null);\n leavingVNodes.set(vnode.type, leavingVNodesCache);\n }\n return leavingVNodesCache;\n}\nfunction resolveTransitionHooks(vnode, props, state, instance, postClone) {\n const {\n appear,\n mode,\n persisted = false,\n onBeforeEnter,\n onEnter,\n onAfterEnter,\n onEnterCancelled,\n onBeforeLeave,\n onLeave,\n onAfterLeave,\n onLeaveCancelled,\n onBeforeAppear,\n onAppear,\n onAfterAppear,\n onAppearCancelled\n } = props;\n const key = String(vnode.key);\n const leavingVNodesCache = getLeavingNodesForType(state, vnode);\n const callHook = (hook, args) => {\n hook && callWithAsyncErrorHandling(\n hook,\n instance,\n 9,\n args\n );\n };\n const callAsyncHook = (hook, args) => {\n const done = args[1];\n callHook(hook, args);\n if (isArray(hook)) {\n if (hook.every((hook2) => hook2.length <= 1)) done();\n } else if (hook.length <= 1) {\n done();\n }\n };\n const hooks = {\n mode,\n persisted,\n beforeEnter(el) {\n let hook = onBeforeEnter;\n if (!state.isMounted) {\n if (appear) {\n hook = onBeforeAppear || onBeforeEnter;\n } else {\n return;\n }\n }\n if (el[leaveCbKey]) {\n el[leaveCbKey](\n true\n /* cancelled */\n );\n }\n const leavingVNode = leavingVNodesCache[key];\n if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el[leaveCbKey]) {\n leavingVNode.el[leaveCbKey]();\n }\n callHook(hook, [el]);\n },\n enter(el) {\n let hook = onEnter;\n let afterHook = onAfterEnter;\n let cancelHook = onEnterCancelled;\n if (!state.isMounted) {\n if (appear) {\n hook = onAppear || onEnter;\n afterHook = onAfterAppear || onAfterEnter;\n cancelHook = onAppearCancelled || onEnterCancelled;\n } else {\n return;\n }\n }\n let called = false;\n const done = el[enterCbKey] = (cancelled) => {\n if (called) return;\n called = true;\n if (cancelled) {\n callHook(cancelHook, [el]);\n } else {\n callHook(afterHook, [el]);\n }\n if (hooks.delayedLeave) {\n hooks.delayedLeave();\n }\n el[enterCbKey] = void 0;\n };\n if (hook) {\n callAsyncHook(hook, [el, done]);\n } else {\n done();\n }\n },\n leave(el, remove) {\n const key2 = String(vnode.key);\n if (el[enterCbKey]) {\n el[enterCbKey](\n true\n /* cancelled */\n );\n }\n if (state.isUnmounting) {\n return remove();\n }\n callHook(onBeforeLeave, [el]);\n let called = false;\n const done = el[leaveCbKey] = (cancelled) => {\n if (called) return;\n called = true;\n remove();\n if (cancelled) {\n callHook(onLeaveCancelled, [el]);\n } else {\n callHook(onAfterLeave, [el]);\n }\n el[leaveCbKey] = void 0;\n if (leavingVNodesCache[key2] === vnode) {\n delete leavingVNodesCache[key2];\n }\n };\n leavingVNodesCache[key2] = vnode;\n if (onLeave) {\n callAsyncHook(onLeave, [el, done]);\n } else {\n done();\n }\n },\n clone(vnode2) {\n const hooks2 = resolveTransitionHooks(\n vnode2,\n props,\n state,\n instance,\n postClone\n );\n if (postClone) postClone(hooks2);\n return hooks2;\n }\n };\n return hooks;\n}\nfunction emptyPlaceholder(vnode) {\n if (isKeepAlive(vnode)) {\n vnode = cloneVNode(vnode);\n vnode.children = null;\n return vnode;\n }\n}\nfunction getInnerChild$1(vnode) {\n if (!isKeepAlive(vnode)) {\n if (isTeleport(vnode.type) && vnode.children) {\n return findNonCommentChild(vnode.children);\n }\n return vnode;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && vnode.component) {\n return vnode.component.subTree;\n }\n const { shapeFlag, children } = vnode;\n if (children) {\n if (shapeFlag & 16) {\n return children[0];\n }\n if (shapeFlag & 32 && isFunction(children.default)) {\n return children.default();\n }\n }\n}\nfunction setTransitionHooks(vnode, hooks) {\n if (vnode.shapeFlag & 6 && vnode.component) {\n vnode.transition = hooks;\n setTransitionHooks(vnode.component.subTree, hooks);\n } else if (vnode.shapeFlag & 128) {\n vnode.ssContent.transition = hooks.clone(vnode.ssContent);\n vnode.ssFallback.transition = hooks.clone(vnode.ssFallback);\n } else {\n vnode.transition = hooks;\n }\n}\nfunction getTransitionRawChildren(children, keepComment = false, parentKey) {\n let ret = [];\n let keyedFragmentCount = 0;\n for (let i = 0; i < children.length; i++) {\n let child = children[i];\n const key = parentKey == null ? child.key : String(parentKey) + String(child.key != null ? child.key : i);\n if (child.type === Fragment) {\n if (child.patchFlag & 128) keyedFragmentCount++;\n ret = ret.concat(\n getTransitionRawChildren(child.children, keepComment, key)\n );\n } else if (keepComment || child.type !== Comment) {\n ret.push(key != null ? cloneVNode(child, { key }) : child);\n }\n }\n if (keyedFragmentCount > 1) {\n for (let i = 0; i < ret.length; i++) {\n ret[i].patchFlag = -2;\n }\n }\n return ret;\n}\n\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction defineComponent(options, extraOptions) {\n return isFunction(options) ? (\n // #8236: extend call and options.name access are considered side-effects\n // by Rollup, so we have to wrap it in a pure-annotated IIFE.\n /* @__PURE__ */ (() => extend({ name: options.name }, extraOptions, { setup: options }))()\n ) : options;\n}\n\nfunction useId() {\n const i = getCurrentInstance();\n if (i) {\n return (i.appContext.config.idPrefix || \"v\") + \"-\" + i.ids[0] + i.ids[1]++;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `useId() is called when there is no active component instance to be associated with.`\n );\n }\n return \"\";\n}\nfunction markAsyncBoundary(instance) {\n instance.ids = [instance.ids[0] + instance.ids[2]++ + \"-\", 0, 0];\n}\n\nconst knownTemplateRefs = /* @__PURE__ */ new WeakSet();\nfunction useTemplateRef(key) {\n const i = getCurrentInstance();\n const r = shallowRef(null);\n if (i) {\n const refs = i.refs === EMPTY_OBJ ? i.refs = {} : i.refs;\n let desc;\n if (!!(process.env.NODE_ENV !== \"production\") && (desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable) {\n warn$1(`useTemplateRef('${key}') already exists.`);\n } else {\n Object.defineProperty(refs, key, {\n enumerable: true,\n get: () => r.value,\n set: (val) => r.value = val\n });\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `useTemplateRef() is called when there is no active component instance to be associated with.`\n );\n }\n const ret = !!(process.env.NODE_ENV !== \"production\") ? readonly(r) : r;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n knownTemplateRefs.add(ret);\n }\n return ret;\n}\n\nfunction setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {\n if (isArray(rawRef)) {\n rawRef.forEach(\n (r, i) => setRef(\n r,\n oldRawRef && (isArray(oldRawRef) ? oldRawRef[i] : oldRawRef),\n parentSuspense,\n vnode,\n isUnmount\n )\n );\n return;\n }\n if (isAsyncWrapper(vnode) && !isUnmount) {\n if (vnode.shapeFlag & 512 && vnode.type.__asyncResolved && vnode.component.subTree.component) {\n setRef(rawRef, oldRawRef, parentSuspense, vnode.component.subTree);\n }\n return;\n }\n const refValue = vnode.shapeFlag & 4 ? getComponentPublicInstance(vnode.component) : vnode.el;\n const value = isUnmount ? null : refValue;\n const { i: owner, r: ref } = rawRef;\n if (!!(process.env.NODE_ENV !== \"production\") && !owner) {\n warn$1(\n `Missing ref owner context. ref cannot be used on hoisted vnodes. A vnode with ref must be created inside the render function.`\n );\n return;\n }\n const oldRef = oldRawRef && oldRawRef.r;\n const refs = owner.refs === EMPTY_OBJ ? owner.refs = {} : owner.refs;\n const setupState = owner.setupState;\n const rawSetupState = toRaw(setupState);\n const canSetSetupRef = setupState === EMPTY_OBJ ? () => false : (key) => {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n if (hasOwn(rawSetupState, key) && !isRef(rawSetupState[key])) {\n warn$1(\n `Template ref \"${key}\" used on a non-ref value. It will not work in the production build.`\n );\n }\n if (knownTemplateRefs.has(rawSetupState[key])) {\n return false;\n }\n }\n return hasOwn(rawSetupState, key);\n };\n if (oldRef != null && oldRef !== ref) {\n if (isString(oldRef)) {\n refs[oldRef] = null;\n if (canSetSetupRef(oldRef)) {\n setupState[oldRef] = null;\n }\n } else if (isRef(oldRef)) {\n oldRef.value = null;\n }\n }\n if (isFunction(ref)) {\n callWithErrorHandling(ref, owner, 12, [value, refs]);\n } else {\n const _isString = isString(ref);\n const _isRef = isRef(ref);\n if (_isString || _isRef) {\n const doSet = () => {\n if (rawRef.f) {\n const existing = _isString ? canSetSetupRef(ref) ? setupState[ref] : refs[ref] : ref.value;\n if (isUnmount) {\n isArray(existing) && remove(existing, refValue);\n } else {\n if (!isArray(existing)) {\n if (_isString) {\n refs[ref] = [refValue];\n if (canSetSetupRef(ref)) {\n setupState[ref] = refs[ref];\n }\n } else {\n ref.value = [refValue];\n if (rawRef.k) refs[rawRef.k] = ref.value;\n }\n } else if (!existing.includes(refValue)) {\n existing.push(refValue);\n }\n }\n } else if (_isString) {\n refs[ref] = value;\n if (canSetSetupRef(ref)) {\n setupState[ref] = value;\n }\n } else if (_isRef) {\n ref.value = value;\n if (rawRef.k) refs[rawRef.k] = value;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\"Invalid template ref type:\", ref, `(${typeof ref})`);\n }\n };\n if (value) {\n doSet.id = -1;\n queuePostRenderEffect(doSet, parentSuspense);\n } else {\n doSet();\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\"Invalid template ref type:\", ref, `(${typeof ref})`);\n }\n }\n}\n\nlet hasLoggedMismatchError = false;\nconst logMismatchError = () => {\n if (hasLoggedMismatchError) {\n return;\n }\n console.error(\"Hydration completed but contains mismatches.\");\n hasLoggedMismatchError = true;\n};\nconst isSVGContainer = (container) => container.namespaceURI.includes(\"svg\") && container.tagName !== \"foreignObject\";\nconst isMathMLContainer = (container) => container.namespaceURI.includes(\"MathML\");\nconst getContainerType = (container) => {\n if (container.nodeType !== 1) return void 0;\n if (isSVGContainer(container)) return \"svg\";\n if (isMathMLContainer(container)) return \"mathml\";\n return void 0;\n};\nconst isComment = (node) => node.nodeType === 8;\nfunction createHydrationFunctions(rendererInternals) {\n const {\n mt: mountComponent,\n p: patch,\n o: {\n patchProp,\n createText,\n nextSibling,\n parentNode,\n remove,\n insert,\n createComment\n }\n } = rendererInternals;\n const hydrate = (vnode, container) => {\n if (!container.hasChildNodes()) {\n (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(\n `Attempting to hydrate existing markup but container is empty. Performing full mount instead.`\n );\n patch(null, vnode, container);\n flushPostFlushCbs();\n container._vnode = vnode;\n return;\n }\n hydrateNode(container.firstChild, vnode, null, null, null);\n flushPostFlushCbs();\n container._vnode = vnode;\n };\n const hydrateNode = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized = false) => {\n optimized = optimized || !!vnode.dynamicChildren;\n const isFragmentStart = isComment(node) && node.data === \"[\";\n const onMismatch = () => handleMismatch(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n isFragmentStart\n );\n const { type, ref, shapeFlag, patchFlag } = vnode;\n let domType = node.nodeType;\n vnode.el = node;\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n def(node, \"__vnode\", vnode, true);\n def(node, \"__vueParentComponent\", parentComponent, true);\n }\n if (patchFlag === -2) {\n optimized = false;\n vnode.dynamicChildren = null;\n }\n let nextNode = null;\n switch (type) {\n case Text:\n if (domType !== 3) {\n if (vnode.children === \"\") {\n insert(vnode.el = createText(\"\"), parentNode(node), node);\n nextNode = node;\n } else {\n nextNode = onMismatch();\n }\n } else {\n if (node.data !== vnode.children) {\n (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(\n `Hydration text mismatch in`,\n node.parentNode,\n `\n - rendered on server: ${JSON.stringify(\n node.data\n )}\n - expected on client: ${JSON.stringify(vnode.children)}`\n );\n logMismatchError();\n node.data = vnode.children;\n }\n nextNode = nextSibling(node);\n }\n break;\n case Comment:\n if (isTemplateNode(node)) {\n nextNode = nextSibling(node);\n replaceNode(\n vnode.el = node.content.firstChild,\n node,\n parentComponent\n );\n } else if (domType !== 8 || isFragmentStart) {\n nextNode = onMismatch();\n } else {\n nextNode = nextSibling(node);\n }\n break;\n case Static:\n if (isFragmentStart) {\n node = nextSibling(node);\n domType = node.nodeType;\n }\n if (domType === 1 || domType === 3) {\n nextNode = node;\n const needToAdoptContent = !vnode.children.length;\n for (let i = 0; i < vnode.staticCount; i++) {\n if (needToAdoptContent)\n vnode.children += nextNode.nodeType === 1 ? nextNode.outerHTML : nextNode.data;\n if (i === vnode.staticCount - 1) {\n vnode.anchor = nextNode;\n }\n nextNode = nextSibling(nextNode);\n }\n return isFragmentStart ? nextSibling(nextNode) : nextNode;\n } else {\n onMismatch();\n }\n break;\n case Fragment:\n if (!isFragmentStart) {\n nextNode = onMismatch();\n } else {\n nextNode = hydrateFragment(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n }\n break;\n default:\n if (shapeFlag & 1) {\n if ((domType !== 1 || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode(node)) {\n nextNode = onMismatch();\n } else {\n nextNode = hydrateElement(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n }\n } else if (shapeFlag & 6) {\n vnode.slotScopeIds = slotScopeIds;\n const container = parentNode(node);\n if (isFragmentStart) {\n nextNode = locateClosingAnchor(node);\n } else if (isComment(node) && node.data === \"teleport start\") {\n nextNode = locateClosingAnchor(node, node.data, \"teleport end\");\n } else {\n nextNode = nextSibling(node);\n }\n mountComponent(\n vnode,\n container,\n null,\n parentComponent,\n parentSuspense,\n getContainerType(container),\n optimized\n );\n if (isAsyncWrapper(vnode) && !vnode.type.__asyncResolved) {\n let subTree;\n if (isFragmentStart) {\n subTree = createVNode(Fragment);\n subTree.anchor = nextNode ? nextNode.previousSibling : container.lastChild;\n } else {\n subTree = node.nodeType === 3 ? createTextVNode(\"\") : createVNode(\"div\");\n }\n subTree.el = node;\n vnode.component.subTree = subTree;\n }\n } else if (shapeFlag & 64) {\n if (domType !== 8) {\n nextNode = onMismatch();\n } else {\n nextNode = vnode.type.hydrate(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized,\n rendererInternals,\n hydrateChildren\n );\n }\n } else if (shapeFlag & 128) {\n nextNode = vnode.type.hydrate(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n getContainerType(parentNode(node)),\n slotScopeIds,\n optimized,\n rendererInternals,\n hydrateNode\n );\n } else if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) {\n warn$1(\"Invalid HostVNode type:\", type, `(${typeof type})`);\n }\n }\n if (ref != null) {\n setRef(ref, null, parentSuspense, vnode);\n }\n return nextNode;\n };\n const hydrateElement = (el, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => {\n optimized = optimized || !!vnode.dynamicChildren;\n const { type, props, patchFlag, shapeFlag, dirs, transition } = vnode;\n const forcePatch = type === \"input\" || type === \"option\";\n if (!!(process.env.NODE_ENV !== \"production\") || forcePatch || patchFlag !== -1) {\n if (dirs) {\n invokeDirectiveHook(vnode, null, parentComponent, \"created\");\n }\n let needCallTransitionHooks = false;\n if (isTemplateNode(el)) {\n needCallTransitionHooks = needTransition(\n null,\n // no need check parentSuspense in hydration\n transition\n ) && parentComponent && parentComponent.vnode.props && parentComponent.vnode.props.appear;\n const content = el.content.firstChild;\n if (needCallTransitionHooks) {\n transition.beforeEnter(content);\n }\n replaceNode(content, el, parentComponent);\n vnode.el = el = content;\n }\n if (shapeFlag & 16 && // skip if element has innerHTML / textContent\n !(props && (props.innerHTML || props.textContent))) {\n let next = hydrateChildren(\n el.firstChild,\n vnode,\n el,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n let hasWarned = false;\n while (next) {\n if (!isMismatchAllowed(el, 1 /* CHILDREN */)) {\n if ((!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && !hasWarned) {\n warn$1(\n `Hydration children mismatch on`,\n el,\n `\nServer rendered element contains more child nodes than client vdom.`\n );\n hasWarned = true;\n }\n logMismatchError();\n }\n const cur = next;\n next = next.nextSibling;\n remove(cur);\n }\n } else if (shapeFlag & 8) {\n let clientText = vnode.children;\n if (clientText[0] === \"\\n\" && (el.tagName === \"PRE\" || el.tagName === \"TEXTAREA\")) {\n clientText = clientText.slice(1);\n }\n if (el.textContent !== clientText) {\n if (!isMismatchAllowed(el, 0 /* TEXT */)) {\n (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(\n `Hydration text content mismatch on`,\n el,\n `\n - rendered on server: ${el.textContent}\n - expected on client: ${vnode.children}`\n );\n logMismatchError();\n }\n el.textContent = vnode.children;\n }\n }\n if (props) {\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__ || forcePatch || !optimized || patchFlag & (16 | 32)) {\n const isCustomElement = el.tagName.includes(\"-\");\n for (const key in props) {\n if ((!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && // #11189 skip if this node has directives that have created hooks\n // as it could have mutated the DOM in any possible way\n !(dirs && dirs.some((d) => d.dir.created)) && propHasMismatch(el, key, props[key], vnode, parentComponent)) {\n logMismatchError();\n }\n if (forcePatch && (key.endsWith(\"value\") || key === \"indeterminate\") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers\n key[0] === \".\" || isCustomElement) {\n patchProp(el, key, null, props[key], void 0, parentComponent);\n }\n }\n } else if (props.onClick) {\n patchProp(\n el,\n \"onClick\",\n null,\n props.onClick,\n void 0,\n parentComponent\n );\n } else if (patchFlag & 4 && isReactive(props.style)) {\n for (const key in props.style) props.style[key];\n }\n }\n let vnodeHooks;\n if (vnodeHooks = props && props.onVnodeBeforeMount) {\n invokeVNodeHook(vnodeHooks, parentComponent, vnode);\n }\n if (dirs) {\n invokeDirectiveHook(vnode, null, parentComponent, \"beforeMount\");\n }\n if ((vnodeHooks = props && props.onVnodeMounted) || dirs || needCallTransitionHooks) {\n queueEffectWithSuspense(() => {\n vnodeHooks && invokeVNodeHook(vnodeHooks, parentComponent, vnode);\n needCallTransitionHooks && transition.enter(el);\n dirs && invokeDirectiveHook(vnode, null, parentComponent, \"mounted\");\n }, parentSuspense);\n }\n }\n return el.nextSibling;\n };\n const hydrateChildren = (node, parentVNode, container, parentComponent, parentSuspense, slotScopeIds, optimized) => {\n optimized = optimized || !!parentVNode.dynamicChildren;\n const children = parentVNode.children;\n const l = children.length;\n let hasWarned = false;\n for (let i = 0; i < l; i++) {\n const vnode = optimized ? children[i] : children[i] = normalizeVNode(children[i]);\n const isText = vnode.type === Text;\n if (node) {\n if (isText && !optimized) {\n if (i + 1 < l && normalizeVNode(children[i + 1]).type === Text) {\n insert(\n createText(\n node.data.slice(vnode.children.length)\n ),\n container,\n nextSibling(node)\n );\n node.data = vnode.children;\n }\n }\n node = hydrateNode(\n node,\n vnode,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n } else if (isText && !vnode.children) {\n insert(vnode.el = createText(\"\"), container);\n } else {\n if (!isMismatchAllowed(container, 1 /* CHILDREN */)) {\n if ((!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && !hasWarned) {\n warn$1(\n `Hydration children mismatch on`,\n container,\n `\nServer rendered element contains fewer child nodes than client vdom.`\n );\n hasWarned = true;\n }\n logMismatchError();\n }\n patch(\n null,\n vnode,\n container,\n null,\n parentComponent,\n parentSuspense,\n getContainerType(container),\n slotScopeIds\n );\n }\n }\n return node;\n };\n const hydrateFragment = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => {\n const { slotScopeIds: fragmentSlotScopeIds } = vnode;\n if (fragmentSlotScopeIds) {\n slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds;\n }\n const container = parentNode(node);\n const next = hydrateChildren(\n nextSibling(node),\n vnode,\n container,\n parentComponent,\n parentSuspense,\n slotScopeIds,\n optimized\n );\n if (next && isComment(next) && next.data === \"]\") {\n return nextSibling(vnode.anchor = next);\n } else {\n logMismatchError();\n insert(vnode.anchor = createComment(`]`), container, next);\n return next;\n }\n };\n const handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => {\n if (!isMismatchAllowed(node.parentElement, 1 /* CHILDREN */)) {\n (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(\n `Hydration node mismatch:\n- rendered on server:`,\n node,\n node.nodeType === 3 ? `(text)` : isComment(node) && node.data === \"[\" ? `(start of fragment)` : ``,\n `\n- expected on client:`,\n vnode.type\n );\n logMismatchError();\n }\n vnode.el = null;\n if (isFragment) {\n const end = locateClosingAnchor(node);\n while (true) {\n const next2 = nextSibling(node);\n if (next2 && next2 !== end) {\n remove(next2);\n } else {\n break;\n }\n }\n }\n const next = nextSibling(node);\n const container = parentNode(node);\n remove(node);\n patch(\n null,\n vnode,\n container,\n next,\n parentComponent,\n parentSuspense,\n getContainerType(container),\n slotScopeIds\n );\n if (parentComponent) {\n parentComponent.vnode.el = vnode.el;\n updateHOCHostEl(parentComponent, vnode.el);\n }\n return next;\n };\n const locateClosingAnchor = (node, open = \"[\", close = \"]\") => {\n let match = 0;\n while (node) {\n node = nextSibling(node);\n if (node && isComment(node)) {\n if (node.data === open) match++;\n if (node.data === close) {\n if (match === 0) {\n return nextSibling(node);\n } else {\n match--;\n }\n }\n }\n }\n return node;\n };\n const replaceNode = (newNode, oldNode, parentComponent) => {\n const parentNode2 = oldNode.parentNode;\n if (parentNode2) {\n parentNode2.replaceChild(newNode, oldNode);\n }\n let parent = parentComponent;\n while (parent) {\n if (parent.vnode.el === oldNode) {\n parent.vnode.el = parent.subTree.el = newNode;\n }\n parent = parent.parent;\n }\n };\n const isTemplateNode = (node) => {\n return node.nodeType === 1 && node.tagName === \"TEMPLATE\";\n };\n return [hydrate, hydrateNode];\n}\nfunction propHasMismatch(el, key, clientValue, vnode, instance) {\n let mismatchType;\n let mismatchKey;\n let actual;\n let expected;\n if (key === \"class\") {\n actual = el.getAttribute(\"class\");\n expected = normalizeClass(clientValue);\n if (!isSetEqual(toClassSet(actual || \"\"), toClassSet(expected))) {\n mismatchType = 2 /* CLASS */;\n mismatchKey = `class`;\n }\n } else if (key === \"style\") {\n actual = el.getAttribute(\"style\") || \"\";\n expected = isString(clientValue) ? clientValue : stringifyStyle(normalizeStyle(clientValue));\n const actualMap = toStyleMap(actual);\n const expectedMap = toStyleMap(expected);\n if (vnode.dirs) {\n for (const { dir, value } of vnode.dirs) {\n if (dir.name === \"show\" && !value) {\n expectedMap.set(\"display\", \"none\");\n }\n }\n }\n if (instance) {\n resolveCssVars(instance, vnode, expectedMap);\n }\n if (!isMapEqual(actualMap, expectedMap)) {\n mismatchType = 3 /* STYLE */;\n mismatchKey = \"style\";\n }\n } else if (el instanceof SVGElement && isKnownSvgAttr(key) || el instanceof HTMLElement && (isBooleanAttr(key) || isKnownHtmlAttr(key))) {\n if (isBooleanAttr(key)) {\n actual = el.hasAttribute(key);\n expected = includeBooleanAttr(clientValue);\n } else if (clientValue == null) {\n actual = el.hasAttribute(key);\n expected = false;\n } else {\n if (el.hasAttribute(key)) {\n actual = el.getAttribute(key);\n } else if (key === \"value\" && el.tagName === \"TEXTAREA\") {\n actual = el.value;\n } else {\n actual = false;\n }\n expected = isRenderableAttrValue(clientValue) ? String(clientValue) : false;\n }\n if (actual !== expected) {\n mismatchType = 4 /* ATTRIBUTE */;\n mismatchKey = key;\n }\n }\n if (mismatchType != null && !isMismatchAllowed(el, mismatchType)) {\n const format = (v) => v === false ? `(not rendered)` : `${mismatchKey}=\"${v}\"`;\n const preSegment = `Hydration ${MismatchTypeString[mismatchType]} mismatch on`;\n const postSegment = `\n - rendered on server: ${format(actual)}\n - expected on client: ${format(expected)}\n Note: this mismatch is check-only. The DOM will not be rectified in production due to performance overhead.\n You should fix the source of the mismatch.`;\n {\n warn$1(preSegment, el, postSegment);\n }\n return true;\n }\n return false;\n}\nfunction toClassSet(str) {\n return new Set(str.trim().split(/\\s+/));\n}\nfunction isSetEqual(a, b) {\n if (a.size !== b.size) {\n return false;\n }\n for (const s of a) {\n if (!b.has(s)) {\n return false;\n }\n }\n return true;\n}\nfunction toStyleMap(str) {\n const styleMap = /* @__PURE__ */ new Map();\n for (const item of str.split(\";\")) {\n let [key, value] = item.split(\":\");\n key = key.trim();\n value = value && value.trim();\n if (key && value) {\n styleMap.set(key, value);\n }\n }\n return styleMap;\n}\nfunction isMapEqual(a, b) {\n if (a.size !== b.size) {\n return false;\n }\n for (const [key, value] of a) {\n if (value !== b.get(key)) {\n return false;\n }\n }\n return true;\n}\nfunction resolveCssVars(instance, vnode, expectedMap) {\n const root = instance.subTree;\n if (instance.getCssVars && (vnode === root || root && root.type === Fragment && root.children.includes(vnode))) {\n const cssVars = instance.getCssVars();\n for (const key in cssVars) {\n expectedMap.set(\n `--${getEscapedCssVarName(key, false)}`,\n String(cssVars[key])\n );\n }\n }\n if (vnode === root && instance.parent) {\n resolveCssVars(instance.parent, instance.vnode, expectedMap);\n }\n}\nconst allowMismatchAttr = \"data-allow-mismatch\";\nconst MismatchTypeString = {\n [0 /* TEXT */]: \"text\",\n [1 /* CHILDREN */]: \"children\",\n [2 /* CLASS */]: \"class\",\n [3 /* STYLE */]: \"style\",\n [4 /* ATTRIBUTE */]: \"attribute\"\n};\nfunction isMismatchAllowed(el, allowedType) {\n if (allowedType === 0 /* TEXT */ || allowedType === 1 /* CHILDREN */) {\n while (el && !el.hasAttribute(allowMismatchAttr)) {\n el = el.parentElement;\n }\n }\n const allowedAttr = el && el.getAttribute(allowMismatchAttr);\n if (allowedAttr == null) {\n return false;\n } else if (allowedAttr === \"\") {\n return true;\n } else {\n const list = allowedAttr.split(\",\");\n if (allowedType === 0 /* TEXT */ && list.includes(\"children\")) {\n return true;\n }\n return allowedAttr.split(\",\").includes(MismatchTypeString[allowedType]);\n }\n}\n\nconst requestIdleCallback = getGlobalThis().requestIdleCallback || ((cb) => setTimeout(cb, 1));\nconst cancelIdleCallback = getGlobalThis().cancelIdleCallback || ((id) => clearTimeout(id));\nconst hydrateOnIdle = (timeout = 1e4) => (hydrate) => {\n const id = requestIdleCallback(hydrate, { timeout });\n return () => cancelIdleCallback(id);\n};\nfunction elementIsVisibleInViewport(el) {\n const { top, left, bottom, right } = el.getBoundingClientRect();\n const { innerHeight, innerWidth } = window;\n return (top > 0 && top < innerHeight || bottom > 0 && bottom < innerHeight) && (left > 0 && left < innerWidth || right > 0 && right < innerWidth);\n}\nconst hydrateOnVisible = (opts) => (hydrate, forEach) => {\n const ob = new IntersectionObserver((entries) => {\n for (const e of entries) {\n if (!e.isIntersecting) continue;\n ob.disconnect();\n hydrate();\n break;\n }\n }, opts);\n forEach((el) => {\n if (!(el instanceof Element)) return;\n if (elementIsVisibleInViewport(el)) {\n hydrate();\n ob.disconnect();\n return false;\n }\n ob.observe(el);\n });\n return () => ob.disconnect();\n};\nconst hydrateOnMediaQuery = (query) => (hydrate) => {\n if (query) {\n const mql = matchMedia(query);\n if (mql.matches) {\n hydrate();\n } else {\n mql.addEventListener(\"change\", hydrate, { once: true });\n return () => mql.removeEventListener(\"change\", hydrate);\n }\n }\n};\nconst hydrateOnInteraction = (interactions = []) => (hydrate, forEach) => {\n if (isString(interactions)) interactions = [interactions];\n let hasHydrated = false;\n const doHydrate = (e) => {\n if (!hasHydrated) {\n hasHydrated = true;\n teardown();\n hydrate();\n e.target.dispatchEvent(new e.constructor(e.type, e));\n }\n };\n const teardown = () => {\n forEach((el) => {\n for (const i of interactions) {\n el.removeEventListener(i, doHydrate);\n }\n });\n };\n forEach((el) => {\n for (const i of interactions) {\n el.addEventListener(i, doHydrate, { once: true });\n }\n });\n return teardown;\n};\nfunction forEachElement(node, cb) {\n if (isComment(node) && node.data === \"[\") {\n let depth = 1;\n let next = node.nextSibling;\n while (next) {\n if (next.nodeType === 1) {\n const result = cb(next);\n if (result === false) {\n break;\n }\n } else if (isComment(next)) {\n if (next.data === \"]\") {\n if (--depth === 0) break;\n } else if (next.data === \"[\") {\n depth++;\n }\n }\n next = next.nextSibling;\n }\n } else {\n cb(node);\n }\n}\n\nconst isAsyncWrapper = (i) => !!i.type.__asyncLoader;\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction defineAsyncComponent(source) {\n if (isFunction(source)) {\n source = { loader: source };\n }\n const {\n loader,\n loadingComponent,\n errorComponent,\n delay = 200,\n hydrate: hydrateStrategy,\n timeout,\n // undefined = never times out\n suspensible = true,\n onError: userOnError\n } = source;\n let pendingRequest = null;\n let resolvedComp;\n let retries = 0;\n const retry = () => {\n retries++;\n pendingRequest = null;\n return load();\n };\n const load = () => {\n let thisRequest;\n return pendingRequest || (thisRequest = pendingRequest = loader().catch((err) => {\n err = err instanceof Error ? err : new Error(String(err));\n if (userOnError) {\n return new Promise((resolve, reject) => {\n const userRetry = () => resolve(retry());\n const userFail = () => reject(err);\n userOnError(err, userRetry, userFail, retries + 1);\n });\n } else {\n throw err;\n }\n }).then((comp) => {\n if (thisRequest !== pendingRequest && pendingRequest) {\n return pendingRequest;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && !comp) {\n warn$1(\n `Async component loader resolved to undefined. If you are using retry(), make sure to return its return value.`\n );\n }\n if (comp && (comp.__esModule || comp[Symbol.toStringTag] === \"Module\")) {\n comp = comp.default;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && comp && !isObject(comp) && !isFunction(comp)) {\n throw new Error(`Invalid async component load result: ${comp}`);\n }\n resolvedComp = comp;\n return comp;\n }));\n };\n return defineComponent({\n name: \"AsyncComponentWrapper\",\n __asyncLoader: load,\n __asyncHydrate(el, instance, hydrate) {\n const doHydrate = hydrateStrategy ? () => {\n const teardown = hydrateStrategy(\n hydrate,\n (cb) => forEachElement(el, cb)\n );\n if (teardown) {\n (instance.bum || (instance.bum = [])).push(teardown);\n }\n } : hydrate;\n if (resolvedComp) {\n doHydrate();\n } else {\n load().then(() => !instance.isUnmounted && doHydrate());\n }\n },\n get __asyncResolved() {\n return resolvedComp;\n },\n setup() {\n const instance = currentInstance;\n markAsyncBoundary(instance);\n if (resolvedComp) {\n return () => createInnerComp(resolvedComp, instance);\n }\n const onError = (err) => {\n pendingRequest = null;\n handleError(\n err,\n instance,\n 13,\n !errorComponent\n );\n };\n if (suspensible && instance.suspense || isInSSRComponentSetup) {\n return load().then((comp) => {\n return () => createInnerComp(comp, instance);\n }).catch((err) => {\n onError(err);\n return () => errorComponent ? createVNode(errorComponent, {\n error: err\n }) : null;\n });\n }\n const loaded = ref(false);\n const error = ref();\n const delayed = ref(!!delay);\n if (delay) {\n setTimeout(() => {\n delayed.value = false;\n }, delay);\n }\n if (timeout != null) {\n setTimeout(() => {\n if (!loaded.value && !error.value) {\n const err = new Error(\n `Async component timed out after ${timeout}ms.`\n );\n onError(err);\n error.value = err;\n }\n }, timeout);\n }\n load().then(() => {\n loaded.value = true;\n if (instance.parent && isKeepAlive(instance.parent.vnode)) {\n instance.parent.update();\n }\n }).catch((err) => {\n onError(err);\n error.value = err;\n });\n return () => {\n if (loaded.value && resolvedComp) {\n return createInnerComp(resolvedComp, instance);\n } else if (error.value && errorComponent) {\n return createVNode(errorComponent, {\n error: error.value\n });\n } else if (loadingComponent && !delayed.value) {\n return createVNode(loadingComponent);\n }\n };\n }\n });\n}\nfunction createInnerComp(comp, parent) {\n const { ref: ref2, props, children, ce } = parent.vnode;\n const vnode = createVNode(comp, props, children);\n vnode.ref = ref2;\n vnode.ce = ce;\n delete parent.vnode.ce;\n return vnode;\n}\n\nconst isKeepAlive = (vnode) => vnode.type.__isKeepAlive;\nconst KeepAliveImpl = {\n name: `KeepAlive`,\n // Marker for special handling inside the renderer. We are not using a ===\n // check directly on KeepAlive in the renderer, because importing it directly\n // would prevent it from being tree-shaken.\n __isKeepAlive: true,\n props: {\n include: [String, RegExp, Array],\n exclude: [String, RegExp, Array],\n max: [String, Number]\n },\n setup(props, { slots }) {\n const instance = getCurrentInstance();\n const sharedContext = instance.ctx;\n if (!sharedContext.renderer) {\n return () => {\n const children = slots.default && slots.default();\n return children && children.length === 1 ? children[0] : children;\n };\n }\n const cache = /* @__PURE__ */ new Map();\n const keys = /* @__PURE__ */ new Set();\n let current = null;\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n instance.__v_cache = cache;\n }\n const parentSuspense = instance.suspense;\n const {\n renderer: {\n p: patch,\n m: move,\n um: _unmount,\n o: { createElement }\n }\n } = sharedContext;\n const storageContainer = createElement(\"div\");\n sharedContext.activate = (vnode, container, anchor, namespace, optimized) => {\n const instance2 = vnode.component;\n move(vnode, container, anchor, 0, parentSuspense);\n patch(\n instance2.vnode,\n vnode,\n container,\n anchor,\n instance2,\n parentSuspense,\n namespace,\n vnode.slotScopeIds,\n optimized\n );\n queuePostRenderEffect(() => {\n instance2.isDeactivated = false;\n if (instance2.a) {\n invokeArrayFns(instance2.a);\n }\n const vnodeHook = vnode.props && vnode.props.onVnodeMounted;\n if (vnodeHook) {\n invokeVNodeHook(vnodeHook, instance2.parent, vnode);\n }\n }, parentSuspense);\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentAdded(instance2);\n }\n };\n sharedContext.deactivate = (vnode) => {\n const instance2 = vnode.component;\n invalidateMount(instance2.m);\n invalidateMount(instance2.a);\n move(vnode, storageContainer, null, 1, parentSuspense);\n queuePostRenderEffect(() => {\n if (instance2.da) {\n invokeArrayFns(instance2.da);\n }\n const vnodeHook = vnode.props && vnode.props.onVnodeUnmounted;\n if (vnodeHook) {\n invokeVNodeHook(vnodeHook, instance2.parent, vnode);\n }\n instance2.isDeactivated = true;\n }, parentSuspense);\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentAdded(instance2);\n }\n };\n function unmount(vnode) {\n resetShapeFlag(vnode);\n _unmount(vnode, instance, parentSuspense, true);\n }\n function pruneCache(filter) {\n cache.forEach((vnode, key) => {\n const name = getComponentName(vnode.type);\n if (name && !filter(name)) {\n pruneCacheEntry(key);\n }\n });\n }\n function pruneCacheEntry(key) {\n const cached = cache.get(key);\n if (cached && (!current || !isSameVNodeType(cached, current))) {\n unmount(cached);\n } else if (current) {\n resetShapeFlag(current);\n }\n cache.delete(key);\n keys.delete(key);\n }\n watch(\n () => [props.include, props.exclude],\n ([include, exclude]) => {\n include && pruneCache((name) => matches(include, name));\n exclude && pruneCache((name) => !matches(exclude, name));\n },\n // prune post-render after `current` has been updated\n { flush: \"post\", deep: true }\n );\n let pendingCacheKey = null;\n const cacheSubtree = () => {\n if (pendingCacheKey != null) {\n if (isSuspense(instance.subTree.type)) {\n queuePostRenderEffect(() => {\n cache.set(pendingCacheKey, getInnerChild(instance.subTree));\n }, instance.subTree.suspense);\n } else {\n cache.set(pendingCacheKey, getInnerChild(instance.subTree));\n }\n }\n };\n onMounted(cacheSubtree);\n onUpdated(cacheSubtree);\n onBeforeUnmount(() => {\n cache.forEach((cached) => {\n const { subTree, suspense } = instance;\n const vnode = getInnerChild(subTree);\n if (cached.type === vnode.type && cached.key === vnode.key) {\n resetShapeFlag(vnode);\n const da = vnode.component.da;\n da && queuePostRenderEffect(da, suspense);\n return;\n }\n unmount(cached);\n });\n });\n return () => {\n pendingCacheKey = null;\n if (!slots.default) {\n return current = null;\n }\n const children = slots.default();\n const rawVNode = children[0];\n if (children.length > 1) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(`KeepAlive should contain exactly one component child.`);\n }\n current = null;\n return children;\n } else if (!isVNode(rawVNode) || !(rawVNode.shapeFlag & 4) && !(rawVNode.shapeFlag & 128)) {\n current = null;\n return rawVNode;\n }\n let vnode = getInnerChild(rawVNode);\n if (vnode.type === Comment) {\n current = null;\n return vnode;\n }\n const comp = vnode.type;\n const name = getComponentName(\n isAsyncWrapper(vnode) ? vnode.type.__asyncResolved || {} : comp\n );\n const { include, exclude, max } = props;\n if (include && (!name || !matches(include, name)) || exclude && name && matches(exclude, name)) {\n vnode.shapeFlag &= ~256;\n current = vnode;\n return rawVNode;\n }\n const key = vnode.key == null ? comp : vnode.key;\n const cachedVNode = cache.get(key);\n if (vnode.el) {\n vnode = cloneVNode(vnode);\n if (rawVNode.shapeFlag & 128) {\n rawVNode.ssContent = vnode;\n }\n }\n pendingCacheKey = key;\n if (cachedVNode) {\n vnode.el = cachedVNode.el;\n vnode.component = cachedVNode.component;\n if (vnode.transition) {\n setTransitionHooks(vnode, vnode.transition);\n }\n vnode.shapeFlag |= 512;\n keys.delete(key);\n keys.add(key);\n } else {\n keys.add(key);\n if (max && keys.size > parseInt(max, 10)) {\n pruneCacheEntry(keys.values().next().value);\n }\n }\n vnode.shapeFlag |= 256;\n current = vnode;\n return isSuspense(rawVNode.type) ? rawVNode : vnode;\n };\n }\n};\nconst KeepAlive = KeepAliveImpl;\nfunction matches(pattern, name) {\n if (isArray(pattern)) {\n return pattern.some((p) => matches(p, name));\n } else if (isString(pattern)) {\n return pattern.split(\",\").includes(name);\n } else if (isRegExp(pattern)) {\n pattern.lastIndex = 0;\n return pattern.test(name);\n }\n return false;\n}\nfunction onActivated(hook, target) {\n registerKeepAliveHook(hook, \"a\", target);\n}\nfunction onDeactivated(hook, target) {\n registerKeepAliveHook(hook, \"da\", target);\n}\nfunction registerKeepAliveHook(hook, type, target = currentInstance) {\n const wrappedHook = hook.__wdc || (hook.__wdc = () => {\n let current = target;\n while (current) {\n if (current.isDeactivated) {\n return;\n }\n current = current.parent;\n }\n return hook();\n });\n injectHook(type, wrappedHook, target);\n if (target) {\n let current = target.parent;\n while (current && current.parent) {\n if (isKeepAlive(current.parent.vnode)) {\n injectToKeepAliveRoot(wrappedHook, type, target, current);\n }\n current = current.parent;\n }\n }\n}\nfunction injectToKeepAliveRoot(hook, type, target, keepAliveRoot) {\n const injected = injectHook(\n type,\n hook,\n keepAliveRoot,\n true\n /* prepend */\n );\n onUnmounted(() => {\n remove(keepAliveRoot[type], injected);\n }, target);\n}\nfunction resetShapeFlag(vnode) {\n vnode.shapeFlag &= ~256;\n vnode.shapeFlag &= ~512;\n}\nfunction getInnerChild(vnode) {\n return vnode.shapeFlag & 128 ? vnode.ssContent : vnode;\n}\n\nfunction injectHook(type, hook, target = currentInstance, prepend = false) {\n if (target) {\n const hooks = target[type] || (target[type] = []);\n const wrappedHook = hook.__weh || (hook.__weh = (...args) => {\n pauseTracking();\n const reset = setCurrentInstance(target);\n const res = callWithAsyncErrorHandling(hook, target, type, args);\n reset();\n resetTracking();\n return res;\n });\n if (prepend) {\n hooks.unshift(wrappedHook);\n } else {\n hooks.push(wrappedHook);\n }\n return wrappedHook;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n const apiName = toHandlerKey(ErrorTypeStrings$1[type].replace(/ hook$/, \"\"));\n warn$1(\n `${apiName} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup().` + (` If you are using async setup(), make sure to register lifecycle hooks before the first await statement.` )\n );\n }\n}\nconst createHook = (lifecycle) => (hook, target = currentInstance) => {\n if (!isInSSRComponentSetup || lifecycle === \"sp\") {\n injectHook(lifecycle, (...args) => hook(...args), target);\n }\n};\nconst onBeforeMount = createHook(\"bm\");\nconst onMounted = createHook(\"m\");\nconst onBeforeUpdate = createHook(\n \"bu\"\n);\nconst onUpdated = createHook(\"u\");\nconst onBeforeUnmount = createHook(\n \"bum\"\n);\nconst onUnmounted = createHook(\"um\");\nconst onServerPrefetch = createHook(\n \"sp\"\n);\nconst onRenderTriggered = createHook(\"rtg\");\nconst onRenderTracked = createHook(\"rtc\");\nfunction onErrorCaptured(hook, target = currentInstance) {\n injectHook(\"ec\", hook, target);\n}\n\nconst COMPONENTS = \"components\";\nconst DIRECTIVES = \"directives\";\nfunction resolveComponent(name, maybeSelfReference) {\n return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name;\n}\nconst NULL_DYNAMIC_COMPONENT = Symbol.for(\"v-ndc\");\nfunction resolveDynamicComponent(component) {\n if (isString(component)) {\n return resolveAsset(COMPONENTS, component, false) || component;\n } else {\n return component || NULL_DYNAMIC_COMPONENT;\n }\n}\nfunction resolveDirective(name) {\n return resolveAsset(DIRECTIVES, name);\n}\nfunction resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) {\n const instance = currentRenderingInstance || currentInstance;\n if (instance) {\n const Component = instance.type;\n if (type === COMPONENTS) {\n const selfName = getComponentName(\n Component,\n false\n );\n if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) {\n return Component;\n }\n }\n const res = (\n // local registration\n // check instance[type] first which is resolved for options API\n resolve(instance[type] || Component[type], name) || // global registration\n resolve(instance.appContext[type], name)\n );\n if (!res && maybeSelfReference) {\n return Component;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && warnMissing && !res) {\n const extra = type === COMPONENTS ? `\nIf this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.` : ``;\n warn$1(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);\n }\n return res;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `resolve${capitalize(type.slice(0, -1))} can only be used in render() or setup().`\n );\n }\n}\nfunction resolve(registry, name) {\n return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]);\n}\n\nfunction renderList(source, renderItem, cache, index) {\n let ret;\n const cached = cache && cache[index];\n const sourceIsArray = isArray(source);\n if (sourceIsArray || isString(source)) {\n const sourceIsReactiveArray = sourceIsArray && isReactive(source);\n let needsWrap = false;\n if (sourceIsReactiveArray) {\n needsWrap = !isShallow(source);\n source = shallowReadArray(source);\n }\n ret = new Array(source.length);\n for (let i = 0, l = source.length; i < l; i++) {\n ret[i] = renderItem(\n needsWrap ? toReactive(source[i]) : source[i],\n i,\n void 0,\n cached && cached[i]\n );\n }\n } else if (typeof source === \"number\") {\n if (!!(process.env.NODE_ENV !== \"production\") && !Number.isInteger(source)) {\n warn$1(`The v-for range expect an integer value but got ${source}.`);\n }\n ret = new Array(source);\n for (let i = 0; i < source; i++) {\n ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]);\n }\n } else if (isObject(source)) {\n if (source[Symbol.iterator]) {\n ret = Array.from(\n source,\n (item, i) => renderItem(item, i, void 0, cached && cached[i])\n );\n } else {\n const keys = Object.keys(source);\n ret = new Array(keys.length);\n for (let i = 0, l = keys.length; i < l; i++) {\n const key = keys[i];\n ret[i] = renderItem(source[key], key, i, cached && cached[i]);\n }\n }\n } else {\n ret = [];\n }\n if (cache) {\n cache[index] = ret;\n }\n return ret;\n}\n\nfunction createSlots(slots, dynamicSlots) {\n for (let i = 0; i < dynamicSlots.length; i++) {\n const slot = dynamicSlots[i];\n if (isArray(slot)) {\n for (let j = 0; j < slot.length; j++) {\n slots[slot[j].name] = slot[j].fn;\n }\n } else if (slot) {\n slots[slot.name] = slot.key ? (...args) => {\n const res = slot.fn(...args);\n if (res) res.key = slot.key;\n return res;\n } : slot.fn;\n }\n }\n return slots;\n}\n\nfunction renderSlot(slots, name, props = {}, fallback, noSlotted) {\n if (currentRenderingInstance.ce || currentRenderingInstance.parent && isAsyncWrapper(currentRenderingInstance.parent) && currentRenderingInstance.parent.ce) {\n if (name !== \"default\") props.name = name;\n return openBlock(), createBlock(\n Fragment,\n null,\n [createVNode(\"slot\", props, fallback && fallback())],\n 64\n );\n }\n let slot = slots[name];\n if (!!(process.env.NODE_ENV !== \"production\") && slot && slot.length > 1) {\n warn$1(\n `SSR-optimized slot function detected in a non-SSR-optimized render function. You need to mark this component with $dynamic-slots in the parent template.`\n );\n slot = () => [];\n }\n if (slot && slot._c) {\n slot._d = false;\n }\n openBlock();\n const validSlotContent = slot && ensureValidVNode(slot(props));\n const slotKey = props.key || // slot content array of a dynamic conditional slot may have a branch\n // key attached in the `createSlots` helper, respect that\n validSlotContent && validSlotContent.key;\n const rendered = createBlock(\n Fragment,\n {\n key: (slotKey && !isSymbol(slotKey) ? slotKey : `_${name}`) + // #7256 force differentiate fallback content from actual content\n (!validSlotContent && fallback ? \"_fb\" : \"\")\n },\n validSlotContent || (fallback ? fallback() : []),\n validSlotContent && slots._ === 1 ? 64 : -2\n );\n if (!noSlotted && rendered.scopeId) {\n rendered.slotScopeIds = [rendered.scopeId + \"-s\"];\n }\n if (slot && slot._c) {\n slot._d = true;\n }\n return rendered;\n}\nfunction ensureValidVNode(vnodes) {\n return vnodes.some((child) => {\n if (!isVNode(child)) return true;\n if (child.type === Comment) return false;\n if (child.type === Fragment && !ensureValidVNode(child.children))\n return false;\n return true;\n }) ? vnodes : null;\n}\n\nfunction toHandlers(obj, preserveCaseIfNecessary) {\n const ret = {};\n if (!!(process.env.NODE_ENV !== \"production\") && !isObject(obj)) {\n warn$1(`v-on with no argument expects an object value.`);\n return ret;\n }\n for (const key in obj) {\n ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = obj[key];\n }\n return ret;\n}\n\nconst getPublicInstance = (i) => {\n if (!i) return null;\n if (isStatefulComponent(i)) return getComponentPublicInstance(i);\n return getPublicInstance(i.parent);\n};\nconst publicPropertiesMap = (\n // Move PURE marker to new line to workaround compiler discarding it\n // due to type annotation\n /* @__PURE__ */ extend(/* @__PURE__ */ Object.create(null), {\n $: (i) => i,\n $el: (i) => i.vnode.el,\n $data: (i) => i.data,\n $props: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.props) : i.props,\n $attrs: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.attrs) : i.attrs,\n $slots: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.slots) : i.slots,\n $refs: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.refs) : i.refs,\n $parent: (i) => getPublicInstance(i.parent),\n $root: (i) => getPublicInstance(i.root),\n $host: (i) => i.ce,\n $emit: (i) => i.emit,\n $options: (i) => __VUE_OPTIONS_API__ ? resolveMergedOptions(i) : i.type,\n $forceUpdate: (i) => i.f || (i.f = () => {\n queueJob(i.update);\n }),\n $nextTick: (i) => i.n || (i.n = nextTick.bind(i.proxy)),\n $watch: (i) => __VUE_OPTIONS_API__ ? instanceWatch.bind(i) : NOOP\n })\n);\nconst isReservedPrefix = (key) => key === \"_\" || key === \"$\";\nconst hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key);\nconst PublicInstanceProxyHandlers = {\n get({ _: instance }, key) {\n if (key === \"__v_skip\") {\n return true;\n }\n const { ctx, setupState, data, props, accessCache, type, appContext } = instance;\n if (!!(process.env.NODE_ENV !== \"production\") && key === \"__isVue\") {\n return true;\n }\n let normalizedProps;\n if (key[0] !== \"$\") {\n const n = accessCache[key];\n if (n !== void 0) {\n switch (n) {\n case 1 /* SETUP */:\n return setupState[key];\n case 2 /* DATA */:\n return data[key];\n case 4 /* CONTEXT */:\n return ctx[key];\n case 3 /* PROPS */:\n return props[key];\n }\n } else if (hasSetupBinding(setupState, key)) {\n accessCache[key] = 1 /* SETUP */;\n return setupState[key];\n } else if (data !== EMPTY_OBJ && hasOwn(data, key)) {\n accessCache[key] = 2 /* DATA */;\n return data[key];\n } else if (\n // only cache other properties when instance has declared (thus stable)\n // props\n (normalizedProps = instance.propsOptions[0]) && hasOwn(normalizedProps, key)\n ) {\n accessCache[key] = 3 /* PROPS */;\n return props[key];\n } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (!__VUE_OPTIONS_API__ || shouldCacheAccess) {\n accessCache[key] = 0 /* OTHER */;\n }\n }\n const publicGetter = publicPropertiesMap[key];\n let cssModule, globalProperties;\n if (publicGetter) {\n if (key === \"$attrs\") {\n track(instance.attrs, \"get\", \"\");\n !!(process.env.NODE_ENV !== \"production\") && markAttrsAccessed();\n } else if (!!(process.env.NODE_ENV !== \"production\") && key === \"$slots\") {\n track(instance, \"get\", key);\n }\n return publicGetter(instance);\n } else if (\n // css module (injected by vue-loader)\n (cssModule = type.__cssModules) && (cssModule = cssModule[key])\n ) {\n return cssModule;\n } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (\n // global properties\n globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key)\n ) {\n {\n return globalProperties[key];\n }\n } else if (!!(process.env.NODE_ENV !== \"production\") && currentRenderingInstance && (!isString(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading\n // to infinite warning loop\n key.indexOf(\"__v\") !== 0)) {\n if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) {\n warn$1(\n `Property ${JSON.stringify(\n key\n )} must be accessed via $data because it starts with a reserved character (\"$\" or \"_\") and is not proxied on the render context.`\n );\n } else if (instance === currentRenderingInstance) {\n warn$1(\n `Property ${JSON.stringify(key)} was accessed during render but is not defined on instance.`\n );\n }\n }\n },\n set({ _: instance }, key, value) {\n const { data, setupState, ctx } = instance;\n if (hasSetupBinding(setupState, key)) {\n setupState[key] = value;\n return true;\n } else if (!!(process.env.NODE_ENV !== \"production\") && setupState.__isScriptSetup && hasOwn(setupState, key)) {\n warn$1(`Cannot mutate \n\n\n","import '../assets/NcAppNavigationList-BIbyyT7b.css';\nimport { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcAppNavigationList\"\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"ul\", { staticClass: \"app-navigation-list\" }, [_vm._t(\"default\")], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"058e6060\"\n);\nconst NcAppNavigationList = __component__.exports;\nexport {\n NcAppNavigationList as default\n};\n","import '../assets/NcAppNavigationToggle-DvYpNzHv.css';\nimport NcButton from \"../Components/NcButton.mjs\";\nimport { r as register, C as t19, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t19);\nconst _sfc_main$2 = {\n name: \"MenuIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon menu-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null\n);\nconst MenuIcon = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"MenuOpenIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon menu-open-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"M21,15.61L19.59,17L14.58,12L19.59,7L21,8.39L17.44,12L21,15.61M3,6H16V8H3V6M3,13V11H13V13H3M3,18V16H16V18H3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst MenuOpenIcon = __component__$1.exports;\nconst _sfc_main = {\n name: \"NcAppNavigationToggle\",\n components: {\n NcButton,\n MenuIcon,\n MenuOpenIcon\n },\n props: {\n /**\n * Tracks whether the toggle has been clicked or not.\n * If it has been clicked, switches between the different MenuIcons\n * and emits a boolean indicating its opened status\n */\n open: {\n type: Boolean,\n required: true\n }\n },\n emits: [\"update:open\"],\n computed: {\n label() {\n return this.open ? t(\"Close navigation\") : t(\"Open navigation\");\n }\n },\n methods: {\n /**\n * Once the toggle has been clicked, emits the toggle status\n * so parent components can gauge the status of the navigation button\n */\n toggleNavigation() {\n this.$emit(\"update:open\", !this.open);\n }\n }\n};\nvar _sfc_render = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"app-navigation-toggle-wrapper\" }, [_c(\"NcButton\", { staticClass: \"app-navigation-toggle\", attrs: { \"type\": \"tertiary\", \"aria-expanded\": _vm.open ? \"true\" : \"false\", \"aria-label\": _vm.label, \"title\": _vm.label, \"aria-controls\": \"app-navigation-vue\" }, on: { \"click\": _vm.toggleNavigation }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm.open ? _c(\"MenuOpenIcon\", { attrs: { \"size\": 20 } }) : _c(\"MenuIcon\", { attrs: { \"size\": 20 } })];\n }, proxy: true }]) })], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"b6024aba\"\n);\nconst NcAppNavigationToggle = __component__.exports;\nexport {\n NcAppNavigationToggle as N\n};\n","import '../assets/NcAppNavigation-fhylfTxx.css';\nimport { useIsMobile } from \"../Composables/useIsMobile.mjs\";\nimport { g as getTrapStack } from \"./focusTrap-Cecv_gjR.mjs\";\nimport { subscribe, emit, unsubscribe } from \"@nextcloud/event-bus\";\nimport { createFocusTrap } from \"focus-trap\";\nimport NcAppNavigationList from \"../Components/NcAppNavigationList.mjs\";\nimport { N as NcAppNavigationToggle } from \"./NcAppNavigationToggle-BXainLDc.mjs\";\nimport Vue from \"vue\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcAppNavigation\",\n components: {\n NcAppNavigationList,\n NcAppNavigationToggle\n },\n // Injected from NcContent\n inject: {\n setHasAppNavigation: {\n default: () => () => Vue.util.warn(\"NcAppNavigation is not mounted inside NcContent, this is probably an error.\"),\n from: \"NcContent:setHasAppNavigation\"\n }\n },\n props: {\n /**\n * The aria label to describe the navigation\n */\n ariaLabel: {\n type: String,\n default: \"\"\n },\n /**\n * aria-labelledby attribute to describe the navigation\n */\n ariaLabelledby: {\n type: String,\n default: \"\"\n }\n },\n setup() {\n return {\n isMobile: useIsMobile()\n };\n },\n data() {\n return {\n open: !this.isMobile,\n focusTrap: null\n };\n },\n watch: {\n isMobile() {\n this.open = !this.isMobile;\n this.toggleFocusTrap();\n },\n open() {\n this.toggleFocusTrap();\n }\n },\n mounted() {\n this.setHasAppNavigation(true);\n subscribe(\"toggle-navigation\", this.toggleNavigationByEventBus);\n emit(\"navigation-toggled\", {\n open: this.open\n });\n this.focusTrap = createFocusTrap(this.$refs.appNavigationContainer, {\n allowOutsideClick: true,\n fallbackFocus: this.$refs.appNavigationContainer,\n trapStack: getTrapStack(),\n escapeDeactivates: false\n });\n this.toggleFocusTrap();\n },\n unmounted() {\n this.setHasAppNavigation(false);\n unsubscribe(\"toggle-navigation\", this.toggleNavigationByEventBus);\n this.focusTrap.deactivate();\n },\n methods: {\n /**\n * Toggle the navigation\n *\n * @param {boolean} [state] set the state instead of inverting the current one\n */\n toggleNavigation(state) {\n if (this.open === state) {\n emit(\"navigation-toggled\", {\n open: this.open\n });\n return;\n }\n this.open = typeof state === \"undefined\" ? !this.open : state;\n const bodyStyles = getComputedStyle(document.body);\n const animationLength = parseInt(bodyStyles.getPropertyValue(\"--animation-quick\")) || 100;\n setTimeout(() => {\n emit(\"navigation-toggled\", {\n open: this.open\n });\n }, 1.5 * animationLength);\n },\n toggleNavigationByEventBus({ open }) {\n this.toggleNavigation(open);\n },\n /**\n * Activate focus trap if it is currently needed, otherwise deactivate\n */\n toggleFocusTrap() {\n if (this.isMobile && this.open) {\n this.focusTrap.activate();\n } else {\n this.focusTrap.deactivate();\n }\n },\n handleEsc() {\n if (this.isMobile) {\n this.toggleNavigation(false);\n }\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { ref: \"appNavigationContainer\", staticClass: \"app-navigation\", class: { \"app-navigation--close\": !_vm.open } }, [_c(\"nav\", { staticClass: \"app-navigation__content\", attrs: { \"id\": \"app-navigation-vue\", \"aria-hidden\": _vm.open ? \"false\" : \"true\", \"aria-label\": _vm.ariaLabel || void 0, \"aria-labelledby\": _vm.ariaLabelledby || void 0, \"inert\": !_vm.open || void 0 }, on: { \"keydown\": function($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) return null;\n return _vm.handleEsc.apply(null, arguments);\n } } }, [_c(\"div\", { staticClass: \"app-navigation__search\" }, [_vm._t(\"search\")], 2), _c(\"div\", { staticClass: \"app-navigation__body\", class: { \"app-navigation__body--no-list\": !_vm.$scopedSlots.list } }, [_vm._t(\"default\")], 2), _vm.$scopedSlots.list ? _c(\"NcAppNavigationList\", { staticClass: \"app-navigation__list\" }, [_vm._t(\"list\")], 2) : _vm._e(), _vm._t(\"footer\")], 2), _c(\"NcAppNavigationToggle\", { attrs: { \"open\": _vm.open }, on: { \"update:open\": _vm.toggleNavigation } })], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"e7d078cc\"\n);\nconst NcAppNavigation = __component__.exports;\nexport {\n NcAppNavigation as N\n};\n","import '../assets/NcActionButton-D90PTEA5.css';\nimport { C as Check } from \"../chunks/Check-XHAzUBkX.mjs\";\nimport { C as ChevronRight } from \"../chunks/ChevronRight-C3eVhc5a.mjs\";\nimport { A as ActionTextMixin } from \"../chunks/actionText-fFcUPi2g.mjs\";\nimport { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcActionButton\",\n components: {\n CheckIcon: Check,\n ChevronRightIcon: ChevronRight\n },\n mixins: [ActionTextMixin],\n inject: {\n isInSemanticMenu: {\n from: \"NcActions:isSemanticMenu\",\n default: false\n }\n },\n props: {\n /**\n * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.\n * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,\n * otherwise root element will inherit incorrect aria-hidden.\n */\n ariaHidden: {\n type: Boolean,\n default: null\n },\n /**\n * disabled state of the action button\n */\n disabled: {\n type: Boolean,\n default: false\n },\n /**\n * If this is a menu, a chevron icon will\n * be added at the end of the line\n */\n isMenu: {\n type: Boolean,\n default: false\n },\n /**\n * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.\n * But you can also set to checkbox button behavior with tri-state or radio button like behavior.\n * This extends the native HTML button type attribute.\n */\n type: {\n type: String,\n default: \"button\",\n validator: (behavior) => [\"button\", \"checkbox\", \"radio\", \"reset\", \"submit\"].includes(behavior)\n },\n /**\n * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).\n * For checkbox and toggle button behavior - boolean value.\n * For radio button behavior - could be a boolean checked or a string with the value of the button.\n * Note: Unlike native radio buttons, NcActionButton are not grouped by name, so you need to connect them by bind correct modelValue.\n *\n * **This is not availabe for `type='submit'` or `type='reset'`**\n *\n * If using `type='checkbox'` a `model-value` of `true` means checked, `false` means unchecked and `null` means indeterminate (tri-state)\n * For `type='radio'` `null` is equal to `false`\n */\n modelValue: {\n type: [Boolean, String],\n default: null\n },\n /**\n * The value used for the `modelValue` when this component is used with radio behavior\n * Similar to the `value` attribute of ``\n */\n value: {\n type: String,\n default: null\n }\n },\n computed: {\n /**\n * determines if the action is focusable\n *\n * @return {boolean} is the action focusable ?\n */\n isFocusable() {\n return !this.disabled;\n },\n /**\n * The current \"checked\" or \"pressed\" state for the model behavior\n */\n isChecked() {\n if (this.type === \"radio\" && typeof this.modelValue !== \"boolean\") {\n return this.modelValue === this.value;\n }\n return this.modelValue;\n },\n /**\n * The native HTML type to set on the button\n */\n nativeType() {\n if (this.type === \"submit\" || this.type === \"reset\") {\n return this.type;\n }\n return \"button\";\n },\n /**\n * HTML attributes to bind to the \n */\n buttonAttributes() {\n const attributes = {};\n if (this.isInSemanticMenu) {\n attributes.role = \"menuitem\";\n if (this.type === \"radio\") {\n attributes.role = \"menuitemradio\";\n attributes[\"aria-checked\"] = this.isChecked ? \"true\" : \"false\";\n } else if (this.type === \"checkbox\" || this.nativeType === \"button\" && this.modelValue !== null) {\n attributes.role = \"menuitemcheckbox\";\n attributes[\"aria-checked\"] = this.modelValue === null ? \"mixed\" : this.modelValue ? \"true\" : \"false\";\n }\n } else if (this.modelValue !== null && this.nativeType === \"button\") {\n attributes[\"aria-pressed\"] = this.modelValue ? \"true\" : \"false\";\n }\n return attributes;\n }\n },\n methods: {\n /**\n * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed\n * @param {MouseEvent} event The click event\n */\n handleClick(event) {\n this.onClick(event);\n if (this.modelValue !== null || this.type !== \"button\") {\n if (this.type === \"radio\") {\n if (typeof this.modelValue !== \"boolean\") {\n if (!this.isChecked) {\n this.$emit(\"update:modelValue\", this.value);\n }\n } else {\n this.$emit(\"update:modelValue\", !this.isChecked);\n }\n } else {\n this.$emit(\"update:modelValue\", !this.isChecked);\n }\n }\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"li\", { staticClass: \"action\", class: { \"action--disabled\": _vm.disabled }, attrs: { \"role\": _vm.isInSemanticMenu && \"presentation\" } }, [_c(\"button\", _vm._b({ class: [\"action-button button-vue\", {\n \"action-button--active\": _vm.isChecked,\n focusable: _vm.isFocusable\n }], attrs: { \"aria-label\": _vm.ariaLabel, \"disabled\": _vm.disabled, \"title\": _vm.title, \"type\": _vm.nativeType }, on: { \"click\": _vm.handleClick } }, \"button\", _vm.buttonAttributes, false), [_vm._t(\"icon\", function() {\n return [_c(\"span\", { staticClass: \"action-button__icon\", class: [_vm.isIconUrl ? \"action-button__icon--url\" : _vm.icon], style: { backgroundImage: _vm.isIconUrl ? \"url(\".concat(_vm.icon, \")\") : null }, attrs: { \"aria-hidden\": \"true\" } })];\n }), _vm.name ? _c(\"span\", { staticClass: \"action-button__longtext-wrapper\" }, [_c(\"strong\", { staticClass: \"action-button__name\" }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")]), _c(\"br\"), _c(\"span\", { staticClass: \"action-button__longtext\", domProps: { \"textContent\": _vm._s(_vm.text) } })]) : _vm.isLongText ? _c(\"span\", { staticClass: \"action-button__longtext\", domProps: { \"textContent\": _vm._s(_vm.text) } }) : _c(\"span\", { staticClass: \"action-button__text\" }, [_vm._v(_vm._s(_vm.text))]), _vm.isMenu ? _c(\"ChevronRightIcon\", { staticClass: \"action-button__menu-icon\", attrs: { \"size\": 20 } }) : _vm.isChecked === true ? _c(\"CheckIcon\", { staticClass: \"action-button__pressed-icon\", attrs: { \"size\": 20 } }) : _vm.isChecked === false ? _c(\"span\", { staticClass: \"action-button__pressed-icon material-design-icon\" }) : _vm._e(), _vm._e()], 2)]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"dba65098\"\n);\nconst NcActionButton = __component__.exports;\nexport {\n NcActionButton as default\n};\n","import { n as normalizeComponent } from \"../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"NcVNodes\",\n props: {\n /**\n * The vnodes to render\n */\n vnodes: {\n type: [Array, Object],\n default: null\n }\n },\n /**\n * The render function to display the component\n *\n * @param {Function} h The function to create VNodes\n * @return {object} The created VNode\n */\n render(h) {\n var _a, _b, _c;\n return this.vnodes || ((_a = this.$slots) == null ? void 0 : _a.default) || ((_c = (_b = this.$scopedSlots) == null ? void 0 : _b.default) == null ? void 0 : _c.call(_b));\n }\n};\nconst _sfc_render = null;\nconst _sfc_staticRenderFns = null;\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst NcVNodes = __component__.exports;\nexport {\n NcVNodes as default\n};\n","import { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nconst _sfc_main = {\n name: \"ChevronUpIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon chevron-up-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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.41,15.41L12,10.83L16.59,15.41L18,14L12,8L6,14L7.41,15.41Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst ChevronUp = __component__.exports;\nexport {\n ChevronUp as C\n};\n","import '../assets/NcInputConfirmCancel-SGr0-6w8.css';\nimport NcButton from \"../Components/NcButton.mjs\";\nimport { r as register, p as t13, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport { A as ArrowRight } from \"./ArrowRight-KsL2PC-o.mjs\";\nimport { C as Close } from \"./Close-B6ccm1RP.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t13);\nconst _sfc_main = {\n name: \"NcInputConfirmCancel\",\n components: {\n NcButton,\n ArrowRight,\n Close\n },\n props: {\n /**\n * If this element is used on a primary element set to true for primary styling.\n */\n primary: {\n default: false,\n type: Boolean\n },\n placeholder: {\n default: \"\",\n type: String\n },\n value: {\n default: \"\",\n type: String\n }\n },\n emits: [\n \"input\",\n \"confirm\",\n \"cancel\"\n ],\n data() {\n return {\n labelConfirm: t(\"Confirm changes\"),\n labelCancel: t(\"Cancel changes\")\n };\n },\n computed: {\n valueModel: {\n get() {\n return this.value;\n },\n set(newValue) {\n this.$emit(\"input\", newValue);\n }\n }\n },\n methods: {\n confirm() {\n this.$emit(\"confirm\");\n },\n cancel() {\n this.$emit(\"cancel\");\n },\n focusInput() {\n this.$refs.input.focus();\n }\n }\n};\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"app-navigation-input-confirm\" }, [_c(\"form\", { on: { \"submit\": function($event) {\n $event.preventDefault();\n return _vm.confirm.apply(null, arguments);\n }, \"keydown\": function($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) return null;\n if ($event.ctrlKey || $event.shiftKey || $event.altKey || $event.metaKey) return null;\n $event.stopPropagation();\n $event.preventDefault();\n return _vm.cancel.apply(null, arguments);\n }, \"click\": function($event) {\n $event.stopPropagation();\n $event.preventDefault();\n } } }, [_c(\"input\", { directives: [{ name: \"model\", rawName: \"v-model\", value: _vm.valueModel, expression: \"valueModel\" }], ref: \"input\", staticClass: \"app-navigation-input-confirm__input\", attrs: { \"type\": \"text\", \"placeholder\": _vm.placeholder }, domProps: { \"value\": _vm.valueModel }, on: { \"input\": function($event) {\n if ($event.target.composing) return;\n _vm.valueModel = $event.target.value;\n } } }), _c(\"NcButton\", { attrs: { \"native-type\": \"submit\", \"type\": \"primary\", \"aria-label\": _vm.labelConfirm }, on: { \"click\": function($event) {\n $event.stopPropagation();\n $event.preventDefault();\n return _vm.confirm.apply(null, arguments);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"ArrowRight\", { attrs: { \"size\": 20 } })];\n }, proxy: true }]) }), _c(\"NcButton\", { attrs: { \"native-type\": \"reset\", \"type\": _vm.primary ? \"primary\" : \"tertiary\", \"aria-label\": _vm.labelCancel }, on: { \"click\": function($event) {\n $event.stopPropagation();\n $event.preventDefault();\n return _vm.cancel.apply(null, arguments);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"Close\", { attrs: { \"size\": 20 } })];\n }, proxy: true }]) })], 1)]);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"0e795eb7\"\n);\nconst NcInputConfirmCancel = __component__.exports;\nexport {\n NcInputConfirmCancel as N\n};\n","import '../assets/NcAppNavigationItem-CxlG8Qdb.css';\nimport { N as NcActions } from \"./NcActions-BgYpDq2n.mjs\";\nimport NcActionButton from \"../Components/NcActionButton.mjs\";\nimport NcLoadingIcon from \"../Components/NcLoadingIcon.mjs\";\nimport NcVNodes from \"../Components/NcVNodes.mjs\";\nimport NcButton from \"../Components/NcButton.mjs\";\nimport { r as register, L as t20, a as t, d as t48, M as t21 } from \"./_l10n-JYjUKekn.mjs\";\nimport { C as ChevronDown } from \"./ChevronDown-D3Tfshug.mjs\";\nimport { C as ChevronUp } from \"./ChevronUp-ljACquzS.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nimport { useIsMobile } from \"../Composables/useIsMobile.mjs\";\nimport { N as NcInputConfirmCancel } from \"./NcInputConfirmCancel-PXVZ7mLT.mjs\";\nimport { G as GenRandomId } from \"./GenRandomId-CMooMQt0.mjs\";\nregister(t20);\nconst _sfc_main$3 = {\n name: \"NcAppNavigationIconCollapsible\",\n components: {\n NcButton,\n ChevronDown,\n ChevronUp\n },\n props: {\n open: {\n type: Boolean,\n default: true\n }\n },\n emits: [\"click\"],\n computed: {\n labelButton() {\n return this.open ? t(\"Collapse menu\") : t(\"Open menu\");\n }\n },\n methods: {\n onClick(e) {\n this.$emit(\"click\", e);\n }\n }\n};\nvar _sfc_render$3 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"NcButton\", { staticClass: \"icon-collapse\", class: { \"icon-collapse--open\": _vm.open }, attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.labelButton }, on: { \"click\": _vm.onClick }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm.open ? _c(\"ChevronUp\", { attrs: { \"size\": 20 } }) : _c(\"ChevronDown\", { attrs: { \"size\": 20 } })];\n }, proxy: true }]) });\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n \"cadd59ae\"\n);\nconst NcAppNavigationIconCollapsible = __component__$3.exports;\nregister(t21, t48);\nconst _sfc_main$2 = {\n name: \"PencilIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon pencil-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"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\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null\n);\nconst Pencil = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"UndoIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon undo-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"M12.5,8C9.85,8 7.45,9 5.6,10.6L2,7V16H11L7.38,12.38C8.77,11.22 10.54,10.5 12.5,10.5C16.04,10.5 19.05,12.81 20.1,16L22.47,15.22C21.08,11.03 17.15,8 12.5,8Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst Undo = __component__$1.exports;\nconst _sfc_main = {\n name: \"NcAppNavigationItem\",\n components: {\n NcActions,\n NcActionButton,\n NcAppNavigationIconCollapsible,\n NcInputConfirmCancel,\n NcLoadingIcon,\n NcVNodes,\n Pencil,\n Undo\n },\n props: {\n /**\n * If you are not using vue-router you can use the property to set this item as the active navigation entry.\n * When using vue-router and the `to` property this is set automatically.\n */\n active: {\n type: Boolean,\n default: false\n },\n /**\n * The main text content of the entry.\n */\n name: {\n type: String,\n required: true\n },\n /**\n * The title attribute of the element.\n */\n title: {\n type: String,\n default: null\n },\n /**\n * id attribute of the list item element\n */\n id: {\n type: String,\n default: () => \"app-navigation-item-\" + GenRandomId(),\n validator: (id) => id.trim() !== \"\"\n },\n /**\n * Refers to the icon on the left, this prop accepts a class\n * like 'icon-category-enabled'.\n */\n icon: {\n type: String,\n default: \"\"\n },\n /**\n * Displays a loading animated icon on the left of the element\n * instead of the icon.\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * Passing in a route will make the root element of this\n * component a `` that points to that route.\n * By leaving this blank, the root element will be a ``.\n */\n to: {\n type: [String, Object],\n default: null\n },\n /**\n * A direct link. This will be used as the `href` attribute.\n * This will ignore any `to` prop being defined.\n */\n href: {\n type: String,\n default: null\n },\n /**\n * Pass in `true` if you want the matching behaviour to\n * be non-inclusive: https://router.vuejs.org/api/#exact\n */\n exact: {\n type: Boolean,\n default: false\n },\n /**\n * Gives the possibility to collapse the children elements into the\n * parent element (true) or expands the children elements (false).\n */\n allowCollapse: {\n type: Boolean,\n default: false\n },\n /**\n * Makes the name of the item editable by providing an `ActionButton`\n * component that toggles a form\n */\n editable: {\n type: Boolean,\n default: false\n },\n /**\n * Only for 'editable' items, sets label for the edit action button.\n */\n editLabel: {\n type: String,\n default: \"\"\n },\n /**\n * Only for items in 'editable' mode, sets the placeholder text for the editing form.\n */\n editPlaceholder: {\n type: String,\n default: \"\"\n },\n /**\n * Pins the item to the bottom left area, above the settings. Do not\n * place 'non-pinned' `AppnavigationItem` components below `pinned`\n * ones.\n */\n pinned: {\n type: Boolean,\n default: false\n },\n /**\n * Puts the item in the 'undo' state.\n */\n undo: {\n type: Boolean,\n default: false\n },\n /**\n * The navigation collapsible state (synced)\n */\n open: {\n type: Boolean,\n default: false\n },\n /**\n * The actions menu open state (synced)\n */\n menuOpen: {\n type: Boolean,\n default: false\n },\n /**\n * Force the actions to display in a three dot menu\n */\n forceMenu: {\n type: Boolean,\n default: false\n },\n /**\n * The action's menu default icon\n */\n menuIcon: {\n type: String,\n default: void 0\n },\n /**\n * The action's menu direction\n */\n menuPlacement: {\n type: String,\n default: \"bottom\"\n },\n /**\n * Entry aria details\n */\n ariaDescription: {\n type: String,\n default: null\n },\n /**\n * To be used only when the elements in the actions menu are very important\n */\n forceDisplayActions: {\n type: Boolean,\n default: false\n },\n /**\n * Number of action items outside the menu\n */\n inlineActions: {\n type: Number,\n default: 0\n }\n },\n emits: [\n \"update:menuOpen\",\n \"update:open\",\n \"update:name\",\n \"click\",\n \"undo\"\n ],\n setup() {\n return {\n isMobile: useIsMobile()\n };\n },\n data() {\n return {\n editingValue: \"\",\n opened: this.open,\n // Collapsible state\n editingActive: false,\n hasChildren: false,\n /**\n * Tracks the open state of the actions menu\n */\n menuOpenLocalValue: false,\n focused: false,\n collapsible: false,\n actionsBoundariesElement: void 0\n };\n },\n computed: {\n isRouterLink() {\n return this.to && !this.href;\n },\n // Checks if the component is already a children of another\n // instance of AppNavigationItem\n canHaveChildren() {\n if (this.$parent.$options._componentTag === \"AppNavigationItem\") {\n return false;\n } else {\n return true;\n }\n },\n hasUtils() {\n if (this.$slots.actions || this.$slots.counter || this.editable || this.undo) {\n return true;\n }\n return false;\n },\n editButtonAriaLabel() {\n return this.editLabel ? this.editLabel : t(\"Edit item\");\n },\n undoButtonAriaLabel() {\n return t(\"Undo changes\");\n }\n },\n watch: {\n open(newVal) {\n this.opened = newVal;\n }\n },\n mounted() {\n this.actionsBoundariesElement = document.querySelector(\"#content-vue\") || void 0;\n },\n created() {\n this.updateSlotInfo();\n },\n beforeUpdate() {\n this.updateSlotInfo();\n },\n methods: {\n // sync opened menu state with prop\n onMenuToggle(state) {\n this.$emit(\"update:menuOpen\", state);\n this.menuOpenLocalValue = state;\n },\n // toggle the collapsible state\n toggleCollapse() {\n this.opened = !this.opened;\n this.$emit(\"update:open\", this.opened);\n },\n /**\n * Handle link click\n *\n * @param {PointerEvent} event - Native click event\n * @param {Function} [navigate] - VueRouter link's navigate if any\n * @param {string} [routerLinkHref] - VueRouter link's href\n */\n onClick(event, navigate, routerLinkHref) {\n this.$emit(\"click\", event);\n if (event.metaKey || event.altKey || event.ctrlKey || event.shiftKey) {\n return;\n }\n if (routerLinkHref) {\n navigate == null ? void 0 : navigate(event);\n event.preventDefault();\n }\n },\n // Edition methods\n handleEdit() {\n this.editingValue = this.name;\n this.editingActive = true;\n this.onMenuToggle(false);\n this.$nextTick(() => {\n this.$refs.editingInput.focusInput();\n });\n },\n cancelEditing() {\n this.editingActive = false;\n },\n handleEditingDone() {\n this.$emit(\"update:name\", this.editingValue);\n this.editingValue = \"\";\n this.editingActive = false;\n },\n // Undo methods\n handleUndo() {\n this.$emit(\"undo\");\n },\n updateSlotInfo() {\n this.hasChildren = !!this.$slots.default;\n this.collapsible = this.allowCollapse && !!this.$slots.default;\n },\n /**\n * Show actions upon focus\n */\n handleFocus() {\n this.focused = true;\n },\n handleBlur() {\n this.focused = false;\n },\n /**\n * This method checks if the root element of the component is focused and\n * if that's the case it focuses the actions button if available\n *\n * @param {Event} e the keydown event\n */\n handleTab(e) {\n if (!this.$refs.actions) {\n return;\n }\n if (this.focused) {\n e.preventDefault();\n this.$refs.actions.$refs.menuButton.$el.focus();\n this.focused = false;\n } else {\n this.$refs.actions.$refs.menuButton.$el.blur();\n }\n },\n /**\n * Is this an external link\n *\n * @param {string} href The link to check\n * @return {boolean} Whether it is external or not\n */\n isExternal(href) {\n return href && href.match(/[a-z]+:\\/\\//i);\n }\n }\n};\nvar _sfc_render = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"li\", { staticClass: \"app-navigation-entry-wrapper\", class: {\n \"app-navigation-entry--opened\": _vm.opened,\n \"app-navigation-entry--pinned\": _vm.pinned,\n \"app-navigation-entry--collapsible\": _vm.collapsible\n }, attrs: { \"id\": _vm.id } }, [_c(_vm.isRouterLink ? \"router-link\" : \"NcVNodes\", { tag: \"component\", attrs: { \"custom\": _vm.isRouterLink ? true : false, \"to\": _vm.to, \"exact\": _vm.isRouterLink ? _vm.exact : null }, scopedSlots: _vm._u([{ key: \"default\", fn: function({ href: routerLinkHref, navigate, isActive }) {\n return [_c(\"div\", { staticClass: \"app-navigation-entry\", class: {\n \"app-navigation-entry--editing\": _vm.editingActive,\n \"app-navigation-entry--deleted\": _vm.undo,\n \"active\": isActive && _vm.to || _vm.active\n } }, [!_vm.undo ? _c(\"a\", { staticClass: \"app-navigation-entry-link\", attrs: { \"aria-current\": _vm.active || isActive && _vm.to ? \"page\" : void 0, \"aria-description\": _vm.ariaDescription, \"aria-expanded\": _vm.hasChildren ? _vm.opened.toString() : void 0, \"href\": _vm.href || routerLinkHref || \"#\", \"target\": _vm.isExternal(_vm.href) ? \"_blank\" : void 0, \"title\": _vm.title || _vm.name }, on: { \"blur\": _vm.handleBlur, \"click\": function($event) {\n return _vm.onClick($event, navigate, routerLinkHref);\n }, \"focus\": _vm.handleFocus, \"keydown\": function($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"tab\", 9, $event.key, \"Tab\")) return null;\n if ($event.ctrlKey || $event.shiftKey || $event.altKey || $event.metaKey) return null;\n return _vm.handleTab.apply(null, arguments);\n } } }, [_c(\"div\", { staticClass: \"app-navigation-entry-icon\", class: { [_vm.icon]: _vm.icon } }, [_vm.loading ? _c(\"NcLoadingIcon\") : _vm._t(\"icon\")], 2), !_vm.editingActive ? _c(\"span\", { staticClass: \"app-navigation-entry__name\" }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")]) : _vm._e(), _vm.editingActive ? _c(\"div\", { staticClass: \"editingContainer\" }, [_c(\"NcInputConfirmCancel\", { ref: \"editingInput\", attrs: { \"placeholder\": _vm.editPlaceholder !== \"\" ? _vm.editPlaceholder : _vm.name, \"primary\": isActive && _vm.to || _vm.active }, on: { \"cancel\": _vm.cancelEditing, \"confirm\": _vm.handleEditingDone }, model: { value: _vm.editingValue, callback: function($$v) {\n _vm.editingValue = $$v;\n }, expression: \"editingValue\" } })], 1) : _vm._e()]) : _vm._e(), _vm.undo ? _c(\"div\", { staticClass: \"app-navigation-entry__deleted\" }, [_c(\"div\", { staticClass: \"app-navigation-entry__deleted-description\" }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \")])]) : _vm._e(), _vm.hasUtils && !_vm.editingActive ? _c(\"div\", { staticClass: \"app-navigation-entry__utils\", class: { \"app-navigation-entry__utils--display-actions\": _vm.forceDisplayActions || _vm.menuOpenLocalValue || _vm.menuOpen } }, [_vm.$slots.counter ? _c(\"div\", { staticClass: \"app-navigation-entry__counter-wrapper\" }, [_vm._t(\"counter\")], 2) : _vm._e(), _vm.$slots.actions || _vm.editable && !_vm.editingActive || _vm.undo ? _c(\"NcActions\", { ref: \"actions\", staticClass: \"app-navigation-entry__actions\", attrs: { \"inline\": _vm.inlineActions, \"container\": \"#app-navigation-vue\", \"boundaries-element\": _vm.actionsBoundariesElement, \"placement\": _vm.menuPlacement, \"open\": _vm.menuOpen, \"type\": isActive && _vm.to || _vm.active ? \"primary\" : null, \"force-menu\": _vm.forceMenu, \"default-icon\": _vm.menuIcon }, on: { \"update:open\": _vm.onMenuToggle }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_vm._t(\"menu-icon\")];\n }, proxy: true }], null, true) }, [_vm.editable && !_vm.editingActive ? _c(\"NcActionButton\", { attrs: { \"aria-label\": _vm.editButtonAriaLabel }, on: { \"click\": _vm.handleEdit }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"Pencil\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, true) }, [_vm._v(\" \" + _vm._s(_vm.editLabel) + \" \")]) : _vm._e(), _vm.undo ? _c(\"NcActionButton\", { attrs: { \"aria-label\": _vm.undoButtonAriaLabel }, on: { \"click\": _vm.handleUndo }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"Undo\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, true) }) : _vm._e(), _vm._t(\"actions\")], 2) : _vm._e()], 1) : _vm._e(), _vm.collapsible ? _c(\"NcAppNavigationIconCollapsible\", { attrs: { \"open\": _vm.opened }, on: { \"click\": function($event) {\n $event.preventDefault();\n $event.stopPropagation();\n return _vm.toggleCollapse.apply(null, arguments);\n } } }) : _vm._e(), _vm._t(\"extra\")], 2)];\n } }], null, true) }), _vm.canHaveChildren && _vm.hasChildren ? _c(\"ul\", { staticClass: \"app-navigation-entry__children\" }, [_vm._t(\"default\")], 2) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"97fce21a\"\n);\nconst NcAppNavigationItem = __component__.exports;\nexport {\n NcAppNavigationItem as N\n};\n","const clickOutsideOptions = {\n props: {\n /**\n * A query-selector or an array of query-selectors\n * to be ignored when clicking outside an element\n */\n excludeClickOutsideSelectors: {\n type: [String, Array],\n default: () => []\n }\n },\n computed: {\n clickOutsideOptions() {\n const excludedQuerySelectors = Array.isArray(this.excludeClickOutsideSelectors) ? this.excludeClickOutsideSelectors : [this.excludeClickOutsideSelectors];\n return { ignore: excludedQuerySelectors };\n }\n }\n};\nexport {\n clickOutsideOptions as default\n};\n","import '../assets/NcMentionBubble-C6t8od-_.css';\nimport '../assets/NcAppNavigationSettings-AzpTlUym.css';\nimport { r as register, w as t44, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport clickOutsideOptions from \"../Mixins/clickOutsideOptions.mjs\";\nimport \"../Composables/useIsFullscreen.mjs\";\nimport \"../Composables/useIsMobile.mjs\";\nimport \"@nextcloud/router\";\n/* empty css */\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nimport \"linkify-string\";\nimport \"escape-html\";\nimport \"striptags\";\nimport \"vue\";\nimport \"@nextcloud/auth\";\nimport \"@nextcloud/axios\";\nimport \"@nextcloud/capabilities\";\nimport { vOnClickOutside } from \"@vueuse/components\";\nregister(t44);\nconst _sfc_main$1 = {\n name: \"CogIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cog-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst Cog = __component__$1.exports;\nconst _sfc_main = {\n directives: {\n ClickOutside: vOnClickOutside\n },\n components: {\n Cog\n },\n mixins: [\n clickOutsideOptions\n ],\n props: {\n name: {\n type: String,\n required: false,\n default: t(\"Settings\")\n }\n },\n data() {\n return {\n open: false\n };\n },\n computed: {\n clickOutsideConfig() {\n return [\n this.closeMenu,\n this.clickOutsideOptions\n ];\n }\n },\n methods: {\n toggleMenu() {\n this.open = !this.open;\n },\n closeMenu() {\n this.open = false;\n }\n }\n};\nvar _sfc_render = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { directives: [{ name: \"click-outside\", rawName: \"v-click-outside\", value: _vm.clickOutsideConfig, expression: \"clickOutsideConfig\" }], class: { open: _vm.open }, attrs: { \"id\": \"app-settings\" } }, [_c(\"div\", { attrs: { \"id\": \"app-settings__header\" } }, [_c(\"button\", { staticClass: \"settings-button\", attrs: { \"type\": \"button\", \"aria-expanded\": _vm.open ? \"true\" : \"false\", \"aria-controls\": \"app-settings__content\" }, on: { \"click\": _vm.toggleMenu } }, [_c(\"Cog\", { staticClass: \"settings-button__icon\", attrs: { \"size\": 20 } }), _c(\"span\", { staticClass: \"settings-button__label\" }, [_vm._v(_vm._s(_vm.name))])], 1)]), _c(\"Transition\", { attrs: { \"name\": \"slide-up\" } }, [_c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.open, expression: \"open\" }], attrs: { \"id\": \"app-settings__content\" } }, [_vm._t(\"default\")], 2)])], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"981e215c\"\n);\nconst NcAppNavigationSettings = __component__.exports;\nexport {\n NcAppNavigationSettings as N\n};\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","\n\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{ t('activity', 'Enable RSS feed') }}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{ t('activity', 'Personal notification settings') }}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { RouteConfig } from 'vue-router'\nimport ActivityAppFeed from './views/ActivityAppFeed.vue'\nimport ActivityAppNavigation from './views/ActivityAppNavigation.vue'\n\nexport const routes = [\n\t{\n\t\tpath: '/',\n\t\tname: 'root',\n\t\tredirect: { path: '/all' },\n\t},\n\t{\n\t\tpath: '/:filter?',\n\t\tcomponents: {\n\t\t\tdefault: ActivityAppFeed,\n\t\t\tnavigation: ActivityAppNavigation,\n\t\t},\n\t\tprops: {\n\t\t\tdefault: true,\n\t\t},\n\t},\n] as RouteConfig[]\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport Vue from 'vue'\nimport VueRouter from 'vue-router'\nimport ActivityApp from './views/ActivityApp.vue'\n\nimport { translate, translatePlural } from '@nextcloud/l10n'\nimport { generateUrl } from '@nextcloud/router'\n\nimport { routes } from './routes'\n\n// Set up Vue\nVue.prototype.t = translate\nVue.prototype.n = translatePlural\n\nVue.use(VueRouter)\n\nconst router = new VueRouter({\n\tmode: 'history',\n\tbase: generateUrl('/apps/activity'),\n\tlinkActiveClass: 'active',\n\troutes,\n})\n\nexport default new Vue({\n\tel: '#content',\n\t// eslint-disable-next-line vue/match-component-file-name\n\tname: 'ActivityRoot',\n\trouter,\n\trender: h => h(ActivityApp),\n})\n"],"names":["urlAlphabet","nanoid","size","id","_typeof","obj","config","setSelector","selector","isBrowser","TargetContainer","Vue","vm","h","nodes","el","Portal","_this","disabled","parent","child","targetEl","install","_Vue","options","register","t29","contentSvg","navigationSvg","_sfc_main","NcButton","NcIconSvgWrapper","useIsMobile","container","t","emit","value","_sfc_render","_vm","_c","$event","_sfc_staticRenderFns","__component__","normalizeComponent","NcContent","__defProp","__defProps","__getOwnPropDescs","__getOwnPropSymbols","__hasOwnProp","__propIsEnum","__defNormalProp","key","__spreadValues","a","b","prop","__spreadProps","__objRest","source","exclude","target","scriptExports","render2","staticRenderFns2","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","originalRender","context","existing","__vue2_script$1","pane2","event","splitterIndex","totalMinSizes","i","paneId","rect","clientX","clientY","drag","containerSize","sums","minDrag","maxDrag","dragPercentage","panesToResize","paneBefore","paneAfter","paneBeforeMaxReached","paneAfterMaxReached","vars","total","p","isPane","isSplitter","paneIndex","nextPaneNode","isVeryFirst","elm","node","children","_a","_b","args","index","min","max","pane3","removed","changedPanes","equalSpace","leftToAllocate","ungrowable","unshrinkable","definedSizes","leftToAllocate2","addedPane","removedPane","equalSpaceToAllocate","newPaneSize","allocated","enable","splitter","__vue2_render","__vue2_staticRenderFns","__cssModules$1","__component__$1","__vue2_injectStyles$1","o","splitpanes","render","_h","staticRenderFns","__vue2_script","style","__cssModules","__vue2_injectStyles","pane","t26","_sfc_main$1","VTooltip","ArrowRight","hide","appNavigationToggle","_sfc_render$1","_sfc_staticRenderFns$1","NcAppDetailsToggle","browserStorage","getBuilder","Pane","Splitpanes","appName","useSwipe","e","direction","listPaneSize","NcAppContent","$placeholder","$fakeParent","$nextSiblingPatched","$childNodesPatched","isFrag","parentNodeDescriptor","patchParentNode","fakeParent","nextSiblingDescriptor","childNodes","patchNextSibling","getTopFragment","fromParent","_node","parentNode","getChildNodes","getChildNodesWithFragments","_childNodesDescriptor","realChildNodes","childNode","childNodesDescriptor","firstChildDescriptor","hasChildNodes","patchChildNodes","before","_this$frag$","remove","frag","getFragmentLeafNodes","_Array$prototype","addPlaceholder","insertBeforeNode","placeholder","removeChild","hasChildInFragment","_this$frag$splice","removedNode","hasChild","insertBefore","insertNode","insertNodes","_frag","_lastNode","removePlaceholder","lastNode","appendChild","lastChild","innerHTMLDescriptor","htmlString","_this2","domify","element","nextSibling","previousSibling","fragment","dateText","computed","today","moment","yesterday","first","props","fullDate","formatted","appIconSVG","makeMap","str","map","val","EMPTY_OBJ","NOOP","extend","hasOwnProperty","hasOwn","isArray","isMap","toTypeString","isSet","isFunction","isString","isSymbol","isObject","isPromise","objectToString","toRawType","isPlainObject","isIntegerKey","hasChanged","oldValue","_globalThis","getGlobalThis","global","activeSub","pausedQueueEffects","ReactiveEffect","fn","batch","cleanupEffect","prepareDeps","prevEffect","prevShouldTrack","shouldTrack","cleanupDeps","link","removeSub","isDirty","batchDepth","batchedSub","batchedComputed","sub","isComputed","startBatch","endBatch","next","error","err","head","tail","prev","removeDep","refreshComputed","globalVersion","dep","prevSub","soft","nextSub","l","prevDep","nextDep","trackStack","pauseTracking","resetTracking","last","cleanup","Link","Dep","debugInfo","addSub","currentTail","targetMap","ITERATE_KEY","MAP_KEY_ITERATE_KEY","ARRAY_ITERATE_KEY","track","type","depsMap","trigger","newValue","oldTarget","run","targetIsArray","isArrayIndex","newLength","key2","reactiveReadArray","array","raw","toRaw","isShallow","toReactive","shallowReadArray","arr","arrayInstrumentations","iterator","x","thisArg","apply","v","searchProxy","separator","noTracking","reduce","comparer","self","method","wrapValue","iter","result","arrayProto","wrappedRetFn","needsWrap","methodFn","result2","wrappedFn","item","acc","res","isProxy","isNonTrackableKeys","builtInSymbols","BaseReactiveHandler","_isReadonly","_isShallow","receiver","isReadonly2","isShallow2","shallowReadonlyMap","readonlyMap","shallowReactiveMap","reactiveMap","isRef","readonly","reactive","MutableReactiveHandler","isOldValueReadonly","isReadonly","hadKey","ReadonlyReactiveHandler","mutableHandlers","readonlyHandlers","toShallow","getProto","createIterableMethod","rawTarget","targetIsMap","isPair","isKeyOnly","innerIterator","wrap","toReadonly","done","createReadonlyMethod","createInstrumentations","shallow","instrumentations","rawKey","has","callback","observed","get","hadItems","createInstrumentationGetter","mutableCollectionHandlers","readonlyCollectionHandlers","targetTypeMap","rawType","getTargetType","createReactiveObject","baseHandlers","collectionHandlers","proxyMap","existingProxy","targetType","proxy","isReactive","r","ref","createRef","shallowRef","rawValue","RefImpl","useDirectValue","unref","ref2","toValue","ComputedRefImpl","setter","isSSR","getterOrOptions","debugOptions","getter","INITIAL_WATCHER_VALUE","cleanupMap","activeWatcher","onWatcherCleanup","cleanupFn","failSilently","owner","cleanups","watch","cb","immediate","deep","once","scheduler","augmentJob","call","reactiveGetter","source2","traverse","effect","boundCleanup","forceTrigger","isMultiSource","s","currentEffect","baseGetter","depth","watchHandle","_cb","job","immediateFirstRun","currentWatcher","cleanup2","seen","callWithErrorHandling","instance","handleError","callWithAsyncErrorHandling","values","throwInDev","contextVNode","errorHandler","throwUnhandledErrorInProduction","cur","exposedInstance","errorInfo","errorCapturedHooks","logError","throwInProd","queue","flushIndex","pendingPostFlushCbs","activePostFlushCbs","postFlushIndex","resolvedPromise","currentFlushPromise","nextTick","findInsertionIndex","start","end","middle","middleJob","middleJobId","getId","queueJob","jobId","lastJob","queueFlush","flushJobs","queuePostFlushCb","flushPostFlushCbs","deduped","currentRenderingInstance","injectHook","currentInstance","prepend","hooks","wrappedHook","reset","setCurrentInstance","createHook","lifecycle","isInSSRComponentSetup","onMounted","onUnmounted","currentApp","inject","defaultValue","treatDefaultAsFactory","provides","queuePostRenderEffect","queueEffectWithSuspense","ssrContextKey","useSSRContext","doWatch","flush","baseWatchOptions","runsImmediately","ssrCleanup","ctx","watchStopHandle","isPre","isFirstRun","watch$1","suspense","getCurrentInstance","internalSetCurrentInstance","g","registerGlobalSetter","setters","set","computed$1","isClient","notNullish","toString","noop","createFilterWrapper","filter","wrapper","resolve","reject","debounceFilter","ms","timer","maxTimer","lastRejector","_clearTimeout","timer2","lastInvoker","invoke","duration","toValue$1","maxDuration","throttleFilter","lastExec","isLeading","lastValue","trailing","leading","rejectOnCancel","clear","_invoke","elapsed","getLifeCycleTarget","toArray","useDebounceFn","useThrottleFn","tryOnMounted","sync","tryOnUnmounted","watchImmediate","watchOnce","stop","defaultWindow","unrefElement","elRef","plain","useEventListener","listener","firstParamTargets","test","stopWatch","raw_targets","raw_events","raw_listeners","raw_options","optionsClone","useMounted","isMounted","useSupported","useIntersectionObserver","root","rootMargin","threshold","window","isSupported","targets","_target","isActive","targets2","root2","observer","useElementVisibility","scrollTarget","elementIsVisible","intersectionObserverEntries","isIntersecting","latestTime","entry","resolveElement","ARRIVED_STATE_THRESHOLD_PIXELS","useScroll","throttle","idle","onStop","onScroll","offset","eventListenerOptions","behavior","onError","internalX","internalY","x2","scrollTo","y","y2","_x","_y","_d","_element","scrollContainer","isScrolling","arrivedState","directions","onScrollEnd","onScrollEndDebounced","setArrivedState","display","flexDirection","directionMultipler","scrollLeft","left","right","scrollTop","top","bottom","onScrollHandler","eventTarget","useInfiniteScroll","onLoadMore","interval","canLoadMore","state","promise","isLoading","observedElement","isElementVisible","checkAndLoad","scrollHeight","clientHeight","scrollWidth","clientWidth","isNarrower","useRoute","route","effectScope","shallowReactive","to","navigationList","loadState","loading","hasMoreActivites","allActivities","lastActivityLoaded","loadActivities","groupedActivities","groups","activity","date","headingTitle","navigationEl","since","response","ncAxios","generateOcsUrl","ActivityModel","axios","logger","showError","NcAppNavigationList","t19","_sfc_main$2","_sfc_render$2","_sfc_staticRenderFns$2","__component__$2","MenuIcon","MenuOpenIcon","NcAppNavigationToggle","subscribe","createFocusTrap","getTrapStack","unsubscribe","bodyStyles","animationLength","open","NcAppNavigation","Check","ChevronRight","ActionTextMixin","attributes","NcActionButton","NcVNodes","ChevronUp","t13","Close","NcInputConfirmCancel","t20","_sfc_main$3","ChevronDown","_sfc_render$3","_sfc_staticRenderFns$3","__component__$3","NcAppNavigationIconCollapsible","t21","t48","Pencil","Undo","NcActions","NcLoadingIcon","GenRandomId","newVal","navigate","routerLinkHref","href","$$v","NcAppNavigationItem","clickOutsideOptions","t44","Cog","vOnClickOutside","NcAppNavigationSettings","initialRSSLink","personalSettingsLink","rssLink","hasRSSLink","toggleRSSLink","data","generateUrl","copyRSSLink","showSuccess","routes","ActivityAppFeed","ActivityAppNavigation","translate","translatePlural","VueRouter","router","ActivityApp"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,8,9,10,11,12,13,15,16,17,18,19,20,21,22,23,24,25]} \ No newline at end of file diff --git a/js/activity-personalSettings.mjs b/js/activity-personalSettings.mjs index 1f444dd22..9d1bfe6af 100644 --- a/js/activity-personalSettings.mjs +++ b/js/activity-personalSettings.mjs @@ -1,2 +1,2 @@ (function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".activity-frequency__label[data-v-778e414b]{margin-top:24px;display:inline-block}.notification-frequency__select[data-v-778e414b]{margin-left:calc(var(--default-grid-baseline) * 2)}")),document.head.appendChild(e)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})(); -import{V as a,t as m,b as y}from"./index-CpOKyUsr.chunk.mjs";import{m as s,a as c,N as l,A as E,i as u,s as r}from"./settings-store-CIr0IpsE.chunk.mjs";import{b as o,w as v}from"./NcCheckboxRadioSwitch-CvMEEI9x-CRJk_h3R.chunk.mjs";import"./_commonjsHelpers-D9DevfhH.chunk.mjs";import"./NcNoteCard-CImn6F9p-CWGSZ4YZ.chunk.mjs";import"./logger-DdfSSqJ9.chunk.mjs";const _={EmailFrequency:{EMAIL_SEND_HOURLY:0,EMAIL_SEND_DAILY:1,EMAIL_SEND_WEEKLY:2,EMAIL_SEND_ASAP:3}},d={name:"EmailSettings",data(){return{EmailFrequency:_.EmailFrequency}},computed:{...s(["emailEnabled","isEmailSet","settingBatchtime"])},methods:{...c(["setSettingBatchtime"])}};var g=function(){var e=this,i=e._self._c;return e.emailEnabled?i("div",[e.isEmailSet?e._e():i("p",[i("strong",[e._v(e._s(e.t("activity","You need to set up your email address before you can receive notification emails.")))])]),i("p",[i("label",{staticClass:"activity-frequency__label",attrs:{for:"activity_setting_batchtime"}},[e._v(" "+e._s(e.t("activity","Send activity emails"))+" ")]),i("select",{staticClass:"notification-frequency__select",attrs:{id:"activity_setting_batchtime",name:"activity_setting_batchtime"},on:{change:function(n){return e.setSettingBatchtime({settingBatchtime:n.target.value})}}},[i("option",{domProps:{value:e.EmailFrequency.EMAIL_SEND_ASAP,selected:e.settingBatchtime===e.EmailFrequency.EMAIL_SEND_ASAP}},[e._v(" "+e._s(e.t("activity","As soon as possible"))+" ")]),i("option",{domProps:{value:e.EmailFrequency.EMAIL_SEND_HOURLY,selected:e.settingBatchtime===e.EmailFrequency.EMAIL_SEND_HOURLY}},[e._v(" "+e._s(e.t("activity","Hourly"))+" ")]),i("option",{domProps:{value:e.EmailFrequency.EMAIL_SEND_DAILY,selected:e.settingBatchtime===e.EmailFrequency.EMAIL_SEND_DAILY}},[e._v(" "+e._s(e.t("activity","Daily"))+" ")]),i("option",{domProps:{value:e.EmailFrequency.EMAIL_SEND_WEEKLY,selected:e.settingBatchtime===e.EmailFrequency.EMAIL_SEND_WEEKLY}},[e._v(" "+e._s(e.t("activity","Weekly"))+" ")])])])]):e._e()},p=[],S=o(d,g,p,!1,null,"778e414b");const h=S.exports,A={name:"UserSettings",components:{NcSettingsSection:l,EmailSettings:h,ActivityGrid:E},computed:{...s({emailEnabled:"emailEnabled"}),settingDescription(){return this.emailEnabled?t("activity","Choose for which activities you want to get an email or push notification."):t("activity","Choose for which activities you want to get a push notification.")}},mounted(){this.setEndpoint({endpoint:"/apps/activity/settings"})},methods:{...c(["setEndpoint","toggleEmailEnabled"])}};var D=function(){var e=this,i=e._self._c;return i("NcSettingsSection",{attrs:{name:e.t("activity","Activity"),description:e.settingDescription}},[i("ActivityGrid"),i("EmailSettings")],1)},b=[],f=o(A,D,b,!1,null,null);const L=f.exports,N={name:"DailySummary",components:{NcCheckboxRadioSwitch:v,NcSettingsSection:l},computed:{...s(["activityDigestEnabled"])},mounted(){this.setEndpoint({endpoint:"/apps/activity/settings"})},methods:{...c(["setEndpoint","toggleActivityDigestEnabled"])}};var I=function(){var e=this,i=e._self._c;return i("NcSettingsSection",{attrs:{name:e.t("activity","Daily activity summary")}},[i("NcCheckboxRadioSwitch",{attrs:{"data-cy-checkbox":"",checked:e.activityDigestEnabled},on:{"update:checked":function(n){return e.toggleActivityDigestEnabled({activityDigestEnabled:n})}}},[e._v(" "+e._s(e.t("activity","Send daily activity summary in the morning"))+" ")])],1)},q=[],M=o(N,I,q,!1,null,null);const F=M.exports;a.prototype.t=m,a.prototype.n=y,a.use(u),new a({el:"#activity-user-settings",store:r,name:"ActivityPersonalSettings",render:e=>e(L)}),new a({el:"#activity-digest-user-settings",name:"ActivityDigestPersonalSettings",store:r,render:e=>e(F)}); +import{V as a,t as m,b as y}from"./index-CpOKyUsr.chunk.mjs";import{m as s,a as c,N as l,A as E,i as u,s as r}from"./settings-store-FJFCqrJM.chunk.mjs";import{b as o,w as v}from"./NcCheckboxRadioSwitch-CvMEEI9x-CRJk_h3R.chunk.mjs";import"./_commonjsHelpers-D9DevfhH.chunk.mjs";import"./NcNoteCard-CImn6F9p-CWGSZ4YZ.chunk.mjs";import"./logger-DdfSSqJ9.chunk.mjs";const _={EmailFrequency:{EMAIL_SEND_HOURLY:0,EMAIL_SEND_DAILY:1,EMAIL_SEND_WEEKLY:2,EMAIL_SEND_ASAP:3}},d={name:"EmailSettings",data(){return{EmailFrequency:_.EmailFrequency}},computed:{...s(["emailEnabled","isEmailSet","settingBatchtime"])},methods:{...c(["setSettingBatchtime"])}};var g=function(){var e=this,i=e._self._c;return e.emailEnabled?i("div",[e.isEmailSet?e._e():i("p",[i("strong",[e._v(e._s(e.t("activity","You need to set up your email address before you can receive notification emails.")))])]),i("p",[i("label",{staticClass:"activity-frequency__label",attrs:{for:"activity_setting_batchtime"}},[e._v(" "+e._s(e.t("activity","Send activity emails"))+" ")]),i("select",{staticClass:"notification-frequency__select",attrs:{id:"activity_setting_batchtime",name:"activity_setting_batchtime"},on:{change:function(n){return e.setSettingBatchtime({settingBatchtime:n.target.value})}}},[i("option",{domProps:{value:e.EmailFrequency.EMAIL_SEND_ASAP,selected:e.settingBatchtime===e.EmailFrequency.EMAIL_SEND_ASAP}},[e._v(" "+e._s(e.t("activity","As soon as possible"))+" ")]),i("option",{domProps:{value:e.EmailFrequency.EMAIL_SEND_HOURLY,selected:e.settingBatchtime===e.EmailFrequency.EMAIL_SEND_HOURLY}},[e._v(" "+e._s(e.t("activity","Hourly"))+" ")]),i("option",{domProps:{value:e.EmailFrequency.EMAIL_SEND_DAILY,selected:e.settingBatchtime===e.EmailFrequency.EMAIL_SEND_DAILY}},[e._v(" "+e._s(e.t("activity","Daily"))+" ")]),i("option",{domProps:{value:e.EmailFrequency.EMAIL_SEND_WEEKLY,selected:e.settingBatchtime===e.EmailFrequency.EMAIL_SEND_WEEKLY}},[e._v(" "+e._s(e.t("activity","Weekly"))+" ")])])])]):e._e()},p=[],S=o(d,g,p,!1,null,"778e414b");const h=S.exports,A={name:"UserSettings",components:{NcSettingsSection:l,EmailSettings:h,ActivityGrid:E},computed:{...s({emailEnabled:"emailEnabled"}),settingDescription(){return this.emailEnabled?t("activity","Choose for which activities you want to get an email or push notification."):t("activity","Choose for which activities you want to get a push notification.")}},mounted(){this.setEndpoint({endpoint:"/apps/activity/settings"})},methods:{...c(["setEndpoint","toggleEmailEnabled"])}};var D=function(){var e=this,i=e._self._c;return i("NcSettingsSection",{attrs:{name:e.t("activity","Activity"),description:e.settingDescription}},[i("ActivityGrid"),i("EmailSettings")],1)},b=[],f=o(A,D,b,!1,null,null);const L=f.exports,N={name:"DailySummary",components:{NcCheckboxRadioSwitch:v,NcSettingsSection:l},computed:{...s(["activityDigestEnabled"])},mounted(){this.setEndpoint({endpoint:"/apps/activity/settings"})},methods:{...c(["setEndpoint","toggleActivityDigestEnabled"])}};var I=function(){var e=this,i=e._self._c;return i("NcSettingsSection",{attrs:{name:e.t("activity","Daily activity summary")}},[i("NcCheckboxRadioSwitch",{attrs:{"data-cy-checkbox":"",checked:e.activityDigestEnabled},on:{"update:checked":function(n){return e.toggleActivityDigestEnabled({activityDigestEnabled:n})}}},[e._v(" "+e._s(e.t("activity","Send daily activity summary in the morning"))+" ")])],1)},q=[],M=o(N,I,q,!1,null,null);const F=M.exports;a.prototype.t=m,a.prototype.n=y,a.use(u),new a({el:"#activity-user-settings",store:r,name:"ActivityPersonalSettings",render:e=>e(L)}),new a({el:"#activity-digest-user-settings",name:"ActivityDigestPersonalSettings",store:r,render:e=>e(F)}); diff --git a/js/settings-store-CIr0IpsE.chunk.mjs.map b/js/settings-store-CIr0IpsE.chunk.mjs.map deleted file mode 100644 index 2235c8b4c..000000000 --- a/js/settings-store-CIr0IpsE.chunk.mjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"settings-store-CIr0IpsE.chunk.mjs","sources":["../node_modules/vuex/dist/vuex.esm.js","../node_modules/@nextcloud/vue/dist/chunks/NcSettingsSection-V9DkkSuI.mjs","../node_modules/vue-material-design-icons/CheckboxBlankOutline.vue","../node_modules/vue-material-design-icons/CheckboxBlank.vue","../node_modules/vue-material-design-icons/MinusBox.vue","../node_modules/vue-material-design-icons/CheckboxMarked.vue","../src/components/Checkbox.vue","../src/utils/settings.ts","../src/components/ActivityGrid.vue","../src/store/settings-store.js"],"sourcesContent":["/*!\n * vuex v3.6.2\n * (c) 2021 Evan You\n * @license MIT\n */\nfunction applyMixin (Vue) {\n var version = Number(Vue.version.split('.')[0]);\n\n if (version >= 2) {\n Vue.mixin({ beforeCreate: vuexInit });\n } else {\n // override init and inject vuex init procedure\n // for 1.x backwards compatibility.\n var _init = Vue.prototype._init;\n Vue.prototype._init = function (options) {\n if ( options === void 0 ) options = {};\n\n options.init = options.init\n ? [vuexInit].concat(options.init)\n : vuexInit;\n _init.call(this, options);\n };\n }\n\n /**\n * Vuex init hook, injected into each instances init hooks list.\n */\n\n function vuexInit () {\n var options = this.$options;\n // store injection\n if (options.store) {\n this.$store = typeof options.store === 'function'\n ? options.store()\n : options.store;\n } else if (options.parent && options.parent.$store) {\n this.$store = options.parent.$store;\n }\n }\n}\n\nvar target = typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\nvar devtoolHook = target.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\nfunction devtoolPlugin (store) {\n if (!devtoolHook) { return }\n\n store._devtoolHook = devtoolHook;\n\n devtoolHook.emit('vuex:init', store);\n\n devtoolHook.on('vuex:travel-to-state', function (targetState) {\n store.replaceState(targetState);\n });\n\n store.subscribe(function (mutation, state) {\n devtoolHook.emit('vuex:mutation', mutation, state);\n }, { prepend: true });\n\n store.subscribeAction(function (action, state) {\n devtoolHook.emit('vuex:action', action, state);\n }, { prepend: true });\n}\n\n/**\n * Get the first item that pass the test\n * by second argument function\n *\n * @param {Array} list\n * @param {Function} f\n * @return {*}\n */\nfunction find (list, f) {\n return list.filter(f)[0]\n}\n\n/**\n * Deep copy the given object considering circular structure.\n * This function caches all nested objects and its copies.\n * If it detects circular structure, use cached copy to avoid infinite loop.\n *\n * @param {*} obj\n * @param {Array} cache\n * @return {*}\n */\nfunction deepCopy (obj, cache) {\n if ( cache === void 0 ) cache = [];\n\n // just return if obj is immutable value\n if (obj === null || typeof obj !== 'object') {\n return obj\n }\n\n // if obj is hit, it is in circular structure\n var hit = find(cache, function (c) { return c.original === obj; });\n if (hit) {\n return hit.copy\n }\n\n var copy = Array.isArray(obj) ? [] : {};\n // put the copy into cache at first\n // because we want to refer it in recursive deepCopy\n cache.push({\n original: obj,\n copy: copy\n });\n\n Object.keys(obj).forEach(function (key) {\n copy[key] = deepCopy(obj[key], cache);\n });\n\n return copy\n}\n\n/**\n * forEach for object\n */\nfunction forEachValue (obj, fn) {\n Object.keys(obj).forEach(function (key) { return fn(obj[key], key); });\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isPromise (val) {\n return val && typeof val.then === 'function'\n}\n\nfunction assert (condition, msg) {\n if (!condition) { throw new Error((\"[vuex] \" + msg)) }\n}\n\nfunction partial (fn, arg) {\n return function () {\n return fn(arg)\n }\n}\n\n// Base data struct for store's module, package with some attribute and method\nvar Module = function Module (rawModule, runtime) {\n this.runtime = runtime;\n // Store some children item\n this._children = Object.create(null);\n // Store the origin module object which passed by programmer\n this._rawModule = rawModule;\n var rawState = rawModule.state;\n\n // Store the origin module's state\n this.state = (typeof rawState === 'function' ? rawState() : rawState) || {};\n};\n\nvar prototypeAccessors = { namespaced: { configurable: true } };\n\nprototypeAccessors.namespaced.get = function () {\n return !!this._rawModule.namespaced\n};\n\nModule.prototype.addChild = function addChild (key, module) {\n this._children[key] = module;\n};\n\nModule.prototype.removeChild = function removeChild (key) {\n delete this._children[key];\n};\n\nModule.prototype.getChild = function getChild (key) {\n return this._children[key]\n};\n\nModule.prototype.hasChild = function hasChild (key) {\n return key in this._children\n};\n\nModule.prototype.update = function update (rawModule) {\n this._rawModule.namespaced = rawModule.namespaced;\n if (rawModule.actions) {\n this._rawModule.actions = rawModule.actions;\n }\n if (rawModule.mutations) {\n this._rawModule.mutations = rawModule.mutations;\n }\n if (rawModule.getters) {\n this._rawModule.getters = rawModule.getters;\n }\n};\n\nModule.prototype.forEachChild = function forEachChild (fn) {\n forEachValue(this._children, fn);\n};\n\nModule.prototype.forEachGetter = function forEachGetter (fn) {\n if (this._rawModule.getters) {\n forEachValue(this._rawModule.getters, fn);\n }\n};\n\nModule.prototype.forEachAction = function forEachAction (fn) {\n if (this._rawModule.actions) {\n forEachValue(this._rawModule.actions, fn);\n }\n};\n\nModule.prototype.forEachMutation = function forEachMutation (fn) {\n if (this._rawModule.mutations) {\n forEachValue(this._rawModule.mutations, fn);\n }\n};\n\nObject.defineProperties( Module.prototype, prototypeAccessors );\n\nvar ModuleCollection = function ModuleCollection (rawRootModule) {\n // register root module (Vuex.Store options)\n this.register([], rawRootModule, false);\n};\n\nModuleCollection.prototype.get = function get (path) {\n return path.reduce(function (module, key) {\n return module.getChild(key)\n }, this.root)\n};\n\nModuleCollection.prototype.getNamespace = function getNamespace (path) {\n var module = this.root;\n return path.reduce(function (namespace, key) {\n module = module.getChild(key);\n return namespace + (module.namespaced ? key + '/' : '')\n }, '')\n};\n\nModuleCollection.prototype.update = function update$1 (rawRootModule) {\n update([], this.root, rawRootModule);\n};\n\nModuleCollection.prototype.register = function register (path, rawModule, runtime) {\n var this$1 = this;\n if ( runtime === void 0 ) runtime = true;\n\n if ((process.env.NODE_ENV !== 'production')) {\n assertRawModule(path, rawModule);\n }\n\n var newModule = new Module(rawModule, runtime);\n if (path.length === 0) {\n this.root = newModule;\n } else {\n var parent = this.get(path.slice(0, -1));\n parent.addChild(path[path.length - 1], newModule);\n }\n\n // register nested modules\n if (rawModule.modules) {\n forEachValue(rawModule.modules, function (rawChildModule, key) {\n this$1.register(path.concat(key), rawChildModule, runtime);\n });\n }\n};\n\nModuleCollection.prototype.unregister = function unregister (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n var child = parent.getChild(key);\n\n if (!child) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\n \"[vuex] trying to unregister module '\" + key + \"', which is \" +\n \"not registered\"\n );\n }\n return\n }\n\n if (!child.runtime) {\n return\n }\n\n parent.removeChild(key);\n};\n\nModuleCollection.prototype.isRegistered = function isRegistered (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n\n if (parent) {\n return parent.hasChild(key)\n }\n\n return false\n};\n\nfunction update (path, targetModule, newModule) {\n if ((process.env.NODE_ENV !== 'production')) {\n assertRawModule(path, newModule);\n }\n\n // update target module\n targetModule.update(newModule);\n\n // update nested modules\n if (newModule.modules) {\n for (var key in newModule.modules) {\n if (!targetModule.getChild(key)) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\n \"[vuex] trying to add a new module '\" + key + \"' on hot reloading, \" +\n 'manual reload is needed'\n );\n }\n return\n }\n update(\n path.concat(key),\n targetModule.getChild(key),\n newModule.modules[key]\n );\n }\n }\n}\n\nvar functionAssert = {\n assert: function (value) { return typeof value === 'function'; },\n expected: 'function'\n};\n\nvar objectAssert = {\n assert: function (value) { return typeof value === 'function' ||\n (typeof value === 'object' && typeof value.handler === 'function'); },\n expected: 'function or object with \"handler\" function'\n};\n\nvar assertTypes = {\n getters: functionAssert,\n mutations: functionAssert,\n actions: objectAssert\n};\n\nfunction assertRawModule (path, rawModule) {\n Object.keys(assertTypes).forEach(function (key) {\n if (!rawModule[key]) { return }\n\n var assertOptions = assertTypes[key];\n\n forEachValue(rawModule[key], function (value, type) {\n assert(\n assertOptions.assert(value),\n makeAssertionMessage(path, key, type, value, assertOptions.expected)\n );\n });\n });\n}\n\nfunction makeAssertionMessage (path, key, type, value, expected) {\n var buf = key + \" should be \" + expected + \" but \\\"\" + key + \".\" + type + \"\\\"\";\n if (path.length > 0) {\n buf += \" in module \\\"\" + (path.join('.')) + \"\\\"\";\n }\n buf += \" is \" + (JSON.stringify(value)) + \".\";\n return buf\n}\n\nvar Vue; // bind on install\n\nvar Store = function Store (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #731\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Vue, \"must call Vue.use(Vuex) before creating a store instance.\");\n assert(typeof Promise !== 'undefined', \"vuex requires a Promise polyfill in this browser.\");\n assert(this instanceof Store, \"store must be called with the new operator.\");\n }\n\n var plugins = options.plugins; if ( plugins === void 0 ) plugins = [];\n var strict = options.strict; if ( strict === void 0 ) strict = false;\n\n // store internal state\n this._committing = false;\n this._actions = Object.create(null);\n this._actionSubscribers = [];\n this._mutations = Object.create(null);\n this._wrappedGetters = Object.create(null);\n this._modules = new ModuleCollection(options);\n this._modulesNamespaceMap = Object.create(null);\n this._subscribers = [];\n this._watcherVM = new Vue();\n this._makeLocalGettersCache = Object.create(null);\n\n // bind commit and dispatch to self\n var store = this;\n var ref = this;\n var dispatch = ref.dispatch;\n var commit = ref.commit;\n this.dispatch = function boundDispatch (type, payload) {\n return dispatch.call(store, type, payload)\n };\n this.commit = function boundCommit (type, payload, options) {\n return commit.call(store, type, payload, options)\n };\n\n // strict mode\n this.strict = strict;\n\n var state = this._modules.root.state;\n\n // init root module.\n // this also recursively registers all sub-modules\n // and collects all module getters inside this._wrappedGetters\n installModule(this, state, [], this._modules.root);\n\n // initialize the store vm, which is responsible for the reactivity\n // (also registers _wrappedGetters as computed properties)\n resetStoreVM(this, state);\n\n // apply plugins\n plugins.forEach(function (plugin) { return plugin(this$1); });\n\n var useDevtools = options.devtools !== undefined ? options.devtools : Vue.config.devtools;\n if (useDevtools) {\n devtoolPlugin(this);\n }\n};\n\nvar prototypeAccessors$1 = { state: { configurable: true } };\n\nprototypeAccessors$1.state.get = function () {\n return this._vm._data.$$state\n};\n\nprototypeAccessors$1.state.set = function (v) {\n if ((process.env.NODE_ENV !== 'production')) {\n assert(false, \"use store.replaceState() to explicit replace store state.\");\n }\n};\n\nStore.prototype.commit = function commit (_type, _payload, _options) {\n var this$1 = this;\n\n // check object-style commit\n var ref = unifyObjectStyle(_type, _payload, _options);\n var type = ref.type;\n var payload = ref.payload;\n var options = ref.options;\n\n var mutation = { type: type, payload: payload };\n var entry = this._mutations[type];\n if (!entry) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] unknown mutation type: \" + type));\n }\n return\n }\n this._withCommit(function () {\n entry.forEach(function commitIterator (handler) {\n handler(payload);\n });\n });\n\n this._subscribers\n .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n .forEach(function (sub) { return sub(mutation, this$1.state); });\n\n if (\n (process.env.NODE_ENV !== 'production') &&\n options && options.silent\n ) {\n console.warn(\n \"[vuex] mutation type: \" + type + \". Silent option has been removed. \" +\n 'Use the filter functionality in the vue-devtools'\n );\n }\n};\n\nStore.prototype.dispatch = function dispatch (_type, _payload) {\n var this$1 = this;\n\n // check object-style dispatch\n var ref = unifyObjectStyle(_type, _payload);\n var type = ref.type;\n var payload = ref.payload;\n\n var action = { type: type, payload: payload };\n var entry = this._actions[type];\n if (!entry) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] unknown action type: \" + type));\n }\n return\n }\n\n try {\n this._actionSubscribers\n .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n .filter(function (sub) { return sub.before; })\n .forEach(function (sub) { return sub.before(action, this$1.state); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in before action subscribers: \");\n console.error(e);\n }\n }\n\n var result = entry.length > 1\n ? Promise.all(entry.map(function (handler) { return handler(payload); }))\n : entry[0](payload);\n\n return new Promise(function (resolve, reject) {\n result.then(function (res) {\n try {\n this$1._actionSubscribers\n .filter(function (sub) { return sub.after; })\n .forEach(function (sub) { return sub.after(action, this$1.state); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in after action subscribers: \");\n console.error(e);\n }\n }\n resolve(res);\n }, function (error) {\n try {\n this$1._actionSubscribers\n .filter(function (sub) { return sub.error; })\n .forEach(function (sub) { return sub.error(action, this$1.state, error); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in error action subscribers: \");\n console.error(e);\n }\n }\n reject(error);\n });\n })\n};\n\nStore.prototype.subscribe = function subscribe (fn, options) {\n return genericSubscribe(fn, this._subscribers, options)\n};\n\nStore.prototype.subscribeAction = function subscribeAction (fn, options) {\n var subs = typeof fn === 'function' ? { before: fn } : fn;\n return genericSubscribe(subs, this._actionSubscribers, options)\n};\n\nStore.prototype.watch = function watch (getter, cb, options) {\n var this$1 = this;\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(typeof getter === 'function', \"store.watch only accepts a function.\");\n }\n return this._watcherVM.$watch(function () { return getter(this$1.state, this$1.getters); }, cb, options)\n};\n\nStore.prototype.replaceState = function replaceState (state) {\n var this$1 = this;\n\n this._withCommit(function () {\n this$1._vm._data.$$state = state;\n });\n};\n\nStore.prototype.registerModule = function registerModule (path, rawModule, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n assert(path.length > 0, 'cannot register the root module by using registerModule.');\n }\n\n this._modules.register(path, rawModule);\n installModule(this, this.state, path, this._modules.get(path), options.preserveState);\n // reset store to update getters...\n resetStoreVM(this, this.state);\n};\n\nStore.prototype.unregisterModule = function unregisterModule (path) {\n var this$1 = this;\n\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n this._modules.unregister(path);\n this._withCommit(function () {\n var parentState = getNestedState(this$1.state, path.slice(0, -1));\n Vue.delete(parentState, path[path.length - 1]);\n });\n resetStore(this);\n};\n\nStore.prototype.hasModule = function hasModule (path) {\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n return this._modules.isRegistered(path)\n};\n\nStore.prototype.hotUpdate = function hotUpdate (newOptions) {\n this._modules.update(newOptions);\n resetStore(this, true);\n};\n\nStore.prototype._withCommit = function _withCommit (fn) {\n var committing = this._committing;\n this._committing = true;\n fn();\n this._committing = committing;\n};\n\nObject.defineProperties( Store.prototype, prototypeAccessors$1 );\n\nfunction genericSubscribe (fn, subs, options) {\n if (subs.indexOf(fn) < 0) {\n options && options.prepend\n ? subs.unshift(fn)\n : subs.push(fn);\n }\n return function () {\n var i = subs.indexOf(fn);\n if (i > -1) {\n subs.splice(i, 1);\n }\n }\n}\n\nfunction resetStore (store, hot) {\n store._actions = Object.create(null);\n store._mutations = Object.create(null);\n store._wrappedGetters = Object.create(null);\n store._modulesNamespaceMap = Object.create(null);\n var state = store.state;\n // init all modules\n installModule(store, state, [], store._modules.root, true);\n // reset vm\n resetStoreVM(store, state, hot);\n}\n\nfunction resetStoreVM (store, state, hot) {\n var oldVm = store._vm;\n\n // bind store public getters\n store.getters = {};\n // reset local getters cache\n store._makeLocalGettersCache = Object.create(null);\n var wrappedGetters = store._wrappedGetters;\n var computed = {};\n forEachValue(wrappedGetters, function (fn, key) {\n // use computed to leverage its lazy-caching mechanism\n // direct inline function use will lead to closure preserving oldVm.\n // using partial to return function with only arguments preserved in closure environment.\n computed[key] = partial(fn, store);\n Object.defineProperty(store.getters, key, {\n get: function () { return store._vm[key]; },\n enumerable: true // for local getters\n });\n });\n\n // use a Vue instance to store the state tree\n // suppress warnings just in case the user has added\n // some funky global mixins\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n store._vm = new Vue({\n data: {\n $$state: state\n },\n computed: computed\n });\n Vue.config.silent = silent;\n\n // enable strict mode for new vm\n if (store.strict) {\n enableStrictMode(store);\n }\n\n if (oldVm) {\n if (hot) {\n // dispatch changes in all subscribed watchers\n // to force getter re-evaluation for hot reloading.\n store._withCommit(function () {\n oldVm._data.$$state = null;\n });\n }\n Vue.nextTick(function () { return oldVm.$destroy(); });\n }\n}\n\nfunction installModule (store, rootState, path, module, hot) {\n var isRoot = !path.length;\n var namespace = store._modules.getNamespace(path);\n\n // register in namespace map\n if (module.namespaced) {\n if (store._modulesNamespaceMap[namespace] && (process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] duplicate namespace \" + namespace + \" for the namespaced module \" + (path.join('/'))));\n }\n store._modulesNamespaceMap[namespace] = module;\n }\n\n // set state\n if (!isRoot && !hot) {\n var parentState = getNestedState(rootState, path.slice(0, -1));\n var moduleName = path[path.length - 1];\n store._withCommit(function () {\n if ((process.env.NODE_ENV !== 'production')) {\n if (moduleName in parentState) {\n console.warn(\n (\"[vuex] state field \\\"\" + moduleName + \"\\\" was overridden by a module with the same name at \\\"\" + (path.join('.')) + \"\\\"\")\n );\n }\n }\n Vue.set(parentState, moduleName, module.state);\n });\n }\n\n var local = module.context = makeLocalContext(store, namespace, path);\n\n module.forEachMutation(function (mutation, key) {\n var namespacedType = namespace + key;\n registerMutation(store, namespacedType, mutation, local);\n });\n\n module.forEachAction(function (action, key) {\n var type = action.root ? key : namespace + key;\n var handler = action.handler || action;\n registerAction(store, type, handler, local);\n });\n\n module.forEachGetter(function (getter, key) {\n var namespacedType = namespace + key;\n registerGetter(store, namespacedType, getter, local);\n });\n\n module.forEachChild(function (child, key) {\n installModule(store, rootState, path.concat(key), child, hot);\n });\n}\n\n/**\n * make localized dispatch, commit, getters and state\n * if there is no namespace, just use root ones\n */\nfunction makeLocalContext (store, namespace, path) {\n var noNamespace = namespace === '';\n\n var local = {\n dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if ((process.env.NODE_ENV !== 'production') && !store._actions[type]) {\n console.error((\"[vuex] unknown local action type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n return store.dispatch(type, payload)\n },\n\n commit: noNamespace ? store.commit : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if ((process.env.NODE_ENV !== 'production') && !store._mutations[type]) {\n console.error((\"[vuex] unknown local mutation type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n store.commit(type, payload, options);\n }\n };\n\n // getters and state object must be gotten lazily\n // because they will be changed by vm update\n Object.defineProperties(local, {\n getters: {\n get: noNamespace\n ? function () { return store.getters; }\n : function () { return makeLocalGetters(store, namespace); }\n },\n state: {\n get: function () { return getNestedState(store.state, path); }\n }\n });\n\n return local\n}\n\nfunction makeLocalGetters (store, namespace) {\n if (!store._makeLocalGettersCache[namespace]) {\n var gettersProxy = {};\n var splitPos = namespace.length;\n Object.keys(store.getters).forEach(function (type) {\n // skip if the target getter is not match this namespace\n if (type.slice(0, splitPos) !== namespace) { return }\n\n // extract local getter type\n var localType = type.slice(splitPos);\n\n // Add a port to the getters proxy.\n // Define as getter property because\n // we do not want to evaluate the getters in this time.\n Object.defineProperty(gettersProxy, localType, {\n get: function () { return store.getters[type]; },\n enumerable: true\n });\n });\n store._makeLocalGettersCache[namespace] = gettersProxy;\n }\n\n return store._makeLocalGettersCache[namespace]\n}\n\nfunction registerMutation (store, type, handler, local) {\n var entry = store._mutations[type] || (store._mutations[type] = []);\n entry.push(function wrappedMutationHandler (payload) {\n handler.call(store, local.state, payload);\n });\n}\n\nfunction registerAction (store, type, handler, local) {\n var entry = store._actions[type] || (store._actions[type] = []);\n entry.push(function wrappedActionHandler (payload) {\n var res = handler.call(store, {\n dispatch: local.dispatch,\n commit: local.commit,\n getters: local.getters,\n state: local.state,\n rootGetters: store.getters,\n rootState: store.state\n }, payload);\n if (!isPromise(res)) {\n res = Promise.resolve(res);\n }\n if (store._devtoolHook) {\n return res.catch(function (err) {\n store._devtoolHook.emit('vuex:error', err);\n throw err\n })\n } else {\n return res\n }\n });\n}\n\nfunction registerGetter (store, type, rawGetter, local) {\n if (store._wrappedGetters[type]) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] duplicate getter key: \" + type));\n }\n return\n }\n store._wrappedGetters[type] = function wrappedGetter (store) {\n return rawGetter(\n local.state, // local state\n local.getters, // local getters\n store.state, // root state\n store.getters // root getters\n )\n };\n}\n\nfunction enableStrictMode (store) {\n store._vm.$watch(function () { return this._data.$$state }, function () {\n if ((process.env.NODE_ENV !== 'production')) {\n assert(store._committing, \"do not mutate vuex store state outside mutation handlers.\");\n }\n }, { deep: true, sync: true });\n}\n\nfunction getNestedState (state, path) {\n return path.reduce(function (state, key) { return state[key]; }, state)\n}\n\nfunction unifyObjectStyle (type, payload, options) {\n if (isObject(type) && type.type) {\n options = payload;\n payload = type;\n type = type.type;\n }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(typeof type === 'string', (\"expects string as the type, but found \" + (typeof type) + \".\"));\n }\n\n return { type: type, payload: payload, options: options }\n}\n\nfunction install (_Vue) {\n if (Vue && _Vue === Vue) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error(\n '[vuex] already installed. Vue.use(Vuex) should be called only once.'\n );\n }\n return\n }\n Vue = _Vue;\n applyMixin(Vue);\n}\n\n/**\n * Reduce the code which written in Vue.js for getting the state.\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} states # Object's item can be a function which accept state and getters for param, you can do something for state and getters in it.\n * @param {Object}\n */\nvar mapState = normalizeNamespace(function (namespace, states) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(states)) {\n console.error('[vuex] mapState: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(states).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedState () {\n var state = this.$store.state;\n var getters = this.$store.getters;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapState', namespace);\n if (!module) {\n return\n }\n state = module.context.state;\n getters = module.context.getters;\n }\n return typeof val === 'function'\n ? val.call(this, state, getters)\n : state[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for committing the mutation\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} mutations # Object's item can be a function which accept `commit` function as the first param, it can accept another params. You can commit mutation and do any other things in this function. specially, You need to pass anthor params from the mapped function.\n * @return {Object}\n */\nvar mapMutations = normalizeNamespace(function (namespace, mutations) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(mutations)) {\n console.error('[vuex] mapMutations: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(mutations).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedMutation () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n // Get the commit method from store\n var commit = this.$store.commit;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapMutations', namespace);\n if (!module) {\n return\n }\n commit = module.context.commit;\n }\n return typeof val === 'function'\n ? val.apply(this, [commit].concat(args))\n : commit.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for getting the getters\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} getters\n * @return {Object}\n */\nvar mapGetters = normalizeNamespace(function (namespace, getters) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(getters)) {\n console.error('[vuex] mapGetters: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(getters).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n // The namespace has been mutated by normalizeNamespace\n val = namespace + val;\n res[key] = function mappedGetter () {\n if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) {\n return\n }\n if ((process.env.NODE_ENV !== 'production') && !(val in this.$store.getters)) {\n console.error((\"[vuex] unknown getter: \" + val));\n return\n }\n return this.$store.getters[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for dispatch the action\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} actions # Object's item can be a function which accept `dispatch` function as the first param, it can accept anthor params. You can dispatch action and do any other things in this function. specially, You need to pass anthor params from the mapped function.\n * @return {Object}\n */\nvar mapActions = normalizeNamespace(function (namespace, actions) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(actions)) {\n console.error('[vuex] mapActions: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(actions).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedAction () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n // get dispatch function from store\n var dispatch = this.$store.dispatch;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapActions', namespace);\n if (!module) {\n return\n }\n dispatch = module.context.dispatch;\n }\n return typeof val === 'function'\n ? val.apply(this, [dispatch].concat(args))\n : dispatch.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\n/**\n * Rebinding namespace param for mapXXX function in special scoped, and return them by simple object\n * @param {String} namespace\n * @return {Object}\n */\nvar createNamespacedHelpers = function (namespace) { return ({\n mapState: mapState.bind(null, namespace),\n mapGetters: mapGetters.bind(null, namespace),\n mapMutations: mapMutations.bind(null, namespace),\n mapActions: mapActions.bind(null, namespace)\n}); };\n\n/**\n * Normalize the map\n * normalizeMap([1, 2, 3]) => [ { key: 1, val: 1 }, { key: 2, val: 2 }, { key: 3, val: 3 } ]\n * normalizeMap({a: 1, b: 2, c: 3}) => [ { key: 'a', val: 1 }, { key: 'b', val: 2 }, { key: 'c', val: 3 } ]\n * @param {Array|Object} map\n * @return {Object}\n */\nfunction normalizeMap (map) {\n if (!isValidMap(map)) {\n return []\n }\n return Array.isArray(map)\n ? map.map(function (key) { return ({ key: key, val: key }); })\n : Object.keys(map).map(function (key) { return ({ key: key, val: map[key] }); })\n}\n\n/**\n * Validate whether given map is valid or not\n * @param {*} map\n * @return {Boolean}\n */\nfunction isValidMap (map) {\n return Array.isArray(map) || isObject(map)\n}\n\n/**\n * Return a function expect two param contains namespace and map. it will normalize the namespace and then the param's function will handle the new namespace and the map.\n * @param {Function} fn\n * @return {Function}\n */\nfunction normalizeNamespace (fn) {\n return function (namespace, map) {\n if (typeof namespace !== 'string') {\n map = namespace;\n namespace = '';\n } else if (namespace.charAt(namespace.length - 1) !== '/') {\n namespace += '/';\n }\n return fn(namespace, map)\n }\n}\n\n/**\n * Search a special module from store by namespace. if module not exist, print error message.\n * @param {Object} store\n * @param {String} helper\n * @param {String} namespace\n * @return {Object}\n */\nfunction getModuleByNamespace (store, helper, namespace) {\n var module = store._modulesNamespaceMap[namespace];\n if ((process.env.NODE_ENV !== 'production') && !module) {\n console.error((\"[vuex] module namespace not found in \" + helper + \"(): \" + namespace));\n }\n return module\n}\n\n// Credits: borrowed code from fcomb/redux-logger\n\nfunction createLogger (ref) {\n if ( ref === void 0 ) ref = {};\n var collapsed = ref.collapsed; if ( collapsed === void 0 ) collapsed = true;\n var filter = ref.filter; if ( filter === void 0 ) filter = function (mutation, stateBefore, stateAfter) { return true; };\n var transformer = ref.transformer; if ( transformer === void 0 ) transformer = function (state) { return state; };\n var mutationTransformer = ref.mutationTransformer; if ( mutationTransformer === void 0 ) mutationTransformer = function (mut) { return mut; };\n var actionFilter = ref.actionFilter; if ( actionFilter === void 0 ) actionFilter = function (action, state) { return true; };\n var actionTransformer = ref.actionTransformer; if ( actionTransformer === void 0 ) actionTransformer = function (act) { return act; };\n var logMutations = ref.logMutations; if ( logMutations === void 0 ) logMutations = true;\n var logActions = ref.logActions; if ( logActions === void 0 ) logActions = true;\n var logger = ref.logger; if ( logger === void 0 ) logger = console;\n\n return function (store) {\n var prevState = deepCopy(store.state);\n\n if (typeof logger === 'undefined') {\n return\n }\n\n if (logMutations) {\n store.subscribe(function (mutation, state) {\n var nextState = deepCopy(state);\n\n if (filter(mutation, prevState, nextState)) {\n var formattedTime = getFormattedTime();\n var formattedMutation = mutationTransformer(mutation);\n var message = \"mutation \" + (mutation.type) + formattedTime;\n\n startMessage(logger, message, collapsed);\n logger.log('%c prev state', 'color: #9E9E9E; font-weight: bold', transformer(prevState));\n logger.log('%c mutation', 'color: #03A9F4; font-weight: bold', formattedMutation);\n logger.log('%c next state', 'color: #4CAF50; font-weight: bold', transformer(nextState));\n endMessage(logger);\n }\n\n prevState = nextState;\n });\n }\n\n if (logActions) {\n store.subscribeAction(function (action, state) {\n if (actionFilter(action, state)) {\n var formattedTime = getFormattedTime();\n var formattedAction = actionTransformer(action);\n var message = \"action \" + (action.type) + formattedTime;\n\n startMessage(logger, message, collapsed);\n logger.log('%c action', 'color: #03A9F4; font-weight: bold', formattedAction);\n endMessage(logger);\n }\n });\n }\n }\n}\n\nfunction startMessage (logger, message, collapsed) {\n var startMessage = collapsed\n ? logger.groupCollapsed\n : logger.group;\n\n // render\n try {\n startMessage.call(logger, message);\n } catch (e) {\n logger.log(message);\n }\n}\n\nfunction endMessage (logger) {\n try {\n logger.groupEnd();\n } catch (e) {\n logger.log('—— log end ——');\n }\n}\n\nfunction getFormattedTime () {\n var time = new Date();\n return (\" @ \" + (pad(time.getHours(), 2)) + \":\" + (pad(time.getMinutes(), 2)) + \":\" + (pad(time.getSeconds(), 2)) + \".\" + (pad(time.getMilliseconds(), 3)))\n}\n\nfunction repeat (str, times) {\n return (new Array(times + 1)).join(str)\n}\n\nfunction pad (num, maxLength) {\n return repeat('0', maxLength - num.toString().length) + num\n}\n\nvar index = {\n Store: Store,\n install: install,\n version: '3.6.2',\n mapState: mapState,\n mapMutations: mapMutations,\n mapGetters: mapGetters,\n mapActions: mapActions,\n createNamespacedHelpers: createNamespacedHelpers,\n createLogger: createLogger\n};\n\nexport default index;\nexport { Store, createLogger, createNamespacedHelpers, install, mapActions, mapGetters, mapMutations, mapState };\n","import '../assets/NcSettingsSection-CGaCS1X0.css';\nimport { r as register, u as t24, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t24);\nconst _sfc_main$1 = {\n name: \"HelpCircleIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon help-circle-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"M15.07,11.25L14.17,12.17C13.45,12.89 13,13.5 13,15H11V14.5C11,13.39 11.45,12.39 12.17,11.67L13.41,10.41C13.78,10.05 14,9.55 14,9C14,7.89 13.1,7 12,7A2,2 0 0,0 10,9H8A4,4 0 0,1 12,5A4,4 0 0,1 16,9C16,9.88 15.64,10.67 15.07,11.25M13,19H11V17H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst HelpCircle = __component__$1.exports;\nconst _sfc_main = {\n name: \"NcSettingsSection\",\n components: {\n HelpCircle\n },\n props: {\n name: {\n type: String,\n required: true\n },\n description: {\n type: String,\n default: \"\"\n },\n docUrl: {\n type: String,\n default: \"\"\n },\n /**\n * Limit the width of the setting's content\n *\n * Setting this to false allows unrestricted (width) settings content.\n * Note that the name and description have always a width limit.\n * @deprecated Will be removed with next version and will not be used on Nextcloud 30+ (always forced to true)\n */\n limitWidth: {\n type: Boolean,\n default: true\n }\n },\n data() {\n return {\n docNameTranslated: t(\"External documentation for {name}\", {\n name: this.name\n })\n };\n },\n computed: {\n forceLimitWidth() {\n var _a, _b;\n if (this.limitWidth) {\n return true;\n }\n const [major] = (_b = (_a = window._oc_config) == null ? void 0 : _a.version.split(\".\", 2)) != null ? _b : [];\n return major && Number.parseInt(major) >= 30;\n },\n hasDescription() {\n return this.description.length > 0;\n },\n hasDocUrl() {\n return this.docUrl.length > 0;\n }\n }\n};\nvar _sfc_render = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"settings-section\", class: { \"settings-section--limit-width\": _vm.forceLimitWidth } }, [_c(\"h2\", { staticClass: \"settings-section__name\" }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \"), _vm.hasDocUrl ? _c(\"a\", { staticClass: \"settings-section__info\", attrs: { \"href\": _vm.docUrl, \"title\": _vm.docNameTranslated, \"aria-label\": _vm.docNameTranslated, \"target\": \"_blank\", \"rel\": \"noreferrer nofollow\" } }, [_c(\"HelpCircle\", { attrs: { \"size\": 20 } })], 1) : _vm._e()]), _vm.hasDescription ? _c(\"p\", { staticClass: \"settings-section__desc\" }, [_vm._v(\" \" + _vm._s(_vm.description) + \" \")]) : _vm._e(), _vm._t(\"default\")], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"0974f50a\"\n);\nconst NcSettingsSection = __component__.exports;\nexport {\n NcSettingsSection as N\n};\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","\n\n\n\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { IActivityType } from '../models/ActivitySettings.js'\n\n/**\n * Return wether the notification method can be checked for the activity\n *\n * @param activity - the concerned activity\n * @param methodKey - the concerned method\n * @return {boolean}\n */\nexport function isActivityEnabled(activity: IActivityType, methodKey: string) {\n\treturn activity.methods.includes(methodKey)\n}\n\n/**\n * @param activities - List of the activities to check\n * @param methodKey - the method key for which to verify the checked value\n * @return {boolean} Wether at least one input is checked for the given set of activities\n */\nexport function isOneInputUnChecked(activities: IActivityType[], methodKey: string) {\n\tfor (const activity of activities) {\n\t\tif (isActivityEnabled(activity, methodKey) && !activity[methodKey]) {\n\t\t\treturn true\n\t\t}\n\t}\n\n\treturn false\n}\n","\n\n\n\t\n\t\t\n\t\t\t{{ t('activity', 'Activity notification configuration') }}\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{ group.name }}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{ methodName }}\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{{ actionName(methodKey) }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport Vue from 'vue'\nimport Vuex from 'vuex'\nimport { translate as t } from '@nextcloud/l10n'\n\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\nimport { loadState } from '@nextcloud/initial-state'\nimport { showSuccess, showError } from '@nextcloud/dialogs'\n\nimport { isActivityEnabled, isOneInputUnChecked } from '../utils/settings.ts'\nimport logger from '../utils/logger.ts'\n\nVue.use(Vuex)\n\n/**\n * @typedef {object} SettingsState\n * @property {object} setting .\n * @property {Object} activityGroups Activity setting groups that should be shown (Files, Calendar, ...)\n * @property {boolean} isEmailSet Whether the user has a valid email address set\n * @property {boolean} emailEnabled Whether activity emails should be sent\n * @property {boolean} activityDigestEnabled Whether the daily digest should be sent\n * @property {0|1|2|3} settingBatchtime How to group the activity emails\n * @property {Array} methods Available methods for activity (push, mail, ...)\n * @property {string} endpoint API endpoint to talk to (user or admin settings)\n */\n\nconst store = new Vuex.Store({\n\tstrict: true,\n\t/** @type {SettingsState} */\n\tstate: {\n\t\tsetting: loadState('activity', 'setting'),\n\t\tactivityGroups: loadState('activity', 'activity_groups'),\n\t\tisEmailSet: loadState('activity', 'is_email_set'),\n\t\temailEnabled: loadState('activity', 'email_enabled'),\n\t\tactivityDigestEnabled: loadState('activity', 'activity_digest_enabled', false),\n\t\tsettingBatchtime: loadState('activity', 'setting_batchtime'),\n\t\tmethods: loadState('activity', 'methods'),\n\t\tendpoint: '',\n\t},\n\tgetters: {\n\t\t/**\n\t\t * Return an array of checked activities.\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @return {Array}\n\t\t */\n\t\tcheckedActivities(state) {\n\t\t\tconst methodsEnabled = (activityKey, activity) => {\n\t\t\t\tconst methods = []\n\t\t\t\tif (activity.email) {\n\t\t\t\t\tmethods.push({ activityKey, method: 'email', activity })\n\t\t\t\t}\n\t\t\t\tif (activity.notification) {\n\t\t\t\t\tmethods.push({ activityKey, method: 'notification', activity })\n\t\t\t\t}\n\t\t\t\treturn methods\n\t\t\t}\n\n\t\t\treturn Object.values(state.activityGroups)\n\t\t\t\t.map(group => Object.entries(group.activities)) // [[[activityKey, activity], ...], [[activityKey, activity], ...]]\n\t\t\t\t.reduce((acc, val) => acc.concat(val), []) // [[activityKey, activity], ...]\n\t\t\t\t.map(([activityKey, activity]) => methodsEnabled(activityKey, activity)) // [[{activityKey, method, activity}, ...], ...]\n\t\t\t\t.reduce((acc, val) => acc.concat(val), [])\n\t\t\t\t.filter(({ activity, method }) => activity[method])\n\t\t\t\t.map(({ activityKey, method }) => `${activityKey}_${method}`) // ['enabled_activity_key', ...]\n\t\t},\n\t},\n\tmutations: {\n\t\t/**\n\t\t * Update the 'enabled' state of a notification method for a given group/activity/method tuple\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.groupKey - The targeted group\n\t\t * @param {string} payload.activityKey - The targeted activity\n\t\t * @param {string} payload.methodKey - The targeted method\n\t\t * @param {string} payload.value - The value to set\n\t\t */\n\t\tSET_METHOD_FOR_METHOD_AND_ACTIVITY(state, { groupKey, activityKey, methodKey, value }) {\n\t\t\tconst group = state.activityGroups[groupKey]\n\t\t\tconst activity = group.activities[activityKey]\n\n\t\t\tif (isActivityEnabled(activity, methodKey)) {\n\t\t\t\tactivity[methodKey] = value\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Set the endpoint used to save the settings.\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.endpoint - Where to POST the saveSettings request.\n\t\t */\n\t\tSET_ENDPOINT(state, { endpoint }) {\n\t\t\tstate.endpoint = endpoint\n\t\t},\n\t\t/**\n\t\t * Set the batch time.\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @param {object} payload - The payload.\n\t\t * @param {0|1|2|3} payload.settingBatchtime - The selected batch time.\n\t\t */\n\t\tSET_SETTING_BATCHTIME(state, { settingBatchtime }) {\n\t\t\tstate.settingBatchtime = settingBatchtime\n\t\t},\n\t\t/**\n\t\t * Toggle activity digest.\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @param {object} payload - The payload.\n\t\t * @param {boolean} payload.activityDigestEnabled - Enabled status of the activity digest.\n\t\t */\n\t\tTOGGLE_ACTIVITY_DIGEST(state, { activityDigestEnabled }) {\n\t\t\tstate.activityDigestEnabled = activityDigestEnabled\n\t\t},\n\t\t/**\n\t\t * Toggle the availability of mail notifications\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @param {object} payload - The payload.\n\t\t * @param {boolean} payload.emailEnabled - Enabled status of the email notifications.\n\t\t */\n\t\tTOGGLE_EMAIL_ENABLED(state, { emailEnabled }) {\n\t\t\tstate.emailEnabled = emailEnabled\n\t\t},\n\t},\n\tactions: {\n\t\t/**\n\t\t * Set the endpoint used to save the settings.\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.endpoint - Where to POST the saveSettings request.\n\t\t */\n\t\tsetEndpoint({ commit }, { endpoint }) {\n\t\t\tcommit('SET_ENDPOINT', { endpoint })\n\t\t},\n\n\t\t/**\n\t\t * Toggle the 'enabled' state of a notification method for a given group/activity/method tuple\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {Function} _.dispatch - Function to dispatch another action\n\t\t * @param {object} _.state - Current state\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.groupKey - The targeted group\n\t\t * @param {string} payload.activityKey - The targeted activity\n\t\t * @param {string} payload.methodKey - The targeted method\n\t\t */\n\t\ttoggleMethodForMethodAndActivity({ commit, state, dispatch }, { groupKey, activityKey, methodKey }) {\n\t\t\tconst activity = state.activityGroups[groupKey].activities[activityKey]\n\t\t\tconst oneInputIsChecked = isOneInputUnChecked([activity], methodKey)\n\n\t\t\tcommit(\n\t\t\t\t'SET_METHOD_FOR_METHOD_AND_ACTIVITY',\n\t\t\t\t{\n\t\t\t\t\tgroupKey,\n\t\t\t\t\tactivityKey,\n\t\t\t\t\tmethodKey,\n\t\t\t\t\tvalue: oneInputIsChecked,\n\t\t\t\t})\n\n\t\t\tdispatch('saveSettings')\n\t\t},\n\n\t\t/**\n\t\t * Toggle the 'enabled' state of a notification method for a given group/method tuple\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {Function} _.dispatch - Function to dispatch another action\n\t\t * @param {object} _.state - Current state\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.groupKey - The targeted group\n\t\t * @param {string} payload.methodKey - The targeted method\n\t\t */\n\t\ttoggleMethodForGroup({ commit, state, dispatch }, { groupKey, methodKey }) {\n\t\t\tconst activities = Object.values(state.activityGroups[groupKey].activities)\n\t\t\tconst oneInputIsChecked = isOneInputUnChecked(activities, methodKey)\n\n\t\t\tfor (const activityKey in state.activityGroups[groupKey].activities) {\n\t\t\t\tcommit(\n\t\t\t\t\t'SET_METHOD_FOR_METHOD_AND_ACTIVITY',\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupKey,\n\t\t\t\t\t\tactivityKey,\n\t\t\t\t\t\tmethodKey,\n\t\t\t\t\t\tvalue: oneInputIsChecked,\n\t\t\t\t\t})\n\t\t\t}\n\n\t\t\tdispatch('saveSettings')\n\t\t},\n\n\t\t/**\n\t\t * Toggle the 'enabled' state of a notification method for a given group/activity tuple\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {Function} _.dispatch - Function to dispatch another action\n\t\t * @param {object} _.state - Current state\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.groupKey - The targeted group\n\t\t * @param {string} payload.activityKey - The targeted activity\n\t\t */\n\t\ttoggleMethodsForActivity({ commit, state, dispatch }, { groupKey, activityKey }) {\n\t\t\tconst activity = state.activityGroups[groupKey].activities[activityKey]\n\t\t\tconst oneInputIsChecked = activity.methods.map(method => isOneInputUnChecked([activity], method)).includes(true)\n\n\t\t\tfor (const methodKey of activity.methods) {\n\t\t\t\tcommit(\n\t\t\t\t\t'SET_METHOD_FOR_METHOD_AND_ACTIVITY',\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupKey,\n\t\t\t\t\t\tactivityKey,\n\t\t\t\t\t\tmethodKey,\n\t\t\t\t\t\tvalue: oneInputIsChecked,\n\t\t\t\t\t})\n\t\t\t}\n\n\t\t\tdispatch('saveSettings')\n\t\t},\n\n\t\t/**\n\t\t * Set the batch time.\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {Function} _.dispatch - Function to dispatch another action\n\t\t * @param {object} payload - The payload.\n\t\t * @param {0|1|2|3} payload.settingBatchtime - The selected batch time.\n\t\t */\n\t\tsetSettingBatchtime({ commit, dispatch }, { settingBatchtime }) {\n\t\t\tcommit(\n\t\t\t\t'SET_SETTING_BATCHTIME',\n\t\t\t\t{\n\t\t\t\t\tsettingBatchtime,\n\t\t\t\t})\n\n\t\t\tdispatch('saveSettings')\n\t\t},\n\n\t\t/**\n\t\t * Toggle the activity digest.\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {Function} _.dispatch - Function to dispatch another action\n\t\t * @param {object} payload - The payload.\n\t\t * @param {boolean} payload.activityDigestEnabled - Enabled status of the activity digest.\n\t\t */\n\t\ttoggleActivityDigestEnabled({ commit, dispatch }, { activityDigestEnabled }) {\n\t\t\tcommit(\n\t\t\t\t'TOGGLE_ACTIVITY_DIGEST',\n\t\t\t\t{\n\t\t\t\t\tactivityDigestEnabled,\n\t\t\t\t})\n\n\t\t\tdispatch('saveSettings')\n\t\t},\n\n\t\t/**\n\t\t * Toggle the availability of mail notifications\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {object} payload - The payload.\n\t\t * @param {boolean} payload.emailEnabled - Enabled status of the email notifications.\n\t\t */\n\t\ttoggleEmailEnabled({ commit }, { emailEnabled }) {\n\t\t\tcommit(\n\t\t\t\t'TOGGLE_EMAIL_ENABLED',\n\t\t\t\t{\n\t\t\t\t\temailEnabled,\n\t\t\t\t})\n\n\t\t\ttry {\n\n\t\t\t\tOCP.AppConfig.setValue(\n\t\t\t\t\t'activity', 'enable_email',\n\t\t\t\t\temailEnabled ? 'yes' : 'no'\n\t\t\t\t)\n\n\t\t\t\tshowSuccess(t('activity', 'Your settings have been updated.'))\n\t\t\t} catch (error) {\n\t\t\t\tshowError(t('activity', 'Unable to save the settings'))\n\t\t\t\tlogger.error('An error occurred while saving the activity settings', error)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Save the currently displayed settings\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {object} _.state - Current state\n\t\t * @param {object} _.getters - Getter functions for the state\n\t\t */\n\t\tasync saveSettings({ state, getters }) {\n\t\t\ttry {\n\t\t\t\tconst form = new FormData()\n\t\t\t\tgetters.checkedActivities.forEach(activity => {\n\t\t\t\t\tform.append(activity, '1')\n\t\t\t\t})\n\n\t\t\t\tform.append('notify_setting_batchtime', `${state.settingBatchtime}`)\n\t\t\t\tform.append('activity_digest', `${state.activityDigestEnabled ? 1 : 0}`)\n\n\t\t\t\tconst response = await axios.post(generateUrl(state.endpoint), form)\n\n\t\t\t\tshowSuccess(response.data.data.message)\n\t\t\t} catch (error) {\n\t\t\t\tshowError(t('activity', 'Unable to save the settings'))\n\t\t\t\tlogger.error('An error occurred while saving the activity settings', error)\n\t\t\t}\n\t\t},\n\t},\n})\n\nexport default store\n"],"names":["applyMixin","Vue","version","vuexInit","_init","options","target","global","devtoolHook","devtoolPlugin","store","targetState","mutation","state","action","find","list","f","deepCopy","obj","cache","hit","c","copy","key","forEachValue","fn","isObject","isPromise","val","partial","arg","Module","rawModule","runtime","rawState","prototypeAccessors","module","ModuleCollection","rawRootModule","path","namespace","update","this$1","newModule","parent","rawChildModule","child","targetModule","Store","install","plugins","strict","ref","dispatch","commit","type","payload","installModule","resetStoreVM","plugin","useDevtools","prototypeAccessors$1","v","_type","_payload","_options","unifyObjectStyle","entry","handler","sub","result","resolve","reject","res","error","genericSubscribe","subs","getter","cb","parentState","getNestedState","resetStore","newOptions","committing","i","hot","oldVm","wrappedGetters","computed","silent","enableStrictMode","rootState","isRoot","moduleName","local","makeLocalContext","namespacedType","registerMutation","registerAction","registerGetter","noNamespace","args","makeLocalGetters","gettersProxy","splitPos","localType","err","rawGetter","_Vue","mapState","normalizeNamespace","states","normalizeMap","getters","getModuleByNamespace","mapMutations","mutations","len","mapGetters","mapActions","actions","createNamespacedHelpers","map","isValidMap","helper","createLogger","collapsed","filter","stateBefore","stateAfter","transformer","mutationTransformer","mut","actionFilter","actionTransformer","act","logMutations","logActions","logger","prevState","nextState","formattedTime","getFormattedTime","formattedMutation","message","startMessage","endMessage","formattedAction","time","pad","repeat","str","times","num","maxLength","index","register","t24","_sfc_main$1","_sfc_render$1","_vm","_c","$event","_sfc_staticRenderFns$1","__component__$1","normalizeComponent","HelpCircle","_sfc_main","t","_a","_b","major","_sfc_render","_sfc_staticRenderFns","__component__","NcSettingsSection","id","MinusBox","CheckboxBlank","CheckboxMarked","CheckboxBlankOutline","values","input","isActivityEnabled","activity","methodKey","isOneInputUnChecked","activities","Checkbox","method","Vuex","loadState","methodsEnabled","activityKey","methods","group","acc","groupKey","value","endpoint","settingBatchtime","activityDigestEnabled","emailEnabled","oneInputIsChecked","showSuccess","showError","form","response","axios","generateUrl"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5]} \ No newline at end of file diff --git a/js/settings-store-CIr0IpsE.chunk.mjs b/js/settings-store-FJFCqrJM.chunk.mjs similarity index 66% rename from js/settings-store-CIr0IpsE.chunk.mjs rename to js/settings-store-FJFCqrJM.chunk.mjs index 16e6e9a9b..74c97193c 100644 --- a/js/settings-store-CIr0IpsE.chunk.mjs +++ b/js/settings-store-FJFCqrJM.chunk.mjs @@ -1,2 +1,2 @@ (function(){"use strict";try{if(typeof document<"u"){var a=document.createElement("style");a.appendChild(document.createTextNode(".material-design-icon[data-v-0974f50a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.settings-section[data-v-0974f50a]{display:block;margin-bottom:auto;padding:30px}.settings-section[data-v-0974f50a]:not(:last-child){border-bottom:1px solid var(--color-border)}.settings-section--limit-width>*[data-v-0974f50a]{max-width:900px}.settings-section__name[data-v-0974f50a]{display:inline-flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;max-width:900px;margin-top:0}.settings-section__info[data-v-0974f50a]{display:flex;align-items:center;justify-content:center;width:var(--default-clickable-area);height:var(--default-clickable-area);margin:calc((var(--default-clickable-area) - 16px) / 2 * -1);margin-left:0;color:var(--color-text-maxcontrast)}.settings-section__info[data-v-0974f50a]:hover,.settings-section__info[data-v-0974f50a]:focus,.settings-section__info[data-v-0974f50a]:active{color:var(--color-main-text)}.settings-section__desc[data-v-0974f50a]{margin-top:-.2em;margin-bottom:1em;color:var(--color-text-maxcontrast);max-width:900px}.checkbox-radio-switch[data-v-a72a40ed]{display:flex}.checkbox-radio-switch__input[data-v-a72a40ed]{position:fixed;z-index:-1;top:-5000px;left:-5000px;opacity:0}.checkbox-radio-switch__label[data-v-a72a40ed]{display:flex;align-items:center;-webkit-user-select:none;user-select:none;height:32px;width:32px;border-radius:44px;padding:0;margin:2px}.checkbox-radio-switch__label[data-v-a72a40ed],.checkbox-radio-switch__label *[data-v-a72a40ed]{cursor:pointer}.checkbox-radio-switch__icon[data-v-a72a40ed]{margin-right:4px;margin-left:4px;color:var(--color-primary-element);width:var(--icon-size);height:var(--icon-size)}.checkbox-radio-switch--disabled .checkbox-radio-switch__label[data-v-a72a40ed]{opacity:.7}.checkbox-radio-switch--disabled .checkbox-radio-switch__label .checkbox-radio-switch__icon[data-v-a72a40ed]{color:var(--color-text-light)}.checkbox-radio-switch:not(.checkbox-radio-switch--disabled) .checkbox-radio-switch__input:hover+.checkbox-radio-switch__label[data-v-a72a40ed],.checkbox-radio-switch:not(.checkbox-radio-switch--disabled) .checkbox-radio-switch__input:focus+.checkbox-radio-switch__label[data-v-a72a40ed]{background-color:var(--color-primary-element-light)}.checkbox-radio-switch:not(.checkbox-radio-switch--disabled) .checkbox-radio-switch__input:focus+.checkbox-radio-switch__label[data-v-a72a40ed]{box-shadow:0 0 0 2px var(--color-primary-element)}.checkbox-radio-switch-switch:not(.checkbox-radio-switch--checked) .checkbox-radio-switch__icon[data-v-a72a40ed]{color:var(--color-text-lighter)}.checkbox-radio-switch-switch.checkbox-radio-switch--disabled.checkbox-radio-switch--checked .checkbox-radio-switch__icon[data-v-a72a40ed]{color:var(--color-primary-element-light)}.checkbox-radio-switch .sr-only[data-v-a72a40ed]{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}table.grid th[data-v-85173cd9]{color:var(--color-text-light);height:44px}table.grid .group-header th[data-v-85173cd9]{padding-top:16px;height:60px}table.grid th.group-header-section[data-v-85173cd9]{font-size:16px;font-weight:700}table.grid th.activity_select_group[data-v-85173cd9]{color:var(--color-main-text)}.sr-only[data-v-85173cd9]{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}")),document.head.appendChild(a)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})(); -import{r as rt,x as at,n as Q,a as st,b as C,l as g,e as ct,_ as lt}from"./NcCheckboxRadioSwitch-CvMEEI9x-CRJk_h3R.chunk.mjs";import{g as z,V as ut,t as G}from"./index-CpOKyUsr.chunk.mjs";import{a as F,s as P}from"./NcNoteCard-CImn6F9p-CWGSZ4YZ.chunk.mjs";import{l as U}from"./logger-DdfSSqJ9.chunk.mjs";function dt(e){var i=Number(e.version.split(".")[0]);if(i>=2)e.mixin({beforeCreate:o});else{var n=e.prototype._init;e.prototype._init=function(r){r===void 0&&(r={}),r.init=r.init?[o].concat(r.init):o,n.call(this,r)}}function o(){var r=this.$options;r.store?this.$store=typeof r.store=="function"?r.store():r.store:r.parent&&r.parent.$store&&(this.$store=r.parent.$store)}}var ht=typeof window<"u"?window:typeof z<"u"?z:{},y=ht.__VUE_DEVTOOLS_GLOBAL_HOOK__;function pt(e){y&&(e._devtoolHook=y,y.emit("vuex:init",e),y.on("vuex:travel-to-state",function(i){e.replaceState(i)}),e.subscribe(function(i,n){y.emit("vuex:mutation",i,n)},{prepend:!0}),e.subscribeAction(function(i,n){y.emit("vuex:action",i,n)},{prepend:!0}))}function ft(e,i){return e.filter(i)[0]}function D(e,i){if(i===void 0&&(i=[]),e===null||typeof e!="object")return e;var n=ft(i,function(r){return r.original===e});if(n)return n.copy;var o=Array.isArray(e)?[]:{};return i.push({original:e,copy:o}),Object.keys(e).forEach(function(r){o[r]=D(e[r],i)}),o}function b(e,i){Object.keys(e).forEach(function(n){return i(e[n],n)})}function X(e){return e!==null&&typeof e=="object"}function mt(e){return e&&typeof e.then=="function"}function vt(e,i){return function(){return e(i)}}var v=function(e,i){this.runtime=i,this._children=Object.create(null),this._rawModule=e;var n=e.state;this.state=(typeof n=="function"?n():n)||{}},R={namespaced:{configurable:!0}};R.namespaced.get=function(){return!!this._rawModule.namespaced},v.prototype.addChild=function(e,i){this._children[e]=i},v.prototype.removeChild=function(e){delete this._children[e]},v.prototype.getChild=function(e){return this._children[e]},v.prototype.hasChild=function(e){return e in this._children},v.prototype.update=function(e){this._rawModule.namespaced=e.namespaced,e.actions&&(this._rawModule.actions=e.actions),e.mutations&&(this._rawModule.mutations=e.mutations),e.getters&&(this._rawModule.getters=e.getters)},v.prototype.forEachChild=function(e){b(this._children,e)},v.prototype.forEachGetter=function(e){this._rawModule.getters&&b(this._rawModule.getters,e)},v.prototype.forEachAction=function(e){this._rawModule.actions&&b(this._rawModule.actions,e)},v.prototype.forEachMutation=function(e){this._rawModule.mutations&&b(this._rawModule.mutations,e)},Object.defineProperties(v.prototype,R);var _=function(e){this.register([],e,!1)};_.prototype.get=function(e){return e.reduce(function(i,n){return i.getChild(n)},this.root)},_.prototype.getNamespace=function(e){var i=this.root;return e.reduce(function(n,o){return i=i.getChild(o),n+(i.namespaced?o+"/":"")},"")},_.prototype.update=function(e){tt([],this.root,e)},_.prototype.register=function(e,i,n){var o=this;n===void 0&&(n=!0);var r=new v(i,n);if(e.length===0)this.root=r;else{var a=this.get(e.slice(0,-1));a.addChild(e[e.length-1],r)}i.modules&&b(i.modules,function(s,c){o.register(e.concat(c),s,n)})},_.prototype.unregister=function(e){var i=this.get(e.slice(0,-1)),n=e[e.length-1],o=i.getChild(n);o&&o.runtime&&i.removeChild(n)},_.prototype.isRegistered=function(e){var i=this.get(e.slice(0,-1)),n=e[e.length-1];return i?i.hasChild(n):!1};function tt(e,i,n){if(i.update(n),n.modules)for(var o in n.modules){if(!i.getChild(o))return;tt(e.concat(o),i.getChild(o),n.modules[o])}}var f,m=function(e){var i=this;e===void 0&&(e={}),!f&&typeof window<"u"&&window.Vue&&et(window.Vue);var n=e.plugins;n===void 0&&(n=[]);var o=e.strict;o===void 0&&(o=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new _(e),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new f,this._makeLocalGettersCache=Object.create(null);var r=this,a=this,s=a.dispatch,c=a.commit;this.dispatch=function(d,h){return s.call(r,d,h)},this.commit=function(d,h,p){return c.call(r,d,h,p)},this.strict=o;var u=this._modules.root.state;M(this,u,[],this._modules.root),I(this,u),n.forEach(function(d){return d(i)});var l=e.devtools!==void 0?e.devtools:f.config.devtools;l&&pt(this)},H={state:{configurable:!0}};H.state.get=function(){return this._vm._data.$$state},H.state.set=function(e){},m.prototype.commit=function(e,i,n){var o=this,r=A(e,i,n),a=r.type,s=r.payload,c={type:a,payload:s},u=this._mutations[a];u&&(this._withCommit(function(){u.forEach(function(l){l(s)})}),this._subscribers.slice().forEach(function(l){return l(c,o.state)}))},m.prototype.dispatch=function(e,i){var n=this,o=A(e,i),r=o.type,a=o.payload,s={type:r,payload:a},c=this._actions[r];if(c){try{this._actionSubscribers.slice().filter(function(l){return l.before}).forEach(function(l){return l.before(s,n.state)})}catch{}var u=c.length>1?Promise.all(c.map(function(l){return l(a)})):c[0](a);return new Promise(function(l,d){u.then(function(h){try{n._actionSubscribers.filter(function(p){return p.after}).forEach(function(p){return p.after(s,n.state)})}catch{}l(h)},function(h){try{n._actionSubscribers.filter(function(p){return p.error}).forEach(function(p){return p.error(s,n.state,h)})}catch{}d(h)})})}},m.prototype.subscribe=function(e,i){return Y(e,this._subscribers,i)},m.prototype.subscribeAction=function(e,i){var n=typeof e=="function"?{before:e}:e;return Y(n,this._actionSubscribers,i)},m.prototype.watch=function(e,i,n){var o=this;return this._watcherVM.$watch(function(){return e(o.state,o.getters)},i,n)},m.prototype.replaceState=function(e){var i=this;this._withCommit(function(){i._vm._data.$$state=e})},m.prototype.registerModule=function(e,i,n){n===void 0&&(n={}),typeof e=="string"&&(e=[e]),this._modules.register(e,i),M(this,this.state,e,this._modules.get(e),n.preserveState),I(this,this.state)},m.prototype.unregisterModule=function(e){var i=this;typeof e=="string"&&(e=[e]),this._modules.unregister(e),this._withCommit(function(){var n=V(i.state,e.slice(0,-1));f.delete(n,e[e.length-1])}),Z(this)},m.prototype.hasModule=function(e){return typeof e=="string"&&(e=[e]),this._modules.isRegistered(e)},m.prototype.hotUpdate=function(e){this._modules.update(e),Z(this,!0)},m.prototype._withCommit=function(e){var i=this._committing;this._committing=!0,e(),this._committing=i},Object.defineProperties(m.prototype,H);function Y(e,i,n){return i.indexOf(e)<0&&(n&&n.prepend?i.unshift(e):i.push(e)),function(){var o=i.indexOf(e);o>-1&&i.splice(o,1)}}function Z(e,i){e._actions=Object.create(null),e._mutations=Object.create(null),e._wrappedGetters=Object.create(null),e._modulesNamespaceMap=Object.create(null);var n=e.state;M(e,n,[],e._modules.root,!0),I(e,n,i)}function I(e,i,n){var o=e._vm;e.getters={},e._makeLocalGettersCache=Object.create(null);var r=e._wrappedGetters,a={};b(r,function(c,u){a[u]=vt(c,e),Object.defineProperty(e.getters,u,{get:function(){return e._vm[u]},enumerable:!0})});var s=f.config.silent;f.config.silent=!0,e._vm=new f({data:{$$state:i},computed:a}),f.config.silent=s,e.strict&&Et(e),o&&(n&&e._withCommit(function(){o._data.$$state=null}),f.nextTick(function(){return o.$destroy()}))}function M(e,i,n,o,r){var a=!n.length,s=e._modules.getNamespace(n);if(o.namespaced&&(e._modulesNamespaceMap[s],e._modulesNamespaceMap[s]=o),!a&&!r){var c=V(i,n.slice(0,-1)),u=n[n.length-1];e._withCommit(function(){f.set(c,u,o.state)})}var l=o.context=gt(e,s,n);o.forEachMutation(function(d,h){var p=s+h;yt(e,p,d,l)}),o.forEachAction(function(d,h){var p=d.root?h:s+h,E=d.handler||d;bt(e,p,E,l)}),o.forEachGetter(function(d,h){var p=s+h;Ct(e,p,d,l)}),o.forEachChild(function(d,h){M(e,i,n.concat(h),d,r)})}function gt(e,i,n){var o=i==="",r={dispatch:o?e.dispatch:function(a,s,c){var u=A(a,s,c),l=u.payload,d=u.options,h=u.type;return(!d||!d.root)&&(h=i+h),e.dispatch(h,l)},commit:o?e.commit:function(a,s,c){var u=A(a,s,c),l=u.payload,d=u.options,h=u.type;(!d||!d.root)&&(h=i+h),e.commit(h,l,d)}};return Object.defineProperties(r,{getters:{get:o?function(){return e.getters}:function(){return _t(e,i)}},state:{get:function(){return V(e.state,n)}}}),r}function _t(e,i){if(!e._makeLocalGettersCache[i]){var n={},o=i.length;Object.keys(e.getters).forEach(function(r){if(r.slice(0,o)===i){var a=r.slice(o);Object.defineProperty(n,a,{get:function(){return e.getters[r]},enumerable:!0})}}),e._makeLocalGettersCache[i]=n}return e._makeLocalGettersCache[i]}function yt(e,i,n,o){var r=e._mutations[i]||(e._mutations[i]=[]);r.push(function(a){n.call(e,o.state,a)})}function bt(e,i,n,o){var r=e._actions[i]||(e._actions[i]=[]);r.push(function(a){var s=n.call(e,{dispatch:o.dispatch,commit:o.commit,getters:o.getters,state:o.state,rootGetters:e.getters,rootState:e.state},a);return mt(s)||(s=Promise.resolve(s)),e._devtoolHook?s.catch(function(c){throw e._devtoolHook.emit("vuex:error",c),c}):s})}function Ct(e,i,n,o){e._wrappedGetters[i]||(e._wrappedGetters[i]=function(r){return n(o.state,o.getters,r.state,r.getters)})}function Et(e){e._vm.$watch(function(){return this._data.$$state},function(){},{deep:!0,sync:!0})}function V(e,i){return i.reduce(function(n,o){return n[o]},e)}function A(e,i,n){return X(e)&&e.type&&(n=i,i=e,e=e.type),{type:e,payload:i,options:n}}function et(e){f&&e===f||(f=e,dt(f))}var L=x(function(e,i){var n={};return S(i).forEach(function(o){var r=o.key,a=o.val;n[r]=function(){var s=this.$store.state,c=this.$store.getters;if(e){var u=T(this.$store,"mapState",e);if(!u)return;s=u.context.state,c=u.context.getters}return typeof a=="function"?a.call(this,s,c):s[a]},n[r].vuex=!0}),n}),it=x(function(e,i){var n={};return S(i).forEach(function(o){var r=o.key,a=o.val;n[r]=function(){for(var s=[],c=arguments.length;c--;)s[c]=arguments[c];var u=this.$store.commit;if(e){var l=T(this.$store,"mapMutations",e);if(!l)return;u=l.context.commit}return typeof a=="function"?a.apply(this,[u].concat(s)):u.apply(this.$store,[a].concat(s))}}),n}),j=x(function(e,i){var n={};return S(i).forEach(function(o){var r=o.key,a=o.val;a=e+a,n[r]=function(){if(!(e&&!T(this.$store,"mapGetters",e)))return this.$store.getters[a]},n[r].vuex=!0}),n}),B=x(function(e,i){var n={};return S(i).forEach(function(o){var r=o.key,a=o.val;n[r]=function(){for(var s=[],c=arguments.length;c--;)s[c]=arguments[c];var u=this.$store.dispatch;if(e){var l=T(this.$store,"mapActions",e);if(!l)return;u=l.context.dispatch}return typeof a=="function"?a.apply(this,[u].concat(s)):u.apply(this.$store,[a].concat(s))}}),n}),kt=function(e){return{mapState:L.bind(null,e),mapGetters:j.bind(null,e),mapMutations:it.bind(null,e),mapActions:B.bind(null,e)}};function S(e){return wt(e)?Array.isArray(e)?e.map(function(i){return{key:i,val:i}}):Object.keys(e).map(function(i){return{key:i,val:e[i]}}):[]}function wt(e){return Array.isArray(e)||X(e)}function x(e){return function(i,n){return typeof i!="string"?(n=i,i=""):i.charAt(i.length-1)!=="/"&&(i+="/"),e(i,n)}}function T(e,i,n){var o=e._modulesNamespaceMap[n];return o}function At(e){e===void 0&&(e={});var i=e.collapsed;i===void 0&&(i=!0);var n=e.filter;n===void 0&&(n=function(d,h,p){return!0});var o=e.transformer;o===void 0&&(o=function(d){return d});var r=e.mutationTransformer;r===void 0&&(r=function(d){return d});var a=e.actionFilter;a===void 0&&(a=function(d,h){return!0});var s=e.actionTransformer;s===void 0&&(s=function(d){return d});var c=e.logMutations;c===void 0&&(c=!0);var u=e.logActions;u===void 0&&(u=!0);var l=e.logger;return l===void 0&&(l=console),function(d){var h=D(d.state);typeof l>"u"||(c&&d.subscribe(function(p,E){var k=D(E);if(n(p,h,k)){var O=J(),$=r(p),ot="mutation "+p.type+O;W(l,ot,i),l.log("%c prev state","color: #9E9E9E; font-weight: bold",o(h)),l.log("%c mutation","color: #03A9F4; font-weight: bold",$),l.log("%c next state","color: #4CAF50; font-weight: bold",o(k)),q(l)}h=k}),u&&d.subscribeAction(function(p,E){if(a(p,E)){var k=J(),O=s(p),$="action "+p.type+k;W(l,$,i),l.log("%c action","color: #03A9F4; font-weight: bold",O),q(l)}}))}}function W(e,i,n){var o=n?e.groupCollapsed:e.group;try{o.call(e,i)}catch{e.log(i)}}function q(e){try{e.groupEnd()}catch{e.log("—— log end ——")}}function J(){var e=new Date;return" @ "+w(e.getHours(),2)+":"+w(e.getMinutes(),2)+":"+w(e.getSeconds(),2)+"."+w(e.getMilliseconds(),3)}function Mt(e,i){return new Array(i+1).join(e)}function w(e,i){return Mt("0",i-e.toString().length)+e}var nt={Store:m,install:et,version:"3.6.2",mapState:L,mapMutations:it,mapGetters:j,mapActions:B,createNamespacedHelpers:kt,createLogger:At};rt(at);const St={name:"HelpCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var xt=function(){var e=this,i=e._self._c;return i("span",e._b({staticClass:"material-design-icon help-circle-icon",attrs:{"aria-hidden":e.title?null:!0,"aria-label":e.title,role:"img"},on:{click:function(n){return e.$emit("click",n)}}},"span",e.$attrs,!1),[i("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[i("path",{attrs:{d:"M15.07,11.25L14.17,12.17C13.45,12.89 13,13.5 13,15H11V14.5C11,13.39 11.45,12.39 12.17,11.67L13.41,10.41C13.78,10.05 14,9.55 14,9C14,7.89 13.1,7 12,7A2,2 0 0,0 10,9H8A4,4 0 0,1 12,5A4,4 0 0,1 16,9C16,9.88 15.64,10.67 15.07,11.25M13,19H11V17H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z"}},[e.title?i("title",[e._v(e._s(e.title))]):e._e()])])])},Tt=[],Ot=Q(St,xt,Tt,!1,null,null);const $t=Ot.exports,Gt={name:"NcSettingsSection",components:{HelpCircle:$t},props:{name:{type:String,required:!0},description:{type:String,default:""},docUrl:{type:String,default:""},limitWidth:{type:Boolean,default:!0}},data(){return{docNameTranslated:st("External documentation for {name}",{name:this.name})}},computed:{forceLimitWidth(){var e,i;if(this.limitWidth)return!0;const[n]=(i=(e=window._oc_config)==null?void 0:e.version.split(".",2))!=null?i:[];return n&&Number.parseInt(n)>=30},hasDescription(){return this.description.length>0},hasDocUrl(){return this.docUrl.length>0}}};var Ht=function(){var e=this,i=e._self._c;return i("div",{staticClass:"settings-section",class:{"settings-section--limit-width":e.forceLimitWidth}},[i("h2",{staticClass:"settings-section__name"},[e._v(" "+e._s(e.name)+" "),e.hasDocUrl?i("a",{staticClass:"settings-section__info",attrs:{href:e.docUrl,title:e.docNameTranslated,"aria-label":e.docNameTranslated,target:"_blank",rel:"noreferrer nofollow"}},[i("HelpCircle",{attrs:{size:20}})],1):e._e()]),e.hasDescription?i("p",{staticClass:"settings-section__desc"},[e._v(" "+e._s(e.description)+" ")]):e._e(),e._t("default")],2)},Nt=[],Dt=Q(Gt,Ht,Nt,!1,null,"0974f50a");const me=Dt.exports,It={name:"CheckboxBlankOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Vt=function(){var e=this,i=e._self._c;return i("span",e._b({staticClass:"material-design-icon checkbox-blank-outline-icon",attrs:{"aria-hidden":e.title?null:!0,"aria-label":e.title,role:"img"},on:{click:function(n){return e.$emit("click",n)}}},"span",e.$attrs,!1),[i("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[i("path",{attrs:{d:"M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3M19,5V19H5V5H19Z"}},[e.title?i("title",[e._v(e._s(e.title))]):e._e()])])])},Lt=[],jt=C(It,Vt,Lt,!1,null,null);const Bt=jt.exports,Kt={name:"CheckboxBlankIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var zt=function(){var e=this,i=e._self._c;return i("span",e._b({staticClass:"material-design-icon checkbox-blank-icon",attrs:{"aria-hidden":e.title?null:!0,"aria-label":e.title,role:"img"},on:{click:function(n){return e.$emit("click",n)}}},"span",e.$attrs,!1),[i("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[i("path",{attrs:{d:"M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z"}},[e.title?i("title",[e._v(e._s(e.title))]):e._e()])])])},Ft=[],Pt=C(Kt,zt,Ft,!1,null,null);const Ut=Pt.exports,Rt={name:"MinusBoxIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Yt=function(){var e=this,i=e._self._c;return i("span",e._b({staticClass:"material-design-icon minus-box-icon",attrs:{"aria-hidden":e.title?null:!0,"aria-label":e.title,role:"img"},on:{click:function(n){return e.$emit("click",n)}}},"span",e.$attrs,!1),[i("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[i("path",{attrs:{d:"M17,13H7V11H17M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z"}},[e.title?i("title",[e._v(e._s(e.title))]):e._e()])])])},Zt=[],Wt=C(Rt,Yt,Zt,!1,null,null);const qt=Wt.exports,Jt={name:"CheckboxMarkedIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Qt=function(){var e=this,i=e._self._c;return i("span",e._b({staticClass:"material-design-icon checkbox-marked-icon",attrs:{"aria-hidden":e.title?null:!0,"aria-label":e.title,role:"img"},on:{click:function(n){return e.$emit("click",n)}}},"span",e.$attrs,!1),[i("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[i("path",{attrs:{d:"M10,17L5,12L6.41,10.58L10,14.17L17.59,6.58L19,8M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z"}},[e.title?i("title",[e._v(e._s(e.title))]):e._e()])])])},Xt=[],te=C(Jt,Qt,Xt,!1,null,null);const ee=te.exports,ie={name:"Checkbox",props:{id:{type:String,required:!0,validator:e=>e.trim()!==""},checked:{type:[Boolean,Array,String],default:!1},value:{type:String,default:null},disabled:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},wrapperElement:{type:String,default:"span"},name:{type:String,default:null}},computed:{size(){return 24},cssVars(){return{"--icon-size":this.size+"px"}},isChecked(){return[...this.checked].indexOf(this.value)>-1},checkboxRadioIconElement(){return this.indeterminate?qt:this.disabled&&!this.isChecked?Ut:this.isChecked?ee:Bt}},methods:{onToggle(){if(this.disabled)return;if(typeof this.checked=="boolean"){this.$emit("update:checked",!this.isChecked);return}const e=this.getInputsSet().filter(i=>i.checked).map(i=>i.value);this.$emit("update:checked",e)},getInputsSet(){return[...document.getElementsByName(this.name)]}}};var ne=function(){var e=this,i=e._self._c;return i(e.wrapperElement,{tag:"element",staticClass:"checkbox-radio-switch checkbox-radio-switch-checkbox",class:{"checkbox-radio-switch--checked":e.isChecked,"checkbox-radio-switch--disabled":e.disabled,"checkbox-radio-switch--indeterminate":e.indeterminate},style:e.cssVars},[i("input",{staticClass:"checkbox-radio-switch__input",attrs:{id:e.id,disabled:e.disabled,indeterminate:e.indeterminate,name:e.name,type:"checkbox"},domProps:{checked:e.isChecked,value:e.value},on:{change:e.onToggle}}),i("label",{staticClass:"checkbox-radio-switch__label",attrs:{for:e.id}},[i(e.checkboxRadioIconElement,{tag:"component",staticClass:"checkbox-radio-switch__icon",attrs:{size:e.size,"aria-hidden":"true"}}),i("span",{staticClass:"sr-only"},[e._t("default")],2)],1)])},oe=[],re=C(ie,ne,oe,!1,null,"a72a40ed");const ae=re.exports;function K(e,i){return e.methods.includes(i)}function N(e,i){for(const n of e)if(K(n,i)&&!n[i])return!0;return!1}const se={name:"ActivityGrid",components:{Checkbox:ae},computed:{...j(["checkedActivities"]),...L(["methods","activityGroups","emailEnabled","isEmailSet","settingBatchtime"])},methods:{isActivityEnabled:K,...B(["toggleMethodForMethodAndActivity","toggleMethodForGroup"]),actionName(e){return e==="email"?t("activity","Send email"):t("activity","Send push notification")}}};var ce=function(){var e=this,i=e._self._c;return i("table",{staticClass:"grid activitysettings"},[i("caption",{staticClass:"sr-only"},[e._v(" "+e._s(e.t("activity","Activity notification configuration"))+" ")]),e._l(e.activityGroups,function(n,o){return i("tbody",{key:o},[i("tr",{staticClass:"group-header"},[i("th",{staticClass:"group-header-section"},[e._v(" "+e._s(n.name)+" ")]),e._l(e.methods,function(r,a){return i("th",{key:a,staticClass:"activity_select_group"},[e._v(" "+e._s(r)+" ")])})],2),e._l(n.activities,function(r,a){return i("tr",{key:a},[i("th",{attrs:{scope:"row"}},[i("span",{domProps:{innerHTML:e._s(r.desc)}})]),e._l(e.methods,function(s,c){return i("td",{key:c},[i("Checkbox",{attrs:{id:"".concat(a,"_").concat(c),disabled:!e.isActivityEnabled(r,c),checked:e.checkedActivities,value:"".concat(a,"_").concat(c)},on:{"update:checked":function(u){return e.toggleMethodForMethodAndActivity({groupKey:o,activityKey:a,methodKey:c})}}},[e._v(" "+e._s(e.actionName(c))+" ")])],1)})],2)})],2)})],2)},le=[],ue=C(se,ce,le,!1,null,"85173cd9");const ve=ue.exports;ut.use(nt);const ge=new nt.Store({strict:!0,state:{setting:g("activity","setting"),activityGroups:g("activity","activity_groups"),isEmailSet:g("activity","is_email_set"),emailEnabled:g("activity","email_enabled"),activityDigestEnabled:g("activity","activity_digest_enabled",!1),settingBatchtime:g("activity","setting_batchtime"),methods:g("activity","methods"),endpoint:""},getters:{checkedActivities(e){const i=(n,o)=>{const r=[];return o.email&&r.push({activityKey:n,method:"email",activity:o}),o.notification&&r.push({activityKey:n,method:"notification",activity:o}),r};return Object.values(e.activityGroups).map(n=>Object.entries(n.activities)).reduce((n,o)=>n.concat(o),[]).map(([n,o])=>i(n,o)).reduce((n,o)=>n.concat(o),[]).filter(({activity:n,method:o})=>n[o]).map(({activityKey:n,method:o})=>"".concat(n,"_").concat(o))}},mutations:{SET_METHOD_FOR_METHOD_AND_ACTIVITY(e,{groupKey:i,activityKey:n,methodKey:o,value:r}){const a=e.activityGroups[i].activities[n];K(a,o)&&(a[o]=r)},SET_ENDPOINT(e,{endpoint:i}){e.endpoint=i},SET_SETTING_BATCHTIME(e,{settingBatchtime:i}){e.settingBatchtime=i},TOGGLE_ACTIVITY_DIGEST(e,{activityDigestEnabled:i}){e.activityDigestEnabled=i},TOGGLE_EMAIL_ENABLED(e,{emailEnabled:i}){e.emailEnabled=i}},actions:{setEndpoint({commit:e},{endpoint:i}){e("SET_ENDPOINT",{endpoint:i})},toggleMethodForMethodAndActivity({commit:e,state:i,dispatch:n},{groupKey:o,activityKey:r,methodKey:a}){const s=i.activityGroups[o].activities[r],c=N([s],a);e("SET_METHOD_FOR_METHOD_AND_ACTIVITY",{groupKey:o,activityKey:r,methodKey:a,value:c}),n("saveSettings")},toggleMethodForGroup({commit:e,state:i,dispatch:n},{groupKey:o,methodKey:r}){const a=Object.values(i.activityGroups[o].activities),s=N(a,r);for(const c in i.activityGroups[o].activities)e("SET_METHOD_FOR_METHOD_AND_ACTIVITY",{groupKey:o,activityKey:c,methodKey:r,value:s});n("saveSettings")},toggleMethodsForActivity({commit:e,state:i,dispatch:n},{groupKey:o,activityKey:r}){const a=i.activityGroups[o].activities[r],s=a.methods.map(c=>N([a],c)).includes(!0);for(const c of a.methods)e("SET_METHOD_FOR_METHOD_AND_ACTIVITY",{groupKey:o,activityKey:r,methodKey:c,value:s});n("saveSettings")},setSettingBatchtime({commit:e,dispatch:i},{settingBatchtime:n}){e("SET_SETTING_BATCHTIME",{settingBatchtime:n}),i("saveSettings")},toggleActivityDigestEnabled({commit:e,dispatch:i},{activityDigestEnabled:n}){e("TOGGLE_ACTIVITY_DIGEST",{activityDigestEnabled:n}),i("saveSettings")},toggleEmailEnabled({commit:e},{emailEnabled:i}){e("TOGGLE_EMAIL_ENABLED",{emailEnabled:i});try{OCP.AppConfig.setValue("activity","enable_email",i?"yes":"no"),F(G("activity","Your settings have been updated."))}catch(n){P(G("activity","Unable to save the settings")),U.error("An error occurred while saving the activity settings",n)}},async saveSettings({state:e,getters:i}){try{const n=new FormData;i.checkedActivities.forEach(r=>{n.append(r,"1")}),n.append("notify_setting_batchtime","".concat(e.settingBatchtime)),n.append("activity_digest","".concat(e.activityDigestEnabled?1:0));const o=await ct.post(lt(e.endpoint),n);F(o.data.data.message)}catch(n){P(G("activity","Unable to save the settings")),U.error("An error occurred while saving the activity settings",n)}}}});export{ve as A,me as N,B as a,nt as i,L as m,ge as s}; +import{r as rt,x as at,n as Q,a as st,b as C,l as g,e as ct,_ as lt}from"./NcCheckboxRadioSwitch-CvMEEI9x-CRJk_h3R.chunk.mjs";import{g as z,V as ut,t as G}from"./index-CpOKyUsr.chunk.mjs";import{a as F,s as P}from"./NcNoteCard-CImn6F9p-CWGSZ4YZ.chunk.mjs";import{l as U}from"./logger-DdfSSqJ9.chunk.mjs";function dt(e){var i=Number(e.version.split(".")[0]);if(i>=2)e.mixin({beforeCreate:o});else{var n=e.prototype._init;e.prototype._init=function(r){r===void 0&&(r={}),r.init=r.init?[o].concat(r.init):o,n.call(this,r)}}function o(){var r=this.$options;r.store?this.$store=typeof r.store=="function"?r.store():r.store:r.parent&&r.parent.$store&&(this.$store=r.parent.$store)}}var ht=typeof window<"u"?window:typeof z<"u"?z:{},y=ht.__VUE_DEVTOOLS_GLOBAL_HOOK__;function pt(e){y&&(e._devtoolHook=y,y.emit("vuex:init",e),y.on("vuex:travel-to-state",function(i){e.replaceState(i)}),e.subscribe(function(i,n){y.emit("vuex:mutation",i,n)},{prepend:!0}),e.subscribeAction(function(i,n){y.emit("vuex:action",i,n)},{prepend:!0}))}function ft(e,i){return e.filter(i)[0]}function D(e,i){if(i===void 0&&(i=[]),e===null||typeof e!="object")return e;var n=ft(i,function(r){return r.original===e});if(n)return n.copy;var o=Array.isArray(e)?[]:{};return i.push({original:e,copy:o}),Object.keys(e).forEach(function(r){o[r]=D(e[r],i)}),o}function b(e,i){Object.keys(e).forEach(function(n){return i(e[n],n)})}function X(e){return e!==null&&typeof e=="object"}function mt(e){return e&&typeof e.then=="function"}function vt(e,i){return function(){return e(i)}}var v=function(e,i){this.runtime=i,this._children=Object.create(null),this._rawModule=e;var n=e.state;this.state=(typeof n=="function"?n():n)||{}},R={namespaced:{configurable:!0}};R.namespaced.get=function(){return!!this._rawModule.namespaced},v.prototype.addChild=function(e,i){this._children[e]=i},v.prototype.removeChild=function(e){delete this._children[e]},v.prototype.getChild=function(e){return this._children[e]},v.prototype.hasChild=function(e){return e in this._children},v.prototype.update=function(e){this._rawModule.namespaced=e.namespaced,e.actions&&(this._rawModule.actions=e.actions),e.mutations&&(this._rawModule.mutations=e.mutations),e.getters&&(this._rawModule.getters=e.getters)},v.prototype.forEachChild=function(e){b(this._children,e)},v.prototype.forEachGetter=function(e){this._rawModule.getters&&b(this._rawModule.getters,e)},v.prototype.forEachAction=function(e){this._rawModule.actions&&b(this._rawModule.actions,e)},v.prototype.forEachMutation=function(e){this._rawModule.mutations&&b(this._rawModule.mutations,e)},Object.defineProperties(v.prototype,R);var _=function(e){this.register([],e,!1)};_.prototype.get=function(e){return e.reduce(function(i,n){return i.getChild(n)},this.root)},_.prototype.getNamespace=function(e){var i=this.root;return e.reduce(function(n,o){return i=i.getChild(o),n+(i.namespaced?o+"/":"")},"")},_.prototype.update=function(e){tt([],this.root,e)},_.prototype.register=function(e,i,n){var o=this;n===void 0&&(n=!0);var r=new v(i,n);if(e.length===0)this.root=r;else{var a=this.get(e.slice(0,-1));a.addChild(e[e.length-1],r)}i.modules&&b(i.modules,function(s,c){o.register(e.concat(c),s,n)})},_.prototype.unregister=function(e){var i=this.get(e.slice(0,-1)),n=e[e.length-1],o=i.getChild(n);o&&o.runtime&&i.removeChild(n)},_.prototype.isRegistered=function(e){var i=this.get(e.slice(0,-1)),n=e[e.length-1];return i?i.hasChild(n):!1};function tt(e,i,n){if(i.update(n),n.modules)for(var o in n.modules){if(!i.getChild(o))return;tt(e.concat(o),i.getChild(o),n.modules[o])}}var f,m=function(e){var i=this;e===void 0&&(e={}),!f&&typeof window<"u"&&window.Vue&&et(window.Vue);var n=e.plugins;n===void 0&&(n=[]);var o=e.strict;o===void 0&&(o=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new _(e),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new f,this._makeLocalGettersCache=Object.create(null);var r=this,a=this,s=a.dispatch,c=a.commit;this.dispatch=function(d,h){return s.call(r,d,h)},this.commit=function(d,h,p){return c.call(r,d,h,p)},this.strict=o;var u=this._modules.root.state;M(this,u,[],this._modules.root),I(this,u),n.forEach(function(d){return d(i)});var l=e.devtools!==void 0?e.devtools:f.config.devtools;l&&pt(this)},H={state:{configurable:!0}};H.state.get=function(){return this._vm._data.$$state},H.state.set=function(e){},m.prototype.commit=function(e,i,n){var o=this,r=A(e,i,n),a=r.type,s=r.payload,c={type:a,payload:s},u=this._mutations[a];u&&(this._withCommit(function(){u.forEach(function(l){l(s)})}),this._subscribers.slice().forEach(function(l){return l(c,o.state)}))},m.prototype.dispatch=function(e,i){var n=this,o=A(e,i),r=o.type,a=o.payload,s={type:r,payload:a},c=this._actions[r];if(c){try{this._actionSubscribers.slice().filter(function(l){return l.before}).forEach(function(l){return l.before(s,n.state)})}catch{}var u=c.length>1?Promise.all(c.map(function(l){return l(a)})):c[0](a);return new Promise(function(l,d){u.then(function(h){try{n._actionSubscribers.filter(function(p){return p.after}).forEach(function(p){return p.after(s,n.state)})}catch{}l(h)},function(h){try{n._actionSubscribers.filter(function(p){return p.error}).forEach(function(p){return p.error(s,n.state,h)})}catch{}d(h)})})}},m.prototype.subscribe=function(e,i){return Y(e,this._subscribers,i)},m.prototype.subscribeAction=function(e,i){var n=typeof e=="function"?{before:e}:e;return Y(n,this._actionSubscribers,i)},m.prototype.watch=function(e,i,n){var o=this;return this._watcherVM.$watch(function(){return e(o.state,o.getters)},i,n)},m.prototype.replaceState=function(e){var i=this;this._withCommit(function(){i._vm._data.$$state=e})},m.prototype.registerModule=function(e,i,n){n===void 0&&(n={}),typeof e=="string"&&(e=[e]),this._modules.register(e,i),M(this,this.state,e,this._modules.get(e),n.preserveState),I(this,this.state)},m.prototype.unregisterModule=function(e){var i=this;typeof e=="string"&&(e=[e]),this._modules.unregister(e),this._withCommit(function(){var n=V(i.state,e.slice(0,-1));f.delete(n,e[e.length-1])}),Z(this)},m.prototype.hasModule=function(e){return typeof e=="string"&&(e=[e]),this._modules.isRegistered(e)},m.prototype.hotUpdate=function(e){this._modules.update(e),Z(this,!0)},m.prototype._withCommit=function(e){var i=this._committing;this._committing=!0,e(),this._committing=i},Object.defineProperties(m.prototype,H);function Y(e,i,n){return i.indexOf(e)<0&&(n&&n.prepend?i.unshift(e):i.push(e)),function(){var o=i.indexOf(e);o>-1&&i.splice(o,1)}}function Z(e,i){e._actions=Object.create(null),e._mutations=Object.create(null),e._wrappedGetters=Object.create(null),e._modulesNamespaceMap=Object.create(null);var n=e.state;M(e,n,[],e._modules.root,!0),I(e,n,i)}function I(e,i,n){var o=e._vm;e.getters={},e._makeLocalGettersCache=Object.create(null);var r=e._wrappedGetters,a={};b(r,function(c,u){a[u]=vt(c,e),Object.defineProperty(e.getters,u,{get:function(){return e._vm[u]},enumerable:!0})});var s=f.config.silent;f.config.silent=!0,e._vm=new f({data:{$$state:i},computed:a}),f.config.silent=s,e.strict&&Et(e),o&&(n&&e._withCommit(function(){o._data.$$state=null}),f.nextTick(function(){return o.$destroy()}))}function M(e,i,n,o,r){var a=!n.length,s=e._modules.getNamespace(n);if(o.namespaced&&(e._modulesNamespaceMap[s],e._modulesNamespaceMap[s]=o),!a&&!r){var c=V(i,n.slice(0,-1)),u=n[n.length-1];e._withCommit(function(){f.set(c,u,o.state)})}var l=o.context=gt(e,s,n);o.forEachMutation(function(d,h){var p=s+h;yt(e,p,d,l)}),o.forEachAction(function(d,h){var p=d.root?h:s+h,E=d.handler||d;bt(e,p,E,l)}),o.forEachGetter(function(d,h){var p=s+h;Ct(e,p,d,l)}),o.forEachChild(function(d,h){M(e,i,n.concat(h),d,r)})}function gt(e,i,n){var o=i==="",r={dispatch:o?e.dispatch:function(a,s,c){var u=A(a,s,c),l=u.payload,d=u.options,h=u.type;return(!d||!d.root)&&(h=i+h),e.dispatch(h,l)},commit:o?e.commit:function(a,s,c){var u=A(a,s,c),l=u.payload,d=u.options,h=u.type;(!d||!d.root)&&(h=i+h),e.commit(h,l,d)}};return Object.defineProperties(r,{getters:{get:o?function(){return e.getters}:function(){return _t(e,i)}},state:{get:function(){return V(e.state,n)}}}),r}function _t(e,i){if(!e._makeLocalGettersCache[i]){var n={},o=i.length;Object.keys(e.getters).forEach(function(r){if(r.slice(0,o)===i){var a=r.slice(o);Object.defineProperty(n,a,{get:function(){return e.getters[r]},enumerable:!0})}}),e._makeLocalGettersCache[i]=n}return e._makeLocalGettersCache[i]}function yt(e,i,n,o){var r=e._mutations[i]||(e._mutations[i]=[]);r.push(function(a){n.call(e,o.state,a)})}function bt(e,i,n,o){var r=e._actions[i]||(e._actions[i]=[]);r.push(function(a){var s=n.call(e,{dispatch:o.dispatch,commit:o.commit,getters:o.getters,state:o.state,rootGetters:e.getters,rootState:e.state},a);return mt(s)||(s=Promise.resolve(s)),e._devtoolHook?s.catch(function(c){throw e._devtoolHook.emit("vuex:error",c),c}):s})}function Ct(e,i,n,o){e._wrappedGetters[i]||(e._wrappedGetters[i]=function(r){return n(o.state,o.getters,r.state,r.getters)})}function Et(e){e._vm.$watch(function(){return this._data.$$state},function(){},{deep:!0,sync:!0})}function V(e,i){return i.reduce(function(n,o){return n[o]},e)}function A(e,i,n){return X(e)&&e.type&&(n=i,i=e,e=e.type),{type:e,payload:i,options:n}}function et(e){f&&e===f||(f=e,dt(f))}var L=x(function(e,i){var n={};return S(i).forEach(function(o){var r=o.key,a=o.val;n[r]=function(){var s=this.$store.state,c=this.$store.getters;if(e){var u=T(this.$store,"mapState",e);if(!u)return;s=u.context.state,c=u.context.getters}return typeof a=="function"?a.call(this,s,c):s[a]},n[r].vuex=!0}),n}),it=x(function(e,i){var n={};return S(i).forEach(function(o){var r=o.key,a=o.val;n[r]=function(){for(var s=[],c=arguments.length;c--;)s[c]=arguments[c];var u=this.$store.commit;if(e){var l=T(this.$store,"mapMutations",e);if(!l)return;u=l.context.commit}return typeof a=="function"?a.apply(this,[u].concat(s)):u.apply(this.$store,[a].concat(s))}}),n}),j=x(function(e,i){var n={};return S(i).forEach(function(o){var r=o.key,a=o.val;a=e+a,n[r]=function(){if(!(e&&!T(this.$store,"mapGetters",e)))return this.$store.getters[a]},n[r].vuex=!0}),n}),B=x(function(e,i){var n={};return S(i).forEach(function(o){var r=o.key,a=o.val;n[r]=function(){for(var s=[],c=arguments.length;c--;)s[c]=arguments[c];var u=this.$store.dispatch;if(e){var l=T(this.$store,"mapActions",e);if(!l)return;u=l.context.dispatch}return typeof a=="function"?a.apply(this,[u].concat(s)):u.apply(this.$store,[a].concat(s))}}),n}),kt=function(e){return{mapState:L.bind(null,e),mapGetters:j.bind(null,e),mapMutations:it.bind(null,e),mapActions:B.bind(null,e)}};function S(e){return wt(e)?Array.isArray(e)?e.map(function(i){return{key:i,val:i}}):Object.keys(e).map(function(i){return{key:i,val:e[i]}}):[]}function wt(e){return Array.isArray(e)||X(e)}function x(e){return function(i,n){return typeof i!="string"?(n=i,i=""):i.charAt(i.length-1)!=="/"&&(i+="/"),e(i,n)}}function T(e,i,n){var o=e._modulesNamespaceMap[n];return o}function At(e){e===void 0&&(e={});var i=e.collapsed;i===void 0&&(i=!0);var n=e.filter;n===void 0&&(n=function(d,h,p){return!0});var o=e.transformer;o===void 0&&(o=function(d){return d});var r=e.mutationTransformer;r===void 0&&(r=function(d){return d});var a=e.actionFilter;a===void 0&&(a=function(d,h){return!0});var s=e.actionTransformer;s===void 0&&(s=function(d){return d});var c=e.logMutations;c===void 0&&(c=!0);var u=e.logActions;u===void 0&&(u=!0);var l=e.logger;return l===void 0&&(l=console),function(d){var h=D(d.state);typeof l>"u"||(c&&d.subscribe(function(p,E){var k=D(E);if(n(p,h,k)){var O=J(),$=r(p),ot="mutation "+p.type+O;W(l,ot,i),l.log("%c prev state","color: #9E9E9E; font-weight: bold",o(h)),l.log("%c mutation","color: #03A9F4; font-weight: bold",$),l.log("%c next state","color: #4CAF50; font-weight: bold",o(k)),q(l)}h=k}),u&&d.subscribeAction(function(p,E){if(a(p,E)){var k=J(),O=s(p),$="action "+p.type+k;W(l,$,i),l.log("%c action","color: #03A9F4; font-weight: bold",O),q(l)}}))}}function W(e,i,n){var o=n?e.groupCollapsed:e.group;try{o.call(e,i)}catch{e.log(i)}}function q(e){try{e.groupEnd()}catch{e.log("—— log end ——")}}function J(){var e=new Date;return" @ "+w(e.getHours(),2)+":"+w(e.getMinutes(),2)+":"+w(e.getSeconds(),2)+"."+w(e.getMilliseconds(),3)}function Mt(e,i){return new Array(i+1).join(e)}function w(e,i){return Mt("0",i-e.toString().length)+e}var nt={Store:m,install:et,version:"3.6.2",mapState:L,mapMutations:it,mapGetters:j,mapActions:B,createNamespacedHelpers:kt,createLogger:At};rt(at);const St={name:"HelpCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var xt=function(){var e=this,i=e._self._c;return i("span",e._b({staticClass:"material-design-icon help-circle-icon",attrs:{"aria-hidden":e.title?null:!0,"aria-label":e.title,role:"img"},on:{click:function(n){return e.$emit("click",n)}}},"span",e.$attrs,!1),[i("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[i("path",{attrs:{d:"M15.07,11.25L14.17,12.17C13.45,12.89 13,13.5 13,15H11V14.5C11,13.39 11.45,12.39 12.17,11.67L13.41,10.41C13.78,10.05 14,9.55 14,9C14,7.89 13.1,7 12,7A2,2 0 0,0 10,9H8A4,4 0 0,1 12,5A4,4 0 0,1 16,9C16,9.88 15.64,10.67 15.07,11.25M13,19H11V17H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z"}},[e.title?i("title",[e._v(e._s(e.title))]):e._e()])])])},Tt=[],Ot=Q(St,xt,Tt,!1,null,null);const $t=Ot.exports,Gt={name:"NcSettingsSection",components:{HelpCircle:$t},props:{name:{type:String,required:!0},description:{type:String,default:""},docUrl:{type:String,default:""},limitWidth:{type:Boolean,default:!0}},data(){return{docNameTranslated:st("External documentation for {name}",{name:this.name})}},computed:{forceLimitWidth(){var e,i;if(this.limitWidth)return!0;const[n]=(i=(e=window._oc_config)==null?void 0:e.version.split(".",2))!=null?i:[];return n&&Number.parseInt(n)>=30},hasDescription(){return this.description.length>0},hasDocUrl(){return this.docUrl.length>0}}};var Ht=function(){var e=this,i=e._self._c;return i("div",{staticClass:"settings-section",class:{"settings-section--limit-width":e.forceLimitWidth}},[i("h2",{staticClass:"settings-section__name"},[e._v(" "+e._s(e.name)+" "),e.hasDocUrl?i("a",{staticClass:"settings-section__info",attrs:{href:e.docUrl,title:e.docNameTranslated,"aria-label":e.docNameTranslated,target:"_blank",rel:"noreferrer nofollow"}},[i("HelpCircle",{attrs:{size:20}})],1):e._e()]),e.hasDescription?i("p",{staticClass:"settings-section__desc"},[e._v(" "+e._s(e.description)+" ")]):e._e(),e._t("default")],2)},Nt=[],Dt=Q(Gt,Ht,Nt,!1,null,"0974f50a");const me=Dt.exports,It={name:"CheckboxBlankOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Vt=function(){var e=this,i=e._self._c;return i("span",e._b({staticClass:"material-design-icon checkbox-blank-outline-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(n){return e.$emit("click",n)}}},"span",e.$attrs,!1),[i("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[i("path",{attrs:{d:"M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3M19,5V19H5V5H19Z"}},[e.title?i("title",[e._v(e._s(e.title))]):e._e()])])])},Lt=[],jt=C(It,Vt,Lt,!1,null,null);const Bt=jt.exports,Kt={name:"CheckboxBlankIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var zt=function(){var e=this,i=e._self._c;return i("span",e._b({staticClass:"material-design-icon checkbox-blank-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(n){return e.$emit("click",n)}}},"span",e.$attrs,!1),[i("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[i("path",{attrs:{d:"M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z"}},[e.title?i("title",[e._v(e._s(e.title))]):e._e()])])])},Ft=[],Pt=C(Kt,zt,Ft,!1,null,null);const Ut=Pt.exports,Rt={name:"MinusBoxIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Yt=function(){var e=this,i=e._self._c;return i("span",e._b({staticClass:"material-design-icon minus-box-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(n){return e.$emit("click",n)}}},"span",e.$attrs,!1),[i("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[i("path",{attrs:{d:"M17,13H7V11H17M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z"}},[e.title?i("title",[e._v(e._s(e.title))]):e._e()])])])},Zt=[],Wt=C(Rt,Yt,Zt,!1,null,null);const qt=Wt.exports,Jt={name:"CheckboxMarkedIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Qt=function(){var e=this,i=e._self._c;return i("span",e._b({staticClass:"material-design-icon checkbox-marked-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(n){return e.$emit("click",n)}}},"span",e.$attrs,!1),[i("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[i("path",{attrs:{d:"M10,17L5,12L6.41,10.58L10,14.17L17.59,6.58L19,8M19,3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3Z"}},[e.title?i("title",[e._v(e._s(e.title))]):e._e()])])])},Xt=[],te=C(Jt,Qt,Xt,!1,null,null);const ee=te.exports,ie={name:"Checkbox",props:{id:{type:String,required:!0,validator:e=>e.trim()!==""},checked:{type:[Boolean,Array,String],default:!1},value:{type:String,default:null},disabled:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},wrapperElement:{type:String,default:"span"},name:{type:String,default:null}},computed:{size(){return 24},cssVars(){return{"--icon-size":this.size+"px"}},isChecked(){return[...this.checked].indexOf(this.value)>-1},checkboxRadioIconElement(){return this.indeterminate?qt:this.disabled&&!this.isChecked?Ut:this.isChecked?ee:Bt}},methods:{onToggle(){if(this.disabled)return;if(typeof this.checked=="boolean"){this.$emit("update:checked",!this.isChecked);return}const e=this.getInputsSet().filter(i=>i.checked).map(i=>i.value);this.$emit("update:checked",e)},getInputsSet(){return[...document.getElementsByName(this.name)]}}};var ne=function(){var e=this,i=e._self._c;return i(e.wrapperElement,{tag:"element",staticClass:"checkbox-radio-switch checkbox-radio-switch-checkbox",class:{"checkbox-radio-switch--checked":e.isChecked,"checkbox-radio-switch--disabled":e.disabled,"checkbox-radio-switch--indeterminate":e.indeterminate},style:e.cssVars},[i("input",{staticClass:"checkbox-radio-switch__input",attrs:{id:e.id,disabled:e.disabled,indeterminate:e.indeterminate,name:e.name,type:"checkbox"},domProps:{checked:e.isChecked,value:e.value},on:{change:e.onToggle}}),i("label",{staticClass:"checkbox-radio-switch__label",attrs:{for:e.id}},[i(e.checkboxRadioIconElement,{tag:"component",staticClass:"checkbox-radio-switch__icon",attrs:{size:e.size,"aria-hidden":"true"}}),i("span",{staticClass:"sr-only"},[e._t("default")],2)],1)])},oe=[],re=C(ie,ne,oe,!1,null,"a72a40ed");const ae=re.exports;function K(e,i){return e.methods.includes(i)}function N(e,i){for(const n of e)if(K(n,i)&&!n[i])return!0;return!1}const se={name:"ActivityGrid",components:{Checkbox:ae},computed:{...j(["checkedActivities"]),...L(["methods","activityGroups","emailEnabled","isEmailSet","settingBatchtime"])},methods:{isActivityEnabled:K,...B(["toggleMethodForMethodAndActivity","toggleMethodForGroup"]),actionName(e){return e==="email"?t("activity","Send email"):t("activity","Send push notification")}}};var ce=function(){var e=this,i=e._self._c;return i("table",{staticClass:"grid activitysettings"},[i("caption",{staticClass:"sr-only"},[e._v(" "+e._s(e.t("activity","Activity notification configuration"))+" ")]),e._l(e.activityGroups,function(n,o){return i("tbody",{key:o},[i("tr",{staticClass:"group-header"},[i("th",{staticClass:"group-header-section"},[e._v(" "+e._s(n.name)+" ")]),e._l(e.methods,function(r,a){return i("th",{key:a,staticClass:"activity_select_group"},[e._v(" "+e._s(r)+" ")])})],2),e._l(n.activities,function(r,a){return i("tr",{key:a},[i("th",{attrs:{scope:"row"}},[i("span",{domProps:{innerHTML:e._s(r.desc)}})]),e._l(e.methods,function(s,c){return i("td",{key:c},[i("Checkbox",{attrs:{id:"".concat(a,"_").concat(c),disabled:!e.isActivityEnabled(r,c),checked:e.checkedActivities,value:"".concat(a,"_").concat(c)},on:{"update:checked":function(u){return e.toggleMethodForMethodAndActivity({groupKey:o,activityKey:a,methodKey:c})}}},[e._v(" "+e._s(e.actionName(c))+" ")])],1)})],2)})],2)})],2)},le=[],ue=C(se,ce,le,!1,null,"85173cd9");const ve=ue.exports;ut.use(nt);const ge=new nt.Store({strict:!0,state:{setting:g("activity","setting"),activityGroups:g("activity","activity_groups"),isEmailSet:g("activity","is_email_set"),emailEnabled:g("activity","email_enabled"),activityDigestEnabled:g("activity","activity_digest_enabled",!1),settingBatchtime:g("activity","setting_batchtime"),methods:g("activity","methods"),endpoint:""},getters:{checkedActivities(e){const i=(n,o)=>{const r=[];return o.email&&r.push({activityKey:n,method:"email",activity:o}),o.notification&&r.push({activityKey:n,method:"notification",activity:o}),r};return Object.values(e.activityGroups).map(n=>Object.entries(n.activities)).reduce((n,o)=>n.concat(o),[]).map(([n,o])=>i(n,o)).reduce((n,o)=>n.concat(o),[]).filter(({activity:n,method:o})=>n[o]).map(({activityKey:n,method:o})=>"".concat(n,"_").concat(o))}},mutations:{SET_METHOD_FOR_METHOD_AND_ACTIVITY(e,{groupKey:i,activityKey:n,methodKey:o,value:r}){const a=e.activityGroups[i].activities[n];K(a,o)&&(a[o]=r)},SET_ENDPOINT(e,{endpoint:i}){e.endpoint=i},SET_SETTING_BATCHTIME(e,{settingBatchtime:i}){e.settingBatchtime=i},TOGGLE_ACTIVITY_DIGEST(e,{activityDigestEnabled:i}){e.activityDigestEnabled=i},TOGGLE_EMAIL_ENABLED(e,{emailEnabled:i}){e.emailEnabled=i}},actions:{setEndpoint({commit:e},{endpoint:i}){e("SET_ENDPOINT",{endpoint:i})},toggleMethodForMethodAndActivity({commit:e,state:i,dispatch:n},{groupKey:o,activityKey:r,methodKey:a}){const s=i.activityGroups[o].activities[r],c=N([s],a);e("SET_METHOD_FOR_METHOD_AND_ACTIVITY",{groupKey:o,activityKey:r,methodKey:a,value:c}),n("saveSettings")},toggleMethodForGroup({commit:e,state:i,dispatch:n},{groupKey:o,methodKey:r}){const a=Object.values(i.activityGroups[o].activities),s=N(a,r);for(const c in i.activityGroups[o].activities)e("SET_METHOD_FOR_METHOD_AND_ACTIVITY",{groupKey:o,activityKey:c,methodKey:r,value:s});n("saveSettings")},toggleMethodsForActivity({commit:e,state:i,dispatch:n},{groupKey:o,activityKey:r}){const a=i.activityGroups[o].activities[r],s=a.methods.map(c=>N([a],c)).includes(!0);for(const c of a.methods)e("SET_METHOD_FOR_METHOD_AND_ACTIVITY",{groupKey:o,activityKey:r,methodKey:c,value:s});n("saveSettings")},setSettingBatchtime({commit:e,dispatch:i},{settingBatchtime:n}){e("SET_SETTING_BATCHTIME",{settingBatchtime:n}),i("saveSettings")},toggleActivityDigestEnabled({commit:e,dispatch:i},{activityDigestEnabled:n}){e("TOGGLE_ACTIVITY_DIGEST",{activityDigestEnabled:n}),i("saveSettings")},toggleEmailEnabled({commit:e},{emailEnabled:i}){e("TOGGLE_EMAIL_ENABLED",{emailEnabled:i});try{OCP.AppConfig.setValue("activity","enable_email",i?"yes":"no"),F(G("activity","Your settings have been updated."))}catch(n){P(G("activity","Unable to save the settings")),U.error("An error occurred while saving the activity settings",n)}},async saveSettings({state:e,getters:i}){try{const n=new FormData;i.checkedActivities.forEach(r=>{n.append(r,"1")}),n.append("notify_setting_batchtime","".concat(e.settingBatchtime)),n.append("activity_digest","".concat(e.activityDigestEnabled?1:0));const o=await ct.post(lt(e.endpoint),n);F(o.data.data.message)}catch(n){P(G("activity","Unable to save the settings")),U.error("An error occurred while saving the activity settings",n)}}}});export{ve as A,me as N,B as a,nt as i,L as m,ge as s}; diff --git a/js/settings-store-FJFCqrJM.chunk.mjs.map b/js/settings-store-FJFCqrJM.chunk.mjs.map new file mode 100644 index 000000000..d509fe2a0 --- /dev/null +++ b/js/settings-store-FJFCqrJM.chunk.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"settings-store-FJFCqrJM.chunk.mjs","sources":["../node_modules/vuex/dist/vuex.esm.js","../node_modules/@nextcloud/vue/dist/chunks/NcSettingsSection-V9DkkSuI.mjs","../node_modules/vue-material-design-icons/CheckboxBlankOutline.vue","../node_modules/vue-material-design-icons/CheckboxBlank.vue","../node_modules/vue-material-design-icons/MinusBox.vue","../node_modules/vue-material-design-icons/CheckboxMarked.vue","../src/components/Checkbox.vue","../src/utils/settings.ts","../src/components/ActivityGrid.vue","../src/store/settings-store.js"],"sourcesContent":["/*!\n * vuex v3.6.2\n * (c) 2021 Evan You\n * @license MIT\n */\nfunction applyMixin (Vue) {\n var version = Number(Vue.version.split('.')[0]);\n\n if (version >= 2) {\n Vue.mixin({ beforeCreate: vuexInit });\n } else {\n // override init and inject vuex init procedure\n // for 1.x backwards compatibility.\n var _init = Vue.prototype._init;\n Vue.prototype._init = function (options) {\n if ( options === void 0 ) options = {};\n\n options.init = options.init\n ? [vuexInit].concat(options.init)\n : vuexInit;\n _init.call(this, options);\n };\n }\n\n /**\n * Vuex init hook, injected into each instances init hooks list.\n */\n\n function vuexInit () {\n var options = this.$options;\n // store injection\n if (options.store) {\n this.$store = typeof options.store === 'function'\n ? options.store()\n : options.store;\n } else if (options.parent && options.parent.$store) {\n this.$store = options.parent.$store;\n }\n }\n}\n\nvar target = typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\nvar devtoolHook = target.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\nfunction devtoolPlugin (store) {\n if (!devtoolHook) { return }\n\n store._devtoolHook = devtoolHook;\n\n devtoolHook.emit('vuex:init', store);\n\n devtoolHook.on('vuex:travel-to-state', function (targetState) {\n store.replaceState(targetState);\n });\n\n store.subscribe(function (mutation, state) {\n devtoolHook.emit('vuex:mutation', mutation, state);\n }, { prepend: true });\n\n store.subscribeAction(function (action, state) {\n devtoolHook.emit('vuex:action', action, state);\n }, { prepend: true });\n}\n\n/**\n * Get the first item that pass the test\n * by second argument function\n *\n * @param {Array} list\n * @param {Function} f\n * @return {*}\n */\nfunction find (list, f) {\n return list.filter(f)[0]\n}\n\n/**\n * Deep copy the given object considering circular structure.\n * This function caches all nested objects and its copies.\n * If it detects circular structure, use cached copy to avoid infinite loop.\n *\n * @param {*} obj\n * @param {Array} cache\n * @return {*}\n */\nfunction deepCopy (obj, cache) {\n if ( cache === void 0 ) cache = [];\n\n // just return if obj is immutable value\n if (obj === null || typeof obj !== 'object') {\n return obj\n }\n\n // if obj is hit, it is in circular structure\n var hit = find(cache, function (c) { return c.original === obj; });\n if (hit) {\n return hit.copy\n }\n\n var copy = Array.isArray(obj) ? [] : {};\n // put the copy into cache at first\n // because we want to refer it in recursive deepCopy\n cache.push({\n original: obj,\n copy: copy\n });\n\n Object.keys(obj).forEach(function (key) {\n copy[key] = deepCopy(obj[key], cache);\n });\n\n return copy\n}\n\n/**\n * forEach for object\n */\nfunction forEachValue (obj, fn) {\n Object.keys(obj).forEach(function (key) { return fn(obj[key], key); });\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isPromise (val) {\n return val && typeof val.then === 'function'\n}\n\nfunction assert (condition, msg) {\n if (!condition) { throw new Error((\"[vuex] \" + msg)) }\n}\n\nfunction partial (fn, arg) {\n return function () {\n return fn(arg)\n }\n}\n\n// Base data struct for store's module, package with some attribute and method\nvar Module = function Module (rawModule, runtime) {\n this.runtime = runtime;\n // Store some children item\n this._children = Object.create(null);\n // Store the origin module object which passed by programmer\n this._rawModule = rawModule;\n var rawState = rawModule.state;\n\n // Store the origin module's state\n this.state = (typeof rawState === 'function' ? rawState() : rawState) || {};\n};\n\nvar prototypeAccessors = { namespaced: { configurable: true } };\n\nprototypeAccessors.namespaced.get = function () {\n return !!this._rawModule.namespaced\n};\n\nModule.prototype.addChild = function addChild (key, module) {\n this._children[key] = module;\n};\n\nModule.prototype.removeChild = function removeChild (key) {\n delete this._children[key];\n};\n\nModule.prototype.getChild = function getChild (key) {\n return this._children[key]\n};\n\nModule.prototype.hasChild = function hasChild (key) {\n return key in this._children\n};\n\nModule.prototype.update = function update (rawModule) {\n this._rawModule.namespaced = rawModule.namespaced;\n if (rawModule.actions) {\n this._rawModule.actions = rawModule.actions;\n }\n if (rawModule.mutations) {\n this._rawModule.mutations = rawModule.mutations;\n }\n if (rawModule.getters) {\n this._rawModule.getters = rawModule.getters;\n }\n};\n\nModule.prototype.forEachChild = function forEachChild (fn) {\n forEachValue(this._children, fn);\n};\n\nModule.prototype.forEachGetter = function forEachGetter (fn) {\n if (this._rawModule.getters) {\n forEachValue(this._rawModule.getters, fn);\n }\n};\n\nModule.prototype.forEachAction = function forEachAction (fn) {\n if (this._rawModule.actions) {\n forEachValue(this._rawModule.actions, fn);\n }\n};\n\nModule.prototype.forEachMutation = function forEachMutation (fn) {\n if (this._rawModule.mutations) {\n forEachValue(this._rawModule.mutations, fn);\n }\n};\n\nObject.defineProperties( Module.prototype, prototypeAccessors );\n\nvar ModuleCollection = function ModuleCollection (rawRootModule) {\n // register root module (Vuex.Store options)\n this.register([], rawRootModule, false);\n};\n\nModuleCollection.prototype.get = function get (path) {\n return path.reduce(function (module, key) {\n return module.getChild(key)\n }, this.root)\n};\n\nModuleCollection.prototype.getNamespace = function getNamespace (path) {\n var module = this.root;\n return path.reduce(function (namespace, key) {\n module = module.getChild(key);\n return namespace + (module.namespaced ? key + '/' : '')\n }, '')\n};\n\nModuleCollection.prototype.update = function update$1 (rawRootModule) {\n update([], this.root, rawRootModule);\n};\n\nModuleCollection.prototype.register = function register (path, rawModule, runtime) {\n var this$1 = this;\n if ( runtime === void 0 ) runtime = true;\n\n if ((process.env.NODE_ENV !== 'production')) {\n assertRawModule(path, rawModule);\n }\n\n var newModule = new Module(rawModule, runtime);\n if (path.length === 0) {\n this.root = newModule;\n } else {\n var parent = this.get(path.slice(0, -1));\n parent.addChild(path[path.length - 1], newModule);\n }\n\n // register nested modules\n if (rawModule.modules) {\n forEachValue(rawModule.modules, function (rawChildModule, key) {\n this$1.register(path.concat(key), rawChildModule, runtime);\n });\n }\n};\n\nModuleCollection.prototype.unregister = function unregister (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n var child = parent.getChild(key);\n\n if (!child) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\n \"[vuex] trying to unregister module '\" + key + \"', which is \" +\n \"not registered\"\n );\n }\n return\n }\n\n if (!child.runtime) {\n return\n }\n\n parent.removeChild(key);\n};\n\nModuleCollection.prototype.isRegistered = function isRegistered (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n\n if (parent) {\n return parent.hasChild(key)\n }\n\n return false\n};\n\nfunction update (path, targetModule, newModule) {\n if ((process.env.NODE_ENV !== 'production')) {\n assertRawModule(path, newModule);\n }\n\n // update target module\n targetModule.update(newModule);\n\n // update nested modules\n if (newModule.modules) {\n for (var key in newModule.modules) {\n if (!targetModule.getChild(key)) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\n \"[vuex] trying to add a new module '\" + key + \"' on hot reloading, \" +\n 'manual reload is needed'\n );\n }\n return\n }\n update(\n path.concat(key),\n targetModule.getChild(key),\n newModule.modules[key]\n );\n }\n }\n}\n\nvar functionAssert = {\n assert: function (value) { return typeof value === 'function'; },\n expected: 'function'\n};\n\nvar objectAssert = {\n assert: function (value) { return typeof value === 'function' ||\n (typeof value === 'object' && typeof value.handler === 'function'); },\n expected: 'function or object with \"handler\" function'\n};\n\nvar assertTypes = {\n getters: functionAssert,\n mutations: functionAssert,\n actions: objectAssert\n};\n\nfunction assertRawModule (path, rawModule) {\n Object.keys(assertTypes).forEach(function (key) {\n if (!rawModule[key]) { return }\n\n var assertOptions = assertTypes[key];\n\n forEachValue(rawModule[key], function (value, type) {\n assert(\n assertOptions.assert(value),\n makeAssertionMessage(path, key, type, value, assertOptions.expected)\n );\n });\n });\n}\n\nfunction makeAssertionMessage (path, key, type, value, expected) {\n var buf = key + \" should be \" + expected + \" but \\\"\" + key + \".\" + type + \"\\\"\";\n if (path.length > 0) {\n buf += \" in module \\\"\" + (path.join('.')) + \"\\\"\";\n }\n buf += \" is \" + (JSON.stringify(value)) + \".\";\n return buf\n}\n\nvar Vue; // bind on install\n\nvar Store = function Store (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #731\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Vue, \"must call Vue.use(Vuex) before creating a store instance.\");\n assert(typeof Promise !== 'undefined', \"vuex requires a Promise polyfill in this browser.\");\n assert(this instanceof Store, \"store must be called with the new operator.\");\n }\n\n var plugins = options.plugins; if ( plugins === void 0 ) plugins = [];\n var strict = options.strict; if ( strict === void 0 ) strict = false;\n\n // store internal state\n this._committing = false;\n this._actions = Object.create(null);\n this._actionSubscribers = [];\n this._mutations = Object.create(null);\n this._wrappedGetters = Object.create(null);\n this._modules = new ModuleCollection(options);\n this._modulesNamespaceMap = Object.create(null);\n this._subscribers = [];\n this._watcherVM = new Vue();\n this._makeLocalGettersCache = Object.create(null);\n\n // bind commit and dispatch to self\n var store = this;\n var ref = this;\n var dispatch = ref.dispatch;\n var commit = ref.commit;\n this.dispatch = function boundDispatch (type, payload) {\n return dispatch.call(store, type, payload)\n };\n this.commit = function boundCommit (type, payload, options) {\n return commit.call(store, type, payload, options)\n };\n\n // strict mode\n this.strict = strict;\n\n var state = this._modules.root.state;\n\n // init root module.\n // this also recursively registers all sub-modules\n // and collects all module getters inside this._wrappedGetters\n installModule(this, state, [], this._modules.root);\n\n // initialize the store vm, which is responsible for the reactivity\n // (also registers _wrappedGetters as computed properties)\n resetStoreVM(this, state);\n\n // apply plugins\n plugins.forEach(function (plugin) { return plugin(this$1); });\n\n var useDevtools = options.devtools !== undefined ? options.devtools : Vue.config.devtools;\n if (useDevtools) {\n devtoolPlugin(this);\n }\n};\n\nvar prototypeAccessors$1 = { state: { configurable: true } };\n\nprototypeAccessors$1.state.get = function () {\n return this._vm._data.$$state\n};\n\nprototypeAccessors$1.state.set = function (v) {\n if ((process.env.NODE_ENV !== 'production')) {\n assert(false, \"use store.replaceState() to explicit replace store state.\");\n }\n};\n\nStore.prototype.commit = function commit (_type, _payload, _options) {\n var this$1 = this;\n\n // check object-style commit\n var ref = unifyObjectStyle(_type, _payload, _options);\n var type = ref.type;\n var payload = ref.payload;\n var options = ref.options;\n\n var mutation = { type: type, payload: payload };\n var entry = this._mutations[type];\n if (!entry) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] unknown mutation type: \" + type));\n }\n return\n }\n this._withCommit(function () {\n entry.forEach(function commitIterator (handler) {\n handler(payload);\n });\n });\n\n this._subscribers\n .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n .forEach(function (sub) { return sub(mutation, this$1.state); });\n\n if (\n (process.env.NODE_ENV !== 'production') &&\n options && options.silent\n ) {\n console.warn(\n \"[vuex] mutation type: \" + type + \". Silent option has been removed. \" +\n 'Use the filter functionality in the vue-devtools'\n );\n }\n};\n\nStore.prototype.dispatch = function dispatch (_type, _payload) {\n var this$1 = this;\n\n // check object-style dispatch\n var ref = unifyObjectStyle(_type, _payload);\n var type = ref.type;\n var payload = ref.payload;\n\n var action = { type: type, payload: payload };\n var entry = this._actions[type];\n if (!entry) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] unknown action type: \" + type));\n }\n return\n }\n\n try {\n this._actionSubscribers\n .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n .filter(function (sub) { return sub.before; })\n .forEach(function (sub) { return sub.before(action, this$1.state); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in before action subscribers: \");\n console.error(e);\n }\n }\n\n var result = entry.length > 1\n ? Promise.all(entry.map(function (handler) { return handler(payload); }))\n : entry[0](payload);\n\n return new Promise(function (resolve, reject) {\n result.then(function (res) {\n try {\n this$1._actionSubscribers\n .filter(function (sub) { return sub.after; })\n .forEach(function (sub) { return sub.after(action, this$1.state); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in after action subscribers: \");\n console.error(e);\n }\n }\n resolve(res);\n }, function (error) {\n try {\n this$1._actionSubscribers\n .filter(function (sub) { return sub.error; })\n .forEach(function (sub) { return sub.error(action, this$1.state, error); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in error action subscribers: \");\n console.error(e);\n }\n }\n reject(error);\n });\n })\n};\n\nStore.prototype.subscribe = function subscribe (fn, options) {\n return genericSubscribe(fn, this._subscribers, options)\n};\n\nStore.prototype.subscribeAction = function subscribeAction (fn, options) {\n var subs = typeof fn === 'function' ? { before: fn } : fn;\n return genericSubscribe(subs, this._actionSubscribers, options)\n};\n\nStore.prototype.watch = function watch (getter, cb, options) {\n var this$1 = this;\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(typeof getter === 'function', \"store.watch only accepts a function.\");\n }\n return this._watcherVM.$watch(function () { return getter(this$1.state, this$1.getters); }, cb, options)\n};\n\nStore.prototype.replaceState = function replaceState (state) {\n var this$1 = this;\n\n this._withCommit(function () {\n this$1._vm._data.$$state = state;\n });\n};\n\nStore.prototype.registerModule = function registerModule (path, rawModule, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n assert(path.length > 0, 'cannot register the root module by using registerModule.');\n }\n\n this._modules.register(path, rawModule);\n installModule(this, this.state, path, this._modules.get(path), options.preserveState);\n // reset store to update getters...\n resetStoreVM(this, this.state);\n};\n\nStore.prototype.unregisterModule = function unregisterModule (path) {\n var this$1 = this;\n\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n this._modules.unregister(path);\n this._withCommit(function () {\n var parentState = getNestedState(this$1.state, path.slice(0, -1));\n Vue.delete(parentState, path[path.length - 1]);\n });\n resetStore(this);\n};\n\nStore.prototype.hasModule = function hasModule (path) {\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n return this._modules.isRegistered(path)\n};\n\nStore.prototype.hotUpdate = function hotUpdate (newOptions) {\n this._modules.update(newOptions);\n resetStore(this, true);\n};\n\nStore.prototype._withCommit = function _withCommit (fn) {\n var committing = this._committing;\n this._committing = true;\n fn();\n this._committing = committing;\n};\n\nObject.defineProperties( Store.prototype, prototypeAccessors$1 );\n\nfunction genericSubscribe (fn, subs, options) {\n if (subs.indexOf(fn) < 0) {\n options && options.prepend\n ? subs.unshift(fn)\n : subs.push(fn);\n }\n return function () {\n var i = subs.indexOf(fn);\n if (i > -1) {\n subs.splice(i, 1);\n }\n }\n}\n\nfunction resetStore (store, hot) {\n store._actions = Object.create(null);\n store._mutations = Object.create(null);\n store._wrappedGetters = Object.create(null);\n store._modulesNamespaceMap = Object.create(null);\n var state = store.state;\n // init all modules\n installModule(store, state, [], store._modules.root, true);\n // reset vm\n resetStoreVM(store, state, hot);\n}\n\nfunction resetStoreVM (store, state, hot) {\n var oldVm = store._vm;\n\n // bind store public getters\n store.getters = {};\n // reset local getters cache\n store._makeLocalGettersCache = Object.create(null);\n var wrappedGetters = store._wrappedGetters;\n var computed = {};\n forEachValue(wrappedGetters, function (fn, key) {\n // use computed to leverage its lazy-caching mechanism\n // direct inline function use will lead to closure preserving oldVm.\n // using partial to return function with only arguments preserved in closure environment.\n computed[key] = partial(fn, store);\n Object.defineProperty(store.getters, key, {\n get: function () { return store._vm[key]; },\n enumerable: true // for local getters\n });\n });\n\n // use a Vue instance to store the state tree\n // suppress warnings just in case the user has added\n // some funky global mixins\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n store._vm = new Vue({\n data: {\n $$state: state\n },\n computed: computed\n });\n Vue.config.silent = silent;\n\n // enable strict mode for new vm\n if (store.strict) {\n enableStrictMode(store);\n }\n\n if (oldVm) {\n if (hot) {\n // dispatch changes in all subscribed watchers\n // to force getter re-evaluation for hot reloading.\n store._withCommit(function () {\n oldVm._data.$$state = null;\n });\n }\n Vue.nextTick(function () { return oldVm.$destroy(); });\n }\n}\n\nfunction installModule (store, rootState, path, module, hot) {\n var isRoot = !path.length;\n var namespace = store._modules.getNamespace(path);\n\n // register in namespace map\n if (module.namespaced) {\n if (store._modulesNamespaceMap[namespace] && (process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] duplicate namespace \" + namespace + \" for the namespaced module \" + (path.join('/'))));\n }\n store._modulesNamespaceMap[namespace] = module;\n }\n\n // set state\n if (!isRoot && !hot) {\n var parentState = getNestedState(rootState, path.slice(0, -1));\n var moduleName = path[path.length - 1];\n store._withCommit(function () {\n if ((process.env.NODE_ENV !== 'production')) {\n if (moduleName in parentState) {\n console.warn(\n (\"[vuex] state field \\\"\" + moduleName + \"\\\" was overridden by a module with the same name at \\\"\" + (path.join('.')) + \"\\\"\")\n );\n }\n }\n Vue.set(parentState, moduleName, module.state);\n });\n }\n\n var local = module.context = makeLocalContext(store, namespace, path);\n\n module.forEachMutation(function (mutation, key) {\n var namespacedType = namespace + key;\n registerMutation(store, namespacedType, mutation, local);\n });\n\n module.forEachAction(function (action, key) {\n var type = action.root ? key : namespace + key;\n var handler = action.handler || action;\n registerAction(store, type, handler, local);\n });\n\n module.forEachGetter(function (getter, key) {\n var namespacedType = namespace + key;\n registerGetter(store, namespacedType, getter, local);\n });\n\n module.forEachChild(function (child, key) {\n installModule(store, rootState, path.concat(key), child, hot);\n });\n}\n\n/**\n * make localized dispatch, commit, getters and state\n * if there is no namespace, just use root ones\n */\nfunction makeLocalContext (store, namespace, path) {\n var noNamespace = namespace === '';\n\n var local = {\n dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if ((process.env.NODE_ENV !== 'production') && !store._actions[type]) {\n console.error((\"[vuex] unknown local action type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n return store.dispatch(type, payload)\n },\n\n commit: noNamespace ? store.commit : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if ((process.env.NODE_ENV !== 'production') && !store._mutations[type]) {\n console.error((\"[vuex] unknown local mutation type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n store.commit(type, payload, options);\n }\n };\n\n // getters and state object must be gotten lazily\n // because they will be changed by vm update\n Object.defineProperties(local, {\n getters: {\n get: noNamespace\n ? function () { return store.getters; }\n : function () { return makeLocalGetters(store, namespace); }\n },\n state: {\n get: function () { return getNestedState(store.state, path); }\n }\n });\n\n return local\n}\n\nfunction makeLocalGetters (store, namespace) {\n if (!store._makeLocalGettersCache[namespace]) {\n var gettersProxy = {};\n var splitPos = namespace.length;\n Object.keys(store.getters).forEach(function (type) {\n // skip if the target getter is not match this namespace\n if (type.slice(0, splitPos) !== namespace) { return }\n\n // extract local getter type\n var localType = type.slice(splitPos);\n\n // Add a port to the getters proxy.\n // Define as getter property because\n // we do not want to evaluate the getters in this time.\n Object.defineProperty(gettersProxy, localType, {\n get: function () { return store.getters[type]; },\n enumerable: true\n });\n });\n store._makeLocalGettersCache[namespace] = gettersProxy;\n }\n\n return store._makeLocalGettersCache[namespace]\n}\n\nfunction registerMutation (store, type, handler, local) {\n var entry = store._mutations[type] || (store._mutations[type] = []);\n entry.push(function wrappedMutationHandler (payload) {\n handler.call(store, local.state, payload);\n });\n}\n\nfunction registerAction (store, type, handler, local) {\n var entry = store._actions[type] || (store._actions[type] = []);\n entry.push(function wrappedActionHandler (payload) {\n var res = handler.call(store, {\n dispatch: local.dispatch,\n commit: local.commit,\n getters: local.getters,\n state: local.state,\n rootGetters: store.getters,\n rootState: store.state\n }, payload);\n if (!isPromise(res)) {\n res = Promise.resolve(res);\n }\n if (store._devtoolHook) {\n return res.catch(function (err) {\n store._devtoolHook.emit('vuex:error', err);\n throw err\n })\n } else {\n return res\n }\n });\n}\n\nfunction registerGetter (store, type, rawGetter, local) {\n if (store._wrappedGetters[type]) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] duplicate getter key: \" + type));\n }\n return\n }\n store._wrappedGetters[type] = function wrappedGetter (store) {\n return rawGetter(\n local.state, // local state\n local.getters, // local getters\n store.state, // root state\n store.getters // root getters\n )\n };\n}\n\nfunction enableStrictMode (store) {\n store._vm.$watch(function () { return this._data.$$state }, function () {\n if ((process.env.NODE_ENV !== 'production')) {\n assert(store._committing, \"do not mutate vuex store state outside mutation handlers.\");\n }\n }, { deep: true, sync: true });\n}\n\nfunction getNestedState (state, path) {\n return path.reduce(function (state, key) { return state[key]; }, state)\n}\n\nfunction unifyObjectStyle (type, payload, options) {\n if (isObject(type) && type.type) {\n options = payload;\n payload = type;\n type = type.type;\n }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(typeof type === 'string', (\"expects string as the type, but found \" + (typeof type) + \".\"));\n }\n\n return { type: type, payload: payload, options: options }\n}\n\nfunction install (_Vue) {\n if (Vue && _Vue === Vue) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error(\n '[vuex] already installed. Vue.use(Vuex) should be called only once.'\n );\n }\n return\n }\n Vue = _Vue;\n applyMixin(Vue);\n}\n\n/**\n * Reduce the code which written in Vue.js for getting the state.\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} states # Object's item can be a function which accept state and getters for param, you can do something for state and getters in it.\n * @param {Object}\n */\nvar mapState = normalizeNamespace(function (namespace, states) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(states)) {\n console.error('[vuex] mapState: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(states).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedState () {\n var state = this.$store.state;\n var getters = this.$store.getters;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapState', namespace);\n if (!module) {\n return\n }\n state = module.context.state;\n getters = module.context.getters;\n }\n return typeof val === 'function'\n ? val.call(this, state, getters)\n : state[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for committing the mutation\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} mutations # Object's item can be a function which accept `commit` function as the first param, it can accept another params. You can commit mutation and do any other things in this function. specially, You need to pass anthor params from the mapped function.\n * @return {Object}\n */\nvar mapMutations = normalizeNamespace(function (namespace, mutations) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(mutations)) {\n console.error('[vuex] mapMutations: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(mutations).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedMutation () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n // Get the commit method from store\n var commit = this.$store.commit;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapMutations', namespace);\n if (!module) {\n return\n }\n commit = module.context.commit;\n }\n return typeof val === 'function'\n ? val.apply(this, [commit].concat(args))\n : commit.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for getting the getters\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} getters\n * @return {Object}\n */\nvar mapGetters = normalizeNamespace(function (namespace, getters) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(getters)) {\n console.error('[vuex] mapGetters: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(getters).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n // The namespace has been mutated by normalizeNamespace\n val = namespace + val;\n res[key] = function mappedGetter () {\n if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) {\n return\n }\n if ((process.env.NODE_ENV !== 'production') && !(val in this.$store.getters)) {\n console.error((\"[vuex] unknown getter: \" + val));\n return\n }\n return this.$store.getters[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for dispatch the action\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} actions # Object's item can be a function which accept `dispatch` function as the first param, it can accept anthor params. You can dispatch action and do any other things in this function. specially, You need to pass anthor params from the mapped function.\n * @return {Object}\n */\nvar mapActions = normalizeNamespace(function (namespace, actions) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(actions)) {\n console.error('[vuex] mapActions: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(actions).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedAction () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n // get dispatch function from store\n var dispatch = this.$store.dispatch;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapActions', namespace);\n if (!module) {\n return\n }\n dispatch = module.context.dispatch;\n }\n return typeof val === 'function'\n ? val.apply(this, [dispatch].concat(args))\n : dispatch.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\n/**\n * Rebinding namespace param for mapXXX function in special scoped, and return them by simple object\n * @param {String} namespace\n * @return {Object}\n */\nvar createNamespacedHelpers = function (namespace) { return ({\n mapState: mapState.bind(null, namespace),\n mapGetters: mapGetters.bind(null, namespace),\n mapMutations: mapMutations.bind(null, namespace),\n mapActions: mapActions.bind(null, namespace)\n}); };\n\n/**\n * Normalize the map\n * normalizeMap([1, 2, 3]) => [ { key: 1, val: 1 }, { key: 2, val: 2 }, { key: 3, val: 3 } ]\n * normalizeMap({a: 1, b: 2, c: 3}) => [ { key: 'a', val: 1 }, { key: 'b', val: 2 }, { key: 'c', val: 3 } ]\n * @param {Array|Object} map\n * @return {Object}\n */\nfunction normalizeMap (map) {\n if (!isValidMap(map)) {\n return []\n }\n return Array.isArray(map)\n ? map.map(function (key) { return ({ key: key, val: key }); })\n : Object.keys(map).map(function (key) { return ({ key: key, val: map[key] }); })\n}\n\n/**\n * Validate whether given map is valid or not\n * @param {*} map\n * @return {Boolean}\n */\nfunction isValidMap (map) {\n return Array.isArray(map) || isObject(map)\n}\n\n/**\n * Return a function expect two param contains namespace and map. it will normalize the namespace and then the param's function will handle the new namespace and the map.\n * @param {Function} fn\n * @return {Function}\n */\nfunction normalizeNamespace (fn) {\n return function (namespace, map) {\n if (typeof namespace !== 'string') {\n map = namespace;\n namespace = '';\n } else if (namespace.charAt(namespace.length - 1) !== '/') {\n namespace += '/';\n }\n return fn(namespace, map)\n }\n}\n\n/**\n * Search a special module from store by namespace. if module not exist, print error message.\n * @param {Object} store\n * @param {String} helper\n * @param {String} namespace\n * @return {Object}\n */\nfunction getModuleByNamespace (store, helper, namespace) {\n var module = store._modulesNamespaceMap[namespace];\n if ((process.env.NODE_ENV !== 'production') && !module) {\n console.error((\"[vuex] module namespace not found in \" + helper + \"(): \" + namespace));\n }\n return module\n}\n\n// Credits: borrowed code from fcomb/redux-logger\n\nfunction createLogger (ref) {\n if ( ref === void 0 ) ref = {};\n var collapsed = ref.collapsed; if ( collapsed === void 0 ) collapsed = true;\n var filter = ref.filter; if ( filter === void 0 ) filter = function (mutation, stateBefore, stateAfter) { return true; };\n var transformer = ref.transformer; if ( transformer === void 0 ) transformer = function (state) { return state; };\n var mutationTransformer = ref.mutationTransformer; if ( mutationTransformer === void 0 ) mutationTransformer = function (mut) { return mut; };\n var actionFilter = ref.actionFilter; if ( actionFilter === void 0 ) actionFilter = function (action, state) { return true; };\n var actionTransformer = ref.actionTransformer; if ( actionTransformer === void 0 ) actionTransformer = function (act) { return act; };\n var logMutations = ref.logMutations; if ( logMutations === void 0 ) logMutations = true;\n var logActions = ref.logActions; if ( logActions === void 0 ) logActions = true;\n var logger = ref.logger; if ( logger === void 0 ) logger = console;\n\n return function (store) {\n var prevState = deepCopy(store.state);\n\n if (typeof logger === 'undefined') {\n return\n }\n\n if (logMutations) {\n store.subscribe(function (mutation, state) {\n var nextState = deepCopy(state);\n\n if (filter(mutation, prevState, nextState)) {\n var formattedTime = getFormattedTime();\n var formattedMutation = mutationTransformer(mutation);\n var message = \"mutation \" + (mutation.type) + formattedTime;\n\n startMessage(logger, message, collapsed);\n logger.log('%c prev state', 'color: #9E9E9E; font-weight: bold', transformer(prevState));\n logger.log('%c mutation', 'color: #03A9F4; font-weight: bold', formattedMutation);\n logger.log('%c next state', 'color: #4CAF50; font-weight: bold', transformer(nextState));\n endMessage(logger);\n }\n\n prevState = nextState;\n });\n }\n\n if (logActions) {\n store.subscribeAction(function (action, state) {\n if (actionFilter(action, state)) {\n var formattedTime = getFormattedTime();\n var formattedAction = actionTransformer(action);\n var message = \"action \" + (action.type) + formattedTime;\n\n startMessage(logger, message, collapsed);\n logger.log('%c action', 'color: #03A9F4; font-weight: bold', formattedAction);\n endMessage(logger);\n }\n });\n }\n }\n}\n\nfunction startMessage (logger, message, collapsed) {\n var startMessage = collapsed\n ? logger.groupCollapsed\n : logger.group;\n\n // render\n try {\n startMessage.call(logger, message);\n } catch (e) {\n logger.log(message);\n }\n}\n\nfunction endMessage (logger) {\n try {\n logger.groupEnd();\n } catch (e) {\n logger.log('—— log end ——');\n }\n}\n\nfunction getFormattedTime () {\n var time = new Date();\n return (\" @ \" + (pad(time.getHours(), 2)) + \":\" + (pad(time.getMinutes(), 2)) + \":\" + (pad(time.getSeconds(), 2)) + \".\" + (pad(time.getMilliseconds(), 3)))\n}\n\nfunction repeat (str, times) {\n return (new Array(times + 1)).join(str)\n}\n\nfunction pad (num, maxLength) {\n return repeat('0', maxLength - num.toString().length) + num\n}\n\nvar index = {\n Store: Store,\n install: install,\n version: '3.6.2',\n mapState: mapState,\n mapMutations: mapMutations,\n mapGetters: mapGetters,\n mapActions: mapActions,\n createNamespacedHelpers: createNamespacedHelpers,\n createLogger: createLogger\n};\n\nexport default index;\nexport { Store, createLogger, createNamespacedHelpers, install, mapActions, mapGetters, mapMutations, mapState };\n","import '../assets/NcSettingsSection-CGaCS1X0.css';\nimport { r as register, u as t24, a as t } from \"./_l10n-JYjUKekn.mjs\";\nimport { n as normalizeComponent } from \"./_plugin-vue2_normalizer-DU4iP6Vu.mjs\";\nregister(t24);\nconst _sfc_main$1 = {\n name: \"HelpCircleIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon help-circle-icon\", attrs: { \"aria-hidden\": _vm.title ? null : true, \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"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\": \"M15.07,11.25L14.17,12.17C13.45,12.89 13,13.5 13,15H11V14.5C11,13.39 11.45,12.39 12.17,11.67L13.41,10.41C13.78,10.05 14,9.55 14,9C14,7.89 13.1,7 12,7A2,2 0 0,0 10,9H8A4,4 0 0,1 12,5A4,4 0 0,1 16,9C16,9.88 15.64,10.67 15.07,11.25M13,19H11V17H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst HelpCircle = __component__$1.exports;\nconst _sfc_main = {\n name: \"NcSettingsSection\",\n components: {\n HelpCircle\n },\n props: {\n name: {\n type: String,\n required: true\n },\n description: {\n type: String,\n default: \"\"\n },\n docUrl: {\n type: String,\n default: \"\"\n },\n /**\n * Limit the width of the setting's content\n *\n * Setting this to false allows unrestricted (width) settings content.\n * Note that the name and description have always a width limit.\n * @deprecated Will be removed with next version and will not be used on Nextcloud 30+ (always forced to true)\n */\n limitWidth: {\n type: Boolean,\n default: true\n }\n },\n data() {\n return {\n docNameTranslated: t(\"External documentation for {name}\", {\n name: this.name\n })\n };\n },\n computed: {\n forceLimitWidth() {\n var _a, _b;\n if (this.limitWidth) {\n return true;\n }\n const [major] = (_b = (_a = window._oc_config) == null ? void 0 : _a.version.split(\".\", 2)) != null ? _b : [];\n return major && Number.parseInt(major) >= 30;\n },\n hasDescription() {\n return this.description.length > 0;\n },\n hasDocUrl() {\n return this.docUrl.length > 0;\n }\n }\n};\nvar _sfc_render = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"settings-section\", class: { \"settings-section--limit-width\": _vm.forceLimitWidth } }, [_c(\"h2\", { staticClass: \"settings-section__name\" }, [_vm._v(\" \" + _vm._s(_vm.name) + \" \"), _vm.hasDocUrl ? _c(\"a\", { staticClass: \"settings-section__info\", attrs: { \"href\": _vm.docUrl, \"title\": _vm.docNameTranslated, \"aria-label\": _vm.docNameTranslated, \"target\": \"_blank\", \"rel\": \"noreferrer nofollow\" } }, [_c(\"HelpCircle\", { attrs: { \"size\": 20 } })], 1) : _vm._e()]), _vm.hasDescription ? _c(\"p\", { staticClass: \"settings-section__desc\" }, [_vm._v(\" \" + _vm._s(_vm.description) + \" \")]) : _vm._e(), _vm._t(\"default\")], 2);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"0974f50a\"\n);\nconst NcSettingsSection = __component__.exports;\nexport {\n NcSettingsSection as N\n};\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","\n \n \n \n {{ title }}\n \n \n \n\n\n","\n\n\n\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { IActivityType } from '../models/ActivitySettings.js'\n\n/**\n * Return wether the notification method can be checked for the activity\n *\n * @param activity - the concerned activity\n * @param methodKey - the concerned method\n * @return {boolean}\n */\nexport function isActivityEnabled(activity: IActivityType, methodKey: string) {\n\treturn activity.methods.includes(methodKey)\n}\n\n/**\n * @param activities - List of the activities to check\n * @param methodKey - the method key for which to verify the checked value\n * @return {boolean} Wether at least one input is checked for the given set of activities\n */\nexport function isOneInputUnChecked(activities: IActivityType[], methodKey: string) {\n\tfor (const activity of activities) {\n\t\tif (isActivityEnabled(activity, methodKey) && !activity[methodKey]) {\n\t\t\treturn true\n\t\t}\n\t}\n\n\treturn false\n}\n","\n\n\n\t\n\t\t\n\t\t\t{{ t('activity', 'Activity notification configuration') }}\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{ group.name }}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{ methodName }}\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{{ actionName(methodKey) }}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\n\n\n\n\n\n","/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport Vue from 'vue'\nimport Vuex from 'vuex'\nimport { translate as t } from '@nextcloud/l10n'\n\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\nimport { loadState } from '@nextcloud/initial-state'\nimport { showSuccess, showError } from '@nextcloud/dialogs'\n\nimport { isActivityEnabled, isOneInputUnChecked } from '../utils/settings.ts'\nimport logger from '../utils/logger.ts'\n\nVue.use(Vuex)\n\n/**\n * @typedef {object} SettingsState\n * @property {object} setting .\n * @property {Object} activityGroups Activity setting groups that should be shown (Files, Calendar, ...)\n * @property {boolean} isEmailSet Whether the user has a valid email address set\n * @property {boolean} emailEnabled Whether activity emails should be sent\n * @property {boolean} activityDigestEnabled Whether the daily digest should be sent\n * @property {0|1|2|3} settingBatchtime How to group the activity emails\n * @property {Array} methods Available methods for activity (push, mail, ...)\n * @property {string} endpoint API endpoint to talk to (user or admin settings)\n */\n\nconst store = new Vuex.Store({\n\tstrict: true,\n\t/** @type {SettingsState} */\n\tstate: {\n\t\tsetting: loadState('activity', 'setting'),\n\t\tactivityGroups: loadState('activity', 'activity_groups'),\n\t\tisEmailSet: loadState('activity', 'is_email_set'),\n\t\temailEnabled: loadState('activity', 'email_enabled'),\n\t\tactivityDigestEnabled: loadState('activity', 'activity_digest_enabled', false),\n\t\tsettingBatchtime: loadState('activity', 'setting_batchtime'),\n\t\tmethods: loadState('activity', 'methods'),\n\t\tendpoint: '',\n\t},\n\tgetters: {\n\t\t/**\n\t\t * Return an array of checked activities.\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @return {Array}\n\t\t */\n\t\tcheckedActivities(state) {\n\t\t\tconst methodsEnabled = (activityKey, activity) => {\n\t\t\t\tconst methods = []\n\t\t\t\tif (activity.email) {\n\t\t\t\t\tmethods.push({ activityKey, method: 'email', activity })\n\t\t\t\t}\n\t\t\t\tif (activity.notification) {\n\t\t\t\t\tmethods.push({ activityKey, method: 'notification', activity })\n\t\t\t\t}\n\t\t\t\treturn methods\n\t\t\t}\n\n\t\t\treturn Object.values(state.activityGroups)\n\t\t\t\t.map(group => Object.entries(group.activities)) // [[[activityKey, activity], ...], [[activityKey, activity], ...]]\n\t\t\t\t.reduce((acc, val) => acc.concat(val), []) // [[activityKey, activity], ...]\n\t\t\t\t.map(([activityKey, activity]) => methodsEnabled(activityKey, activity)) // [[{activityKey, method, activity}, ...], ...]\n\t\t\t\t.reduce((acc, val) => acc.concat(val), [])\n\t\t\t\t.filter(({ activity, method }) => activity[method])\n\t\t\t\t.map(({ activityKey, method }) => `${activityKey}_${method}`) // ['enabled_activity_key', ...]\n\t\t},\n\t},\n\tmutations: {\n\t\t/**\n\t\t * Update the 'enabled' state of a notification method for a given group/activity/method tuple\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.groupKey - The targeted group\n\t\t * @param {string} payload.activityKey - The targeted activity\n\t\t * @param {string} payload.methodKey - The targeted method\n\t\t * @param {string} payload.value - The value to set\n\t\t */\n\t\tSET_METHOD_FOR_METHOD_AND_ACTIVITY(state, { groupKey, activityKey, methodKey, value }) {\n\t\t\tconst group = state.activityGroups[groupKey]\n\t\t\tconst activity = group.activities[activityKey]\n\n\t\t\tif (isActivityEnabled(activity, methodKey)) {\n\t\t\t\tactivity[methodKey] = value\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Set the endpoint used to save the settings.\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.endpoint - Where to POST the saveSettings request.\n\t\t */\n\t\tSET_ENDPOINT(state, { endpoint }) {\n\t\t\tstate.endpoint = endpoint\n\t\t},\n\t\t/**\n\t\t * Set the batch time.\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @param {object} payload - The payload.\n\t\t * @param {0|1|2|3} payload.settingBatchtime - The selected batch time.\n\t\t */\n\t\tSET_SETTING_BATCHTIME(state, { settingBatchtime }) {\n\t\t\tstate.settingBatchtime = settingBatchtime\n\t\t},\n\t\t/**\n\t\t * Toggle activity digest.\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @param {object} payload - The payload.\n\t\t * @param {boolean} payload.activityDigestEnabled - Enabled status of the activity digest.\n\t\t */\n\t\tTOGGLE_ACTIVITY_DIGEST(state, { activityDigestEnabled }) {\n\t\t\tstate.activityDigestEnabled = activityDigestEnabled\n\t\t},\n\t\t/**\n\t\t * Toggle the availability of mail notifications\n\t\t *\n\t\t * @param {SettingsState} state - The current state.\n\t\t * @param {object} payload - The payload.\n\t\t * @param {boolean} payload.emailEnabled - Enabled status of the email notifications.\n\t\t */\n\t\tTOGGLE_EMAIL_ENABLED(state, { emailEnabled }) {\n\t\t\tstate.emailEnabled = emailEnabled\n\t\t},\n\t},\n\tactions: {\n\t\t/**\n\t\t * Set the endpoint used to save the settings.\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.endpoint - Where to POST the saveSettings request.\n\t\t */\n\t\tsetEndpoint({ commit }, { endpoint }) {\n\t\t\tcommit('SET_ENDPOINT', { endpoint })\n\t\t},\n\n\t\t/**\n\t\t * Toggle the 'enabled' state of a notification method for a given group/activity/method tuple\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {Function} _.dispatch - Function to dispatch another action\n\t\t * @param {object} _.state - Current state\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.groupKey - The targeted group\n\t\t * @param {string} payload.activityKey - The targeted activity\n\t\t * @param {string} payload.methodKey - The targeted method\n\t\t */\n\t\ttoggleMethodForMethodAndActivity({ commit, state, dispatch }, { groupKey, activityKey, methodKey }) {\n\t\t\tconst activity = state.activityGroups[groupKey].activities[activityKey]\n\t\t\tconst oneInputIsChecked = isOneInputUnChecked([activity], methodKey)\n\n\t\t\tcommit(\n\t\t\t\t'SET_METHOD_FOR_METHOD_AND_ACTIVITY',\n\t\t\t\t{\n\t\t\t\t\tgroupKey,\n\t\t\t\t\tactivityKey,\n\t\t\t\t\tmethodKey,\n\t\t\t\t\tvalue: oneInputIsChecked,\n\t\t\t\t})\n\n\t\t\tdispatch('saveSettings')\n\t\t},\n\n\t\t/**\n\t\t * Toggle the 'enabled' state of a notification method for a given group/method tuple\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {Function} _.dispatch - Function to dispatch another action\n\t\t * @param {object} _.state - Current state\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.groupKey - The targeted group\n\t\t * @param {string} payload.methodKey - The targeted method\n\t\t */\n\t\ttoggleMethodForGroup({ commit, state, dispatch }, { groupKey, methodKey }) {\n\t\t\tconst activities = Object.values(state.activityGroups[groupKey].activities)\n\t\t\tconst oneInputIsChecked = isOneInputUnChecked(activities, methodKey)\n\n\t\t\tfor (const activityKey in state.activityGroups[groupKey].activities) {\n\t\t\t\tcommit(\n\t\t\t\t\t'SET_METHOD_FOR_METHOD_AND_ACTIVITY',\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupKey,\n\t\t\t\t\t\tactivityKey,\n\t\t\t\t\t\tmethodKey,\n\t\t\t\t\t\tvalue: oneInputIsChecked,\n\t\t\t\t\t})\n\t\t\t}\n\n\t\t\tdispatch('saveSettings')\n\t\t},\n\n\t\t/**\n\t\t * Toggle the 'enabled' state of a notification method for a given group/activity tuple\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {Function} _.dispatch - Function to dispatch another action\n\t\t * @param {object} _.state - Current state\n\t\t * @param {object} payload - The payload.\n\t\t * @param {string} payload.groupKey - The targeted group\n\t\t * @param {string} payload.activityKey - The targeted activity\n\t\t */\n\t\ttoggleMethodsForActivity({ commit, state, dispatch }, { groupKey, activityKey }) {\n\t\t\tconst activity = state.activityGroups[groupKey].activities[activityKey]\n\t\t\tconst oneInputIsChecked = activity.methods.map(method => isOneInputUnChecked([activity], method)).includes(true)\n\n\t\t\tfor (const methodKey of activity.methods) {\n\t\t\t\tcommit(\n\t\t\t\t\t'SET_METHOD_FOR_METHOD_AND_ACTIVITY',\n\t\t\t\t\t{\n\t\t\t\t\t\tgroupKey,\n\t\t\t\t\t\tactivityKey,\n\t\t\t\t\t\tmethodKey,\n\t\t\t\t\t\tvalue: oneInputIsChecked,\n\t\t\t\t\t})\n\t\t\t}\n\n\t\t\tdispatch('saveSettings')\n\t\t},\n\n\t\t/**\n\t\t * Set the batch time.\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {Function} _.dispatch - Function to dispatch another action\n\t\t * @param {object} payload - The payload.\n\t\t * @param {0|1|2|3} payload.settingBatchtime - The selected batch time.\n\t\t */\n\t\tsetSettingBatchtime({ commit, dispatch }, { settingBatchtime }) {\n\t\t\tcommit(\n\t\t\t\t'SET_SETTING_BATCHTIME',\n\t\t\t\t{\n\t\t\t\t\tsettingBatchtime,\n\t\t\t\t})\n\n\t\t\tdispatch('saveSettings')\n\t\t},\n\n\t\t/**\n\t\t * Toggle the activity digest.\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {Function} _.dispatch - Function to dispatch another action\n\t\t * @param {object} payload - The payload.\n\t\t * @param {boolean} payload.activityDigestEnabled - Enabled status of the activity digest.\n\t\t */\n\t\ttoggleActivityDigestEnabled({ commit, dispatch }, { activityDigestEnabled }) {\n\t\t\tcommit(\n\t\t\t\t'TOGGLE_ACTIVITY_DIGEST',\n\t\t\t\t{\n\t\t\t\t\tactivityDigestEnabled,\n\t\t\t\t})\n\n\t\t\tdispatch('saveSettings')\n\t\t},\n\n\t\t/**\n\t\t * Toggle the availability of mail notifications\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {Function} _.commit - State modifying function\n\t\t * @param {object} payload - The payload.\n\t\t * @param {boolean} payload.emailEnabled - Enabled status of the email notifications.\n\t\t */\n\t\ttoggleEmailEnabled({ commit }, { emailEnabled }) {\n\t\t\tcommit(\n\t\t\t\t'TOGGLE_EMAIL_ENABLED',\n\t\t\t\t{\n\t\t\t\t\temailEnabled,\n\t\t\t\t})\n\n\t\t\ttry {\n\n\t\t\t\tOCP.AppConfig.setValue(\n\t\t\t\t\t'activity', 'enable_email',\n\t\t\t\t\temailEnabled ? 'yes' : 'no'\n\t\t\t\t)\n\n\t\t\t\tshowSuccess(t('activity', 'Your settings have been updated.'))\n\t\t\t} catch (error) {\n\t\t\t\tshowError(t('activity', 'Unable to save the settings'))\n\t\t\t\tlogger.error('An error occurred while saving the activity settings', error)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Save the currently displayed settings\n\t\t *\n\t\t * @param {object} _ - Action context\n\t\t * @param {object} _.state - Current state\n\t\t * @param {object} _.getters - Getter functions for the state\n\t\t */\n\t\tasync saveSettings({ state, getters }) {\n\t\t\ttry {\n\t\t\t\tconst form = new FormData()\n\t\t\t\tgetters.checkedActivities.forEach(activity => {\n\t\t\t\t\tform.append(activity, '1')\n\t\t\t\t})\n\n\t\t\t\tform.append('notify_setting_batchtime', `${state.settingBatchtime}`)\n\t\t\t\tform.append('activity_digest', `${state.activityDigestEnabled ? 1 : 0}`)\n\n\t\t\t\tconst response = await axios.post(generateUrl(state.endpoint), form)\n\n\t\t\t\tshowSuccess(response.data.data.message)\n\t\t\t} catch (error) {\n\t\t\t\tshowError(t('activity', 'Unable to save the settings'))\n\t\t\t\tlogger.error('An error occurred while saving the activity settings', error)\n\t\t\t}\n\t\t},\n\t},\n})\n\nexport default store\n"],"names":["applyMixin","Vue","version","vuexInit","_init","options","target","global","devtoolHook","devtoolPlugin","store","targetState","mutation","state","action","find","list","f","deepCopy","obj","cache","hit","c","copy","key","forEachValue","fn","isObject","isPromise","val","partial","arg","Module","rawModule","runtime","rawState","prototypeAccessors","module","ModuleCollection","rawRootModule","path","namespace","update","this$1","newModule","parent","rawChildModule","child","targetModule","Store","install","plugins","strict","ref","dispatch","commit","type","payload","installModule","resetStoreVM","plugin","useDevtools","prototypeAccessors$1","v","_type","_payload","_options","unifyObjectStyle","entry","handler","sub","result","resolve","reject","res","error","genericSubscribe","subs","getter","cb","parentState","getNestedState","resetStore","newOptions","committing","i","hot","oldVm","wrappedGetters","computed","silent","enableStrictMode","rootState","isRoot","moduleName","local","makeLocalContext","namespacedType","registerMutation","registerAction","registerGetter","noNamespace","args","makeLocalGetters","gettersProxy","splitPos","localType","err","rawGetter","_Vue","mapState","normalizeNamespace","states","normalizeMap","getters","getModuleByNamespace","mapMutations","mutations","len","mapGetters","mapActions","actions","createNamespacedHelpers","map","isValidMap","helper","createLogger","collapsed","filter","stateBefore","stateAfter","transformer","mutationTransformer","mut","actionFilter","actionTransformer","act","logMutations","logActions","logger","prevState","nextState","formattedTime","getFormattedTime","formattedMutation","message","startMessage","endMessage","formattedAction","time","pad","repeat","str","times","num","maxLength","index","register","t24","_sfc_main$1","_sfc_render$1","_vm","_c","$event","_sfc_staticRenderFns$1","__component__$1","normalizeComponent","HelpCircle","_sfc_main","t","_a","_b","major","_sfc_render","_sfc_staticRenderFns","__component__","NcSettingsSection","id","MinusBox","CheckboxBlank","CheckboxMarked","CheckboxBlankOutline","values","input","isActivityEnabled","activity","methodKey","isOneInputUnChecked","activities","Checkbox","method","Vuex","loadState","methodsEnabled","activityKey","methods","group","acc","groupKey","value","endpoint","settingBatchtime","activityDigestEnabled","emailEnabled","oneInputIsChecked","showSuccess","showError","form","response","axios","generateUrl"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5]} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 392faa636..8a15add48 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,7 +23,7 @@ "@vueuse/core": "^12.7.0", "vue": "^2.7.16", "vue-frag": "^1.4.3", - "vue-material-design-icons": "^5.3.0", + "vue-material-design-icons": "^5.3.1", "vue-router": "^3.6.5", "vuex": "^3.6.2" }, @@ -14945,9 +14945,9 @@ } }, "node_modules/vue-material-design-icons": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/vue-material-design-icons/-/vue-material-design-icons-5.3.0.tgz", - "integrity": "sha512-wnbRh+48RwX/Gt+iqwCSdWpm0hPBwwv9F7MSouUzZ2PsphYVMJB9KkG9iGs+tgBiT57ZiurFEK07Y/rFKx+Ekg==" + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/vue-material-design-icons/-/vue-material-design-icons-5.3.1.tgz", + "integrity": "sha512-6UNEyhlTzlCeT8ZeX5WbpUGFTTPSbOoTQeoASTv7X4Ylh0pe8vltj+36VMK56KM0gG8EQVoMK/Qw/6evalg8lA==" }, "node_modules/vue-resize": { "version": "1.0.1", @@ -25986,9 +25986,9 @@ "requires": {} }, "vue-material-design-icons": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/vue-material-design-icons/-/vue-material-design-icons-5.3.0.tgz", - "integrity": "sha512-wnbRh+48RwX/Gt+iqwCSdWpm0hPBwwv9F7MSouUzZ2PsphYVMJB9KkG9iGs+tgBiT57ZiurFEK07Y/rFKx+Ekg==" + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/vue-material-design-icons/-/vue-material-design-icons-5.3.1.tgz", + "integrity": "sha512-6UNEyhlTzlCeT8ZeX5WbpUGFTTPSbOoTQeoASTv7X4Ylh0pe8vltj+36VMK56KM0gG8EQVoMK/Qw/6evalg8lA==" }, "vue-resize": { "version": "1.0.1", diff --git a/package.json b/package.json index 7d74abda3..fa1101e3c 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "@vueuse/core": "^12.7.0", "vue": "^2.7.16", "vue-frag": "^1.4.3", - "vue-material-design-icons": "^5.3.0", + "vue-material-design-icons": "^5.3.1", "vue-router": "^3.6.5", "vuex": "^3.6.2" },