diff --git a/js/activity-app.mjs b/js/activity-app.mjs
index 3ee1a00cf..2d12426bf 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-499b54a9]{display:flex;flex-direction:column;overflow:hidden}.activity-app__empty-content[data-v-499b54a9]{height:100%}.activity-app__loading-indicator[data-v-499b54a9]{color:var(--color-text-maxcontrast);justify-self:center;margin-block:30px 6px;text-align:center}.activity-app__container[data-v-499b54a9]{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-499b54a9]{font-weight:700;font-size:20px;line-height:44px;margin:var(--app-navigation-padding, 8px) 0 0 calc(2 * var(--app-navigation-padding, 8px) + 44px)}.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 g,d as L,c as z,t as v,g as ut,e as dt,s as ht,r as _,o as ft,w as mt,a as vt}from"./index-FHDXXk0Q.chunk.mjs";import{N as X,u as k,A as Y,m as S,a as gt,b as yt,c as Ct,C as _t,d as xt,e as bt,v as St,f as zt,V as J}from"./Activity-iWE732P6.chunk.mjs";import{e as y,g as wt,l as V,s as Nt,u as kt}from"./logger-DdfSSqJ9.chunk.mjs";import{r as C,t as Pt,n as c,N as x,a as d,b as P,c as Mt,u as Et,V as Dt,l as O,d as At,e as Q,f as tt,v as Lt,g as $t,h as Bt,i as It,j as Vt,C as Ot,k as Tt,m as Ht,o as Rt,p as Ft,q as jt,s as Ut,G as Zt,w as qt,x as Kt,_ as et}from"./NcCheckboxRadioSwitch-CvMEEI9x-BV2YqD7g.chunk.mjs";import{s as it,a as Wt}from"./NcNoteCard-CImn6F9p-B5NIs5kG.chunk.mjs";import"./_commonjsHelpers-D9DevfhH.chunk.mjs";const D="activity";let Gt="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Xt=(t=21)=>{let e="",i=t;for(;i--;)e+=Gt[Math.random()*64|0];return e};function M(t){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?M=function(e){return typeof e}:M=function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},M(t)}var nt={selector:"vue-portal-target-".concat(Xt())},Yt=function(t){return nt.selector=t},B=typeof window<"u"&&(typeof document>"u"?"undefined":M(document))!==void 0,Jt=g.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)}}),at=g.extend({name:"VueSimplePortal",props:{disabled:{type:Boolean},prepend:{type:Boolean},selector:{type:String,default:function(){return"#".concat(nt.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(B)return document.querySelector(this.selector)},insertTargetEl:function(){if(B){var t=document.querySelector("body"),e=document.createElement(this.tag);e.id=this.selector.substring(1),t.appendChild(e)}},mount:function(){if(B){var t=this.getTargetEl(),e=document.createElement("DIV");this.prepend&&t.firstChild?t.insertBefore(e,t.firstChild):t.appendChild(e),this.container=new Jt({el:e,parent:this,propsData:{tag:this.tag,nodes:this.$scopedSlots.default}})}},unmount:function(){this.container&&(this.container.$destroy(),delete this.container)}}});function Qt(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};t.component(e.name||"portal",at),e.defaultSelector&&Yt(e.defaultSelector)}typeof window<"u"&&window.Vue&&window.Vue===g&&g.use(Qt),C(Pt);const te='\n\n',ee='\n\n',ie={name:"NcContent",components:{NcButton:x,NcIconSvgWrapper:X,Teleport:at},provide(){return{"NcContent:setHasAppNavigation":this.setAppNavigation,"NcContent:selector":"#content-vue"}},props:{appName:{type:String,required:!0}},setup(){return{isMobile:k()}},data(){return{hasAppNavigation:!1,currentFocus:""}},computed:{currentImage(){return this.currentFocus==="navigation"?ee:te}},beforeMount(){const t=document.getElementById("skip-actions");t&&(t.innerHTML="",t.classList.add("vue-skip-actions"))},methods:{t:d,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 ne=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)},ae=[],se=c(ie,ne,ae,!1,null,"d8f0539f");const oe=se.exports,le=L({__name:"ActivityApp",setup(t){return{__sfc:!0,NcContent:oe}}});var re=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)},ce=[],pe=P(le,re,ce,!1,null,null);const ue=pe.exports;var de=Object.defineProperty,he=Object.defineProperties,fe=Object.getOwnPropertyDescriptors,A=Object.getOwnPropertySymbols,st=Object.prototype.hasOwnProperty,ot=Object.prototype.propertyIsEnumerable,R=(t,e,i)=>e in t?de(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,me=(t,e)=>{for(var i in e||(e={}))st.call(e,i)&&R(t,i,e[i]);if(A)for(var i of A(e))ot.call(e,i)&&R(t,i,e[i]);return t},ve=(t,e)=>he(t,fe(e)),ge=(t,e)=>{var i={};for(var n in t)st.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(t!=null&&A)for(var n of A(t))e.indexOf(n)<0&&ot.call(t,n)&&(i[n]=t[n]);return i};function lt(t,e,i,n,a,s,o,r){var l=typeof t=="function"?t.options:t;e&&(l.render=e,l.staticRenderFns=i,l._compiled=!0);var p;if(a&&(p=a),p)if(l.functional){l._injectStyles=p;var b=l.render;l.render=function(u,f){return p.call(f),b(u,f)}}else{var h=l.beforeCreate;l.beforeCreate=h?[].concat(h,p):[p]}return{exports:t,options:l}}const ye={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,a)=>(n.size=a===e?n.max:n.min,a!==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),a=100-(this.pushOtherPanes?0:i.nextPanesSize),s=Math.max(Math.min(this.getCurrentDragPercentage(t),a),n);let o=[e,e+1],r=this.panes[o[0]]||null,l=this.panes[o[1]]||null;const p=r.max<100&&s>=r.max+i.prevPanesSize,b=l.max<100&&s<=100-(l.max+this.sumNextPanesSize(e+1));if(p||b){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 h=this.doPushOtherPanes(i,s);if(!h)return;({sums:i,panesToResize:o}=h),r=this.panes[o[0]]||null,l=this.panes[o[1]]||null}r!==null&&(r.size=Math.min(Math.max(s-i.prevPanesSize-i.prevReachedMinPanes,r.min),r.max)),l!==null&&(l.size=Math.min(Math.max(100-s-i.nextPanesSize-i.nextReachedMinPanes,l.min),l.max))},doPushOtherPanes(t,e){const i=this.touch.activeSplitter,n=[i,i+1];return e{s>n[0]&&s<=i&&(a.size=a.min,t.prevReachedMinPanes+=a.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((a,s)=>{s>0&&s<=i&&(a.size=a.min,t.prevReachedMinPanes+=a.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((a,s)=>{s>i&&s{s=i+1&&(a.size=a.min,t.nextReachedMinPanes+=a.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,a=document.createElement("div");a.classList.add("splitpanes__splitter"),i||(a.onmousedown=s=>this.onMouseDown(s,n),typeof window<"u"&&"ontouchstart"in window&&(a.ontouchstart=s=>this.onMouseDown(s,n)),a.onclick=s=>this.onSplitterClick(s,n+1)),this.dblClickSplitter&&(a.ondblclick=s=>this.onSplitterDblClick(s,n+1)),e.parentNode.insertBefore(a,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=ge(e,["target"]);const a=this.indexedPanes[i._uid];Object.entries(n).forEach(([s,o])=>a[s]=o)},onPaneAdd(t){let e=-1;Array.from(t.$el.parentNode.children).some(a=>(a.className.includes("splitpanes__pane")&&e++,a===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((a,s)=>a.index=s),this.ready&&this.$nextTick(()=>{this.redoSplitters(),this.resetPaneSizes({addedPane:this.panes[e]}),this.$emit("pane-add",{index:e,panes:this.panes.map(a=>({min:a.min,max:a.max,size:a.size}))})})},onPaneRemove(t){const e=this.panes.findIndex(n=>n.id===t._uid),i=this.panes.splice(e,1)[0];this.panes.forEach((n,a)=>n.index=a),this.$nextTick(()=>{this.redoSplitters(),this.resetPaneSizes({removedPane:ve(me({},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(a=>{a.size=Math.max(Math.min(t,a.max),a.min),e-=a.size,a.size>=a.max&&i.push(a.id),a.size<=a.min&&n.push(a.id)}),e>.1&&this.readjustSizes(e,i,n)},initialPanesSizing(){100/this.panesCount;let t=100,e=[],i=[],n=0;this.panes.forEach(s=>{t-=s.size,s.size!==null&&n++,s.size>=s.max&&e.push(s.id),s.size<=s.min&&i.push(s.id)});let a=100;t>.1&&(this.panes.forEach(s=>{s.size===null&&(s.size=Math.max(Math.min(t/(this.panesCount-n),s.max),s.min)),a-=s.size}),a>.1&&this.readjustSizes(t,e,i))},equalizeAfterAddOrRemove({addedPane:t,removedPane:e}={}){let i=100/this.panesCount,n=0,a=[],s=[];t&&t.givenSize!==null&&(i=(100-t.givenSize)/(this.panesCount-1)),this.panes.forEach(o=>{n-=o.size,o.size>=o.max&&a.push(o.id),o.size<=o.min&&s.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&&a.push(o.id),o.size<=o.min&&s.push(o.id)}),n>.1&&this.readjustSizes(n,a,s))},readjustSizes(t,e,i){let n;t>0?n=t/(this.panesCount-e.length):n=t/(this.panesCount-i.length),this.panes.forEach((a,s)=>{if(t>0&&!e.includes(a.id)){const o=Math.max(Math.min(a.size+n,a.max),a.min),r=o-a.size;t-=r,a.size=o}else if(!i.includes(a.id)){const o=Math.max(Math.min(a.size+n,a.max),a.min),r=o-a.size;t-=r,a.size=o}a.update({[this.horizontal?"height":"width"]:"".concat(this.indexedPanes[a.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 Ce,_e;const F={};var xe=lt(ye,Ce,_e,!1,be);function be(t){for(let e in F)this[e]=F[e]}var Se=function(){return xe.exports}(),ze=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)},we=[];const Ne={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})}}},j={};var ke=lt(Ne,ze,we,!1,Pe);function Pe(t){for(let e in j)this[e]=j[e]}var Me=function(){return ke.exports}();C(Mt);const Ee={name:"NcAppDetailsToggle",directives:{tooltip:Dt},components:{NcButton:x,ArrowRight:Y},setup(){return{isMobile:k()}},computed:{title(){return d("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 De=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}])})},Ae=[],Le=c(Ee,De,Ae,!1,null,"7692fc78");const $e=Le.exports,U=wt("nextcloud").persist().build(),Be={name:"NcAppContent",components:{NcAppDetailsToggle:$e,Pane:Me,Splitpanes:Se},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:k()}},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(D)}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=Et(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);U.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(U.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 Ie=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)},Ve=[],Oe=c(Be,Ie,Ve,!1,null,"de6986e3");const Te=Oe.exports;var $=Symbol(),w=Symbol(),Z=Symbol(),q=Symbol(),T=function(t){return"frag"in t},He={get:function(){return this[w]||this.parentElement},configurable:!0},N=function(t,e){w in t||(t[w]=e,Object.defineProperty(t,"parentNode",He))},Re={get:function(){var t=this.parentNode.childNodes,e=t.indexOf(this);return e>-1&&t[e+1]||null}},E=function(t){Z in t||(t[Z]=!0,Object.defineProperty(t,"nextSibling",Re))},Fe=function(t,e){for(;t.parentNode!==e;){var i=t,n=i.parentNode;n&&(t=n)}return t},I,rt=function(t){if(!I){var e=Object.getOwnPropertyDescriptor(Node.prototype,"childNodes");I=e.get}var i=I.apply(t),n=Array.from(i).map(function(a){return Fe(a,t)});return n.filter(function(a,s){return a!==n[s-1]})},je={get:function(){return this.frag||rt(this)}},Ue={get:function(){return this.childNodes[0]||null}};function Ze(){return this.childNodes.length>0}var K=function(t){q in t||(t[q]=!0,Object.defineProperties(t,{childNodes:je,firstChild:Ue}),t.hasChildNodes=Ze)};function qe(){var t;(t=this.frag[0]).before.apply(t,arguments)}function Ke(){var t=this.frag,e=t.splice(0,t.length);e.forEach(function(i){i.remove()})}var We=function t(e){var i;return(i=Array.prototype).concat.apply(i,e.map(function(n){return T(n)?t(n.frag):n}))},Ge=function(t,e){var i=t[$];e.before(i),N(i,t),t.frag.unshift(i)};function W(t){if(T(this)){var e=this.frag.indexOf(t);if(e>-1){var i=this.frag.splice(e,1),n=i[0];this.frag.length===0&&Ge(this,n),t.remove()}}else{var a=rt(this),s=a.indexOf(t);s>-1&&t.remove()}return t}function G(t,e){var i=this,n=t.frag||[t];if(T(this)){if(t[w]===this&&t.parentElement)return t;var a=this.frag;if(e){var s=a.indexOf(e);s>-1&&(a.splice.apply(a,[s,0].concat(n)),e.before.apply(e,n))}else{var o=a[a.length-1];a.push.apply(a,n),o.after.apply(o,n)}ct(this)}else e?this.childNodes.includes(e)&&e.before.apply(e,n):this.append.apply(this,n);n.forEach(function(l){N(l,i)});var r=n[n.length-1];return E(r),t}function Xe(t){if(t[w]===this&&t.parentElement)return t;var e=this.frag,i=e[e.length-1];return i.after(t),N(t,this),ct(this),e.push(t),t}var ct=function(t){var e=t[$];t.frag[0]===e&&(t.frag.shift(),e.remove())},Ye={set:function(t){var e=this;if(this.frag[0]!==this[$]&&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""}},Je={inserted:function(t){var e=t.parentNode,i=t.nextSibling,n=t.previousSibling,a=Array.from(t.childNodes),s=document.createComment("");a.length===0&&a.push(s),t.frag=a,t[$]=s;var o=document.createDocumentFragment();o.append.apply(o,We(a)),t.replaceWith(o),a.forEach(function(r){N(r,t),E(r)}),K(t),Object.assign(t,{remove:Ke,appendChild:Xe,insertBefore:G,removeChild:W,before:qe}),Object.defineProperty(t,"innerHTML",Ye),e&&(Object.assign(e,{removeChild:W,insertBefore:G}),N(t,e),K(e)),i&&E(t),n&&E(n)},unbind:function(t){t.remove()}},Qe={name:"Fragment",directives:{frag:Je},render:function(t){return t("div",{directives:[{name:"frag"}]},this.$slots.default)}};const ti=L({__name:"ActivityGroup",props:{activities:null},setup(t){const e=t,i=z(()=>{const a=S(),s=S().subtract(1,"day"),o=S(e.activities[0].datetime);return o.isSame(a,"day")?v("activity","Today"):o.isSame(s,"day")?v("activity","Yesterday"):o.format("LL")}),n=z(()=>{const a=S(e.activities[0].datetime).format("LL");return a!==i.value?a:void 0});return{__sfc:!0,props:e,dateText:i,fullDate:n,Activity:gt,Fragment:Qe}}});var ei=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)])},ii=[],ni=P(ti,ei,ii,!1,null,"c16e5a63");const ai=ni.exports,si='';function oi(){var t=ut().proxy.$root;if(!t._$route){var e=dt(!0).run(function(){return ht(Object.assign({},t.$router.currentRoute))});t._$route=e,t.$router.afterEach(function(i){Object.assign(e,i)})}return t._$route}const li=L({__name:"ActivityAppFeed",props:{filter:{default:"all"}},setup(t){const e=t,i=O(D,"navigationList"),n=oi(),a=_(!1),s=_(!0),o=_([]),r=_(),l=_();At(l,async()=>{s.value&&await h()},{distance:100});const p=z(()=>{const u={};for(const f of o.value){const m=S(f.datetime).format("LL");u[m]===void 0?u[m]=[f]:u[m].push(f)}return u}),b=z(()=>i.find(u=>u.id===n.params.filter).name);async function h(){var u,f;if(!a.value)try{const m=(u=r.value)!=null?u:"0";a.value=!0;const H=await tt.get(Lt("apps/activity/api/v2/activity/{filter}?format=json&previews=true&since={since}",{filter:e.filter,since:m}));o.value.push(...H.data.ocs.data.map(pt=>new Ct(pt))),r.value=H.headers["x-activity-last-given"],s.value=!0}catch(m){if($t.isAxiosError(m)&&((f=m.response)==null?void 0:f.status)===304){s.value=!1;return}V.error(m),it(v("activity","Could not load activities"))}finally{a.value=!1}}return ft(()=>{h()}),mt(e,()=>{o.value=[],r.value=void 0,h()}),{__sfc:!0,navigationList:i,route:n,props:e,loading:a,hasMoreActivites:s,allActivities:o,lastActivityLoaded:r,container:l,groupedActivities:p,headingTitle:b,loadActivities:h,NcAppContent:Te,NcIconSvgWrapper:X,NcEmptyContent:yt,NcLoadingIcon:Q,ActivityGroup:ai,appIconSVG:si,t:v}}});var ri=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,a){return e(i.ActivityGroup,{key:a,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)},ci=[],pi=P(li,ri,ci,!1,null,"499b54a9");const ui=pi.exports,di={name:"NcAppNavigationList"};var hi=function(){var t=this,e=t._self._c;return e("ul",{staticClass:"app-navigation-list"},[t._t("default")],2)},fi=[],mi=c(di,hi,fi,!1,null,"058e6060");const vi=mi.exports;C(Bt);const gi={name:"MenuIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var yi=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()])])])},Ci=[],_i=c(gi,yi,Ci,!1,null,null);const xi=_i.exports,bi={name:"MenuOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Si=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()])])])},zi=[],wi=c(bi,Si,zi,!1,null,null);const Ni=wi.exports,ki={name:"NcAppNavigationToggle",components:{NcButton:x,MenuIcon:xi,MenuOpenIcon:Ni},props:{open:{type:Boolean,required:!0}},emits:["update:open"],computed:{label(){return this.open?d("Close navigation"):d("Open navigation")}},methods:{toggleNavigation(){this.$emit("update:open",!this.open)}}};var Pi=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)},Mi=[],Ei=c(ki,Pi,Mi,!1,null,"b6024aba");const Di=Ei.exports,Ai={name:"NcAppNavigation",components:{NcAppNavigationList:vi,NcAppNavigationToggle:Di},inject:{setHasAppNavigation:{default:()=>()=>g.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:k()}},data(){return{open:!this.isMobile,focusTrap:null}},watch:{isMobile(){this.open=!this.isMobile,this.toggleFocusTrap()},open(){this.toggleFocusTrap()}},mounted(){this.setHasAppNavigation(!0),Nt("toggle-navigation",this.toggleNavigationByEventBus),y("navigation-toggled",{open:this.open}),this.focusTrap=It(this.$refs.appNavigationContainer,{allowOutsideClick:!0,fallbackFocus:this.$refs.appNavigationContainer,trapStack:Vt(),escapeDeactivates:!1}),this.toggleFocusTrap()},unmounted(){this.setHasAppNavigation(!1),kt("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 Li=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)},$i=[],Bi=c(Ai,Li,$i,!1,null,"e7d078cc");const Ii=Bi.exports,Vi={name:"NcActionButton",components:{CheckIcon:_t,ChevronRightIcon:Ot},mixins:[xt],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 Oi=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)])},Ti=[],Hi=c(Vi,Oi,Ti,!1,null,"dba65098");const Ri=Hi.exports,Fi={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))}},ji=null,Ui=null;var Zi=c(Fi,ji,Ui,!1,null,null);const qi=Zi.exports,Ki={name:"ChevronUpIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Wi=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()])])])},Gi=[],Xi=c(Ki,Wi,Gi,!1,null,null);const Yi=Xi.exports;C(Tt);const Ji={name:"NcInputConfirmCancel",components:{NcButton:x,ArrowRight:Y,Close:Ht},props:{primary:{default:!1,type:Boolean},placeholder:{default:"",type:String},value:{default:"",type:String}},emits:["input","confirm","cancel"],data(){return{labelConfirm:d("Confirm changes"),labelCancel:d("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 Qi=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)])},tn=[],en=c(Ji,Qi,tn,!1,null,"0e795eb7");const nn=en.exports;C(Rt);const an={name:"NcAppNavigationIconCollapsible",components:{NcButton:x,ChevronDown:bt,ChevronUp:Yi},props:{open:{type:Boolean,default:!0}},emits:["click"],computed:{labelButton(){return this.open?d("Collapse menu"):d("Open menu")}},methods:{onClick(t){this.$emit("click",t)}}};var sn=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}])})},on=[],ln=c(an,sn,on,!1,null,"cadd59ae");const rn=ln.exports;C(jt,Ft);const cn={name:"PencilIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var pn=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()])])])},un=[],dn=c(cn,pn,un,!1,null,null);const hn=dn.exports,fn={name:"UndoIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var mn=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()])])])},vn=[],gn=c(fn,mn,vn,!1,null,null);const yn=gn.exports,Cn={name:"NcAppNavigationItem",components:{NcActions:Ut,NcActionButton:Ri,NcAppNavigationIconCollapsible:rn,NcInputConfirmCancel:nn,NcLoadingIcon:Q,NcVNodes:qi,Pencil:hn,Undo:yn},props:{active:{type:Boolean,default:!1},name:{type:String,required:!0},title:{type:String,default:null},id:{type:String,default:()=>"app-navigation-item-"+Zt(),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:k()}},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:d("Edit item")},undoButtonAriaLabel(){return d("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 _n=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:a}){return[e("div",{staticClass:"app-navigation-entry",class:{"app-navigation-entry--editing":t.editingActive,"app-navigation-entry--deleted":t.undo,active:a&&t.to||t.active}},[t.undo?t._e():e("a",{staticClass:"app-navigation-entry-link",attrs:{"aria-current":t.active||a&&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(s){return t.onClick(s,n,i)},focus:t.handleFocus,keydown:function(s){return!s.type.indexOf("key")&&t._k(s.keyCode,"tab",9,s.key,"Tab")||s.ctrlKey||s.shiftKey||s.altKey||s.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:a&&t.to||t.active},on:{cancel:t.cancelEditing,confirm:t.handleEditingDone},model:{value:t.editingValue,callback:function(s){t.editingValue=s},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:a&&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(s){return s.preventDefault(),s.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)},xn=[],bn=c(Cn,_n,xn,!1,null,"97fce21a");const Sn=bn.exports,zn={props:{excludeClickOutsideSelectors:{type:[String,Array],default:()=>[]}},computed:{clickOutsideOptions(){return{ignore:Array.isArray(this.excludeClickOutsideSelectors)?this.excludeClickOutsideSelectors:[this.excludeClickOutsideSelectors]}}}};C(qt);const wn={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Nn=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()])])])},kn=[],Pn=c(wn,Nn,kn,!1,null,null);const Mn=Pn.exports,En={directives:{ClickOutside:St},components:{Cog:Mn},mixins:[zn],props:{name:{type:String,required:!1,default:d("Settings")}},data(){return{open:!1}},computed:{clickOutsideConfig(){return[this.closeMenu,this.clickOutsideOptions]}},methods:{toggleMenu(){this.open=!this.open},closeMenu(){this.open=!1}}};var Dn=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)},An=[],Ln=c(En,Dn,An,!1,null,"981e215c");const $n=Ln.exports,Bn={name:"ContentCopyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var In=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()])])])},Vn=[],On=P(Bn,In,Vn,!1,null,null);const Tn=On.exports,Hn=L({__name:"ActivityAppNavigation",setup(t){const{rssLink:e,personalSettingsLink:i}=O(D,"settings"),n=O(D,"navigationList"),a=_(e),s=z(()=>!!a.value);async function o(){try{const{data:l}=await tt.post(et("/apps/activity/settings/feed"),{enable:!s.value});a.value=l.data.rsslink}catch(l){it(v("activity","Could not enable RSS link")),V.error(l)}}async function r(){try{window.navigator.clipboard.writeText(a.value),Wt(v("activity","RSS link copied to clipboard"))}catch(l){V.debug(l),window.prompt(v("activity","Could not copy the RSS link, please copy manually:"),a.value)}}return{__sfc:!0,initialRSSLink:e,personalSettingsLink:i,navigationList:n,rssLink:a,hasRSSLink:s,toggleRSSLink:o,copyRSSLink:r,t:v,NcAppNavigation:Ii,NcAppNavigationItem:Sn,NcAppNavigationSettings:$n,NcButton:x,NcCheckboxRadioSwitch:Kt,NcInputField:zt,IconContentCopy:Tn}}});var Rn=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}])})},Fn=[],jn=P(Hn,Rn,Fn,!1,null,null);const Un=jn.exports,Zn=[{path:"/",name:"root",redirect:{path:"/all"}},{path:"/:filter?",components:{default:ui,navigation:Un},props:{default:!0}}];g.prototype.t=v,g.prototype.n=vt,g.use(J);const qn=new J({mode:"history",base:et("/apps/activity"),linkActiveClass:"active",routes:Zn});new g({el:"#content",name:"ActivityRoot",router:qn,render:t=>t(ue)});
+(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 g,d as L,c as z,t as v,g as ut,e as dt,s as ht,r as _,o as ft,w as mt,a as vt}from"./index-FHDXXk0Q.chunk.mjs";import{N as X,u as k,A as Y,m as S,a as gt,b as yt,c as Ct,C as _t,d as xt,e as bt,v as St,f as zt,V as J}from"./Activity-iWE732P6.chunk.mjs";import{e as y,g as wt,l as V,s as Nt,u as kt}from"./logger-DdfSSqJ9.chunk.mjs";import{r as C,t as Pt,n as c,N as x,a as d,b as P,c as Mt,u as Et,V as Dt,l as O,d as At,e as Q,f as tt,v as Lt,g as $t,h as Bt,i as It,j as Vt,C as Ot,k as Tt,m as Ht,o as Rt,p as Ft,q as jt,s as Ut,G as Zt,w as qt,x as Kt,_ as et}from"./NcCheckboxRadioSwitch-CvMEEI9x-BV2YqD7g.chunk.mjs";import{s as it,a as Wt}from"./NcNoteCard-CImn6F9p-B5NIs5kG.chunk.mjs";import"./_commonjsHelpers-D9DevfhH.chunk.mjs";const D="activity";let Gt="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Xt=(t=21)=>{let e="",i=t;for(;i--;)e+=Gt[Math.random()*64|0];return e};function M(t){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?M=function(e){return typeof e}:M=function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},M(t)}var nt={selector:"vue-portal-target-".concat(Xt())},Yt=function(t){return nt.selector=t},B=typeof window<"u"&&(typeof document>"u"?"undefined":M(document))!==void 0,Jt=g.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)}}),at=g.extend({name:"VueSimplePortal",props:{disabled:{type:Boolean},prepend:{type:Boolean},selector:{type:String,default:function(){return"#".concat(nt.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(B)return document.querySelector(this.selector)},insertTargetEl:function(){if(B){var t=document.querySelector("body"),e=document.createElement(this.tag);e.id=this.selector.substring(1),t.appendChild(e)}},mount:function(){if(B){var t=this.getTargetEl(),e=document.createElement("DIV");this.prepend&&t.firstChild?t.insertBefore(e,t.firstChild):t.appendChild(e),this.container=new Jt({el:e,parent:this,propsData:{tag:this.tag,nodes:this.$scopedSlots.default}})}},unmount:function(){this.container&&(this.container.$destroy(),delete this.container)}}});function Qt(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};t.component(e.name||"portal",at),e.defaultSelector&&Yt(e.defaultSelector)}typeof window<"u"&&window.Vue&&window.Vue===g&&g.use(Qt),C(Pt);const te='\n\n',ee='\n\n',ie={name:"NcContent",components:{NcButton:x,NcIconSvgWrapper:X,Teleport:at},provide(){return{"NcContent:setHasAppNavigation":this.setAppNavigation,"NcContent:selector":"#content-vue"}},props:{appName:{type:String,required:!0}},setup(){return{isMobile:k()}},data(){return{hasAppNavigation:!1,currentFocus:""}},computed:{currentImage(){return this.currentFocus==="navigation"?ee:te}},beforeMount(){const t=document.getElementById("skip-actions");t&&(t.innerHTML="",t.classList.add("vue-skip-actions"))},methods:{t:d,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 ne=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)},ae=[],se=c(ie,ne,ae,!1,null,"d8f0539f");const oe=se.exports,le=L({__name:"ActivityApp",setup(t){return{__sfc:!0,NcContent:oe}}});var re=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)},ce=[],pe=P(le,re,ce,!1,null,null);const ue=pe.exports;var de=Object.defineProperty,he=Object.defineProperties,fe=Object.getOwnPropertyDescriptors,A=Object.getOwnPropertySymbols,st=Object.prototype.hasOwnProperty,ot=Object.prototype.propertyIsEnumerable,R=(t,e,i)=>e in t?de(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,me=(t,e)=>{for(var i in e||(e={}))st.call(e,i)&&R(t,i,e[i]);if(A)for(var i of A(e))ot.call(e,i)&&R(t,i,e[i]);return t},ve=(t,e)=>he(t,fe(e)),ge=(t,e)=>{var i={};for(var n in t)st.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(t!=null&&A)for(var n of A(t))e.indexOf(n)<0&&ot.call(t,n)&&(i[n]=t[n]);return i};function lt(t,e,i,n,a,s,o,r){var l=typeof t=="function"?t.options:t;e&&(l.render=e,l.staticRenderFns=i,l._compiled=!0);var p;if(a&&(p=a),p)if(l.functional){l._injectStyles=p;var b=l.render;l.render=function(u,f){return p.call(f),b(u,f)}}else{var h=l.beforeCreate;l.beforeCreate=h?[].concat(h,p):[p]}return{exports:t,options:l}}const ye={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,a)=>(n.size=a===e?n.max:n.min,a!==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),a=100-(this.pushOtherPanes?0:i.nextPanesSize),s=Math.max(Math.min(this.getCurrentDragPercentage(t),a),n);let o=[e,e+1],r=this.panes[o[0]]||null,l=this.panes[o[1]]||null;const p=r.max<100&&s>=r.max+i.prevPanesSize,b=l.max<100&&s<=100-(l.max+this.sumNextPanesSize(e+1));if(p||b){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 h=this.doPushOtherPanes(i,s);if(!h)return;({sums:i,panesToResize:o}=h),r=this.panes[o[0]]||null,l=this.panes[o[1]]||null}r!==null&&(r.size=Math.min(Math.max(s-i.prevPanesSize-i.prevReachedMinPanes,r.min),r.max)),l!==null&&(l.size=Math.min(Math.max(100-s-i.nextPanesSize-i.nextReachedMinPanes,l.min),l.max))},doPushOtherPanes(t,e){const i=this.touch.activeSplitter,n=[i,i+1];return e{s>n[0]&&s<=i&&(a.size=a.min,t.prevReachedMinPanes+=a.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((a,s)=>{s>0&&s<=i&&(a.size=a.min,t.prevReachedMinPanes+=a.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((a,s)=>{s>i&&s{s=i+1&&(a.size=a.min,t.nextReachedMinPanes+=a.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,a=document.createElement("div");a.classList.add("splitpanes__splitter"),i||(a.onmousedown=s=>this.onMouseDown(s,n),typeof window<"u"&&"ontouchstart"in window&&(a.ontouchstart=s=>this.onMouseDown(s,n)),a.onclick=s=>this.onSplitterClick(s,n+1)),this.dblClickSplitter&&(a.ondblclick=s=>this.onSplitterDblClick(s,n+1)),e.parentNode.insertBefore(a,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=ge(e,["target"]);const a=this.indexedPanes[i._uid];Object.entries(n).forEach(([s,o])=>a[s]=o)},onPaneAdd(t){let e=-1;Array.from(t.$el.parentNode.children).some(a=>(a.className.includes("splitpanes__pane")&&e++,a===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((a,s)=>a.index=s),this.ready&&this.$nextTick(()=>{this.redoSplitters(),this.resetPaneSizes({addedPane:this.panes[e]}),this.$emit("pane-add",{index:e,panes:this.panes.map(a=>({min:a.min,max:a.max,size:a.size}))})})},onPaneRemove(t){const e=this.panes.findIndex(n=>n.id===t._uid),i=this.panes.splice(e,1)[0];this.panes.forEach((n,a)=>n.index=a),this.$nextTick(()=>{this.redoSplitters(),this.resetPaneSizes({removedPane:ve(me({},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(a=>{a.size=Math.max(Math.min(t,a.max),a.min),e-=a.size,a.size>=a.max&&i.push(a.id),a.size<=a.min&&n.push(a.id)}),e>.1&&this.readjustSizes(e,i,n)},initialPanesSizing(){100/this.panesCount;let t=100,e=[],i=[],n=0;this.panes.forEach(s=>{t-=s.size,s.size!==null&&n++,s.size>=s.max&&e.push(s.id),s.size<=s.min&&i.push(s.id)});let a=100;t>.1&&(this.panes.forEach(s=>{s.size===null&&(s.size=Math.max(Math.min(t/(this.panesCount-n),s.max),s.min)),a-=s.size}),a>.1&&this.readjustSizes(t,e,i))},equalizeAfterAddOrRemove({addedPane:t,removedPane:e}={}){let i=100/this.panesCount,n=0,a=[],s=[];t&&t.givenSize!==null&&(i=(100-t.givenSize)/(this.panesCount-1)),this.panes.forEach(o=>{n-=o.size,o.size>=o.max&&a.push(o.id),o.size<=o.min&&s.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&&a.push(o.id),o.size<=o.min&&s.push(o.id)}),n>.1&&this.readjustSizes(n,a,s))},readjustSizes(t,e,i){let n;t>0?n=t/(this.panesCount-e.length):n=t/(this.panesCount-i.length),this.panes.forEach((a,s)=>{if(t>0&&!e.includes(a.id)){const o=Math.max(Math.min(a.size+n,a.max),a.min),r=o-a.size;t-=r,a.size=o}else if(!i.includes(a.id)){const o=Math.max(Math.min(a.size+n,a.max),a.min),r=o-a.size;t-=r,a.size=o}a.update({[this.horizontal?"height":"width"]:"".concat(this.indexedPanes[a.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 Ce,_e;const F={};var xe=lt(ye,Ce,_e,!1,be);function be(t){for(let e in F)this[e]=F[e]}var Se=function(){return xe.exports}(),ze=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)},we=[];const Ne={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})}}},j={};var ke=lt(Ne,ze,we,!1,Pe);function Pe(t){for(let e in j)this[e]=j[e]}var Me=function(){return ke.exports}();C(Mt);const Ee={name:"NcAppDetailsToggle",directives:{tooltip:Dt},components:{NcButton:x,ArrowRight:Y},setup(){return{isMobile:k()}},computed:{title(){return d("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 De=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}])})},Ae=[],Le=c(Ee,De,Ae,!1,null,"7692fc78");const $e=Le.exports,U=wt("nextcloud").persist().build(),Be={name:"NcAppContent",components:{NcAppDetailsToggle:$e,Pane:Me,Splitpanes:Se},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:k()}},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(D)}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=Et(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);U.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(U.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 Ie=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)},Ve=[],Oe=c(Be,Ie,Ve,!1,null,"de6986e3");const Te=Oe.exports;var $=Symbol(),w=Symbol(),Z=Symbol(),q=Symbol(),T=function(t){return"frag"in t},He={get:function(){return this[w]||this.parentElement},configurable:!0},N=function(t,e){w in t||(t[w]=e,Object.defineProperty(t,"parentNode",He))},Re={get:function(){var t=this.parentNode.childNodes,e=t.indexOf(this);return e>-1&&t[e+1]||null}},E=function(t){Z in t||(t[Z]=!0,Object.defineProperty(t,"nextSibling",Re))},Fe=function(t,e){for(;t.parentNode!==e;){var i=t,n=i.parentNode;n&&(t=n)}return t},I,rt=function(t){if(!I){var e=Object.getOwnPropertyDescriptor(Node.prototype,"childNodes");I=e.get}var i=I.apply(t),n=Array.from(i).map(function(a){return Fe(a,t)});return n.filter(function(a,s){return a!==n[s-1]})},je={get:function(){return this.frag||rt(this)}},Ue={get:function(){return this.childNodes[0]||null}};function Ze(){return this.childNodes.length>0}var K=function(t){q in t||(t[q]=!0,Object.defineProperties(t,{childNodes:je,firstChild:Ue}),t.hasChildNodes=Ze)};function qe(){var t;(t=this.frag[0]).before.apply(t,arguments)}function Ke(){var t=this.frag,e=t.splice(0,t.length);e.forEach(function(i){i.remove()})}var We=function t(e){var i;return(i=Array.prototype).concat.apply(i,e.map(function(n){return T(n)?t(n.frag):n}))},Ge=function(t,e){var i=t[$];e.before(i),N(i,t),t.frag.unshift(i)};function W(t){if(T(this)){var e=this.frag.indexOf(t);if(e>-1){var i=this.frag.splice(e,1),n=i[0];this.frag.length===0&&Ge(this,n),t.remove()}}else{var a=rt(this),s=a.indexOf(t);s>-1&&t.remove()}return t}function G(t,e){var i=this,n=t.frag||[t];if(T(this)){if(t[w]===this&&t.parentElement)return t;var a=this.frag;if(e){var s=a.indexOf(e);s>-1&&(a.splice.apply(a,[s,0].concat(n)),e.before.apply(e,n))}else{var o=a[a.length-1];a.push.apply(a,n),o.after.apply(o,n)}ct(this)}else e?this.childNodes.includes(e)&&e.before.apply(e,n):this.append.apply(this,n);n.forEach(function(l){N(l,i)});var r=n[n.length-1];return E(r),t}function Xe(t){if(t[w]===this&&t.parentElement)return t;var e=this.frag,i=e[e.length-1];return i.after(t),N(t,this),ct(this),e.push(t),t}var ct=function(t){var e=t[$];t.frag[0]===e&&(t.frag.shift(),e.remove())},Ye={set:function(t){var e=this;if(this.frag[0]!==this[$]&&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""}},Je={inserted:function(t){var e=t.parentNode,i=t.nextSibling,n=t.previousSibling,a=Array.from(t.childNodes),s=document.createComment("");a.length===0&&a.push(s),t.frag=a,t[$]=s;var o=document.createDocumentFragment();o.append.apply(o,We(a)),t.replaceWith(o),a.forEach(function(r){N(r,t),E(r)}),K(t),Object.assign(t,{remove:Ke,appendChild:Xe,insertBefore:G,removeChild:W,before:qe}),Object.defineProperty(t,"innerHTML",Ye),e&&(Object.assign(e,{removeChild:W,insertBefore:G}),N(t,e),K(e)),i&&E(t),n&&E(n)},unbind:function(t){t.remove()}},Qe={name:"Fragment",directives:{frag:Je},render:function(t){return t("div",{directives:[{name:"frag"}]},this.$slots.default)}};const ti=L({__name:"ActivityGroup",props:{activities:null},setup(t){const e=t,i=z(()=>{const a=S(),s=S().subtract(1,"day"),o=S(e.activities[0].datetime);return o.isSame(a,"day")?v("activity","Today"):o.isSame(s,"day")?v("activity","Yesterday"):o.format("LL")}),n=z(()=>{const a=S(e.activities[0].datetime).format("LL");return a!==i.value?a:void 0});return{__sfc:!0,props:e,dateText:i,fullDate:n,Activity:gt,Fragment:Qe}}});var ei=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)])},ii=[],ni=P(ti,ei,ii,!1,null,"c16e5a63");const ai=ni.exports,si='';function oi(){var t=ut().proxy.$root;if(!t._$route){var e=dt(!0).run(function(){return ht(Object.assign({},t.$router.currentRoute))});t._$route=e,t.$router.afterEach(function(i){Object.assign(e,i)})}return t._$route}const li=L({__name:"ActivityAppFeed",props:{filter:{default:"all"}},setup(t){const e=t,i=O(D,"navigationList"),n=oi(),a=_(!1),s=_(!0),o=_([]),r=_(),l=_();At(l,async()=>{s.value&&await h()},{distance:100});const p=z(()=>{const u={};for(const f of o.value){const m=S(f.datetime).format("LL");u[m]===void 0?u[m]=[f]:u[m].push(f)}return u}),b=z(()=>i.find(u=>u.id===n.params.filter).name);async function h(){var u,f;if(!a.value)try{const m=(u=r.value)!=null?u:"0";a.value=!0;const H=await tt.get(Lt("apps/activity/api/v2/activity/{filter}?format=json&previews=true&since={since}",{filter:e.filter,since:m}));o.value.push(...H.data.ocs.data.map(pt=>new Ct(pt))),r.value=H.headers["x-activity-last-given"],s.value=!0}catch(m){if($t.isAxiosError(m)&&((f=m.response)==null?void 0:f.status)===304){s.value=!1;return}V.error(m),it(v("activity","Could not load activities"))}finally{a.value=!1}}return ft(()=>{h()}),mt(e,()=>{o.value=[],r.value=void 0,h()}),{__sfc:!0,navigationList:i,route:n,props:e,loading:a,hasMoreActivites:s,allActivities:o,lastActivityLoaded:r,container:l,groupedActivities:p,headingTitle:b,loadActivities:h,NcAppContent:Te,NcIconSvgWrapper:X,NcEmptyContent:yt,NcLoadingIcon:Q,ActivityGroup:ai,appIconSVG:si,t:v}}});var ri=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,a){return e(i.ActivityGroup,{key:a,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)},ci=[],pi=P(li,ri,ci,!1,null,"6798da20");const ui=pi.exports,di={name:"NcAppNavigationList"};var hi=function(){var t=this,e=t._self._c;return e("ul",{staticClass:"app-navigation-list"},[t._t("default")],2)},fi=[],mi=c(di,hi,fi,!1,null,"058e6060");const vi=mi.exports;C(Bt);const gi={name:"MenuIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var yi=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()])])])},Ci=[],_i=c(gi,yi,Ci,!1,null,null);const xi=_i.exports,bi={name:"MenuOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Si=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()])])])},zi=[],wi=c(bi,Si,zi,!1,null,null);const Ni=wi.exports,ki={name:"NcAppNavigationToggle",components:{NcButton:x,MenuIcon:xi,MenuOpenIcon:Ni},props:{open:{type:Boolean,required:!0}},emits:["update:open"],computed:{label(){return this.open?d("Close navigation"):d("Open navigation")}},methods:{toggleNavigation(){this.$emit("update:open",!this.open)}}};var Pi=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)},Mi=[],Ei=c(ki,Pi,Mi,!1,null,"b6024aba");const Di=Ei.exports,Ai={name:"NcAppNavigation",components:{NcAppNavigationList:vi,NcAppNavigationToggle:Di},inject:{setHasAppNavigation:{default:()=>()=>g.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:k()}},data(){return{open:!this.isMobile,focusTrap:null}},watch:{isMobile(){this.open=!this.isMobile,this.toggleFocusTrap()},open(){this.toggleFocusTrap()}},mounted(){this.setHasAppNavigation(!0),Nt("toggle-navigation",this.toggleNavigationByEventBus),y("navigation-toggled",{open:this.open}),this.focusTrap=It(this.$refs.appNavigationContainer,{allowOutsideClick:!0,fallbackFocus:this.$refs.appNavigationContainer,trapStack:Vt(),escapeDeactivates:!1}),this.toggleFocusTrap()},unmounted(){this.setHasAppNavigation(!1),kt("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 Li=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)},$i=[],Bi=c(Ai,Li,$i,!1,null,"e7d078cc");const Ii=Bi.exports,Vi={name:"NcActionButton",components:{CheckIcon:_t,ChevronRightIcon:Ot},mixins:[xt],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 Oi=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)])},Ti=[],Hi=c(Vi,Oi,Ti,!1,null,"dba65098");const Ri=Hi.exports,Fi={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))}},ji=null,Ui=null;var Zi=c(Fi,ji,Ui,!1,null,null);const qi=Zi.exports,Ki={name:"ChevronUpIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Wi=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()])])])},Gi=[],Xi=c(Ki,Wi,Gi,!1,null,null);const Yi=Xi.exports;C(Tt);const Ji={name:"NcInputConfirmCancel",components:{NcButton:x,ArrowRight:Y,Close:Ht},props:{primary:{default:!1,type:Boolean},placeholder:{default:"",type:String},value:{default:"",type:String}},emits:["input","confirm","cancel"],data(){return{labelConfirm:d("Confirm changes"),labelCancel:d("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 Qi=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)])},tn=[],en=c(Ji,Qi,tn,!1,null,"0e795eb7");const nn=en.exports;C(Rt);const an={name:"NcAppNavigationIconCollapsible",components:{NcButton:x,ChevronDown:bt,ChevronUp:Yi},props:{open:{type:Boolean,default:!0}},emits:["click"],computed:{labelButton(){return this.open?d("Collapse menu"):d("Open menu")}},methods:{onClick(t){this.$emit("click",t)}}};var sn=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}])})},on=[],ln=c(an,sn,on,!1,null,"cadd59ae");const rn=ln.exports;C(jt,Ft);const cn={name:"PencilIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var pn=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()])])])},un=[],dn=c(cn,pn,un,!1,null,null);const hn=dn.exports,fn={name:"UndoIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var mn=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()])])])},vn=[],gn=c(fn,mn,vn,!1,null,null);const yn=gn.exports,Cn={name:"NcAppNavigationItem",components:{NcActions:Ut,NcActionButton:Ri,NcAppNavigationIconCollapsible:rn,NcInputConfirmCancel:nn,NcLoadingIcon:Q,NcVNodes:qi,Pencil:hn,Undo:yn},props:{active:{type:Boolean,default:!1},name:{type:String,required:!0},title:{type:String,default:null},id:{type:String,default:()=>"app-navigation-item-"+Zt(),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:k()}},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:d("Edit item")},undoButtonAriaLabel(){return d("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 _n=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:a}){return[e("div",{staticClass:"app-navigation-entry",class:{"app-navigation-entry--editing":t.editingActive,"app-navigation-entry--deleted":t.undo,active:a&&t.to||t.active}},[t.undo?t._e():e("a",{staticClass:"app-navigation-entry-link",attrs:{"aria-current":t.active||a&&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(s){return t.onClick(s,n,i)},focus:t.handleFocus,keydown:function(s){return!s.type.indexOf("key")&&t._k(s.keyCode,"tab",9,s.key,"Tab")||s.ctrlKey||s.shiftKey||s.altKey||s.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:a&&t.to||t.active},on:{cancel:t.cancelEditing,confirm:t.handleEditingDone},model:{value:t.editingValue,callback:function(s){t.editingValue=s},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:a&&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(s){return s.preventDefault(),s.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)},xn=[],bn=c(Cn,_n,xn,!1,null,"97fce21a");const Sn=bn.exports,zn={props:{excludeClickOutsideSelectors:{type:[String,Array],default:()=>[]}},computed:{clickOutsideOptions(){return{ignore:Array.isArray(this.excludeClickOutsideSelectors)?this.excludeClickOutsideSelectors:[this.excludeClickOutsideSelectors]}}}};C(qt);const wn={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Nn=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()])])])},kn=[],Pn=c(wn,Nn,kn,!1,null,null);const Mn=Pn.exports,En={directives:{ClickOutside:St},components:{Cog:Mn},mixins:[zn],props:{name:{type:String,required:!1,default:d("Settings")}},data(){return{open:!1}},computed:{clickOutsideConfig(){return[this.closeMenu,this.clickOutsideOptions]}},methods:{toggleMenu(){this.open=!this.open},closeMenu(){this.open=!1}}};var Dn=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)},An=[],Ln=c(En,Dn,An,!1,null,"981e215c");const $n=Ln.exports,Bn={name:"ContentCopyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var In=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()])])])},Vn=[],On=P(Bn,In,Vn,!1,null,null);const Tn=On.exports,Hn=L({__name:"ActivityAppNavigation",setup(t){const{rssLink:e,personalSettingsLink:i}=O(D,"settings"),n=O(D,"navigationList"),a=_(e),s=z(()=>!!a.value);async function o(){try{const{data:l}=await tt.post(et("/apps/activity/settings/feed"),{enable:!s.value});a.value=l.data.rsslink}catch(l){it(v("activity","Could not enable RSS link")),V.error(l)}}async function r(){try{window.navigator.clipboard.writeText(a.value),Wt(v("activity","RSS link copied to clipboard"))}catch(l){V.debug(l),window.prompt(v("activity","Could not copy the RSS link, please copy manually:"),a.value)}}return{__sfc:!0,initialRSSLink:e,personalSettingsLink:i,navigationList:n,rssLink:a,hasRSSLink:s,toggleRSSLink:o,copyRSSLink:r,t:v,NcAppNavigation:Ii,NcAppNavigationItem:Sn,NcAppNavigationSettings:$n,NcButton:x,NcCheckboxRadioSwitch:Kt,NcInputField:zt,IconContentCopy:Tn}}});var Rn=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}])})},Fn=[],jn=P(Hn,Rn,Fn,!1,null,null);const Un=jn.exports,Zn=[{path:"/",name:"root",redirect:{path:"/all"}},{path:"/:filter?",components:{default:ui,navigation:Un},props:{default:!0}}];g.prototype.t=v,g.prototype.n=vt,g.use(J);const qn=new J({mode:"history",base:et("/apps/activity"),linkActiveClass:"active",routes:Zn});new g({el:"#content",name:"ActivityRoot",router:qn,render:t=>t(ue)});
diff --git a/js/activity-app.mjs.map b/js/activity-app.mjs.map
index d706a81a0..ea003cb24 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-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":["let urlAlphabet =\n 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'\nlet customAlphabet = (alphabet, defaultSize = 21) => {\n return (size = defaultSize) => {\n let id = ''\n let i = size\n while (i--) {\n id += alphabet[(Math.random() * alphabet.length) | 0]\n }\n return id\n }\n}\nlet nanoid = (size = 21) => {\n let id = ''\n let i = size\n while (i--) {\n id += urlAlphabet[(Math.random() * 64) | 0]\n }\n return id\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';\nconst navigationSvg = '\\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\n\n\n\n\n\n","export default \"\"","/*!\n * vue-router v3.6.5\n * (c) 2022 Evan You\n * @license MIT\n */\nimport { getCurrentInstance, effectScope, shallowReactive, onUnmounted, computed, unref } from 'vue';\n\n// dev only warn if no current instance\n\nfunction throwNoCurrentInstance (method) {\n if (!getCurrentInstance()) {\n throw new Error(\n (\"[vue-router]: Missing current instance. \" + method + \"() must be called inside \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