From 07223b84fe9fd9761e54fb5b3878d0c329bd4452 Mon Sep 17 00:00:00 2001 From: nextcloud-command Date: Fri, 24 Oct 2025 09:36:38 +0000 Subject: [PATCH] chore(assets): Recompile assets Signed-off-by: nextcloud-command --- dist/settings-users-3239.js | 4 ++-- dist/settings-users-3239.js.map | 2 +- dist/settings-vue-settings-apps-users-management.js | 4 ++-- dist/settings-vue-settings-apps-users-management.js.map | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/dist/settings-users-3239.js b/dist/settings-users-3239.js index e9068a51e7d..46e3a475834 100644 --- a/dist/settings-users-3239.js +++ b/dist/settings-users-3239.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunknextcloud=self.webpackChunknextcloud||[]).push([[3239,7471],{7515:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".dialog__note[data-v-29922c80]{font-weight:normal}fieldset[data-v-29922c80]{font-weight:bold}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/UserSettingsDialog.vue"],names:[],mappings:"AAEC,+BACC,kBAAA,CAIF,0BACC,gBAAA",sourcesContent:["\n.dialog {\n\t&__note {\n\t\tfont-weight: normal;\n\t}\n}\n\nfieldset {\n\tfont-weight: bold;\n}\n"],sourceRoot:""}]);const o=r},11196:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".app-content[data-v-4684ed00]{display:flex;overflow:hidden;flex-direction:column;max-height:100%}","",{version:3,sources:["webpack://./apps/settings/src/views/UserManagement.vue"],names:[],mappings:"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA",sourcesContent:["\n.app-content {\n\t// Virtual list needs to be full height and is scrollable\n\tdisplay: flex;\n\toverflow: hidden;\n\tflex-direction: column;\n\tmax-height: 100%;\n}\n"],sourceRoot:""}]);const o=r},12795:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".user-list[data-v-21942da5]{--avatar-cell-width: 48px;--cell-padding: 7px;--cell-width: 200px;--cell-width-large: 300px;--cell-min-width: calc(var(--cell-width) - (2 * var(--cell-padding)));--sticky-column-z-index: calc(var(--vs-dropdown-z-index) + 1);display:block;overflow:auto;height:100%;will-change:scroll-position}.user-list__header[data-v-21942da5],.user-list__footer[data-v-21942da5]{position:sticky;display:block}.user-list__header[data-v-21942da5]{top:0;z-index:calc(var(--sticky-column-z-index) + 1)}.user-list__footer[data-v-21942da5]{inset-inline-start:0}.user-list__body[data-v-21942da5]{display:flex;flex-direction:column;width:100%}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/VirtualList.vue"],names:[],mappings:"AACA,4BACC,yBAAA,CACA,mBAAA,CACA,mBAAA,CACA,yBAAA,CACA,qEAAA,CACA,6DAAA,CAGA,aAAA,CACA,aAAA,CACA,WAAA,CACA,2BAAA,CAEA,wEAEC,eAAA,CAEA,aAAA,CAGD,oCACC,KAAA,CACA,8CAAA,CAGD,oCACC,oBAAA,CAGD,kCACC,YAAA,CACA,qBAAA,CACA,UAAA",sourcesContent:["\n.user-list {\n\t--avatar-cell-width: 48px;\n\t--cell-padding: 7px;\n\t--cell-width: 200px;\n\t--cell-width-large: 300px;\n\t--cell-min-width: calc(var(--cell-width) - (2 * var(--cell-padding)));\n\t--sticky-column-z-index: calc(var(--vs-dropdown-z-index) + 1); // Keep the sticky column on top of the select dropdown\n\n\t// Necessary for virtual scroll optimized rendering\n\tdisplay: block;\n\toverflow: auto;\n\theight: 100%;\n\twill-change: scroll-position;\n\n\t&__header,\n\t&__footer {\n\t\tposition: sticky;\n\t\t// Fix sticky positioning in Firefox\n\t\tdisplay: block;\n\t}\n\n\t&__header {\n\t\ttop: 0;\n\t\tz-index: calc(var(--sticky-column-z-index) + 1);\n\t}\n\n\t&__footer {\n\t\tinset-inline-start: 0;\n\t}\n\n\t&__body {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\twidth: 100%;\n\t}\n}\n"],sourceRoot:""}]);const o=r},18033:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".footer[data-v-20636959]{position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.footer__cell[data-v-20636959]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.footer__cell strong[data-v-20636959],.footer__cell span[data-v-20636959],.footer__cell label[data-v-20636959]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.footer__cell--avatar[data-v-20636959],.footer__cell--displayname[data-v-20636959]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.footer__cell--avatar[data-v-20636959]{inset-inline-start:0}.footer__cell--displayname[data-v-20636959]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.footer__cell--username[data-v-20636959]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.footer__cell--avatar[data-v-20636959]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.footer__cell--multiline span[data-v-20636959]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.footer__cell--multiline span[data-v-20636959]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.footer__cell--large[data-v-20636959]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.footer__cell--obfuscated[data-v-20636959]{min-width:400px;width:400px}.footer__cell--fill[data-v-20636959]{min-width:var(--cell-width-large);width:100%}.footer__cell--actions[data-v-20636959]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.footer__subtitle[data-v-20636959]{color:var(--color-text-maxcontrast)}.footer__cell[data-v-20636959]{position:sticky;color:var(--color-text-maxcontrast)}.footer__cell--loading[data-v-20636959]{inset-inline-start:0;min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0}.footer__cell--count[data-v-20636959]{inset-inline-start:var(--avatar-cell-width);min-width:var(--cell-width);width:var(--cell-width)}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/UserListFooter.vue","webpack://./apps/settings/src/components/Users/shared/styles.scss"],names:[],mappings:"AAGA,yBCGC,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CAIA,+BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,+GAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,mFAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,uCACC,oBAAA,CAGD,4CACC,2CAAA,CACA,+CAAA,CAAA,CAIF,yCACC,yDAAA,CAGD,uCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,+CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,+CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,sCACC,iCAAA,CACA,6BAAA,CAGD,2CACC,eAAA,CACA,WAAA,CAID,qCACC,iCAAA,CACA,UAAA,CAGD,wCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,mCACC,mCAAA,CDpGD,+BACC,eAAA,CACA,mCAAA,CAEA,wCACC,oBAAA,CACA,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CAGD,sCACC,2CAAA,CACA,2BAAA,CACA,uBAAA",sourcesContent:["\n@use './shared/styles';\n\n.footer {\n\t@include styles.row;\n\t@include styles.cell;\n\n\t&__cell {\n\t\tposition: sticky;\n\t\tcolor: var(--color-text-maxcontrast);\n\n\t\t&--loading {\n\t\t\tinset-inline-start: 0;\n\t\t\tmin-width: var(--avatar-cell-width);\n\t\t\twidth: var(--avatar-cell-width);\n\t\t\talign-items: center;\n\t\t\tpadding: 0;\n\t\t}\n\n\t\t&--count {\n\t\t\tinset-inline-start: var(--avatar-cell-width);\n\t\t\tmin-width: var(--cell-width);\n\t\t\twidth: var(--cell-width);\n\t\t}\n\t}\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n@mixin row {\n\tposition: relative;\n\tdisplay: flex;\n\tmin-width: 100%;\n\twidth: fit-content;\n\theight: var(--row-height);\n\tbackground-color: var(--color-main-background);\n}\n\n@mixin cell {\n\t&__cell {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\tpadding: 0 var(--cell-padding);\n\t\tmin-width: var(--cell-width);\n\t\twidth: var(--cell-width);\n\t\tcolor: var(--color-main-text);\n\n\t\tstrong,\n\t\tspan,\n\t\tlabel {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow-wrap: anywhere;\n\t\t}\n\n\t\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\n\t\t\t&--avatar,\n\t\t\t&--displayname {\n\t\t\t\tposition: sticky;\n\t\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\t\tbackground-color: var(--color-main-background);\n\t\t\t}\n\n\t\t\t&--avatar {\n\t\t\t\tinset-inline-start: 0;\n\t\t\t}\n\n\t\t\t&--displayname {\n\t\t\t\tinset-inline-start: var(--avatar-cell-width);\n\t\t\t\tborder-inline-end: 1px solid var(--color-border);\n\t\t\t}\n\t\t}\n\n\t\t&--username {\n\t\t\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\n\t\t}\n\n\t\t&--avatar {\n\t\t\tmin-width: var(--avatar-cell-width);\n\t\t\twidth: var(--avatar-cell-width);\n\t\t\talign-items: center;\n\t\t\tpadding: 0;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&--multiline {\n\t\t\tspan {\n\t\t\t\tline-height: 1.3em;\n\t\t\t\twhite-space: unset;\n\n\t\t\t\t@supports (-webkit-line-clamp: 2) {\n\t\t\t\t\tdisplay: -webkit-box;\n\t\t\t\t\t-webkit-line-clamp: 2;\n\t\t\t\t\t-webkit-box-orient: vertical;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&--large {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: var(--cell-width-large);\n\t\t}\n\n\t\t&--obfuscated {\n\t\t\tmin-width: 400px;\n\t\t\twidth: 400px;\n\t\t}\n\n\t\t// Fill remaining row space with cell\n\t\t&--fill {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t&--actions {\n\t\t\tposition: sticky;\n\t\t\tinset-inline-end: 0;\n\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tmin-width: 110px;\n\t\t\twidth: 110px;\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tborder-inline-start: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t&__subtitle {\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n}\n"],sourceRoot:""}]);const o=r},24882:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".header[data-v-5c0f8828]{border-bottom:1px solid var(--color-border);position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.header__cell[data-v-5c0f8828]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.header__cell strong[data-v-5c0f8828],.header__cell span[data-v-5c0f8828],.header__cell label[data-v-5c0f8828]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.header__cell--avatar[data-v-5c0f8828],.header__cell--displayname[data-v-5c0f8828]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.header__cell--avatar[data-v-5c0f8828]{inset-inline-start:0}.header__cell--displayname[data-v-5c0f8828]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.header__cell--username[data-v-5c0f8828]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.header__cell--avatar[data-v-5c0f8828]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.header__cell--multiline span[data-v-5c0f8828]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.header__cell--multiline span[data-v-5c0f8828]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.header__cell--large[data-v-5c0f8828]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.header__cell--obfuscated[data-v-5c0f8828]{min-width:400px;width:400px}.header__cell--fill[data-v-5c0f8828]{min-width:var(--cell-width-large);width:100%}.header__cell--actions[data-v-5c0f8828]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.header__subtitle[data-v-5c0f8828]{color:var(--color-text-maxcontrast)}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/UserListHeader.vue","webpack://./apps/settings/src/components/Users/shared/styles.scss"],names:[],mappings:"AAGA,yBACC,2CAAA,CCEA,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CAIA,+BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,+GAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,mFAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,uCACC,oBAAA,CAGD,4CACC,2CAAA,CACA,+CAAA,CAAA,CAIF,yCACC,yDAAA,CAGD,uCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,+CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,+CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,sCACC,iCAAA,CACA,6BAAA,CAGD,2CACC,eAAA,CACA,WAAA,CAID,qCACC,iCAAA,CACA,UAAA,CAGD,wCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,mCACC,mCAAA",sourcesContent:["\n@use './shared/styles';\n\n.header {\n\tborder-bottom: 1px solid var(--color-border);\n\n\t@include styles.row;\n\t@include styles.cell;\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n@mixin row {\n\tposition: relative;\n\tdisplay: flex;\n\tmin-width: 100%;\n\twidth: fit-content;\n\theight: var(--row-height);\n\tbackground-color: var(--color-main-background);\n}\n\n@mixin cell {\n\t&__cell {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\tpadding: 0 var(--cell-padding);\n\t\tmin-width: var(--cell-width);\n\t\twidth: var(--cell-width);\n\t\tcolor: var(--color-main-text);\n\n\t\tstrong,\n\t\tspan,\n\t\tlabel {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow-wrap: anywhere;\n\t\t}\n\n\t\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\n\t\t\t&--avatar,\n\t\t\t&--displayname {\n\t\t\t\tposition: sticky;\n\t\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\t\tbackground-color: var(--color-main-background);\n\t\t\t}\n\n\t\t\t&--avatar {\n\t\t\t\tinset-inline-start: 0;\n\t\t\t}\n\n\t\t\t&--displayname {\n\t\t\t\tinset-inline-start: var(--avatar-cell-width);\n\t\t\t\tborder-inline-end: 1px solid var(--color-border);\n\t\t\t}\n\t\t}\n\n\t\t&--username {\n\t\t\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\n\t\t}\n\n\t\t&--avatar {\n\t\t\tmin-width: var(--avatar-cell-width);\n\t\t\twidth: var(--avatar-cell-width);\n\t\t\talign-items: center;\n\t\t\tpadding: 0;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&--multiline {\n\t\t\tspan {\n\t\t\t\tline-height: 1.3em;\n\t\t\t\twhite-space: unset;\n\n\t\t\t\t@supports (-webkit-line-clamp: 2) {\n\t\t\t\t\tdisplay: -webkit-box;\n\t\t\t\t\t-webkit-line-clamp: 2;\n\t\t\t\t\t-webkit-box-orient: vertical;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&--large {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: var(--cell-width-large);\n\t\t}\n\n\t\t&--obfuscated {\n\t\t\tmin-width: 400px;\n\t\t\twidth: 400px;\n\t\t}\n\n\t\t// Fill remaining row space with cell\n\t\t&--fill {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t&--actions {\n\t\t\tposition: sticky;\n\t\t\tinset-inline-end: 0;\n\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tmin-width: 110px;\n\t\t\twidth: 110px;\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tborder-inline-start: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t&__subtitle {\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n}\n"],sourceRoot:""}]);const o=r},27514:t=>{t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M18.4%207.4L17%206l-6%206%206%206%201.4-1.4-4.6-4.6%204.6-4.6m-6%200L11%206l-6%206%206%206%201.4-1.4L7.8%2012l4.6-4.6z%27/%3e%3c/svg%3e"},27518:t=>{t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M15.4%2016.6L10.8%2012l4.6-4.6L14%206l-6%206%206%206%201.4-1.4z%27/%3e%3c/svg%3e"},38775:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".modal__header[data-v-0540d351]{margin:0}.modal__content[data-v-0540d351]{display:flex;flex-direction:column;align-items:center;padding:20px;gap:4px 0}.modal__button-row[data-v-0540d351]{display:flex;width:100%;justify-content:space-between}","",{version:3,sources:["webpack://./apps/settings/src/components/GroupListItem.vue"],names:[],mappings:"AAEC,gCACC,QAAA,CAGD,iCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,YAAA,CACA,SAAA,CAGD,oCACC,YAAA,CACA,UAAA,CACA,6BAAA",sourcesContent:["\n.modal {\n\t&__header {\n\t\tmargin: 0;\n\t}\n\n\t&__content {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\tpadding: 20px;\n\t\tgap: 4px 0;\n\t}\n\n\t&__button-row {\n\t\tdisplay: flex;\n\t\twidth: 100%;\n\t\tjustify-content: space-between;\n\t}\n}\n"],sourceRoot:""}]);const o=r},46984:(t,e,s)=>{s.d(e,{FF:()=>d,Iu:()=>l,N_:()=>o});var a=s(19051),i=s(63814),n=s(36117);const r=t=>({id:t.id,name:t.displayname,usercount:t.usercount,disabled:t.disabled,canAdd:t.canAdd,canRemove:t.canRemove}),o=({search:t,offset:e,limit:s})=>{const o=new AbortController;return new n.CancelablePromise((async(n,l,d)=>{d((()=>o.abort()));try{const{data:l}=await a.Ay.get((0,i.KT)("/cloud/groups/details?search={search}&offset={offset}&limit={limit}",{search:t,offset:e,limit:s}),{signal:o.signal});n((l.ocs?.data?.groups??[]).map(r))}catch(t){l(t)}}))},l=async({userId:t})=>{const e=(0,i.KT)("/cloud/users/{userId}/groups/details",{userId:t}),{data:s}=await a.Ay.get(e);return(s.ocs?.data?.groups??[]).map(r)},d=async({userId:t})=>{const e=(0,i.KT)("/cloud/users/{userId}/subadmins/details",{userId:t}),{data:s}=await a.Ay.get(e);return(s.ocs?.data?.groups??[]).map(r)}},58688:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".account-management__navigation[data-v-539a4ad0] .app-navigation__body{will-change:scroll-position}.account-management__system-list[data-v-539a4ad0]{height:auto !important;overflow:visible !important}.account-management__group-list[data-v-539a4ad0]{height:100% !important}.account-management__settings-toggle[data-v-539a4ad0]{margin-bottom:12px}","",{version:3,sources:["webpack://./apps/settings/src/views/UserManagementNavigation.vue"],names:[],mappings:"AAGE,uEACC,2BAAA,CAGF,kDACC,sBAAA,CACA,2BAAA,CAGD,iDACC,sBAAA,CAGD,sDACC,kBAAA",sourcesContent:["\n.account-management {\n\t&__navigation {\n\t\t:deep(.app-navigation__body) {\n\t\t\twill-change: scroll-position;\n\t\t}\n\t}\n\t&__system-list {\n\t\theight: auto !important;\n\t\toverflow: visible !important;\n\t}\n\n\t&__group-list {\n\t\theight: 100% !important;\n\t}\n\n\t&__settings-toggle {\n\t\tmargin-bottom: 12px;\n\t}\n}\n"],sourceRoot:""}]);const o=r},62871:(e,s,a)=>{a.r(s),a.d(s,{default:()=>ss});var i=a(53334),n=a(61338),r=a(85471),o=a(18195),l=a(9165),d=a(85168),c=a(54914),u=a(32190),g=a(6695),A=a(2645),p=a(55042),h=a(17334),m=a.n(h),C=a(36620);r.Ay.directive("elementVisibility",p.Zx);const v=r.Ay.extend({name:"VirtualList",props:{dataComponent:{type:[Object,Function],required:!0},dataKey:{type:String,required:!0},dataSources:{type:Array,required:!0},itemHeight:{type:Number,required:!0},extraProps:{type:Object,default:()=>({})}},data:()=>({bufferItems:3,index:0,headerHeight:0,tableHeight:0,resizeObserver:null}),computed:{startIndex(){return Math.max(0,this.index-3)},shownItems(){return Math.ceil((this.tableHeight-this.headerHeight)/this.itemHeight)+6},renderedItems(){return this.dataSources.slice(this.startIndex,this.startIndex+this.shownItems)},tbodyStyle(){const t=this.startIndex+this.shownItems>this.dataSources.length,e=this.dataSources.length-this.startIndex-this.shownItems,s=Math.min(this.dataSources.length-this.startIndex,e);return{paddingTop:this.startIndex*this.itemHeight+"px",paddingBottom:t?0:s*this.itemHeight+"px"}}},mounted(){const t=this.$el,e=this.$refs?.tfoot,s=this.$refs?.thead;this.resizeObserver=new ResizeObserver(m()((()=>{this.headerHeight=s?.clientHeight??0,this.tableHeight=t?.clientHeight??0,C.A.debug("VirtualList resizeObserver updated"),this.onScroll()}),100,!1)),this.resizeObserver.observe(t),this.resizeObserver.observe(e),this.resizeObserver.observe(s),this.$el.addEventListener("scroll",this.onScroll)},beforeDestroy(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{handleFooterVisibility(t){t&&this.$emit("scroll-end")},onScroll(){this.index=Math.max(0,Math.round(this.$el.scrollTop/this.itemHeight))}}});var w=a(85072),f=a.n(w),_=a(97825),b=a.n(_),y=a(77659),x=a.n(y),N=a(55056),k=a.n(N),S=a(10540),G=a.n(S),U=a(41113),L=a.n(U),D=a(12795),B={};B.styleTagTransform=L(),B.setAttributes=k(),B.insert=x().bind(null,"head"),B.domAPI=b(),B.insertStyleElement=G(),f()(D.A,B),D.A&&D.A.locals&&D.A.locals;var I=a(14486);const q=(0,I.A)(v,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("table",{staticClass:"user-list"},[t._t("before"),t._v(" "),e("thead",{ref:"thead",staticClass:"user-list__header",attrs:{role:"rowgroup"}},[t._t("header")],2),t._v(" "),e("tbody",{staticClass:"user-list__body",style:t.tbodyStyle},t._l(t.renderedItems,(function(s,a){return e(t.dataComponent,t._b({key:s[t.dataKey],tag:"component",attrs:{user:s,visible:(a>=t.bufferItems||t.index<=t.bufferItems)&&a({possibleManagers:[],managerInputLabel:t("settings","Manager"),managerLabel:t("settings","Set line manager"),promise:null}),computed:{showConfig(){return this.$store.getters.getShowConfig},settings(){return this.$store.getters.getServerData},usernameLabel(){return this.settings.newUserGenerateUserID?t("settings","Account name will be autogenerated"):t("settings","Account name (required)")},minPasswordLength(){return this.$store.getters.getPasswordPolicyMinLength},availableGroups(){return(this.settings.isAdmin||this.settings.isDelegatedAdmin?this.$store.getters.getSortedGroups:this.$store.getters.getSubAdminGroups).filter((t=>"__nc_internal_recent"!==t.id&&"disabled"!==t.id))},languages(){return[{name:t("settings","Common languages"),languages:this.settings.languages.commonLanguages},...this.settings.languages.commonLanguages,{name:t("settings","Other languages"),languages:this.settings.languages.otherLanguages},...this.settings.languages.otherLanguages]}},async beforeMount(){await this.searchUserManager()},mounted(){this.$refs.username?.focus?.()},methods:{async createUser(){this.loading.all=!0;try{await this.$store.dispatch("addUser",{userid:this.newUser.id,password:this.newUser.password,displayName:this.newUser.displayName,email:this.newUser.mailAddress,groups:this.newUser.groups.map((t=>t.id)),subadmin:this.newUser.subAdminsGroups.map((t=>t.id)),quota:this.newUser.quota.id,language:this.newUser.language.code,manager:this.newUser.manager.id}),this.$emit("reset"),this.$refs.username?.focus?.(),this.$emit("closing")}catch(t){if(this.loading.all=!1,t.response&&t.response.data&&t.response.data.ocs&&t.response.data.ocs.meta){const e=t.response.data.ocs.meta.statuscode;102===e?this.$refs.username?.focus?.():107===e&&this.$refs.password?.focus?.()}}},async searchGroups(e,s){if(this.settings.isAdmin||this.settings.isDelegatedAdmin){this.promise&&this.promise.cancel(),s(!0);try{this.promise=(0,P.N_)({search:e,offset:0,limit:25});const t=await this.promise;for(const e of t)this.$store.commit("addGroup",e)}catch(e){C.A.error(t("settings","Failed to search groups"),{error:e})}this.promise=null,s(!1)}},async createGroup({name:e}){this.loading.groups=!0;try{await this.$store.dispatch("addGroup",e),this.newUser.groups.push({id:e,name:e})}catch(e){C.A.error(t("settings","Failed to create group"),{error:e})}this.loading.groups=!1},async addGroup(t){t.isCreating||!1!==t.canAdd&&this.newUser.groups.push(t)},validateQuota(t){const e=OC.Util.computerFileSize(t);return null!==e&&e>=0?(t=(0,O.v7)((0,O.lT)(t,!0)),this.newUser.quota={id:t,label:t},this.newUser.quota):(this.newUser.quota=this.quotaOptions[0],this.quotaOptions[0])},languageFilterBy:(t,e,s)=>t.languages?t.languages.some((({name:t})=>t.toLocaleLowerCase().includes(s.toLocaleLowerCase()))):(e||"").toLocaleLowerCase().includes(s.toLocaleLowerCase()),async searchUserManager(t){await this.$store.dispatch("searchUsers",{offset:0,limit:10,search:t}).then((t=>{const e=t?.data?Object.values(t?.data.ocs.data.users):[];e.length>0&&(this.possibleManagers=e)}))}}};var R=a(83567),Q={};Q.styleTagTransform=L(),Q.setAttributes=k(),Q.insert=x().bind(null,"head"),Q.domAPI=b(),Q.insertStyleElement=G(),f()(R.A,Q),R.A&&R.A.locals&&R.A.locals;var W=(0,I.A)(z,(function(){var t=this,e=t._self._c;return e("NcDialog",t._g({staticClass:"dialog",attrs:{size:"small",name:t.t("settings","New account"),"out-transition":""},scopedSlots:t._u([{key:"actions",fn:function(){return[e("NcButton",{staticClass:"dialog__submit",attrs:{"data-test":"submit",form:"new-user-form",type:"primary","native-type":"submit"}},[t._v("\n\t\t\t"+t._s(t.t("settings","Add new account"))+"\n\t\t")])]},proxy:!0}])},t.$listeners),[e("form",{staticClass:"dialog__form",attrs:{id:"new-user-form","data-test":"form",disabled:t.loading.all},on:{submit:function(e){return e.preventDefault(),t.createUser.apply(null,arguments)}}},[e("NcTextField",{ref:"username",staticClass:"dialog__item",attrs:{"data-test":"username",value:t.newUser.id,disabled:t.settings.newUserGenerateUserID,label:t.usernameLabel,autocapitalize:"none",autocomplete:"off",spellcheck:"false",pattern:"[a-zA-Z0-9 _\\.@\\-']+",required:""},on:{"update:value":function(e){return t.$set(t.newUser,"id",e)}}}),t._v(" "),e("NcTextField",{staticClass:"dialog__item",attrs:{"data-test":"displayName",value:t.newUser.displayName,label:t.t("settings","Display name"),autocapitalize:"none",autocomplete:"off",spellcheck:"false"},on:{"update:value":function(e){return t.$set(t.newUser,"displayName",e)}}}),t._v(" "),t.settings.newUserRequireEmail?t._e():e("span",{staticClass:"dialog__hint",attrs:{id:"password-email-hint"}},[t._v("\n\t\t\t"+t._s(t.t("settings","Either password or email is required"))+"\n\t\t")]),t._v(" "),e("NcPasswordField",{ref:"password",staticClass:"dialog__item",attrs:{"data-test":"password",value:t.newUser.password,minlength:t.minPasswordLength,maxlength:469,"aria-describedby":"password-email-hint",label:""===t.newUser.mailAddress?t.t("settings","Password (required)"):t.t("settings","Password"),autocapitalize:"none",autocomplete:"new-password",spellcheck:"false",required:""===t.newUser.mailAddress},on:{"update:value":function(e){return t.$set(t.newUser,"password",e)}}}),t._v(" "),e("NcTextField",{staticClass:"dialog__item",attrs:{"data-test":"email",type:"email",value:t.newUser.mailAddress,"aria-describedby":"password-email-hint",label:""===t.newUser.password||t.settings.newUserRequireEmail?t.t("settings","Email (required)"):t.t("settings","Email"),autocapitalize:"none",autocomplete:"off",spellcheck:"false",required:""===t.newUser.password||t.settings.newUserRequireEmail},on:{"update:value":function(e){return t.$set(t.newUser,"mailAddress",e)}}}),t._v(" "),e("div",{staticClass:"dialog__item"},[e("NcSelect",{staticClass:"dialog__select",attrs:{"data-test":"groups","input-label":t.settings.isAdmin||t.settings.isDelegatedAdmin?t.t("settings","Member of the following groups"):t.t("settings","Member of the following groups (required)"),placeholder:t.t("settings","Set account groups"),disabled:t.loading.groups||t.loading.all,options:t.availableGroups,value:t.newUser.groups,label:"name","close-on-select":!1,multiple:!0,taggable:t.settings.isAdmin||t.settings.isDelegatedAdmin,required:!t.settings.isAdmin&&!t.settings.isDelegatedAdmin,"create-option":t=>({id:t,name:t,isCreating:!0})},on:{search:t.searchGroups,"option:created":t.createGroup,"option:selected":e=>t.addGroup(e.at(-1))}})],1),t._v(" "),e("div",{staticClass:"dialog__item"},[e("NcSelect",{staticClass:"dialog__select",attrs:{"input-label":t.t("settings","Admin of the following groups"),placeholder:t.t("settings","Set account as admin for …"),disabled:t.loading.groups||t.loading.all,options:t.availableGroups,"close-on-select":!1,multiple:!0,label:"name"},on:{search:t.searchGroups},model:{value:t.newUser.subAdminsGroups,callback:function(e){t.$set(t.newUser,"subAdminsGroups",e)},expression:"newUser.subAdminsGroups"}})],1),t._v(" "),e("div",{staticClass:"dialog__item"},[e("NcSelect",{staticClass:"dialog__select",attrs:{"input-label":t.t("settings","Quota"),placeholder:t.t("settings","Set account quota"),options:t.quotaOptions,clearable:!1,taggable:!0,"create-option":t.validateQuota},model:{value:t.newUser.quota,callback:function(e){t.$set(t.newUser,"quota",e)},expression:"newUser.quota"}})],1),t._v(" "),t.showConfig.showLanguages?e("div",{staticClass:"dialog__item"},[e("NcSelect",{staticClass:"dialog__select",attrs:{"input-label":t.t("settings","Language"),placeholder:t.t("settings","Set default language"),clearable:!1,selectable:t=>!t.languages,"filter-by":t.languageFilterBy,options:t.languages,label:"name"},model:{value:t.newUser.language,callback:function(e){t.$set(t.newUser,"language",e)},expression:"newUser.language"}})],1):t._e(),t._v(" "),e("div",{class:["dialog__item dialog__managers",{"icon-loading-small":t.loading.manager}]},[e("NcSelect",{staticClass:"dialog__select",attrs:{"input-label":t.managerInputLabel,placeholder:t.managerLabel,options:t.possibleManagers,"user-select":!0,label:"displayname"},on:{search:t.searchUserManager},model:{value:t.newUser.manager,callback:function(e){t.$set(t.newUser,"manager",e)},expression:"newUser.manager"}})],1)],1)])}),[],!1,null,"4f7fcac6",null);const H=W.exports,K=r.Ay.extend({name:"UserListFooter",components:{NcLoadingIcon:A.A},props:{loading:{type:Boolean,required:!0},filteredUsers:{type:Array,required:!0}},computed:{userCount(){return this.loading?this.n("settings","{userCount} account …","{userCount} accounts …",this.filteredUsers.length,{userCount:this.filteredUsers.length}):this.n("settings","{userCount} account","{userCount} accounts",this.filteredUsers.length,{userCount:this.filteredUsers.length})}},methods:{t:i.Tl,n:i.zw}});var j=a(18033),Y={};Y.styleTagTransform=L(),Y.setAttributes=k(),Y.insert=x().bind(null,"head"),Y.domAPI=b(),Y.insertStyleElement=G(),f()(j.A,Y),j.A&&j.A.locals&&j.A.locals;const X=(0,I.A)(K,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",{staticClass:"footer"},[e("th",{attrs:{scope:"row"}},[e("span",{staticClass:"hidden-visually"},[t._v(t._s(t.t("settings","Total rows summary")))])]),t._v(" "),e("td",{staticClass:"footer__cell footer__cell--loading"},[t.loading?e("NcLoadingIcon",{attrs:{title:t.t("settings","Loading accounts …"),size:32}}):t._e()],1),t._v(" "),e("td",{staticClass:"footer__cell footer__cell--count footer__cell--multiline"},[e("span",{attrs:{"aria-describedby":"user-count-desc"}},[t._v(t._s(t.userCount))]),t._v(" "),e("span",{staticClass:"hidden-visually",attrs:{id:"user-count-desc"}},[t._v("\n\t\t\t"+t._s(t.t("settings","Scroll to load more rows"))+"\n\t\t")])])])}),[],!1,null,"20636959",null).exports,V=r.Ay.extend({name:"UserListHeader",props:{hasObfuscated:{type:Boolean,required:!0}},computed:{showConfig(){return this.$store.getters.getShowConfig},settings(){return this.$store.getters.getServerData},passwordLabel(){return this.hasObfuscated?(0,i.Tl)("settings","Password or insufficient permissions message"):(0,i.Tl)("settings","Password")}},methods:{t:i.Tl}});var J=a(24882),Z={};Z.styleTagTransform=L(),Z.setAttributes=k(),Z.insert=x().bind(null,"head"),Z.domAPI=b(),Z.insertStyleElement=G(),f()(J.A,Z),J.A&&J.A.locals&&J.A.locals;const tt=(0,I.A)(V,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",{staticClass:"header"},[e("th",{staticClass:"header__cell header__cell--avatar",attrs:{"data-cy-user-list-header-avatar":"",scope:"col"}},[e("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t"+t._s(t.t("settings","Avatar"))+"\n\t\t")])]),t._v(" "),e("th",{staticClass:"header__cell header__cell--displayname",attrs:{"data-cy-user-list-header-displayname":"",scope:"col"}},[e("strong",[t._v("\n\t\t\t"+t._s(t.t("settings","Display name"))+"\n\t\t")])]),t._v(" "),e("th",{staticClass:"header__cell header__cell--username",attrs:{"data-cy-user-list-header-username":"",scope:"col"}},[e("span",[t._v("\n\t\t\t"+t._s(t.t("settings","Account name"))+"\n\t\t")])]),t._v(" "),e("th",{staticClass:"header__cell",class:{"header__cell--obfuscated":t.hasObfuscated},attrs:{"data-cy-user-list-header-password":"",scope:"col"}},[e("span",[t._v(t._s(t.passwordLabel))])]),t._v(" "),e("th",{staticClass:"header__cell",attrs:{"data-cy-user-list-header-email":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Email")))])]),t._v(" "),e("th",{staticClass:"header__cell header__cell--large",attrs:{"data-cy-user-list-header-groups":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Groups")))])]),t._v(" "),t.settings.isAdmin||t.settings.isDelegatedAdmin?e("th",{staticClass:"header__cell header__cell--large",attrs:{"data-cy-user-list-header-subadmins":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Group admin for")))])]):t._e(),t._v(" "),e("th",{staticClass:"header__cell",attrs:{"data-cy-user-list-header-quota":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Quota")))])]),t._v(" "),t.showConfig.showLanguages?e("th",{staticClass:"header__cell header__cell--large",attrs:{"data-cy-user-list-header-languages":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Language")))])]):t._e(),t._v(" "),t.showConfig.showUserBackend||t.showConfig.showStoragePath?e("th",{staticClass:"header__cell header__cell--large",attrs:{"data-cy-user-list-header-storage-location":"",scope:"col"}},[t.showConfig.showUserBackend?e("span",[t._v("\n\t\t\t"+t._s(t.t("settings","Account backend"))+"\n\t\t")]):t._e(),t._v(" "),t.showConfig.showStoragePath?e("span",{staticClass:"header__subtitle"},[t._v("\n\t\t\t"+t._s(t.t("settings","Storage location"))+"\n\t\t")]):t._e()]):t._e(),t._v(" "),t.showConfig.showFirstLogin?e("th",{staticClass:"header__cell",attrs:{"data-cy-user-list-header-first-login":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","First login")))])]):t._e(),t._v(" "),t.showConfig.showLastLogin?e("th",{staticClass:"header__cell",attrs:{"data-cy-user-list-header-last-login":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Last login")))])]):t._e(),t._v(" "),e("th",{staticClass:"header__cell header__cell--large header__cell--fill",attrs:{"data-cy-user-list-header-manager":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Manager")))])]),t._v(" "),e("th",{staticClass:"header__cell header__cell--actions",attrs:{"data-cy-user-list-header-actions":"",scope:"col"}},[e("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t"+t._s(t.t("settings","Account actions"))+"\n\t\t")])])])}),[],!1,null,"5c0f8828",null).exports;var et=a(61884),st=a(56760),at=a(41944),it=a(95101),nt=a(86454),rt=a(57505),ot=a(24764),lt=a(65659),dt=a(19664);const ct=(0,r.pM)({components:{NcActionButton:rt.A,NcActions:ot.A,NcIconSvgWrapper:g.A},props:{actions:{type:Array,required:!0},disabled:{type:Boolean,required:!0},edit:{type:Boolean,required:!0},user:{type:Object,required:!0}},computed:{editSvg(){return this.edit?lt:dt},enabledActions(){return this.actions.filter((t=>"function"!=typeof t.enabled||t.enabled(this.user)))}},methods:{isSvg:function(t){if("string"!=typeof t)throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);if(0===(t=t.trim()).length)return!1;if(!0!==nt.XMLValidator.validate(t))return!1;let e;const s=new nt.XMLParser;try{e=s.parse(t)}catch{return!1}return!!e&&!!Object.keys(e).some((t=>"svg"===t.toLowerCase()))},toggleEdit(){this.$emit("update:edit",!this.edit)}}}),ut=(0,I.A)(ct,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcActions",{attrs:{"aria-label":t.t("settings","Toggle account actions menu"),disabled:t.disabled,inline:1}},[e("NcActionButton",{attrs:{"data-cy-user-list-action-toggle-edit":`${t.edit}`,disabled:t.disabled},on:{click:t.toggleEdit},scopedSlots:t._u([{key:"icon",fn:function(){return[e("NcIconSvgWrapper",{key:t.editSvg,attrs:{svg:t.editSvg,"aria-hidden":"true"}})]},proxy:!0}])},[t._v("\n\t\t"+t._s(t.edit?t.t("settings","Done"):t.t("settings","Edit"))+"\n\t\t")]),t._v(" "),t._l(t.enabledActions,(function({action:s,icon:a,text:i},n){return e("NcActionButton",{key:n,attrs:{disabled:t.disabled,"aria-label":i,icon:a,"close-after-click":""},on:{click:e=>s(e,{...t.user})},scopedSlots:t._u([t.isSvg(a)?{key:"icon",fn:function(){return[e("NcIconSvgWrapper",{attrs:{svg:a,"aria-hidden":"true"}})]},proxy:!0}:null],null,!0)},[t._v("\n\t\t"+t._s(i)+"\n\t\t")])}))],2)}),[],!1,null,null,null).exports;var gt=a(48964),At=a(68736),pt=a(61744),ht=a(97691),mt=a(18642),Ct=a(72298),vt=a(73346),wt=a(90309),ft=a(20282),_t=a(15502),bt=a(55925),yt=a(28440),xt=a(30803),Nt=a(47611),kt=a(10363),St=a(23538),Gt=a(50341),Ut=a(25535),Lt=a(87142),Dt=a(27345),Bt=a(85865),It=a(75424),qt=a(70952),Ot=a(11683),Mt=a(542),$t=a(80236),Ft=a(14727),Tt=a(80065),Et=a(19015),Pt=a(18608),zt=a(94722),Rt=a(92089),Qt=a(26355),Wt=a(1758),Ht=a(77333),Kt=a(22318),jt=a(10402),Yt=a(31719),Xt=a(75971),Vt=a(17309),Jt=a(50298),Zt=a(49013),te=a(29805),ee=a(88984),se=a(96229),ae=a(18564),ie=a(25521),ne=a(68229),re=a(20070),oe=a(79008),le=a(19498),de=a(26517),ce=a(22792),ue=a(13058),ge=a(55945),Ae=a(7723),pe=a(64711),he=a(3226),me=a(9060),Ce=a(67699),ve=a(68712),we=a(53304),fe=a(64906),_e=a(62328),be=a(93364),ye=(a(58322),a(90912),a(19051),a(82025)),xe=a(71560),Ne=a(71639),ke=a(24431),Se=a(77930),Ge=a(87605),Ue=a(70253),Le=a(83847),De=a(22907),Be=a(18127),Ie=a(64162),qe=a(89675),Oe=a(49814),Me=a(23610),$e=a(55581),Fe=(a(94205),a(95462),a(23020),a(53429),a(23739),a(16343),a(29928),a(64660),a(18547),a(42892)),Te=a(15074),Ee=(a(59656),a(75105),a(92471),a(16406),a(2508));gt.N,At.N,pt.A,ht.N,mt.N,Ct.A,vt.N,wt.A,_t.A,bt.A,yt.N,ft.N,xt.N,Nt.A,kt.A,St.N,Gt.N,Ut.A,Lt.N,Dt.A,Bt.A,It.N,qt.N,Ot.N,Mt.A,$t.N,Ft.A,Tt.N,Et.N,Pt.A,_e.N,zt.N,Rt.N,Qt.N,Wt.N,M.A,Ht.N,Kt.N,jt.N,Yt.N,Xt.N,Vt.N,Jt.N,Zt.N,te.default,ee.A,se.N,ae.N,ie.A,ne.N,u.A,re.A,oe.A,le.N,de.N,ce.N,ue.N,ge.N,Ae.N,A.A,fe.N,pe.A,he.A,me.N,Ce.N,ve.N,we.N,_e.a,be.N,Ne.N,ye.N,ke.N,Se.N,Ge.N,Ue.N,Le.N,De.N,xe.N,Be.N,Ie.N,qe.N,Oe.N,Me.A,Symbol.toStringTag,Fe.A,Te.u,Ee.yw,Symbol.toStringTag;const Pe={props:{user:{type:Object,required:!0},settings:{type:Object,default:()=>({})},quotaOptions:{type:Array,default:()=>[]},languages:{type:Array,required:!0},externalActions:{type:Array,default:()=>[]}},setup(t){const{formattedFullTime:e}=(0,$e.m7)(1e3*t.user.firstLoginTimestamp,{relativeTime:!1,format:{timeStyle:"short",dateStyle:"short"}});return{formattedFullTime:e}},data(){return{selectedGroups:this.user.groups.map((t=>({id:t,name:t}))),selectedSubAdminGroups:this.user.subadmin.map((t=>({id:t,name:t}))),userGroups:this.user.groups.map((t=>({id:t,name:t}))),userSubAdminGroups:this.user.subadmin.map((t=>({id:t,name:t})))}},computed:{showConfig(){return this.$store.getters.getShowConfig},usedSpace(){const e=this.user.quota.used>0?this.user.quota.used:0;return t("settings","{size} used",{size:(0,O.v7)(e,!0)})},usedQuota(){let t=this.user.quota.quota;return t=t>0?Math.min(100,Math.round(this.user.quota.used/t*100)):95*(1-1/(this.user.quota.used/(10*Math.pow(2,30))+1)),isNaN(t)?0:t},userQuota(){if(this.user.quota.quota>=0){const t=(0,O.v7)(this.user.quota.quota);return this.quotaOptions.find((e=>e.id===t))||{id:t,label:t}}return"default"===this.user.quota.quota?this.quotaOptions[0]:this.quotaOptions[1]},minPasswordLength(){return this.$store.getters.getPasswordPolicyMinLength},userLanguage(){const t=this.languages[0].languages.concat(this.languages[1].languages).find((t=>t.code===this.user.language));return"object"!=typeof t&&""!==this.user.language?{code:this.user.language,name:this.user.language}:""!==this.user.language&&t},userFirstLogin(){return this.user.firstLoginTimestamp>0?this.formattedFullTime:this.user.firstLoginTimestamp<0?t("settings","Unknown"):t("settings","Never")},userLastLoginTooltip(){return this.user.lastLoginTimestamp>0?OC.Util.formatDate(1e3*this.user.lastLoginTimestamp):""},userLastLogin(){return this.user.lastLoginTimestamp>0?OC.Util.relativeModifiedDate(1e3*this.user.lastLoginTimestamp):t("settings","Never")}}};var ze=a(95668);const Re={name:"UserRow",components:{NcAvatar:at.A,NcLoadingIcon:A.A,NcProgressBar:it.A,NcSelect:T.default,NcTextField:E.A,UserRowActions:ut},mixins:[Pe],props:{user:{type:Object,required:!0},visible:{type:Boolean,required:!0},users:{type:Array,required:!0},hasObfuscated:{type:Boolean,required:!0},quotaOptions:{type:Array,required:!0},languages:{type:Array,required:!0},settings:{type:Object,required:!0},externalActions:{type:Array,default:()=>[]}},data(){return{selectedQuota:!1,rand:Math.random().toString(36).substring(2),loadingPossibleManagers:!1,possibleManagers:[],currentManager:"",editing:!1,loading:{all:!1,displayName:!1,password:!1,mailAddress:!1,groups:!1,groupsDetails:!1,subAdminGroupsDetails:!1,subadmins:!1,quota:!1,delete:!1,disable:!1,languages:!1,wipe:!1,manager:!1},editedDisplayName:this.user.displayname,editedPassword:"",editedMail:this.user.email??"",promise:null}},computed:{managerLabel:()=>t("settings","Set line manager"),isObfuscated(){return(0,ze.HK)(this.user)},showConfig(){return this.$store.getters.getShowConfig},isLoadingUser(){return this.loading.delete||this.loading.disable||this.loading.wipe},isLoadingField(){return this.loading.delete||this.loading.disable||this.loading.all},uniqueId(){return encodeURIComponent(this.user.id+this.rand)},availableGroups(){return(this.settings.isAdmin||this.settings.isDelegatedAdmin?this.$store.getters.getSortedGroups:this.$store.getters.getSubAdminGroups).filter((t=>"__nc_internal_recent"!==t.id&&"disabled"!==t.id))},availableSubAdminGroups(){return this.availableGroups.filter((t=>"admin"!==t.id))},userGroupsLabels(){return this.userGroups.map((t=>{const e=this.availableGroups.find((e=>e.id===t.id));return e?.name??t.name??t.id})).join(", ")},userSubAdminGroupsLabels(){return this.userSubAdminGroups.map((t=>{const e=this.availableSubAdminGroups.find((e=>e.id===t.id));return e?.name??t.name??t.id})).join(", ")},usedSpace(){return this.user.quota?.used?t("settings","{size} used",{size:(0,O.v7)(this.user.quota?.used)}):t("settings","{size} used",{size:(0,O.v7)(0)})},canEdit(){return(0,et.HW)().uid!==this.user.id||this.settings.isAdmin||this.settings.isDelegatedAdmin},userQuota(){let e=this.user.quota?.quota;return"default"===e&&(e=this.settings.defaultQuota,"none"!==e&&(e=(0,O.lT)(e,!0))),"none"===e||-3===e?t("settings","Unlimited"):e>=0?(0,O.v7)(e):(0,O.v7)(0)},userActions(){const e=[{icon:"icon-delete",text:t("settings","Delete account"),action:this.deleteUser},{icon:"icon-delete",text:t("settings","Disconnect all devices and delete local data"),action:this.wipeUserDevices},{icon:this.user.enabled?"icon-close":"icon-add",text:this.user.enabled?t("settings","Disable account"):t("settings","Enable account"),action:this.enableDisableUser}];return null!==this.user.email&&""!==this.user.email&&e.push({icon:"icon-mail",text:t("settings","Resend welcome email"),action:this.sendWelcomeMail}),e.concat(this.externalActions)},editedUserQuota:{get(){return!1!==this.selectedQuota?this.selectedQuota:this.settings.defaultQuota!==ze.SA.id&&(0,O.lT)(this.settings.defaultQuota,!0)>=0?{id:this.settings.defaultQuota,label:this.settings.defaultQuota}:ze.SA},set(t){this.selectedQuota=t}},availableLanguages(){return this.languages[0].languages.concat(this.languages[1].languages)}},async beforeMount(){this.user.manager&&await this.initManager(this.user.manager)},methods:{async wipeUserDevices(){const e=this.user.id;await(0,st.C5)(),OC.dialogs.confirmDestructive(t("settings","In case of lost device or exiting the organization, this can remotely wipe the Nextcloud data from all devices associated with {userid}. Only works if the devices are connected to the internet.",{userid:e}),t("settings","Remote wipe of devices"),{type:OC.dialogs.YES_NO_BUTTONS,confirm:t("settings","Wipe {userid}'s devices",{userid:e}),confirmClasses:"error",cancel:t("settings","Cancel")},(s=>{s&&(this.loading.wipe=!0,this.loading.all=!0,this.$store.dispatch("wipeUserDevices",e).then((()=>(0,d.Te)(t("settings","Wiped {userid}'s devices",{userid:e}))),{timeout:2e3}).finally((()=>{this.loading.wipe=!1,this.loading.all=!1})))}),!0)},filterManagers(t){return t.filter((t=>t.id!==this.user.id))},async initManager(t){await this.$store.dispatch("getUser",t).then((t=>{this.currentManager=t?.data.ocs.data}))},async searchInitialUserManager(){this.loadingPossibleManagers=!0,await this.searchUserManager(),this.loadingPossibleManagers=!1},async loadGroupsDetails(){this.loading.groups=!0,this.loading.groupsDetails=!0;try{const t=await(0,P.Iu)({userId:this.user.id});for(const e of t)this.$store.commit("addGroup",e);this.selectedGroups=this.selectedGroups.map((e=>t.find((t=>t.id===e.id))??e))}catch(e){C.A.error(t("settings","Failed to load groups with details"),{error:e})}this.loading.groups=!1,this.loading.groupsDetails=!1},async loadSubAdminGroupsDetails(){this.loading.subadmins=!0,this.loading.subAdminGroupsDetails=!0;try{const t=await(0,P.FF)({userId:this.user.id});for(const e of t)this.$store.commit("addGroup",e);this.selectedSubAdminGroups=this.selectedSubAdminGroups.map((e=>t.find((t=>t.id===e.id))??e))}catch(e){C.A.error(t("settings","Failed to load subadmin groups with details"),{error:e})}this.loading.subadmins=!1,this.loading.subAdminGroupsDetails=!1},async searchGroups(e,s){if(""!==e){this.promise&&this.promise.cancel(),s(!0);try{this.promise=await(0,P.N_)({search:e,offset:0,limit:25});const t=await this.promise;for(const e of t)this.$store.commit("addGroup",e)}catch(e){C.A.error(t("settings","Failed to search groups"),{error:e})}this.promise=null,s(!1)}},async searchUserManager(t){await this.$store.dispatch("searchUsers",{offset:0,limit:10,search:t}).then((t=>{const e=t?.data?this.filterManagers(Object.values(t?.data.ocs.data.users)):[];e.length>0&&(this.possibleManagers=e)}))},async updateUserManager(){this.loading.manager=!0;const e=this.user.manager;try{await this.$store.dispatch("setUserData",{userid:this.user.id,key:"manager",value:this.currentManager?this.currentManager.id:""})}catch(s){(0,d.Qg)(t("settings","Failed to update line manager")),C.A.error("Failed to update manager:",{error:s}),this.currentManager=e}finally{this.loading.manager=!1}},async deleteUser(){const e=this.user.id;await(0,st.C5)(),OC.dialogs.confirmDestructive(t("settings","Fully delete {userid}'s account including all their personal files, app data, etc.",{userid:e}),t("settings","Account deletion"),{type:OC.dialogs.YES_NO_BUTTONS,confirm:t("settings","Delete {userid}'s account",{userid:e}),confirmClasses:"error",cancel:t("settings","Cancel")},(t=>{if(t)return this.loading.delete=!0,this.loading.all=!0,this.$store.dispatch("deleteUser",e).then((()=>{this.loading.delete=!1,this.loading.all=!1}))}),!0)},enableDisableUser(){this.loading.delete=!0,this.loading.all=!0;const t=this.user.id,e=!this.user.enabled;return this.$store.dispatch("enableDisableUser",{userid:t,enabled:e}).then((()=>{this.loading.delete=!1,this.loading.all=!1}))},async updateDisplayName(){this.loading.displayName=!0;try{await this.$store.dispatch("setUserData",{userid:this.user.id,key:"displayname",value:this.editedDisplayName}),this.editedDisplayName===this.user.displayname&&(0,d.Te)(t("settings","Display name was successfully changed"))}finally{this.loading.displayName=!1}},async updatePassword(){if(this.loading.password=!0,0===this.editedPassword.length)(0,d.Qg)(t("settings","Password can't be empty")),this.loading.password=!1;else try{await this.$store.dispatch("setUserData",{userid:this.user.id,key:"password",value:this.editedPassword}),this.editedPassword="",(0,d.Te)(t("settings","Password was successfully changed"))}finally{this.loading.password=!1}},async updateEmail(){if(this.loading.mailAddress=!0,""===this.editedMail)(0,d.Qg)(t("settings","Email can't be empty")),this.loading.mailAddress=!1,this.editedMail=this.user.email;else try{await this.$store.dispatch("setUserData",{userid:this.user.id,key:"email",value:this.editedMail}),this.editedMail===this.user.email&&(0,d.Te)(t("settings","Email was successfully changed"))}finally{this.loading.mailAddress=!1}},async createGroup({name:e}){this.loading.groups=!0;try{await this.$store.dispatch("addGroup",e);const t=this.user.id;await this.$store.dispatch("addUserGroup",{userid:t,gid:e}),this.userGroups.push({id:e,name:e})}catch(e){C.A.error(t("settings","Failed to create group"),{error:e})}this.loading.groups=!1},async addUserGroup(t){if(t.isCreating)return;const e=this.user.id,s=t.id;if(!1!==t.canAdd){this.loading.groups=!0;try{await this.$store.dispatch("addUserGroup",{userid:e,gid:s}),this.userGroups.push(t)}catch(t){console.error(t)}this.loading.groups=!1}},async removeUserGroup(t){if(!1===t.canRemove)return!1;this.loading.groups=!0;const e=this.user.id,s=t.id;try{await this.$store.dispatch("removeUserGroup",{userid:e,gid:s}),this.userGroups=this.userGroups.filter((t=>t.id!==s)),this.loading.groups=!1,this.$route.params.selectedGroup===s&&this.$store.commit("deleteUser",e)}catch{this.loading.groups=!1}},async addUserSubAdmin(t){this.loading.subadmins=!0;const e=this.user.id,s=t.id;try{await this.$store.dispatch("addUserSubAdmin",{userid:e,gid:s}),this.userSubAdminGroups.push(t)}catch(t){console.error(t)}this.loading.subadmins=!1},async removeUserSubAdmin(t){this.loading.subadmins=!0;const e=this.user.id,s=t.id;try{await this.$store.dispatch("removeUserSubAdmin",{userid:e,gid:s}),this.userSubAdminGroups=this.userSubAdminGroups.filter((t=>t.id!==s))}catch(t){console.error(t)}finally{this.loading.subadmins=!1}},async setUserQuota(t="none"){"none"===t&&(t=ze.SA),this.loading.quota=!0,t=t.id?t.id:t;try{const e=((0,O.lT)(t,!0)||t).toString();await this.$store.dispatch("setUserData",{userid:this.user.id,key:"quota",value:e})}catch(t){console.error(t)}finally{this.loading.quota=!1}return t},validateQuota:t=>("object"==typeof t&&(t=t?.id||t.label),null===(0,O.lT)(t,!0)?ze.SA:{id:t=(0,O.v7)((0,O.lT)(t,!0)),label:t}),async setUserLanguage(t){this.loading.languages=!0;try{await this.$store.dispatch("setUserData",{userid:this.user.id,key:"language",value:t.code}),this.loading.languages=!1}catch(t){console.error(t)}return t},sendWelcomeMail(){this.loading.all=!0,this.$store.dispatch("sendWelcomeMail",this.user.id).then((()=>(0,d.Te)(t("settings","Welcome mail sent!"),{timeout:2e3}))).finally((()=>{this.loading.all=!1}))},async toggleEdit(){this.editing=!this.editing,this.editing&&(await this.$nextTick(),this.$refs.displayNameField?.$refs?.inputField?.$refs?.input?.focus(),this.loadGroupsDetails(),this.loadSubAdminGroupsDetails()),this.editedDisplayName!==this.user.displayname?this.editedDisplayName=this.user.displayname:this.editedMail!==this.user.email&&(this.editedMail=this.user.email??"")}}};var Qe=a(78897),We={};We.styleTagTransform=L(),We.setAttributes=k(),We.insert=x().bind(null,"head"),We.domAPI=b(),We.insertStyleElement=G(),f()(Qe.A,We),Qe.A&&Qe.A.locals&&Qe.A.locals;var He=(0,I.A)(Re,(function(){var t=this,e=t._self._c;return e("tr",{staticClass:"user-list__row",attrs:{"data-cy-user-row":t.user.id}},[e("td",{staticClass:"row__cell row__cell--avatar",attrs:{"data-cy-user-list-cell-avatar":""}},[t.isLoadingUser?e("NcLoadingIcon",{attrs:{name:t.t("settings","Loading account …"),size:32}}):t.visible?e("NcAvatar",{attrs:{"disable-menu":"","show-user-status":!1,user:t.user.id}}):t._e()],1),t._v(" "),e("td",{staticClass:"row__cell row__cell--displayname",attrs:{"data-cy-user-list-cell-displayname":""}},[t.editing&&t.user.backendCapabilities.setDisplayName?[e("NcTextField",{ref:"displayNameField",staticClass:"user-row-text-field",class:{"icon-loading-small":t.loading.displayName},attrs:{"data-cy-user-list-input-displayname":"","data-loading":t.loading.displayName||void 0,"trailing-button-label":t.t("settings","Submit"),"show-trailing-button":!0,disabled:t.loading.displayName||t.isLoadingField,label:t.t("settings","Change display name"),"trailing-button-icon":"arrowRight",value:t.editedDisplayName,autocapitalize:"off",autocomplete:"off",spellcheck:"false"},on:{"update:value":function(e){t.editedDisplayName=e},"trailing-button-click":t.updateDisplayName}})]:t.isObfuscated?t._e():e("strong",{attrs:{title:t.user.displayname?.length>20?t.user.displayname:null}},[t._v("\n\t\t\t"+t._s(t.user.displayname)+"\n\t\t")])],2),t._v(" "),e("td",{staticClass:"row__cell row__cell--username",attrs:{"data-cy-user-list-cell-username":""}},[e("span",{staticClass:"row__subtitle"},[t._v(t._s(t.user.id))])]),t._v(" "),e("td",{staticClass:"row__cell",class:{"row__cell--obfuscated":t.hasObfuscated},attrs:{"data-cy-user-list-cell-password":""}},[t.editing&&t.settings.canChangePassword&&t.user.backendCapabilities.setPassword?[e("NcTextField",{staticClass:"user-row-text-field",class:{"icon-loading-small":t.loading.password},attrs:{"data-cy-user-list-input-password":"","data-loading":t.loading.password||void 0,"trailing-button-label":t.t("settings","Submit"),"show-trailing-button":!0,disabled:t.loading.password||t.isLoadingField,minlength:t.minPasswordLength,maxlength:"469",label:t.t("settings","Set new password"),"trailing-button-icon":"arrowRight",value:t.editedPassword,autocapitalize:"off",autocomplete:"new-password",required:"",spellcheck:"false",type:"password"},on:{"update:value":function(e){t.editedPassword=e},"trailing-button-click":t.updatePassword}})]:t.isObfuscated?e("span",[t._v("\n\t\t\t"+t._s(t.t("settings","You do not have permissions to see the details of this account"))+"\n\t\t")]):t._e()],2),t._v(" "),e("td",{staticClass:"row__cell",attrs:{"data-cy-user-list-cell-email":""}},[t.editing?[e("NcTextField",{staticClass:"user-row-text-field",class:{"icon-loading-small":t.loading.mailAddress},attrs:{"data-cy-user-list-input-email":"","data-loading":t.loading.mailAddress||void 0,"show-trailing-button":!0,"trailing-button-label":t.t("settings","Submit"),label:t.t("settings","Set new email address"),disabled:t.loading.mailAddress||t.isLoadingField,"trailing-button-icon":"arrowRight",value:t.editedMail,autocapitalize:"off",autocomplete:"email",spellcheck:"false",type:"email"},on:{"update:value":function(e){t.editedMail=e},"trailing-button-click":t.updateEmail}})]:t.isObfuscated?t._e():e("span",{attrs:{title:t.user.email?.length>20?t.user.email:null}},[t._v("\n\t\t\t"+t._s(t.user.email)+"\n\t\t")])],2),t._v(" "),e("td",{staticClass:"row__cell row__cell--large row__cell--multiline",attrs:{"data-cy-user-list-cell-groups":""}},[t.editing?[e("label",{staticClass:"hidden-visually",attrs:{for:"groups"+t.uniqueId}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Add account to group"))+"\n\t\t\t")]),t._v(" "),e("NcSelect",{attrs:{"data-cy-user-list-input-groups":"","data-loading":t.loading.groups||void 0,"input-id":"groups"+t.uniqueId,"close-on-select":!1,disabled:t.isLoadingField||t.loading.groupsDetails,loading:t.loading.groups,multiple:!0,"append-to-body":!1,options:t.availableGroups,placeholder:t.t("settings","Add account to group"),taggable:t.settings.isAdmin||t.settings.isDelegatedAdmin,value:t.userGroups,label:"name","no-wrap":!0,"create-option":t=>({id:t,name:t,isCreating:!0})},on:{search:t.searchGroups,"option:created":t.createGroup,"option:selected":e=>t.addUserGroup(e.at(-1)),"option:deselected":t.removeUserGroup}})]:t.isObfuscated?t._e():e("span",{attrs:{title:t.userGroupsLabels?.length>40?t.userGroupsLabels:null}},[t._v("\n\t\t\t"+t._s(t.userGroupsLabels)+"\n\t\t")])],2),t._v(" "),t.settings.isAdmin||t.settings.isDelegatedAdmin?e("td",{staticClass:"row__cell row__cell--large row__cell--multiline",attrs:{"data-cy-user-list-cell-subadmins":""}},[t.editing&&(t.settings.isAdmin||t.settings.isDelegatedAdmin)?[e("label",{staticClass:"hidden-visually",attrs:{for:"subadmins"+t.uniqueId}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Set account as admin for"))+"\n\t\t\t")]),t._v(" "),e("NcSelect",{attrs:{"data-cy-user-list-input-subadmins":"","data-loading":t.loading.subadmins||void 0,"input-id":"subadmins"+t.uniqueId,"close-on-select":!1,disabled:t.isLoadingField||t.loading.subAdminGroupsDetails,loading:t.loading.subadmins,label:"name","append-to-body":!1,multiple:!0,"no-wrap":!0,options:t.availableSubAdminGroups,placeholder:t.t("settings","Set account as admin for"),value:t.userSubAdminGroups},on:{search:t.searchGroups,"option:deselected":t.removeUserSubAdmin,"option:selected":e=>t.addUserSubAdmin(e.at(-1))}})]:t.isObfuscated?t._e():e("span",{attrs:{title:t.userSubAdminGroupsLabels?.length>40?t.userSubAdminGroupsLabels:null}},[t._v("\n\t\t\t"+t._s(t.userSubAdminGroupsLabels)+"\n\t\t")])],2):t._e(),t._v(" "),e("td",{staticClass:"row__cell",attrs:{"data-cy-user-list-cell-quota":""}},[t.editing?[e("label",{staticClass:"hidden-visually",attrs:{for:"quota"+t.uniqueId}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Select account quota"))+"\n\t\t\t")]),t._v(" "),e("NcSelect",{attrs:{"close-on-select":!0,"create-option":t.validateQuota,"data-cy-user-list-input-quota":"","data-loading":t.loading.quota||void 0,disabled:t.isLoadingField,loading:t.loading.quota,"append-to-body":!1,clearable:!1,"input-id":"quota"+t.uniqueId,options:t.quotaOptions,placeholder:t.t("settings","Select account quota"),taggable:!0},on:{"option:selected":t.setUserQuota},model:{value:t.editedUserQuota,callback:function(e){t.editedUserQuota=e},expression:"editedUserQuota"}})]:t.isObfuscated?t._e():[e("span",{attrs:{id:"quota-progress"+t.uniqueId}},[t._v(t._s(t.userQuota)+" ("+t._s(t.usedSpace)+")")]),t._v(" "),e("NcProgressBar",{staticClass:"row__progress",class:{"row__progress--warn":t.usedQuota>80},attrs:{"aria-labelledby":"quota-progress"+t.uniqueId,value:t.usedQuota}})]],2),t._v(" "),t.showConfig.showLanguages?e("td",{staticClass:"row__cell row__cell--large",attrs:{"data-cy-user-list-cell-language":""}},[t.editing?[e("label",{staticClass:"hidden-visually",attrs:{for:"language"+t.uniqueId}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Set the language"))+"\n\t\t\t")]),t._v(" "),e("NcSelect",{attrs:{id:"language"+t.uniqueId,"data-cy-user-list-input-language":"","data-loading":t.loading.languages||void 0,"allow-empty":!1,disabled:t.isLoadingField,loading:t.loading.languages,clearable:!1,"append-to-body":!1,options:t.availableLanguages,placeholder:t.t("settings","No language set"),value:t.userLanguage,label:"name"},on:{input:t.setUserLanguage}})]:t.isObfuscated?t._e():e("span",[t._v("\n\t\t\t"+t._s(t.userLanguage.name)+"\n\t\t")])],2):t._e(),t._v(" "),t.showConfig.showUserBackend||t.showConfig.showStoragePath?e("td",{staticClass:"row__cell row__cell--large",attrs:{"data-cy-user-list-cell-storage-location":""}},[t.isObfuscated?t._e():[t.showConfig.showUserBackend?e("span",[t._v(t._s(t.user.backend))]):t._e(),t._v(" "),t.showConfig.showStoragePath?e("span",{staticClass:"row__subtitle",attrs:{title:t.user.storageLocation}},[t._v("\n\t\t\t\t"+t._s(t.user.storageLocation)+"\n\t\t\t")]):t._e()]],2):t._e(),t._v(" "),t.showConfig.showFirstLogin?e("td",{staticClass:"row__cell",attrs:{"data-cy-user-list-cell-first-login":""}},[t.isObfuscated?t._e():e("span",[t._v(t._s(t.userFirstLogin))])]):t._e(),t._v(" "),t.showConfig.showLastLogin?e("td",{staticClass:"row__cell",attrs:{title:t.userLastLoginTooltip,"data-cy-user-list-cell-last-login":""}},[t.isObfuscated?t._e():e("span",[t._v(t._s(t.userLastLogin))])]):t._e(),t._v(" "),e("td",{staticClass:"row__cell row__cell--large row__cell--fill",attrs:{"data-cy-user-list-cell-manager":""}},[t.editing?[e("label",{staticClass:"hidden-visually",attrs:{for:"manager"+t.uniqueId}},[t._v("\n\t\t\t\t"+t._s(t.managerLabel)+"\n\t\t\t")]),t._v(" "),e("NcSelect",{staticClass:"select--fill",attrs:{"data-cy-user-list-input-manager":"","data-loading":t.loading.manager||void 0,"input-id":"manager"+t.uniqueId,disabled:t.isLoadingField,loading:t.loadingPossibleManagers||t.loading.manager,options:t.possibleManagers,placeholder:t.managerLabel,label:"displayname",filterable:!1,"internal-search":!1,clearable:!0},on:{open:t.searchInitialUserManager,search:t.searchUserManager,"update:model-value":t.updateUserManager},model:{value:t.currentManager,callback:function(e){t.currentManager=e},expression:"currentManager"}})]:t.isObfuscated?t._e():e("span",[t._v("\n\t\t\t"+t._s(t.user.manager)+"\n\t\t")])],2),t._v(" "),e("td",{staticClass:"row__cell row__cell--actions",attrs:{"data-cy-user-list-cell-actions":""}},[t.visible&&!t.isObfuscated&&t.canEdit&&!t.loading.all?e("UserRowActions",{attrs:{actions:t.userActions,disabled:t.isLoadingField,edit:t.editing,user:t.user},on:{"update:edit":t.toggleEdit}}):t._e()],1)])}),[],!1,null,"549fcd14",null);const Ke=He.exports,je=Object.freeze({id:"",displayName:"",password:"",mailAddress:"",groups:[],manager:"",subAdminsGroups:[],quota:ze.MY,language:{code:"en",name:t("settings","Default language")}}),Ye={name:"UserList",components:{Fragment:c.F,NcEmptyContent:u.A,NcIconSvgWrapper:g.A,NcLoadingIcon:A.A,NewUserDialog:H,UserListFooter:X,UserListHeader:tt,VirtualList:q},props:{selectedGroup:{type:String,default:null},externalActions:{type:Array,default:()=>[]}},setup:()=>({mdiAccountGroup:l.n7C,rowHeight:55,UserRow:Ke}),data:()=>({loading:{all:!1,groups:!1,users:!1},newUser:{...je},isInitialLoad:!0,searchQuery:""}),computed:{showConfig(){return this.$store.getters.getShowConfig},settings(){return this.$store.getters.getServerData},style(){return{"--row-height":`${this.rowHeight}px`}},hasObfuscated(){return this.filteredUsers.some((t=>(0,ze.HK)(t)))},users(){return this.$store.getters.getUsers},filteredUsers(){return"disabled"===this.selectedGroup?this.users.filter((t=>!1===t.enabled)):this.users.filter((t=>!1!==t.enabled))},groups(){return this.$store.getters.getSortedGroups.filter((t=>"__nc_internal_recent"!==t.id&&"disabled"!==t.id))},quotaOptions(){const t=this.settings.quotaPreset.reduce(((t,e)=>t.concat({id:e,label:e})),[]);return this.settings.allowUnlimitedQuota&&t.unshift(ze.SA),t.unshift(ze.MY),t},usersOffset(){return this.$store.getters.getUsersOffset},usersLimit(){return this.$store.getters.getUsersLimit},disabledUsersOffset(){return this.$store.getters.getDisabledUsersOffset},disabledUsersLimit(){return this.$store.getters.getDisabledUsersLimit},usersCount(){return this.users.length},languages(){return[{label:t("settings","Common languages"),languages:this.settings.languages.commonLanguages},{label:t("settings","Other languages"),languages:this.settings.languages.otherLanguages}]}},watch:{async selectedGroup(t){this.isInitialLoad=!0,await this.redirectIfDisabled(),this.$store.commit("resetUsers"),await this.loadUsers(),this.setNewUserDefaultGroup(t)},filteredUsers(t){C.A.debug(`${t.length} filtered user(s)`)}},async created(){await this.loadUsers()},async mounted(){this.settings.canChangePassword||OC.Notification.showTemporary(t("settings","Password change is disabled because the master key is disabled")),this.resetForm(),(0,n.B1)("nextcloud:unified-search.search",this.search),(0,n.B1)("nextcloud:unified-search.reset",this.resetSearch),await this.redirectIfDisabled()},beforeDestroy(){(0,n.al)("nextcloud:unified-search.search",this.search),(0,n.al)("nextcloud:unified-search.reset",this.resetSearch)},methods:{async handleScrollEnd(){await this.loadUsers()},async loadUsers(){this.loading.users=!0;try{"disabled"===this.selectedGroup?await this.$store.dispatch("getDisabledUsers",{offset:this.disabledUsersOffset,limit:this.disabledUsersLimit,search:this.searchQuery}):"__nc_internal_recent"===this.selectedGroup?await this.$store.dispatch("getRecentUsers",{offset:this.usersOffset,limit:this.usersLimit,search:this.searchQuery}):await this.$store.dispatch("getUsers",{offset:this.usersOffset,limit:this.usersLimit,group:this.selectedGroup,search:this.searchQuery}),C.A.debug(`${this.users.length} total user(s) loaded`)}catch(t){C.A.error("Failed to load accounts",{error:t}),(0,d.Qg)("Failed to load accounts")}this.loading.users=!1,this.isInitialLoad=!1},closeDialog(){this.$store.commit("setShowConfig",{key:"showNewUserForm",value:!1})},async search({query:t}){this.searchQuery=t,this.$store.commit("resetUsers"),await this.loadUsers()},resetSearch(){this.search({query:""})},resetForm(){this.newUser=Object.assign({},je),this.settings.defaultLanguage&&r.Ay.set(this.newUser.language,"code",this.settings.defaultLanguage),this.setNewUserDefaultGroup(this.selectedGroup),this.loading.all=!1},setNewUserDefaultGroup(t){if(t||this.settings.isAdmin||this.settings.isDelegatedAdmin){if(t){const e=this.groups.find((e=>e.id===t));if(e)return void(this.newUser.groups=[e])}this.newUser.groups=[]}else{const t=this.$store.getters.getSubAdminGroups;1===t.length&&(this.newUser.groups=[...t])}},async redirectIfDisabled(){const t=this.$store.getters.getGroups;"disabled"===this.selectedGroup&&t.findIndex((t=>"disabled"===t.id&&0===t.usercount))>-1&&(this.$router.push({name:"users"}),await this.loadUsers())}}};var Xe=a(91544),Ve={};Ve.styleTagTransform=L(),Ve.setAttributes=k(),Ve.insert=x().bind(null,"head"),Ve.domAPI=b(),Ve.insertStyleElement=G(),f()(Xe.A,Ve),Xe.A&&Xe.A.locals&&Xe.A.locals;const Je=(0,I.A)(Ye,(function(){var t=this,e=t._self._c;return e("Fragment",[t.showConfig.showNewUserForm?e("NewUserDialog",{attrs:{loading:t.loading,"new-user":t.newUser,"quota-options":t.quotaOptions},on:{reset:t.resetForm,closing:t.closeDialog}}):t._e(),t._v(" "),0===t.filteredUsers.length?e("NcEmptyContent",{staticClass:"empty",attrs:{name:t.isInitialLoad&&t.loading.users?null:t.t("settings","No accounts")},scopedSlots:t._u([{key:"icon",fn:function(){return[t.isInitialLoad&&t.loading.users?e("NcLoadingIcon",{attrs:{name:t.t("settings","Loading accounts …"),size:64}}):e("NcIconSvgWrapper",{attrs:{path:t.mdiAccountGroup,size:64}})]},proxy:!0}],null,!1,226056511)}):e("VirtualList",{style:t.style,attrs:{"data-component":t.UserRow,"data-sources":t.filteredUsers,"data-key":"id","data-cy-user-list":"","item-height":t.rowHeight,"extra-props":{users:t.users,settings:t.settings,hasObfuscated:t.hasObfuscated,quotaOptions:t.quotaOptions,languages:t.languages,externalActions:t.externalActions}},on:{"scroll-end":t.handleScrollEnd},scopedSlots:t._u([{key:"before",fn:function(){return[e("caption",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t"+t._s(t.t("settings","List of accounts. This list is not fully rendered for performance reasons. The accounts will be rendered as you navigate through the list."))+"\n\t\t\t")])]},proxy:!0},{key:"header",fn:function(){return[e("UserListHeader",{attrs:{"has-obfuscated":t.hasObfuscated}})]},proxy:!0},{key:"footer",fn:function(){return[e("UserListFooter",{attrs:{loading:t.loading.users,"filtered-users":t.filteredUsers}})]},proxy:!0}])})],1)}),[],!1,null,"73fd953a",null).exports,Ze=(0,r.pM)({name:"UserManagement",components:{NcAppContent:o.A,UserList:Je},data:()=>({externalActions:[]}),computed:{pageHeading(){return null===this.selectedGroupDecoded?(0,i.Tl)("settings","All accounts"):{admin:(0,i.Tl)("settings","Admins"),disabled:(0,i.Tl)("settings","Disabled accounts")}[this.selectedGroupDecoded]??(0,i.Tl)("settings","Account group: {group}",{group:this.selectedGroupDecoded})},selectedGroup(){return this.$route.params.selectedGroup},selectedGroupDecoded(){return this.selectedGroup?decodeURIComponent(this.selectedGroup):null}},beforeMount(){this.$store.dispatch("getPasswordPolicyMinLength")},created(){window.OCA=window.OCA??{},window.OCA.Settings=window.OCA.Settings??{},window.OCA.Settings.UserList=window.OCA.Settings.UserList??{},window.OCA.Settings.UserList.registerAction=this.registerAction,(0,n.Ic)("settings:user-management:loaded")},methods:{t:i.Tl,registerAction(t,e,s,a){return this.externalActions.push({icon:t,text:e,action:s,enabled:a}),this.externalActions}}});var ts=a(11196),es={};es.styleTagTransform=L(),es.setAttributes=k(),es.insert=x().bind(null,"head"),es.domAPI=b(),es.insertStyleElement=G(),f()(ts.A,es),ts.A&&ts.A.locals&&ts.A.locals;const ss=(0,I.A)(Ze,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcAppContent",{attrs:{"page-heading":t.pageHeading}},[e("UserList",{attrs:{"selected-group":t.selectedGroupDecoded,"external-actions":t.externalActions}})],1)}),[],!1,null,"4684ed00",null).exports},66423:(e,s,a)=>{a.r(s),a.d(s,{default:()=>ht});var i=a(85471),n=a(9165),r=a(53334),o=a(42530),l=a(52439),d=a(27345),c=a(85865),u=a(21376),g=a(85947),A=a(6695),p=a(35810),h=a(63814),m=a(19051),C=a(80236),v=a(14727),w=a(32073),f=a(3226),_=a(67607),b=a(15916),y=a(95668),x=a(36620);const N={name:"UserSettingsDialog",components:{NcAppSettingsDialog:C.N,NcAppSettingsSection:v.A,NcCheckboxRadioSwitch:w.A,NcNoteCard:f.A,NcSelect:_.default},props:{open:{type:Boolean,required:!0}},data:()=>({selectedQuota:!1,loadingSendMail:!1}),computed:{groupSorting:{get(){return this.$store.getters.getGroupSorting===b.q.GroupName?"name":"member-count"},set(t){this.$store.commit("setGroupSorting","name"===t?b.q.GroupName:b.q.UserCount)}},isGroupSortingEnforced(){return this.$store.getters.getServerData.forceSortGroupByName},isModalOpen:{get(){return this.open},set(t){this.$emit("update:open",t)}},showConfig(){return this.$store.getters.getShowConfig},settings(){return this.$store.getters.getServerData},showLanguages:{get(){return this.showConfig.showLanguages},set(t){this.setShowConfig("showLanguages",t)}},showFirstLogin:{get(){return this.showConfig.showFirstLogin},set(t){this.setShowConfig("showFirstLogin",t)}},showLastLogin:{get(){return this.showConfig.showLastLogin},set(t){this.setShowConfig("showLastLogin",t)}},showUserBackend:{get(){return this.showConfig.showUserBackend},set(t){this.setShowConfig("showUserBackend",t)}},showStoragePath:{get(){return this.showConfig.showStoragePath},set(t){this.setShowConfig("showStoragePath",t)}},quotaOptions(){const t=this.settings.quotaPreset.reduce(((t,e)=>t.concat({id:e,label:e})),[]);return this.settings.allowUnlimitedQuota&&t.unshift(y.SA),t},defaultQuota:{get(){return!1!==this.selectedQuota?this.selectedQuota:this.settings.defaultQuota!==y.SA.id&&OC.Util.computerFileSize(this.settings.defaultQuota)>=0?{id:this.settings.defaultQuota,label:this.settings.defaultQuota}:y.SA},set(t){this.selectedQuota=t}},sendWelcomeMail:{get(){return this.settings.newUserSendEmail},async set(t){try{this.loadingSendMail=!0,this.$store.commit("setServerData",{...this.settings,newUserSendEmail:t}),await m.Ay.post((0,h.Jv)("/settings/users/preferences/newUser.sendEmail"),{value:t?"yes":"no"})}catch(t){x.A.error("Could not update newUser.sendEmail preference",{error:t})}finally{this.loadingSendMail=!1}}}},methods:{filterQuotas(t,e,s){const a=s.toLocaleLowerCase().replaceAll(/\s/g,"");return(e||"").toLocaleLowerCase().replaceAll(/\s/g,"").indexOf(a)>-1},setShowConfig(t,e){this.$store.commit("setShowConfig",{key:t,value:e})},validateQuota(t){"object"==typeof t&&(t=t?.id||t.label);const e=(0,p.lT)(t,!0);return null===e?y.SA:{id:t=(0,p.v7)(e),label:t}},setDefaultQuota(t="none"){"none"===t&&(t=y.SA),this.$store.dispatch("setAppConfig",{app:"files",key:"default_quota",value:t.id?t.id:t}).then((()=>{"object"!=typeof t&&(t={id:t,label:t}),this.defaultQuota=t}))}}};var k=a(85072),S=a.n(k),G=a(97825),U=a.n(G),L=a(77659),D=a.n(L),B=a(55056),I=a.n(B),q=a(10540),O=a.n(q),M=a(41113),$=a.n(M),F=a(7515),T={};T.styleTagTransform=$(),T.setAttributes=I(),T.insert=D().bind(null,"head"),T.domAPI=U(),T.insertStyleElement=O(),S()(F.A,T),F.A&&F.A.locals&&F.A.locals;var E=a(14486);const P=(0,E.A)(N,(function(){var t=this,e=t._self._c;return e("NcAppSettingsDialog",{attrs:{open:t.isModalOpen,"show-navigation":!0,name:t.t("settings","Account management settings")},on:{"update:open":function(e){t.isModalOpen=e}}},[e("NcAppSettingsSection",{attrs:{id:"visibility-settings",name:t.t("settings","Visibility")}},[e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"showLanguages",checked:t.showLanguages},on:{"update:checked":function(e){t.showLanguages=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show language"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"showUserBackend",checked:t.showUserBackend},on:{"update:checked":function(e){t.showUserBackend=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show account backend"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"showStoragePath",checked:t.showStoragePath},on:{"update:checked":function(e){t.showStoragePath=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show storage path"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"showFirstLogin",checked:t.showFirstLogin},on:{"update:checked":function(e){t.showFirstLogin=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show first login"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"showLastLogin",checked:t.showLastLogin},on:{"update:checked":function(e){t.showLastLogin=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show last login"))+"\n\t\t")])],1),t._v(" "),e("NcAppSettingsSection",{attrs:{id:"groups-sorting",name:t.t("settings","Sorting")}},[t.isGroupSortingEnforced?e("NcNoteCard",{attrs:{type:"warning"}},[t._v("\n\t\t\t"+t._s(t.t("settings","The system config enforces sorting the groups by name. This also disables showing the member count."))+"\n\t\t")]):t._e(),t._v(" "),e("fieldset",[e("legend",[t._v(t._s(t.t("settings","Group list sorting")))]),t._v(" "),e("NcNoteCard",{staticClass:"dialog__note",attrs:{type:"info",text:t.t("settings","Sorting only applies to the currently loaded groups for performance reasons. Groups will be loaded as you navigate or search through the list.")}}),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"radio",checked:t.groupSorting,"data-test":"sortGroupsByMemberCount",disabled:t.isGroupSortingEnforced,name:"group-sorting-mode",value:"member-count"},on:{"update:checked":function(e){t.groupSorting=e}}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","By member count"))+"\n\t\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"radio",checked:t.groupSorting,"data-test":"sortGroupsByName",disabled:t.isGroupSortingEnforced,name:"group-sorting-mode",value:"name"},on:{"update:checked":function(e){t.groupSorting=e}}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","By name"))+"\n\t\t\t")])],1)],1),t._v(" "),e("NcAppSettingsSection",{attrs:{id:"email-settings",name:t.t("settings","Send email")}},[e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"sendWelcomeMail",checked:t.sendWelcomeMail,disabled:t.loadingSendMail},on:{"update:checked":function(e){t.sendWelcomeMail=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Send welcome email to new accounts"))+"\n\t\t")])],1),t._v(" "),e("NcAppSettingsSection",{attrs:{id:"default-settings",name:t.t("settings","Defaults")}},[e("NcSelect",{attrs:{clearable:!1,"create-option":t.validateQuota,"filter-by":t.filterQuotas,"input-label":t.t("settings","Default quota"),options:t.quotaOptions,placement:"top",placeholder:t.t("settings","Select default quota"),taggable:""},on:{"option:selected":t.setDefaultQuota},model:{value:t.defaultQuota,callback:function(e){t.defaultQuota=e},expression:"defaultQuota"}})],1)],1)}),[],!1,null,"29922c80",null).exports;var z=a(85168),R=a(13073),Q=a(54914),W=a(24387),H=a(44131),K=a(55925),j=a(50341),Y=a(70952),X=a(2645),V=a(57505),J=a(64711),Z=a(43261),tt=a(79759),et=a(2413);const st={name:"GroupListItem",components:{AccountGroup:Z.A,Delete:tt.A,Fragment:Q.F,NcActionButton:V.A,NcActionInput:H.A,NcAppNavigationItem:l.A,NcButton:u.A,NcCounterBubble:g.A,NcModal:J.A,NcNoteCard:f.A,Pencil:et.A},props:{active:{type:Boolean,required:!0},count:{type:Number,default:null},id:{type:String,required:!0},name:{type:String,required:!0}},data:()=>({loadingRenameGroup:!1,openGroupMenu:!1,showRemoveGroupModal:!1}),computed:{settings(){return this.$store.getters.getServerData}},methods:{handleGroupMenuOpen(){this.openGroupMenu=!0},async renameGroup(t){if(""===t.trim())return;const e=this.$refs.displayNameInput.$el.querySelector('input[type="text"]').value;if(""!==e.trim())try{this.openGroupMenu=!1,this.loadingRenameGroup=!0,await this.$store.dispatch("renameGroup",{groupid:t.trim(),displayName:e.trim()}),this.loadingRenameGroup=!1}catch{this.openGroupMenu=!0,this.loadingRenameGroup=!1}},async removeGroup(){try{await this.$store.dispatch("removeGroup",this.id),this.showRemoveGroupModal=!1}catch(e){(0,z.Qg)(t("settings",'Failed to delete group "{group}"',{group:this.name}))}}}};var at=a(38775),it={};it.styleTagTransform=$(),it.setAttributes=I(),it.insert=D().bind(null,"head"),it.domAPI=U(),it.insertStyleElement=O(),S()(at.A,it),at.A&&at.A.locals&&at.A.locals;const nt=(0,E.A)(st,(function(){var t=this,e=t._self._c;return e("Fragment",[t.showRemoveGroupModal?e("NcModal",{on:{close:function(e){t.showRemoveGroupModal=!1}}},[e("div",{staticClass:"modal__content"},[e("h2",{staticClass:"modal__header"},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Please confirm the group removal"))+"\n\t\t\t")]),t._v(" "),e("NcNoteCard",{attrs:{type:"warning","show-alert":""}},[t._v("\n\t\t\t\t"+t._s(t.t("settings",'You are about to delete the group "{group}". The accounts will NOT be deleted.',{group:t.name}))+"\n\t\t\t")]),t._v(" "),e("div",{staticClass:"modal__button-row"},[e("NcButton",{attrs:{type:"secondary"},on:{click:function(e){t.showRemoveGroupModal=!1}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("settings","Cancel"))+"\n\t\t\t\t")]),t._v(" "),e("NcButton",{attrs:{type:"primary"},on:{click:t.removeGroup}},[t._v("\n\t\t\t\t\t"+t._s(t.t("settings","Confirm"))+"\n\t\t\t\t")])],1)],1)]):t._e(),t._v(" "),e("NcAppNavigationItem",{key:t.id,ref:"listItem",attrs:{exact:!0,name:t.name,to:{name:"group",params:{selectedGroup:encodeURIComponent(t.id)}},loading:t.loadingRenameGroup,"menu-open":t.openGroupMenu},on:{"update:menuOpen":t.handleGroupMenuOpen},scopedSlots:t._u([{key:"icon",fn:function(){return[e("AccountGroup",{attrs:{size:20}})]},proxy:!0},{key:"counter",fn:function(){return[t.count?e("NcCounterBubble",{attrs:{type:t.active?"highlighted":void 0}},[t._v("\n\t\t\t\t"+t._s(t.count)+"\n\t\t\t")]):t._e()]},proxy:!0},{key:"actions",fn:function(){return["admin"!==t.id&&"disabled"!==t.id&&(t.settings.isAdmin||t.settings.isDelegatedAdmin)?e("NcActionInput",{ref:"displayNameInput",attrs:{"trailing-button-label":t.t("settings","Submit"),type:"text",value:t.name,label:t.t("settings","Rename group")},on:{submit:function(e){return t.renameGroup(t.id)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Pencil",{attrs:{size:20}})]},proxy:!0}],null,!1,580569589)}):t._e(),t._v(" "),"admin"!==t.id&&"disabled"!==t.id&&(t.settings.isAdmin||t.settings.isDelegatedAdmin)?e("NcActionButton",{on:{click:function(e){t.showRemoveGroupModal=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Delete",{attrs:{size:20}})]},proxy:!0}],null,!1,2705356561)},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Delete group"))+"\n\t\t\t")]):t._e()]},proxy:!0}])})],1)}),[],!1,null,"0540d351",null).exports;function rt(t){return void 0===t?null:{id:t.id,title:t.name,usercount:t.usercount??0,count:Math.max(0,(t.usercount??0)-(t.disabled??0))}}const ot=t=>{const e=(0,i.EW)((()=>t.value.filter((t=>"disabled"!==t.id&&"__nc_internal_recent"!==t.id&&"admin"!==t.id)).map((t=>rt(t))).filter((t=>null!==t)))),s=(0,i.EW)((()=>rt(t.value.find((t=>"admin"===t.id))))),a=(0,i.EW)((()=>rt(t.value.find((t=>"disabled"===t.id)))));return{adminGroup:s,recentGroup:(0,i.EW)((()=>rt(t.value.find((t=>"__nc_internal_recent"===t.id))))),disabledGroup:a,userGroups:e}};var lt=a(14744),dt=a(46984);const ct=(0,i.pM)({__name:"AppNavigationGroupList",setup(t){const e=(0,lt.P)(),s=(0,W.lq)(),a=(0,W.rd)();(0,i.KC)((async()=>{await G()}));const o=(0,i.EW)((()=>s.params?.selectedGroup)),l=(0,i.EW)((()=>o.value?decodeURIComponent(o.value):null)),c=(0,i.EW)((()=>p.value?e.getters.getSortedGroups:e.getters.getSubAdminGroups)),{userGroups:u}=ot(c),g=(0,i.EW)((()=>e.getters.getServerData)),p=(0,i.EW)((()=>g.value.isAdmin||g.value.isDelegatedAdmin)),h=(0,i.KR)(!1),m=(0,i.KR)(!1),C=(0,i.KR)(!1),v=(0,i.KR)(""),w=(0,i.KR)(!1),f=(0,i.KR)(0),_=(0,i.KR)(""),b=(0,i.EW)((()=>{if(p.value)return u.value;const t=_.value.toLowerCase();return u.value.filter((e=>-1!==e.id.toLowerCase().search(t)||-1!==e.title.toLowerCase().search(t)))})),y=(0,i.KR)([]),N=(0,i.EW)((()=>y.value.findLast((t=>t?.$vnode?.key===u.value?.at(-1)?.id))?.$refs?.listItem?.$el)),k=(0,R.ITo)(N);(0,i.wB)(k,(async()=>{k.value&&await G()})),(0,i.wB)(_,(async()=>{e.commit("resetGroups"),f.value=0,await G()}));const S=(0,i.KR)();async function G(){if(p.value){S.value&&S.value.cancel(),w.value=!0;try{S.value=(0,dt.N_)({search:_.value,offset:f.value,limit:25});const t=await S.value;t.length>0&&(f.value+=25);for(const s of t)e.commit("addGroup",s)}catch(t){x.A.error((0,r.t)("settings","Failed to load groups"),{error:t})}S.value=void 0,w.value=!1}}return{__sfc:!0,store:e,route:s,router:a,selectedGroup:o,selectedGroupDecoded:l,groups:c,userGroups:u,settings:g,isAdminOrDelegatedAdmin:p,isAddGroupOpen:h,loadingAddGroup:m,hasAddGroupError:C,newGroupName:v,loadingGroups:w,offset:f,groupsSearchQuery:_,filteredGroups:b,groupListItems:y,lastGroupListItem:N,isLastGroupVisible:k,promise:S,loadGroups:G,createGroup:async function(){C.value=!1;const t=v.value.trim();if(""!==t){h.value=!1,m.value=!0;try{await e.dispatch("addGroup",t),await a.push({name:"group",params:{selectedGroup:encodeURIComponent(t)}});const s=y.value.findLast((e=>e?.$vnode?.key===t));s?.$refs?.listItem?.$el?.scrollIntoView({behavior:"smooth",block:"nearest"}),v.value=""}catch{(0,z.Qg)((0,r.t)("settings","Failed to create group"))}m.value=!1}else C.value=!0},mdiAccountGroup:n.n7C,mdiPlus:n.biz,t:r.t,Fragment:Q.F,NcActionInput:H.A,NcActionText:K.A,NcAppNavigationCaption:j.N,NcAppNavigationList:d.A,NcAppNavigationSearch:Y.N,NcIconSvgWrapper:A.A,NcLoadingIcon:X.A,GroupListItem:nt}}}),ut=(0,E.A)(ct,(function(){var t=this,e=t._self._c,s=t._self._setupProxy;return e(s.Fragment,[e(s.NcAppNavigationCaption,{attrs:{name:s.t("settings","Groups"),disabled:s.loadingAddGroup,"aria-label":s.loadingAddGroup?s.t("settings","Creating group…"):s.t("settings","Create group"),"force-menu":"","is-heading":"",open:s.isAddGroupOpen},on:{"update:open":function(t){s.isAddGroupOpen=t}},scopedSlots:t._u([s.isAdminOrDelegatedAdmin?{key:"actionsTriggerIcon",fn:function(){return[s.loadingAddGroup?e(s.NcLoadingIcon):e(s.NcIconSvgWrapper,{attrs:{path:s.mdiPlus}})]},proxy:!0}:null,s.isAdminOrDelegatedAdmin?{key:"actions",fn:function(){return[e(s.NcActionText,{scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiAccountGroup}})]},proxy:!0}],null,!1,3607647275)},[t._v("\n\t\t\t\t"+t._s(s.t("settings","Create group"))+"\n\t\t\t")]),t._v(" "),e(s.NcActionInput,{attrs:{label:s.t("settings","Group name"),"data-cy-users-settings-new-group-name":"","label-outside":!1,disabled:s.loadingAddGroup,value:s.newGroupName,error:s.hasAddGroupError,"helper-text":s.hasAddGroupError?s.t("settings","Please enter a valid group name"):""},on:{"update:value":function(t){s.newGroupName=t},submit:s.createGroup}})]},proxy:!0}:null],null,!0)}),t._v(" "),e(s.NcAppNavigationSearch,{attrs:{label:s.t("settings","Search groups…")},model:{value:s.groupsSearchQuery,callback:function(t){s.groupsSearchQuery=t},expression:"groupsSearchQuery"}}),t._v(" "),e("p",{staticClass:"hidden-visually",attrs:{id:"group-list-desc"}},[t._v("\n\t\t"+t._s(s.t("settings","List of groups. This list is not fully populated for performance reasons. The groups will be loaded as you navigate or search through the list."))+"\n\t")]),t._v(" "),e(s.NcAppNavigationList,{staticClass:"account-management__group-list",attrs:{"aria-describedby":"group-list-desc","data-cy-users-settings-navigation-groups":"custom"}},[t._l(s.filteredGroups,(function(t){return e(s.GroupListItem,{key:t.id,ref:"groupListItems",refInFor:!0,attrs:{id:t.id,active:s.selectedGroupDecoded===t.id,name:t.title,count:t.count}})})),t._v(" "),s.loadingGroups?e("div",{attrs:{role:"note"}},[e(s.NcLoadingIcon,{attrs:{name:s.t("settings","Loading groups…")}})],1):t._e()],2)],1)}),[],!1,null,null,null).exports,gt=(0,i.pM)({__name:"UserManagementNavigation",setup(t){const e=(0,W.lq)(),s=(0,lt.P)(),a=(0,i.KR)(!1),p=(0,i.EW)((()=>e.params?.selectedGroup)),h=(0,i.EW)((()=>p.value?decodeURIComponent(p.value):null)),m=(0,i.EW)((()=>s.getters.getUserCount)),C=(0,i.EW)((()=>s.getters.getSortedGroups)),{adminGroup:v,recentGroup:w,disabledGroup:f}=ot(C),_=(0,i.EW)((()=>s.getters.getServerData)),b=(0,i.EW)((()=>_.value.isAdmin||_.value.isDelegatedAdmin));return{__sfc:!0,route:e,store:s,isDialogOpen:a,selectedGroup:p,selectedGroupDecoded:h,userCount:m,groups:C,adminGroup:v,recentGroup:w,disabledGroup:f,settings:_,isAdminOrDelegatedAdmin:b,showNewUserMenu:function(){s.commit("setShowConfig",{key:"showNewUserForm",value:!0})},mdiAccount:n.Gbn,mdiAccountOff:n.lBC,mdiCog:n.CZ3,mdiPlus:n.biz,mdiShieldAccount:n.Jey,mdiHistory:n.LP2,t:r.Tl,NcAppNavigation:o.A,NcAppNavigationItem:l.A,NcAppNavigationList:d.A,NcAppNavigationNew:c.A,NcButton:u.A,NcCounterBubble:g.A,NcIconSvgWrapper:A.A,UserSettingsDialog:P,AppNavigationGroupList:ut}}});var At=a(58688),pt={};pt.styleTagTransform=$(),pt.setAttributes=I(),pt.insert=D().bind(null,"head"),pt.domAPI=U(),pt.insertStyleElement=O(),S()(At.A,pt),At.A&&At.A.locals&&At.A.locals;const ht=(0,E.A)(gt,(function(){var t=this,e=t._self._c,s=t._self._setupProxy;return e(s.NcAppNavigation,{staticClass:"account-management__navigation",attrs:{"aria-label":s.t("settings","Account management")},scopedSlots:t._u([{key:"footer",fn:function(){return[e(s.NcButton,{staticClass:"account-management__settings-toggle",attrs:{type:"tertiary"},on:{click:function(t){s.isDialogOpen=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiCog}})]},proxy:!0}])},[t._v("\n\t\t\t"+t._s(s.t("settings","Account management settings"))+"\n\t\t")]),t._v(" "),e(s.UserSettingsDialog,{attrs:{open:s.isDialogOpen},on:{"update:open":function(t){s.isDialogOpen=t}}})]},proxy:!0}])},[e(s.NcAppNavigationNew,{attrs:{"button-id":"new-user-button",text:s.t("settings","New account")},on:{click:s.showNewUserMenu,keyup:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:s.showNewUserMenu.apply(null,arguments)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"space",32,e.key,[" ","Spacebar"])?null:s.showNewUserMenu.apply(null,arguments)}]},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiPlus}})]},proxy:!0}])}),t._v(" "),e(s.NcAppNavigationList,{staticClass:"account-management__system-list",attrs:{"data-cy-users-settings-navigation-groups":"system"}},[e(s.NcAppNavigationItem,{attrs:{id:"everyone",exact:!0,name:s.t("settings","All accounts"),to:{name:"users"}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiAccount}})]},proxy:!0},{key:"counter",fn:function(){return[s.userCount?e(s.NcCounterBubble,{attrs:{type:s.selectedGroupDecoded?void 0:"highlighted"}},[t._v("\n\t\t\t\t\t"+t._s(s.userCount)+"\n\t\t\t\t")]):t._e()]},proxy:!0}])}),t._v(" "),s.settings.isAdmin?e(s.NcAppNavigationItem,{attrs:{id:"admin",exact:!0,name:s.t("settings","Admins"),to:{name:"group",params:{selectedGroup:"admin"}}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiShieldAccount}})]},proxy:!0},{key:"counter",fn:function(){return[s.adminGroup&&s.adminGroup.count>0?e(s.NcCounterBubble,{attrs:{type:"admin"===s.selectedGroupDecoded?"highlighted":void 0}},[t._v("\n\t\t\t\t\t"+t._s(s.adminGroup.count)+"\n\t\t\t\t")]):t._e()]},proxy:!0}],null,!1,2218088905)}):t._e(),t._v(" "),s.isAdminOrDelegatedAdmin?e(s.NcAppNavigationItem,{attrs:{id:"recent",exact:!0,name:s.t("settings","Recently active"),to:{name:"group",params:{selectedGroup:"__nc_internal_recent"}}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiHistory}})]},proxy:!0},{key:"counter",fn:function(){return[s.recentGroup?.usercount?e(s.NcCounterBubble,{attrs:{type:"__nc_internal_recent"===s.selectedGroupDecoded?"highlighted":void 0}},[t._v("\n\t\t\t\t\t"+t._s(s.recentGroup.usercount)+"\n\t\t\t\t")]):t._e()]},proxy:!0}],null,!1,2299424282)}):t._e(),t._v(" "),s.disabledGroup&&(s.disabledGroup.usercount>0||-1===s.disabledGroup.usercount)?e(s.NcAppNavigationItem,{attrs:{id:"disabled",exact:!0,name:s.t("settings","Disabled accounts"),to:{name:"group",params:{selectedGroup:"disabled"}}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiAccountOff}})]},proxy:!0},s.disabledGroup.usercount>0?{key:"counter",fn:function(){return[e(s.NcCounterBubble,{attrs:{type:"disabled"===s.selectedGroupDecoded?"highlighted":void 0}},[t._v("\n\t\t\t\t\t"+t._s(s.disabledGroup.usercount)+"\n\t\t\t\t")])]},proxy:!0}:null],null,!0)}):t._e()],1),t._v(" "),e(s.AppNavigationGroupList)],1)}),[],!1,null,"539a4ad0",null).exports},78897:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".user-list__row[data-v-549fcd14]{position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.user-list__row[data-v-549fcd14]:hover{background-color:var(--color-background-hover)}.user-list__row:hover .row__cell[data-v-549fcd14]:not(.row__cell--actions){background-color:var(--color-background-hover)}.user-list__row .select--fill[data-v-549fcd14]{max-width:calc(var(--cell-width-large) - 2*var(--cell-padding))}.row__cell[data-v-549fcd14]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.row__cell strong[data-v-549fcd14],.row__cell span[data-v-549fcd14],.row__cell label[data-v-549fcd14]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.row__cell--avatar[data-v-549fcd14],.row__cell--displayname[data-v-549fcd14]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.row__cell--avatar[data-v-549fcd14]{inset-inline-start:0}.row__cell--displayname[data-v-549fcd14]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.row__cell--username[data-v-549fcd14]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.row__cell--avatar[data-v-549fcd14]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.row__cell--multiline span[data-v-549fcd14]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.row__cell--multiline span[data-v-549fcd14]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.row__cell--large[data-v-549fcd14]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.row__cell--obfuscated[data-v-549fcd14]{min-width:400px;width:400px}.row__cell--fill[data-v-549fcd14]{min-width:var(--cell-width-large);width:100%}.row__cell--actions[data-v-549fcd14]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.row__subtitle[data-v-549fcd14]{color:var(--color-text-maxcontrast)}.row__cell[data-v-549fcd14]{border-bottom:1px solid var(--color-border)}.row__cell[data-v-549fcd14] .v-select.select{min-width:var(--cell-min-width)}.row__progress[data-v-549fcd14]{margin-top:4px}.row__progress--warn[data-v-549fcd14]::-moz-progress-bar{background:var(--color-warning) !important}.row__progress--warn[data-v-549fcd14]::-webkit-progress-value{background:var(--color-warning) !important}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/UserRow.vue","webpack://./apps/settings/src/components/Users/shared/styles.scss"],names:[],mappings:"AAGA,iCCGC,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CDLA,uCACC,8CAAA,CAEA,2EACC,8CAAA,CAKF,+CACC,+DAAA,CCDD,4BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,sGAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,6EAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,oCACC,oBAAA,CAGD,yCACC,2CAAA,CACA,+CAAA,CAAA,CAIF,sCACC,yDAAA,CAGD,oCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,4CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,4CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,mCACC,iCAAA,CACA,6BAAA,CAGD,wCACC,eAAA,CACA,WAAA,CAID,kCACC,iCAAA,CACA,UAAA,CAGD,qCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,gCACC,mCAAA,CDpFD,4BACC,2CAAA,CAGC,6CACC,+BAAA,CAKH,gCACC,cAAA,CAGC,yDACC,0CAAA,CAED,8DACC,0CAAA",sourcesContent:["\n@use './shared/styles';\n\n.user-list__row {\n\t@include styles.row;\n\n\t&:hover {\n\t\tbackground-color: var(--color-background-hover);\n\n\t\t.row__cell:not(.row__cell--actions) {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Limit width of select in fill cell\n\t.select--fill {\n\t\tmax-width: calc(var(--cell-width-large) - (2 * var(--cell-padding)));\n\t}\n}\n\n.row {\n\t@include styles.cell;\n\n\t&__cell {\n\t\tborder-bottom: 1px solid var(--color-border);\n\n\t\t:deep {\n\t\t\t.v-select.select {\n\t\t\t\tmin-width: var(--cell-min-width);\n\t\t\t}\n\t\t}\n\t}\n\n\t&__progress {\n\t\tmargin-top: 4px;\n\n\t\t&--warn {\n\t\t\t&::-moz-progress-bar {\n\t\t\t\tbackground: var(--color-warning) !important;\n\t\t\t}\n\t\t\t&::-webkit-progress-value {\n\t\t\t\tbackground: var(--color-warning) !important;\n\t\t\t}\n\t\t}\n\t}\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n@mixin row {\n\tposition: relative;\n\tdisplay: flex;\n\tmin-width: 100%;\n\twidth: fit-content;\n\theight: var(--row-height);\n\tbackground-color: var(--color-main-background);\n}\n\n@mixin cell {\n\t&__cell {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\tpadding: 0 var(--cell-padding);\n\t\tmin-width: var(--cell-width);\n\t\twidth: var(--cell-width);\n\t\tcolor: var(--color-main-text);\n\n\t\tstrong,\n\t\tspan,\n\t\tlabel {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow-wrap: anywhere;\n\t\t}\n\n\t\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\n\t\t\t&--avatar,\n\t\t\t&--displayname {\n\t\t\t\tposition: sticky;\n\t\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\t\tbackground-color: var(--color-main-background);\n\t\t\t}\n\n\t\t\t&--avatar {\n\t\t\t\tinset-inline-start: 0;\n\t\t\t}\n\n\t\t\t&--displayname {\n\t\t\t\tinset-inline-start: var(--avatar-cell-width);\n\t\t\t\tborder-inline-end: 1px solid var(--color-border);\n\t\t\t}\n\t\t}\n\n\t\t&--username {\n\t\t\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\n\t\t}\n\n\t\t&--avatar {\n\t\t\tmin-width: var(--avatar-cell-width);\n\t\t\twidth: var(--avatar-cell-width);\n\t\t\talign-items: center;\n\t\t\tpadding: 0;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&--multiline {\n\t\t\tspan {\n\t\t\t\tline-height: 1.3em;\n\t\t\t\twhite-space: unset;\n\n\t\t\t\t@supports (-webkit-line-clamp: 2) {\n\t\t\t\t\tdisplay: -webkit-box;\n\t\t\t\t\t-webkit-line-clamp: 2;\n\t\t\t\t\t-webkit-box-orient: vertical;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&--large {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: var(--cell-width-large);\n\t\t}\n\n\t\t&--obfuscated {\n\t\t\tmin-width: 400px;\n\t\t\twidth: 400px;\n\t\t}\n\n\t\t// Fill remaining row space with cell\n\t\t&--fill {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t&--actions {\n\t\t\tposition: sticky;\n\t\t\tinset-inline-end: 0;\n\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tmin-width: 110px;\n\t\t\twidth: 110px;\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tborder-inline-start: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t&__subtitle {\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n}\n"],sourceRoot:""}]);const o=r},79722:t=>{t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M5.6%207.4L7%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6m6%200L13%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6z%27/%3e%3c/svg%3e"},83567:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".dialog__form[data-v-4f7fcac6]{display:flex;flex-direction:column;align-items:center;padding:0 8px;gap:4px 0}.dialog__item[data-v-4f7fcac6]{width:100%}.dialog__item[data-v-4f7fcac6]:not(:focus):not(:active){border-color:var(--color-border-dark)}.dialog__hint[data-v-4f7fcac6]{color:var(--color-text-maxcontrast);margin-top:8px;align-self:flex-start}.dialog__label[data-v-4f7fcac6]{display:block;padding:4px 0}.dialog__select[data-v-4f7fcac6]{width:100%}.dialog__managers[data-v-4f7fcac6]{margin-bottom:12px}.dialog__submit[data-v-4f7fcac6]{margin-top:4px;margin-bottom:8px}.dialog[data-v-4f7fcac6] .dialog__actions{margin:auto}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/NewUserDialog.vue"],names:[],mappings:"AAEC,+BACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,aAAA,CACA,SAAA,CAGD,+BACC,UAAA,CAEA,wDACC,qCAAA,CAIF,+BACC,mCAAA,CACA,cAAA,CACA,qBAAA,CAGD,gCACC,aAAA,CACA,aAAA,CAGD,iCACC,UAAA,CAGD,mCACC,kBAAA,CAGD,iCACC,cAAA,CACA,iBAAA,CAIA,0CACC,WAAA",sourcesContent:["\n.dialog {\n\t&__form {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\tpadding: 0 8px;\n\t\tgap: 4px 0;\n\t}\n\n\t&__item {\n\t\twidth: 100%;\n\n\t\t&:not(:focus):not(:active) {\n\t\t\tborder-color: var(--color-border-dark);\n\t\t}\n\t}\n\n\t&__hint {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tmargin-top: 8px;\n\t\talign-self: flex-start;\n\t}\n\n\t&__label {\n\t\tdisplay: block;\n\t\tpadding: 4px 0;\n\t}\n\n\t&__select {\n\t\twidth: 100%;\n\t}\n\n\t&__managers {\n\t\tmargin-bottom: 12px;\n\t}\n\n\t&__submit {\n\t\tmargin-top: 4px;\n\t\tmargin-bottom: 8px;\n\t}\n\n\t:deep {\n\t\t.dialog__actions {\n\t\t\tmargin: auto;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},86886:t=>{t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M8.6%2016.6l4.6-4.6-4.6-4.6L10%206l6%206-6%206-1.4-1.4z%27/%3e%3c/svg%3e"},91544:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".empty[data-v-73fd953a] .icon-vue{width:64px;height:64px}.empty[data-v-73fd953a] .icon-vue svg{max-width:64px;max-height:64px}","",{version:3,sources:["webpack://./apps/settings/src/components/UserList.vue"],names:[],mappings:"AAKE,kCACC,UAAA,CACA,WAAA,CAEA,sCACC,cAAA,CACA,eAAA",sourcesContent:["\n@use './Users/shared/styles' as *;\n\n.empty {\n\t:deep {\n\t\t.icon-vue {\n\t\t\twidth: 64px;\n\t\t\theight: 64px;\n\n\t\t\tsvg {\n\t\t\t\tmax-width: 64px;\n\t\t\t\tmax-height: 64px;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},95668:(t,e,s)=>{s.d(e,{HK:()=>r,MY:()=>n,SA:()=>i});var a=s(53334);const i={id:"none",label:(0,a.Tl)("settings","Unlimited")},n={id:"default",label:(0,a.Tl)("settings","Default quota")},r=t=>{const e=Object.keys(t);return 1===e.length&&"id"===e.at(0)}}}]); -//# sourceMappingURL=settings-users-3239.js.map?v=0b231fba2b1dc524137a \ No newline at end of file +"use strict";(self.webpackChunknextcloud=self.webpackChunknextcloud||[]).push([[3239,7471],{7515:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".dialog__note[data-v-29922c80]{font-weight:normal}fieldset[data-v-29922c80]{font-weight:bold}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/UserSettingsDialog.vue"],names:[],mappings:"AAEC,+BACC,kBAAA,CAIF,0BACC,gBAAA",sourcesContent:["\n.dialog {\n\t&__note {\n\t\tfont-weight: normal;\n\t}\n}\n\nfieldset {\n\tfont-weight: bold;\n}\n"],sourceRoot:""}]);const o=r},11196:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".app-content[data-v-4684ed00]{display:flex;overflow:hidden;flex-direction:column;max-height:100%}","",{version:3,sources:["webpack://./apps/settings/src/views/UserManagement.vue"],names:[],mappings:"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA",sourcesContent:["\n.app-content {\n\t// Virtual list needs to be full height and is scrollable\n\tdisplay: flex;\n\toverflow: hidden;\n\tflex-direction: column;\n\tmax-height: 100%;\n}\n"],sourceRoot:""}]);const o=r},12795:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".user-list[data-v-21942da5]{--avatar-cell-width: 48px;--cell-padding: 7px;--cell-width: 200px;--cell-width-large: 300px;--cell-min-width: calc(var(--cell-width) - (2 * var(--cell-padding)));--sticky-column-z-index: calc(var(--vs-dropdown-z-index) + 1);display:block;overflow:auto;height:100%;will-change:scroll-position}.user-list__header[data-v-21942da5],.user-list__footer[data-v-21942da5]{position:sticky;display:block}.user-list__header[data-v-21942da5]{top:0;z-index:calc(var(--sticky-column-z-index) + 1)}.user-list__footer[data-v-21942da5]{inset-inline-start:0}.user-list__body[data-v-21942da5]{display:flex;flex-direction:column;width:100%}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/VirtualList.vue"],names:[],mappings:"AACA,4BACC,yBAAA,CACA,mBAAA,CACA,mBAAA,CACA,yBAAA,CACA,qEAAA,CACA,6DAAA,CAGA,aAAA,CACA,aAAA,CACA,WAAA,CACA,2BAAA,CAEA,wEAEC,eAAA,CAEA,aAAA,CAGD,oCACC,KAAA,CACA,8CAAA,CAGD,oCACC,oBAAA,CAGD,kCACC,YAAA,CACA,qBAAA,CACA,UAAA",sourcesContent:["\n.user-list {\n\t--avatar-cell-width: 48px;\n\t--cell-padding: 7px;\n\t--cell-width: 200px;\n\t--cell-width-large: 300px;\n\t--cell-min-width: calc(var(--cell-width) - (2 * var(--cell-padding)));\n\t--sticky-column-z-index: calc(var(--vs-dropdown-z-index) + 1); // Keep the sticky column on top of the select dropdown\n\n\t// Necessary for virtual scroll optimized rendering\n\tdisplay: block;\n\toverflow: auto;\n\theight: 100%;\n\twill-change: scroll-position;\n\n\t&__header,\n\t&__footer {\n\t\tposition: sticky;\n\t\t// Fix sticky positioning in Firefox\n\t\tdisplay: block;\n\t}\n\n\t&__header {\n\t\ttop: 0;\n\t\tz-index: calc(var(--sticky-column-z-index) + 1);\n\t}\n\n\t&__footer {\n\t\tinset-inline-start: 0;\n\t}\n\n\t&__body {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\twidth: 100%;\n\t}\n}\n"],sourceRoot:""}]);const o=r},18033:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".footer[data-v-20636959]{position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.footer__cell[data-v-20636959]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.footer__cell strong[data-v-20636959],.footer__cell span[data-v-20636959],.footer__cell label[data-v-20636959]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.footer__cell--avatar[data-v-20636959],.footer__cell--displayname[data-v-20636959]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.footer__cell--avatar[data-v-20636959]{inset-inline-start:0}.footer__cell--displayname[data-v-20636959]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.footer__cell--username[data-v-20636959]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.footer__cell--avatar[data-v-20636959]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.footer__cell--multiline span[data-v-20636959]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.footer__cell--multiline span[data-v-20636959]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.footer__cell--large[data-v-20636959]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.footer__cell--obfuscated[data-v-20636959]{min-width:400px;width:400px}.footer__cell--fill[data-v-20636959]{min-width:var(--cell-width-large);width:100%}.footer__cell--actions[data-v-20636959]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.footer__subtitle[data-v-20636959]{color:var(--color-text-maxcontrast)}.footer__cell[data-v-20636959]{position:sticky;color:var(--color-text-maxcontrast)}.footer__cell--loading[data-v-20636959]{inset-inline-start:0;min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0}.footer__cell--count[data-v-20636959]{inset-inline-start:var(--avatar-cell-width);min-width:var(--cell-width);width:var(--cell-width)}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/UserListFooter.vue","webpack://./apps/settings/src/components/Users/shared/styles.scss"],names:[],mappings:"AAGA,yBCGC,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CAIA,+BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,+GAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,mFAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,uCACC,oBAAA,CAGD,4CACC,2CAAA,CACA,+CAAA,CAAA,CAIF,yCACC,yDAAA,CAGD,uCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,+CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,+CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,sCACC,iCAAA,CACA,6BAAA,CAGD,2CACC,eAAA,CACA,WAAA,CAID,qCACC,iCAAA,CACA,UAAA,CAGD,wCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,mCACC,mCAAA,CDpGD,+BACC,eAAA,CACA,mCAAA,CAEA,wCACC,oBAAA,CACA,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CAGD,sCACC,2CAAA,CACA,2BAAA,CACA,uBAAA",sourcesContent:["\n@use './shared/styles';\n\n.footer {\n\t@include styles.row;\n\t@include styles.cell;\n\n\t&__cell {\n\t\tposition: sticky;\n\t\tcolor: var(--color-text-maxcontrast);\n\n\t\t&--loading {\n\t\t\tinset-inline-start: 0;\n\t\t\tmin-width: var(--avatar-cell-width);\n\t\t\twidth: var(--avatar-cell-width);\n\t\t\talign-items: center;\n\t\t\tpadding: 0;\n\t\t}\n\n\t\t&--count {\n\t\t\tinset-inline-start: var(--avatar-cell-width);\n\t\t\tmin-width: var(--cell-width);\n\t\t\twidth: var(--cell-width);\n\t\t}\n\t}\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n@mixin row {\n\tposition: relative;\n\tdisplay: flex;\n\tmin-width: 100%;\n\twidth: fit-content;\n\theight: var(--row-height);\n\tbackground-color: var(--color-main-background);\n}\n\n@mixin cell {\n\t&__cell {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\tpadding: 0 var(--cell-padding);\n\t\tmin-width: var(--cell-width);\n\t\twidth: var(--cell-width);\n\t\tcolor: var(--color-main-text);\n\n\t\tstrong,\n\t\tspan,\n\t\tlabel {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow-wrap: anywhere;\n\t\t}\n\n\t\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\n\t\t\t&--avatar,\n\t\t\t&--displayname {\n\t\t\t\tposition: sticky;\n\t\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\t\tbackground-color: var(--color-main-background);\n\t\t\t}\n\n\t\t\t&--avatar {\n\t\t\t\tinset-inline-start: 0;\n\t\t\t}\n\n\t\t\t&--displayname {\n\t\t\t\tinset-inline-start: var(--avatar-cell-width);\n\t\t\t\tborder-inline-end: 1px solid var(--color-border);\n\t\t\t}\n\t\t}\n\n\t\t&--username {\n\t\t\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\n\t\t}\n\n\t\t&--avatar {\n\t\t\tmin-width: var(--avatar-cell-width);\n\t\t\twidth: var(--avatar-cell-width);\n\t\t\talign-items: center;\n\t\t\tpadding: 0;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&--multiline {\n\t\t\tspan {\n\t\t\t\tline-height: 1.3em;\n\t\t\t\twhite-space: unset;\n\n\t\t\t\t@supports (-webkit-line-clamp: 2) {\n\t\t\t\t\tdisplay: -webkit-box;\n\t\t\t\t\t-webkit-line-clamp: 2;\n\t\t\t\t\t-webkit-box-orient: vertical;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&--large {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: var(--cell-width-large);\n\t\t}\n\n\t\t&--obfuscated {\n\t\t\tmin-width: 400px;\n\t\t\twidth: 400px;\n\t\t}\n\n\t\t// Fill remaining row space with cell\n\t\t&--fill {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t&--actions {\n\t\t\tposition: sticky;\n\t\t\tinset-inline-end: 0;\n\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tmin-width: 110px;\n\t\t\twidth: 110px;\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tborder-inline-start: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t&__subtitle {\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n}\n"],sourceRoot:""}]);const o=r},24882:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".header[data-v-5c0f8828]{border-bottom:1px solid var(--color-border);position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.header__cell[data-v-5c0f8828]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.header__cell strong[data-v-5c0f8828],.header__cell span[data-v-5c0f8828],.header__cell label[data-v-5c0f8828]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.header__cell--avatar[data-v-5c0f8828],.header__cell--displayname[data-v-5c0f8828]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.header__cell--avatar[data-v-5c0f8828]{inset-inline-start:0}.header__cell--displayname[data-v-5c0f8828]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.header__cell--username[data-v-5c0f8828]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.header__cell--avatar[data-v-5c0f8828]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.header__cell--multiline span[data-v-5c0f8828]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.header__cell--multiline span[data-v-5c0f8828]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.header__cell--large[data-v-5c0f8828]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.header__cell--obfuscated[data-v-5c0f8828]{min-width:400px;width:400px}.header__cell--fill[data-v-5c0f8828]{min-width:var(--cell-width-large);width:100%}.header__cell--actions[data-v-5c0f8828]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.header__subtitle[data-v-5c0f8828]{color:var(--color-text-maxcontrast)}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/UserListHeader.vue","webpack://./apps/settings/src/components/Users/shared/styles.scss"],names:[],mappings:"AAGA,yBACC,2CAAA,CCEA,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CAIA,+BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,+GAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,mFAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,uCACC,oBAAA,CAGD,4CACC,2CAAA,CACA,+CAAA,CAAA,CAIF,yCACC,yDAAA,CAGD,uCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,+CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,+CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,sCACC,iCAAA,CACA,6BAAA,CAGD,2CACC,eAAA,CACA,WAAA,CAID,qCACC,iCAAA,CACA,UAAA,CAGD,wCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,mCACC,mCAAA",sourcesContent:["\n@use './shared/styles';\n\n.header {\n\tborder-bottom: 1px solid var(--color-border);\n\n\t@include styles.row;\n\t@include styles.cell;\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n@mixin row {\n\tposition: relative;\n\tdisplay: flex;\n\tmin-width: 100%;\n\twidth: fit-content;\n\theight: var(--row-height);\n\tbackground-color: var(--color-main-background);\n}\n\n@mixin cell {\n\t&__cell {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\tpadding: 0 var(--cell-padding);\n\t\tmin-width: var(--cell-width);\n\t\twidth: var(--cell-width);\n\t\tcolor: var(--color-main-text);\n\n\t\tstrong,\n\t\tspan,\n\t\tlabel {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow-wrap: anywhere;\n\t\t}\n\n\t\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\n\t\t\t&--avatar,\n\t\t\t&--displayname {\n\t\t\t\tposition: sticky;\n\t\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\t\tbackground-color: var(--color-main-background);\n\t\t\t}\n\n\t\t\t&--avatar {\n\t\t\t\tinset-inline-start: 0;\n\t\t\t}\n\n\t\t\t&--displayname {\n\t\t\t\tinset-inline-start: var(--avatar-cell-width);\n\t\t\t\tborder-inline-end: 1px solid var(--color-border);\n\t\t\t}\n\t\t}\n\n\t\t&--username {\n\t\t\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\n\t\t}\n\n\t\t&--avatar {\n\t\t\tmin-width: var(--avatar-cell-width);\n\t\t\twidth: var(--avatar-cell-width);\n\t\t\talign-items: center;\n\t\t\tpadding: 0;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&--multiline {\n\t\t\tspan {\n\t\t\t\tline-height: 1.3em;\n\t\t\t\twhite-space: unset;\n\n\t\t\t\t@supports (-webkit-line-clamp: 2) {\n\t\t\t\t\tdisplay: -webkit-box;\n\t\t\t\t\t-webkit-line-clamp: 2;\n\t\t\t\t\t-webkit-box-orient: vertical;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&--large {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: var(--cell-width-large);\n\t\t}\n\n\t\t&--obfuscated {\n\t\t\tmin-width: 400px;\n\t\t\twidth: 400px;\n\t\t}\n\n\t\t// Fill remaining row space with cell\n\t\t&--fill {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t&--actions {\n\t\t\tposition: sticky;\n\t\t\tinset-inline-end: 0;\n\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tmin-width: 110px;\n\t\t\twidth: 110px;\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tborder-inline-start: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t&__subtitle {\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n}\n"],sourceRoot:""}]);const o=r},27514:t=>{t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M18.4%207.4L17%206l-6%206%206%206%201.4-1.4-4.6-4.6%204.6-4.6m-6%200L11%206l-6%206%206%206%201.4-1.4L7.8%2012l4.6-4.6z%27/%3e%3c/svg%3e"},27518:t=>{t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M15.4%2016.6L10.8%2012l4.6-4.6L14%206l-6%206%206%206%201.4-1.4z%27/%3e%3c/svg%3e"},38775:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".modal__header[data-v-0540d351]{margin:0}.modal__content[data-v-0540d351]{display:flex;flex-direction:column;align-items:center;padding:20px;gap:4px 0}.modal__button-row[data-v-0540d351]{display:flex;width:100%;justify-content:space-between}","",{version:3,sources:["webpack://./apps/settings/src/components/GroupListItem.vue"],names:[],mappings:"AAEC,gCACC,QAAA,CAGD,iCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,YAAA,CACA,SAAA,CAGD,oCACC,YAAA,CACA,UAAA,CACA,6BAAA",sourcesContent:["\n.modal {\n\t&__header {\n\t\tmargin: 0;\n\t}\n\n\t&__content {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\tpadding: 20px;\n\t\tgap: 4px 0;\n\t}\n\n\t&__button-row {\n\t\tdisplay: flex;\n\t\twidth: 100%;\n\t\tjustify-content: space-between;\n\t}\n}\n"],sourceRoot:""}]);const o=r},46984:(t,e,s)=>{s.d(e,{FF:()=>d,Iu:()=>l,N_:()=>o});var a=s(19051),i=s(63814),n=s(36117);const r=t=>({id:t.id,name:t.displayname,usercount:t.usercount,disabled:t.disabled,canAdd:t.canAdd,canRemove:t.canRemove}),o=({search:t,offset:e,limit:s})=>{const o=new AbortController;return new n.CancelablePromise((async(n,l,d)=>{d((()=>o.abort()));try{const{data:l}=await a.Ay.get((0,i.KT)("/cloud/groups/details?search={search}&offset={offset}&limit={limit}",{search:t,offset:e,limit:s}),{signal:o.signal});n((l.ocs?.data?.groups??[]).map(r))}catch(t){l(t)}}))},l=async({userId:t})=>{const e=(0,i.KT)("/cloud/users/{userId}/groups/details",{userId:t}),{data:s}=await a.Ay.get(e);return(s.ocs?.data?.groups??[]).map(r)},d=async({userId:t})=>{const e=(0,i.KT)("/cloud/users/{userId}/subadmins/details",{userId:t}),{data:s}=await a.Ay.get(e);return(s.ocs?.data?.groups??[]).map(r)}},58688:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".account-management__navigation[data-v-539a4ad0] .app-navigation__body{will-change:scroll-position}.account-management__system-list[data-v-539a4ad0]{height:auto !important;overflow:visible !important}.account-management__group-list[data-v-539a4ad0]{height:100% !important}.account-management__settings-toggle[data-v-539a4ad0]{margin-bottom:12px}","",{version:3,sources:["webpack://./apps/settings/src/views/UserManagementNavigation.vue"],names:[],mappings:"AAGE,uEACC,2BAAA,CAGF,kDACC,sBAAA,CACA,2BAAA,CAGD,iDACC,sBAAA,CAGD,sDACC,kBAAA",sourcesContent:["\n.account-management {\n\t&__navigation {\n\t\t:deep(.app-navigation__body) {\n\t\t\twill-change: scroll-position;\n\t\t}\n\t}\n\t&__system-list {\n\t\theight: auto !important;\n\t\toverflow: visible !important;\n\t}\n\n\t&__group-list {\n\t\theight: 100% !important;\n\t}\n\n\t&__settings-toggle {\n\t\tmargin-bottom: 12px;\n\t}\n}\n"],sourceRoot:""}]);const o=r},63764:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".dialog__form[data-v-3d23637c]{display:flex;flex-direction:column;align-items:center;padding:0 8px;gap:4px 0}.dialog__item[data-v-3d23637c]{width:100%}.dialog__item[data-v-3d23637c]:not(:focus):not(:active){border-color:var(--color-border-dark)}.dialog__hint[data-v-3d23637c]{color:var(--color-text-maxcontrast);margin-top:8px;align-self:flex-start}.dialog__label[data-v-3d23637c]{display:block;padding:4px 0}.dialog__select[data-v-3d23637c]{width:100%}.dialog__managers[data-v-3d23637c]{margin-bottom:12px}.dialog__submit[data-v-3d23637c]{margin-top:4px;margin-bottom:8px}.dialog[data-v-3d23637c] .dialog__actions{margin:auto}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/NewUserDialog.vue"],names:[],mappings:"AAEC,+BACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,aAAA,CACA,SAAA,CAGD,+BACC,UAAA,CAEA,wDACC,qCAAA,CAIF,+BACC,mCAAA,CACA,cAAA,CACA,qBAAA,CAGD,gCACC,aAAA,CACA,aAAA,CAGD,iCACC,UAAA,CAGD,mCACC,kBAAA,CAGD,iCACC,cAAA,CACA,iBAAA,CAIA,0CACC,WAAA",sourcesContent:["\n.dialog {\n\t&__form {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\tpadding: 0 8px;\n\t\tgap: 4px 0;\n\t}\n\n\t&__item {\n\t\twidth: 100%;\n\n\t\t&:not(:focus):not(:active) {\n\t\t\tborder-color: var(--color-border-dark);\n\t\t}\n\t}\n\n\t&__hint {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tmargin-top: 8px;\n\t\talign-self: flex-start;\n\t}\n\n\t&__label {\n\t\tdisplay: block;\n\t\tpadding: 4px 0;\n\t}\n\n\t&__select {\n\t\twidth: 100%;\n\t}\n\n\t&__managers {\n\t\tmargin-bottom: 12px;\n\t}\n\n\t&__submit {\n\t\tmargin-top: 4px;\n\t\tmargin-bottom: 8px;\n\t}\n\n\t:deep {\n\t\t.dialog__actions {\n\t\t\tmargin: auto;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},66423:(e,s,a)=>{a.r(s),a.d(s,{default:()=>ht});var i=a(85471),n=a(9165),r=a(53334),o=a(42530),l=a(52439),d=a(27345),c=a(85865),u=a(21376),g=a(85947),A=a(6695),p=a(35810),h=a(63814),m=a(19051),C=a(80236),v=a(14727),w=a(32073),_=a(3226),f=a(67607),b=a(15916),y=a(95668),x=a(36620);const N={name:"UserSettingsDialog",components:{NcAppSettingsDialog:C.N,NcAppSettingsSection:v.A,NcCheckboxRadioSwitch:w.A,NcNoteCard:_.A,NcSelect:f.default},props:{open:{type:Boolean,required:!0}},data:()=>({selectedQuota:!1,loadingSendMail:!1}),computed:{groupSorting:{get(){return this.$store.getters.getGroupSorting===b.q.GroupName?"name":"member-count"},set(t){this.$store.commit("setGroupSorting","name"===t?b.q.GroupName:b.q.UserCount)}},isGroupSortingEnforced(){return this.$store.getters.getServerData.forceSortGroupByName},isModalOpen:{get(){return this.open},set(t){this.$emit("update:open",t)}},showConfig(){return this.$store.getters.getShowConfig},settings(){return this.$store.getters.getServerData},showLanguages:{get(){return this.showConfig.showLanguages},set(t){this.setShowConfig("showLanguages",t)}},showFirstLogin:{get(){return this.showConfig.showFirstLogin},set(t){this.setShowConfig("showFirstLogin",t)}},showLastLogin:{get(){return this.showConfig.showLastLogin},set(t){this.setShowConfig("showLastLogin",t)}},showUserBackend:{get(){return this.showConfig.showUserBackend},set(t){this.setShowConfig("showUserBackend",t)}},showStoragePath:{get(){return this.showConfig.showStoragePath},set(t){this.setShowConfig("showStoragePath",t)}},quotaOptions(){const t=this.settings.quotaPreset.reduce(((t,e)=>t.concat({id:e,label:e})),[]);return this.settings.allowUnlimitedQuota&&t.unshift(y.SA),t},defaultQuota:{get(){return!1!==this.selectedQuota?this.selectedQuota:this.settings.defaultQuota!==y.SA.id&&OC.Util.computerFileSize(this.settings.defaultQuota)>=0?{id:this.settings.defaultQuota,label:this.settings.defaultQuota}:y.SA},set(t){this.selectedQuota=t}},sendWelcomeMail:{get(){return this.settings.newUserSendEmail},async set(t){try{this.loadingSendMail=!0,this.$store.commit("setServerData",{...this.settings,newUserSendEmail:t}),await m.Ay.post((0,h.Jv)("/settings/users/preferences/newUser.sendEmail"),{value:t?"yes":"no"})}catch(t){x.A.error("Could not update newUser.sendEmail preference",{error:t})}finally{this.loadingSendMail=!1}}}},methods:{filterQuotas(t,e,s){const a=s.toLocaleLowerCase().replaceAll(/\s/g,"");return(e||"").toLocaleLowerCase().replaceAll(/\s/g,"").indexOf(a)>-1},setShowConfig(t,e){this.$store.commit("setShowConfig",{key:t,value:e})},validateQuota(t){"object"==typeof t&&(t=t?.id||t.label);const e=(0,p.lT)(t,!0);return null===e?y.SA:{id:t=(0,p.v7)(e),label:t}},setDefaultQuota(t="none"){"none"===t&&(t=y.SA),this.$store.dispatch("setAppConfig",{app:"files",key:"default_quota",value:t.id?t.id:t}).then((()=>{"object"!=typeof t&&(t={id:t,label:t}),this.defaultQuota=t}))}}};var k=a(85072),G=a.n(k),S=a(97825),U=a.n(S),L=a(77659),D=a.n(L),B=a(55056),I=a.n(B),q=a(10540),O=a.n(q),M=a(41113),$=a.n(M),F=a(7515),T={};T.styleTagTransform=$(),T.setAttributes=I(),T.insert=D().bind(null,"head"),T.domAPI=U(),T.insertStyleElement=O(),G()(F.A,T),F.A&&F.A.locals&&F.A.locals;var E=a(14486);const P=(0,E.A)(N,(function(){var t=this,e=t._self._c;return e("NcAppSettingsDialog",{attrs:{open:t.isModalOpen,"show-navigation":!0,name:t.t("settings","Account management settings")},on:{"update:open":function(e){t.isModalOpen=e}}},[e("NcAppSettingsSection",{attrs:{id:"visibility-settings",name:t.t("settings","Visibility")}},[e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"showLanguages",checked:t.showLanguages},on:{"update:checked":function(e){t.showLanguages=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show language"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"showUserBackend",checked:t.showUserBackend},on:{"update:checked":function(e){t.showUserBackend=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show account backend"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"showStoragePath",checked:t.showStoragePath},on:{"update:checked":function(e){t.showStoragePath=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show storage path"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"showFirstLogin",checked:t.showFirstLogin},on:{"update:checked":function(e){t.showFirstLogin=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show first login"))+"\n\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"showLastLogin",checked:t.showLastLogin},on:{"update:checked":function(e){t.showLastLogin=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show last login"))+"\n\t\t")])],1),t._v(" "),e("NcAppSettingsSection",{attrs:{id:"groups-sorting",name:t.t("settings","Sorting")}},[t.isGroupSortingEnforced?e("NcNoteCard",{attrs:{type:"warning"}},[t._v("\n\t\t\t"+t._s(t.t("settings","The system config enforces sorting the groups by name. This also disables showing the member count."))+"\n\t\t")]):t._e(),t._v(" "),e("fieldset",[e("legend",[t._v(t._s(t.t("settings","Group list sorting")))]),t._v(" "),e("NcNoteCard",{staticClass:"dialog__note",attrs:{type:"info",text:t.t("settings","Sorting only applies to the currently loaded groups for performance reasons. Groups will be loaded as you navigate or search through the list.")}}),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"radio",checked:t.groupSorting,"data-test":"sortGroupsByMemberCount",disabled:t.isGroupSortingEnforced,name:"group-sorting-mode",value:"member-count"},on:{"update:checked":function(e){t.groupSorting=e}}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","By member count"))+"\n\t\t\t")]),t._v(" "),e("NcCheckboxRadioSwitch",{attrs:{type:"radio",checked:t.groupSorting,"data-test":"sortGroupsByName",disabled:t.isGroupSortingEnforced,name:"group-sorting-mode",value:"name"},on:{"update:checked":function(e){t.groupSorting=e}}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","By name"))+"\n\t\t\t")])],1)],1),t._v(" "),e("NcAppSettingsSection",{attrs:{id:"email-settings",name:t.t("settings","Send email")}},[e("NcCheckboxRadioSwitch",{attrs:{type:"switch","data-test":"sendWelcomeMail",checked:t.sendWelcomeMail,disabled:t.loadingSendMail},on:{"update:checked":function(e){t.sendWelcomeMail=e}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Send welcome email to new accounts"))+"\n\t\t")])],1),t._v(" "),e("NcAppSettingsSection",{attrs:{id:"default-settings",name:t.t("settings","Defaults")}},[e("NcSelect",{attrs:{clearable:!1,"create-option":t.validateQuota,"filter-by":t.filterQuotas,"input-label":t.t("settings","Default quota"),options:t.quotaOptions,placement:"top",placeholder:t.t("settings","Select default quota"),taggable:""},on:{"option:selected":t.setDefaultQuota},model:{value:t.defaultQuota,callback:function(e){t.defaultQuota=e},expression:"defaultQuota"}})],1)],1)}),[],!1,null,"29922c80",null).exports;var z=a(85168),R=a(13073),Q=a(54914),W=a(24387),H=a(44131),K=a(55925),j=a(50341),Y=a(70952),X=a(2645),V=a(57505),J=a(64711),Z=a(43261),tt=a(79759),et=a(2413);const st={name:"GroupListItem",components:{AccountGroup:Z.A,Delete:tt.A,Fragment:Q.F,NcActionButton:V.A,NcActionInput:H.A,NcAppNavigationItem:l.A,NcButton:u.A,NcCounterBubble:g.A,NcModal:J.A,NcNoteCard:_.A,Pencil:et.A},props:{active:{type:Boolean,required:!0},count:{type:Number,default:null},id:{type:String,required:!0},name:{type:String,required:!0}},data:()=>({loadingRenameGroup:!1,openGroupMenu:!1,showRemoveGroupModal:!1}),computed:{settings(){return this.$store.getters.getServerData}},methods:{handleGroupMenuOpen(){this.openGroupMenu=!0},async renameGroup(t){if(""===t.trim())return;const e=this.$refs.displayNameInput.$el.querySelector('input[type="text"]').value;if(""!==e.trim())try{this.openGroupMenu=!1,this.loadingRenameGroup=!0,await this.$store.dispatch("renameGroup",{groupid:t.trim(),displayName:e.trim()}),this.loadingRenameGroup=!1}catch{this.openGroupMenu=!0,this.loadingRenameGroup=!1}},async removeGroup(){try{await this.$store.dispatch("removeGroup",this.id),this.showRemoveGroupModal=!1}catch(e){(0,z.Qg)(t("settings",'Failed to delete group "{group}"',{group:this.name}))}}}};var at=a(38775),it={};it.styleTagTransform=$(),it.setAttributes=I(),it.insert=D().bind(null,"head"),it.domAPI=U(),it.insertStyleElement=O(),G()(at.A,it),at.A&&at.A.locals&&at.A.locals;const nt=(0,E.A)(st,(function(){var t=this,e=t._self._c;return e("Fragment",[t.showRemoveGroupModal?e("NcModal",{on:{close:function(e){t.showRemoveGroupModal=!1}}},[e("div",{staticClass:"modal__content"},[e("h2",{staticClass:"modal__header"},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Please confirm the group removal"))+"\n\t\t\t")]),t._v(" "),e("NcNoteCard",{attrs:{type:"warning","show-alert":""}},[t._v("\n\t\t\t\t"+t._s(t.t("settings",'You are about to delete the group "{group}". The accounts will NOT be deleted.',{group:t.name}))+"\n\t\t\t")]),t._v(" "),e("div",{staticClass:"modal__button-row"},[e("NcButton",{attrs:{type:"secondary"},on:{click:function(e){t.showRemoveGroupModal=!1}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("settings","Cancel"))+"\n\t\t\t\t")]),t._v(" "),e("NcButton",{attrs:{type:"primary"},on:{click:t.removeGroup}},[t._v("\n\t\t\t\t\t"+t._s(t.t("settings","Confirm"))+"\n\t\t\t\t")])],1)],1)]):t._e(),t._v(" "),e("NcAppNavigationItem",{key:t.id,ref:"listItem",attrs:{exact:!0,name:t.name,to:{name:"group",params:{selectedGroup:encodeURIComponent(t.id)}},loading:t.loadingRenameGroup,"menu-open":t.openGroupMenu},on:{"update:menuOpen":t.handleGroupMenuOpen},scopedSlots:t._u([{key:"icon",fn:function(){return[e("AccountGroup",{attrs:{size:20}})]},proxy:!0},{key:"counter",fn:function(){return[t.count?e("NcCounterBubble",{attrs:{type:t.active?"highlighted":void 0}},[t._v("\n\t\t\t\t"+t._s(t.count)+"\n\t\t\t")]):t._e()]},proxy:!0},{key:"actions",fn:function(){return["admin"!==t.id&&"disabled"!==t.id&&(t.settings.isAdmin||t.settings.isDelegatedAdmin)?e("NcActionInput",{ref:"displayNameInput",attrs:{"trailing-button-label":t.t("settings","Submit"),type:"text",value:t.name,label:t.t("settings","Rename group")},on:{submit:function(e){return t.renameGroup(t.id)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Pencil",{attrs:{size:20}})]},proxy:!0}],null,!1,580569589)}):t._e(),t._v(" "),"admin"!==t.id&&"disabled"!==t.id&&(t.settings.isAdmin||t.settings.isDelegatedAdmin)?e("NcActionButton",{on:{click:function(e){t.showRemoveGroupModal=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Delete",{attrs:{size:20}})]},proxy:!0}],null,!1,2705356561)},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Delete group"))+"\n\t\t\t")]):t._e()]},proxy:!0}])})],1)}),[],!1,null,"0540d351",null).exports;function rt(t){return void 0===t?null:{id:t.id,title:t.name,usercount:t.usercount??0,count:Math.max(0,(t.usercount??0)-(t.disabled??0))}}const ot=t=>{const e=(0,i.EW)((()=>t.value.filter((t=>"disabled"!==t.id&&"__nc_internal_recent"!==t.id&&"admin"!==t.id)).map((t=>rt(t))).filter((t=>null!==t)))),s=(0,i.EW)((()=>rt(t.value.find((t=>"admin"===t.id))))),a=(0,i.EW)((()=>rt(t.value.find((t=>"disabled"===t.id)))));return{adminGroup:s,recentGroup:(0,i.EW)((()=>rt(t.value.find((t=>"__nc_internal_recent"===t.id))))),disabledGroup:a,userGroups:e}};var lt=a(14744),dt=a(46984);const ct=(0,i.pM)({__name:"AppNavigationGroupList",setup(t){const e=(0,lt.P)(),s=(0,W.lq)(),a=(0,W.rd)();(0,i.KC)((async()=>{await S()}));const o=(0,i.EW)((()=>s.params?.selectedGroup)),l=(0,i.EW)((()=>o.value?decodeURIComponent(o.value):null)),c=(0,i.EW)((()=>p.value?e.getters.getSortedGroups:e.getters.getSubAdminGroups)),{userGroups:u}=ot(c),g=(0,i.EW)((()=>e.getters.getServerData)),p=(0,i.EW)((()=>g.value.isAdmin||g.value.isDelegatedAdmin)),h=(0,i.KR)(!1),m=(0,i.KR)(!1),C=(0,i.KR)(!1),v=(0,i.KR)(""),w=(0,i.KR)(!1),_=(0,i.KR)(0),f=(0,i.KR)(""),b=(0,i.EW)((()=>{if(p.value)return u.value;const t=f.value.toLowerCase();return u.value.filter((e=>-1!==e.id.toLowerCase().search(t)||-1!==e.title.toLowerCase().search(t)))})),y=(0,i.KR)([]),N=(0,i.EW)((()=>y.value.findLast((t=>t?.$vnode?.key===u.value?.at(-1)?.id))?.$refs?.listItem?.$el)),k=(0,R.ITo)(N);(0,i.wB)(k,(async()=>{k.value&&await S()})),(0,i.wB)(f,(async()=>{e.commit("resetGroups"),_.value=0,await S()}));const G=(0,i.KR)();async function S(){if(p.value){G.value&&G.value.cancel(),w.value=!0;try{G.value=(0,dt.N_)({search:f.value,offset:_.value,limit:25});const t=await G.value;t.length>0&&(_.value+=25);for(const s of t)e.commit("addGroup",s)}catch(t){x.A.error((0,r.t)("settings","Failed to load groups"),{error:t})}G.value=void 0,w.value=!1}}return{__sfc:!0,store:e,route:s,router:a,selectedGroup:o,selectedGroupDecoded:l,groups:c,userGroups:u,settings:g,isAdminOrDelegatedAdmin:p,isAddGroupOpen:h,loadingAddGroup:m,hasAddGroupError:C,newGroupName:v,loadingGroups:w,offset:_,groupsSearchQuery:f,filteredGroups:b,groupListItems:y,lastGroupListItem:N,isLastGroupVisible:k,promise:G,loadGroups:S,createGroup:async function(){C.value=!1;const t=v.value.trim();if(""!==t){h.value=!1,m.value=!0;try{await e.dispatch("addGroup",t),await a.push({name:"group",params:{selectedGroup:encodeURIComponent(t)}});const s=y.value.findLast((e=>e?.$vnode?.key===t));s?.$refs?.listItem?.$el?.scrollIntoView({behavior:"smooth",block:"nearest"}),v.value=""}catch{(0,z.Qg)((0,r.t)("settings","Failed to create group"))}m.value=!1}else C.value=!0},mdiAccountGroup:n.n7C,mdiPlus:n.biz,t:r.t,Fragment:Q.F,NcActionInput:H.A,NcActionText:K.A,NcAppNavigationCaption:j.N,NcAppNavigationList:d.A,NcAppNavigationSearch:Y.N,NcIconSvgWrapper:A.A,NcLoadingIcon:X.A,GroupListItem:nt}}}),ut=(0,E.A)(ct,(function(){var t=this,e=t._self._c,s=t._self._setupProxy;return e(s.Fragment,[e(s.NcAppNavigationCaption,{attrs:{name:s.t("settings","Groups"),disabled:s.loadingAddGroup,"aria-label":s.loadingAddGroup?s.t("settings","Creating group…"):s.t("settings","Create group"),"force-menu":"","is-heading":"",open:s.isAddGroupOpen},on:{"update:open":function(t){s.isAddGroupOpen=t}},scopedSlots:t._u([s.isAdminOrDelegatedAdmin?{key:"actionsTriggerIcon",fn:function(){return[s.loadingAddGroup?e(s.NcLoadingIcon):e(s.NcIconSvgWrapper,{attrs:{path:s.mdiPlus}})]},proxy:!0}:null,s.isAdminOrDelegatedAdmin?{key:"actions",fn:function(){return[e(s.NcActionText,{scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiAccountGroup}})]},proxy:!0}],null,!1,3607647275)},[t._v("\n\t\t\t\t"+t._s(s.t("settings","Create group"))+"\n\t\t\t")]),t._v(" "),e(s.NcActionInput,{attrs:{label:s.t("settings","Group name"),"data-cy-users-settings-new-group-name":"","label-outside":!1,disabled:s.loadingAddGroup,value:s.newGroupName,error:s.hasAddGroupError,"helper-text":s.hasAddGroupError?s.t("settings","Please enter a valid group name"):""},on:{"update:value":function(t){s.newGroupName=t},submit:s.createGroup}})]},proxy:!0}:null],null,!0)}),t._v(" "),e(s.NcAppNavigationSearch,{attrs:{label:s.t("settings","Search groups…")},model:{value:s.groupsSearchQuery,callback:function(t){s.groupsSearchQuery=t},expression:"groupsSearchQuery"}}),t._v(" "),e("p",{staticClass:"hidden-visually",attrs:{id:"group-list-desc"}},[t._v("\n\t\t"+t._s(s.t("settings","List of groups. This list is not fully populated for performance reasons. The groups will be loaded as you navigate or search through the list."))+"\n\t")]),t._v(" "),e(s.NcAppNavigationList,{staticClass:"account-management__group-list",attrs:{"aria-describedby":"group-list-desc","data-cy-users-settings-navigation-groups":"custom"}},[t._l(s.filteredGroups,(function(t){return e(s.GroupListItem,{key:t.id,ref:"groupListItems",refInFor:!0,attrs:{id:t.id,active:s.selectedGroupDecoded===t.id,name:t.title,count:t.count}})})),t._v(" "),s.loadingGroups?e("div",{attrs:{role:"note"}},[e(s.NcLoadingIcon,{attrs:{name:s.t("settings","Loading groups…")}})],1):t._e()],2)],1)}),[],!1,null,null,null).exports,gt=(0,i.pM)({__name:"UserManagementNavigation",setup(t){const e=(0,W.lq)(),s=(0,lt.P)(),a=(0,i.KR)(!1),p=(0,i.EW)((()=>e.params?.selectedGroup)),h=(0,i.EW)((()=>p.value?decodeURIComponent(p.value):null)),m=(0,i.EW)((()=>s.getters.getUserCount)),C=(0,i.EW)((()=>s.getters.getSortedGroups)),{adminGroup:v,recentGroup:w,disabledGroup:_}=ot(C),f=(0,i.EW)((()=>s.getters.getServerData)),b=(0,i.EW)((()=>f.value.isAdmin||f.value.isDelegatedAdmin));return{__sfc:!0,route:e,store:s,isDialogOpen:a,selectedGroup:p,selectedGroupDecoded:h,userCount:m,groups:C,adminGroup:v,recentGroup:w,disabledGroup:_,settings:f,isAdminOrDelegatedAdmin:b,showNewUserMenu:function(){s.commit("setShowConfig",{key:"showNewUserForm",value:!0})},mdiAccount:n.Gbn,mdiAccountOff:n.lBC,mdiCog:n.CZ3,mdiPlus:n.biz,mdiShieldAccount:n.Jey,mdiHistory:n.LP2,t:r.Tl,NcAppNavigation:o.A,NcAppNavigationItem:l.A,NcAppNavigationList:d.A,NcAppNavigationNew:c.A,NcButton:u.A,NcCounterBubble:g.A,NcIconSvgWrapper:A.A,UserSettingsDialog:P,AppNavigationGroupList:ut}}});var At=a(58688),pt={};pt.styleTagTransform=$(),pt.setAttributes=I(),pt.insert=D().bind(null,"head"),pt.domAPI=U(),pt.insertStyleElement=O(),G()(At.A,pt),At.A&&At.A.locals&&At.A.locals;const ht=(0,E.A)(gt,(function(){var t=this,e=t._self._c,s=t._self._setupProxy;return e(s.NcAppNavigation,{staticClass:"account-management__navigation",attrs:{"aria-label":s.t("settings","Account management")},scopedSlots:t._u([{key:"footer",fn:function(){return[e(s.NcButton,{staticClass:"account-management__settings-toggle",attrs:{type:"tertiary"},on:{click:function(t){s.isDialogOpen=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiCog}})]},proxy:!0}])},[t._v("\n\t\t\t"+t._s(s.t("settings","Account management settings"))+"\n\t\t")]),t._v(" "),e(s.UserSettingsDialog,{attrs:{open:s.isDialogOpen},on:{"update:open":function(t){s.isDialogOpen=t}}})]},proxy:!0}])},[e(s.NcAppNavigationNew,{attrs:{"button-id":"new-user-button",text:s.t("settings","New account")},on:{click:s.showNewUserMenu,keyup:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:s.showNewUserMenu.apply(null,arguments)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"space",32,e.key,[" ","Spacebar"])?null:s.showNewUserMenu.apply(null,arguments)}]},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiPlus}})]},proxy:!0}])}),t._v(" "),e(s.NcAppNavigationList,{staticClass:"account-management__system-list",attrs:{"data-cy-users-settings-navigation-groups":"system"}},[e(s.NcAppNavigationItem,{attrs:{id:"everyone",exact:!0,name:s.t("settings","All accounts"),to:{name:"users"}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiAccount}})]},proxy:!0},{key:"counter",fn:function(){return[s.userCount?e(s.NcCounterBubble,{attrs:{type:s.selectedGroupDecoded?void 0:"highlighted"}},[t._v("\n\t\t\t\t\t"+t._s(s.userCount)+"\n\t\t\t\t")]):t._e()]},proxy:!0}])}),t._v(" "),s.settings.isAdmin?e(s.NcAppNavigationItem,{attrs:{id:"admin",exact:!0,name:s.t("settings","Admins"),to:{name:"group",params:{selectedGroup:"admin"}}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiShieldAccount}})]},proxy:!0},{key:"counter",fn:function(){return[s.adminGroup&&s.adminGroup.count>0?e(s.NcCounterBubble,{attrs:{type:"admin"===s.selectedGroupDecoded?"highlighted":void 0}},[t._v("\n\t\t\t\t\t"+t._s(s.adminGroup.count)+"\n\t\t\t\t")]):t._e()]},proxy:!0}],null,!1,2218088905)}):t._e(),t._v(" "),s.isAdminOrDelegatedAdmin?e(s.NcAppNavigationItem,{attrs:{id:"recent",exact:!0,name:s.t("settings","Recently active"),to:{name:"group",params:{selectedGroup:"__nc_internal_recent"}}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiHistory}})]},proxy:!0},{key:"counter",fn:function(){return[s.recentGroup?.usercount?e(s.NcCounterBubble,{attrs:{type:"__nc_internal_recent"===s.selectedGroupDecoded?"highlighted":void 0}},[t._v("\n\t\t\t\t\t"+t._s(s.recentGroup.usercount)+"\n\t\t\t\t")]):t._e()]},proxy:!0}],null,!1,2299424282)}):t._e(),t._v(" "),s.disabledGroup&&(s.disabledGroup.usercount>0||-1===s.disabledGroup.usercount)?e(s.NcAppNavigationItem,{attrs:{id:"disabled",exact:!0,name:s.t("settings","Disabled accounts"),to:{name:"group",params:{selectedGroup:"disabled"}}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(s.NcIconSvgWrapper,{attrs:{path:s.mdiAccountOff}})]},proxy:!0},s.disabledGroup.usercount>0?{key:"counter",fn:function(){return[e(s.NcCounterBubble,{attrs:{type:"disabled"===s.selectedGroupDecoded?"highlighted":void 0}},[t._v("\n\t\t\t\t\t"+t._s(s.disabledGroup.usercount)+"\n\t\t\t\t")])]},proxy:!0}:null],null,!0)}):t._e()],1),t._v(" "),e(s.AppNavigationGroupList)],1)}),[],!1,null,"539a4ad0",null).exports},68747:(e,s,a)=>{a.r(s),a.d(s,{default:()=>ss});var i=a(53334),n=a(61338),r=a(85471),o=a(18195),l=a(9165),d=a(85168),c=a(54914),u=a(32190),g=a(6695),A=a(2645),p=a(55042),h=a(17334),m=a.n(h),C=a(36620);r.Ay.directive("elementVisibility",p.Zx);const v=r.Ay.extend({name:"VirtualList",props:{dataComponent:{type:[Object,Function],required:!0},dataKey:{type:String,required:!0},dataSources:{type:Array,required:!0},itemHeight:{type:Number,required:!0},extraProps:{type:Object,default:()=>({})}},data:()=>({bufferItems:3,index:0,headerHeight:0,tableHeight:0,resizeObserver:null}),computed:{startIndex(){return Math.max(0,this.index-3)},shownItems(){return Math.ceil((this.tableHeight-this.headerHeight)/this.itemHeight)+6},renderedItems(){return this.dataSources.slice(this.startIndex,this.startIndex+this.shownItems)},tbodyStyle(){const t=this.startIndex+this.shownItems>this.dataSources.length,e=this.dataSources.length-this.startIndex-this.shownItems,s=Math.min(this.dataSources.length-this.startIndex,e);return{paddingTop:this.startIndex*this.itemHeight+"px",paddingBottom:t?0:s*this.itemHeight+"px"}}},mounted(){const t=this.$el,e=this.$refs?.tfoot,s=this.$refs?.thead;this.resizeObserver=new ResizeObserver(m()((()=>{this.headerHeight=s?.clientHeight??0,this.tableHeight=t?.clientHeight??0,C.A.debug("VirtualList resizeObserver updated"),this.onScroll()}),100,!1)),this.resizeObserver.observe(t),this.resizeObserver.observe(e),this.resizeObserver.observe(s),this.$el.addEventListener("scroll",this.onScroll)},beforeDestroy(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{handleFooterVisibility(t){t&&this.$emit("scroll-end")},onScroll(){this.index=Math.max(0,Math.round(this.$el.scrollTop/this.itemHeight))}}});var w=a(85072),_=a.n(w),f=a(97825),b=a.n(f),y=a(77659),x=a.n(y),N=a(55056),k=a.n(N),G=a(10540),S=a.n(G),U=a(41113),L=a.n(U),D=a(12795),B={};B.styleTagTransform=L(),B.setAttributes=k(),B.insert=x().bind(null,"head"),B.domAPI=b(),B.insertStyleElement=S(),_()(D.A,B),D.A&&D.A.locals&&D.A.locals;var I=a(14486);const q=(0,I.A)(v,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("table",{staticClass:"user-list"},[t._t("before"),t._v(" "),e("thead",{ref:"thead",staticClass:"user-list__header",attrs:{role:"rowgroup"}},[t._t("header")],2),t._v(" "),e("tbody",{staticClass:"user-list__body",style:t.tbodyStyle},t._l(t.renderedItems,(function(s,a){return e(t.dataComponent,t._b({key:s[t.dataKey],tag:"component",attrs:{user:s,visible:(a>=t.bufferItems||t.index<=t.bufferItems)&&a({possibleManagers:[],managerInputLabel:t("settings","Manager"),managerLabel:t("settings","Set line manager"),promise:null}),computed:{showConfig(){return this.$store.getters.getShowConfig},settings(){return this.$store.getters.getServerData},usernameLabel(){return this.settings.newUserGenerateUserID?t("settings","Account name will be autogenerated"):t("settings","Account name (required)")},minPasswordLength(){return this.$store.getters.getPasswordPolicyMinLength},availableGroups(){return(this.settings.isAdmin||this.settings.isDelegatedAdmin?this.$store.getters.getSortedGroups:this.$store.getters.getSubAdminGroups).filter((t=>"__nc_internal_recent"!==t.id&&"disabled"!==t.id))},languages(){return[{name:t("settings","Common languages"),languages:this.settings.languages.commonLanguages},...this.settings.languages.commonLanguages,{name:t("settings","Other languages"),languages:this.settings.languages.otherLanguages},...this.settings.languages.otherLanguages]}},async beforeMount(){await this.searchUserManager()},mounted(){this.$refs.username?.focus?.()},methods:{async createUser(){this.loading.all=!0;try{await this.$store.dispatch("addUser",{userid:this.newUser.id,password:this.newUser.password,displayName:this.newUser.displayName,email:this.newUser.mailAddress,groups:this.newUser.groups.map((t=>t.id)),subadmin:this.newUser.subAdminsGroups.map((t=>t.id)),quota:this.newUser.quota.id,language:this.newUser.language.code,manager:this.newUser.manager.id}),this.$emit("reset"),this.$refs.username?.focus?.(),this.$emit("closing")}catch(t){if(this.loading.all=!1,t.response&&t.response.data&&t.response.data.ocs&&t.response.data.ocs.meta){const e=t.response.data.ocs.meta.statuscode;102===e?this.$refs.username?.focus?.():107===e&&this.$refs.password?.focus?.()}}},async searchGroups(e,s){if(this.settings.isAdmin||this.settings.isDelegatedAdmin){this.promise&&this.promise.cancel(),s(!0);try{this.promise=(0,P.N_)({search:e,offset:0,limit:25});const t=await this.promise;for(const e of t)this.$store.commit("addGroup",e)}catch(e){C.A.error(t("settings","Failed to search groups"),{error:e})}this.promise=null,s(!1)}},async createGroup({name:e}){this.loading.groups=!0;try{await this.$store.dispatch("addGroup",e),this.newUser.groups.push({id:e,name:e})}catch(e){C.A.error(t("settings","Failed to create group"),{error:e})}this.loading.groups=!1},async addGroup(t){t.isCreating||!1!==t.canAdd&&this.newUser.groups.push(t)},removeGroup(t){!1!==t.canRemove&&(this.newUser.groups=this.newUser.groups.filter((e=>e.id!==t.id)))},validateQuota(t){const e=OC.Util.computerFileSize(t);return null!==e&&e>=0?(t=(0,O.v7)((0,O.lT)(t,!0)),this.newUser.quota={id:t,label:t},this.newUser.quota):(this.newUser.quota=this.quotaOptions[0],this.quotaOptions[0])},languageFilterBy:(t,e,s)=>t.languages?t.languages.some((({name:t})=>t.toLocaleLowerCase().includes(s.toLocaleLowerCase()))):(e||"").toLocaleLowerCase().includes(s.toLocaleLowerCase()),async searchUserManager(t){await this.$store.dispatch("searchUsers",{offset:0,limit:10,search:t}).then((t=>{const e=t?.data?Object.values(t?.data.ocs.data.users):[];e.length>0&&(this.possibleManagers=e)}))}}};var R=a(63764),Q={};Q.styleTagTransform=L(),Q.setAttributes=k(),Q.insert=x().bind(null,"head"),Q.domAPI=b(),Q.insertStyleElement=S(),_()(R.A,Q),R.A&&R.A.locals&&R.A.locals;var W=(0,I.A)(z,(function(){var t=this,e=t._self._c;return e("NcDialog",t._g({staticClass:"dialog",attrs:{size:"small",name:t.t("settings","New account"),"out-transition":""},scopedSlots:t._u([{key:"actions",fn:function(){return[e("NcButton",{staticClass:"dialog__submit",attrs:{"data-test":"submit",form:"new-user-form",type:"primary","native-type":"submit"}},[t._v("\n\t\t\t"+t._s(t.t("settings","Add new account"))+"\n\t\t")])]},proxy:!0}])},t.$listeners),[e("form",{staticClass:"dialog__form",attrs:{id:"new-user-form","data-test":"form",disabled:t.loading.all},on:{submit:function(e){return e.preventDefault(),t.createUser.apply(null,arguments)}}},[e("NcTextField",{ref:"username",staticClass:"dialog__item",attrs:{"data-test":"username",value:t.newUser.id,disabled:t.settings.newUserGenerateUserID,label:t.usernameLabel,autocapitalize:"none",autocomplete:"off",spellcheck:"false",pattern:"[a-zA-Z0-9 _\\.@\\-']+",required:""},on:{"update:value":function(e){return t.$set(t.newUser,"id",e)}}}),t._v(" "),e("NcTextField",{staticClass:"dialog__item",attrs:{"data-test":"displayName",value:t.newUser.displayName,label:t.t("settings","Display name"),autocapitalize:"none",autocomplete:"off",spellcheck:"false"},on:{"update:value":function(e){return t.$set(t.newUser,"displayName",e)}}}),t._v(" "),t.settings.newUserRequireEmail?t._e():e("span",{staticClass:"dialog__hint",attrs:{id:"password-email-hint"}},[t._v("\n\t\t\t"+t._s(t.t("settings","Either password or email is required"))+"\n\t\t")]),t._v(" "),e("NcPasswordField",{ref:"password",staticClass:"dialog__item",attrs:{"data-test":"password",value:t.newUser.password,minlength:t.minPasswordLength,maxlength:469,"aria-describedby":"password-email-hint",label:""===t.newUser.mailAddress?t.t("settings","Password (required)"):t.t("settings","Password"),autocapitalize:"none",autocomplete:"new-password",spellcheck:"false",required:""===t.newUser.mailAddress},on:{"update:value":function(e){return t.$set(t.newUser,"password",e)}}}),t._v(" "),e("NcTextField",{staticClass:"dialog__item",attrs:{"data-test":"email",type:"email",value:t.newUser.mailAddress,"aria-describedby":"password-email-hint",label:""===t.newUser.password||t.settings.newUserRequireEmail?t.t("settings","Email (required)"):t.t("settings","Email"),autocapitalize:"none",autocomplete:"off",spellcheck:"false",required:""===t.newUser.password||t.settings.newUserRequireEmail},on:{"update:value":function(e){return t.$set(t.newUser,"mailAddress",e)}}}),t._v(" "),e("div",{staticClass:"dialog__item"},[e("NcSelect",{staticClass:"dialog__select",attrs:{"data-test":"groups","input-label":t.settings.isAdmin||t.settings.isDelegatedAdmin?t.t("settings","Member of the following groups"):t.t("settings","Member of the following groups (required)"),placeholder:t.t("settings","Set account groups"),disabled:t.loading.groups||t.loading.all,options:t.availableGroups,value:t.newUser.groups,label:"name","close-on-select":!1,multiple:!0,taggable:t.settings.isAdmin||t.settings.isDelegatedAdmin,required:!t.settings.isAdmin&&!t.settings.isDelegatedAdmin,"create-option":t=>({id:t,name:t,isCreating:!0})},on:{search:t.searchGroups,"option:created":t.createGroup,"option:deselected":t.removeGroup,"option:selected":e=>t.addGroup(e.at(-1))}})],1),t._v(" "),e("div",{staticClass:"dialog__item"},[e("NcSelect",{staticClass:"dialog__select",attrs:{"input-label":t.t("settings","Admin of the following groups"),placeholder:t.t("settings","Set account as admin for …"),disabled:t.loading.groups||t.loading.all,options:t.availableGroups,"close-on-select":!1,multiple:!0,label:"name"},on:{search:t.searchGroups},model:{value:t.newUser.subAdminsGroups,callback:function(e){t.$set(t.newUser,"subAdminsGroups",e)},expression:"newUser.subAdminsGroups"}})],1),t._v(" "),e("div",{staticClass:"dialog__item"},[e("NcSelect",{staticClass:"dialog__select",attrs:{"input-label":t.t("settings","Quota"),placeholder:t.t("settings","Set account quota"),options:t.quotaOptions,clearable:!1,taggable:!0,"create-option":t.validateQuota},model:{value:t.newUser.quota,callback:function(e){t.$set(t.newUser,"quota",e)},expression:"newUser.quota"}})],1),t._v(" "),t.showConfig.showLanguages?e("div",{staticClass:"dialog__item"},[e("NcSelect",{staticClass:"dialog__select",attrs:{"input-label":t.t("settings","Language"),placeholder:t.t("settings","Set default language"),clearable:!1,selectable:t=>!t.languages,"filter-by":t.languageFilterBy,options:t.languages,label:"name"},model:{value:t.newUser.language,callback:function(e){t.$set(t.newUser,"language",e)},expression:"newUser.language"}})],1):t._e(),t._v(" "),e("div",{class:["dialog__item dialog__managers",{"icon-loading-small":t.loading.manager}]},[e("NcSelect",{staticClass:"dialog__select",attrs:{"input-label":t.managerInputLabel,placeholder:t.managerLabel,options:t.possibleManagers,"user-select":!0,label:"displayname"},on:{search:t.searchUserManager},model:{value:t.newUser.manager,callback:function(e){t.$set(t.newUser,"manager",e)},expression:"newUser.manager"}})],1)],1)])}),[],!1,null,"3d23637c",null);const H=W.exports,K=r.Ay.extend({name:"UserListFooter",components:{NcLoadingIcon:A.A},props:{loading:{type:Boolean,required:!0},filteredUsers:{type:Array,required:!0}},computed:{userCount(){return this.loading?this.n("settings","{userCount} account …","{userCount} accounts …",this.filteredUsers.length,{userCount:this.filteredUsers.length}):this.n("settings","{userCount} account","{userCount} accounts",this.filteredUsers.length,{userCount:this.filteredUsers.length})}},methods:{t:i.Tl,n:i.zw}});var j=a(18033),Y={};Y.styleTagTransform=L(),Y.setAttributes=k(),Y.insert=x().bind(null,"head"),Y.domAPI=b(),Y.insertStyleElement=S(),_()(j.A,Y),j.A&&j.A.locals&&j.A.locals;const X=(0,I.A)(K,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",{staticClass:"footer"},[e("th",{attrs:{scope:"row"}},[e("span",{staticClass:"hidden-visually"},[t._v(t._s(t.t("settings","Total rows summary")))])]),t._v(" "),e("td",{staticClass:"footer__cell footer__cell--loading"},[t.loading?e("NcLoadingIcon",{attrs:{title:t.t("settings","Loading accounts …"),size:32}}):t._e()],1),t._v(" "),e("td",{staticClass:"footer__cell footer__cell--count footer__cell--multiline"},[e("span",{attrs:{"aria-describedby":"user-count-desc"}},[t._v(t._s(t.userCount))]),t._v(" "),e("span",{staticClass:"hidden-visually",attrs:{id:"user-count-desc"}},[t._v("\n\t\t\t"+t._s(t.t("settings","Scroll to load more rows"))+"\n\t\t")])])])}),[],!1,null,"20636959",null).exports,V=r.Ay.extend({name:"UserListHeader",props:{hasObfuscated:{type:Boolean,required:!0}},computed:{showConfig(){return this.$store.getters.getShowConfig},settings(){return this.$store.getters.getServerData},passwordLabel(){return this.hasObfuscated?(0,i.Tl)("settings","Password or insufficient permissions message"):(0,i.Tl)("settings","Password")}},methods:{t:i.Tl}});var J=a(24882),Z={};Z.styleTagTransform=L(),Z.setAttributes=k(),Z.insert=x().bind(null,"head"),Z.domAPI=b(),Z.insertStyleElement=S(),_()(J.A,Z),J.A&&J.A.locals&&J.A.locals;const tt=(0,I.A)(V,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("tr",{staticClass:"header"},[e("th",{staticClass:"header__cell header__cell--avatar",attrs:{"data-cy-user-list-header-avatar":"",scope:"col"}},[e("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t"+t._s(t.t("settings","Avatar"))+"\n\t\t")])]),t._v(" "),e("th",{staticClass:"header__cell header__cell--displayname",attrs:{"data-cy-user-list-header-displayname":"",scope:"col"}},[e("strong",[t._v("\n\t\t\t"+t._s(t.t("settings","Display name"))+"\n\t\t")])]),t._v(" "),e("th",{staticClass:"header__cell header__cell--username",attrs:{"data-cy-user-list-header-username":"",scope:"col"}},[e("span",[t._v("\n\t\t\t"+t._s(t.t("settings","Account name"))+"\n\t\t")])]),t._v(" "),e("th",{staticClass:"header__cell",class:{"header__cell--obfuscated":t.hasObfuscated},attrs:{"data-cy-user-list-header-password":"",scope:"col"}},[e("span",[t._v(t._s(t.passwordLabel))])]),t._v(" "),e("th",{staticClass:"header__cell",attrs:{"data-cy-user-list-header-email":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Email")))])]),t._v(" "),e("th",{staticClass:"header__cell header__cell--large",attrs:{"data-cy-user-list-header-groups":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Groups")))])]),t._v(" "),t.settings.isAdmin||t.settings.isDelegatedAdmin?e("th",{staticClass:"header__cell header__cell--large",attrs:{"data-cy-user-list-header-subadmins":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Group admin for")))])]):t._e(),t._v(" "),e("th",{staticClass:"header__cell",attrs:{"data-cy-user-list-header-quota":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Quota")))])]),t._v(" "),t.showConfig.showLanguages?e("th",{staticClass:"header__cell header__cell--large",attrs:{"data-cy-user-list-header-languages":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Language")))])]):t._e(),t._v(" "),t.showConfig.showUserBackend||t.showConfig.showStoragePath?e("th",{staticClass:"header__cell header__cell--large",attrs:{"data-cy-user-list-header-storage-location":"",scope:"col"}},[t.showConfig.showUserBackend?e("span",[t._v("\n\t\t\t"+t._s(t.t("settings","Account backend"))+"\n\t\t")]):t._e(),t._v(" "),t.showConfig.showStoragePath?e("span",{staticClass:"header__subtitle"},[t._v("\n\t\t\t"+t._s(t.t("settings","Storage location"))+"\n\t\t")]):t._e()]):t._e(),t._v(" "),t.showConfig.showFirstLogin?e("th",{staticClass:"header__cell",attrs:{"data-cy-user-list-header-first-login":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","First login")))])]):t._e(),t._v(" "),t.showConfig.showLastLogin?e("th",{staticClass:"header__cell",attrs:{"data-cy-user-list-header-last-login":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Last login")))])]):t._e(),t._v(" "),e("th",{staticClass:"header__cell header__cell--large header__cell--fill",attrs:{"data-cy-user-list-header-manager":"",scope:"col"}},[e("span",[t._v(t._s(t.t("settings","Manager")))])]),t._v(" "),e("th",{staticClass:"header__cell header__cell--actions",attrs:{"data-cy-user-list-header-actions":"",scope:"col"}},[e("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t"+t._s(t.t("settings","Account actions"))+"\n\t\t")])])])}),[],!1,null,"5c0f8828",null).exports;var et=a(61884),st=a(56760),at=a(41944),it=a(95101),nt=a(86454),rt=a(57505),ot=a(24764),lt=a(65659),dt=a(19664);const ct=(0,r.pM)({components:{NcActionButton:rt.A,NcActions:ot.A,NcIconSvgWrapper:g.A},props:{actions:{type:Array,required:!0},disabled:{type:Boolean,required:!0},edit:{type:Boolean,required:!0},user:{type:Object,required:!0}},computed:{editSvg(){return this.edit?lt:dt},enabledActions(){return this.actions.filter((t=>"function"!=typeof t.enabled||t.enabled(this.user)))}},methods:{isSvg:function(t){if("string"!=typeof t)throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);if(0===(t=t.trim()).length)return!1;if(!0!==nt.XMLValidator.validate(t))return!1;let e;const s=new nt.XMLParser;try{e=s.parse(t)}catch{return!1}return!!e&&!!Object.keys(e).some((t=>"svg"===t.toLowerCase()))},toggleEdit(){this.$emit("update:edit",!this.edit)}}}),ut=(0,I.A)(ct,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcActions",{attrs:{"aria-label":t.t("settings","Toggle account actions menu"),disabled:t.disabled,inline:1}},[e("NcActionButton",{attrs:{"data-cy-user-list-action-toggle-edit":`${t.edit}`,disabled:t.disabled},on:{click:t.toggleEdit},scopedSlots:t._u([{key:"icon",fn:function(){return[e("NcIconSvgWrapper",{key:t.editSvg,attrs:{svg:t.editSvg,"aria-hidden":"true"}})]},proxy:!0}])},[t._v("\n\t\t"+t._s(t.edit?t.t("settings","Done"):t.t("settings","Edit"))+"\n\t\t")]),t._v(" "),t._l(t.enabledActions,(function({action:s,icon:a,text:i},n){return e("NcActionButton",{key:n,attrs:{disabled:t.disabled,"aria-label":i,icon:a,"close-after-click":""},on:{click:e=>s(e,{...t.user})},scopedSlots:t._u([t.isSvg(a)?{key:"icon",fn:function(){return[e("NcIconSvgWrapper",{attrs:{svg:a,"aria-hidden":"true"}})]},proxy:!0}:null],null,!0)},[t._v("\n\t\t"+t._s(i)+"\n\t\t")])}))],2)}),[],!1,null,null,null).exports;var gt=a(48964),At=a(68736),pt=a(61744),ht=a(97691),mt=a(18642),Ct=a(72298),vt=a(73346),wt=a(90309),_t=a(20282),ft=a(15502),bt=a(55925),yt=a(28440),xt=a(30803),Nt=a(47611),kt=a(10363),Gt=a(23538),St=a(50341),Ut=a(25535),Lt=a(87142),Dt=a(27345),Bt=a(85865),It=a(75424),qt=a(70952),Ot=a(11683),Mt=a(542),$t=a(80236),Ft=a(14727),Tt=a(80065),Et=a(19015),Pt=a(18608),zt=a(94722),Rt=a(92089),Qt=a(26355),Wt=a(1758),Ht=a(77333),Kt=a(22318),jt=a(10402),Yt=a(31719),Xt=a(75971),Vt=a(17309),Jt=a(50298),Zt=a(49013),te=a(29805),ee=a(88984),se=a(96229),ae=a(18564),ie=a(25521),ne=a(68229),re=a(20070),oe=a(79008),le=a(19498),de=a(26517),ce=a(22792),ue=a(13058),ge=a(55945),Ae=a(7723),pe=a(64711),he=a(3226),me=a(9060),Ce=a(67699),ve=a(68712),we=a(53304),_e=a(64906),fe=a(62328),be=a(93364),ye=(a(58322),a(90912),a(19051),a(82025)),xe=a(71560),Ne=a(71639),ke=a(24431),Ge=a(77930),Se=a(87605),Ue=a(70253),Le=a(83847),De=a(22907),Be=a(18127),Ie=a(64162),qe=a(89675),Oe=a(49814),Me=a(23610),$e=a(55581),Fe=(a(94205),a(95462),a(23020),a(53429),a(23739),a(16343),a(29928),a(64660),a(18547),a(42892)),Te=a(15074),Ee=(a(59656),a(75105),a(92471),a(16406),a(2508));gt.N,At.N,pt.A,ht.N,mt.N,Ct.A,vt.N,wt.A,ft.A,bt.A,yt.N,_t.N,xt.N,Nt.A,kt.A,Gt.N,St.N,Ut.A,Lt.N,Dt.A,Bt.A,It.N,qt.N,Ot.N,Mt.A,$t.N,Ft.A,Tt.N,Et.N,Pt.A,fe.N,zt.N,Rt.N,Qt.N,Wt.N,M.A,Ht.N,Kt.N,jt.N,Yt.N,Xt.N,Vt.N,Jt.N,Zt.N,te.default,ee.A,se.N,ae.N,ie.A,ne.N,u.A,re.A,oe.A,le.N,de.N,ce.N,ue.N,ge.N,Ae.N,A.A,_e.N,pe.A,he.A,me.N,Ce.N,ve.N,we.N,fe.a,be.N,Ne.N,ye.N,ke.N,Ge.N,Se.N,Ue.N,Le.N,De.N,xe.N,Be.N,Ie.N,qe.N,Oe.N,Me.A,Symbol.toStringTag,Fe.A,Te.u,Ee.yw,Symbol.toStringTag;const Pe={props:{user:{type:Object,required:!0},settings:{type:Object,default:()=>({})},quotaOptions:{type:Array,default:()=>[]},languages:{type:Array,required:!0},externalActions:{type:Array,default:()=>[]}},setup(t){const{formattedFullTime:e}=(0,$e.m7)(1e3*t.user.firstLoginTimestamp,{relativeTime:!1,format:{timeStyle:"short",dateStyle:"short"}});return{formattedFullTime:e}},data(){return{selectedGroups:this.user.groups.map((t=>({id:t,name:t}))),selectedSubAdminGroups:this.user.subadmin.map((t=>({id:t,name:t}))),userGroups:this.user.groups.map((t=>({id:t,name:t}))),userSubAdminGroups:this.user.subadmin.map((t=>({id:t,name:t})))}},computed:{showConfig(){return this.$store.getters.getShowConfig},usedSpace(){const e=this.user.quota.used>0?this.user.quota.used:0;return t("settings","{size} used",{size:(0,O.v7)(e,!0)})},usedQuota(){let t=this.user.quota.quota;return t=t>0?Math.min(100,Math.round(this.user.quota.used/t*100)):95*(1-1/(this.user.quota.used/(10*Math.pow(2,30))+1)),isNaN(t)?0:t},userQuota(){if(this.user.quota.quota>=0){const t=(0,O.v7)(this.user.quota.quota);return this.quotaOptions.find((e=>e.id===t))||{id:t,label:t}}return"default"===this.user.quota.quota?this.quotaOptions[0]:this.quotaOptions[1]},minPasswordLength(){return this.$store.getters.getPasswordPolicyMinLength},userLanguage(){const t=this.languages[0].languages.concat(this.languages[1].languages).find((t=>t.code===this.user.language));return"object"!=typeof t&&""!==this.user.language?{code:this.user.language,name:this.user.language}:""!==this.user.language&&t},userFirstLogin(){return this.user.firstLoginTimestamp>0?this.formattedFullTime:this.user.firstLoginTimestamp<0?t("settings","Unknown"):t("settings","Never")},userLastLoginTooltip(){return this.user.lastLoginTimestamp>0?OC.Util.formatDate(1e3*this.user.lastLoginTimestamp):""},userLastLogin(){return this.user.lastLoginTimestamp>0?OC.Util.relativeModifiedDate(1e3*this.user.lastLoginTimestamp):t("settings","Never")}}};var ze=a(95668);const Re={name:"UserRow",components:{NcAvatar:at.A,NcLoadingIcon:A.A,NcProgressBar:it.A,NcSelect:T.default,NcTextField:E.A,UserRowActions:ut},mixins:[Pe],props:{user:{type:Object,required:!0},visible:{type:Boolean,required:!0},users:{type:Array,required:!0},hasObfuscated:{type:Boolean,required:!0},quotaOptions:{type:Array,required:!0},languages:{type:Array,required:!0},settings:{type:Object,required:!0},externalActions:{type:Array,default:()=>[]}},data(){return{selectedQuota:!1,rand:Math.random().toString(36).substring(2),loadingPossibleManagers:!1,possibleManagers:[],currentManager:"",editing:!1,loading:{all:!1,displayName:!1,password:!1,mailAddress:!1,groups:!1,groupsDetails:!1,subAdminGroupsDetails:!1,subadmins:!1,quota:!1,delete:!1,disable:!1,languages:!1,wipe:!1,manager:!1},editedDisplayName:this.user.displayname,editedPassword:"",editedMail:this.user.email??"",promise:null}},computed:{managerLabel:()=>t("settings","Set line manager"),isObfuscated(){return(0,ze.HK)(this.user)},showConfig(){return this.$store.getters.getShowConfig},isLoadingUser(){return this.loading.delete||this.loading.disable||this.loading.wipe},isLoadingField(){return this.loading.delete||this.loading.disable||this.loading.all},uniqueId(){return encodeURIComponent(this.user.id+this.rand)},availableGroups(){return(this.settings.isAdmin||this.settings.isDelegatedAdmin?this.$store.getters.getSortedGroups:this.$store.getters.getSubAdminGroups).filter((t=>"__nc_internal_recent"!==t.id&&"disabled"!==t.id))},availableSubAdminGroups(){return this.availableGroups.filter((t=>"admin"!==t.id))},userGroupsLabels(){return this.userGroups.map((t=>{const e=this.availableGroups.find((e=>e.id===t.id));return e?.name??t.name??t.id})).join(", ")},userSubAdminGroupsLabels(){return this.userSubAdminGroups.map((t=>{const e=this.availableSubAdminGroups.find((e=>e.id===t.id));return e?.name??t.name??t.id})).join(", ")},usedSpace(){return this.user.quota?.used?t("settings","{size} used",{size:(0,O.v7)(this.user.quota?.used)}):t("settings","{size} used",{size:(0,O.v7)(0)})},canEdit(){return(0,et.HW)().uid!==this.user.id||this.settings.isAdmin||this.settings.isDelegatedAdmin},userQuota(){let e=this.user.quota?.quota;return"default"===e&&(e=this.settings.defaultQuota,"none"!==e&&(e=(0,O.lT)(e,!0))),"none"===e||-3===e?t("settings","Unlimited"):e>=0?(0,O.v7)(e):(0,O.v7)(0)},userActions(){const e=[{icon:"icon-delete",text:t("settings","Delete account"),action:this.deleteUser},{icon:"icon-delete",text:t("settings","Disconnect all devices and delete local data"),action:this.wipeUserDevices},{icon:this.user.enabled?"icon-close":"icon-add",text:this.user.enabled?t("settings","Disable account"):t("settings","Enable account"),action:this.enableDisableUser}];return null!==this.user.email&&""!==this.user.email&&e.push({icon:"icon-mail",text:t("settings","Resend welcome email"),action:this.sendWelcomeMail}),e.concat(this.externalActions)},editedUserQuota:{get(){return!1!==this.selectedQuota?this.selectedQuota:this.settings.defaultQuota!==ze.SA.id&&(0,O.lT)(this.settings.defaultQuota,!0)>=0?{id:this.settings.defaultQuota,label:this.settings.defaultQuota}:ze.SA},set(t){this.selectedQuota=t}},availableLanguages(){return this.languages[0].languages.concat(this.languages[1].languages)}},async beforeMount(){this.user.manager&&await this.initManager(this.user.manager)},methods:{async wipeUserDevices(){const e=this.user.id;await(0,st.C5)(),OC.dialogs.confirmDestructive(t("settings","In case of lost device or exiting the organization, this can remotely wipe the Nextcloud data from all devices associated with {userid}. Only works if the devices are connected to the internet.",{userid:e}),t("settings","Remote wipe of devices"),{type:OC.dialogs.YES_NO_BUTTONS,confirm:t("settings","Wipe {userid}'s devices",{userid:e}),confirmClasses:"error",cancel:t("settings","Cancel")},(s=>{s&&(this.loading.wipe=!0,this.loading.all=!0,this.$store.dispatch("wipeUserDevices",e).then((()=>(0,d.Te)(t("settings","Wiped {userid}'s devices",{userid:e}))),{timeout:2e3}).finally((()=>{this.loading.wipe=!1,this.loading.all=!1})))}),!0)},filterManagers(t){return t.filter((t=>t.id!==this.user.id))},async initManager(t){await this.$store.dispatch("getUser",t).then((t=>{this.currentManager=t?.data.ocs.data}))},async searchInitialUserManager(){this.loadingPossibleManagers=!0,await this.searchUserManager(),this.loadingPossibleManagers=!1},async loadGroupsDetails(){this.loading.groups=!0,this.loading.groupsDetails=!0;try{const t=await(0,P.Iu)({userId:this.user.id});for(const e of t)this.$store.commit("addGroup",e);this.selectedGroups=this.selectedGroups.map((e=>t.find((t=>t.id===e.id))??e))}catch(e){C.A.error(t("settings","Failed to load groups with details"),{error:e})}this.loading.groups=!1,this.loading.groupsDetails=!1},async loadSubAdminGroupsDetails(){this.loading.subadmins=!0,this.loading.subAdminGroupsDetails=!0;try{const t=await(0,P.FF)({userId:this.user.id});for(const e of t)this.$store.commit("addGroup",e);this.selectedSubAdminGroups=this.selectedSubAdminGroups.map((e=>t.find((t=>t.id===e.id))??e))}catch(e){C.A.error(t("settings","Failed to load subadmin groups with details"),{error:e})}this.loading.subadmins=!1,this.loading.subAdminGroupsDetails=!1},async searchGroups(e,s){if(""!==e){this.promise&&this.promise.cancel(),s(!0);try{this.promise=await(0,P.N_)({search:e,offset:0,limit:25});const t=await this.promise;for(const e of t)this.$store.commit("addGroup",e)}catch(e){C.A.error(t("settings","Failed to search groups"),{error:e})}this.promise=null,s(!1)}},async searchUserManager(t){await this.$store.dispatch("searchUsers",{offset:0,limit:10,search:t}).then((t=>{const e=t?.data?this.filterManagers(Object.values(t?.data.ocs.data.users)):[];e.length>0&&(this.possibleManagers=e)}))},async updateUserManager(){this.loading.manager=!0;const e=this.user.manager;try{await this.$store.dispatch("setUserData",{userid:this.user.id,key:"manager",value:this.currentManager?this.currentManager.id:""})}catch(s){(0,d.Qg)(t("settings","Failed to update line manager")),C.A.error("Failed to update manager:",{error:s}),this.currentManager=e}finally{this.loading.manager=!1}},async deleteUser(){const e=this.user.id;await(0,st.C5)(),OC.dialogs.confirmDestructive(t("settings","Fully delete {userid}'s account including all their personal files, app data, etc.",{userid:e}),t("settings","Account deletion"),{type:OC.dialogs.YES_NO_BUTTONS,confirm:t("settings","Delete {userid}'s account",{userid:e}),confirmClasses:"error",cancel:t("settings","Cancel")},(t=>{if(t)return this.loading.delete=!0,this.loading.all=!0,this.$store.dispatch("deleteUser",e).then((()=>{this.loading.delete=!1,this.loading.all=!1}))}),!0)},enableDisableUser(){this.loading.delete=!0,this.loading.all=!0;const t=this.user.id,e=!this.user.enabled;return this.$store.dispatch("enableDisableUser",{userid:t,enabled:e}).then((()=>{this.loading.delete=!1,this.loading.all=!1}))},async updateDisplayName(){this.loading.displayName=!0;try{await this.$store.dispatch("setUserData",{userid:this.user.id,key:"displayname",value:this.editedDisplayName}),this.editedDisplayName===this.user.displayname&&(0,d.Te)(t("settings","Display name was successfully changed"))}finally{this.loading.displayName=!1}},async updatePassword(){if(this.loading.password=!0,0===this.editedPassword.length)(0,d.Qg)(t("settings","Password can't be empty")),this.loading.password=!1;else try{await this.$store.dispatch("setUserData",{userid:this.user.id,key:"password",value:this.editedPassword}),this.editedPassword="",(0,d.Te)(t("settings","Password was successfully changed"))}finally{this.loading.password=!1}},async updateEmail(){if(this.loading.mailAddress=!0,""===this.editedMail)(0,d.Qg)(t("settings","Email can't be empty")),this.loading.mailAddress=!1,this.editedMail=this.user.email;else try{await this.$store.dispatch("setUserData",{userid:this.user.id,key:"email",value:this.editedMail}),this.editedMail===this.user.email&&(0,d.Te)(t("settings","Email was successfully changed"))}finally{this.loading.mailAddress=!1}},async createGroup({name:e}){this.loading.groups=!0;try{await this.$store.dispatch("addGroup",e);const t=this.user.id;await this.$store.dispatch("addUserGroup",{userid:t,gid:e}),this.userGroups.push({id:e,name:e})}catch(e){C.A.error(t("settings","Failed to create group"),{error:e})}this.loading.groups=!1},async addUserGroup(t){if(t.isCreating)return;const e=this.user.id,s=t.id;if(!1!==t.canAdd){this.loading.groups=!0;try{await this.$store.dispatch("addUserGroup",{userid:e,gid:s}),this.userGroups.push(t)}catch(t){console.error(t)}this.loading.groups=!1}},async removeUserGroup(t){if(!1===t.canRemove)return!1;this.loading.groups=!0;const e=this.user.id,s=t.id;try{await this.$store.dispatch("removeUserGroup",{userid:e,gid:s}),this.userGroups=this.userGroups.filter((t=>t.id!==s)),this.loading.groups=!1,this.$route.params.selectedGroup===s&&this.$store.commit("deleteUser",e)}catch{this.loading.groups=!1}},async addUserSubAdmin(t){this.loading.subadmins=!0;const e=this.user.id,s=t.id;try{await this.$store.dispatch("addUserSubAdmin",{userid:e,gid:s}),this.userSubAdminGroups.push(t)}catch(t){console.error(t)}this.loading.subadmins=!1},async removeUserSubAdmin(t){this.loading.subadmins=!0;const e=this.user.id,s=t.id;try{await this.$store.dispatch("removeUserSubAdmin",{userid:e,gid:s}),this.userSubAdminGroups=this.userSubAdminGroups.filter((t=>t.id!==s))}catch(t){console.error(t)}finally{this.loading.subadmins=!1}},async setUserQuota(t="none"){"none"===t&&(t=ze.SA),this.loading.quota=!0,t=t.id?t.id:t;try{const e=((0,O.lT)(t,!0)||t).toString();await this.$store.dispatch("setUserData",{userid:this.user.id,key:"quota",value:e})}catch(t){console.error(t)}finally{this.loading.quota=!1}return t},validateQuota:t=>("object"==typeof t&&(t=t?.id||t.label),null===(0,O.lT)(t,!0)?ze.SA:{id:t=(0,O.v7)((0,O.lT)(t,!0)),label:t}),async setUserLanguage(t){this.loading.languages=!0;try{await this.$store.dispatch("setUserData",{userid:this.user.id,key:"language",value:t.code}),this.loading.languages=!1}catch(t){console.error(t)}return t},sendWelcomeMail(){this.loading.all=!0,this.$store.dispatch("sendWelcomeMail",this.user.id).then((()=>(0,d.Te)(t("settings","Welcome mail sent!"),{timeout:2e3}))).finally((()=>{this.loading.all=!1}))},async toggleEdit(){this.editing=!this.editing,this.editing&&(await this.$nextTick(),this.$refs.displayNameField?.$refs?.inputField?.$refs?.input?.focus(),this.loadGroupsDetails(),this.loadSubAdminGroupsDetails()),this.editedDisplayName!==this.user.displayname?this.editedDisplayName=this.user.displayname:this.editedMail!==this.user.email&&(this.editedMail=this.user.email??"")}}};var Qe=a(78897),We={};We.styleTagTransform=L(),We.setAttributes=k(),We.insert=x().bind(null,"head"),We.domAPI=b(),We.insertStyleElement=S(),_()(Qe.A,We),Qe.A&&Qe.A.locals&&Qe.A.locals;var He=(0,I.A)(Re,(function(){var t=this,e=t._self._c;return e("tr",{staticClass:"user-list__row",attrs:{"data-cy-user-row":t.user.id}},[e("td",{staticClass:"row__cell row__cell--avatar",attrs:{"data-cy-user-list-cell-avatar":""}},[t.isLoadingUser?e("NcLoadingIcon",{attrs:{name:t.t("settings","Loading account …"),size:32}}):t.visible?e("NcAvatar",{attrs:{"disable-menu":"","show-user-status":!1,user:t.user.id}}):t._e()],1),t._v(" "),e("td",{staticClass:"row__cell row__cell--displayname",attrs:{"data-cy-user-list-cell-displayname":""}},[t.editing&&t.user.backendCapabilities.setDisplayName?[e("NcTextField",{ref:"displayNameField",staticClass:"user-row-text-field",class:{"icon-loading-small":t.loading.displayName},attrs:{"data-cy-user-list-input-displayname":"","data-loading":t.loading.displayName||void 0,"trailing-button-label":t.t("settings","Submit"),"show-trailing-button":!0,disabled:t.loading.displayName||t.isLoadingField,label:t.t("settings","Change display name"),"trailing-button-icon":"arrowRight",value:t.editedDisplayName,autocapitalize:"off",autocomplete:"off",spellcheck:"false"},on:{"update:value":function(e){t.editedDisplayName=e},"trailing-button-click":t.updateDisplayName}})]:t.isObfuscated?t._e():e("strong",{attrs:{title:t.user.displayname?.length>20?t.user.displayname:null}},[t._v("\n\t\t\t"+t._s(t.user.displayname)+"\n\t\t")])],2),t._v(" "),e("td",{staticClass:"row__cell row__cell--username",attrs:{"data-cy-user-list-cell-username":""}},[e("span",{staticClass:"row__subtitle"},[t._v(t._s(t.user.id))])]),t._v(" "),e("td",{staticClass:"row__cell",class:{"row__cell--obfuscated":t.hasObfuscated},attrs:{"data-cy-user-list-cell-password":""}},[t.editing&&t.settings.canChangePassword&&t.user.backendCapabilities.setPassword?[e("NcTextField",{staticClass:"user-row-text-field",class:{"icon-loading-small":t.loading.password},attrs:{"data-cy-user-list-input-password":"","data-loading":t.loading.password||void 0,"trailing-button-label":t.t("settings","Submit"),"show-trailing-button":!0,disabled:t.loading.password||t.isLoadingField,minlength:t.minPasswordLength,maxlength:"469",label:t.t("settings","Set new password"),"trailing-button-icon":"arrowRight",value:t.editedPassword,autocapitalize:"off",autocomplete:"new-password",required:"",spellcheck:"false",type:"password"},on:{"update:value":function(e){t.editedPassword=e},"trailing-button-click":t.updatePassword}})]:t.isObfuscated?e("span",[t._v("\n\t\t\t"+t._s(t.t("settings","You do not have permissions to see the details of this account"))+"\n\t\t")]):t._e()],2),t._v(" "),e("td",{staticClass:"row__cell",attrs:{"data-cy-user-list-cell-email":""}},[t.editing?[e("NcTextField",{staticClass:"user-row-text-field",class:{"icon-loading-small":t.loading.mailAddress},attrs:{"data-cy-user-list-input-email":"","data-loading":t.loading.mailAddress||void 0,"show-trailing-button":!0,"trailing-button-label":t.t("settings","Submit"),label:t.t("settings","Set new email address"),disabled:t.loading.mailAddress||t.isLoadingField,"trailing-button-icon":"arrowRight",value:t.editedMail,autocapitalize:"off",autocomplete:"email",spellcheck:"false",type:"email"},on:{"update:value":function(e){t.editedMail=e},"trailing-button-click":t.updateEmail}})]:t.isObfuscated?t._e():e("span",{attrs:{title:t.user.email?.length>20?t.user.email:null}},[t._v("\n\t\t\t"+t._s(t.user.email)+"\n\t\t")])],2),t._v(" "),e("td",{staticClass:"row__cell row__cell--large row__cell--multiline",attrs:{"data-cy-user-list-cell-groups":""}},[t.editing?[e("label",{staticClass:"hidden-visually",attrs:{for:"groups"+t.uniqueId}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Add account to group"))+"\n\t\t\t")]),t._v(" "),e("NcSelect",{attrs:{"data-cy-user-list-input-groups":"","data-loading":t.loading.groups||void 0,"input-id":"groups"+t.uniqueId,"close-on-select":!1,disabled:t.isLoadingField||t.loading.groupsDetails,loading:t.loading.groups,multiple:!0,"append-to-body":!1,options:t.availableGroups,placeholder:t.t("settings","Add account to group"),taggable:t.settings.isAdmin||t.settings.isDelegatedAdmin,value:t.userGroups,label:"name","no-wrap":!0,"create-option":t=>({id:t,name:t,isCreating:!0})},on:{search:t.searchGroups,"option:created":t.createGroup,"option:selected":e=>t.addUserGroup(e.at(-1)),"option:deselected":t.removeUserGroup}})]:t.isObfuscated?t._e():e("span",{attrs:{title:t.userGroupsLabels?.length>40?t.userGroupsLabels:null}},[t._v("\n\t\t\t"+t._s(t.userGroupsLabels)+"\n\t\t")])],2),t._v(" "),t.settings.isAdmin||t.settings.isDelegatedAdmin?e("td",{staticClass:"row__cell row__cell--large row__cell--multiline",attrs:{"data-cy-user-list-cell-subadmins":""}},[t.editing&&(t.settings.isAdmin||t.settings.isDelegatedAdmin)?[e("label",{staticClass:"hidden-visually",attrs:{for:"subadmins"+t.uniqueId}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Set account as admin for"))+"\n\t\t\t")]),t._v(" "),e("NcSelect",{attrs:{"data-cy-user-list-input-subadmins":"","data-loading":t.loading.subadmins||void 0,"input-id":"subadmins"+t.uniqueId,"close-on-select":!1,disabled:t.isLoadingField||t.loading.subAdminGroupsDetails,loading:t.loading.subadmins,label:"name","append-to-body":!1,multiple:!0,"no-wrap":!0,options:t.availableSubAdminGroups,placeholder:t.t("settings","Set account as admin for"),value:t.userSubAdminGroups},on:{search:t.searchGroups,"option:deselected":t.removeUserSubAdmin,"option:selected":e=>t.addUserSubAdmin(e.at(-1))}})]:t.isObfuscated?t._e():e("span",{attrs:{title:t.userSubAdminGroupsLabels?.length>40?t.userSubAdminGroupsLabels:null}},[t._v("\n\t\t\t"+t._s(t.userSubAdminGroupsLabels)+"\n\t\t")])],2):t._e(),t._v(" "),e("td",{staticClass:"row__cell",attrs:{"data-cy-user-list-cell-quota":""}},[t.editing?[e("label",{staticClass:"hidden-visually",attrs:{for:"quota"+t.uniqueId}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Select account quota"))+"\n\t\t\t")]),t._v(" "),e("NcSelect",{attrs:{"close-on-select":!0,"create-option":t.validateQuota,"data-cy-user-list-input-quota":"","data-loading":t.loading.quota||void 0,disabled:t.isLoadingField,loading:t.loading.quota,"append-to-body":!1,clearable:!1,"input-id":"quota"+t.uniqueId,options:t.quotaOptions,placeholder:t.t("settings","Select account quota"),taggable:!0},on:{"option:selected":t.setUserQuota},model:{value:t.editedUserQuota,callback:function(e){t.editedUserQuota=e},expression:"editedUserQuota"}})]:t.isObfuscated?t._e():[e("span",{attrs:{id:"quota-progress"+t.uniqueId}},[t._v(t._s(t.userQuota)+" ("+t._s(t.usedSpace)+")")]),t._v(" "),e("NcProgressBar",{staticClass:"row__progress",class:{"row__progress--warn":t.usedQuota>80},attrs:{"aria-labelledby":"quota-progress"+t.uniqueId,value:t.usedQuota}})]],2),t._v(" "),t.showConfig.showLanguages?e("td",{staticClass:"row__cell row__cell--large",attrs:{"data-cy-user-list-cell-language":""}},[t.editing?[e("label",{staticClass:"hidden-visually",attrs:{for:"language"+t.uniqueId}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Set the language"))+"\n\t\t\t")]),t._v(" "),e("NcSelect",{attrs:{id:"language"+t.uniqueId,"data-cy-user-list-input-language":"","data-loading":t.loading.languages||void 0,"allow-empty":!1,disabled:t.isLoadingField,loading:t.loading.languages,clearable:!1,"append-to-body":!1,options:t.availableLanguages,placeholder:t.t("settings","No language set"),value:t.userLanguage,label:"name"},on:{input:t.setUserLanguage}})]:t.isObfuscated?t._e():e("span",[t._v("\n\t\t\t"+t._s(t.userLanguage.name)+"\n\t\t")])],2):t._e(),t._v(" "),t.showConfig.showUserBackend||t.showConfig.showStoragePath?e("td",{staticClass:"row__cell row__cell--large",attrs:{"data-cy-user-list-cell-storage-location":""}},[t.isObfuscated?t._e():[t.showConfig.showUserBackend?e("span",[t._v(t._s(t.user.backend))]):t._e(),t._v(" "),t.showConfig.showStoragePath?e("span",{staticClass:"row__subtitle",attrs:{title:t.user.storageLocation}},[t._v("\n\t\t\t\t"+t._s(t.user.storageLocation)+"\n\t\t\t")]):t._e()]],2):t._e(),t._v(" "),t.showConfig.showFirstLogin?e("td",{staticClass:"row__cell",attrs:{"data-cy-user-list-cell-first-login":""}},[t.isObfuscated?t._e():e("span",[t._v(t._s(t.userFirstLogin))])]):t._e(),t._v(" "),t.showConfig.showLastLogin?e("td",{staticClass:"row__cell",attrs:{title:t.userLastLoginTooltip,"data-cy-user-list-cell-last-login":""}},[t.isObfuscated?t._e():e("span",[t._v(t._s(t.userLastLogin))])]):t._e(),t._v(" "),e("td",{staticClass:"row__cell row__cell--large row__cell--fill",attrs:{"data-cy-user-list-cell-manager":""}},[t.editing?[e("label",{staticClass:"hidden-visually",attrs:{for:"manager"+t.uniqueId}},[t._v("\n\t\t\t\t"+t._s(t.managerLabel)+"\n\t\t\t")]),t._v(" "),e("NcSelect",{staticClass:"select--fill",attrs:{"data-cy-user-list-input-manager":"","data-loading":t.loading.manager||void 0,"input-id":"manager"+t.uniqueId,disabled:t.isLoadingField,loading:t.loadingPossibleManagers||t.loading.manager,options:t.possibleManagers,placeholder:t.managerLabel,label:"displayname",filterable:!1,"internal-search":!1,clearable:!0},on:{open:t.searchInitialUserManager,search:t.searchUserManager,"update:model-value":t.updateUserManager},model:{value:t.currentManager,callback:function(e){t.currentManager=e},expression:"currentManager"}})]:t.isObfuscated?t._e():e("span",[t._v("\n\t\t\t"+t._s(t.user.manager)+"\n\t\t")])],2),t._v(" "),e("td",{staticClass:"row__cell row__cell--actions",attrs:{"data-cy-user-list-cell-actions":""}},[t.visible&&!t.isObfuscated&&t.canEdit&&!t.loading.all?e("UserRowActions",{attrs:{actions:t.userActions,disabled:t.isLoadingField,edit:t.editing,user:t.user},on:{"update:edit":t.toggleEdit}}):t._e()],1)])}),[],!1,null,"549fcd14",null);const Ke=He.exports,je=Object.freeze({id:"",displayName:"",password:"",mailAddress:"",groups:[],manager:"",subAdminsGroups:[],quota:ze.MY,language:{code:"en",name:t("settings","Default language")}}),Ye={name:"UserList",components:{Fragment:c.F,NcEmptyContent:u.A,NcIconSvgWrapper:g.A,NcLoadingIcon:A.A,NewUserDialog:H,UserListFooter:X,UserListHeader:tt,VirtualList:q},props:{selectedGroup:{type:String,default:null},externalActions:{type:Array,default:()=>[]}},setup:()=>({mdiAccountGroup:l.n7C,rowHeight:55,UserRow:Ke}),data:()=>({loading:{all:!1,groups:!1,users:!1},newUser:{...je},isInitialLoad:!0,searchQuery:""}),computed:{showConfig(){return this.$store.getters.getShowConfig},settings(){return this.$store.getters.getServerData},style(){return{"--row-height":`${this.rowHeight}px`}},hasObfuscated(){return this.filteredUsers.some((t=>(0,ze.HK)(t)))},users(){return this.$store.getters.getUsers},filteredUsers(){return"disabled"===this.selectedGroup?this.users.filter((t=>!1===t.enabled)):this.users.filter((t=>!1!==t.enabled))},groups(){return this.$store.getters.getSortedGroups.filter((t=>"__nc_internal_recent"!==t.id&&"disabled"!==t.id))},quotaOptions(){const t=this.settings.quotaPreset.reduce(((t,e)=>t.concat({id:e,label:e})),[]);return this.settings.allowUnlimitedQuota&&t.unshift(ze.SA),t.unshift(ze.MY),t},usersOffset(){return this.$store.getters.getUsersOffset},usersLimit(){return this.$store.getters.getUsersLimit},disabledUsersOffset(){return this.$store.getters.getDisabledUsersOffset},disabledUsersLimit(){return this.$store.getters.getDisabledUsersLimit},usersCount(){return this.users.length},languages(){return[{label:t("settings","Common languages"),languages:this.settings.languages.commonLanguages},{label:t("settings","Other languages"),languages:this.settings.languages.otherLanguages}]}},watch:{async selectedGroup(t){this.isInitialLoad=!0,await this.redirectIfDisabled(),this.$store.commit("resetUsers"),await this.loadUsers(),this.setNewUserDefaultGroup(t)},filteredUsers(t){C.A.debug(`${t.length} filtered user(s)`)}},async created(){await this.loadUsers()},async mounted(){this.settings.canChangePassword||OC.Notification.showTemporary(t("settings","Password change is disabled because the master key is disabled")),this.resetForm(),(0,n.B1)("nextcloud:unified-search.search",this.search),(0,n.B1)("nextcloud:unified-search.reset",this.resetSearch),await this.redirectIfDisabled()},beforeDestroy(){(0,n.al)("nextcloud:unified-search.search",this.search),(0,n.al)("nextcloud:unified-search.reset",this.resetSearch)},methods:{async handleScrollEnd(){await this.loadUsers()},async loadUsers(){this.loading.users=!0;try{"disabled"===this.selectedGroup?await this.$store.dispatch("getDisabledUsers",{offset:this.disabledUsersOffset,limit:this.disabledUsersLimit,search:this.searchQuery}):"__nc_internal_recent"===this.selectedGroup?await this.$store.dispatch("getRecentUsers",{offset:this.usersOffset,limit:this.usersLimit,search:this.searchQuery}):await this.$store.dispatch("getUsers",{offset:this.usersOffset,limit:this.usersLimit,group:this.selectedGroup,search:this.searchQuery}),C.A.debug(`${this.users.length} total user(s) loaded`)}catch(t){C.A.error("Failed to load accounts",{error:t}),(0,d.Qg)("Failed to load accounts")}this.loading.users=!1,this.isInitialLoad=!1},closeDialog(){this.$store.commit("setShowConfig",{key:"showNewUserForm",value:!1})},async search({query:t}){this.searchQuery=t,this.$store.commit("resetUsers"),await this.loadUsers()},resetSearch(){this.search({query:""})},resetForm(){this.newUser=Object.assign({},je),this.settings.defaultLanguage&&r.Ay.set(this.newUser.language,"code",this.settings.defaultLanguage),this.setNewUserDefaultGroup(this.selectedGroup),this.loading.all=!1},setNewUserDefaultGroup(t){if(t||this.settings.isAdmin||this.settings.isDelegatedAdmin){if(t){const e=this.groups.find((e=>e.id===t));if(e)return void(this.newUser.groups=[e])}this.newUser.groups=[]}else{const t=this.$store.getters.getSubAdminGroups;1===t.length&&(this.newUser.groups=[...t])}},async redirectIfDisabled(){const t=this.$store.getters.getGroups;"disabled"===this.selectedGroup&&t.findIndex((t=>"disabled"===t.id&&0===t.usercount))>-1&&(this.$router.push({name:"users"}),await this.loadUsers())}}};var Xe=a(91544),Ve={};Ve.styleTagTransform=L(),Ve.setAttributes=k(),Ve.insert=x().bind(null,"head"),Ve.domAPI=b(),Ve.insertStyleElement=S(),_()(Xe.A,Ve),Xe.A&&Xe.A.locals&&Xe.A.locals;const Je=(0,I.A)(Ye,(function(){var t=this,e=t._self._c;return e("Fragment",[t.showConfig.showNewUserForm?e("NewUserDialog",{attrs:{loading:t.loading,"new-user":t.newUser,"quota-options":t.quotaOptions},on:{reset:t.resetForm,closing:t.closeDialog}}):t._e(),t._v(" "),0===t.filteredUsers.length?e("NcEmptyContent",{staticClass:"empty",attrs:{name:t.isInitialLoad&&t.loading.users?null:t.t("settings","No accounts")},scopedSlots:t._u([{key:"icon",fn:function(){return[t.isInitialLoad&&t.loading.users?e("NcLoadingIcon",{attrs:{name:t.t("settings","Loading accounts …"),size:64}}):e("NcIconSvgWrapper",{attrs:{path:t.mdiAccountGroup,size:64}})]},proxy:!0}],null,!1,226056511)}):e("VirtualList",{style:t.style,attrs:{"data-component":t.UserRow,"data-sources":t.filteredUsers,"data-key":"id","data-cy-user-list":"","item-height":t.rowHeight,"extra-props":{users:t.users,settings:t.settings,hasObfuscated:t.hasObfuscated,quotaOptions:t.quotaOptions,languages:t.languages,externalActions:t.externalActions}},on:{"scroll-end":t.handleScrollEnd},scopedSlots:t._u([{key:"before",fn:function(){return[e("caption",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t"+t._s(t.t("settings","List of accounts. This list is not fully rendered for performance reasons. The accounts will be rendered as you navigate through the list."))+"\n\t\t\t")])]},proxy:!0},{key:"header",fn:function(){return[e("UserListHeader",{attrs:{"has-obfuscated":t.hasObfuscated}})]},proxy:!0},{key:"footer",fn:function(){return[e("UserListFooter",{attrs:{loading:t.loading.users,"filtered-users":t.filteredUsers}})]},proxy:!0}])})],1)}),[],!1,null,"73fd953a",null).exports,Ze=(0,r.pM)({name:"UserManagement",components:{NcAppContent:o.A,UserList:Je},data:()=>({externalActions:[]}),computed:{pageHeading(){return null===this.selectedGroupDecoded?(0,i.Tl)("settings","All accounts"):{admin:(0,i.Tl)("settings","Admins"),disabled:(0,i.Tl)("settings","Disabled accounts")}[this.selectedGroupDecoded]??(0,i.Tl)("settings","Account group: {group}",{group:this.selectedGroupDecoded})},selectedGroup(){return this.$route.params.selectedGroup},selectedGroupDecoded(){return this.selectedGroup?decodeURIComponent(this.selectedGroup):null}},beforeMount(){this.$store.dispatch("getPasswordPolicyMinLength")},created(){window.OCA=window.OCA??{},window.OCA.Settings=window.OCA.Settings??{},window.OCA.Settings.UserList=window.OCA.Settings.UserList??{},window.OCA.Settings.UserList.registerAction=this.registerAction,(0,n.Ic)("settings:user-management:loaded")},methods:{t:i.Tl,registerAction(t,e,s,a){return this.externalActions.push({icon:t,text:e,action:s,enabled:a}),this.externalActions}}});var ts=a(11196),es={};es.styleTagTransform=L(),es.setAttributes=k(),es.insert=x().bind(null,"head"),es.domAPI=b(),es.insertStyleElement=S(),_()(ts.A,es),ts.A&&ts.A.locals&&ts.A.locals;const ss=(0,I.A)(Ze,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcAppContent",{attrs:{"page-heading":t.pageHeading}},[e("UserList",{attrs:{"selected-group":t.selectedGroupDecoded,"external-actions":t.externalActions}})],1)}),[],!1,null,"4684ed00",null).exports},78897:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".user-list__row[data-v-549fcd14]{position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.user-list__row[data-v-549fcd14]:hover{background-color:var(--color-background-hover)}.user-list__row:hover .row__cell[data-v-549fcd14]:not(.row__cell--actions){background-color:var(--color-background-hover)}.user-list__row .select--fill[data-v-549fcd14]{max-width:calc(var(--cell-width-large) - 2*var(--cell-padding))}.row__cell[data-v-549fcd14]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.row__cell strong[data-v-549fcd14],.row__cell span[data-v-549fcd14],.row__cell label[data-v-549fcd14]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.row__cell--avatar[data-v-549fcd14],.row__cell--displayname[data-v-549fcd14]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.row__cell--avatar[data-v-549fcd14]{inset-inline-start:0}.row__cell--displayname[data-v-549fcd14]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.row__cell--username[data-v-549fcd14]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.row__cell--avatar[data-v-549fcd14]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.row__cell--multiline span[data-v-549fcd14]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.row__cell--multiline span[data-v-549fcd14]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.row__cell--large[data-v-549fcd14]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.row__cell--obfuscated[data-v-549fcd14]{min-width:400px;width:400px}.row__cell--fill[data-v-549fcd14]{min-width:var(--cell-width-large);width:100%}.row__cell--actions[data-v-549fcd14]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.row__subtitle[data-v-549fcd14]{color:var(--color-text-maxcontrast)}.row__cell[data-v-549fcd14]{border-bottom:1px solid var(--color-border)}.row__cell[data-v-549fcd14] .v-select.select{min-width:var(--cell-min-width)}.row__progress[data-v-549fcd14]{margin-top:4px}.row__progress--warn[data-v-549fcd14]::-moz-progress-bar{background:var(--color-warning) !important}.row__progress--warn[data-v-549fcd14]::-webkit-progress-value{background:var(--color-warning) !important}","",{version:3,sources:["webpack://./apps/settings/src/components/Users/UserRow.vue","webpack://./apps/settings/src/components/Users/shared/styles.scss"],names:[],mappings:"AAGA,iCCGC,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CDLA,uCACC,8CAAA,CAEA,2EACC,8CAAA,CAKF,+CACC,+DAAA,CCDD,4BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,sGAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,6EAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,oCACC,oBAAA,CAGD,yCACC,2CAAA,CACA,+CAAA,CAAA,CAIF,sCACC,yDAAA,CAGD,oCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,4CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,4CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,mCACC,iCAAA,CACA,6BAAA,CAGD,wCACC,eAAA,CACA,WAAA,CAID,kCACC,iCAAA,CACA,UAAA,CAGD,qCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,gCACC,mCAAA,CDpFD,4BACC,2CAAA,CAGC,6CACC,+BAAA,CAKH,gCACC,cAAA,CAGC,yDACC,0CAAA,CAED,8DACC,0CAAA",sourcesContent:["\n@use './shared/styles';\n\n.user-list__row {\n\t@include styles.row;\n\n\t&:hover {\n\t\tbackground-color: var(--color-background-hover);\n\n\t\t.row__cell:not(.row__cell--actions) {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Limit width of select in fill cell\n\t.select--fill {\n\t\tmax-width: calc(var(--cell-width-large) - (2 * var(--cell-padding)));\n\t}\n}\n\n.row {\n\t@include styles.cell;\n\n\t&__cell {\n\t\tborder-bottom: 1px solid var(--color-border);\n\n\t\t:deep {\n\t\t\t.v-select.select {\n\t\t\t\tmin-width: var(--cell-min-width);\n\t\t\t}\n\t\t}\n\t}\n\n\t&__progress {\n\t\tmargin-top: 4px;\n\n\t\t&--warn {\n\t\t\t&::-moz-progress-bar {\n\t\t\t\tbackground: var(--color-warning) !important;\n\t\t\t}\n\t\t\t&::-webkit-progress-value {\n\t\t\t\tbackground: var(--color-warning) !important;\n\t\t\t}\n\t\t}\n\t}\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n@mixin row {\n\tposition: relative;\n\tdisplay: flex;\n\tmin-width: 100%;\n\twidth: fit-content;\n\theight: var(--row-height);\n\tbackground-color: var(--color-main-background);\n}\n\n@mixin cell {\n\t&__cell {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\tpadding: 0 var(--cell-padding);\n\t\tmin-width: var(--cell-width);\n\t\twidth: var(--cell-width);\n\t\tcolor: var(--color-main-text);\n\n\t\tstrong,\n\t\tspan,\n\t\tlabel {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow-wrap: anywhere;\n\t\t}\n\n\t\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\n\t\t\t&--avatar,\n\t\t\t&--displayname {\n\t\t\t\tposition: sticky;\n\t\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\t\tbackground-color: var(--color-main-background);\n\t\t\t}\n\n\t\t\t&--avatar {\n\t\t\t\tinset-inline-start: 0;\n\t\t\t}\n\n\t\t\t&--displayname {\n\t\t\t\tinset-inline-start: var(--avatar-cell-width);\n\t\t\t\tborder-inline-end: 1px solid var(--color-border);\n\t\t\t}\n\t\t}\n\n\t\t&--username {\n\t\t\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\n\t\t}\n\n\t\t&--avatar {\n\t\t\tmin-width: var(--avatar-cell-width);\n\t\t\twidth: var(--avatar-cell-width);\n\t\t\talign-items: center;\n\t\t\tpadding: 0;\n\t\t\tuser-select: none;\n\t\t}\n\n\t\t&--multiline {\n\t\t\tspan {\n\t\t\t\tline-height: 1.3em;\n\t\t\t\twhite-space: unset;\n\n\t\t\t\t@supports (-webkit-line-clamp: 2) {\n\t\t\t\t\tdisplay: -webkit-box;\n\t\t\t\t\t-webkit-line-clamp: 2;\n\t\t\t\t\t-webkit-box-orient: vertical;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&--large {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: var(--cell-width-large);\n\t\t}\n\n\t\t&--obfuscated {\n\t\t\tmin-width: 400px;\n\t\t\twidth: 400px;\n\t\t}\n\n\t\t// Fill remaining row space with cell\n\t\t&--fill {\n\t\t\tmin-width: var(--cell-width-large);\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t&--actions {\n\t\t\tposition: sticky;\n\t\t\tinset-inline-end: 0;\n\t\t\tz-index: var(--sticky-column-z-index);\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tmin-width: 110px;\n\t\t\twidth: 110px;\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tborder-inline-start: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t&__subtitle {\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n}\n"],sourceRoot:""}]);const o=r},79722:t=>{t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M5.6%207.4L7%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6m6%200L13%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6z%27/%3e%3c/svg%3e"},86886:t=>{t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M8.6%2016.6l4.6-4.6-4.6-4.6L10%206l6%206-6%206-1.4-1.4z%27/%3e%3c/svg%3e"},91544:(t,e,s)=>{s.d(e,{A:()=>o});var a=s(71354),i=s.n(a),n=s(76314),r=s.n(n)()(i());r.push([t.id,".empty[data-v-73fd953a] .icon-vue{width:64px;height:64px}.empty[data-v-73fd953a] .icon-vue svg{max-width:64px;max-height:64px}","",{version:3,sources:["webpack://./apps/settings/src/components/UserList.vue"],names:[],mappings:"AAKE,kCACC,UAAA,CACA,WAAA,CAEA,sCACC,cAAA,CACA,eAAA",sourcesContent:["\n@use './Users/shared/styles' as *;\n\n.empty {\n\t:deep {\n\t\t.icon-vue {\n\t\t\twidth: 64px;\n\t\t\theight: 64px;\n\n\t\t\tsvg {\n\t\t\t\tmax-width: 64px;\n\t\t\t\tmax-height: 64px;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},95668:(t,e,s)=>{s.d(e,{HK:()=>r,MY:()=>n,SA:()=>i});var a=s(53334);const i={id:"none",label:(0,a.Tl)("settings","Unlimited")},n={id:"default",label:(0,a.Tl)("settings","Default quota")},r=t=>{const e=Object.keys(t);return 1===e.length&&"id"===e.at(0)}}}]); +//# sourceMappingURL=settings-users-3239.js.map?v=a345379f155ee4f34e2a \ No newline at end of file diff --git a/dist/settings-users-3239.js.map b/dist/settings-users-3239.js.map index 555a742a806..3bfb4781041 100644 --- a/dist/settings-users-3239.js.map +++ b/dist/settings-users-3239.js.map @@ -1 +1 @@ -{"version":3,"file":"settings-users-3239.js?v=0b231fba2b1dc524137a","mappings":"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C7jC,GACsB,IGSpB,EACA,KACA,KACA,MAI8B,Q,unCCoGhB,KACK,KACJ,KACC,KACH,KACD,KACC,KACC,KACG,KACL,KACQ,KACX,KACG,KACO,KACH,KACD,KACO,KACG,KACN,KACA,KACD,KACI,KACD,KACE,KACF,KACF,KACC,KACR,KACM,KACH,KACK,KACZ,KACE,KACE,KACC,KACL,IACa,KACL,KACH,KACJ,KACM,KACE,KACI,KACX,KACM,WACM,KACd,KACM,KACI,KACL,KACC,IACA,KACA,KACF,KACD,KACK,KACJ,KACF,KACI,KACD,IACE,KACR,KACG,KACK,KACN,KACI,KACU,KACF,KACX,KACW,KACb,KACI,KACC,KACM,KACF,KACI,KACX,KACC,KACI,KACC,KACJ,KACI,KACR,KACPE,OAAOC,YAGD,KACE,KACA,MACRD,OAAOC,YA3FV,MC5GA,IACClO,MAAO,CACNyM,KAAM,CACLvM,KAAMC,OACNE,UAAU,GAEXkG,SAAU,CACTrG,KAAMC,OACNU,QAASA,KAAA,CAAS,IAEnBgF,aAAc,CACb3F,KAAMO,MACNI,QAASA,IAAM,IAEhBsG,UAAW,CACVjH,KAAMO,MACNJ,UAAU,GAEX8N,gBAAiB,CAChBjO,KAAMO,MACNI,QAASA,IAAM,KAGjBuN,KAAAA,CAAMpO,GACL,MAAM,kBAAEqO,IAAsBC,EAAAA,GAAAA,IAAmD,IAAjCtO,EAAMyM,KAAK8B,oBAA4B,CACtFC,cAAc,EACdC,OAAQ,CACPC,UAAW,QACXC,UAAW,WAGb,MAAO,CACNN,oBAEF,EACAtP,IAAAA,GACC,MAAO,CACN6P,eAAgB3K,KAAKwI,KAAKpN,OAAOC,KAAI5B,IAAM,CAAGA,KAAIG,KAAMH,MACxDmR,uBAAwB5K,KAAKwI,KAAKvE,SAAS5I,KAAI5B,IAAM,CAAGA,KAAIG,KAAMH,MAClEoR,WAAY7K,KAAKwI,KAAKpN,OAAOC,KAAI5B,IAAM,CAAGA,KAAIG,KAAMH,MACpDqR,mBAAoB9K,KAAKwI,KAAKvE,SAAS5I,KAAI5B,IAAM,CAAGA,KAAIG,KAAMH,MAEhE,EACAyD,SAAU,CAC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","sources":["webpack:///nextcloud/apps/settings/src/components/Users/UserSettingsDialog.vue?vue&type=style&index=0&id=29922c80&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/settings/src/views/UserManagement.vue?vue&type=style&index=0&id=4684ed00&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/Users/VirtualList.vue?vue&type=style&index=0&id=21942da5&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/Users/UserListFooter.vue?vue&type=style&index=0&id=20636959&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/Users/UserListHeader.vue?vue&type=style&index=0&id=5c0f8828&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/GroupListItem.vue?vue&type=style&index=0&id=0540d351&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/service/groups.ts","webpack:///nextcloud/apps/settings/src/views/UserManagementNavigation.vue?vue&type=style&index=0&id=539a4ad0&prod&scoped=true&lang=scss","webpack://nextcloud/./apps/settings/src/views/UserManagement.vue?4b28","webpack:///nextcloud/apps/settings/src/components/Users/VirtualList.vue","webpack:///nextcloud/apps/settings/src/components/Users/VirtualList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/settings/src/components/Users/VirtualList.vue?7ade","webpack://nextcloud/./apps/settings/src/components/Users/VirtualList.vue?1915","webpack://nextcloud/./apps/settings/src/components/Users/NewUserDialog.vue?dc2d","webpack:///nextcloud/apps/settings/src/components/Users/NewUserDialog.vue","webpack:///nextcloud/apps/settings/src/components/Users/NewUserDialog.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/Users/NewUserDialog.vue?dc3d","webpack://nextcloud/./apps/settings/src/components/Users/NewUserDialog.vue?64c6","webpack:///nextcloud/apps/settings/src/components/Users/UserListFooter.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/settings/src/components/Users/UserListFooter.vue","webpack://nextcloud/./apps/settings/src/components/Users/UserListFooter.vue?c0ec","webpack://nextcloud/./apps/settings/src/components/Users/UserListFooter.vue?b843","webpack:///nextcloud/apps/settings/src/components/Users/UserListHeader.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/settings/src/components/Users/UserListHeader.vue","webpack://nextcloud/./apps/settings/src/components/Users/UserListHeader.vue?e7ff","webpack://nextcloud/./apps/settings/src/components/Users/UserListHeader.vue?758a","webpack://nextcloud/./apps/settings/src/components/Users/UserRow.vue?5434","webpack:///nextcloud/apps/settings/src/components/Users/UserRowActions.vue","webpack:///nextcloud/apps/settings/src/components/Users/UserRowActions.vue?vue&type=script&lang=ts","webpack:///nextcloud/node_modules/is-svg/index.js","webpack://nextcloud/./apps/settings/src/components/Users/UserRowActions.vue?3c2a","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/index.mjs","webpack:///nextcloud/apps/settings/src/mixins/UserRowMixin.js","webpack:///nextcloud/apps/settings/src/components/Users/UserRow.vue","webpack:///nextcloud/apps/settings/src/components/Users/UserRow.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/Users/UserRow.vue?2b0f","webpack://nextcloud/./apps/settings/src/components/Users/UserRow.vue?eb6e","webpack:///nextcloud/apps/settings/src/components/UserList.vue","webpack:///nextcloud/apps/settings/src/components/UserList.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/UserList.vue?6d31","webpack://nextcloud/./apps/settings/src/components/UserList.vue?02a4","webpack://nextcloud/./apps/settings/src/components/UserList.vue?c96e","webpack:///nextcloud/apps/settings/src/views/UserManagement.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/settings/src/views/UserManagement.vue","webpack://nextcloud/./apps/settings/src/views/UserManagement.vue?4758","webpack://nextcloud/./apps/settings/src/views/UserManagement.vue?fd5a","webpack:///nextcloud/apps/settings/src/views/UserManagementNavigation.vue","webpack:///nextcloud/apps/settings/src/components/Users/UserSettingsDialog.vue","webpack:///nextcloud/apps/settings/src/components/Users/UserSettingsDialog.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/Users/UserSettingsDialog.vue?d90e","webpack://nextcloud/./apps/settings/src/components/Users/UserSettingsDialog.vue?f361","webpack://nextcloud/./apps/settings/src/components/Users/UserSettingsDialog.vue?824e","webpack:///nextcloud/apps/settings/src/components/AppNavigationGroupList.vue","webpack:///nextcloud/apps/settings/src/components/GroupListItem.vue","webpack:///nextcloud/apps/settings/src/components/GroupListItem.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/GroupListItem.vue?1540","webpack://nextcloud/./apps/settings/src/components/GroupListItem.vue?7b19","webpack://nextcloud/./apps/settings/src/components/GroupListItem.vue?9f48","webpack:///nextcloud/apps/settings/src/composables/useGroupsNavigation.ts","webpack:///nextcloud/apps/settings/src/components/AppNavigationGroupList.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/settings/src/components/AppNavigationGroupList.vue?c74f","webpack:///nextcloud/apps/settings/src/views/UserManagementNavigation.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/settings/src/views/UserManagementNavigation.vue?0ca3","webpack://nextcloud/./apps/settings/src/views/UserManagementNavigation.vue?28b6","webpack:///nextcloud/apps/settings/src/components/Users/UserRow.vue?vue&type=style&index=0&id=549fcd14&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/Users/NewUserDialog.vue?vue&type=style&index=0&id=4f7fcac6&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/UserList.vue?vue&type=style&index=0&id=73fd953a&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/utils/userUtils.ts"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.dialog__note[data-v-29922c80]{font-weight:normal}fieldset[data-v-29922c80]{font-weight:bold}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/UserSettingsDialog.vue\"],\"names\":[],\"mappings\":\"AAEC,+BACC,kBAAA,CAIF,0BACC,gBAAA\",\"sourcesContent\":[\"\\n.dialog {\\n\\t&__note {\\n\\t\\tfont-weight: normal;\\n\\t}\\n}\\n\\nfieldset {\\n\\tfont-weight: bold;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-content[data-v-4684ed00]{display:flex;overflow:hidden;flex-direction:column;max-height:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/views/UserManagement.vue\"],\"names\":[],\"mappings\":\"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA\",\"sourcesContent\":[\"\\n.app-content {\\n\\t// Virtual list needs to be full height and is scrollable\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\tflex-direction: column;\\n\\tmax-height: 100%;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.user-list[data-v-21942da5]{--avatar-cell-width: 48px;--cell-padding: 7px;--cell-width: 200px;--cell-width-large: 300px;--cell-min-width: calc(var(--cell-width) - (2 * var(--cell-padding)));--sticky-column-z-index: calc(var(--vs-dropdown-z-index) + 1);display:block;overflow:auto;height:100%;will-change:scroll-position}.user-list__header[data-v-21942da5],.user-list__footer[data-v-21942da5]{position:sticky;display:block}.user-list__header[data-v-21942da5]{top:0;z-index:calc(var(--sticky-column-z-index) + 1)}.user-list__footer[data-v-21942da5]{inset-inline-start:0}.user-list__body[data-v-21942da5]{display:flex;flex-direction:column;width:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/VirtualList.vue\"],\"names\":[],\"mappings\":\"AACA,4BACC,yBAAA,CACA,mBAAA,CACA,mBAAA,CACA,yBAAA,CACA,qEAAA,CACA,6DAAA,CAGA,aAAA,CACA,aAAA,CACA,WAAA,CACA,2BAAA,CAEA,wEAEC,eAAA,CAEA,aAAA,CAGD,oCACC,KAAA,CACA,8CAAA,CAGD,oCACC,oBAAA,CAGD,kCACC,YAAA,CACA,qBAAA,CACA,UAAA\",\"sourcesContent\":[\"\\n.user-list {\\n\\t--avatar-cell-width: 48px;\\n\\t--cell-padding: 7px;\\n\\t--cell-width: 200px;\\n\\t--cell-width-large: 300px;\\n\\t--cell-min-width: calc(var(--cell-width) - (2 * var(--cell-padding)));\\n\\t--sticky-column-z-index: calc(var(--vs-dropdown-z-index) + 1); // Keep the sticky column on top of the select dropdown\\n\\n\\t// Necessary for virtual scroll optimized rendering\\n\\tdisplay: block;\\n\\toverflow: auto;\\n\\theight: 100%;\\n\\twill-change: scroll-position;\\n\\n\\t&__header,\\n\\t&__footer {\\n\\t\\tposition: sticky;\\n\\t\\t// Fix sticky positioning in Firefox\\n\\t\\tdisplay: block;\\n\\t}\\n\\n\\t&__header {\\n\\t\\ttop: 0;\\n\\t\\tz-index: calc(var(--sticky-column-z-index) + 1);\\n\\t}\\n\\n\\t&__footer {\\n\\t\\tinset-inline-start: 0;\\n\\t}\\n\\n\\t&__body {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\twidth: 100%;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.footer[data-v-20636959]{position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.footer__cell[data-v-20636959]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.footer__cell strong[data-v-20636959],.footer__cell span[data-v-20636959],.footer__cell label[data-v-20636959]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.footer__cell--avatar[data-v-20636959],.footer__cell--displayname[data-v-20636959]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.footer__cell--avatar[data-v-20636959]{inset-inline-start:0}.footer__cell--displayname[data-v-20636959]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.footer__cell--username[data-v-20636959]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.footer__cell--avatar[data-v-20636959]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.footer__cell--multiline span[data-v-20636959]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.footer__cell--multiline span[data-v-20636959]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.footer__cell--large[data-v-20636959]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.footer__cell--obfuscated[data-v-20636959]{min-width:400px;width:400px}.footer__cell--fill[data-v-20636959]{min-width:var(--cell-width-large);width:100%}.footer__cell--actions[data-v-20636959]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.footer__subtitle[data-v-20636959]{color:var(--color-text-maxcontrast)}.footer__cell[data-v-20636959]{position:sticky;color:var(--color-text-maxcontrast)}.footer__cell--loading[data-v-20636959]{inset-inline-start:0;min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0}.footer__cell--count[data-v-20636959]{inset-inline-start:var(--avatar-cell-width);min-width:var(--cell-width);width:var(--cell-width)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/UserListFooter.vue\",\"webpack://./apps/settings/src/components/Users/shared/styles.scss\"],\"names\":[],\"mappings\":\"AAGA,yBCGC,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CAIA,+BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,+GAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,mFAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,uCACC,oBAAA,CAGD,4CACC,2CAAA,CACA,+CAAA,CAAA,CAIF,yCACC,yDAAA,CAGD,uCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,+CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,+CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,sCACC,iCAAA,CACA,6BAAA,CAGD,2CACC,eAAA,CACA,WAAA,CAID,qCACC,iCAAA,CACA,UAAA,CAGD,wCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,mCACC,mCAAA,CDpGD,+BACC,eAAA,CACA,mCAAA,CAEA,wCACC,oBAAA,CACA,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CAGD,sCACC,2CAAA,CACA,2BAAA,CACA,uBAAA\",\"sourcesContent\":[\"\\n@use './shared/styles';\\n\\n.footer {\\n\\t@include styles.row;\\n\\t@include styles.cell;\\n\\n\\t&__cell {\\n\\t\\tposition: sticky;\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\n\\t\\t&--loading {\\n\\t\\t\\tinset-inline-start: 0;\\n\\t\\t\\tmin-width: var(--avatar-cell-width);\\n\\t\\t\\twidth: var(--avatar-cell-width);\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\n\\t\\t&--count {\\n\\t\\t\\tinset-inline-start: var(--avatar-cell-width);\\n\\t\\t\\tmin-width: var(--cell-width);\\n\\t\\t\\twidth: var(--cell-width);\\n\\t\\t}\\n\\t}\\n}\\n\",\"/**\\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n\\n@mixin row {\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\tmin-width: 100%;\\n\\twidth: fit-content;\\n\\theight: var(--row-height);\\n\\tbackground-color: var(--color-main-background);\\n}\\n\\n@mixin cell {\\n\\t&__cell {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: center;\\n\\t\\tpadding: 0 var(--cell-padding);\\n\\t\\tmin-width: var(--cell-width);\\n\\t\\twidth: var(--cell-width);\\n\\t\\tcolor: var(--color-main-text);\\n\\n\\t\\tstrong,\\n\\t\\tspan,\\n\\t\\tlabel {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\toverflow-wrap: anywhere;\\n\\t\\t}\\n\\n\\t\\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\\n\\t\\t\\t&--avatar,\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tposition: sticky;\\n\\t\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--avatar {\\n\\t\\t\\t\\tinset-inline-start: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tinset-inline-start: var(--avatar-cell-width);\\n\\t\\t\\t\\tborder-inline-end: 1px solid var(--color-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--username {\\n\\t\\t\\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\\n\\t\\t}\\n\\n\\t\\t&--avatar {\\n\\t\\t\\tmin-width: var(--avatar-cell-width);\\n\\t\\t\\twidth: var(--avatar-cell-width);\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&--multiline {\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tline-height: 1.3em;\\n\\t\\t\\t\\twhite-space: unset;\\n\\n\\t\\t\\t\\t@supports (-webkit-line-clamp: 2) {\\n\\t\\t\\t\\t\\tdisplay: -webkit-box;\\n\\t\\t\\t\\t\\t-webkit-line-clamp: 2;\\n\\t\\t\\t\\t\\t-webkit-box-orient: vertical;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--large {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: var(--cell-width-large);\\n\\t\\t}\\n\\n\\t\\t&--obfuscated {\\n\\t\\t\\tmin-width: 400px;\\n\\t\\t\\twidth: 400px;\\n\\t\\t}\\n\\n\\t\\t// Fill remaining row space with cell\\n\\t\\t&--fill {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\n\\t\\t&--actions {\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tinset-inline-end: 0;\\n\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: row;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tmin-width: 110px;\\n\\t\\t\\twidth: 110px;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-inline-start: 1px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t&__subtitle {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.header[data-v-5c0f8828]{border-bottom:1px solid var(--color-border);position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.header__cell[data-v-5c0f8828]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.header__cell strong[data-v-5c0f8828],.header__cell span[data-v-5c0f8828],.header__cell label[data-v-5c0f8828]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.header__cell--avatar[data-v-5c0f8828],.header__cell--displayname[data-v-5c0f8828]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.header__cell--avatar[data-v-5c0f8828]{inset-inline-start:0}.header__cell--displayname[data-v-5c0f8828]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.header__cell--username[data-v-5c0f8828]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.header__cell--avatar[data-v-5c0f8828]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.header__cell--multiline span[data-v-5c0f8828]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.header__cell--multiline span[data-v-5c0f8828]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.header__cell--large[data-v-5c0f8828]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.header__cell--obfuscated[data-v-5c0f8828]{min-width:400px;width:400px}.header__cell--fill[data-v-5c0f8828]{min-width:var(--cell-width-large);width:100%}.header__cell--actions[data-v-5c0f8828]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.header__subtitle[data-v-5c0f8828]{color:var(--color-text-maxcontrast)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/UserListHeader.vue\",\"webpack://./apps/settings/src/components/Users/shared/styles.scss\"],\"names\":[],\"mappings\":\"AAGA,yBACC,2CAAA,CCEA,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CAIA,+BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,+GAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,mFAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,uCACC,oBAAA,CAGD,4CACC,2CAAA,CACA,+CAAA,CAAA,CAIF,yCACC,yDAAA,CAGD,uCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,+CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,+CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,sCACC,iCAAA,CACA,6BAAA,CAGD,2CACC,eAAA,CACA,WAAA,CAID,qCACC,iCAAA,CACA,UAAA,CAGD,wCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,mCACC,mCAAA\",\"sourcesContent\":[\"\\n@use './shared/styles';\\n\\n.header {\\n\\tborder-bottom: 1px solid var(--color-border);\\n\\n\\t@include styles.row;\\n\\t@include styles.cell;\\n}\\n\",\"/**\\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n\\n@mixin row {\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\tmin-width: 100%;\\n\\twidth: fit-content;\\n\\theight: var(--row-height);\\n\\tbackground-color: var(--color-main-background);\\n}\\n\\n@mixin cell {\\n\\t&__cell {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: center;\\n\\t\\tpadding: 0 var(--cell-padding);\\n\\t\\tmin-width: var(--cell-width);\\n\\t\\twidth: var(--cell-width);\\n\\t\\tcolor: var(--color-main-text);\\n\\n\\t\\tstrong,\\n\\t\\tspan,\\n\\t\\tlabel {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\toverflow-wrap: anywhere;\\n\\t\\t}\\n\\n\\t\\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\\n\\t\\t\\t&--avatar,\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tposition: sticky;\\n\\t\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--avatar {\\n\\t\\t\\t\\tinset-inline-start: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tinset-inline-start: var(--avatar-cell-width);\\n\\t\\t\\t\\tborder-inline-end: 1px solid var(--color-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--username {\\n\\t\\t\\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\\n\\t\\t}\\n\\n\\t\\t&--avatar {\\n\\t\\t\\tmin-width: var(--avatar-cell-width);\\n\\t\\t\\twidth: var(--avatar-cell-width);\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&--multiline {\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tline-height: 1.3em;\\n\\t\\t\\t\\twhite-space: unset;\\n\\n\\t\\t\\t\\t@supports (-webkit-line-clamp: 2) {\\n\\t\\t\\t\\t\\tdisplay: -webkit-box;\\n\\t\\t\\t\\t\\t-webkit-line-clamp: 2;\\n\\t\\t\\t\\t\\t-webkit-box-orient: vertical;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--large {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: var(--cell-width-large);\\n\\t\\t}\\n\\n\\t\\t&--obfuscated {\\n\\t\\t\\tmin-width: 400px;\\n\\t\\t\\twidth: 400px;\\n\\t\\t}\\n\\n\\t\\t// Fill remaining row space with cell\\n\\t\\t&--fill {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\n\\t\\t&--actions {\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tinset-inline-end: 0;\\n\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: row;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tmin-width: 110px;\\n\\t\\t\\twidth: 110px;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-inline-start: 1px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t&__subtitle {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.modal__header[data-v-0540d351]{margin:0}.modal__content[data-v-0540d351]{display:flex;flex-direction:column;align-items:center;padding:20px;gap:4px 0}.modal__button-row[data-v-0540d351]{display:flex;width:100%;justify-content:space-between}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/GroupListItem.vue\"],\"names\":[],\"mappings\":\"AAEC,gCACC,QAAA,CAGD,iCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,YAAA,CACA,SAAA,CAGD,oCACC,YAAA,CACA,UAAA,CACA,6BAAA\",\"sourcesContent\":[\"\\n.modal {\\n\\t&__header {\\n\\t\\tmargin: 0;\\n\\t}\\n\\n\\t&__content {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\tpadding: 20px;\\n\\t\\tgap: 4px 0;\\n\\t}\\n\\n\\t&__button-row {\\n\\t\\tdisplay: flex;\\n\\t\\twidth: 100%;\\n\\t\\tjustify-content: space-between;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","/**\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport axios from '@nextcloud/axios';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { CancelablePromise } from 'cancelable-promise';\nconst formatGroup = (group) => ({\n id: group.id,\n name: group.displayname,\n usercount: group.usercount,\n disabled: group.disabled,\n canAdd: group.canAdd,\n canRemove: group.canRemove,\n});\n/**\n * Search groups\n *\n * @param {object} options Options\n * @param {string} options.search Search query\n * @param {number} options.offset Offset\n * @param {number} options.limit Limit\n */\nexport const searchGroups = ({ search, offset, limit }) => {\n const controller = new AbortController();\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const { data } = await axios.get(generateOcsUrl('/cloud/groups/details?search={search}&offset={offset}&limit={limit}', { search, offset, limit }), {\n signal: controller.signal,\n });\n const groups = data.ocs?.data?.groups ?? [];\n const formattedGroups = groups.map(formatGroup);\n resolve(formattedGroups);\n }\n catch (error) {\n reject(error);\n }\n });\n};\n/**\n * Load user groups\n *\n * @param {object} options Options\n * @param {string} options.userId User id\n */\nexport const loadUserGroups = async ({ userId }) => {\n const url = generateOcsUrl('/cloud/users/{userId}/groups/details', { userId });\n const { data } = await axios.get(url);\n const groups = data.ocs?.data?.groups ?? [];\n const formattedGroups = groups.map(formatGroup);\n return formattedGroups;\n};\n/**\n * Load user subadmin groups\n *\n * @param {object} options Options\n * @param {string} options.userId User id\n */\nexport const loadUserSubAdminGroups = async ({ userId }) => {\n const url = generateOcsUrl('/cloud/users/{userId}/subadmins/details', { userId });\n const { data } = await axios.get(url);\n const groups = data.ocs?.data?.groups ?? [];\n const formattedGroups = groups.map(formatGroup);\n return formattedGroups;\n};\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.account-management__navigation[data-v-539a4ad0] .app-navigation__body{will-change:scroll-position}.account-management__system-list[data-v-539a4ad0]{height:auto !important;overflow:visible !important}.account-management__group-list[data-v-539a4ad0]{height:100% !important}.account-management__settings-toggle[data-v-539a4ad0]{margin-bottom:12px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/views/UserManagementNavigation.vue\"],\"names\":[],\"mappings\":\"AAGE,uEACC,2BAAA,CAGF,kDACC,sBAAA,CACA,2BAAA,CAGD,iDACC,sBAAA,CAGD,sDACC,kBAAA\",\"sourcesContent\":[\"\\n.account-management {\\n\\t&__navigation {\\n\\t\\t:deep(.app-navigation__body) {\\n\\t\\t\\twill-change: scroll-position;\\n\\t\\t}\\n\\t}\\n\\t&__system-list {\\n\\t\\theight: auto !important;\\n\\t\\toverflow: visible !important;\\n\\t}\\n\\n\\t&__group-list {\\n\\t\\theight: 100% !important;\\n\\t}\\n\\n\\t&__settings-toggle {\\n\\t\\tmargin-bottom: 12px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppContent',{attrs:{\"page-heading\":_vm.pageHeading}},[_c('UserList',{attrs:{\"selected-group\":_vm.selectedGroupDecoded,\"external-actions\":_vm.externalActions}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('table',{staticClass:\"user-list\"},[_vm._t(\"before\"),_vm._v(\" \"),_c('thead',{ref:\"thead\",staticClass:\"user-list__header\",attrs:{\"role\":\"rowgroup\"}},[_vm._t(\"header\")],2),_vm._v(\" \"),_c('tbody',{staticClass:\"user-list__body\",style:(_vm.tbodyStyle)},_vm._l((_vm.renderedItems),function(item,i){return _c(_vm.dataComponent,_vm._b({key:item[_vm.dataKey],tag:\"component\",attrs:{\"user\":item,\"visible\":(i >= _vm.bufferItems || _vm.index <= _vm.bufferItems) && (i < _vm.shownItems - _vm.bufferItems)}},'component',_vm.extraProps,false))}),1),_vm._v(\" \"),_c('tfoot',{directives:[{name:\"element-visibility\",rawName:\"v-element-visibility\",value:(_vm.handleFooterVisibility),expression:\"handleFooterVisibility\"}],ref:\"tfoot\",staticClass:\"user-list__footer\",attrs:{\"role\":\"rowgroup\"}},[_vm._t(\"footer\")],2)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=style&index=0&id=21942da5&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=style&index=0&id=21942da5&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VirtualList.vue?vue&type=template&id=21942da5&scoped=true\"\nimport script from \"./VirtualList.vue?vue&type=script&lang=ts\"\nexport * from \"./VirtualList.vue?vue&type=script&lang=ts\"\nimport style0 from \"./VirtualList.vue?vue&type=style&index=0&id=21942da5&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"21942da5\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcDialog',_vm._g({staticClass:\"dialog\",attrs:{\"size\":\"small\",\"name\":_vm.t('settings', 'New account'),\"out-transition\":\"\"},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('NcButton',{staticClass:\"dialog__submit\",attrs:{\"data-test\":\"submit\",\"form\":\"new-user-form\",\"type\":\"primary\",\"native-type\":\"submit\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Add new account'))+\"\\n\\t\\t\")])]},proxy:true}])},_vm.$listeners),[_c('form',{staticClass:\"dialog__form\",attrs:{\"id\":\"new-user-form\",\"data-test\":\"form\",\"disabled\":_vm.loading.all},on:{\"submit\":function($event){$event.preventDefault();return _vm.createUser.apply(null, arguments)}}},[_c('NcTextField',{ref:\"username\",staticClass:\"dialog__item\",attrs:{\"data-test\":\"username\",\"value\":_vm.newUser.id,\"disabled\":_vm.settings.newUserGenerateUserID,\"label\":_vm.usernameLabel,\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"spellcheck\":\"false\",\"pattern\":\"[a-zA-Z0-9 _\\\\.@\\\\-']+\",\"required\":\"\"},on:{\"update:value\":function($event){return _vm.$set(_vm.newUser, \"id\", $event)}}}),_vm._v(\" \"),_c('NcTextField',{staticClass:\"dialog__item\",attrs:{\"data-test\":\"displayName\",\"value\":_vm.newUser.displayName,\"label\":_vm.t('settings', 'Display name'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"spellcheck\":\"false\"},on:{\"update:value\":function($event){return _vm.$set(_vm.newUser, \"displayName\", $event)}}}),_vm._v(\" \"),(!_vm.settings.newUserRequireEmail)?_c('span',{staticClass:\"dialog__hint\",attrs:{\"id\":\"password-email-hint\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Either password or email is required'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcPasswordField',{ref:\"password\",staticClass:\"dialog__item\",attrs:{\"data-test\":\"password\",\"value\":_vm.newUser.password,\"minlength\":_vm.minPasswordLength,\"maxlength\":469,\"aria-describedby\":\"password-email-hint\",\"label\":_vm.newUser.mailAddress === '' ? _vm.t('settings', 'Password (required)') : _vm.t('settings', 'Password'),\"autocapitalize\":\"none\",\"autocomplete\":\"new-password\",\"spellcheck\":\"false\",\"required\":_vm.newUser.mailAddress === ''},on:{\"update:value\":function($event){return _vm.$set(_vm.newUser, \"password\", $event)}}}),_vm._v(\" \"),_c('NcTextField',{staticClass:\"dialog__item\",attrs:{\"data-test\":\"email\",\"type\":\"email\",\"value\":_vm.newUser.mailAddress,\"aria-describedby\":\"password-email-hint\",\"label\":_vm.newUser.password === '' || _vm.settings.newUserRequireEmail ? _vm.t('settings', 'Email (required)') : _vm.t('settings', 'Email'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"spellcheck\":\"false\",\"required\":_vm.newUser.password === '' || _vm.settings.newUserRequireEmail},on:{\"update:value\":function($event){return _vm.$set(_vm.newUser, \"mailAddress\", $event)}}}),_vm._v(\" \"),_c('div',{staticClass:\"dialog__item\"},[_c('NcSelect',{staticClass:\"dialog__select\",attrs:{\"data-test\":\"groups\",\"input-label\":!_vm.settings.isAdmin && !_vm.settings.isDelegatedAdmin ? _vm.t('settings', 'Member of the following groups (required)') : _vm.t('settings', 'Member of the following groups'),\"placeholder\":_vm.t('settings', 'Set account groups'),\"disabled\":_vm.loading.groups || _vm.loading.all,\"options\":_vm.availableGroups,\"value\":_vm.newUser.groups,\"label\":\"name\",\"close-on-select\":false,\"multiple\":true,\"taggable\":_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin,\"required\":!_vm.settings.isAdmin && !_vm.settings.isDelegatedAdmin,\"create-option\":(value) => ({ id: value, name: value, isCreating: true })},on:{\"search\":_vm.searchGroups,\"option:created\":_vm.createGroup,\"option:selected\":options => _vm.addGroup(options.at(-1))}})],1),_vm._v(\" \"),_c('div',{staticClass:\"dialog__item\"},[_c('NcSelect',{staticClass:\"dialog__select\",attrs:{\"input-label\":_vm.t('settings', 'Admin of the following groups'),\"placeholder\":_vm.t('settings', 'Set account as admin for …'),\"disabled\":_vm.loading.groups || _vm.loading.all,\"options\":_vm.availableGroups,\"close-on-select\":false,\"multiple\":true,\"label\":\"name\"},on:{\"search\":_vm.searchGroups},model:{value:(_vm.newUser.subAdminsGroups),callback:function ($$v) {_vm.$set(_vm.newUser, \"subAdminsGroups\", $$v)},expression:\"newUser.subAdminsGroups\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"dialog__item\"},[_c('NcSelect',{staticClass:\"dialog__select\",attrs:{\"input-label\":_vm.t('settings', 'Quota'),\"placeholder\":_vm.t('settings', 'Set account quota'),\"options\":_vm.quotaOptions,\"clearable\":false,\"taggable\":true,\"create-option\":_vm.validateQuota},model:{value:(_vm.newUser.quota),callback:function ($$v) {_vm.$set(_vm.newUser, \"quota\", $$v)},expression:\"newUser.quota\"}})],1),_vm._v(\" \"),(_vm.showConfig.showLanguages)?_c('div',{staticClass:\"dialog__item\"},[_c('NcSelect',{staticClass:\"dialog__select\",attrs:{\"input-label\":_vm.t('settings', 'Language'),\"placeholder\":_vm.t('settings', 'Set default language'),\"clearable\":false,\"selectable\":option => !option.languages,\"filter-by\":_vm.languageFilterBy,\"options\":_vm.languages,\"label\":\"name\"},model:{value:(_vm.newUser.language),callback:function ($$v) {_vm.$set(_vm.newUser, \"language\", $$v)},expression:\"newUser.language\"}})],1):_vm._e(),_vm._v(\" \"),_c('div',{class:['dialog__item dialog__managers', { 'icon-loading-small': _vm.loading.manager }]},[_c('NcSelect',{staticClass:\"dialog__select\",attrs:{\"input-label\":_vm.managerInputLabel,\"placeholder\":_vm.managerLabel,\"options\":_vm.possibleManagers,\"user-select\":true,\"label\":\"displayname\"},on:{\"search\":_vm.searchUserManager},model:{value:(_vm.newUser.manager),callback:function ($$v) {_vm.$set(_vm.newUser, \"manager\", $$v)},expression:\"newUser.manager\"}})],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewUserDialog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewUserDialog.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewUserDialog.vue?vue&type=style&index=0&id=4f7fcac6&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewUserDialog.vue?vue&type=style&index=0&id=4f7fcac6&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewUserDialog.vue?vue&type=template&id=4f7fcac6&scoped=true\"\nimport script from \"./NewUserDialog.vue?vue&type=script&lang=js\"\nexport * from \"./NewUserDialog.vue?vue&type=script&lang=js\"\nimport style0 from \"./NewUserDialog.vue?vue&type=style&index=0&id=4f7fcac6&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4f7fcac6\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListFooter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListFooter.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"footer\"},[_c('th',{attrs:{\"scope\":\"row\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Total rows summary')))])]),_vm._v(\" \"),_c('td',{staticClass:\"footer__cell footer__cell--loading\"},[(_vm.loading)?_c('NcLoadingIcon',{attrs:{\"title\":_vm.t('settings', 'Loading accounts …'),\"size\":32}}):_vm._e()],1),_vm._v(\" \"),_c('td',{staticClass:\"footer__cell footer__cell--count footer__cell--multiline\"},[_c('span',{attrs:{\"aria-describedby\":\"user-count-desc\"}},[_vm._v(_vm._s(_vm.userCount))]),_vm._v(\" \"),_c('span',{staticClass:\"hidden-visually\",attrs:{\"id\":\"user-count-desc\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Scroll to load more rows'))+\"\\n\\t\\t\")])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListFooter.vue?vue&type=style&index=0&id=20636959&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListFooter.vue?vue&type=style&index=0&id=20636959&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserListFooter.vue?vue&type=template&id=20636959&scoped=true\"\nimport script from \"./UserListFooter.vue?vue&type=script&lang=ts\"\nexport * from \"./UserListFooter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./UserListFooter.vue?vue&type=style&index=0&id=20636959&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"20636959\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListHeader.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"header\"},[_c('th',{staticClass:\"header__cell header__cell--avatar\",attrs:{\"data-cy-user-list-header-avatar\":\"\",\"scope\":\"col\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Avatar'))+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell header__cell--displayname\",attrs:{\"data-cy-user-list-header-displayname\":\"\",\"scope\":\"col\"}},[_c('strong',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Display name'))+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell header__cell--username\",attrs:{\"data-cy-user-list-header-username\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Account name'))+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell\",class:{ 'header__cell--obfuscated': _vm.hasObfuscated },attrs:{\"data-cy-user-list-header-password\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.passwordLabel))])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell\",attrs:{\"data-cy-user-list-header-email\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Email')))])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell header__cell--large\",attrs:{\"data-cy-user-list-header-groups\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Groups')))])]),_vm._v(\" \"),(_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin)?_c('th',{staticClass:\"header__cell header__cell--large\",attrs:{\"data-cy-user-list-header-subadmins\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Group admin for')))])]):_vm._e(),_vm._v(\" \"),_c('th',{staticClass:\"header__cell\",attrs:{\"data-cy-user-list-header-quota\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Quota')))])]),_vm._v(\" \"),(_vm.showConfig.showLanguages)?_c('th',{staticClass:\"header__cell header__cell--large\",attrs:{\"data-cy-user-list-header-languages\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Language')))])]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showUserBackend || _vm.showConfig.showStoragePath)?_c('th',{staticClass:\"header__cell header__cell--large\",attrs:{\"data-cy-user-list-header-storage-location\":\"\",\"scope\":\"col\"}},[(_vm.showConfig.showUserBackend)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Account backend'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showStoragePath)?_c('span',{staticClass:\"header__subtitle\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Storage location'))+\"\\n\\t\\t\")]):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showFirstLogin)?_c('th',{staticClass:\"header__cell\",attrs:{\"data-cy-user-list-header-first-login\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'First login')))])]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showLastLogin)?_c('th',{staticClass:\"header__cell\",attrs:{\"data-cy-user-list-header-last-login\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Last login')))])]):_vm._e(),_vm._v(\" \"),_c('th',{staticClass:\"header__cell header__cell--large header__cell--fill\",attrs:{\"data-cy-user-list-header-manager\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Manager')))])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell header__cell--actions\",attrs:{\"data-cy-user-list-header-actions\":\"\",\"scope\":\"col\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Account actions'))+\"\\n\\t\\t\")])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListHeader.vue?vue&type=style&index=0&id=5c0f8828&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListHeader.vue?vue&type=style&index=0&id=5c0f8828&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserListHeader.vue?vue&type=template&id=5c0f8828&scoped=true\"\nimport script from \"./UserListHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./UserListHeader.vue?vue&type=script&lang=ts\"\nimport style0 from \"./UserListHeader.vue?vue&type=style&index=0&id=5c0f8828&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5c0f8828\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('tr',{staticClass:\"user-list__row\",attrs:{\"data-cy-user-row\":_vm.user.id}},[_c('td',{staticClass:\"row__cell row__cell--avatar\",attrs:{\"data-cy-user-list-cell-avatar\":\"\"}},[(_vm.isLoadingUser)?_c('NcLoadingIcon',{attrs:{\"name\":_vm.t('settings', 'Loading account …'),\"size\":32}}):(_vm.visible)?_c('NcAvatar',{attrs:{\"disable-menu\":\"\",\"show-user-status\":false,\"user\":_vm.user.id}}):_vm._e()],1),_vm._v(\" \"),_c('td',{staticClass:\"row__cell row__cell--displayname\",attrs:{\"data-cy-user-list-cell-displayname\":\"\"}},[(_vm.editing && _vm.user.backendCapabilities.setDisplayName)?[_c('NcTextField',{ref:\"displayNameField\",staticClass:\"user-row-text-field\",class:{ 'icon-loading-small': _vm.loading.displayName },attrs:{\"data-cy-user-list-input-displayname\":\"\",\"data-loading\":_vm.loading.displayName || undefined,\"trailing-button-label\":_vm.t('settings', 'Submit'),\"show-trailing-button\":true,\"disabled\":_vm.loading.displayName || _vm.isLoadingField,\"label\":_vm.t('settings', 'Change display name'),\"trailing-button-icon\":\"arrowRight\",\"value\":_vm.editedDisplayName,\"autocapitalize\":\"off\",\"autocomplete\":\"off\",\"spellcheck\":\"false\"},on:{\"update:value\":function($event){_vm.editedDisplayName=$event},\"trailing-button-click\":_vm.updateDisplayName}})]:(!_vm.isObfuscated)?_c('strong',{attrs:{\"title\":_vm.user.displayname?.length > 20 ? _vm.user.displayname : null}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.user.displayname)+\"\\n\\t\\t\")]):_vm._e()],2),_vm._v(\" \"),_c('td',{staticClass:\"row__cell row__cell--username\",attrs:{\"data-cy-user-list-cell-username\":\"\"}},[_c('span',{staticClass:\"row__subtitle\"},[_vm._v(_vm._s(_vm.user.id))])]),_vm._v(\" \"),_c('td',{staticClass:\"row__cell\",class:{ 'row__cell--obfuscated': _vm.hasObfuscated },attrs:{\"data-cy-user-list-cell-password\":\"\"}},[(_vm.editing && _vm.settings.canChangePassword && _vm.user.backendCapabilities.setPassword)?[_c('NcTextField',{staticClass:\"user-row-text-field\",class:{'icon-loading-small': _vm.loading.password},attrs:{\"data-cy-user-list-input-password\":\"\",\"data-loading\":_vm.loading.password || undefined,\"trailing-button-label\":_vm.t('settings', 'Submit'),\"show-trailing-button\":true,\"disabled\":_vm.loading.password || _vm.isLoadingField,\"minlength\":_vm.minPasswordLength,\"maxlength\":\"469\",\"label\":_vm.t('settings', 'Set new password'),\"trailing-button-icon\":\"arrowRight\",\"value\":_vm.editedPassword,\"autocapitalize\":\"off\",\"autocomplete\":\"new-password\",\"required\":\"\",\"spellcheck\":\"false\",\"type\":\"password\"},on:{\"update:value\":function($event){_vm.editedPassword=$event},\"trailing-button-click\":_vm.updatePassword}})]:(_vm.isObfuscated)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'You do not have permissions to see the details of this account'))+\"\\n\\t\\t\")]):_vm._e()],2),_vm._v(\" \"),_c('td',{staticClass:\"row__cell\",attrs:{\"data-cy-user-list-cell-email\":\"\"}},[(_vm.editing)?[_c('NcTextField',{staticClass:\"user-row-text-field\",class:{'icon-loading-small': _vm.loading.mailAddress},attrs:{\"data-cy-user-list-input-email\":\"\",\"data-loading\":_vm.loading.mailAddress || undefined,\"show-trailing-button\":true,\"trailing-button-label\":_vm.t('settings', 'Submit'),\"label\":_vm.t('settings', 'Set new email address'),\"disabled\":_vm.loading.mailAddress || _vm.isLoadingField,\"trailing-button-icon\":\"arrowRight\",\"value\":_vm.editedMail,\"autocapitalize\":\"off\",\"autocomplete\":\"email\",\"spellcheck\":\"false\",\"type\":\"email\"},on:{\"update:value\":function($event){_vm.editedMail=$event},\"trailing-button-click\":_vm.updateEmail}})]:(!_vm.isObfuscated)?_c('span',{attrs:{\"title\":_vm.user.email?.length > 20 ? _vm.user.email : null}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.user.email)+\"\\n\\t\\t\")]):_vm._e()],2),_vm._v(\" \"),_c('td',{staticClass:\"row__cell row__cell--large row__cell--multiline\",attrs:{\"data-cy-user-list-cell-groups\":\"\"}},[(_vm.editing)?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'groups' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Add account to group'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{attrs:{\"data-cy-user-list-input-groups\":\"\",\"data-loading\":_vm.loading.groups || undefined,\"input-id\":'groups' + _vm.uniqueId,\"close-on-select\":false,\"disabled\":_vm.isLoadingField || _vm.loading.groupsDetails,\"loading\":_vm.loading.groups,\"multiple\":true,\"append-to-body\":false,\"options\":_vm.availableGroups,\"placeholder\":_vm.t('settings', 'Add account to group'),\"taggable\":_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin,\"value\":_vm.userGroups,\"label\":\"name\",\"no-wrap\":true,\"create-option\":(value) => ({ id: value, name: value, isCreating: true })},on:{\"search\":_vm.searchGroups,\"option:created\":_vm.createGroup,\"option:selected\":options => _vm.addUserGroup(options.at(-1)),\"option:deselected\":_vm.removeUserGroup}})]:(!_vm.isObfuscated)?_c('span',{attrs:{\"title\":_vm.userGroupsLabels?.length > 40 ? _vm.userGroupsLabels : null}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.userGroupsLabels)+\"\\n\\t\\t\")]):_vm._e()],2),_vm._v(\" \"),(_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin)?_c('td',{staticClass:\"row__cell row__cell--large row__cell--multiline\",attrs:{\"data-cy-user-list-cell-subadmins\":\"\"}},[(_vm.editing && (_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin))?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'subadmins' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Set account as admin for'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{attrs:{\"data-cy-user-list-input-subadmins\":\"\",\"data-loading\":_vm.loading.subadmins || undefined,\"input-id\":'subadmins' + _vm.uniqueId,\"close-on-select\":false,\"disabled\":_vm.isLoadingField || _vm.loading.subAdminGroupsDetails,\"loading\":_vm.loading.subadmins,\"label\":\"name\",\"append-to-body\":false,\"multiple\":true,\"no-wrap\":true,\"options\":_vm.availableSubAdminGroups,\"placeholder\":_vm.t('settings', 'Set account as admin for'),\"value\":_vm.userSubAdminGroups},on:{\"search\":_vm.searchGroups,\"option:deselected\":_vm.removeUserSubAdmin,\"option:selected\":options => _vm.addUserSubAdmin(options.at(-1))}})]:(!_vm.isObfuscated)?_c('span',{attrs:{\"title\":_vm.userSubAdminGroupsLabels?.length > 40 ? _vm.userSubAdminGroupsLabels : null}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.userSubAdminGroupsLabels)+\"\\n\\t\\t\")]):_vm._e()],2):_vm._e(),_vm._v(\" \"),_c('td',{staticClass:\"row__cell\",attrs:{\"data-cy-user-list-cell-quota\":\"\"}},[(_vm.editing)?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'quota' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Select account quota'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{attrs:{\"close-on-select\":true,\"create-option\":_vm.validateQuota,\"data-cy-user-list-input-quota\":\"\",\"data-loading\":_vm.loading.quota || undefined,\"disabled\":_vm.isLoadingField,\"loading\":_vm.loading.quota,\"append-to-body\":false,\"clearable\":false,\"input-id\":'quota' + _vm.uniqueId,\"options\":_vm.quotaOptions,\"placeholder\":_vm.t('settings', 'Select account quota'),\"taggable\":true},on:{\"option:selected\":_vm.setUserQuota},model:{value:(_vm.editedUserQuota),callback:function ($$v) {_vm.editedUserQuota=$$v},expression:\"editedUserQuota\"}})]:(!_vm.isObfuscated)?[_c('span',{attrs:{\"id\":'quota-progress' + _vm.uniqueId}},[_vm._v(_vm._s(_vm.userQuota)+\" (\"+_vm._s(_vm.usedSpace)+\")\")]),_vm._v(\" \"),_c('NcProgressBar',{staticClass:\"row__progress\",class:{\n\t\t\t\t\t'row__progress--warn': _vm.usedQuota > 80,\n\t\t\t\t},attrs:{\"aria-labelledby\":'quota-progress' + _vm.uniqueId,\"value\":_vm.usedQuota}})]:_vm._e()],2),_vm._v(\" \"),(_vm.showConfig.showLanguages)?_c('td',{staticClass:\"row__cell row__cell--large\",attrs:{\"data-cy-user-list-cell-language\":\"\"}},[(_vm.editing)?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'language' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Set the language'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{attrs:{\"id\":'language' + _vm.uniqueId,\"data-cy-user-list-input-language\":\"\",\"data-loading\":_vm.loading.languages || undefined,\"allow-empty\":false,\"disabled\":_vm.isLoadingField,\"loading\":_vm.loading.languages,\"clearable\":false,\"append-to-body\":false,\"options\":_vm.availableLanguages,\"placeholder\":_vm.t('settings', 'No language set'),\"value\":_vm.userLanguage,\"label\":\"name\"},on:{\"input\":_vm.setUserLanguage}})]:(!_vm.isObfuscated)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.userLanguage.name)+\"\\n\\t\\t\")]):_vm._e()],2):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showUserBackend || _vm.showConfig.showStoragePath)?_c('td',{staticClass:\"row__cell row__cell--large\",attrs:{\"data-cy-user-list-cell-storage-location\":\"\"}},[(!_vm.isObfuscated)?[(_vm.showConfig.showUserBackend)?_c('span',[_vm._v(_vm._s(_vm.user.backend))]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showStoragePath)?_c('span',{staticClass:\"row__subtitle\",attrs:{\"title\":_vm.user.storageLocation}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.user.storageLocation)+\"\\n\\t\\t\\t\")]):_vm._e()]:_vm._e()],2):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showFirstLogin)?_c('td',{staticClass:\"row__cell\",attrs:{\"data-cy-user-list-cell-first-login\":\"\"}},[(!_vm.isObfuscated)?_c('span',[_vm._v(_vm._s(_vm.userFirstLogin))]):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showLastLogin)?_c('td',{staticClass:\"row__cell\",attrs:{\"title\":_vm.userLastLoginTooltip,\"data-cy-user-list-cell-last-login\":\"\"}},[(!_vm.isObfuscated)?_c('span',[_vm._v(_vm._s(_vm.userLastLogin))]):_vm._e()]):_vm._e(),_vm._v(\" \"),_c('td',{staticClass:\"row__cell row__cell--large row__cell--fill\",attrs:{\"data-cy-user-list-cell-manager\":\"\"}},[(_vm.editing)?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'manager' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.managerLabel)+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{staticClass:\"select--fill\",attrs:{\"data-cy-user-list-input-manager\":\"\",\"data-loading\":_vm.loading.manager || undefined,\"input-id\":'manager' + _vm.uniqueId,\"disabled\":_vm.isLoadingField,\"loading\":_vm.loadingPossibleManagers || _vm.loading.manager,\"options\":_vm.possibleManagers,\"placeholder\":_vm.managerLabel,\"label\":\"displayname\",\"filterable\":false,\"internal-search\":false,\"clearable\":true},on:{\"open\":_vm.searchInitialUserManager,\"search\":_vm.searchUserManager,\"update:model-value\":_vm.updateUserManager},model:{value:(_vm.currentManager),callback:function ($$v) {_vm.currentManager=$$v},expression:\"currentManager\"}})]:(!_vm.isObfuscated)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.user.manager)+\"\\n\\t\\t\")]):_vm._e()],2),_vm._v(\" \"),_c('td',{staticClass:\"row__cell row__cell--actions\",attrs:{\"data-cy-user-list-cell-actions\":\"\"}},[(_vm.visible && !_vm.isObfuscated && _vm.canEdit && !_vm.loading.all)?_c('UserRowActions',{attrs:{\"actions\":_vm.userActions,\"disabled\":_vm.isLoadingField,\"edit\":_vm.editing,\"user\":_vm.user},on:{\"update:edit\":_vm.toggleEdit}}):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcActions',{attrs:{\"aria-label\":_vm.t('settings', 'Toggle account actions menu'),\"disabled\":_vm.disabled,\"inline\":1}},[_c('NcActionButton',{attrs:{\"data-cy-user-list-action-toggle-edit\":`${_vm.edit}`,\"disabled\":_vm.disabled},on:{\"click\":_vm.toggleEdit},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{key:_vm.editSvg,attrs:{\"svg\":_vm.editSvg,\"aria-hidden\":\"true\"}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.edit ? _vm.t('settings', 'Done') : _vm.t('settings', 'Edit'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_vm._l((_vm.enabledActions),function({ action, icon, text },index){return _c('NcActionButton',{key:index,attrs:{\"disabled\":_vm.disabled,\"aria-label\":text,\"icon\":icon,\"close-after-click\":\"\"},on:{\"click\":(event) => action(event, { ..._vm.user })},scopedSlots:_vm._u([(_vm.isSvg(icon))?{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"svg\":icon,\"aria-hidden\":\"true\"}})]},proxy:true}:null],null,true)},[_vm._v(\"\\n\\t\\t\"+_vm._s(text)+\"\\n\\t\\t\")])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRowActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRowActions.vue?vue&type=script&lang=ts\"","import {XMLParser, XMLValidator} from 'fast-xml-parser';\n\nexport default function isSvg(string) {\n\tif (typeof string !== 'string') {\n\t\tthrow new TypeError(`Expected a \\`string\\`, got \\`${typeof string}\\``);\n\t}\n\n\tstring = string.trim();\n\n\tif (string.length === 0) {\n\t\treturn false;\n\t}\n\n\t// Has to be `!==` as it can also return an object with error info.\n\tif (XMLValidator.validate(string) !== true) {\n\t\treturn false;\n\t}\n\n\tlet jsonObject;\n\tconst parser = new XMLParser();\n\n\ttry {\n\t\tjsonObject = parser.parse(string);\n\t} catch {\n\t\treturn false;\n\t}\n\n\tif (!jsonObject) {\n\t\treturn false;\n\t}\n\n\tif (!Object.keys(jsonObject).some(x => x.toLowerCase() === 'svg')) {\n\t\treturn false;\n\t}\n\n\treturn true;\n}\n","import { render, staticRenderFns } from \"./UserRowActions.vue?vue&type=template&id=7e1868f4\"\nimport script from \"./UserRowActions.vue?vue&type=script&lang=ts\"\nexport * from \"./UserRowActions.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { N as NcActionButton } from \"./chunks/NcActionButton-rjMoymt-.mjs\";\nimport { N as NcActionButtonGroup } from \"./chunks/NcActionButtonGroup-hhh3GBSS.mjs\";\nimport NcActionCaption from \"./Components/NcActionCaption.mjs\";\nimport { N as NcActionCheckbox } from \"./chunks/NcActionCheckbox-DSMKeccY.mjs\";\nimport { N as NcActionInput } from \"./chunks/NcActionInput-CQ_WEPqQ.mjs\";\nimport NcActionLink from \"./Components/NcActionLink.mjs\";\nimport { N as NcActionRadio } from \"./chunks/NcActionRadio-yAm71xxU.mjs\";\nimport NcActionRouter from \"./Components/NcActionRouter.mjs\";\nimport { N as NcActions } from \"./chunks/NcActions-BKZA1xVL.mjs\";\nimport NcActionSeparator from \"./Components/NcActionSeparator.mjs\";\nimport NcActionText from \"./Components/NcActionText.mjs\";\nimport { N as NcActionTextEditable } from \"./chunks/NcActionTextEditable-xWQGdOVl.mjs\";\nimport { N as NcAppContent } from \"./chunks/NcAppContent-BS7BiMG0.mjs\";\nimport NcAppContentDetails from \"./Components/NcAppContentDetails.mjs\";\nimport NcAppContentList from \"./Components/NcAppContentList.mjs\";\nimport { N as NcAppNavigation } from \"./chunks/NcAppNavigation-BvEa92PC.mjs\";\nimport { N as NcAppNavigationCaption } from \"./chunks/NcAppNavigationCaption-hDsiQMLr.mjs\";\nimport NcAppNavigationIconBullet from \"./Components/NcAppNavigationIconBullet.mjs\";\nimport { N as NcAppNavigationItem } from \"./chunks/NcAppNavigationItem-NIMhmJHh.mjs\";\nimport NcAppNavigationList from \"./Components/NcAppNavigationList.mjs\";\nimport NcAppNavigationNew from \"./Components/NcAppNavigationNew.mjs\";\nimport { N as NcAppNavigationNewItem } from \"./chunks/NcAppNavigationNewItem-D4fJeBl0.mjs\";\nimport { N as NcAppNavigationSearch } from \"./chunks/NcAppNavigationSearch-B9OkdsuE.mjs\";\nimport { N as NcAppNavigationSettings } from \"./chunks/NcAppNavigationSettings-BV34ogWP.mjs\";\nimport NcAppNavigationSpacer from \"./Components/NcAppNavigationSpacer.mjs\";\nimport { N as NcAppSettingsDialog } from \"./chunks/NcAppSettingsDialog-BwsIc_QT.mjs\";\nimport NcAppSettingsSection from \"./Components/NcAppSettingsSection.mjs\";\nimport { N as NcAppSidebar } from \"./chunks/NcAppSidebar-BJgPYOcZ.mjs\";\nimport { N as NcAppSidebarHeader } from \"./chunks/NcAppSidebarHeader-G2VD8Nfl.mjs\";\nimport NcAppSidebarTab from \"./Components/NcAppSidebarTab.mjs\";\nimport { N as NcAvatar } from \"./chunks/NcAvatar-CgF-MFtU.mjs\";\nimport { u } from \"./chunks/NcAvatar-CgF-MFtU.mjs\";\nimport { N as NcBlurHash } from \"./chunks/NcBlurHash-do2wxY-0.mjs\";\nimport { N as NcBreadcrumb } from \"./chunks/NcBreadcrumb-DJpYjXCe.mjs\";\nimport { N as NcBreadcrumbs } from \"./chunks/NcBreadcrumbs-B722pBOd.mjs\";\nimport NcButton from \"./Components/NcButton.mjs\";\nimport { N as NcCheckboxRadioSwitch } from \"./chunks/NcCheckboxRadioSwitch-ip_mRd2T.mjs\";\nimport { N as NcCollectionList } from \"./chunks/NcCollectionList-Khg3X3Zq.mjs\";\nimport { N as NcColorPicker } from \"./chunks/NcColorPicker-MXMbRaLk.mjs\";\nimport { N as NcContent } from \"./chunks/NcContent-BbmqoSY7.mjs\";\nimport { N as NcCounterBubble } from \"./chunks/NcCounterBubble-CDfRYl8B.mjs\";\nimport { N as NcDashboardWidget } from \"./chunks/NcDashboardWidget-D0cFVt4i.mjs\";\nimport { N as NcDashboardWidgetItem } from \"./chunks/NcDashboardWidgetItem-D33MR-DH.mjs\";\nimport { N as NcDateTime } from \"./chunks/NcDateTime-kanSdMgW.mjs\";\nimport NcDateTimePicker from \"./Components/NcDateTimePicker.mjs\";\nimport NcDateTimePickerNative from \"./Components/NcDateTimePickerNative.mjs\";\nimport { N as NcDialog } from \"./chunks/NcDialog-C1b3UtA7.mjs\";\nimport { N as NcDialogButton } from \"./chunks/NcDialogButton-Di9tU3e_.mjs\";\nimport NcEllipsisedOption from \"./Components/NcEllipsisedOption.mjs\";\nimport { N as NcEmojiPicker } from \"./chunks/NcEmojiPicker-DJHvkF--.mjs\";\nimport NcEmptyContent from \"./Components/NcEmptyContent.mjs\";\nimport NcGuestContent from \"./Components/NcGuestContent.mjs\";\nimport NcHeaderButton from \"./Components/NcHeaderButton.mjs\";\nimport { N as NcHeaderMenu } from \"./chunks/NcHeaderMenu-Dq_Avv2T.mjs\";\nimport { N as NcHighlight } from \"./chunks/index-Bz6q9mZw.mjs\";\nimport { N as NcIconSvgWrapper } from \"./chunks/NcIconSvgWrapper-Cb-cPj1R.mjs\";\nimport { N as NcInputField } from \"./chunks/NcInputField-BNSfmQqu.mjs\";\nimport { N as NcListItem } from \"./chunks/NcListItem-CnxZixD_.mjs\";\nimport { N as NcListItemIcon } from \"./chunks/NcListItemIcon-CTfYEjBB.mjs\";\nimport NcLoadingIcon from \"./Components/NcLoadingIcon.mjs\";\nimport NcModal from \"./Components/NcModal.mjs\";\nimport NcNoteCard from \"./Components/NcNoteCard.mjs\";\nimport { N as NcPasswordField } from \"./chunks/NcPasswordField-DSdrAkZy.mjs\";\nimport { N as NcPopover } from \"./chunks/NcPopover-CAJVK-MR.mjs\";\nimport { N as NcProgressBar } from \"./chunks/NcProgressBar-CI_nOrPg.mjs\";\nimport { N as NcRelatedResourcesPanel } from \"./chunks/NcRelatedResourcesPanel-DyvwxDjI.mjs\";\nimport { N as NcMentionBubble } from \"./chunks/index-B8gPNa8c.mjs\";\nimport { r } from \"./chunks/index-B8gPNa8c.mjs\";\nimport { N as NcAutoCompleteResult, a as NcRichContenteditable } from \"./chunks/NcRichContenteditable-cpptFUeI.mjs\";\nimport { N as NcRichText } from \"./chunks/NcRichText-CmuVmSzl.mjs\";\nimport { N, h, d, i, b, r as r2, c, a } from \"./chunks/index-56SXuvlv.mjs\";\nimport \"@vueuse/core\";\nimport \"vue\";\nimport \"vue-router\";\nimport { a as a2, g, b as b2, c as c2, d as d2, s } from \"./chunks/referencePickerModal-CtMUY45l.mjs\";\nimport \"unist-util-visit\";\nimport \"unist-builder\";\nimport \"@nextcloud/router\";\nimport \"@nextcloud/axios\";\nimport \"@nextcloud/sharing/public\";\nimport \"@nextcloud/auth\";\nimport { N as NcSelect } from \"./chunks/NcSelect-BUOuXJUQ.mjs\";\nimport { N as NcTextField } from \"./chunks/NcTextField-Do6wBDGH.mjs\";\nimport \"@nextcloud/event-bus\";\nimport { N as NcSavingIndicatorIcon } from \"./chunks/NcSavingIndicatorIcon-U7AIamCl.mjs\";\nimport { N as NcSelectTags } from \"./chunks/NcSelectTags-hP98xYkg.mjs\";\nimport { N as NcSelectUsers } from \"./chunks/NcSelectUsers-DaHVPRPE.mjs\";\nimport { N as NcSettingsInputText } from \"./chunks/NcSettingsInputText-BKoaCiQU.mjs\";\nimport { N as NcSettingsSection } from \"./chunks/NcSettingsSection-fe_YIg-L.mjs\";\nimport { N as NcSettingsSelectGroup } from \"./chunks/NcSettingsSelectGroup-SuQNKdqU.mjs\";\nimport { N as NcTextArea } from \"./chunks/NcTextArea-BFLuhsEv.mjs\";\nimport { N as NcThemeProvider } from \"./chunks/NcThemeProvider-25ResoIv.mjs\";\nimport { N as NcTimezonePicker } from \"./chunks/NcTimezonePicker-bIwFQlmV.mjs\";\nimport { N as NcUserBubble } from \"./chunks/NcUserBubble-BmPOx3MW.mjs\";\nimport { N as NcUserStatusIcon } from \"./chunks/NcUserStatusIcon-DQr5EGWZ.mjs\";\nimport NcVNodes from \"./Components/NcVNodes.mjs\";\nimport { useFormatDateTime, useFormatRelativeTime, useFormatTime } from \"./Composables/useFormatDateTime.mjs\";\nimport { useHotKey } from \"./Composables/useHotKey.mjs\";\nimport { useIsDarkTheme, useIsDarkThemeElement } from \"./Composables/useIsDarkTheme.mjs\";\nimport { isFullscreenState, useIsFullscreen } from \"./Composables/useIsFullscreen.mjs\";\nimport { MOBILE_BREAKPOINT, MOBILE_SMALL_BREAKPOINT, isMobileState, useIsMobile, useIsSmallMobile } from \"./Composables/useIsMobile.mjs\";\nimport { isA11yActivation } from \"./Functions/a11y.mjs\";\nimport { getEnabledContactsMenuActions, registerContactsMenuAction } from \"./Functions/contactsMenu.mjs\";\nimport { spawnDialog } from \"./Functions/dialog.mjs\";\nimport { E, a as a3, e, g as g2, s as s2 } from \"./chunks/emoji-BY_D0V5K.mjs\";\nimport { checkIfDarkTheme, isDarkTheme } from \"./Functions/isDarkTheme.mjs\";\nimport { preloadImage } from \"./Functions/preloadImage.mjs\";\nimport { usernameToColor } from \"./Functions/usernameToColor.mjs\";\nimport directive from \"./Directives/Focus.mjs\";\nimport { directive as directive$1 } from \"./Directives/Linkify.mjs\";\nimport \"./Directives/Tooltip.mjs\";\nimport { default as default2 } from \"./Mixins/clickOutsideOptions.mjs\";\nimport { default as default3 } from \"./Mixins/isFullscreen.mjs\";\nimport { default as default4 } from \"./Mixins/isMobile.mjs\";\nimport { VTooltip } from \"floating-vue\";\nimport { VTooltip as VTooltip2 } from \"floating-vue\";\nconst NcComponents = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n NcActionButton,\n NcActionButtonGroup,\n NcActionCaption,\n NcActionCheckbox,\n NcActionInput,\n NcActionLink,\n NcActionRadio,\n NcActionRouter,\n NcActionSeparator,\n NcActionText,\n NcActionTextEditable,\n NcActions,\n NcAppContent,\n NcAppContentDetails,\n NcAppContentList,\n NcAppNavigation,\n NcAppNavigationCaption,\n NcAppNavigationIconBullet,\n NcAppNavigationItem,\n NcAppNavigationList,\n NcAppNavigationNew,\n NcAppNavigationNewItem,\n NcAppNavigationSearch,\n NcAppNavigationSettings,\n NcAppNavigationSpacer,\n NcAppSettingsDialog,\n NcAppSettingsSection,\n NcAppSidebar,\n NcAppSidebarHeader,\n NcAppSidebarTab,\n NcAutoCompleteResult,\n NcAvatar,\n NcBlurHash,\n NcBreadcrumb,\n NcBreadcrumbs,\n NcButton,\n NcCheckboxRadioSwitch,\n NcCollectionList,\n NcColorPicker,\n NcContent,\n NcCounterBubble,\n NcDashboardWidget,\n NcDashboardWidgetItem,\n NcDateTime,\n NcDateTimePicker,\n NcDateTimePickerNative,\n NcDialog,\n NcDialogButton,\n NcEllipsisedOption,\n NcEmojiPicker,\n NcEmptyContent,\n NcGuestContent,\n NcHeaderButton,\n NcHeaderMenu,\n NcHighlight,\n NcIconSvgWrapper,\n NcInputField,\n NcListItem,\n NcListItemIcon,\n NcLoadingIcon,\n NcMentionBubble,\n NcModal,\n NcNoteCard,\n NcPasswordField,\n NcPopover,\n NcProgressBar,\n NcRelatedResourcesPanel,\n NcRichContenteditable,\n NcRichText,\n NcSavingIndicatorIcon,\n NcSelect,\n NcSelectTags,\n NcSelectUsers,\n NcSettingsInputText,\n NcSettingsSection,\n NcSettingsSelectGroup,\n NcTextArea,\n NcTextField,\n NcThemeProvider,\n NcTimezonePicker,\n NcUserBubble,\n NcUserStatusIcon,\n NcVNodes\n}, Symbol.toStringTag, { value: \"Module\" }));\nconst NcDirectives = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n Focus: directive,\n Linkify: directive$1,\n Tooltip: VTooltip\n}, Symbol.toStringTag, { value: \"Module\" }));\nconst NextcloudVuePlugin = {\n install(Vue) {\n Object.entries(NcComponents).forEach(([name, component]) => {\n Vue.component(component.name || name, component);\n });\n Object.entries(NcDirectives).forEach(([name, directive2]) => {\n Vue.directive(name, directive2);\n });\n }\n};\nexport {\n E as EmojiSkinTone,\n directive as Focus,\n directive$1 as Linkify,\n MOBILE_BREAKPOINT,\n MOBILE_SMALL_BREAKPOINT,\n NcActionButton,\n NcActionButtonGroup,\n NcActionCaption,\n NcActionCheckbox,\n NcActionInput,\n NcActionLink,\n NcActionRadio,\n NcActionRouter,\n NcActionSeparator,\n NcActionText,\n NcActionTextEditable,\n NcActions,\n NcAppContent,\n NcAppContentDetails,\n NcAppContentList,\n NcAppNavigation,\n NcAppNavigationCaption,\n NcAppNavigationIconBullet,\n NcAppNavigationItem,\n NcAppNavigationList,\n NcAppNavigationNew,\n NcAppNavigationNewItem,\n NcAppNavigationSearch,\n NcAppNavigationSettings,\n NcAppNavigationSpacer,\n NcAppSettingsDialog,\n NcAppSettingsSection,\n NcAppSidebar,\n NcAppSidebarHeader,\n NcAppSidebarTab,\n NcAutoCompleteResult,\n NcAvatar,\n NcBlurHash,\n NcBreadcrumb,\n NcBreadcrumbs,\n NcButton,\n NcCheckboxRadioSwitch,\n NcCollectionList,\n NcColorPicker,\n NcContent,\n NcCounterBubble,\n N as NcCustomPickerRenderResult,\n NcDashboardWidget,\n NcDashboardWidgetItem,\n NcDateTime,\n NcDateTimePicker,\n NcDateTimePickerNative,\n NcDialog,\n NcDialogButton,\n NcEllipsisedOption,\n NcEmojiPicker,\n NcEmptyContent,\n NcGuestContent,\n NcHeaderButton,\n NcHeaderMenu,\n NcHighlight,\n NcIconSvgWrapper,\n NcInputField,\n NcListItem,\n NcListItemIcon,\n NcLoadingIcon,\n NcMentionBubble,\n NcModal,\n NcNoteCard,\n NcPasswordField,\n NcPopover,\n NcProgressBar,\n NcRelatedResourcesPanel,\n NcRichContenteditable,\n NcRichText,\n NcSavingIndicatorIcon,\n NcSelect,\n NcSelectTags,\n NcSelectUsers,\n NcSettingsInputText,\n NcSettingsSection,\n NcSettingsSelectGroup,\n NcTextArea,\n NcTextField,\n NcThemeProvider,\n NcTimezonePicker,\n NcUserBubble,\n NcUserStatusIcon,\n NcVNodes,\n NextcloudVuePlugin,\n VTooltip2 as Tooltip,\n a2 as anyLinkProviderId,\n checkIfDarkTheme,\n default2 as clickOutsideOptions,\n a3 as emojiAddRecent,\n e as emojiSearch,\n g2 as getCurrentSkinTone,\n getEnabledContactsMenuActions,\n g as getLinkWithPicker,\n b2 as getProvider,\n c2 as getProviders,\n h as hasInteractiveView,\n isA11yActivation,\n d as isCustomPickerElementRegistered,\n isDarkTheme,\n default3 as isFullscreen,\n isFullscreenState,\n default4 as isMobile,\n isMobileState,\n i as isWidgetRegistered,\n preloadImage,\n registerContactsMenuAction,\n b as registerCustomPickerElement,\n r2 as registerWidget,\n c as renderCustomPickerElement,\n a as renderWidget,\n r as richEditor,\n d2 as searchProvider,\n s2 as setCurrentSkinTone,\n s as sortProviders,\n spawnDialog,\n useFormatDateTime,\n useFormatRelativeTime,\n useFormatTime,\n useHotKey,\n useIsDarkTheme,\n useIsDarkThemeElement,\n useIsFullscreen,\n useIsMobile,\n useIsSmallMobile,\n u as userStatus,\n usernameToColor\n};\n//# sourceMappingURL=index.mjs.map\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { formatFileSize } from '@nextcloud/files'\nimport { useFormatDateTime } from '@nextcloud/vue'\n\nexport default {\n\tprops: {\n\t\tuser: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tsettings: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => ({}),\n\t\t},\n\t\tquotaOptions: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\t\tlanguages: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\texternalActions: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\t},\n\tsetup(props) {\n\t\tconst { formattedFullTime } = useFormatDateTime(props.user.firstLoginTimestamp * 1000, {\n\t\t\trelativeTime: false,\n\t\t\tformat: {\n\t\t\t\ttimeStyle: 'short',\n\t\t\t\tdateStyle: 'short',\n\t\t\t},\n\t\t})\n\t\treturn {\n\t\t\tformattedFullTime,\n\t\t}\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tselectedGroups: this.user.groups.map(id => ({ id, name: id })),\n\t\t\tselectedSubAdminGroups: this.user.subadmin.map(id => ({ id, name: id })),\n\t\t\tuserGroups: this.user.groups.map(id => ({ id, name: id })),\n\t\t\tuserSubAdminGroups: this.user.subadmin.map(id => ({ id, name: id })),\n\t\t}\n\t},\n\tcomputed: {\n\t\tshowConfig() {\n\t\t\treturn this.$store.getters.getShowConfig\n\t\t},\n\n\t\t/* QUOTA MANAGEMENT */\n\t\tusedSpace() {\n\t\t\tconst quotaUsed = this.user.quota.used > 0 ? this.user.quota.used : 0\n\t\t\treturn t('settings', '{size} used', { size: formatFileSize(quotaUsed, true) })\n\t\t},\n\n\t\tusedQuota() {\n\t\t\tlet quota = this.user.quota.quota\n\t\t\tif (quota > 0) {\n\t\t\t\tquota = Math.min(100, Math.round(this.user.quota.used / quota * 100))\n\t\t\t} else {\n\t\t\t\tconst usedInGB = this.user.quota.used / (10 * Math.pow(2, 30))\n\t\t\t\t// asymptotic curve approaching 50% at 10GB to visualize used stace with infinite quota\n\t\t\t\tquota = 95 * (1 - (1 / (usedInGB + 1)))\n\t\t\t}\n\t\t\treturn isNaN(quota) ? 0 : quota\n\t\t},\n\n\t\t// Mapping saved values to objects\n\t\tuserQuota() {\n\t\t\tif (this.user.quota.quota >= 0) {\n\t\t\t\t// if value is valid, let's map the quotaOptions or return custom quota\n\t\t\t\tconst humanQuota = formatFileSize(this.user.quota.quota)\n\t\t\t\tconst userQuota = this.quotaOptions.find(quota => quota.id === humanQuota)\n\t\t\t\treturn userQuota || { id: humanQuota, label: humanQuota }\n\t\t\t} else if (this.user.quota.quota === 'default') {\n\t\t\t\t// default quota is replaced by the proper value on load\n\t\t\t\treturn this.quotaOptions[0]\n\t\t\t}\n\t\t\treturn this.quotaOptions[1] // unlimited\n\t\t},\n\n\t\t/* PASSWORD POLICY? */\n\t\tminPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength\n\t\t},\n\n\t\t/* LANGUAGE */\n\t\tuserLanguage() {\n\t\t\tconst availableLanguages = this.languages[0].languages.concat(this.languages[1].languages)\n\t\t\tconst userLang = availableLanguages.find(lang => lang.code === this.user.language)\n\t\t\tif (typeof userLang !== 'object' && this.user.language !== '') {\n\t\t\t\treturn {\n\t\t\t\t\tcode: this.user.language,\n\t\t\t\t\tname: this.user.language,\n\t\t\t\t}\n\t\t\t} else if (this.user.language === '') {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\treturn userLang\n\t\t},\n\n\t\tuserFirstLogin() {\n\t\t\tif (this.user.firstLoginTimestamp > 0) {\n\t\t\t\treturn this.formattedFullTime\n\t\t\t}\n\t\t\tif (this.user.firstLoginTimestamp < 0) {\n\t\t\t\treturn t('settings', 'Unknown')\n\t\t\t}\n\t\t\treturn t('settings', 'Never')\n\t\t},\n\n\t\t/* LAST LOGIN */\n\t\tuserLastLoginTooltip() {\n\t\t\tif (this.user.lastLoginTimestamp > 0) {\n\t\t\t\treturn OC.Util.formatDate(this.user.lastLoginTimestamp * 1000)\n\t\t\t}\n\t\t\treturn ''\n\t\t},\n\t\tuserLastLogin() {\n\t\t\tif (this.user.lastLoginTimestamp > 0) {\n\t\t\t\treturn OC.Util.relativeModifiedDate(this.user.lastLoginTimestamp * 1000)\n\t\t\t}\n\t\t\treturn t('settings', 'Never')\n\t\t},\n\t},\n}\n","\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRow.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRow.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRow.vue?vue&type=style&index=0&id=549fcd14&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRow.vue?vue&type=style&index=0&id=549fcd14&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserRow.vue?vue&type=template&id=549fcd14&scoped=true\"\nimport script from \"./UserRow.vue?vue&type=script&lang=js\"\nexport * from \"./UserRow.vue?vue&type=script&lang=js\"\nimport style0 from \"./UserRow.vue?vue&type=style&index=0&id=549fcd14&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"549fcd14\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=style&index=0&id=73fd953a&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=style&index=0&id=73fd953a&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserList.vue?vue&type=template&id=73fd953a&scoped=true\"\nimport script from \"./UserList.vue?vue&type=script&lang=js\"\nexport * from \"./UserList.vue?vue&type=script&lang=js\"\nimport style0 from \"./UserList.vue?vue&type=style&index=0&id=73fd953a&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"73fd953a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('Fragment',[(_vm.showConfig.showNewUserForm)?_c('NewUserDialog',{attrs:{\"loading\":_vm.loading,\"new-user\":_vm.newUser,\"quota-options\":_vm.quotaOptions},on:{\"reset\":_vm.resetForm,\"closing\":_vm.closeDialog}}):_vm._e(),_vm._v(\" \"),(_vm.filteredUsers.length === 0)?_c('NcEmptyContent',{staticClass:\"empty\",attrs:{\"name\":_vm.isInitialLoad && _vm.loading.users ? null : _vm.t('settings', 'No accounts')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.isInitialLoad && _vm.loading.users)?_c('NcLoadingIcon',{attrs:{\"name\":_vm.t('settings', 'Loading accounts …'),\"size\":64}}):_c('NcIconSvgWrapper',{attrs:{\"path\":_vm.mdiAccountGroup,\"size\":64}})]},proxy:true}],null,false,226056511)}):_c('VirtualList',{style:(_vm.style),attrs:{\"data-component\":_vm.UserRow,\"data-sources\":_vm.filteredUsers,\"data-key\":\"id\",\"data-cy-user-list\":\"\",\"item-height\":_vm.rowHeight,\"extra-props\":{\n\t\t\tusers: _vm.users,\n\t\t\tsettings: _vm.settings,\n\t\t\thasObfuscated: _vm.hasObfuscated,\n\t\t\tquotaOptions: _vm.quotaOptions,\n\t\t\tlanguages: _vm.languages,\n\t\t\texternalActions: _vm.externalActions,\n\t\t}},on:{\"scroll-end\":_vm.handleScrollEnd},scopedSlots:_vm._u([{key:\"before\",fn:function(){return [_c('caption',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'List of accounts. This list is not fully rendered for performance reasons. The accounts will be rendered as you navigate through the list.'))+\"\\n\\t\\t\\t\")])]},proxy:true},{key:\"header\",fn:function(){return [_c('UserListHeader',{attrs:{\"has-obfuscated\":_vm.hasObfuscated}})]},proxy:true},{key:\"footer\",fn:function(){return [_c('UserListFooter',{attrs:{\"loading\":_vm.loading.users,\"filtered-users\":_vm.filteredUsers}})]},proxy:true}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagement.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagement.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagement.vue?vue&type=style&index=0&id=4684ed00&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagement.vue?vue&type=style&index=0&id=4684ed00&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserManagement.vue?vue&type=template&id=4684ed00&scoped=true\"\nimport script from \"./UserManagement.vue?vue&type=script&lang=js\"\nexport * from \"./UserManagement.vue?vue&type=script&lang=js\"\nimport style0 from \"./UserManagement.vue?vue&type=style&index=0&id=4684ed00&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4684ed00\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcAppNavigation,{staticClass:\"account-management__navigation\",attrs:{\"aria-label\":_setup.t('settings', 'Account management')},scopedSlots:_vm._u([{key:\"footer\",fn:function(){return [_c(_setup.NcButton,{staticClass:\"account-management__settings-toggle\",attrs:{\"type\":\"tertiary\"},on:{\"click\":function($event){_setup.isDialogOpen = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiCog}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.t('settings', 'Account management settings'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c(_setup.UserSettingsDialog,{attrs:{\"open\":_setup.isDialogOpen},on:{\"update:open\":function($event){_setup.isDialogOpen=$event}}})]},proxy:true}])},[_c(_setup.NcAppNavigationNew,{attrs:{\"button-id\":\"new-user-button\",\"text\":_setup.t('settings','New account')},on:{\"click\":_setup.showNewUserMenu,\"keyup\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _setup.showNewUserMenu.apply(null, arguments)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"space\",32,$event.key,[\" \",\"Spacebar\"]))return null;return _setup.showNewUserMenu.apply(null, arguments)}]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiPlus}})]},proxy:true}])}),_vm._v(\" \"),_c(_setup.NcAppNavigationList,{staticClass:\"account-management__system-list\",attrs:{\"data-cy-users-settings-navigation-groups\":\"system\"}},[_c(_setup.NcAppNavigationItem,{attrs:{\"id\":\"everyone\",\"exact\":true,\"name\":_setup.t('settings', 'All accounts'),\"to\":{ name: 'users' }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiAccount}})]},proxy:true},{key:\"counter\",fn:function(){return [(_setup.userCount)?_c(_setup.NcCounterBubble,{attrs:{\"type\":!_setup.selectedGroupDecoded ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_setup.userCount)+\"\\n\\t\\t\\t\\t\")]):_vm._e()]},proxy:true}])}),_vm._v(\" \"),(_setup.settings.isAdmin)?_c(_setup.NcAppNavigationItem,{attrs:{\"id\":\"admin\",\"exact\":true,\"name\":_setup.t('settings', 'Admins'),\"to\":{ name: 'group', params: { selectedGroup: 'admin' } }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiShieldAccount}})]},proxy:true},{key:\"counter\",fn:function(){return [(_setup.adminGroup && _setup.adminGroup.count > 0)?_c(_setup.NcCounterBubble,{attrs:{\"type\":_setup.selectedGroupDecoded === 'admin' ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_setup.adminGroup.count)+\"\\n\\t\\t\\t\\t\")]):_vm._e()]},proxy:true}],null,false,2218088905)}):_vm._e(),_vm._v(\" \"),(_setup.isAdminOrDelegatedAdmin)?_c(_setup.NcAppNavigationItem,{attrs:{\"id\":\"recent\",\"exact\":true,\"name\":_setup.t('settings', 'Recently active'),\"to\":{ name: 'group', params: { selectedGroup: '__nc_internal_recent' } }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiHistory}})]},proxy:true},{key:\"counter\",fn:function(){return [(_setup.recentGroup?.usercount)?_c(_setup.NcCounterBubble,{attrs:{\"type\":_setup.selectedGroupDecoded === '__nc_internal_recent' ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_setup.recentGroup.usercount)+\"\\n\\t\\t\\t\\t\")]):_vm._e()]},proxy:true}],null,false,2299424282)}):_vm._e(),_vm._v(\" \"),(_setup.disabledGroup && (_setup.disabledGroup.usercount > 0 || _setup.disabledGroup.usercount === -1))?_c(_setup.NcAppNavigationItem,{attrs:{\"id\":\"disabled\",\"exact\":true,\"name\":_setup.t('settings', 'Disabled accounts'),\"to\":{ name: 'group', params: { selectedGroup: 'disabled' } }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiAccountOff}})]},proxy:true},(_setup.disabledGroup.usercount > 0)?{key:\"counter\",fn:function(){return [_c(_setup.NcCounterBubble,{attrs:{\"type\":_setup.selectedGroupDecoded === 'disabled' ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_setup.disabledGroup.usercount)+\"\\n\\t\\t\\t\\t\")])]},proxy:true}:null],null,true)}):_vm._e()],1),_vm._v(\" \"),_c(_setup.AppNavigationGroupList)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserSettingsDialog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserSettingsDialog.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserSettingsDialog.vue?vue&type=style&index=0&id=29922c80&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserSettingsDialog.vue?vue&type=style&index=0&id=29922c80&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserSettingsDialog.vue?vue&type=template&id=29922c80&scoped=true\"\nimport script from \"./UserSettingsDialog.vue?vue&type=script&lang=js\"\nexport * from \"./UserSettingsDialog.vue?vue&type=script&lang=js\"\nimport style0 from \"./UserSettingsDialog.vue?vue&type=style&index=0&id=29922c80&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"29922c80\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcAppSettingsDialog',{attrs:{\"open\":_vm.isModalOpen,\"show-navigation\":true,\"name\":_vm.t('settings', 'Account management settings')},on:{\"update:open\":function($event){_vm.isModalOpen=$event}}},[_c('NcAppSettingsSection',{attrs:{\"id\":\"visibility-settings\",\"name\":_vm.t('settings', 'Visibility')}},[_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"showLanguages\",\"checked\":_vm.showLanguages},on:{\"update:checked\":function($event){_vm.showLanguages=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Show language'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"showUserBackend\",\"checked\":_vm.showUserBackend},on:{\"update:checked\":function($event){_vm.showUserBackend=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Show account backend'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"showStoragePath\",\"checked\":_vm.showStoragePath},on:{\"update:checked\":function($event){_vm.showStoragePath=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Show storage path'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"showFirstLogin\",\"checked\":_vm.showFirstLogin},on:{\"update:checked\":function($event){_vm.showFirstLogin=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Show first login'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"showLastLogin\",\"checked\":_vm.showLastLogin},on:{\"update:checked\":function($event){_vm.showLastLogin=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Show last login'))+\"\\n\\t\\t\")])],1),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"groups-sorting\",\"name\":_vm.t('settings', 'Sorting')}},[(_vm.isGroupSortingEnforced)?_c('NcNoteCard',{attrs:{\"type\":\"warning\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'The system config enforces sorting the groups by name. This also disables showing the member count.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('fieldset',[_c('legend',[_vm._v(_vm._s(_vm.t('settings', 'Group list sorting')))]),_vm._v(\" \"),_c('NcNoteCard',{staticClass:\"dialog__note\",attrs:{\"type\":\"info\",\"text\":_vm.t('settings', 'Sorting only applies to the currently loaded groups for performance reasons. Groups will be loaded as you navigate or search through the list.')}}),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"radio\",\"checked\":_vm.groupSorting,\"data-test\":\"sortGroupsByMemberCount\",\"disabled\":_vm.isGroupSortingEnforced,\"name\":\"group-sorting-mode\",\"value\":\"member-count\"},on:{\"update:checked\":function($event){_vm.groupSorting=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'By member count'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"radio\",\"checked\":_vm.groupSorting,\"data-test\":\"sortGroupsByName\",\"disabled\":_vm.isGroupSortingEnforced,\"name\":\"group-sorting-mode\",\"value\":\"name\"},on:{\"update:checked\":function($event){_vm.groupSorting=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'By name'))+\"\\n\\t\\t\\t\")])],1)],1),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"email-settings\",\"name\":_vm.t('settings', 'Send email')}},[_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"sendWelcomeMail\",\"checked\":_vm.sendWelcomeMail,\"disabled\":_vm.loadingSendMail},on:{\"update:checked\":function($event){_vm.sendWelcomeMail=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Send welcome email to new accounts'))+\"\\n\\t\\t\")])],1),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"default-settings\",\"name\":_vm.t('settings', 'Defaults')}},[_c('NcSelect',{attrs:{\"clearable\":false,\"create-option\":_vm.validateQuota,\"filter-by\":_vm.filterQuotas,\"input-label\":_vm.t('settings', 'Default quota'),\"options\":_vm.quotaOptions,\"placement\":\"top\",\"placeholder\":_vm.t('settings', 'Select default quota'),\"taggable\":\"\"},on:{\"option:selected\":_vm.setDefaultQuota},model:{value:(_vm.defaultQuota),callback:function ($$v) {_vm.defaultQuota=$$v},expression:\"defaultQuota\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.Fragment,[_c(_setup.NcAppNavigationCaption,{attrs:{\"name\":_setup.t('settings', 'Groups'),\"disabled\":_setup.loadingAddGroup,\"aria-label\":_setup.loadingAddGroup ? _setup.t('settings', 'Creating group…') : _setup.t('settings', 'Create group'),\"force-menu\":\"\",\"is-heading\":\"\",\"open\":_setup.isAddGroupOpen},on:{\"update:open\":function($event){_setup.isAddGroupOpen=$event}},scopedSlots:_vm._u([(_setup.isAdminOrDelegatedAdmin)?{key:\"actionsTriggerIcon\",fn:function(){return [(_setup.loadingAddGroup)?_c(_setup.NcLoadingIcon):_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiPlus}})]},proxy:true}:null,(_setup.isAdminOrDelegatedAdmin)?{key:\"actions\",fn:function(){return [_c(_setup.NcActionText,{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiAccountGroup}})]},proxy:true}],null,false,3607647275)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_setup.t('settings', 'Create group'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c(_setup.NcActionInput,{attrs:{\"label\":_setup.t('settings', 'Group name'),\"data-cy-users-settings-new-group-name\":\"\",\"label-outside\":false,\"disabled\":_setup.loadingAddGroup,\"value\":_setup.newGroupName,\"error\":_setup.hasAddGroupError,\"helper-text\":_setup.hasAddGroupError ? _setup.t('settings', 'Please enter a valid group name') : ''},on:{\"update:value\":function($event){_setup.newGroupName=$event},\"submit\":_setup.createGroup}})]},proxy:true}:null],null,true)}),_vm._v(\" \"),_c(_setup.NcAppNavigationSearch,{attrs:{\"label\":_setup.t('settings', 'Search groups…')},model:{value:(_setup.groupsSearchQuery),callback:function ($$v) {_setup.groupsSearchQuery=$$v},expression:\"groupsSearchQuery\"}}),_vm._v(\" \"),_c('p',{staticClass:\"hidden-visually\",attrs:{\"id\":\"group-list-desc\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_setup.t('settings', 'List of groups. This list is not fully populated for performance reasons. The groups will be loaded as you navigate or search through the list.'))+\"\\n\\t\")]),_vm._v(\" \"),_c(_setup.NcAppNavigationList,{staticClass:\"account-management__group-list\",attrs:{\"aria-describedby\":\"group-list-desc\",\"data-cy-users-settings-navigation-groups\":\"custom\"}},[_vm._l((_setup.filteredGroups),function(group){return _c(_setup.GroupListItem,{key:group.id,ref:\"groupListItems\",refInFor:true,attrs:{\"id\":group.id,\"active\":_setup.selectedGroupDecoded === group.id,\"name\":group.title,\"count\":group.count}})}),_vm._v(\" \"),(_setup.loadingGroups)?_c('div',{attrs:{\"role\":\"note\"}},[_c(_setup.NcLoadingIcon,{attrs:{\"name\":_setup.t('settings', 'Loading groups…')}})],1):_vm._e()],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupListItem.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupListItem.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupListItem.vue?vue&type=style&index=0&id=0540d351&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupListItem.vue?vue&type=style&index=0&id=0540d351&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./GroupListItem.vue?vue&type=template&id=0540d351&scoped=true\"\nimport script from \"./GroupListItem.vue?vue&type=script&lang=js\"\nexport * from \"./GroupListItem.vue?vue&type=script&lang=js\"\nimport style0 from \"./GroupListItem.vue?vue&type=style&index=0&id=0540d351&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0540d351\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('Fragment',[(_vm.showRemoveGroupModal)?_c('NcModal',{on:{\"close\":function($event){_vm.showRemoveGroupModal = false}}},[_c('div',{staticClass:\"modal__content\"},[_c('h2',{staticClass:\"modal__header\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Please confirm the group removal'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcNoteCard',{attrs:{\"type\":\"warning\",\"show-alert\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'You are about to delete the group \"{group}\". The accounts will NOT be deleted.', { group: _vm.name }))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"modal__button-row\"},[_c('NcButton',{attrs:{\"type\":\"secondary\"},on:{\"click\":function($event){_vm.showRemoveGroupModal = false}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Cancel'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcButton',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.removeGroup}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Confirm'))+\"\\n\\t\\t\\t\\t\")])],1)],1)]):_vm._e(),_vm._v(\" \"),_c('NcAppNavigationItem',{key:_vm.id,ref:\"listItem\",attrs:{\"exact\":true,\"name\":_vm.name,\"to\":{ name: 'group', params: { selectedGroup: encodeURIComponent(_vm.id) } },\"loading\":_vm.loadingRenameGroup,\"menu-open\":_vm.openGroupMenu},on:{\"update:menuOpen\":_vm.handleGroupMenuOpen},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountGroup',{attrs:{\"size\":20}})]},proxy:true},{key:\"counter\",fn:function(){return [(_vm.count)?_c('NcCounterBubble',{attrs:{\"type\":_vm.active ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.count)+\"\\n\\t\\t\\t\")]):_vm._e()]},proxy:true},{key:\"actions\",fn:function(){return [(_vm.id !== 'admin' && _vm.id !== 'disabled' && (_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin))?_c('NcActionInput',{ref:\"displayNameInput\",attrs:{\"trailing-button-label\":_vm.t('settings', 'Submit'),\"type\":\"text\",\"value\":_vm.name,\"label\":_vm.t('settings', 'Rename group')},on:{\"submit\":function($event){return _vm.renameGroup(_vm.id)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Pencil',{attrs:{\"size\":20}})]},proxy:true}],null,false,580569589)}):_vm._e(),_vm._v(\" \"),(_vm.id !== 'admin' && _vm.id !== 'disabled' && (_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin))?_c('NcActionButton',{on:{\"click\":function($event){_vm.showRemoveGroupModal = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Delete',{attrs:{\"size\":20}})]},proxy:true}],null,false,2705356561)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Delete group'))+\"\\n\\t\\t\\t\")]):_vm._e()]},proxy:true}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { computed } from 'vue';\n/**\n * Format a group to a menu entry\n *\n * @param group the group\n */\nfunction formatGroupMenu(group) {\n if (typeof group === 'undefined') {\n return null;\n }\n return {\n id: group.id,\n title: group.name,\n usercount: group.usercount ?? 0,\n count: Math.max(0, (group.usercount ?? 0) - (group.disabled ?? 0)),\n };\n}\nexport const useFormatGroups = (groups) => {\n /**\n * All non-disabled non-admin groups\n */\n const userGroups = computed(() => {\n const formatted = groups.value\n // filter out disabled and admin\n .filter(group => group.id !== 'disabled' && group.id !== '__nc_internal_recent' && group.id !== 'admin')\n // format group\n .map(group => formatGroupMenu(group))\n // remove invalid\n .filter(group => group !== null);\n return formatted;\n });\n /**\n * The admin group if found otherwise null\n */\n const adminGroup = computed(() => formatGroupMenu(groups.value.find(group => group.id === 'admin')));\n /**\n * The group of disabled users\n */\n const disabledGroup = computed(() => formatGroupMenu(groups.value.find(group => group.id === 'disabled')));\n /**\n * The group of recent users\n */\n const recentGroup = computed(() => formatGroupMenu(groups.value.find(group => group.id === '__nc_internal_recent')));\n return { adminGroup, recentGroup, disabledGroup, userGroups };\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppNavigationGroupList.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppNavigationGroupList.vue?vue&type=script&setup=true&lang=ts\"","import { render, staticRenderFns } from \"./AppNavigationGroupList.vue?vue&type=template&id=49ad50e4\"\nimport script from \"./AppNavigationGroupList.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppNavigationGroupList.vue?vue&type=script&setup=true&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagementNavigation.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagementNavigation.vue?vue&type=script&setup=true&lang=ts\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagementNavigation.vue?vue&type=style&index=0&id=539a4ad0&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagementNavigation.vue?vue&type=style&index=0&id=539a4ad0&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserManagementNavigation.vue?vue&type=template&id=539a4ad0&scoped=true\"\nimport script from \"./UserManagementNavigation.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserManagementNavigation.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./UserManagementNavigation.vue?vue&type=style&index=0&id=539a4ad0&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"539a4ad0\",\n null\n \n)\n\nexport default component.exports","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.user-list__row[data-v-549fcd14]{position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.user-list__row[data-v-549fcd14]:hover{background-color:var(--color-background-hover)}.user-list__row:hover .row__cell[data-v-549fcd14]:not(.row__cell--actions){background-color:var(--color-background-hover)}.user-list__row .select--fill[data-v-549fcd14]{max-width:calc(var(--cell-width-large) - 2*var(--cell-padding))}.row__cell[data-v-549fcd14]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.row__cell strong[data-v-549fcd14],.row__cell span[data-v-549fcd14],.row__cell label[data-v-549fcd14]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.row__cell--avatar[data-v-549fcd14],.row__cell--displayname[data-v-549fcd14]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.row__cell--avatar[data-v-549fcd14]{inset-inline-start:0}.row__cell--displayname[data-v-549fcd14]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.row__cell--username[data-v-549fcd14]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.row__cell--avatar[data-v-549fcd14]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.row__cell--multiline span[data-v-549fcd14]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.row__cell--multiline span[data-v-549fcd14]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.row__cell--large[data-v-549fcd14]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.row__cell--obfuscated[data-v-549fcd14]{min-width:400px;width:400px}.row__cell--fill[data-v-549fcd14]{min-width:var(--cell-width-large);width:100%}.row__cell--actions[data-v-549fcd14]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.row__subtitle[data-v-549fcd14]{color:var(--color-text-maxcontrast)}.row__cell[data-v-549fcd14]{border-bottom:1px solid var(--color-border)}.row__cell[data-v-549fcd14] .v-select.select{min-width:var(--cell-min-width)}.row__progress[data-v-549fcd14]{margin-top:4px}.row__progress--warn[data-v-549fcd14]::-moz-progress-bar{background:var(--color-warning) !important}.row__progress--warn[data-v-549fcd14]::-webkit-progress-value{background:var(--color-warning) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/UserRow.vue\",\"webpack://./apps/settings/src/components/Users/shared/styles.scss\"],\"names\":[],\"mappings\":\"AAGA,iCCGC,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CDLA,uCACC,8CAAA,CAEA,2EACC,8CAAA,CAKF,+CACC,+DAAA,CCDD,4BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,sGAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,6EAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,oCACC,oBAAA,CAGD,yCACC,2CAAA,CACA,+CAAA,CAAA,CAIF,sCACC,yDAAA,CAGD,oCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,4CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,4CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,mCACC,iCAAA,CACA,6BAAA,CAGD,wCACC,eAAA,CACA,WAAA,CAID,kCACC,iCAAA,CACA,UAAA,CAGD,qCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,gCACC,mCAAA,CDpFD,4BACC,2CAAA,CAGC,6CACC,+BAAA,CAKH,gCACC,cAAA,CAGC,yDACC,0CAAA,CAED,8DACC,0CAAA\",\"sourcesContent\":[\"\\n@use './shared/styles';\\n\\n.user-list__row {\\n\\t@include styles.row;\\n\\n\\t&:hover {\\n\\t\\tbackground-color: var(--color-background-hover);\\n\\n\\t\\t.row__cell:not(.row__cell--actions) {\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t}\\n\\t}\\n\\n\\t// Limit width of select in fill cell\\n\\t.select--fill {\\n\\t\\tmax-width: calc(var(--cell-width-large) - (2 * var(--cell-padding)));\\n\\t}\\n}\\n\\n.row {\\n\\t@include styles.cell;\\n\\n\\t&__cell {\\n\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\n\\t\\t:deep {\\n\\t\\t\\t.v-select.select {\\n\\t\\t\\t\\tmin-width: var(--cell-min-width);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__progress {\\n\\t\\tmargin-top: 4px;\\n\\n\\t\\t&--warn {\\n\\t\\t\\t&::-moz-progress-bar {\\n\\t\\t\\t\\tbackground: var(--color-warning) !important;\\n\\t\\t\\t}\\n\\t\\t\\t&::-webkit-progress-value {\\n\\t\\t\\t\\tbackground: var(--color-warning) !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\",\"/**\\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n\\n@mixin row {\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\tmin-width: 100%;\\n\\twidth: fit-content;\\n\\theight: var(--row-height);\\n\\tbackground-color: var(--color-main-background);\\n}\\n\\n@mixin cell {\\n\\t&__cell {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: center;\\n\\t\\tpadding: 0 var(--cell-padding);\\n\\t\\tmin-width: var(--cell-width);\\n\\t\\twidth: var(--cell-width);\\n\\t\\tcolor: var(--color-main-text);\\n\\n\\t\\tstrong,\\n\\t\\tspan,\\n\\t\\tlabel {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\toverflow-wrap: anywhere;\\n\\t\\t}\\n\\n\\t\\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\\n\\t\\t\\t&--avatar,\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tposition: sticky;\\n\\t\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--avatar {\\n\\t\\t\\t\\tinset-inline-start: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tinset-inline-start: var(--avatar-cell-width);\\n\\t\\t\\t\\tborder-inline-end: 1px solid var(--color-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--username {\\n\\t\\t\\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\\n\\t\\t}\\n\\n\\t\\t&--avatar {\\n\\t\\t\\tmin-width: var(--avatar-cell-width);\\n\\t\\t\\twidth: var(--avatar-cell-width);\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&--multiline {\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tline-height: 1.3em;\\n\\t\\t\\t\\twhite-space: unset;\\n\\n\\t\\t\\t\\t@supports (-webkit-line-clamp: 2) {\\n\\t\\t\\t\\t\\tdisplay: -webkit-box;\\n\\t\\t\\t\\t\\t-webkit-line-clamp: 2;\\n\\t\\t\\t\\t\\t-webkit-box-orient: vertical;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--large {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: var(--cell-width-large);\\n\\t\\t}\\n\\n\\t\\t&--obfuscated {\\n\\t\\t\\tmin-width: 400px;\\n\\t\\t\\twidth: 400px;\\n\\t\\t}\\n\\n\\t\\t// Fill remaining row space with cell\\n\\t\\t&--fill {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\n\\t\\t&--actions {\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tinset-inline-end: 0;\\n\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: row;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tmin-width: 110px;\\n\\t\\t\\twidth: 110px;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-inline-start: 1px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t&__subtitle {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.dialog__form[data-v-4f7fcac6]{display:flex;flex-direction:column;align-items:center;padding:0 8px;gap:4px 0}.dialog__item[data-v-4f7fcac6]{width:100%}.dialog__item[data-v-4f7fcac6]:not(:focus):not(:active){border-color:var(--color-border-dark)}.dialog__hint[data-v-4f7fcac6]{color:var(--color-text-maxcontrast);margin-top:8px;align-self:flex-start}.dialog__label[data-v-4f7fcac6]{display:block;padding:4px 0}.dialog__select[data-v-4f7fcac6]{width:100%}.dialog__managers[data-v-4f7fcac6]{margin-bottom:12px}.dialog__submit[data-v-4f7fcac6]{margin-top:4px;margin-bottom:8px}.dialog[data-v-4f7fcac6] .dialog__actions{margin:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/NewUserDialog.vue\"],\"names\":[],\"mappings\":\"AAEC,+BACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,aAAA,CACA,SAAA,CAGD,+BACC,UAAA,CAEA,wDACC,qCAAA,CAIF,+BACC,mCAAA,CACA,cAAA,CACA,qBAAA,CAGD,gCACC,aAAA,CACA,aAAA,CAGD,iCACC,UAAA,CAGD,mCACC,kBAAA,CAGD,iCACC,cAAA,CACA,iBAAA,CAIA,0CACC,WAAA\",\"sourcesContent\":[\"\\n.dialog {\\n\\t&__form {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\tpadding: 0 8px;\\n\\t\\tgap: 4px 0;\\n\\t}\\n\\n\\t&__item {\\n\\t\\twidth: 100%;\\n\\n\\t\\t&:not(:focus):not(:active) {\\n\\t\\t\\tborder-color: var(--color-border-dark);\\n\\t\\t}\\n\\t}\\n\\n\\t&__hint {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\tmargin-top: 8px;\\n\\t\\talign-self: flex-start;\\n\\t}\\n\\n\\t&__label {\\n\\t\\tdisplay: block;\\n\\t\\tpadding: 4px 0;\\n\\t}\\n\\n\\t&__select {\\n\\t\\twidth: 100%;\\n\\t}\\n\\n\\t&__managers {\\n\\t\\tmargin-bottom: 12px;\\n\\t}\\n\\n\\t&__submit {\\n\\t\\tmargin-top: 4px;\\n\\t\\tmargin-bottom: 8px;\\n\\t}\\n\\n\\t:deep {\\n\\t\\t.dialog__actions {\\n\\t\\t\\tmargin: auto;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.empty[data-v-73fd953a] .icon-vue{width:64px;height:64px}.empty[data-v-73fd953a] .icon-vue svg{max-width:64px;max-height:64px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/UserList.vue\"],\"names\":[],\"mappings\":\"AAKE,kCACC,UAAA,CACA,WAAA,CAEA,sCACC,cAAA,CACA,eAAA\",\"sourcesContent\":[\"\\n@use './Users/shared/styles' as *;\\n\\n.empty {\\n\\t:deep {\\n\\t\\t.icon-vue {\\n\\t\\t\\twidth: 64px;\\n\\t\\t\\theight: 64px;\\n\\n\\t\\t\\tsvg {\\n\\t\\t\\t\\tmax-width: 64px;\\n\\t\\t\\t\\tmax-height: 64px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { translate as t } from '@nextcloud/l10n';\nexport const unlimitedQuota = {\n id: 'none',\n label: t('settings', 'Unlimited'),\n};\nexport const defaultQuota = {\n id: 'default',\n label: t('settings', 'Default quota'),\n};\n/**\n * Return `true` if the logged in user does not have permissions to view the\n * data of `user`\n * @param user The user to check\n * @param user.id Id of the user\n */\nexport const isObfuscated = (user) => {\n const keys = Object.keys(user);\n return keys.length === 1 && keys.at(0) === 'id';\n};\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","formatGroup","group","name","displayname","usercount","disabled","canAdd","canRemove","searchGroups","search","offset","limit","controller","AbortController","CancelablePromise","async","resolve","reject","onCancel","abort","data","axios","get","generateOcsUrl","signal","ocs","groups","map","error","loadUserGroups","userId","url","loadUserSubAdminGroups","Vue","directive","vElementVisibility","extend","props","dataComponent","type","Object","Function","required","dataKey","String","dataSources","Array","itemHeight","Number","extraProps","default","bufferItems","index","headerHeight","tableHeight","resizeObserver","computed","startIndex","Math","max","shownItems","ceil","renderedItems","slice","tbodyStyle","isOverScrolled","length","lastIndex","hiddenAfterItems","min","paddingTop","paddingBottom","mounted","root","$el","tfoot","$refs","thead","ResizeObserver","debounce","clientHeight","logger","debug","onScroll","observe","addEventListener","beforeDestroy","disconnect","methods","handleFooterVisibility","visible","$emit","round","scrollTop","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","_vm","this","_c","_self","_setupProxy","staticClass","_t","_v","ref","attrs","style","_l","item","i","_b","key","tag","directives","rawName","value","expression","components","NcButton","NcDialog","NcPasswordField","NcSelect","NcTextField","loading","newUser","quotaOptions","possibleManagers","managerInputLabel","t","managerLabel","promise","showConfig","$store","getters","getShowConfig","settings","getServerData","usernameLabel","newUserGenerateUserID","minPasswordLength","getPasswordPolicyMinLength","availableGroups","isAdmin","isDelegatedAdmin","getSortedGroups","getSubAdminGroups","filter","languages","commonLanguages","otherLanguages","beforeMount","searchUserManager","username","focus","createUser","all","dispatch","userid","password","displayName","email","mailAddress","subadmin","subAdminsGroups","quota","language","code","manager","response","meta","statuscode","query","toggleLoading","cancel","commit","createGroup","gid","addGroup","isCreating","validateQuota","validQuota","OC","Util","computerFileSize","formatFileSize","parseFileSize","label","languageFilterBy","option","some","toLocaleLowerCase","includes","then","users","values","_g","scopedSlots","_u","fn","_s","proxy","$listeners","on","$event","preventDefault","apply","arguments","$set","newUserRequireEmail","_e","at","model","callback","$$v","showLanguages","class","NcLoadingIcon","Boolean","filteredUsers","userCount","n","hasObfuscated","passwordLabel","showUserBackend","showStoragePath","showFirstLogin","showLastLogin","defineComponent","NcActionButton","NcActions","NcIconSvgWrapper","actions","edit","user","editSvg","SvgCheck","SvgPencil","enabledActions","action","enabled","isSvg","string","TypeError","trim","XMLValidator","validate","jsonObject","parser","XMLParser","parse","keys","x","toLowerCase","toggleEdit","icon","text","event","Symbol","toStringTag","externalActions","setup","formattedFullTime","useFormatDateTime","firstLoginTimestamp","relativeTime","format","timeStyle","dateStyle","selectedGroups","selectedSubAdminGroups","userGroups","userSubAdminGroups","usedSpace","quotaUsed","used","size","usedQuota","pow","isNaN","userQuota","humanQuota","find","userLanguage","userLang","concat","lang","userFirstLogin","userLastLoginTooltip","lastLoginTimestamp","formatDate","userLastLogin","relativeModifiedDate","NcAvatar","NcProgressBar","UserRowActions","mixins","UserRowMixin","selectedQuota","rand","random","toString","substring","loadingPossibleManagers","currentManager","editing","groupsDetails","subAdminGroupsDetails","subadmins","delete","disable","wipe","editedDisplayName","editedPassword","editedMail","isObfuscated","isLoadingUser","isLoadingField","uniqueId","encodeURIComponent","availableSubAdminGroups","userGroupsLabels","availableGroup","g","join","userSubAdminGroupsLabels","canEdit","getCurrentUser","uid","defaultQuota","userActions","deleteUser","wipeUserDevices","enableDisableUser","sendWelcomeMail","editedUserQuota","unlimitedQuota","set","availableLanguages","initManager","confirmPassword","dialogs","confirmDestructive","YES_NO_BUTTONS","confirm","confirmClasses","result","showSuccess","timeout","finally","filterManagers","managers","searchInitialUserManager","loadGroupsDetails","selectedGroup","loadSubAdminGroupsDetails","updateUserManager","previousManager","showError","updateDisplayName","updatePassword","updateEmail","addUserGroup","console","removeUserGroup","$route","params","addUserSubAdmin","removeUserSubAdmin","setUserQuota","setUserLanguage","$nextTick","displayNameField","inputField","input","backendCapabilities","setDisplayName","undefined","canChangePassword","setPassword","backend","storageLocation","freeze","Fragment","NcEmptyContent","NewUserDialog","UserListFooter","UserListHeader","VirtualList","mdiAccountGroup","rowHeight","UserRow","isInitialLoad","searchQuery","getUsers","quotaPreset","reduce","acc","cur","allowUnlimitedQuota","unshift","usersOffset","getUsersOffset","usersLimit","getUsersLimit","disabledUsersOffset","getDisabledUsersOffset","disabledUsersLimit","getDisabledUsersLimit","usersCount","watch","val","redirectIfDisabled","loadUsers","setNewUserDefaultGroup","created","Notification","showTemporary","resetForm","subscribe","resetSearch","unsubscribe","handleScrollEnd","closeDialog","assign","defaultLanguage","currentGroup","allGroups","getGroups","findIndex","$router","showNewUserForm","NcAppContent","UserList","pageHeading","selectedGroupDecoded","admin","decodeURIComponent","window","OCA","Settings","registerAction","emit","NcAppSettingsDialog","NcAppSettingsSection","NcCheckboxRadioSwitch","NcNoteCard","open","loadingSendMail","groupSorting","getGroupSorting","GroupSorting","GroupName","sorting","UserCount","isGroupSortingEnforced","forceSortGroupByName","isModalOpen","status","setShowConfig","newUserSendEmail","post","generateUrl","filterQuotas","searchValue","replaceAll","indexOf","setDefaultQuota","app","AccountGroup","Delete","NcActionInput","NcAppNavigationItem","NcCounterBubble","NcModal","Pencil","active","count","loadingRenameGroup","openGroupMenu","showRemoveGroupModal","handleGroupMenuOpen","renameGroup","displayNameInput","querySelector","groupid","removeGroup","formatGroupMenu","title","useFormatGroups","adminGroup","disabledGroup","recentGroup","_defineComponent","__name","__props","store","useStore","route","useRoute","router","useRouter","onBeforeMount","loadGroups","isAdminOrDelegatedAdmin","isAddGroupOpen","loadingAddGroup","hasAddGroupError","newGroupName","loadingGroups","groupsSearchQuery","filteredGroups","groupListItems","lastGroupListItem","findLast","component","$vnode","listItem","isLastGroupVisible","useElementVisibility","__sfc","groupId","newGroupListItem","scrollIntoView","behavior","block","mdiPlus","NcActionText","NcAppNavigationCaption","NcAppNavigationList","NcAppNavigationSearch","GroupListItem","_setup","refInFor","isDialogOpen","getUserCount","showNewUserMenu","mdiAccount","mdiAccountOff","mdiCog","mdiShieldAccount","mdiHistory","NcAppNavigation","NcAppNavigationNew","UserSettingsDialog","AppNavigationGroupList","_k","keyCode"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"settings-users-3239.js?v=a345379f155ee4f34e2a","mappings":"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","sources":["webpack:///nextcloud/apps/settings/src/components/Users/UserSettingsDialog.vue?vue&type=style&index=0&id=29922c80&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/settings/src/views/UserManagement.vue?vue&type=style&index=0&id=4684ed00&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/Users/VirtualList.vue?vue&type=style&index=0&id=21942da5&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/Users/UserListFooter.vue?vue&type=style&index=0&id=20636959&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/Users/UserListHeader.vue?vue&type=style&index=0&id=5c0f8828&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/GroupListItem.vue?vue&type=style&index=0&id=0540d351&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/service/groups.ts","webpack:///nextcloud/apps/settings/src/views/UserManagementNavigation.vue?vue&type=style&index=0&id=539a4ad0&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/settings/src/components/Users/NewUserDialog.vue?vue&type=style&index=0&id=3d23637c&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/views/UserManagementNavigation.vue","webpack:///nextcloud/apps/settings/src/components/Users/UserSettingsDialog.vue","webpack:///nextcloud/apps/settings/src/components/Users/UserSettingsDialog.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/Users/UserSettingsDialog.vue?d90e","webpack://nextcloud/./apps/settings/src/components/Users/UserSettingsDialog.vue?f361","webpack://nextcloud/./apps/settings/src/components/Users/UserSettingsDialog.vue?824e","webpack:///nextcloud/apps/settings/src/components/AppNavigationGroupList.vue","webpack:///nextcloud/apps/settings/src/components/GroupListItem.vue","webpack:///nextcloud/apps/settings/src/components/GroupListItem.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/GroupListItem.vue?1540","webpack://nextcloud/./apps/settings/src/components/GroupListItem.vue?7b19","webpack://nextcloud/./apps/settings/src/components/GroupListItem.vue?9f48","webpack:///nextcloud/apps/settings/src/composables/useGroupsNavigation.ts","webpack:///nextcloud/apps/settings/src/components/AppNavigationGroupList.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/settings/src/components/AppNavigationGroupList.vue?c74f","webpack:///nextcloud/apps/settings/src/views/UserManagementNavigation.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/settings/src/views/UserManagementNavigation.vue?0ca3","webpack://nextcloud/./apps/settings/src/views/UserManagementNavigation.vue?28b6","webpack://nextcloud/./apps/settings/src/views/UserManagement.vue?4b28","webpack:///nextcloud/apps/settings/src/components/Users/VirtualList.vue","webpack:///nextcloud/apps/settings/src/components/Users/VirtualList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/settings/src/components/Users/VirtualList.vue?7ade","webpack://nextcloud/./apps/settings/src/components/Users/VirtualList.vue?1915","webpack://nextcloud/./apps/settings/src/components/Users/NewUserDialog.vue?dc2d","webpack:///nextcloud/apps/settings/src/components/Users/NewUserDialog.vue","webpack:///nextcloud/apps/settings/src/components/Users/NewUserDialog.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/Users/NewUserDialog.vue?fb0b","webpack://nextcloud/./apps/settings/src/components/Users/NewUserDialog.vue?64c6","webpack:///nextcloud/apps/settings/src/components/Users/UserListFooter.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/settings/src/components/Users/UserListFooter.vue","webpack://nextcloud/./apps/settings/src/components/Users/UserListFooter.vue?c0ec","webpack://nextcloud/./apps/settings/src/components/Users/UserListFooter.vue?b843","webpack:///nextcloud/apps/settings/src/components/Users/UserListHeader.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/settings/src/components/Users/UserListHeader.vue","webpack://nextcloud/./apps/settings/src/components/Users/UserListHeader.vue?e7ff","webpack://nextcloud/./apps/settings/src/components/Users/UserListHeader.vue?758a","webpack://nextcloud/./apps/settings/src/components/Users/UserRow.vue?5434","webpack:///nextcloud/apps/settings/src/components/Users/UserRowActions.vue","webpack:///nextcloud/apps/settings/src/components/Users/UserRowActions.vue?vue&type=script&lang=ts","webpack:///nextcloud/node_modules/is-svg/index.js","webpack://nextcloud/./apps/settings/src/components/Users/UserRowActions.vue?3c2a","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/index.mjs","webpack:///nextcloud/apps/settings/src/mixins/UserRowMixin.js","webpack:///nextcloud/apps/settings/src/components/Users/UserRow.vue","webpack:///nextcloud/apps/settings/src/components/Users/UserRow.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/Users/UserRow.vue?2b0f","webpack://nextcloud/./apps/settings/src/components/Users/UserRow.vue?eb6e","webpack:///nextcloud/apps/settings/src/components/UserList.vue","webpack:///nextcloud/apps/settings/src/components/UserList.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/settings/src/components/UserList.vue?6d31","webpack://nextcloud/./apps/settings/src/components/UserList.vue?02a4","webpack://nextcloud/./apps/settings/src/components/UserList.vue?c96e","webpack:///nextcloud/apps/settings/src/views/UserManagement.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/settings/src/views/UserManagement.vue","webpack://nextcloud/./apps/settings/src/views/UserManagement.vue?4758","webpack://nextcloud/./apps/settings/src/views/UserManagement.vue?fd5a","webpack:///nextcloud/apps/settings/src/components/Users/UserRow.vue?vue&type=style&index=0&id=549fcd14&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/components/UserList.vue?vue&type=style&index=0&id=73fd953a&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/settings/src/utils/userUtils.ts"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.dialog__note[data-v-29922c80]{font-weight:normal}fieldset[data-v-29922c80]{font-weight:bold}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/UserSettingsDialog.vue\"],\"names\":[],\"mappings\":\"AAEC,+BACC,kBAAA,CAIF,0BACC,gBAAA\",\"sourcesContent\":[\"\\n.dialog {\\n\\t&__note {\\n\\t\\tfont-weight: normal;\\n\\t}\\n}\\n\\nfieldset {\\n\\tfont-weight: bold;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.app-content[data-v-4684ed00]{display:flex;overflow:hidden;flex-direction:column;max-height:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/views/UserManagement.vue\"],\"names\":[],\"mappings\":\"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA\",\"sourcesContent\":[\"\\n.app-content {\\n\\t// Virtual list needs to be full height and is scrollable\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\tflex-direction: column;\\n\\tmax-height: 100%;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.user-list[data-v-21942da5]{--avatar-cell-width: 48px;--cell-padding: 7px;--cell-width: 200px;--cell-width-large: 300px;--cell-min-width: calc(var(--cell-width) - (2 * var(--cell-padding)));--sticky-column-z-index: calc(var(--vs-dropdown-z-index) + 1);display:block;overflow:auto;height:100%;will-change:scroll-position}.user-list__header[data-v-21942da5],.user-list__footer[data-v-21942da5]{position:sticky;display:block}.user-list__header[data-v-21942da5]{top:0;z-index:calc(var(--sticky-column-z-index) + 1)}.user-list__footer[data-v-21942da5]{inset-inline-start:0}.user-list__body[data-v-21942da5]{display:flex;flex-direction:column;width:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/VirtualList.vue\"],\"names\":[],\"mappings\":\"AACA,4BACC,yBAAA,CACA,mBAAA,CACA,mBAAA,CACA,yBAAA,CACA,qEAAA,CACA,6DAAA,CAGA,aAAA,CACA,aAAA,CACA,WAAA,CACA,2BAAA,CAEA,wEAEC,eAAA,CAEA,aAAA,CAGD,oCACC,KAAA,CACA,8CAAA,CAGD,oCACC,oBAAA,CAGD,kCACC,YAAA,CACA,qBAAA,CACA,UAAA\",\"sourcesContent\":[\"\\n.user-list {\\n\\t--avatar-cell-width: 48px;\\n\\t--cell-padding: 7px;\\n\\t--cell-width: 200px;\\n\\t--cell-width-large: 300px;\\n\\t--cell-min-width: calc(var(--cell-width) - (2 * var(--cell-padding)));\\n\\t--sticky-column-z-index: calc(var(--vs-dropdown-z-index) + 1); // Keep the sticky column on top of the select dropdown\\n\\n\\t// Necessary for virtual scroll optimized rendering\\n\\tdisplay: block;\\n\\toverflow: auto;\\n\\theight: 100%;\\n\\twill-change: scroll-position;\\n\\n\\t&__header,\\n\\t&__footer {\\n\\t\\tposition: sticky;\\n\\t\\t// Fix sticky positioning in Firefox\\n\\t\\tdisplay: block;\\n\\t}\\n\\n\\t&__header {\\n\\t\\ttop: 0;\\n\\t\\tz-index: calc(var(--sticky-column-z-index) + 1);\\n\\t}\\n\\n\\t&__footer {\\n\\t\\tinset-inline-start: 0;\\n\\t}\\n\\n\\t&__body {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\twidth: 100%;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.footer[data-v-20636959]{position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.footer__cell[data-v-20636959]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.footer__cell strong[data-v-20636959],.footer__cell span[data-v-20636959],.footer__cell label[data-v-20636959]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.footer__cell--avatar[data-v-20636959],.footer__cell--displayname[data-v-20636959]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.footer__cell--avatar[data-v-20636959]{inset-inline-start:0}.footer__cell--displayname[data-v-20636959]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.footer__cell--username[data-v-20636959]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.footer__cell--avatar[data-v-20636959]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.footer__cell--multiline span[data-v-20636959]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.footer__cell--multiline span[data-v-20636959]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.footer__cell--large[data-v-20636959]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.footer__cell--obfuscated[data-v-20636959]{min-width:400px;width:400px}.footer__cell--fill[data-v-20636959]{min-width:var(--cell-width-large);width:100%}.footer__cell--actions[data-v-20636959]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.footer__subtitle[data-v-20636959]{color:var(--color-text-maxcontrast)}.footer__cell[data-v-20636959]{position:sticky;color:var(--color-text-maxcontrast)}.footer__cell--loading[data-v-20636959]{inset-inline-start:0;min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0}.footer__cell--count[data-v-20636959]{inset-inline-start:var(--avatar-cell-width);min-width:var(--cell-width);width:var(--cell-width)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/UserListFooter.vue\",\"webpack://./apps/settings/src/components/Users/shared/styles.scss\"],\"names\":[],\"mappings\":\"AAGA,yBCGC,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CAIA,+BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,+GAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,mFAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,uCACC,oBAAA,CAGD,4CACC,2CAAA,CACA,+CAAA,CAAA,CAIF,yCACC,yDAAA,CAGD,uCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,+CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,+CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,sCACC,iCAAA,CACA,6BAAA,CAGD,2CACC,eAAA,CACA,WAAA,CAID,qCACC,iCAAA,CACA,UAAA,CAGD,wCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,mCACC,mCAAA,CDpGD,+BACC,eAAA,CACA,mCAAA,CAEA,wCACC,oBAAA,CACA,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CAGD,sCACC,2CAAA,CACA,2BAAA,CACA,uBAAA\",\"sourcesContent\":[\"\\n@use './shared/styles';\\n\\n.footer {\\n\\t@include styles.row;\\n\\t@include styles.cell;\\n\\n\\t&__cell {\\n\\t\\tposition: sticky;\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\n\\t\\t&--loading {\\n\\t\\t\\tinset-inline-start: 0;\\n\\t\\t\\tmin-width: var(--avatar-cell-width);\\n\\t\\t\\twidth: var(--avatar-cell-width);\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\n\\t\\t&--count {\\n\\t\\t\\tinset-inline-start: var(--avatar-cell-width);\\n\\t\\t\\tmin-width: var(--cell-width);\\n\\t\\t\\twidth: var(--cell-width);\\n\\t\\t}\\n\\t}\\n}\\n\",\"/**\\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n\\n@mixin row {\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\tmin-width: 100%;\\n\\twidth: fit-content;\\n\\theight: var(--row-height);\\n\\tbackground-color: var(--color-main-background);\\n}\\n\\n@mixin cell {\\n\\t&__cell {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: center;\\n\\t\\tpadding: 0 var(--cell-padding);\\n\\t\\tmin-width: var(--cell-width);\\n\\t\\twidth: var(--cell-width);\\n\\t\\tcolor: var(--color-main-text);\\n\\n\\t\\tstrong,\\n\\t\\tspan,\\n\\t\\tlabel {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\toverflow-wrap: anywhere;\\n\\t\\t}\\n\\n\\t\\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\\n\\t\\t\\t&--avatar,\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tposition: sticky;\\n\\t\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--avatar {\\n\\t\\t\\t\\tinset-inline-start: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tinset-inline-start: var(--avatar-cell-width);\\n\\t\\t\\t\\tborder-inline-end: 1px solid var(--color-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--username {\\n\\t\\t\\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\\n\\t\\t}\\n\\n\\t\\t&--avatar {\\n\\t\\t\\tmin-width: var(--avatar-cell-width);\\n\\t\\t\\twidth: var(--avatar-cell-width);\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&--multiline {\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tline-height: 1.3em;\\n\\t\\t\\t\\twhite-space: unset;\\n\\n\\t\\t\\t\\t@supports (-webkit-line-clamp: 2) {\\n\\t\\t\\t\\t\\tdisplay: -webkit-box;\\n\\t\\t\\t\\t\\t-webkit-line-clamp: 2;\\n\\t\\t\\t\\t\\t-webkit-box-orient: vertical;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--large {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: var(--cell-width-large);\\n\\t\\t}\\n\\n\\t\\t&--obfuscated {\\n\\t\\t\\tmin-width: 400px;\\n\\t\\t\\twidth: 400px;\\n\\t\\t}\\n\\n\\t\\t// Fill remaining row space with cell\\n\\t\\t&--fill {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\n\\t\\t&--actions {\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tinset-inline-end: 0;\\n\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: row;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tmin-width: 110px;\\n\\t\\t\\twidth: 110px;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-inline-start: 1px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t&__subtitle {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.header[data-v-5c0f8828]{border-bottom:1px solid var(--color-border);position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.header__cell[data-v-5c0f8828]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.header__cell strong[data-v-5c0f8828],.header__cell span[data-v-5c0f8828],.header__cell label[data-v-5c0f8828]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.header__cell--avatar[data-v-5c0f8828],.header__cell--displayname[data-v-5c0f8828]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.header__cell--avatar[data-v-5c0f8828]{inset-inline-start:0}.header__cell--displayname[data-v-5c0f8828]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.header__cell--username[data-v-5c0f8828]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.header__cell--avatar[data-v-5c0f8828]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.header__cell--multiline span[data-v-5c0f8828]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.header__cell--multiline span[data-v-5c0f8828]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.header__cell--large[data-v-5c0f8828]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.header__cell--obfuscated[data-v-5c0f8828]{min-width:400px;width:400px}.header__cell--fill[data-v-5c0f8828]{min-width:var(--cell-width-large);width:100%}.header__cell--actions[data-v-5c0f8828]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.header__subtitle[data-v-5c0f8828]{color:var(--color-text-maxcontrast)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/UserListHeader.vue\",\"webpack://./apps/settings/src/components/Users/shared/styles.scss\"],\"names\":[],\"mappings\":\"AAGA,yBACC,2CAAA,CCEA,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CAIA,+BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,+GAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,mFAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,uCACC,oBAAA,CAGD,4CACC,2CAAA,CACA,+CAAA,CAAA,CAIF,yCACC,yDAAA,CAGD,uCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,+CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,+CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,sCACC,iCAAA,CACA,6BAAA,CAGD,2CACC,eAAA,CACA,WAAA,CAID,qCACC,iCAAA,CACA,UAAA,CAGD,wCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,mCACC,mCAAA\",\"sourcesContent\":[\"\\n@use './shared/styles';\\n\\n.header {\\n\\tborder-bottom: 1px solid var(--color-border);\\n\\n\\t@include styles.row;\\n\\t@include styles.cell;\\n}\\n\",\"/**\\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n\\n@mixin row {\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\tmin-width: 100%;\\n\\twidth: fit-content;\\n\\theight: var(--row-height);\\n\\tbackground-color: var(--color-main-background);\\n}\\n\\n@mixin cell {\\n\\t&__cell {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: center;\\n\\t\\tpadding: 0 var(--cell-padding);\\n\\t\\tmin-width: var(--cell-width);\\n\\t\\twidth: var(--cell-width);\\n\\t\\tcolor: var(--color-main-text);\\n\\n\\t\\tstrong,\\n\\t\\tspan,\\n\\t\\tlabel {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\toverflow-wrap: anywhere;\\n\\t\\t}\\n\\n\\t\\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\\n\\t\\t\\t&--avatar,\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tposition: sticky;\\n\\t\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--avatar {\\n\\t\\t\\t\\tinset-inline-start: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tinset-inline-start: var(--avatar-cell-width);\\n\\t\\t\\t\\tborder-inline-end: 1px solid var(--color-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--username {\\n\\t\\t\\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\\n\\t\\t}\\n\\n\\t\\t&--avatar {\\n\\t\\t\\tmin-width: var(--avatar-cell-width);\\n\\t\\t\\twidth: var(--avatar-cell-width);\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&--multiline {\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tline-height: 1.3em;\\n\\t\\t\\t\\twhite-space: unset;\\n\\n\\t\\t\\t\\t@supports (-webkit-line-clamp: 2) {\\n\\t\\t\\t\\t\\tdisplay: -webkit-box;\\n\\t\\t\\t\\t\\t-webkit-line-clamp: 2;\\n\\t\\t\\t\\t\\t-webkit-box-orient: vertical;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--large {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: var(--cell-width-large);\\n\\t\\t}\\n\\n\\t\\t&--obfuscated {\\n\\t\\t\\tmin-width: 400px;\\n\\t\\t\\twidth: 400px;\\n\\t\\t}\\n\\n\\t\\t// Fill remaining row space with cell\\n\\t\\t&--fill {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\n\\t\\t&--actions {\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tinset-inline-end: 0;\\n\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: row;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tmin-width: 110px;\\n\\t\\t\\twidth: 110px;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-inline-start: 1px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t&__subtitle {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.modal__header[data-v-0540d351]{margin:0}.modal__content[data-v-0540d351]{display:flex;flex-direction:column;align-items:center;padding:20px;gap:4px 0}.modal__button-row[data-v-0540d351]{display:flex;width:100%;justify-content:space-between}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/GroupListItem.vue\"],\"names\":[],\"mappings\":\"AAEC,gCACC,QAAA,CAGD,iCACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,YAAA,CACA,SAAA,CAGD,oCACC,YAAA,CACA,UAAA,CACA,6BAAA\",\"sourcesContent\":[\"\\n.modal {\\n\\t&__header {\\n\\t\\tmargin: 0;\\n\\t}\\n\\n\\t&__content {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\tpadding: 20px;\\n\\t\\tgap: 4px 0;\\n\\t}\\n\\n\\t&__button-row {\\n\\t\\tdisplay: flex;\\n\\t\\twidth: 100%;\\n\\t\\tjustify-content: space-between;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","/**\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport axios from '@nextcloud/axios';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { CancelablePromise } from 'cancelable-promise';\nconst formatGroup = (group) => ({\n id: group.id,\n name: group.displayname,\n usercount: group.usercount,\n disabled: group.disabled,\n canAdd: group.canAdd,\n canRemove: group.canRemove,\n});\n/**\n * Search groups\n *\n * @param {object} options Options\n * @param {string} options.search Search query\n * @param {number} options.offset Offset\n * @param {number} options.limit Limit\n */\nexport const searchGroups = ({ search, offset, limit }) => {\n const controller = new AbortController();\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const { data } = await axios.get(generateOcsUrl('/cloud/groups/details?search={search}&offset={offset}&limit={limit}', { search, offset, limit }), {\n signal: controller.signal,\n });\n const groups = data.ocs?.data?.groups ?? [];\n const formattedGroups = groups.map(formatGroup);\n resolve(formattedGroups);\n }\n catch (error) {\n reject(error);\n }\n });\n};\n/**\n * Load user groups\n *\n * @param {object} options Options\n * @param {string} options.userId User id\n */\nexport const loadUserGroups = async ({ userId }) => {\n const url = generateOcsUrl('/cloud/users/{userId}/groups/details', { userId });\n const { data } = await axios.get(url);\n const groups = data.ocs?.data?.groups ?? [];\n const formattedGroups = groups.map(formatGroup);\n return formattedGroups;\n};\n/**\n * Load user subadmin groups\n *\n * @param {object} options Options\n * @param {string} options.userId User id\n */\nexport const loadUserSubAdminGroups = async ({ userId }) => {\n const url = generateOcsUrl('/cloud/users/{userId}/subadmins/details', { userId });\n const { data } = await axios.get(url);\n const groups = data.ocs?.data?.groups ?? [];\n const formattedGroups = groups.map(formatGroup);\n return formattedGroups;\n};\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.account-management__navigation[data-v-539a4ad0] .app-navigation__body{will-change:scroll-position}.account-management__system-list[data-v-539a4ad0]{height:auto !important;overflow:visible !important}.account-management__group-list[data-v-539a4ad0]{height:100% !important}.account-management__settings-toggle[data-v-539a4ad0]{margin-bottom:12px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/views/UserManagementNavigation.vue\"],\"names\":[],\"mappings\":\"AAGE,uEACC,2BAAA,CAGF,kDACC,sBAAA,CACA,2BAAA,CAGD,iDACC,sBAAA,CAGD,sDACC,kBAAA\",\"sourcesContent\":[\"\\n.account-management {\\n\\t&__navigation {\\n\\t\\t:deep(.app-navigation__body) {\\n\\t\\t\\twill-change: scroll-position;\\n\\t\\t}\\n\\t}\\n\\t&__system-list {\\n\\t\\theight: auto !important;\\n\\t\\toverflow: visible !important;\\n\\t}\\n\\n\\t&__group-list {\\n\\t\\theight: 100% !important;\\n\\t}\\n\\n\\t&__settings-toggle {\\n\\t\\tmargin-bottom: 12px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.dialog__form[data-v-3d23637c]{display:flex;flex-direction:column;align-items:center;padding:0 8px;gap:4px 0}.dialog__item[data-v-3d23637c]{width:100%}.dialog__item[data-v-3d23637c]:not(:focus):not(:active){border-color:var(--color-border-dark)}.dialog__hint[data-v-3d23637c]{color:var(--color-text-maxcontrast);margin-top:8px;align-self:flex-start}.dialog__label[data-v-3d23637c]{display:block;padding:4px 0}.dialog__select[data-v-3d23637c]{width:100%}.dialog__managers[data-v-3d23637c]{margin-bottom:12px}.dialog__submit[data-v-3d23637c]{margin-top:4px;margin-bottom:8px}.dialog[data-v-3d23637c] .dialog__actions{margin:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/NewUserDialog.vue\"],\"names\":[],\"mappings\":\"AAEC,+BACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,aAAA,CACA,SAAA,CAGD,+BACC,UAAA,CAEA,wDACC,qCAAA,CAIF,+BACC,mCAAA,CACA,cAAA,CACA,qBAAA,CAGD,gCACC,aAAA,CACA,aAAA,CAGD,iCACC,UAAA,CAGD,mCACC,kBAAA,CAGD,iCACC,cAAA,CACA,iBAAA,CAIA,0CACC,WAAA\",\"sourcesContent\":[\"\\n.dialog {\\n\\t&__form {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\tpadding: 0 8px;\\n\\t\\tgap: 4px 0;\\n\\t}\\n\\n\\t&__item {\\n\\t\\twidth: 100%;\\n\\n\\t\\t&:not(:focus):not(:active) {\\n\\t\\t\\tborder-color: var(--color-border-dark);\\n\\t\\t}\\n\\t}\\n\\n\\t&__hint {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\tmargin-top: 8px;\\n\\t\\talign-self: flex-start;\\n\\t}\\n\\n\\t&__label {\\n\\t\\tdisplay: block;\\n\\t\\tpadding: 4px 0;\\n\\t}\\n\\n\\t&__select {\\n\\t\\twidth: 100%;\\n\\t}\\n\\n\\t&__managers {\\n\\t\\tmargin-bottom: 12px;\\n\\t}\\n\\n\\t&__submit {\\n\\t\\tmargin-top: 4px;\\n\\t\\tmargin-bottom: 8px;\\n\\t}\\n\\n\\t:deep {\\n\\t\\t.dialog__actions {\\n\\t\\t\\tmargin: auto;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcAppNavigation,{staticClass:\"account-management__navigation\",attrs:{\"aria-label\":_setup.t('settings', 'Account management')},scopedSlots:_vm._u([{key:\"footer\",fn:function(){return [_c(_setup.NcButton,{staticClass:\"account-management__settings-toggle\",attrs:{\"type\":\"tertiary\"},on:{\"click\":function($event){_setup.isDialogOpen = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiCog}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.t('settings', 'Account management settings'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c(_setup.UserSettingsDialog,{attrs:{\"open\":_setup.isDialogOpen},on:{\"update:open\":function($event){_setup.isDialogOpen=$event}}})]},proxy:true}])},[_c(_setup.NcAppNavigationNew,{attrs:{\"button-id\":\"new-user-button\",\"text\":_setup.t('settings','New account')},on:{\"click\":_setup.showNewUserMenu,\"keyup\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _setup.showNewUserMenu.apply(null, arguments)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"space\",32,$event.key,[\" \",\"Spacebar\"]))return null;return _setup.showNewUserMenu.apply(null, arguments)}]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiPlus}})]},proxy:true}])}),_vm._v(\" \"),_c(_setup.NcAppNavigationList,{staticClass:\"account-management__system-list\",attrs:{\"data-cy-users-settings-navigation-groups\":\"system\"}},[_c(_setup.NcAppNavigationItem,{attrs:{\"id\":\"everyone\",\"exact\":true,\"name\":_setup.t('settings', 'All accounts'),\"to\":{ name: 'users' }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiAccount}})]},proxy:true},{key:\"counter\",fn:function(){return [(_setup.userCount)?_c(_setup.NcCounterBubble,{attrs:{\"type\":!_setup.selectedGroupDecoded ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_setup.userCount)+\"\\n\\t\\t\\t\\t\")]):_vm._e()]},proxy:true}])}),_vm._v(\" \"),(_setup.settings.isAdmin)?_c(_setup.NcAppNavigationItem,{attrs:{\"id\":\"admin\",\"exact\":true,\"name\":_setup.t('settings', 'Admins'),\"to\":{ name: 'group', params: { selectedGroup: 'admin' } }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiShieldAccount}})]},proxy:true},{key:\"counter\",fn:function(){return [(_setup.adminGroup && _setup.adminGroup.count > 0)?_c(_setup.NcCounterBubble,{attrs:{\"type\":_setup.selectedGroupDecoded === 'admin' ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_setup.adminGroup.count)+\"\\n\\t\\t\\t\\t\")]):_vm._e()]},proxy:true}],null,false,2218088905)}):_vm._e(),_vm._v(\" \"),(_setup.isAdminOrDelegatedAdmin)?_c(_setup.NcAppNavigationItem,{attrs:{\"id\":\"recent\",\"exact\":true,\"name\":_setup.t('settings', 'Recently active'),\"to\":{ name: 'group', params: { selectedGroup: '__nc_internal_recent' } }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiHistory}})]},proxy:true},{key:\"counter\",fn:function(){return [(_setup.recentGroup?.usercount)?_c(_setup.NcCounterBubble,{attrs:{\"type\":_setup.selectedGroupDecoded === '__nc_internal_recent' ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_setup.recentGroup.usercount)+\"\\n\\t\\t\\t\\t\")]):_vm._e()]},proxy:true}],null,false,2299424282)}):_vm._e(),_vm._v(\" \"),(_setup.disabledGroup && (_setup.disabledGroup.usercount > 0 || _setup.disabledGroup.usercount === -1))?_c(_setup.NcAppNavigationItem,{attrs:{\"id\":\"disabled\",\"exact\":true,\"name\":_setup.t('settings', 'Disabled accounts'),\"to\":{ name: 'group', params: { selectedGroup: 'disabled' } }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiAccountOff}})]},proxy:true},(_setup.disabledGroup.usercount > 0)?{key:\"counter\",fn:function(){return [_c(_setup.NcCounterBubble,{attrs:{\"type\":_setup.selectedGroupDecoded === 'disabled' ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_setup.disabledGroup.usercount)+\"\\n\\t\\t\\t\\t\")])]},proxy:true}:null],null,true)}):_vm._e()],1),_vm._v(\" \"),_c(_setup.AppNavigationGroupList)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserSettingsDialog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserSettingsDialog.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserSettingsDialog.vue?vue&type=style&index=0&id=29922c80&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserSettingsDialog.vue?vue&type=style&index=0&id=29922c80&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserSettingsDialog.vue?vue&type=template&id=29922c80&scoped=true\"\nimport script from \"./UserSettingsDialog.vue?vue&type=script&lang=js\"\nexport * from \"./UserSettingsDialog.vue?vue&type=script&lang=js\"\nimport style0 from \"./UserSettingsDialog.vue?vue&type=style&index=0&id=29922c80&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"29922c80\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcAppSettingsDialog',{attrs:{\"open\":_vm.isModalOpen,\"show-navigation\":true,\"name\":_vm.t('settings', 'Account management settings')},on:{\"update:open\":function($event){_vm.isModalOpen=$event}}},[_c('NcAppSettingsSection',{attrs:{\"id\":\"visibility-settings\",\"name\":_vm.t('settings', 'Visibility')}},[_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"showLanguages\",\"checked\":_vm.showLanguages},on:{\"update:checked\":function($event){_vm.showLanguages=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Show language'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"showUserBackend\",\"checked\":_vm.showUserBackend},on:{\"update:checked\":function($event){_vm.showUserBackend=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Show account backend'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"showStoragePath\",\"checked\":_vm.showStoragePath},on:{\"update:checked\":function($event){_vm.showStoragePath=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Show storage path'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"showFirstLogin\",\"checked\":_vm.showFirstLogin},on:{\"update:checked\":function($event){_vm.showFirstLogin=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Show first login'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"showLastLogin\",\"checked\":_vm.showLastLogin},on:{\"update:checked\":function($event){_vm.showLastLogin=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Show last login'))+\"\\n\\t\\t\")])],1),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"groups-sorting\",\"name\":_vm.t('settings', 'Sorting')}},[(_vm.isGroupSortingEnforced)?_c('NcNoteCard',{attrs:{\"type\":\"warning\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'The system config enforces sorting the groups by name. This also disables showing the member count.'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('fieldset',[_c('legend',[_vm._v(_vm._s(_vm.t('settings', 'Group list sorting')))]),_vm._v(\" \"),_c('NcNoteCard',{staticClass:\"dialog__note\",attrs:{\"type\":\"info\",\"text\":_vm.t('settings', 'Sorting only applies to the currently loaded groups for performance reasons. Groups will be loaded as you navigate or search through the list.')}}),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"radio\",\"checked\":_vm.groupSorting,\"data-test\":\"sortGroupsByMemberCount\",\"disabled\":_vm.isGroupSortingEnforced,\"name\":\"group-sorting-mode\",\"value\":\"member-count\"},on:{\"update:checked\":function($event){_vm.groupSorting=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'By member count'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"radio\",\"checked\":_vm.groupSorting,\"data-test\":\"sortGroupsByName\",\"disabled\":_vm.isGroupSortingEnforced,\"name\":\"group-sorting-mode\",\"value\":\"name\"},on:{\"update:checked\":function($event){_vm.groupSorting=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'By name'))+\"\\n\\t\\t\\t\")])],1)],1),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"email-settings\",\"name\":_vm.t('settings', 'Send email')}},[_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"data-test\":\"sendWelcomeMail\",\"checked\":_vm.sendWelcomeMail,\"disabled\":_vm.loadingSendMail},on:{\"update:checked\":function($event){_vm.sendWelcomeMail=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Send welcome email to new accounts'))+\"\\n\\t\\t\")])],1),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"default-settings\",\"name\":_vm.t('settings', 'Defaults')}},[_c('NcSelect',{attrs:{\"clearable\":false,\"create-option\":_vm.validateQuota,\"filter-by\":_vm.filterQuotas,\"input-label\":_vm.t('settings', 'Default quota'),\"options\":_vm.quotaOptions,\"placement\":\"top\",\"placeholder\":_vm.t('settings', 'Select default quota'),\"taggable\":\"\"},on:{\"option:selected\":_vm.setDefaultQuota},model:{value:(_vm.defaultQuota),callback:function ($$v) {_vm.defaultQuota=$$v},expression:\"defaultQuota\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.Fragment,[_c(_setup.NcAppNavigationCaption,{attrs:{\"name\":_setup.t('settings', 'Groups'),\"disabled\":_setup.loadingAddGroup,\"aria-label\":_setup.loadingAddGroup ? _setup.t('settings', 'Creating group…') : _setup.t('settings', 'Create group'),\"force-menu\":\"\",\"is-heading\":\"\",\"open\":_setup.isAddGroupOpen},on:{\"update:open\":function($event){_setup.isAddGroupOpen=$event}},scopedSlots:_vm._u([(_setup.isAdminOrDelegatedAdmin)?{key:\"actionsTriggerIcon\",fn:function(){return [(_setup.loadingAddGroup)?_c(_setup.NcLoadingIcon):_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiPlus}})]},proxy:true}:null,(_setup.isAdminOrDelegatedAdmin)?{key:\"actions\",fn:function(){return [_c(_setup.NcActionText,{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_setup.NcIconSvgWrapper,{attrs:{\"path\":_setup.mdiAccountGroup}})]},proxy:true}],null,false,3607647275)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_setup.t('settings', 'Create group'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c(_setup.NcActionInput,{attrs:{\"label\":_setup.t('settings', 'Group name'),\"data-cy-users-settings-new-group-name\":\"\",\"label-outside\":false,\"disabled\":_setup.loadingAddGroup,\"value\":_setup.newGroupName,\"error\":_setup.hasAddGroupError,\"helper-text\":_setup.hasAddGroupError ? _setup.t('settings', 'Please enter a valid group name') : ''},on:{\"update:value\":function($event){_setup.newGroupName=$event},\"submit\":_setup.createGroup}})]},proxy:true}:null],null,true)}),_vm._v(\" \"),_c(_setup.NcAppNavigationSearch,{attrs:{\"label\":_setup.t('settings', 'Search groups…')},model:{value:(_setup.groupsSearchQuery),callback:function ($$v) {_setup.groupsSearchQuery=$$v},expression:\"groupsSearchQuery\"}}),_vm._v(\" \"),_c('p',{staticClass:\"hidden-visually\",attrs:{\"id\":\"group-list-desc\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_setup.t('settings', 'List of groups. This list is not fully populated for performance reasons. The groups will be loaded as you navigate or search through the list.'))+\"\\n\\t\")]),_vm._v(\" \"),_c(_setup.NcAppNavigationList,{staticClass:\"account-management__group-list\",attrs:{\"aria-describedby\":\"group-list-desc\",\"data-cy-users-settings-navigation-groups\":\"custom\"}},[_vm._l((_setup.filteredGroups),function(group){return _c(_setup.GroupListItem,{key:group.id,ref:\"groupListItems\",refInFor:true,attrs:{\"id\":group.id,\"active\":_setup.selectedGroupDecoded === group.id,\"name\":group.title,\"count\":group.count}})}),_vm._v(\" \"),(_setup.loadingGroups)?_c('div',{attrs:{\"role\":\"note\"}},[_c(_setup.NcLoadingIcon,{attrs:{\"name\":_setup.t('settings', 'Loading groups…')}})],1):_vm._e()],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupListItem.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupListItem.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupListItem.vue?vue&type=style&index=0&id=0540d351&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupListItem.vue?vue&type=style&index=0&id=0540d351&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./GroupListItem.vue?vue&type=template&id=0540d351&scoped=true\"\nimport script from \"./GroupListItem.vue?vue&type=script&lang=js\"\nexport * from \"./GroupListItem.vue?vue&type=script&lang=js\"\nimport style0 from \"./GroupListItem.vue?vue&type=style&index=0&id=0540d351&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0540d351\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('Fragment',[(_vm.showRemoveGroupModal)?_c('NcModal',{on:{\"close\":function($event){_vm.showRemoveGroupModal = false}}},[_c('div',{staticClass:\"modal__content\"},[_c('h2',{staticClass:\"modal__header\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Please confirm the group removal'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcNoteCard',{attrs:{\"type\":\"warning\",\"show-alert\":\"\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'You are about to delete the group \"{group}\". The accounts will NOT be deleted.', { group: _vm.name }))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"modal__button-row\"},[_c('NcButton',{attrs:{\"type\":\"secondary\"},on:{\"click\":function($event){_vm.showRemoveGroupModal = false}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Cancel'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcButton',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.removeGroup}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Confirm'))+\"\\n\\t\\t\\t\\t\")])],1)],1)]):_vm._e(),_vm._v(\" \"),_c('NcAppNavigationItem',{key:_vm.id,ref:\"listItem\",attrs:{\"exact\":true,\"name\":_vm.name,\"to\":{ name: 'group', params: { selectedGroup: encodeURIComponent(_vm.id) } },\"loading\":_vm.loadingRenameGroup,\"menu-open\":_vm.openGroupMenu},on:{\"update:menuOpen\":_vm.handleGroupMenuOpen},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountGroup',{attrs:{\"size\":20}})]},proxy:true},{key:\"counter\",fn:function(){return [(_vm.count)?_c('NcCounterBubble',{attrs:{\"type\":_vm.active ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.count)+\"\\n\\t\\t\\t\")]):_vm._e()]},proxy:true},{key:\"actions\",fn:function(){return [(_vm.id !== 'admin' && _vm.id !== 'disabled' && (_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin))?_c('NcActionInput',{ref:\"displayNameInput\",attrs:{\"trailing-button-label\":_vm.t('settings', 'Submit'),\"type\":\"text\",\"value\":_vm.name,\"label\":_vm.t('settings', 'Rename group')},on:{\"submit\":function($event){return _vm.renameGroup(_vm.id)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Pencil',{attrs:{\"size\":20}})]},proxy:true}],null,false,580569589)}):_vm._e(),_vm._v(\" \"),(_vm.id !== 'admin' && _vm.id !== 'disabled' && (_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin))?_c('NcActionButton',{on:{\"click\":function($event){_vm.showRemoveGroupModal = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Delete',{attrs:{\"size\":20}})]},proxy:true}],null,false,2705356561)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Delete group'))+\"\\n\\t\\t\\t\")]):_vm._e()]},proxy:true}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { computed } from 'vue';\n/**\n * Format a group to a menu entry\n *\n * @param group the group\n */\nfunction formatGroupMenu(group) {\n if (typeof group === 'undefined') {\n return null;\n }\n return {\n id: group.id,\n title: group.name,\n usercount: group.usercount ?? 0,\n count: Math.max(0, (group.usercount ?? 0) - (group.disabled ?? 0)),\n };\n}\nexport const useFormatGroups = (groups) => {\n /**\n * All non-disabled non-admin groups\n */\n const userGroups = computed(() => {\n const formatted = groups.value\n // filter out disabled and admin\n .filter(group => group.id !== 'disabled' && group.id !== '__nc_internal_recent' && group.id !== 'admin')\n // format group\n .map(group => formatGroupMenu(group))\n // remove invalid\n .filter(group => group !== null);\n return formatted;\n });\n /**\n * The admin group if found otherwise null\n */\n const adminGroup = computed(() => formatGroupMenu(groups.value.find(group => group.id === 'admin')));\n /**\n * The group of disabled users\n */\n const disabledGroup = computed(() => formatGroupMenu(groups.value.find(group => group.id === 'disabled')));\n /**\n * The group of recent users\n */\n const recentGroup = computed(() => formatGroupMenu(groups.value.find(group => group.id === '__nc_internal_recent')));\n return { adminGroup, recentGroup, disabledGroup, userGroups };\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppNavigationGroupList.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppNavigationGroupList.vue?vue&type=script&setup=true&lang=ts\"","import { render, staticRenderFns } from \"./AppNavigationGroupList.vue?vue&type=template&id=49ad50e4\"\nimport script from \"./AppNavigationGroupList.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AppNavigationGroupList.vue?vue&type=script&setup=true&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagementNavigation.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagementNavigation.vue?vue&type=script&setup=true&lang=ts\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagementNavigation.vue?vue&type=style&index=0&id=539a4ad0&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagementNavigation.vue?vue&type=style&index=0&id=539a4ad0&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserManagementNavigation.vue?vue&type=template&id=539a4ad0&scoped=true\"\nimport script from \"./UserManagementNavigation.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./UserManagementNavigation.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./UserManagementNavigation.vue?vue&type=style&index=0&id=539a4ad0&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"539a4ad0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppContent',{attrs:{\"page-heading\":_vm.pageHeading}},[_c('UserList',{attrs:{\"selected-group\":_vm.selectedGroupDecoded,\"external-actions\":_vm.externalActions}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('table',{staticClass:\"user-list\"},[_vm._t(\"before\"),_vm._v(\" \"),_c('thead',{ref:\"thead\",staticClass:\"user-list__header\",attrs:{\"role\":\"rowgroup\"}},[_vm._t(\"header\")],2),_vm._v(\" \"),_c('tbody',{staticClass:\"user-list__body\",style:(_vm.tbodyStyle)},_vm._l((_vm.renderedItems),function(item,i){return _c(_vm.dataComponent,_vm._b({key:item[_vm.dataKey],tag:\"component\",attrs:{\"user\":item,\"visible\":(i >= _vm.bufferItems || _vm.index <= _vm.bufferItems) && (i < _vm.shownItems - _vm.bufferItems)}},'component',_vm.extraProps,false))}),1),_vm._v(\" \"),_c('tfoot',{directives:[{name:\"element-visibility\",rawName:\"v-element-visibility\",value:(_vm.handleFooterVisibility),expression:\"handleFooterVisibility\"}],ref:\"tfoot\",staticClass:\"user-list__footer\",attrs:{\"role\":\"rowgroup\"}},[_vm._t(\"footer\")],2)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=style&index=0&id=21942da5&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=style&index=0&id=21942da5&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VirtualList.vue?vue&type=template&id=21942da5&scoped=true\"\nimport script from \"./VirtualList.vue?vue&type=script&lang=ts\"\nexport * from \"./VirtualList.vue?vue&type=script&lang=ts\"\nimport style0 from \"./VirtualList.vue?vue&type=style&index=0&id=21942da5&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"21942da5\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcDialog',_vm._g({staticClass:\"dialog\",attrs:{\"size\":\"small\",\"name\":_vm.t('settings', 'New account'),\"out-transition\":\"\"},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('NcButton',{staticClass:\"dialog__submit\",attrs:{\"data-test\":\"submit\",\"form\":\"new-user-form\",\"type\":\"primary\",\"native-type\":\"submit\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Add new account'))+\"\\n\\t\\t\")])]},proxy:true}])},_vm.$listeners),[_c('form',{staticClass:\"dialog__form\",attrs:{\"id\":\"new-user-form\",\"data-test\":\"form\",\"disabled\":_vm.loading.all},on:{\"submit\":function($event){$event.preventDefault();return _vm.createUser.apply(null, arguments)}}},[_c('NcTextField',{ref:\"username\",staticClass:\"dialog__item\",attrs:{\"data-test\":\"username\",\"value\":_vm.newUser.id,\"disabled\":_vm.settings.newUserGenerateUserID,\"label\":_vm.usernameLabel,\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"spellcheck\":\"false\",\"pattern\":\"[a-zA-Z0-9 _\\\\.@\\\\-']+\",\"required\":\"\"},on:{\"update:value\":function($event){return _vm.$set(_vm.newUser, \"id\", $event)}}}),_vm._v(\" \"),_c('NcTextField',{staticClass:\"dialog__item\",attrs:{\"data-test\":\"displayName\",\"value\":_vm.newUser.displayName,\"label\":_vm.t('settings', 'Display name'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"spellcheck\":\"false\"},on:{\"update:value\":function($event){return _vm.$set(_vm.newUser, \"displayName\", $event)}}}),_vm._v(\" \"),(!_vm.settings.newUserRequireEmail)?_c('span',{staticClass:\"dialog__hint\",attrs:{\"id\":\"password-email-hint\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Either password or email is required'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcPasswordField',{ref:\"password\",staticClass:\"dialog__item\",attrs:{\"data-test\":\"password\",\"value\":_vm.newUser.password,\"minlength\":_vm.minPasswordLength,\"maxlength\":469,\"aria-describedby\":\"password-email-hint\",\"label\":_vm.newUser.mailAddress === '' ? _vm.t('settings', 'Password (required)') : _vm.t('settings', 'Password'),\"autocapitalize\":\"none\",\"autocomplete\":\"new-password\",\"spellcheck\":\"false\",\"required\":_vm.newUser.mailAddress === ''},on:{\"update:value\":function($event){return _vm.$set(_vm.newUser, \"password\", $event)}}}),_vm._v(\" \"),_c('NcTextField',{staticClass:\"dialog__item\",attrs:{\"data-test\":\"email\",\"type\":\"email\",\"value\":_vm.newUser.mailAddress,\"aria-describedby\":\"password-email-hint\",\"label\":_vm.newUser.password === '' || _vm.settings.newUserRequireEmail ? _vm.t('settings', 'Email (required)') : _vm.t('settings', 'Email'),\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"spellcheck\":\"false\",\"required\":_vm.newUser.password === '' || _vm.settings.newUserRequireEmail},on:{\"update:value\":function($event){return _vm.$set(_vm.newUser, \"mailAddress\", $event)}}}),_vm._v(\" \"),_c('div',{staticClass:\"dialog__item\"},[_c('NcSelect',{staticClass:\"dialog__select\",attrs:{\"data-test\":\"groups\",\"input-label\":!_vm.settings.isAdmin && !_vm.settings.isDelegatedAdmin ? _vm.t('settings', 'Member of the following groups (required)') : _vm.t('settings', 'Member of the following groups'),\"placeholder\":_vm.t('settings', 'Set account groups'),\"disabled\":_vm.loading.groups || _vm.loading.all,\"options\":_vm.availableGroups,\"value\":_vm.newUser.groups,\"label\":\"name\",\"close-on-select\":false,\"multiple\":true,\"taggable\":_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin,\"required\":!_vm.settings.isAdmin && !_vm.settings.isDelegatedAdmin,\"create-option\":(value) => ({ id: value, name: value, isCreating: true })},on:{\"search\":_vm.searchGroups,\"option:created\":_vm.createGroup,\"option:deselected\":_vm.removeGroup,\"option:selected\":options => _vm.addGroup(options.at(-1))}})],1),_vm._v(\" \"),_c('div',{staticClass:\"dialog__item\"},[_c('NcSelect',{staticClass:\"dialog__select\",attrs:{\"input-label\":_vm.t('settings', 'Admin of the following groups'),\"placeholder\":_vm.t('settings', 'Set account as admin for …'),\"disabled\":_vm.loading.groups || _vm.loading.all,\"options\":_vm.availableGroups,\"close-on-select\":false,\"multiple\":true,\"label\":\"name\"},on:{\"search\":_vm.searchGroups},model:{value:(_vm.newUser.subAdminsGroups),callback:function ($$v) {_vm.$set(_vm.newUser, \"subAdminsGroups\", $$v)},expression:\"newUser.subAdminsGroups\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"dialog__item\"},[_c('NcSelect',{staticClass:\"dialog__select\",attrs:{\"input-label\":_vm.t('settings', 'Quota'),\"placeholder\":_vm.t('settings', 'Set account quota'),\"options\":_vm.quotaOptions,\"clearable\":false,\"taggable\":true,\"create-option\":_vm.validateQuota},model:{value:(_vm.newUser.quota),callback:function ($$v) {_vm.$set(_vm.newUser, \"quota\", $$v)},expression:\"newUser.quota\"}})],1),_vm._v(\" \"),(_vm.showConfig.showLanguages)?_c('div',{staticClass:\"dialog__item\"},[_c('NcSelect',{staticClass:\"dialog__select\",attrs:{\"input-label\":_vm.t('settings', 'Language'),\"placeholder\":_vm.t('settings', 'Set default language'),\"clearable\":false,\"selectable\":option => !option.languages,\"filter-by\":_vm.languageFilterBy,\"options\":_vm.languages,\"label\":\"name\"},model:{value:(_vm.newUser.language),callback:function ($$v) {_vm.$set(_vm.newUser, \"language\", $$v)},expression:\"newUser.language\"}})],1):_vm._e(),_vm._v(\" \"),_c('div',{class:['dialog__item dialog__managers', { 'icon-loading-small': _vm.loading.manager }]},[_c('NcSelect',{staticClass:\"dialog__select\",attrs:{\"input-label\":_vm.managerInputLabel,\"placeholder\":_vm.managerLabel,\"options\":_vm.possibleManagers,\"user-select\":true,\"label\":\"displayname\"},on:{\"search\":_vm.searchUserManager},model:{value:(_vm.newUser.manager),callback:function ($$v) {_vm.$set(_vm.newUser, \"manager\", $$v)},expression:\"newUser.manager\"}})],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewUserDialog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewUserDialog.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewUserDialog.vue?vue&type=style&index=0&id=3d23637c&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewUserDialog.vue?vue&type=style&index=0&id=3d23637c&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewUserDialog.vue?vue&type=template&id=3d23637c&scoped=true\"\nimport script from \"./NewUserDialog.vue?vue&type=script&lang=js\"\nexport * from \"./NewUserDialog.vue?vue&type=script&lang=js\"\nimport style0 from \"./NewUserDialog.vue?vue&type=style&index=0&id=3d23637c&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3d23637c\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListFooter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListFooter.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"footer\"},[_c('th',{attrs:{\"scope\":\"row\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('settings', 'Total rows summary')))])]),_vm._v(\" \"),_c('td',{staticClass:\"footer__cell footer__cell--loading\"},[(_vm.loading)?_c('NcLoadingIcon',{attrs:{\"title\":_vm.t('settings', 'Loading accounts …'),\"size\":32}}):_vm._e()],1),_vm._v(\" \"),_c('td',{staticClass:\"footer__cell footer__cell--count footer__cell--multiline\"},[_c('span',{attrs:{\"aria-describedby\":\"user-count-desc\"}},[_vm._v(_vm._s(_vm.userCount))]),_vm._v(\" \"),_c('span',{staticClass:\"hidden-visually\",attrs:{\"id\":\"user-count-desc\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Scroll to load more rows'))+\"\\n\\t\\t\")])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListFooter.vue?vue&type=style&index=0&id=20636959&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListFooter.vue?vue&type=style&index=0&id=20636959&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserListFooter.vue?vue&type=template&id=20636959&scoped=true\"\nimport script from \"./UserListFooter.vue?vue&type=script&lang=ts\"\nexport * from \"./UserListFooter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./UserListFooter.vue?vue&type=style&index=0&id=20636959&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"20636959\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListHeader.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"header\"},[_c('th',{staticClass:\"header__cell header__cell--avatar\",attrs:{\"data-cy-user-list-header-avatar\":\"\",\"scope\":\"col\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Avatar'))+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell header__cell--displayname\",attrs:{\"data-cy-user-list-header-displayname\":\"\",\"scope\":\"col\"}},[_c('strong',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Display name'))+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell header__cell--username\",attrs:{\"data-cy-user-list-header-username\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Account name'))+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell\",class:{ 'header__cell--obfuscated': _vm.hasObfuscated },attrs:{\"data-cy-user-list-header-password\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.passwordLabel))])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell\",attrs:{\"data-cy-user-list-header-email\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Email')))])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell header__cell--large\",attrs:{\"data-cy-user-list-header-groups\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Groups')))])]),_vm._v(\" \"),(_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin)?_c('th',{staticClass:\"header__cell header__cell--large\",attrs:{\"data-cy-user-list-header-subadmins\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Group admin for')))])]):_vm._e(),_vm._v(\" \"),_c('th',{staticClass:\"header__cell\",attrs:{\"data-cy-user-list-header-quota\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Quota')))])]),_vm._v(\" \"),(_vm.showConfig.showLanguages)?_c('th',{staticClass:\"header__cell header__cell--large\",attrs:{\"data-cy-user-list-header-languages\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Language')))])]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showUserBackend || _vm.showConfig.showStoragePath)?_c('th',{staticClass:\"header__cell header__cell--large\",attrs:{\"data-cy-user-list-header-storage-location\":\"\",\"scope\":\"col\"}},[(_vm.showConfig.showUserBackend)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Account backend'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showStoragePath)?_c('span',{staticClass:\"header__subtitle\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Storage location'))+\"\\n\\t\\t\")]):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showFirstLogin)?_c('th',{staticClass:\"header__cell\",attrs:{\"data-cy-user-list-header-first-login\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'First login')))])]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showLastLogin)?_c('th',{staticClass:\"header__cell\",attrs:{\"data-cy-user-list-header-last-login\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Last login')))])]):_vm._e(),_vm._v(\" \"),_c('th',{staticClass:\"header__cell header__cell--large header__cell--fill\",attrs:{\"data-cy-user-list-header-manager\":\"\",\"scope\":\"col\"}},[_c('span',[_vm._v(_vm._s(_vm.t('settings', 'Manager')))])]),_vm._v(\" \"),_c('th',{staticClass:\"header__cell header__cell--actions\",attrs:{\"data-cy-user-list-header-actions\":\"\",\"scope\":\"col\"}},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Account actions'))+\"\\n\\t\\t\")])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListHeader.vue?vue&type=style&index=0&id=5c0f8828&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListHeader.vue?vue&type=style&index=0&id=5c0f8828&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserListHeader.vue?vue&type=template&id=5c0f8828&scoped=true\"\nimport script from \"./UserListHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./UserListHeader.vue?vue&type=script&lang=ts\"\nimport style0 from \"./UserListHeader.vue?vue&type=style&index=0&id=5c0f8828&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5c0f8828\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('tr',{staticClass:\"user-list__row\",attrs:{\"data-cy-user-row\":_vm.user.id}},[_c('td',{staticClass:\"row__cell row__cell--avatar\",attrs:{\"data-cy-user-list-cell-avatar\":\"\"}},[(_vm.isLoadingUser)?_c('NcLoadingIcon',{attrs:{\"name\":_vm.t('settings', 'Loading account …'),\"size\":32}}):(_vm.visible)?_c('NcAvatar',{attrs:{\"disable-menu\":\"\",\"show-user-status\":false,\"user\":_vm.user.id}}):_vm._e()],1),_vm._v(\" \"),_c('td',{staticClass:\"row__cell row__cell--displayname\",attrs:{\"data-cy-user-list-cell-displayname\":\"\"}},[(_vm.editing && _vm.user.backendCapabilities.setDisplayName)?[_c('NcTextField',{ref:\"displayNameField\",staticClass:\"user-row-text-field\",class:{ 'icon-loading-small': _vm.loading.displayName },attrs:{\"data-cy-user-list-input-displayname\":\"\",\"data-loading\":_vm.loading.displayName || undefined,\"trailing-button-label\":_vm.t('settings', 'Submit'),\"show-trailing-button\":true,\"disabled\":_vm.loading.displayName || _vm.isLoadingField,\"label\":_vm.t('settings', 'Change display name'),\"trailing-button-icon\":\"arrowRight\",\"value\":_vm.editedDisplayName,\"autocapitalize\":\"off\",\"autocomplete\":\"off\",\"spellcheck\":\"false\"},on:{\"update:value\":function($event){_vm.editedDisplayName=$event},\"trailing-button-click\":_vm.updateDisplayName}})]:(!_vm.isObfuscated)?_c('strong',{attrs:{\"title\":_vm.user.displayname?.length > 20 ? _vm.user.displayname : null}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.user.displayname)+\"\\n\\t\\t\")]):_vm._e()],2),_vm._v(\" \"),_c('td',{staticClass:\"row__cell row__cell--username\",attrs:{\"data-cy-user-list-cell-username\":\"\"}},[_c('span',{staticClass:\"row__subtitle\"},[_vm._v(_vm._s(_vm.user.id))])]),_vm._v(\" \"),_c('td',{staticClass:\"row__cell\",class:{ 'row__cell--obfuscated': _vm.hasObfuscated },attrs:{\"data-cy-user-list-cell-password\":\"\"}},[(_vm.editing && _vm.settings.canChangePassword && _vm.user.backendCapabilities.setPassword)?[_c('NcTextField',{staticClass:\"user-row-text-field\",class:{'icon-loading-small': _vm.loading.password},attrs:{\"data-cy-user-list-input-password\":\"\",\"data-loading\":_vm.loading.password || undefined,\"trailing-button-label\":_vm.t('settings', 'Submit'),\"show-trailing-button\":true,\"disabled\":_vm.loading.password || _vm.isLoadingField,\"minlength\":_vm.minPasswordLength,\"maxlength\":\"469\",\"label\":_vm.t('settings', 'Set new password'),\"trailing-button-icon\":\"arrowRight\",\"value\":_vm.editedPassword,\"autocapitalize\":\"off\",\"autocomplete\":\"new-password\",\"required\":\"\",\"spellcheck\":\"false\",\"type\":\"password\"},on:{\"update:value\":function($event){_vm.editedPassword=$event},\"trailing-button-click\":_vm.updatePassword}})]:(_vm.isObfuscated)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'You do not have permissions to see the details of this account'))+\"\\n\\t\\t\")]):_vm._e()],2),_vm._v(\" \"),_c('td',{staticClass:\"row__cell\",attrs:{\"data-cy-user-list-cell-email\":\"\"}},[(_vm.editing)?[_c('NcTextField',{staticClass:\"user-row-text-field\",class:{'icon-loading-small': _vm.loading.mailAddress},attrs:{\"data-cy-user-list-input-email\":\"\",\"data-loading\":_vm.loading.mailAddress || undefined,\"show-trailing-button\":true,\"trailing-button-label\":_vm.t('settings', 'Submit'),\"label\":_vm.t('settings', 'Set new email address'),\"disabled\":_vm.loading.mailAddress || _vm.isLoadingField,\"trailing-button-icon\":\"arrowRight\",\"value\":_vm.editedMail,\"autocapitalize\":\"off\",\"autocomplete\":\"email\",\"spellcheck\":\"false\",\"type\":\"email\"},on:{\"update:value\":function($event){_vm.editedMail=$event},\"trailing-button-click\":_vm.updateEmail}})]:(!_vm.isObfuscated)?_c('span',{attrs:{\"title\":_vm.user.email?.length > 20 ? _vm.user.email : null}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.user.email)+\"\\n\\t\\t\")]):_vm._e()],2),_vm._v(\" \"),_c('td',{staticClass:\"row__cell row__cell--large row__cell--multiline\",attrs:{\"data-cy-user-list-cell-groups\":\"\"}},[(_vm.editing)?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'groups' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Add account to group'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{attrs:{\"data-cy-user-list-input-groups\":\"\",\"data-loading\":_vm.loading.groups || undefined,\"input-id\":'groups' + _vm.uniqueId,\"close-on-select\":false,\"disabled\":_vm.isLoadingField || _vm.loading.groupsDetails,\"loading\":_vm.loading.groups,\"multiple\":true,\"append-to-body\":false,\"options\":_vm.availableGroups,\"placeholder\":_vm.t('settings', 'Add account to group'),\"taggable\":_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin,\"value\":_vm.userGroups,\"label\":\"name\",\"no-wrap\":true,\"create-option\":(value) => ({ id: value, name: value, isCreating: true })},on:{\"search\":_vm.searchGroups,\"option:created\":_vm.createGroup,\"option:selected\":options => _vm.addUserGroup(options.at(-1)),\"option:deselected\":_vm.removeUserGroup}})]:(!_vm.isObfuscated)?_c('span',{attrs:{\"title\":_vm.userGroupsLabels?.length > 40 ? _vm.userGroupsLabels : null}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.userGroupsLabels)+\"\\n\\t\\t\")]):_vm._e()],2),_vm._v(\" \"),(_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin)?_c('td',{staticClass:\"row__cell row__cell--large row__cell--multiline\",attrs:{\"data-cy-user-list-cell-subadmins\":\"\"}},[(_vm.editing && (_vm.settings.isAdmin || _vm.settings.isDelegatedAdmin))?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'subadmins' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Set account as admin for'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{attrs:{\"data-cy-user-list-input-subadmins\":\"\",\"data-loading\":_vm.loading.subadmins || undefined,\"input-id\":'subadmins' + _vm.uniqueId,\"close-on-select\":false,\"disabled\":_vm.isLoadingField || _vm.loading.subAdminGroupsDetails,\"loading\":_vm.loading.subadmins,\"label\":\"name\",\"append-to-body\":false,\"multiple\":true,\"no-wrap\":true,\"options\":_vm.availableSubAdminGroups,\"placeholder\":_vm.t('settings', 'Set account as admin for'),\"value\":_vm.userSubAdminGroups},on:{\"search\":_vm.searchGroups,\"option:deselected\":_vm.removeUserSubAdmin,\"option:selected\":options => _vm.addUserSubAdmin(options.at(-1))}})]:(!_vm.isObfuscated)?_c('span',{attrs:{\"title\":_vm.userSubAdminGroupsLabels?.length > 40 ? _vm.userSubAdminGroupsLabels : null}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.userSubAdminGroupsLabels)+\"\\n\\t\\t\")]):_vm._e()],2):_vm._e(),_vm._v(\" \"),_c('td',{staticClass:\"row__cell\",attrs:{\"data-cy-user-list-cell-quota\":\"\"}},[(_vm.editing)?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'quota' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Select account quota'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{attrs:{\"close-on-select\":true,\"create-option\":_vm.validateQuota,\"data-cy-user-list-input-quota\":\"\",\"data-loading\":_vm.loading.quota || undefined,\"disabled\":_vm.isLoadingField,\"loading\":_vm.loading.quota,\"append-to-body\":false,\"clearable\":false,\"input-id\":'quota' + _vm.uniqueId,\"options\":_vm.quotaOptions,\"placeholder\":_vm.t('settings', 'Select account quota'),\"taggable\":true},on:{\"option:selected\":_vm.setUserQuota},model:{value:(_vm.editedUserQuota),callback:function ($$v) {_vm.editedUserQuota=$$v},expression:\"editedUserQuota\"}})]:(!_vm.isObfuscated)?[_c('span',{attrs:{\"id\":'quota-progress' + _vm.uniqueId}},[_vm._v(_vm._s(_vm.userQuota)+\" (\"+_vm._s(_vm.usedSpace)+\")\")]),_vm._v(\" \"),_c('NcProgressBar',{staticClass:\"row__progress\",class:{\n\t\t\t\t\t'row__progress--warn': _vm.usedQuota > 80,\n\t\t\t\t},attrs:{\"aria-labelledby\":'quota-progress' + _vm.uniqueId,\"value\":_vm.usedQuota}})]:_vm._e()],2),_vm._v(\" \"),(_vm.showConfig.showLanguages)?_c('td',{staticClass:\"row__cell row__cell--large\",attrs:{\"data-cy-user-list-cell-language\":\"\"}},[(_vm.editing)?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'language' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Set the language'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{attrs:{\"id\":'language' + _vm.uniqueId,\"data-cy-user-list-input-language\":\"\",\"data-loading\":_vm.loading.languages || undefined,\"allow-empty\":false,\"disabled\":_vm.isLoadingField,\"loading\":_vm.loading.languages,\"clearable\":false,\"append-to-body\":false,\"options\":_vm.availableLanguages,\"placeholder\":_vm.t('settings', 'No language set'),\"value\":_vm.userLanguage,\"label\":\"name\"},on:{\"input\":_vm.setUserLanguage}})]:(!_vm.isObfuscated)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.userLanguage.name)+\"\\n\\t\\t\")]):_vm._e()],2):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showUserBackend || _vm.showConfig.showStoragePath)?_c('td',{staticClass:\"row__cell row__cell--large\",attrs:{\"data-cy-user-list-cell-storage-location\":\"\"}},[(!_vm.isObfuscated)?[(_vm.showConfig.showUserBackend)?_c('span',[_vm._v(_vm._s(_vm.user.backend))]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showStoragePath)?_c('span',{staticClass:\"row__subtitle\",attrs:{\"title\":_vm.user.storageLocation}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.user.storageLocation)+\"\\n\\t\\t\\t\")]):_vm._e()]:_vm._e()],2):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showFirstLogin)?_c('td',{staticClass:\"row__cell\",attrs:{\"data-cy-user-list-cell-first-login\":\"\"}},[(!_vm.isObfuscated)?_c('span',[_vm._v(_vm._s(_vm.userFirstLogin))]):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.showConfig.showLastLogin)?_c('td',{staticClass:\"row__cell\",attrs:{\"title\":_vm.userLastLoginTooltip,\"data-cy-user-list-cell-last-login\":\"\"}},[(!_vm.isObfuscated)?_c('span',[_vm._v(_vm._s(_vm.userLastLogin))]):_vm._e()]):_vm._e(),_vm._v(\" \"),_c('td',{staticClass:\"row__cell row__cell--large row__cell--fill\",attrs:{\"data-cy-user-list-cell-manager\":\"\"}},[(_vm.editing)?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'manager' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.managerLabel)+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{staticClass:\"select--fill\",attrs:{\"data-cy-user-list-input-manager\":\"\",\"data-loading\":_vm.loading.manager || undefined,\"input-id\":'manager' + _vm.uniqueId,\"disabled\":_vm.isLoadingField,\"loading\":_vm.loadingPossibleManagers || _vm.loading.manager,\"options\":_vm.possibleManagers,\"placeholder\":_vm.managerLabel,\"label\":\"displayname\",\"filterable\":false,\"internal-search\":false,\"clearable\":true},on:{\"open\":_vm.searchInitialUserManager,\"search\":_vm.searchUserManager,\"update:model-value\":_vm.updateUserManager},model:{value:(_vm.currentManager),callback:function ($$v) {_vm.currentManager=$$v},expression:\"currentManager\"}})]:(!_vm.isObfuscated)?_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.user.manager)+\"\\n\\t\\t\")]):_vm._e()],2),_vm._v(\" \"),_c('td',{staticClass:\"row__cell row__cell--actions\",attrs:{\"data-cy-user-list-cell-actions\":\"\"}},[(_vm.visible && !_vm.isObfuscated && _vm.canEdit && !_vm.loading.all)?_c('UserRowActions',{attrs:{\"actions\":_vm.userActions,\"disabled\":_vm.isLoadingField,\"edit\":_vm.editing,\"user\":_vm.user},on:{\"update:edit\":_vm.toggleEdit}}):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcActions',{attrs:{\"aria-label\":_vm.t('settings', 'Toggle account actions menu'),\"disabled\":_vm.disabled,\"inline\":1}},[_c('NcActionButton',{attrs:{\"data-cy-user-list-action-toggle-edit\":`${_vm.edit}`,\"disabled\":_vm.disabled},on:{\"click\":_vm.toggleEdit},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{key:_vm.editSvg,attrs:{\"svg\":_vm.editSvg,\"aria-hidden\":\"true\"}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.edit ? _vm.t('settings', 'Done') : _vm.t('settings', 'Edit'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_vm._l((_vm.enabledActions),function({ action, icon, text },index){return _c('NcActionButton',{key:index,attrs:{\"disabled\":_vm.disabled,\"aria-label\":text,\"icon\":icon,\"close-after-click\":\"\"},on:{\"click\":(event) => action(event, { ..._vm.user })},scopedSlots:_vm._u([(_vm.isSvg(icon))?{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"svg\":icon,\"aria-hidden\":\"true\"}})]},proxy:true}:null],null,true)},[_vm._v(\"\\n\\t\\t\"+_vm._s(text)+\"\\n\\t\\t\")])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRowActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRowActions.vue?vue&type=script&lang=ts\"","import {XMLParser, XMLValidator} from 'fast-xml-parser';\n\nexport default function isSvg(string) {\n\tif (typeof string !== 'string') {\n\t\tthrow new TypeError(`Expected a \\`string\\`, got \\`${typeof string}\\``);\n\t}\n\n\tstring = string.trim();\n\n\tif (string.length === 0) {\n\t\treturn false;\n\t}\n\n\t// Has to be `!==` as it can also return an object with error info.\n\tif (XMLValidator.validate(string) !== true) {\n\t\treturn false;\n\t}\n\n\tlet jsonObject;\n\tconst parser = new XMLParser();\n\n\ttry {\n\t\tjsonObject = parser.parse(string);\n\t} catch {\n\t\treturn false;\n\t}\n\n\tif (!jsonObject) {\n\t\treturn false;\n\t}\n\n\tif (!Object.keys(jsonObject).some(x => x.toLowerCase() === 'svg')) {\n\t\treturn false;\n\t}\n\n\treturn true;\n}\n","import { render, staticRenderFns } from \"./UserRowActions.vue?vue&type=template&id=7e1868f4\"\nimport script from \"./UserRowActions.vue?vue&type=script&lang=ts\"\nexport * from \"./UserRowActions.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { N as NcActionButton } from \"./chunks/NcActionButton-rjMoymt-.mjs\";\nimport { N as NcActionButtonGroup } from \"./chunks/NcActionButtonGroup-hhh3GBSS.mjs\";\nimport NcActionCaption from \"./Components/NcActionCaption.mjs\";\nimport { N as NcActionCheckbox } from \"./chunks/NcActionCheckbox-DSMKeccY.mjs\";\nimport { N as NcActionInput } from \"./chunks/NcActionInput-CQ_WEPqQ.mjs\";\nimport NcActionLink from \"./Components/NcActionLink.mjs\";\nimport { N as NcActionRadio } from \"./chunks/NcActionRadio-yAm71xxU.mjs\";\nimport NcActionRouter from \"./Components/NcActionRouter.mjs\";\nimport { N as NcActions } from \"./chunks/NcActions-BKZA1xVL.mjs\";\nimport NcActionSeparator from \"./Components/NcActionSeparator.mjs\";\nimport NcActionText from \"./Components/NcActionText.mjs\";\nimport { N as NcActionTextEditable } from \"./chunks/NcActionTextEditable-xWQGdOVl.mjs\";\nimport { N as NcAppContent } from \"./chunks/NcAppContent-BS7BiMG0.mjs\";\nimport NcAppContentDetails from \"./Components/NcAppContentDetails.mjs\";\nimport NcAppContentList from \"./Components/NcAppContentList.mjs\";\nimport { N as NcAppNavigation } from \"./chunks/NcAppNavigation-BvEa92PC.mjs\";\nimport { N as NcAppNavigationCaption } from \"./chunks/NcAppNavigationCaption-hDsiQMLr.mjs\";\nimport NcAppNavigationIconBullet from \"./Components/NcAppNavigationIconBullet.mjs\";\nimport { N as NcAppNavigationItem } from \"./chunks/NcAppNavigationItem-NIMhmJHh.mjs\";\nimport NcAppNavigationList from \"./Components/NcAppNavigationList.mjs\";\nimport NcAppNavigationNew from \"./Components/NcAppNavigationNew.mjs\";\nimport { N as NcAppNavigationNewItem } from \"./chunks/NcAppNavigationNewItem-D4fJeBl0.mjs\";\nimport { N as NcAppNavigationSearch } from \"./chunks/NcAppNavigationSearch-B9OkdsuE.mjs\";\nimport { N as NcAppNavigationSettings } from \"./chunks/NcAppNavigationSettings-BV34ogWP.mjs\";\nimport NcAppNavigationSpacer from \"./Components/NcAppNavigationSpacer.mjs\";\nimport { N as NcAppSettingsDialog } from \"./chunks/NcAppSettingsDialog-BwsIc_QT.mjs\";\nimport NcAppSettingsSection from \"./Components/NcAppSettingsSection.mjs\";\nimport { N as NcAppSidebar } from \"./chunks/NcAppSidebar-BJgPYOcZ.mjs\";\nimport { N as NcAppSidebarHeader } from \"./chunks/NcAppSidebarHeader-G2VD8Nfl.mjs\";\nimport NcAppSidebarTab from \"./Components/NcAppSidebarTab.mjs\";\nimport { N as NcAvatar } from \"./chunks/NcAvatar-CgF-MFtU.mjs\";\nimport { u } from \"./chunks/NcAvatar-CgF-MFtU.mjs\";\nimport { N as NcBlurHash } from \"./chunks/NcBlurHash-do2wxY-0.mjs\";\nimport { N as NcBreadcrumb } from \"./chunks/NcBreadcrumb-DJpYjXCe.mjs\";\nimport { N as NcBreadcrumbs } from \"./chunks/NcBreadcrumbs-B722pBOd.mjs\";\nimport NcButton from \"./Components/NcButton.mjs\";\nimport { N as NcCheckboxRadioSwitch } from \"./chunks/NcCheckboxRadioSwitch-ip_mRd2T.mjs\";\nimport { N as NcCollectionList } from \"./chunks/NcCollectionList-Khg3X3Zq.mjs\";\nimport { N as NcColorPicker } from \"./chunks/NcColorPicker-MXMbRaLk.mjs\";\nimport { N as NcContent } from \"./chunks/NcContent-BbmqoSY7.mjs\";\nimport { N as NcCounterBubble } from \"./chunks/NcCounterBubble-CDfRYl8B.mjs\";\nimport { N as NcDashboardWidget } from \"./chunks/NcDashboardWidget-D0cFVt4i.mjs\";\nimport { N as NcDashboardWidgetItem } from \"./chunks/NcDashboardWidgetItem-D33MR-DH.mjs\";\nimport { N as NcDateTime } from \"./chunks/NcDateTime-kanSdMgW.mjs\";\nimport NcDateTimePicker from \"./Components/NcDateTimePicker.mjs\";\nimport NcDateTimePickerNative from \"./Components/NcDateTimePickerNative.mjs\";\nimport { N as NcDialog } from \"./chunks/NcDialog-C1b3UtA7.mjs\";\nimport { N as NcDialogButton } from \"./chunks/NcDialogButton-Di9tU3e_.mjs\";\nimport NcEllipsisedOption from \"./Components/NcEllipsisedOption.mjs\";\nimport { N as NcEmojiPicker } from \"./chunks/NcEmojiPicker-DJHvkF--.mjs\";\nimport NcEmptyContent from \"./Components/NcEmptyContent.mjs\";\nimport NcGuestContent from \"./Components/NcGuestContent.mjs\";\nimport NcHeaderButton from \"./Components/NcHeaderButton.mjs\";\nimport { N as NcHeaderMenu } from \"./chunks/NcHeaderMenu-Dq_Avv2T.mjs\";\nimport { N as NcHighlight } from \"./chunks/index-Bz6q9mZw.mjs\";\nimport { N as NcIconSvgWrapper } from \"./chunks/NcIconSvgWrapper-Cb-cPj1R.mjs\";\nimport { N as NcInputField } from \"./chunks/NcInputField-BNSfmQqu.mjs\";\nimport { N as NcListItem } from \"./chunks/NcListItem-CnxZixD_.mjs\";\nimport { N as NcListItemIcon } from \"./chunks/NcListItemIcon-CTfYEjBB.mjs\";\nimport NcLoadingIcon from \"./Components/NcLoadingIcon.mjs\";\nimport NcModal from \"./Components/NcModal.mjs\";\nimport NcNoteCard from \"./Components/NcNoteCard.mjs\";\nimport { N as NcPasswordField } from \"./chunks/NcPasswordField-DSdrAkZy.mjs\";\nimport { N as NcPopover } from \"./chunks/NcPopover-CAJVK-MR.mjs\";\nimport { N as NcProgressBar } from \"./chunks/NcProgressBar-CI_nOrPg.mjs\";\nimport { N as NcRelatedResourcesPanel } from \"./chunks/NcRelatedResourcesPanel-DyvwxDjI.mjs\";\nimport { N as NcMentionBubble } from \"./chunks/index-B8gPNa8c.mjs\";\nimport { r } from \"./chunks/index-B8gPNa8c.mjs\";\nimport { N as NcAutoCompleteResult, a as NcRichContenteditable } from \"./chunks/NcRichContenteditable-cpptFUeI.mjs\";\nimport { N as NcRichText } from \"./chunks/NcRichText-CmuVmSzl.mjs\";\nimport { N, h, d, i, b, r as r2, c, a } from \"./chunks/index-56SXuvlv.mjs\";\nimport \"@vueuse/core\";\nimport \"vue\";\nimport \"vue-router\";\nimport { a as a2, g, b as b2, c as c2, d as d2, s } from \"./chunks/referencePickerModal-CtMUY45l.mjs\";\nimport \"unist-util-visit\";\nimport \"unist-builder\";\nimport \"@nextcloud/router\";\nimport \"@nextcloud/axios\";\nimport \"@nextcloud/sharing/public\";\nimport \"@nextcloud/auth\";\nimport { N as NcSelect } from \"./chunks/NcSelect-BUOuXJUQ.mjs\";\nimport { N as NcTextField } from \"./chunks/NcTextField-Do6wBDGH.mjs\";\nimport \"@nextcloud/event-bus\";\nimport { N as NcSavingIndicatorIcon } from \"./chunks/NcSavingIndicatorIcon-U7AIamCl.mjs\";\nimport { N as NcSelectTags } from \"./chunks/NcSelectTags-hP98xYkg.mjs\";\nimport { N as NcSelectUsers } from \"./chunks/NcSelectUsers-DaHVPRPE.mjs\";\nimport { N as NcSettingsInputText } from \"./chunks/NcSettingsInputText-BKoaCiQU.mjs\";\nimport { N as NcSettingsSection } from \"./chunks/NcSettingsSection-fe_YIg-L.mjs\";\nimport { N as NcSettingsSelectGroup } from \"./chunks/NcSettingsSelectGroup-SuQNKdqU.mjs\";\nimport { N as NcTextArea } from \"./chunks/NcTextArea-BFLuhsEv.mjs\";\nimport { N as NcThemeProvider } from \"./chunks/NcThemeProvider-25ResoIv.mjs\";\nimport { N as NcTimezonePicker } from \"./chunks/NcTimezonePicker-bIwFQlmV.mjs\";\nimport { N as NcUserBubble } from \"./chunks/NcUserBubble-BmPOx3MW.mjs\";\nimport { N as NcUserStatusIcon } from \"./chunks/NcUserStatusIcon-DQr5EGWZ.mjs\";\nimport NcVNodes from \"./Components/NcVNodes.mjs\";\nimport { useFormatDateTime, useFormatRelativeTime, useFormatTime } from \"./Composables/useFormatDateTime.mjs\";\nimport { useHotKey } from \"./Composables/useHotKey.mjs\";\nimport { useIsDarkTheme, useIsDarkThemeElement } from \"./Composables/useIsDarkTheme.mjs\";\nimport { isFullscreenState, useIsFullscreen } from \"./Composables/useIsFullscreen.mjs\";\nimport { MOBILE_BREAKPOINT, MOBILE_SMALL_BREAKPOINT, isMobileState, useIsMobile, useIsSmallMobile } from \"./Composables/useIsMobile.mjs\";\nimport { isA11yActivation } from \"./Functions/a11y.mjs\";\nimport { getEnabledContactsMenuActions, registerContactsMenuAction } from \"./Functions/contactsMenu.mjs\";\nimport { spawnDialog } from \"./Functions/dialog.mjs\";\nimport { E, a as a3, e, g as g2, s as s2 } from \"./chunks/emoji-BY_D0V5K.mjs\";\nimport { checkIfDarkTheme, isDarkTheme } from \"./Functions/isDarkTheme.mjs\";\nimport { preloadImage } from \"./Functions/preloadImage.mjs\";\nimport { usernameToColor } from \"./Functions/usernameToColor.mjs\";\nimport directive from \"./Directives/Focus.mjs\";\nimport { directive as directive$1 } from \"./Directives/Linkify.mjs\";\nimport \"./Directives/Tooltip.mjs\";\nimport { default as default2 } from \"./Mixins/clickOutsideOptions.mjs\";\nimport { default as default3 } from \"./Mixins/isFullscreen.mjs\";\nimport { default as default4 } from \"./Mixins/isMobile.mjs\";\nimport { VTooltip } from \"floating-vue\";\nimport { VTooltip as VTooltip2 } from \"floating-vue\";\nconst NcComponents = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n NcActionButton,\n NcActionButtonGroup,\n NcActionCaption,\n NcActionCheckbox,\n NcActionInput,\n NcActionLink,\n NcActionRadio,\n NcActionRouter,\n NcActionSeparator,\n NcActionText,\n NcActionTextEditable,\n NcActions,\n NcAppContent,\n NcAppContentDetails,\n NcAppContentList,\n NcAppNavigation,\n NcAppNavigationCaption,\n NcAppNavigationIconBullet,\n NcAppNavigationItem,\n NcAppNavigationList,\n NcAppNavigationNew,\n NcAppNavigationNewItem,\n NcAppNavigationSearch,\n NcAppNavigationSettings,\n NcAppNavigationSpacer,\n NcAppSettingsDialog,\n NcAppSettingsSection,\n NcAppSidebar,\n NcAppSidebarHeader,\n NcAppSidebarTab,\n NcAutoCompleteResult,\n NcAvatar,\n NcBlurHash,\n NcBreadcrumb,\n NcBreadcrumbs,\n NcButton,\n NcCheckboxRadioSwitch,\n NcCollectionList,\n NcColorPicker,\n NcContent,\n NcCounterBubble,\n NcDashboardWidget,\n NcDashboardWidgetItem,\n NcDateTime,\n NcDateTimePicker,\n NcDateTimePickerNative,\n NcDialog,\n NcDialogButton,\n NcEllipsisedOption,\n NcEmojiPicker,\n NcEmptyContent,\n NcGuestContent,\n NcHeaderButton,\n NcHeaderMenu,\n NcHighlight,\n NcIconSvgWrapper,\n NcInputField,\n NcListItem,\n NcListItemIcon,\n NcLoadingIcon,\n NcMentionBubble,\n NcModal,\n NcNoteCard,\n NcPasswordField,\n NcPopover,\n NcProgressBar,\n NcRelatedResourcesPanel,\n NcRichContenteditable,\n NcRichText,\n NcSavingIndicatorIcon,\n NcSelect,\n NcSelectTags,\n NcSelectUsers,\n NcSettingsInputText,\n NcSettingsSection,\n NcSettingsSelectGroup,\n NcTextArea,\n NcTextField,\n NcThemeProvider,\n NcTimezonePicker,\n NcUserBubble,\n NcUserStatusIcon,\n NcVNodes\n}, Symbol.toStringTag, { value: \"Module\" }));\nconst NcDirectives = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n Focus: directive,\n Linkify: directive$1,\n Tooltip: VTooltip\n}, Symbol.toStringTag, { value: \"Module\" }));\nconst NextcloudVuePlugin = {\n install(Vue) {\n Object.entries(NcComponents).forEach(([name, component]) => {\n Vue.component(component.name || name, component);\n });\n Object.entries(NcDirectives).forEach(([name, directive2]) => {\n Vue.directive(name, directive2);\n });\n }\n};\nexport {\n E as EmojiSkinTone,\n directive as Focus,\n directive$1 as Linkify,\n MOBILE_BREAKPOINT,\n MOBILE_SMALL_BREAKPOINT,\n NcActionButton,\n NcActionButtonGroup,\n NcActionCaption,\n NcActionCheckbox,\n NcActionInput,\n NcActionLink,\n NcActionRadio,\n NcActionRouter,\n NcActionSeparator,\n NcActionText,\n NcActionTextEditable,\n NcActions,\n NcAppContent,\n NcAppContentDetails,\n NcAppContentList,\n NcAppNavigation,\n NcAppNavigationCaption,\n NcAppNavigationIconBullet,\n NcAppNavigationItem,\n NcAppNavigationList,\n NcAppNavigationNew,\n NcAppNavigationNewItem,\n NcAppNavigationSearch,\n NcAppNavigationSettings,\n NcAppNavigationSpacer,\n NcAppSettingsDialog,\n NcAppSettingsSection,\n NcAppSidebar,\n NcAppSidebarHeader,\n NcAppSidebarTab,\n NcAutoCompleteResult,\n NcAvatar,\n NcBlurHash,\n NcBreadcrumb,\n NcBreadcrumbs,\n NcButton,\n NcCheckboxRadioSwitch,\n NcCollectionList,\n NcColorPicker,\n NcContent,\n NcCounterBubble,\n N as NcCustomPickerRenderResult,\n NcDashboardWidget,\n NcDashboardWidgetItem,\n NcDateTime,\n NcDateTimePicker,\n NcDateTimePickerNative,\n NcDialog,\n NcDialogButton,\n NcEllipsisedOption,\n NcEmojiPicker,\n NcEmptyContent,\n NcGuestContent,\n NcHeaderButton,\n NcHeaderMenu,\n NcHighlight,\n NcIconSvgWrapper,\n NcInputField,\n NcListItem,\n NcListItemIcon,\n NcLoadingIcon,\n NcMentionBubble,\n NcModal,\n NcNoteCard,\n NcPasswordField,\n NcPopover,\n NcProgressBar,\n NcRelatedResourcesPanel,\n NcRichContenteditable,\n NcRichText,\n NcSavingIndicatorIcon,\n NcSelect,\n NcSelectTags,\n NcSelectUsers,\n NcSettingsInputText,\n NcSettingsSection,\n NcSettingsSelectGroup,\n NcTextArea,\n NcTextField,\n NcThemeProvider,\n NcTimezonePicker,\n NcUserBubble,\n NcUserStatusIcon,\n NcVNodes,\n NextcloudVuePlugin,\n VTooltip2 as Tooltip,\n a2 as anyLinkProviderId,\n checkIfDarkTheme,\n default2 as clickOutsideOptions,\n a3 as emojiAddRecent,\n e as emojiSearch,\n g2 as getCurrentSkinTone,\n getEnabledContactsMenuActions,\n g as getLinkWithPicker,\n b2 as getProvider,\n c2 as getProviders,\n h as hasInteractiveView,\n isA11yActivation,\n d as isCustomPickerElementRegistered,\n isDarkTheme,\n default3 as isFullscreen,\n isFullscreenState,\n default4 as isMobile,\n isMobileState,\n i as isWidgetRegistered,\n preloadImage,\n registerContactsMenuAction,\n b as registerCustomPickerElement,\n r2 as registerWidget,\n c as renderCustomPickerElement,\n a as renderWidget,\n r as richEditor,\n d2 as searchProvider,\n s2 as setCurrentSkinTone,\n s as sortProviders,\n spawnDialog,\n useFormatDateTime,\n useFormatRelativeTime,\n useFormatTime,\n useHotKey,\n useIsDarkTheme,\n useIsDarkThemeElement,\n useIsFullscreen,\n useIsMobile,\n useIsSmallMobile,\n u as userStatus,\n usernameToColor\n};\n//# sourceMappingURL=index.mjs.map\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { formatFileSize } from '@nextcloud/files'\nimport { useFormatDateTime } from '@nextcloud/vue'\n\nexport default {\n\tprops: {\n\t\tuser: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tsettings: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => ({}),\n\t\t},\n\t\tquotaOptions: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\t\tlanguages: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\texternalActions: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\t},\n\tsetup(props) {\n\t\tconst { formattedFullTime } = useFormatDateTime(props.user.firstLoginTimestamp * 1000, {\n\t\t\trelativeTime: false,\n\t\t\tformat: {\n\t\t\t\ttimeStyle: 'short',\n\t\t\t\tdateStyle: 'short',\n\t\t\t},\n\t\t})\n\t\treturn {\n\t\t\tformattedFullTime,\n\t\t}\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tselectedGroups: this.user.groups.map(id => ({ id, name: id })),\n\t\t\tselectedSubAdminGroups: this.user.subadmin.map(id => ({ id, name: id })),\n\t\t\tuserGroups: this.user.groups.map(id => ({ id, name: id })),\n\t\t\tuserSubAdminGroups: this.user.subadmin.map(id => ({ id, name: id })),\n\t\t}\n\t},\n\tcomputed: {\n\t\tshowConfig() {\n\t\t\treturn this.$store.getters.getShowConfig\n\t\t},\n\n\t\t/* QUOTA MANAGEMENT */\n\t\tusedSpace() {\n\t\t\tconst quotaUsed = this.user.quota.used > 0 ? this.user.quota.used : 0\n\t\t\treturn t('settings', '{size} used', { size: formatFileSize(quotaUsed, true) })\n\t\t},\n\n\t\tusedQuota() {\n\t\t\tlet quota = this.user.quota.quota\n\t\t\tif (quota > 0) {\n\t\t\t\tquota = Math.min(100, Math.round(this.user.quota.used / quota * 100))\n\t\t\t} else {\n\t\t\t\tconst usedInGB = this.user.quota.used / (10 * Math.pow(2, 30))\n\t\t\t\t// asymptotic curve approaching 50% at 10GB to visualize used stace with infinite quota\n\t\t\t\tquota = 95 * (1 - (1 / (usedInGB + 1)))\n\t\t\t}\n\t\t\treturn isNaN(quota) ? 0 : quota\n\t\t},\n\n\t\t// Mapping saved values to objects\n\t\tuserQuota() {\n\t\t\tif (this.user.quota.quota >= 0) {\n\t\t\t\t// if value is valid, let's map the quotaOptions or return custom quota\n\t\t\t\tconst humanQuota = formatFileSize(this.user.quota.quota)\n\t\t\t\tconst userQuota = this.quotaOptions.find(quota => quota.id === humanQuota)\n\t\t\t\treturn userQuota || { id: humanQuota, label: humanQuota }\n\t\t\t} else if (this.user.quota.quota === 'default') {\n\t\t\t\t// default quota is replaced by the proper value on load\n\t\t\t\treturn this.quotaOptions[0]\n\t\t\t}\n\t\t\treturn this.quotaOptions[1] // unlimited\n\t\t},\n\n\t\t/* PASSWORD POLICY? */\n\t\tminPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength\n\t\t},\n\n\t\t/* LANGUAGE */\n\t\tuserLanguage() {\n\t\t\tconst availableLanguages = this.languages[0].languages.concat(this.languages[1].languages)\n\t\t\tconst userLang = availableLanguages.find(lang => lang.code === this.user.language)\n\t\t\tif (typeof userLang !== 'object' && this.user.language !== '') {\n\t\t\t\treturn {\n\t\t\t\t\tcode: this.user.language,\n\t\t\t\t\tname: this.user.language,\n\t\t\t\t}\n\t\t\t} else if (this.user.language === '') {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\treturn userLang\n\t\t},\n\n\t\tuserFirstLogin() {\n\t\t\tif (this.user.firstLoginTimestamp > 0) {\n\t\t\t\treturn this.formattedFullTime\n\t\t\t}\n\t\t\tif (this.user.firstLoginTimestamp < 0) {\n\t\t\t\treturn t('settings', 'Unknown')\n\t\t\t}\n\t\t\treturn t('settings', 'Never')\n\t\t},\n\n\t\t/* LAST LOGIN */\n\t\tuserLastLoginTooltip() {\n\t\t\tif (this.user.lastLoginTimestamp > 0) {\n\t\t\t\treturn OC.Util.formatDate(this.user.lastLoginTimestamp * 1000)\n\t\t\t}\n\t\t\treturn ''\n\t\t},\n\t\tuserLastLogin() {\n\t\t\tif (this.user.lastLoginTimestamp > 0) {\n\t\t\t\treturn OC.Util.relativeModifiedDate(this.user.lastLoginTimestamp * 1000)\n\t\t\t}\n\t\t\treturn t('settings', 'Never')\n\t\t},\n\t},\n}\n","\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRow.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRow.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRow.vue?vue&type=style&index=0&id=549fcd14&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRow.vue?vue&type=style&index=0&id=549fcd14&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserRow.vue?vue&type=template&id=549fcd14&scoped=true\"\nimport script from \"./UserRow.vue?vue&type=script&lang=js\"\nexport * from \"./UserRow.vue?vue&type=script&lang=js\"\nimport style0 from \"./UserRow.vue?vue&type=style&index=0&id=549fcd14&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"549fcd14\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=script&lang=js\"","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=style&index=0&id=73fd953a&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=style&index=0&id=73fd953a&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserList.vue?vue&type=template&id=73fd953a&scoped=true\"\nimport script from \"./UserList.vue?vue&type=script&lang=js\"\nexport * from \"./UserList.vue?vue&type=script&lang=js\"\nimport style0 from \"./UserList.vue?vue&type=style&index=0&id=73fd953a&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"73fd953a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('Fragment',[(_vm.showConfig.showNewUserForm)?_c('NewUserDialog',{attrs:{\"loading\":_vm.loading,\"new-user\":_vm.newUser,\"quota-options\":_vm.quotaOptions},on:{\"reset\":_vm.resetForm,\"closing\":_vm.closeDialog}}):_vm._e(),_vm._v(\" \"),(_vm.filteredUsers.length === 0)?_c('NcEmptyContent',{staticClass:\"empty\",attrs:{\"name\":_vm.isInitialLoad && _vm.loading.users ? null : _vm.t('settings', 'No accounts')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.isInitialLoad && _vm.loading.users)?_c('NcLoadingIcon',{attrs:{\"name\":_vm.t('settings', 'Loading accounts …'),\"size\":64}}):_c('NcIconSvgWrapper',{attrs:{\"path\":_vm.mdiAccountGroup,\"size\":64}})]},proxy:true}],null,false,226056511)}):_c('VirtualList',{style:(_vm.style),attrs:{\"data-component\":_vm.UserRow,\"data-sources\":_vm.filteredUsers,\"data-key\":\"id\",\"data-cy-user-list\":\"\",\"item-height\":_vm.rowHeight,\"extra-props\":{\n\t\t\tusers: _vm.users,\n\t\t\tsettings: _vm.settings,\n\t\t\thasObfuscated: _vm.hasObfuscated,\n\t\t\tquotaOptions: _vm.quotaOptions,\n\t\t\tlanguages: _vm.languages,\n\t\t\texternalActions: _vm.externalActions,\n\t\t}},on:{\"scroll-end\":_vm.handleScrollEnd},scopedSlots:_vm._u([{key:\"before\",fn:function(){return [_c('caption',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'List of accounts. This list is not fully rendered for performance reasons. The accounts will be rendered as you navigate through the list.'))+\"\\n\\t\\t\\t\")])]},proxy:true},{key:\"header\",fn:function(){return [_c('UserListHeader',{attrs:{\"has-obfuscated\":_vm.hasObfuscated}})]},proxy:true},{key:\"footer\",fn:function(){return [_c('UserListFooter',{attrs:{\"loading\":_vm.loading.users,\"filtered-users\":_vm.filteredUsers}})]},proxy:true}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagement.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagement.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagement.vue?vue&type=style&index=0&id=4684ed00&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagement.vue?vue&type=style&index=0&id=4684ed00&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserManagement.vue?vue&type=template&id=4684ed00&scoped=true\"\nimport script from \"./UserManagement.vue?vue&type=script&lang=js\"\nexport * from \"./UserManagement.vue?vue&type=script&lang=js\"\nimport style0 from \"./UserManagement.vue?vue&type=style&index=0&id=4684ed00&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4684ed00\",\n null\n \n)\n\nexport default component.exports","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.user-list__row[data-v-549fcd14]{position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.user-list__row[data-v-549fcd14]:hover{background-color:var(--color-background-hover)}.user-list__row:hover .row__cell[data-v-549fcd14]:not(.row__cell--actions){background-color:var(--color-background-hover)}.user-list__row .select--fill[data-v-549fcd14]{max-width:calc(var(--cell-width-large) - 2*var(--cell-padding))}.row__cell[data-v-549fcd14]{display:flex;flex-direction:column;justify-content:center;padding:0 var(--cell-padding);min-width:var(--cell-width);width:var(--cell-width);color:var(--color-main-text)}.row__cell strong[data-v-549fcd14],.row__cell span[data-v-549fcd14],.row__cell label[data-v-549fcd14]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.row__cell--avatar[data-v-549fcd14],.row__cell--displayname[data-v-549fcd14]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.row__cell--avatar[data-v-549fcd14]{inset-inline-start:0}.row__cell--displayname[data-v-549fcd14]{inset-inline-start:var(--avatar-cell-width);border-inline-end:1px solid var(--color-border)}}.row__cell--username[data-v-549fcd14]{padding-inline-start:calc(var(--default-grid-baseline)*3)}.row__cell--avatar[data-v-549fcd14]{min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0;user-select:none}.row__cell--multiline span[data-v-549fcd14]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.row__cell--multiline span[data-v-549fcd14]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.row__cell--large[data-v-549fcd14]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.row__cell--obfuscated[data-v-549fcd14]{min-width:400px;width:400px}.row__cell--fill[data-v-549fcd14]{min-width:var(--cell-width-large);width:100%}.row__cell--actions[data-v-549fcd14]{position:sticky;inset-inline-end:0;z-index:var(--sticky-column-z-index);display:flex;flex-direction:row;align-items:center;min-width:110px;width:110px;background-color:var(--color-main-background);border-inline-start:1px solid var(--color-border)}.row__subtitle[data-v-549fcd14]{color:var(--color-text-maxcontrast)}.row__cell[data-v-549fcd14]{border-bottom:1px solid var(--color-border)}.row__cell[data-v-549fcd14] .v-select.select{min-width:var(--cell-min-width)}.row__progress[data-v-549fcd14]{margin-top:4px}.row__progress--warn[data-v-549fcd14]::-moz-progress-bar{background:var(--color-warning) !important}.row__progress--warn[data-v-549fcd14]::-webkit-progress-value{background:var(--color-warning) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/UserRow.vue\",\"webpack://./apps/settings/src/components/Users/shared/styles.scss\"],\"names\":[],\"mappings\":\"AAGA,iCCGC,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CDLA,uCACC,8CAAA,CAEA,2EACC,8CAAA,CAKF,+CACC,+DAAA,CCDD,4BACC,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,6BAAA,CACA,2BAAA,CACA,uBAAA,CACA,4BAAA,CAEA,sGAGC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,sBAAA,CAGD,yBACC,6EAEC,eAAA,CACA,oCAAA,CACA,6CAAA,CAGD,oCACC,oBAAA,CAGD,yCACC,2CAAA,CACA,+CAAA,CAAA,CAIF,sCACC,yDAAA,CAGD,oCACC,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CACA,gBAAA,CAIA,4CACC,iBAAA,CACA,iBAAA,CAEA,iCAJD,4CAKE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,mCACC,iCAAA,CACA,6BAAA,CAGD,wCACC,eAAA,CACA,WAAA,CAID,kCACC,iCAAA,CACA,UAAA,CAGD,qCACC,eAAA,CACA,kBAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,iDAAA,CAIF,gCACC,mCAAA,CDpFD,4BACC,2CAAA,CAGC,6CACC,+BAAA,CAKH,gCACC,cAAA,CAGC,yDACC,0CAAA,CAED,8DACC,0CAAA\",\"sourcesContent\":[\"\\n@use './shared/styles';\\n\\n.user-list__row {\\n\\t@include styles.row;\\n\\n\\t&:hover {\\n\\t\\tbackground-color: var(--color-background-hover);\\n\\n\\t\\t.row__cell:not(.row__cell--actions) {\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t}\\n\\t}\\n\\n\\t// Limit width of select in fill cell\\n\\t.select--fill {\\n\\t\\tmax-width: calc(var(--cell-width-large) - (2 * var(--cell-padding)));\\n\\t}\\n}\\n\\n.row {\\n\\t@include styles.cell;\\n\\n\\t&__cell {\\n\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\n\\t\\t:deep {\\n\\t\\t\\t.v-select.select {\\n\\t\\t\\t\\tmin-width: var(--cell-min-width);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__progress {\\n\\t\\tmargin-top: 4px;\\n\\n\\t\\t&--warn {\\n\\t\\t\\t&::-moz-progress-bar {\\n\\t\\t\\t\\tbackground: var(--color-warning) !important;\\n\\t\\t\\t}\\n\\t\\t\\t&::-webkit-progress-value {\\n\\t\\t\\t\\tbackground: var(--color-warning) !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\",\"/**\\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\\n * SPDX-License-Identifier: AGPL-3.0-or-later\\n */\\n\\n@mixin row {\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\tmin-width: 100%;\\n\\twidth: fit-content;\\n\\theight: var(--row-height);\\n\\tbackground-color: var(--color-main-background);\\n}\\n\\n@mixin cell {\\n\\t&__cell {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: center;\\n\\t\\tpadding: 0 var(--cell-padding);\\n\\t\\tmin-width: var(--cell-width);\\n\\t\\twidth: var(--cell-width);\\n\\t\\tcolor: var(--color-main-text);\\n\\n\\t\\tstrong,\\n\\t\\tspan,\\n\\t\\tlabel {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\toverflow-wrap: anywhere;\\n\\t\\t}\\n\\n\\t\\t@media (min-width: 670px) { /* Show one &--large column between stickied columns */\\n\\t\\t\\t&--avatar,\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tposition: sticky;\\n\\t\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--avatar {\\n\\t\\t\\t\\tinset-inline-start: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tinset-inline-start: var(--avatar-cell-width);\\n\\t\\t\\t\\tborder-inline-end: 1px solid var(--color-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--username {\\n\\t\\t\\tpadding-inline-start: calc(var(--default-grid-baseline) * 3);\\n\\t\\t}\\n\\n\\t\\t&--avatar {\\n\\t\\t\\tmin-width: var(--avatar-cell-width);\\n\\t\\t\\twidth: var(--avatar-cell-width);\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tuser-select: none;\\n\\t\\t}\\n\\n\\t\\t&--multiline {\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tline-height: 1.3em;\\n\\t\\t\\t\\twhite-space: unset;\\n\\n\\t\\t\\t\\t@supports (-webkit-line-clamp: 2) {\\n\\t\\t\\t\\t\\tdisplay: -webkit-box;\\n\\t\\t\\t\\t\\t-webkit-line-clamp: 2;\\n\\t\\t\\t\\t\\t-webkit-box-orient: vertical;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--large {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: var(--cell-width-large);\\n\\t\\t}\\n\\n\\t\\t&--obfuscated {\\n\\t\\t\\tmin-width: 400px;\\n\\t\\t\\twidth: 400px;\\n\\t\\t}\\n\\n\\t\\t// Fill remaining row space with cell\\n\\t\\t&--fill {\\n\\t\\t\\tmin-width: var(--cell-width-large);\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\n\\t\\t&--actions {\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tinset-inline-end: 0;\\n\\t\\t\\tz-index: var(--sticky-column-z-index);\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: row;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tmin-width: 110px;\\n\\t\\t\\twidth: 110px;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-inline-start: 1px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t&__subtitle {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.empty[data-v-73fd953a] .icon-vue{width:64px;height:64px}.empty[data-v-73fd953a] .icon-vue svg{max-width:64px;max-height:64px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/UserList.vue\"],\"names\":[],\"mappings\":\"AAKE,kCACC,UAAA,CACA,WAAA,CAEA,sCACC,cAAA,CACA,eAAA\",\"sourcesContent\":[\"\\n@use './Users/shared/styles' as *;\\n\\n.empty {\\n\\t:deep {\\n\\t\\t.icon-vue {\\n\\t\\t\\twidth: 64px;\\n\\t\\t\\theight: 64px;\\n\\n\\t\\t\\tsvg {\\n\\t\\t\\t\\tmax-width: 64px;\\n\\t\\t\\t\\tmax-height: 64px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { translate as t } from '@nextcloud/l10n';\nexport const unlimitedQuota = {\n id: 'none',\n label: t('settings', 'Unlimited'),\n};\nexport const defaultQuota = {\n id: 'default',\n label: t('settings', 'Default quota'),\n};\n/**\n * Return `true` if the logged in user does not have permissions to view the\n * data of `user`\n * @param user The user to check\n * @param user.id Id of the user\n */\nexport const isObfuscated = (user) => {\n const keys = Object.keys(user);\n return keys.length === 1 && keys.at(0) === 'id';\n};\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","formatGroup","group","name","displayname","usercount","disabled","canAdd","canRemove","searchGroups","search","offset","limit","controller","AbortController","CancelablePromise","async","resolve","reject","onCancel","abort","data","axios","get","generateOcsUrl","signal","ocs","groups","map","error","loadUserGroups","userId","url","loadUserSubAdminGroups","components","NcAppSettingsDialog","NcAppSettingsSection","NcCheckboxRadioSwitch","NcNoteCard","NcSelect","props","open","type","Boolean","required","selectedQuota","loadingSendMail","computed","groupSorting","$store","getters","getGroupSorting","GroupSorting","GroupName","set","sorting","commit","UserCount","isGroupSortingEnforced","getServerData","forceSortGroupByName","isModalOpen","$emit","showConfig","getShowConfig","settings","showLanguages","status","setShowConfig","showFirstLogin","showLastLogin","showUserBackend","showStoragePath","quotaOptions","quotaPreset","reduce","acc","cur","concat","label","allowUnlimitedQuota","unshift","unlimitedQuota","defaultQuota","OC","Util","computerFileSize","quota","sendWelcomeMail","newUserSendEmail","value","post","generateUrl","logger","methods","filterQuotas","option","searchValue","toLocaleLowerCase","replaceAll","indexOf","key","validateQuota","validQuota","parseFileSize","formatFileSize","setDefaultQuota","dispatch","app","then","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","_vm","this","_c","_self","attrs","t","on","$event","_v","_s","_e","staticClass","model","callback","$$v","expression","AccountGroup","Delete","Fragment","NcActionButton","NcActionInput","NcAppNavigationItem","NcButton","NcCounterBubble","NcModal","Pencil","active","count","Number","default","String","loadingRenameGroup","openGroupMenu","showRemoveGroupModal","handleGroupMenuOpen","renameGroup","gid","trim","displayName","$refs","displayNameInput","$el","querySelector","groupid","removeGroup","showError","ref","params","selectedGroup","encodeURIComponent","scopedSlots","_u","fn","proxy","undefined","isAdmin","isDelegatedAdmin","formatGroupMenu","title","Math","max","useFormatGroups","userGroups","filter","adminGroup","find","disabledGroup","recentGroup","_defineComponent","__name","setup","__props","store","useStore","route","useRoute","router","useRouter","onBeforeMount","loadGroups","selectedGroupDecoded","decodeURIComponent","isAdminOrDelegatedAdmin","getSortedGroups","getSubAdminGroups","isAddGroupOpen","loadingAddGroup","hasAddGroupError","newGroupName","loadingGroups","groupsSearchQuery","filteredGroups","substring","toLowerCase","groupListItems","lastGroupListItem","findLast","component","$vnode","at","listItem","isLastGroupVisible","useElementVisibility","watch","promise","cancel","length","__sfc","createGroup","groupId","newGroupListItem","scrollIntoView","behavior","block","mdiAccountGroup","mdiPlus","NcActionText","NcAppNavigationCaption","NcAppNavigationList","NcAppNavigationSearch","NcIconSvgWrapper","NcLoadingIcon","GroupListItem","_setup","_setupProxy","_l","refInFor","isDialogOpen","userCount","getUserCount","showNewUserMenu","mdiAccount","mdiAccountOff","mdiCog","mdiShieldAccount","mdiHistory","NcAppNavigation","NcAppNavigationNew","UserSettingsDialog","AppNavigationGroupList","_k","keyCode","apply","arguments","Vue","directive","vElementVisibility","extend","dataComponent","Object","Function","dataKey","dataSources","Array","itemHeight","extraProps","bufferItems","index","headerHeight","tableHeight","resizeObserver","startIndex","shownItems","ceil","renderedItems","slice","tbodyStyle","isOverScrolled","lastIndex","hiddenAfterItems","min","paddingTop","paddingBottom","mounted","root","tfoot","thead","ResizeObserver","debounce","clientHeight","debug","onScroll","observe","addEventListener","beforeDestroy","disconnect","handleFooterVisibility","visible","round","scrollTop","_t","style","item","i","_b","tag","directives","rawName","NcDialog","NcPasswordField","NcTextField","loading","newUser","possibleManagers","managerInputLabel","managerLabel","usernameLabel","newUserGenerateUserID","minPasswordLength","getPasswordPolicyMinLength","availableGroups","languages","commonLanguages","otherLanguages","beforeMount","searchUserManager","username","focus","createUser","all","userid","password","email","mailAddress","subadmin","subAdminsGroups","language","code","manager","response","meta","statuscode","query","toggleLoading","addGroup","isCreating","g","languageFilterBy","some","includes","users","values","_g","$listeners","preventDefault","$set","newUserRequireEmail","class","filteredUsers","n","hasObfuscated","passwordLabel","defineComponent","NcActions","actions","edit","user","editSvg","SvgCheck","SvgPencil","enabledActions","action","enabled","isSvg","string","TypeError","XMLValidator","validate","jsonObject","parser","XMLParser","parse","keys","x","toggleEdit","icon","text","event","Symbol","toStringTag","externalActions","formattedFullTime","useFormatDateTime","firstLoginTimestamp","relativeTime","format","timeStyle","dateStyle","selectedGroups","selectedSubAdminGroups","userSubAdminGroups","usedSpace","quotaUsed","used","size","usedQuota","pow","isNaN","userQuota","humanQuota","userLanguage","userLang","lang","userFirstLogin","userLastLoginTooltip","lastLoginTimestamp","formatDate","userLastLogin","relativeModifiedDate","NcAvatar","NcProgressBar","UserRowActions","mixins","UserRowMixin","rand","random","toString","loadingPossibleManagers","currentManager","editing","groupsDetails","subAdminGroupsDetails","subadmins","delete","disable","wipe","editedDisplayName","editedPassword","editedMail","isObfuscated","isLoadingUser","isLoadingField","uniqueId","availableSubAdminGroups","userGroupsLabels","availableGroup","join","userSubAdminGroupsLabels","canEdit","getCurrentUser","uid","userActions","deleteUser","wipeUserDevices","enableDisableUser","editedUserQuota","availableLanguages","initManager","confirmPassword","dialogs","confirmDestructive","YES_NO_BUTTONS","confirm","confirmClasses","result","showSuccess","timeout","finally","filterManagers","managers","searchInitialUserManager","loadGroupsDetails","loadSubAdminGroupsDetails","updateUserManager","previousManager","updateDisplayName","updatePassword","updateEmail","addUserGroup","console","removeUserGroup","$route","addUserSubAdmin","removeUserSubAdmin","setUserQuota","setUserLanguage","$nextTick","displayNameField","inputField","input","backendCapabilities","setDisplayName","canChangePassword","setPassword","backend","storageLocation","freeze","NcEmptyContent","NewUserDialog","UserListFooter","UserListHeader","VirtualList","rowHeight","UserRow","isInitialLoad","searchQuery","getUsers","usersOffset","getUsersOffset","usersLimit","getUsersLimit","disabledUsersOffset","getDisabledUsersOffset","disabledUsersLimit","getDisabledUsersLimit","usersCount","val","redirectIfDisabled","loadUsers","setNewUserDefaultGroup","created","Notification","showTemporary","resetForm","subscribe","resetSearch","unsubscribe","handleScrollEnd","closeDialog","assign","defaultLanguage","currentGroup","allGroups","getGroups","findIndex","$router","showNewUserForm","NcAppContent","UserList","pageHeading","admin","window","OCA","Settings","registerAction","emit"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/settings-vue-settings-apps-users-management.js b/dist/settings-vue-settings-apps-users-management.js index 6b05e92d7fc..c6b10aebfb6 100644 --- a/dist/settings-vue-settings-apps-users-management.js +++ b/dist/settings-vue-settings-apps-users-management.js @@ -1,2 +1,2 @@ -(()=>{var e,s,r,a={6028:(e,t,s)=>{"use strict";s.d(t,{A:()=>i});var r=s(19051),a=s(56760);s(51257);const o=function(e){return e.replace(/\/$/,"")},i={requireAdmin:()=>(0,a.C5)(),get:(e,t)=>r.Ay.get(o(e),t),post:(e,t)=>r.Ay.post(o(e),t),patch:(e,t)=>r.Ay.patch(o(e),t),put:(e,t)=>r.Ay.put(o(e),t),delete:(e,t)=>r.Ay.delete(o(e),{params:t})}},14744:(e,s,r)=>{"use strict";r.d(s,{P:()=>K});var a=r(95353),o=r(59097),i=r(87485),n=r(35810),d=r(85168),c=r(63814),u=r(32981),p=r(19051),l=r(15916),m=r(53334);const g=Intl.Collator([(0,m.Z0)(),(0,m.lO)()],{numeric:!0,usage:"sort"});var h=r(6028),A=r(36620);const f=(0,u.C)("settings","usersSettings",{}),b=(0,o.c0)("settings").persist(!0).build(),y={id:"",name:"",usercount:0,disabled:0,canAdd:!0,canRemove:!0},I={users:[],groups:[...f.getSubAdminGroups??[],...f.systemGroups??[]],orderBy:f.sortGroups??l.q.UserCount,minPasswordLength:0,usersOffset:0,usersLimit:25,disabledUsersOffset:0,disabledUsersLimit:25,userCount:f.userCount??0,showConfig:{showStoragePath:"true"===b.getItem("account_settings__showStoragePath"),showUserBackend:"true"===b.getItem("account_settings__showUserBackend"),showFirstLogin:"true"===b.getItem("account_settings__showFirstLogin"),showLastLogin:"true"===b.getItem("account_settings__showLastLogin"),showNewUserForm:"true"===b.getItem("account_settings__showNewUserForm"),showLanguages:"true"===b.getItem("account_settings__showLanguages")}},U={appendUsers(e,t){const s=e.users.map((({id:e})=>e)),r=Object.values(t).filter((({id:e})=>!s.includes(e))),a=e.users.concat(r);e.usersOffset+=e.usersLimit,e.users=a},updateDisabledUsers(e,t){e.disabledUsersOffset+=e.disabledUsersLimit},setPasswordPolicyMinLength(e,t){e.minPasswordLength=""!==t?t:0},addGroup(e,t){try{if(void 0!==e.groups.find((e=>e.id===t.id)))return;const s=Object.assign({},y,t);e.groups.unshift(s)}catch(e){console.error("Can't create group",e)}},renameGroup(e,{gid:t,displayName:s}){const r=e.groups.findIndex((e=>e.id===t));if(r>=0){const t=e.groups[r];t.name=s,e.groups.splice(r,1,t)}},removeGroup(e,t){const s=e.groups.findIndex((e=>e.id===t));s>=0&&e.groups.splice(s,1)},addUserGroup(e,{userid:t,gid:s}){const r=e.groups.find((e=>e.id===s)),a=e.users.find((e=>e.id===t));r&&a.enabled&&e.userCount>0&&r.usercount++,a.groups.push(s)},removeUserGroup(e,{userid:t,gid:s}){const r=e.groups.find((e=>e.id===s)),a=e.users.find((e=>e.id===t));r&&a.enabled&&e.userCount>0&&r.usercount--;const o=a.groups;o.splice(o.indexOf(s),1)},addUserSubAdmin(e,{userid:t,gid:s}){e.users.find((e=>e.id===t)).subadmin.push(s)},removeUserSubAdmin(e,{userid:t,gid:s}){const r=e.users.find((e=>e.id===t)).subadmin;r.splice(r.indexOf(s),1)},deleteUser(e,t){const s=e.users.findIndex((e=>e.id===t));this.commit("updateUserCounts",{user:e.users[s],actionType:"remove"}),e.users.splice(s,1)},addUserData(e,t){const s=t.data.ocs.data;e.users.unshift(s),this.commit("updateUserCounts",{user:s,actionType:"create"})},enableDisableUser(e,{userid:t,enabled:s}){const r=e.users.find((e=>e.id===t));r.enabled=s,this.commit("updateUserCounts",{user:r,actionType:s?"enable":"disable"})},updateUserCounts(e,{user:t,actionType:s}){if(0===e.userCount)return;const r=e.groups.find((e=>"__nc_internal_recent"===e.id)),a=e.groups.find((e=>"disabled"===e.id));switch(s){case"enable":case"disable":a.usercount+=t.enabled?-1:1,r.usercount+=t.enabled?1:-1,e.userCount+=t.enabled?1:-1,t.groups.forEach((s=>{const r=e.groups.find((e=>e.id===s));r&&(r.disabled+=t.enabled?-1:1)}));break;case"create":r.usercount++,e.userCount++,t.groups.forEach((t=>{const s=e.groups.find((e=>e.id===t));s&&s.usercount++}));break;case"remove":t.enabled?(r.usercount--,e.userCount--,t.groups.forEach((t=>{const s=e.groups.find((e=>e.id===t));s?s.usercount--:console.warn("User group "+t+" does not exist during user removal")}))):(a.usercount--,t.groups.forEach((t=>{const s=e.groups.find((e=>e.id===t));s&&s.disabled--})));break;default:A.A.error(`Unknown action type in updateUserCounts: '${s}'`)}},setUserData(e,{userid:t,key:s,value:r}){if("quota"===s){const a=(0,n.lT)(r,!0);e.users.find((e=>e.id===t))[s][s]=null!==a?a:r}else e.users.find((e=>e.id===t))[s]=r},resetUsers(e){e.users=[],e.usersOffset=0,e.disabledUsersOffset=0},resetGroups(e){e.groups=[...f.getSubAdminGroups??[],...f.systemGroups??[]]},setShowConfig(e,{key:t,value:s}){b.setItem(`account_settings__${t}`,JSON.stringify(s)),e.showConfig[t]=s},setGroupSorting(e,s){const r=e.orderBy;e.orderBy=s,p.Ay.post((0,c.Jv)("/settings/users/preferences/group.sortBy"),{value:String(s)}).catch((s=>{e.orderBy=r,(0,d.Qg)(t("settings","Could not set group sorting")),A.A.error(s)}))}},v={getUsers:e=>e.users,getGroups:e=>e.groups,getSubAdminGroups:()=>f.subAdminGroups??[],getSortedGroups(e){const t=[...e.groups];return e.orderBy===l.q.UserCount?t.sort(((e,t)=>{const s=e.usercount-e.disabled,r=t.usercount-t.disabled;return sg.compare(e.name,t.name)))},getGroupSorting:e=>e.orderBy,getPasswordPolicyMinLength:e=>e.minPasswordLength,getUsersOffset:e=>e.usersOffset,getUsersLimit:e=>e.usersLimit,getDisabledUsersOffset:e=>e.disabledUsersOffset,getDisabledUsersLimit:e=>e.disabledUsersLimit,getUserCount:e=>e.userCount,getShowConfig:e=>e.showConfig},L=p.Ay.CancelToken;let w=null;const _={state:I,mutations:U,getters:v,actions:{searchUsers:(e,{offset:t,limit:s,search:r})=>(r="string"==typeof r?r:"",h.A.get((0,c.KT)("cloud/users/details?offset={offset}&limit={limit}&search={search}",{offset:t,limit:s,search:r})).catch((t=>{p.Ay.isCancel(t)||e.commit("API_FAILURE",t)}))),getUser:(e,t)=>h.A.get((0,c.KT)(`cloud/users/${t}`)).catch((t=>{p.Ay.isCancel(t)||e.commit("API_FAILURE",t)})),getUsers:(e,{offset:t,limit:s,search:r,group:a})=>(w&&w.cancel("Operation canceled by another search request."),w=L.source(),r=(r="string"==typeof r?r:"").replace(/in:[^\s]+/g,"").trim(),""!==(a="string"==typeof a?a:"")?h.A.get((0,c.KT)("cloud/groups/{group}/users/details?offset={offset}&limit={limit}&search={search}",{group:encodeURIComponent(a),offset:t,limit:s,search:r}),{cancelToken:w.token}).then((t=>{const s=Object.keys(t.data.ocs.data.users).length;return s>0&&e.commit("appendUsers",t.data.ocs.data.users),s})).catch((t=>{p.Ay.isCancel(t)||e.commit("API_FAILURE",t)})):h.A.get((0,c.KT)("cloud/users/details?offset={offset}&limit={limit}&search={search}",{offset:t,limit:s,search:r}),{cancelToken:w.token}).then((t=>{const s=Object.keys(t.data.ocs.data.users).length;return s>0&&e.commit("appendUsers",t.data.ocs.data.users),s})).catch((t=>{p.Ay.isCancel(t)||e.commit("API_FAILURE",t)}))),async getRecentUsers(e,{offset:t,limit:s,search:r}){const a=(0,c.KT)("cloud/users/recent?offset={offset}&limit={limit}&search={search}",{offset:t,limit:s,search:r});try{const t=await h.A.get(a),s=Object.keys(t.data.ocs.data.users).length;return s>0&&e.commit("appendUsers",t.data.ocs.data.users),s}catch(t){e.commit("API_FAILURE",t)}},async getDisabledUsers(e,{offset:t,limit:s,search:r}){const a=(0,c.KT)("cloud/users/disabled?offset={offset}&limit={limit}&search={search}",{offset:t,limit:s,search:r});try{const t=await h.A.get(a),s=Object.keys(t.data.ocs.data.users).length;return s>0&&(e.commit("appendUsers",t.data.ocs.data.users),e.commit("updateDisabledUsers",t.data.ocs.data.users)),s}catch(t){e.commit("API_FAILURE",t)}},getGroups(e,{offset:t,limit:s,search:r}){r="string"==typeof r?r:"";const a=-1===s?"":`&limit=${s}`;return h.A.get((0,c.KT)("cloud/groups?offset={offset}&search={search}",{offset:t,search:r})+a).then((t=>Object.keys(t.data.ocs.data.groups).length>0&&(t.data.ocs.data.groups.forEach((function(t){e.commit("addGroup",{id:t,name:t})})),!0))).catch((t=>e.commit("API_FAILURE",t)))},getUsersFromList:(e,{offset:t,limit:s,search:r})=>(r="string"==typeof r?r:"",h.A.get((0,c.KT)("cloud/users/details?offset={offset}&limit={limit}&search={search}",{offset:t,limit:s,search:r})).then((t=>Object.keys(t.data.ocs.data.users).length>0&&(e.commit("appendUsers",t.data.ocs.data.users),!0))).catch((t=>e.commit("API_FAILURE",t)))),getUsersFromGroup:(e,{groupid:t,offset:s,limit:r})=>h.A.get((0,c.KT)("cloud/users/{groupId}/details?offset={offset}&limit={limit}",{groupId:encodeURIComponent(t),offset:s,limit:r})).then((t=>e.commit("getUsersFromList",t.data.ocs.data.users))).catch((t=>e.commit("API_FAILURE",t))),getPasswordPolicyMinLength:e=>!(!(0,i.F)().password_policy||!(0,i.F)().password_policy.minLength)&&(e.commit("setPasswordPolicyMinLength",(0,i.F)().password_policy.minLength),(0,i.F)().password_policy.minLength),addGroup:(e,t)=>h.A.requireAdmin().then((s=>h.A.post((0,c.KT)("cloud/groups"),{groupid:t}).then((s=>(e.commit("addGroup",{id:t,name:t}),{gid:t,displayName:t}))).catch((e=>{throw e})))).catch((s=>{throw e.commit("API_FAILURE",{gid:t,error:s}),s})),renameGroup:(e,{groupid:t,displayName:s})=>h.A.requireAdmin().then((r=>h.A.put((0,c.KT)("cloud/groups/{groupId}",{groupId:encodeURIComponent(t)}),{key:"displayname",value:s}).then((r=>(e.commit("renameGroup",{gid:t,displayName:s}),{groupid:t,displayName:s}))).catch((e=>{throw e})))).catch((s=>{throw e.commit("API_FAILURE",{groupid:t,error:s}),s})),removeGroup:(e,t)=>h.A.requireAdmin().then((s=>h.A.delete((0,c.KT)("cloud/groups/{groupId}",{groupId:encodeURIComponent(t)})).then((s=>e.commit("removeGroup",t))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{gid:t,error:s}))),addUserGroup:(e,{userid:t,gid:s})=>h.A.requireAdmin().then((r=>h.A.post((0,c.KT)("cloud/users/{userid}/groups",{userid:t}),{groupid:s}).then((r=>e.commit("addUserGroup",{userid:t,gid:s}))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s}))),removeUserGroup:(e,{userid:t,gid:s})=>h.A.requireAdmin().then((r=>h.A.delete((0,c.KT)("cloud/users/{userid}/groups",{userid:t}),{groupid:s}).then((r=>e.commit("removeUserGroup",{userid:t,gid:s}))).catch((e=>{throw e})))).catch((s=>{throw e.commit("API_FAILURE",{userid:t,error:s}),s})),addUserSubAdmin:(e,{userid:t,gid:s})=>h.A.requireAdmin().then((r=>h.A.post((0,c.KT)("cloud/users/{userid}/subadmins",{userid:t}),{groupid:s}).then((r=>e.commit("addUserSubAdmin",{userid:t,gid:s}))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s}))),removeUserSubAdmin:(e,{userid:t,gid:s})=>h.A.requireAdmin().then((r=>h.A.delete((0,c.KT)("cloud/users/{userid}/subadmins",{userid:t}),{groupid:s}).then((r=>e.commit("removeUserSubAdmin",{userid:t,gid:s}))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s}))),async wipeUserDevices(e,t){try{return await h.A.requireAdmin(),await h.A.post((0,c.KT)("cloud/users/{userid}/wipe",{userid:t}))}catch(s){return e.commit("API_FAILURE",{userid:t,error:s}),Promise.reject(new Error("Failed to wipe user devices"))}},deleteUser:(e,t)=>h.A.requireAdmin().then((s=>h.A.delete((0,c.KT)("cloud/users/{userid}",{userid:t})).then((s=>e.commit("deleteUser",t))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s}))),addUser:({commit:e,dispatch:t},{userid:s,password:r,displayName:a,email:o,groups:i,subadmin:n,quota:d,language:u,manager:p})=>h.A.requireAdmin().then((e=>h.A.post((0,c.KT)("cloud/users"),{userid:s,password:r,displayName:a,email:o,groups:i,subadmin:n,quota:d,language:u,manager:p}).then((e=>t("addUserData",s||e.data.ocs.data.id))).catch((e=>{throw e})))).catch((t=>{throw e("API_FAILURE",{userid:s,error:t}),t})),addUserData:(e,t)=>h.A.requireAdmin().then((s=>h.A.get((0,c.KT)("cloud/users/{userid}",{userid:t})).then((t=>e.commit("addUserData",t))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s}))),enableDisableUser(e,{userid:t,enabled:s=!0}){const r=s?"enable":"disable";return h.A.requireAdmin().then((a=>h.A.put((0,c.KT)("cloud/users/{userid}/{userStatus}",{userid:t,userStatus:r})).then((r=>e.commit("enableDisableUser",{userid:t,enabled:s}))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s})))},async setUserData(e,{userid:t,key:s,value:r}){if(!["email","language","quota","displayname","password","manager"].includes(s))throw new Error("Invalid request data");if(""===r&&!["email","displayname","manager"].includes(s))throw new Error("Value cannot be empty for this field");try{return await h.A.requireAdmin(),await h.A.put((0,c.KT)("cloud/users/{userid}",{userid:t}),{key:s,value:r}),e.commit("setUserData",{userid:t,key:s,value:r})}catch(s){throw e.commit("API_FAILURE",{userid:t,error:s}),s}},sendWelcomeMail:(e,t)=>h.A.requireAdmin().then((e=>h.A.post((0,c.KT)("cloud/users/{userid}/welcome",{userid:t})).then((e=>!0)).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s})))}};var P=r(85471);const C={apps:[],bundles:(0,u.C)("settings","appstoreBundles",[]),categories:[],updateCount:(0,u.C)("settings","appstoreUpdateCount",0),loading:{},gettingCategoriesPromise:null,appApiEnabled:(0,u.C)("settings","appApiEnabled",!1)},E={APPS_API_FAILURE(e,s){(0,d.Qg)(t("settings","An error occurred during the request. Unable to proceed.")+"
"+s.error.response.data.data.message,{isHTML:!0}),console.error(e,s)},initCategories(e,{categories:t,updateCount:s}){e.categories=t,e.updateCount=s},updateCategories(e,t){e.gettingCategoriesPromise=t},setUpdateCount(e,t){e.updateCount=t},addCategory(e,t){e.categories.push(t)},appendCategories(e,t){e.categories=t},setAllApps(e,t){e.apps=t},setError(e,{appId:t,error:s}){Array.isArray(t)||(t=[t]),t.forEach((t=>{e.apps.find((e=>e.id===t)).error=s}))},clearError(e,{appId:t,error:s}){e.apps.find((e=>e.id===t)).error=null},enableApp(e,{appId:t,groups:s}){const r=e.apps.find((e=>e.id===t));r.active=!0,r.groups=s,"app_api"===r.id&&(e.appApiEnabled=!0)},setInstallState(e,{appId:t,canInstall:s}){const r=e.apps.find((e=>e.id===t));r&&(r.canInstall=!0===s)},disableApp(e,t){const s=e.apps.find((e=>e.id===t));s.active=!1,s.groups=[],s.removable&&(s.canUnInstall=!0),"app_api"===s.id&&(e.appApiEnabled=!1)},uninstallApp(e,t){e.apps.find((e=>e.id===t)).active=!1,e.apps.find((e=>e.id===t)).groups=[],e.apps.find((e=>e.id===t)).needsDownload=!0,e.apps.find((e=>e.id===t)).installed=!1,e.apps.find((e=>e.id===t)).canUnInstall=!1,e.apps.find((e=>e.id===t)).canInstall=!0,"app_api"===t&&(e.appApiEnabled=!1)},updateApp(e,t){const s=e.apps.find((e=>e.id===t)),r=s.update;s.update=null,s.version=r,e.updateCount--},resetApps(e){e.apps=[]},reset(e){e.apps=[],e.categories=[],e.updateCount=0},startLoading(e,t){Array.isArray(t)?t.forEach((t=>{P.Ay.set(e.loading,t,!0)})):P.Ay.set(e.loading,t,!0)},stopLoading(e,t){Array.isArray(t)?t.forEach((t=>{P.Ay.set(e.loading,t,!1)})):P.Ay.set(e.loading,t,!1)}},F={enableApp(e,{appId:s,groups:r}){let a;return a=Array.isArray(s)?s:[s],h.A.requireAdmin().then((o=>(e.commit("startLoading",a),e.commit("startLoading","install"),h.A.post((0,c.Jv)("settings/apps/enable"),{appIds:a,groups:r}).then((o=>(e.commit("stopLoading",a),e.commit("stopLoading","install"),a.forEach((t=>{e.commit("enableApp",{appId:t,groups:r})})),p.Ay.get((0,c.Jv)("apps/files/")).then((()=>{o.data.update_required&&((0,d.cf)(t("settings","The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds."),{onClick:()=>window.location.reload(),close:!1}),setTimeout((function(){location.reload()}),5e3))})).catch((()=>{Array.isArray(s)||((0,d.Qg)(t("settings","Error: This app cannot be enabled because it makes the server unstable")),e.commit("setError",{appId:a,error:t("settings","Error: This app cannot be enabled because it makes the server unstable")}),e.dispatch("disableApp",{appId:s}))}))))).catch((t=>{e.commit("stopLoading",a),e.commit("stopLoading","install"),e.commit("setError",{appId:a,error:t.response.data.data.message}),e.commit("APPS_API_FAILURE",{appId:s,error:t})}))))).catch((t=>e.commit("API_FAILURE",{appId:s,error:t})))},forceEnableApp(e,{appId:t,groups:s}){let r;return r=Array.isArray(t)?t:[t],h.A.requireAdmin().then((()=>(e.commit("startLoading",r),e.commit("startLoading","install"),h.A.post((0,c.Jv)("settings/apps/force"),{appId:t}).then((s=>{e.commit("setInstallState",{appId:t,canInstall:!0})})).catch((s=>{e.commit("stopLoading",r),e.commit("stopLoading","install"),e.commit("setError",{appId:r,error:s.response.data.data.message}),e.commit("APPS_API_FAILURE",{appId:t,error:s})})).finally((()=>{e.commit("stopLoading",r),e.commit("stopLoading","install")}))))).catch((s=>e.commit("API_FAILURE",{appId:t,error:s})))},disableApp(e,{appId:t}){let s;return s=Array.isArray(t)?t:[t],h.A.requireAdmin().then((r=>(e.commit("startLoading",s),h.A.post((0,c.Jv)("settings/apps/disable"),{appIds:s}).then((t=>(e.commit("stopLoading",s),s.forEach((t=>{e.commit("disableApp",t)})),!0))).catch((r=>{e.commit("stopLoading",s),e.commit("APPS_API_FAILURE",{appId:t,error:r})}))))).catch((s=>e.commit("API_FAILURE",{appId:t,error:s})))},uninstallApp:(e,{appId:t})=>h.A.requireAdmin().then((s=>(e.commit("startLoading",t),h.A.get((0,c.Jv)(`settings/apps/uninstall/${t}`)).then((s=>(e.commit("stopLoading",t),e.commit("uninstallApp",t),!0))).catch((s=>{e.commit("stopLoading",t),e.commit("APPS_API_FAILURE",{appId:t,error:s})}))))).catch((s=>e.commit("API_FAILURE",{appId:t,error:s}))),updateApp:(e,{appId:t})=>h.A.requireAdmin().then((s=>(e.commit("startLoading",t),e.commit("startLoading","install"),h.A.get((0,c.Jv)(`settings/apps/update/${t}`)).then((s=>(e.commit("stopLoading","install"),e.commit("stopLoading",t),e.commit("updateApp",t),!0))).catch((s=>{e.commit("stopLoading",t),e.commit("stopLoading","install"),e.commit("APPS_API_FAILURE",{appId:t,error:s})}))))).catch((s=>e.commit("API_FAILURE",{appId:t,error:s}))),getAllApps:e=>(e.commit("startLoading","list"),h.A.get((0,c.Jv)("settings/apps/list")).then((t=>(e.commit("setAllApps",t.data.apps),e.commit("stopLoading","list"),!0))).catch((t=>e.commit("API_FAILURE",t)))),async getCategories(e,{shouldRefetchCategories:t=!1}={}){if(t||!e.state.gettingCategoriesPromise){e.commit("startLoading","categories");try{const t=h.A.get((0,c.Jv)("settings/apps/categories"));e.commit("updateCategories",t);const s=await t;return s.data.length>0?(e.commit("appendCategories",s.data),e.commit("stopLoading","categories"),!0):(e.commit("stopLoading","categories"),!1)}catch(t){e.commit("API_FAILURE",t)}}return e.state.gettingCategoriesPromise}},R={state:C,mutations:E,getters:{isAppApiEnabled:e=>e.appApiEnabled,loading:e=>function(t){return e.loading[t]},getCategories:e=>e.categories,getAllApps:e=>e.apps,getAppBundles:e=>e.bundles,getUpdateCount:e=>e.updateCount,getCategoryById:e=>t=>e.categories.find((e=>e.id===t))},actions:F},T={serverData:(0,u.C)("settings","usersSettings",{})},k={setServerData(e,t){e.serverData=t}},S={state:T,mutations:k,getters:{getServerData:e=>e.serverData},actions:{}},O={state:{},mutations:{},getters:{},actions:{setAppConfig:(e,{app:t,key:s,value:r})=>h.A.requireAdmin().then((e=>h.A.post((0,c.KT)("apps/provisioning_api/api/v1/config/apps/{app}/{key}",{app:t,key:s}),{value:r}).catch((e=>{throw e})))).catch((a=>e.commit("API_FAILURE",{app:t,key:s,value:r,error:a})))}},q={API_FAILURE(e,s){try{const e=s.error.response.data.ocs.meta.message;(0,d.Qg)(t("settings","An error occurred during the request. Unable to proceed.")+"
"+e,{isHTML:!0})}catch(e){(0,d.Qg)(t("settings","An error occurred during the request. Unable to proceed."))}console.error(e,s)}};let G=null;const K=()=>(null===G&&(G=new a.il({modules:{users:_,apps:R,settings:S,oc:O},strict:!1,mutations:q})),G)},15916:(e,t,s)=>{"use strict";var r;s.d(t,{q:()=>r}),function(e){e[e.UserCount=1]="UserCount",e[e.GroupName=2]="GroupName"}(r||(r={}))},18539:(e,t,s)=>{"use strict";var r=s(85471),a=s(95353),o=s(80284),i=s(58723),n=s(53334),d=s(22378);const c=(0,r.pM)({__name:"SettingsApp",setup:e=>({__sfc:!0,NcContent:d.A})}),u=(0,s(14486).A)(c,(function(){var e=this,t=e._self._c;return t(e._self._setupProxy.NcContent,{attrs:{"app-name":"settings"}},[t("router-view",{attrs:{name:"navigation"}}),e._v(" "),t("router-view"),e._v(" "),t("router-view",{attrs:{name:"sidebar"}})],1)}),[],!1,null,null,null).exports;var p=s(40173),l=s(63814);const m=[{name:"users",path:"/:index(index.php/)?settings/users",components:{default:()=>Promise.all([s.e(4208),s.e(7265),s.e(3239)]).then(s.bind(s,62871)),navigation:()=>Promise.all([s.e(4208),s.e(7265),s.e(3239)]).then(s.bind(s,66423))},props:!0,children:[{path:":selectedGroup",name:"group"}]},{path:"/:index(index.php/)?settings/apps",name:"apps",redirect:{name:"apps-category",params:{category:(0,s(32981).C)("settings","appstoreEnabled",!0)?"discover":"installed"}},components:{default:()=>Promise.all([s.e(4208),s.e(7265),s.e(4529)]).then(s.bind(s,79852)),navigation:()=>Promise.all([s.e(4208),s.e(7265),s.e(4529)]).then(s.bind(s,28372)),sidebar:()=>Promise.all([s.e(4208),s.e(7265),s.e(4529)]).then(s.bind(s,37058))},children:[{path:":category",name:"apps-category",children:[{path:":id",name:"apps-details"}]}]}];r.Ay.use(p.Ay);const g=new p.Ay({mode:"history",base:(0,l.Jv)(""),linkActiveClass:"active",routes:m});var h=s(14744),A=s(61884),f=s(65899);s.nc=(0,A.aV)(),r.Ay.prototype.t=n.t,r.Ay.prototype.n=n.n,r.Ay.use(f.R2),r.Ay.use(o.Ay,{defaultHtml:!1}),r.Ay.use(a.Ay);const b=(0,h.P)();(0,i.O)(b,g);const y=(0,f.Ey)();new r.Ay({router:g,store:b,pinia:y,render:e=>e(u),el:"#content"})},36620:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});const r=(0,s(35947).YK)().setApp("settings").detectUser().build()},58723:(e,t)=>{function s(e,t){var r={name:e.name,path:e.path,hash:e.hash,query:e.query,params:e.params,fullPath:e.fullPath,meta:e.meta};return t&&(r.from=s(t)),Object.freeze(r)}t.O=function(e,t,r){var a=(r||{}).moduleName||"route";e.registerModule(a,{namespaced:!0,state:s(t.currentRoute),mutations:{ROUTE_CHANGED:function(t,r){e.state[a]=s(r.to,r.from)}}});var o,i=!1,n=e.watch((function(e){return e[a]}),(function(e){var s=e.fullPath;s!==o&&(null!=o&&(i=!0,t.push(e)),o=s)}),{sync:!0}),d=t.afterEach((function(t,s){i?i=!1:(o=t.fullPath,e.commit(a+"/ROUTE_CHANGED",{to:t,from:s}))}));return function(){null!=d&&d(),null!=n&&n(),e.unregisterModule(a)}}}},o={};function i(e){var t=o[e];if(void 0!==t)return t.exports;var s=o[e]={id:e,loaded:!1,exports:{}};return a[e].call(s.exports,s,s.exports,i),s.loaded=!0,s.exports}i.m=a,e=[],i.O=(t,s,r,a)=>{if(!s){var o=1/0;for(u=0;u=a)&&Object.keys(i.O).every((e=>i.O[e](s[d])))?s.splice(d--,1):(n=!1,a0&&e[u-1][2]>a;u--)e[u]=e[u-1];e[u]=[s,r,a]},i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var s in t)i.o(t,s)&&!i.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,s)=>(i.f[s](e,t),t)),[])),i.u=e=>(({3239:"settings-users",4529:"settings-apps-view"}[e]||e)+"-"+e+".js?v="+{3239:"0b231fba2b1dc524137a",3278:"8b4fe0854296793e7bfb",3303:"d8c64a54c299c412b27b",4529:"cf01e5424ba636329f9f",4612:"aebb24cec040bc57223b",5664:"4b28558df62ae5fee1e5",5862:"142cd48ca8ec32e57725",7265:"901c2964e1f5de9faba1",7471:"6423b9b898ffefeb7d1d",8737:"3ea02e5c6b6e798b7d97",9972:"fbcc5a88a571c9921953"}[e]),i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s={},r="nextcloud:",i.l=(e,t,a,o)=>{if(s[e])s[e].push(t);else{var n,d;if(void 0!==a)for(var c=document.getElementsByTagName("script"),u=0;u{n.onerror=n.onload=null,clearTimeout(m);var a=s[e];if(delete s[e],n.parentNode&&n.parentNode.removeChild(n),a&&a.forEach((e=>e(r))),t)return t(r)},m=setTimeout(l.bind(null,void 0,{type:"timeout",target:n}),12e4);n.onerror=l.bind(null,n.onerror),n.onload=l.bind(null,n.onload),d&&document.head.appendChild(n)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),i.j=2689,(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var t=i.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var s=t.getElementsByTagName("script");if(s.length)for(var r=s.length-1;r>-1&&(!e||!/^http(s?):/.test(e));)e=s[r--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{i.b=document.baseURI||self.location.href;var e={2689:0};i.f.j=(t,s)=>{var r=i.o(e,t)?e[t]:void 0;if(0!==r)if(r)s.push(r[2]);else{var a=new Promise(((s,a)=>r=e[t]=[s,a]));s.push(r[2]=a);var o=i.p+i.u(t),n=new Error;i.l(o,(s=>{if(i.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var a=s&&("load"===s.type?"missing":s.type),o=s&&s.target&&s.target.src;n.message="Loading chunk "+t+" failed.\n("+a+": "+o+")",n.name="ChunkLoadError",n.type=a,n.request=o,r[1](n)}}),"chunk-"+t,t)}},i.O.j=t=>0===e[t];var t=(t,s)=>{var r,a,o=s[0],n=s[1],d=s[2],c=0;if(o.some((t=>0!==e[t]))){for(r in n)i.o(n,r)&&(i.m[r]=n[r]);if(d)var u=d(i)}for(t&&t(s);ci(18539)));n=i.O(n)})(); -//# sourceMappingURL=settings-vue-settings-apps-users-management.js.map?v=52966bcf2b10254c885c \ No newline at end of file +(()=>{var e,s,r,a={6028:(e,t,s)=>{"use strict";s.d(t,{A:()=>i});var r=s(19051),a=s(56760);s(51257);const o=function(e){return e.replace(/\/$/,"")},i={requireAdmin:()=>(0,a.C5)(),get:(e,t)=>r.Ay.get(o(e),t),post:(e,t)=>r.Ay.post(o(e),t),patch:(e,t)=>r.Ay.patch(o(e),t),put:(e,t)=>r.Ay.put(o(e),t),delete:(e,t)=>r.Ay.delete(o(e),{params:t})}},14744:(e,s,r)=>{"use strict";r.d(s,{P:()=>K});var a=r(95353),o=r(59097),i=r(87485),n=r(35810),d=r(85168),c=r(63814),u=r(32981),p=r(19051),l=r(15916),m=r(53334);const g=Intl.Collator([(0,m.Z0)(),(0,m.lO)()],{numeric:!0,usage:"sort"});var h=r(6028),A=r(36620);const f=(0,u.C)("settings","usersSettings",{}),b=(0,o.c0)("settings").persist(!0).build(),y={id:"",name:"",usercount:0,disabled:0,canAdd:!0,canRemove:!0},I={users:[],groups:[...f.getSubAdminGroups??[],...f.systemGroups??[]],orderBy:f.sortGroups??l.q.UserCount,minPasswordLength:0,usersOffset:0,usersLimit:25,disabledUsersOffset:0,disabledUsersLimit:25,userCount:f.userCount??0,showConfig:{showStoragePath:"true"===b.getItem("account_settings__showStoragePath"),showUserBackend:"true"===b.getItem("account_settings__showUserBackend"),showFirstLogin:"true"===b.getItem("account_settings__showFirstLogin"),showLastLogin:"true"===b.getItem("account_settings__showLastLogin"),showNewUserForm:"true"===b.getItem("account_settings__showNewUserForm"),showLanguages:"true"===b.getItem("account_settings__showLanguages")}},U={appendUsers(e,t){const s=e.users.map((({id:e})=>e)),r=Object.values(t).filter((({id:e})=>!s.includes(e))),a=e.users.concat(r);e.usersOffset+=e.usersLimit,e.users=a},updateDisabledUsers(e,t){e.disabledUsersOffset+=e.disabledUsersLimit},setPasswordPolicyMinLength(e,t){e.minPasswordLength=""!==t?t:0},addGroup(e,t){try{if(void 0!==e.groups.find((e=>e.id===t.id)))return;const s=Object.assign({},y,t);e.groups.unshift(s)}catch(e){console.error("Can't create group",e)}},renameGroup(e,{gid:t,displayName:s}){const r=e.groups.findIndex((e=>e.id===t));if(r>=0){const t=e.groups[r];t.name=s,e.groups.splice(r,1,t)}},removeGroup(e,t){const s=e.groups.findIndex((e=>e.id===t));s>=0&&e.groups.splice(s,1)},addUserGroup(e,{userid:t,gid:s}){const r=e.groups.find((e=>e.id===s)),a=e.users.find((e=>e.id===t));r&&a.enabled&&e.userCount>0&&r.usercount++,a.groups.push(s)},removeUserGroup(e,{userid:t,gid:s}){const r=e.groups.find((e=>e.id===s)),a=e.users.find((e=>e.id===t));r&&a.enabled&&e.userCount>0&&r.usercount--;const o=a.groups;o.splice(o.indexOf(s),1)},addUserSubAdmin(e,{userid:t,gid:s}){e.users.find((e=>e.id===t)).subadmin.push(s)},removeUserSubAdmin(e,{userid:t,gid:s}){const r=e.users.find((e=>e.id===t)).subadmin;r.splice(r.indexOf(s),1)},deleteUser(e,t){const s=e.users.findIndex((e=>e.id===t));this.commit("updateUserCounts",{user:e.users[s],actionType:"remove"}),e.users.splice(s,1)},addUserData(e,t){const s=t.data.ocs.data;e.users.unshift(s),this.commit("updateUserCounts",{user:s,actionType:"create"})},enableDisableUser(e,{userid:t,enabled:s}){const r=e.users.find((e=>e.id===t));r.enabled=s,this.commit("updateUserCounts",{user:r,actionType:s?"enable":"disable"})},updateUserCounts(e,{user:t,actionType:s}){if(0===e.userCount)return;const r=e.groups.find((e=>"__nc_internal_recent"===e.id)),a=e.groups.find((e=>"disabled"===e.id));switch(s){case"enable":case"disable":a.usercount+=t.enabled?-1:1,r.usercount+=t.enabled?1:-1,e.userCount+=t.enabled?1:-1,t.groups.forEach((s=>{const r=e.groups.find((e=>e.id===s));r&&(r.disabled+=t.enabled?-1:1)}));break;case"create":r.usercount++,e.userCount++,t.groups.forEach((t=>{const s=e.groups.find((e=>e.id===t));s&&s.usercount++}));break;case"remove":t.enabled?(r.usercount--,e.userCount--,t.groups.forEach((t=>{const s=e.groups.find((e=>e.id===t));s?s.usercount--:console.warn("User group "+t+" does not exist during user removal")}))):(a.usercount--,t.groups.forEach((t=>{const s=e.groups.find((e=>e.id===t));s&&s.disabled--})));break;default:A.A.error(`Unknown action type in updateUserCounts: '${s}'`)}},setUserData(e,{userid:t,key:s,value:r}){if("quota"===s){const a=(0,n.lT)(r,!0);e.users.find((e=>e.id===t))[s][s]=null!==a?a:r}else e.users.find((e=>e.id===t))[s]=r},resetUsers(e){e.users=[],e.usersOffset=0,e.disabledUsersOffset=0},resetGroups(e){e.groups=[...f.getSubAdminGroups??[],...f.systemGroups??[]]},setShowConfig(e,{key:t,value:s}){b.setItem(`account_settings__${t}`,JSON.stringify(s)),e.showConfig[t]=s},setGroupSorting(e,s){const r=e.orderBy;e.orderBy=s,p.Ay.post((0,c.Jv)("/settings/users/preferences/group.sortBy"),{value:String(s)}).catch((s=>{e.orderBy=r,(0,d.Qg)(t("settings","Could not set group sorting")),A.A.error(s)}))}},v={getUsers:e=>e.users,getGroups:e=>e.groups,getSubAdminGroups:()=>f.subAdminGroups??[],getSortedGroups(e){const t=[...e.groups];return e.orderBy===l.q.UserCount?t.sort(((e,t)=>{const s=e.usercount-e.disabled,r=t.usercount-t.disabled;return sg.compare(e.name,t.name)))},getGroupSorting:e=>e.orderBy,getPasswordPolicyMinLength:e=>e.minPasswordLength,getUsersOffset:e=>e.usersOffset,getUsersLimit:e=>e.usersLimit,getDisabledUsersOffset:e=>e.disabledUsersOffset,getDisabledUsersLimit:e=>e.disabledUsersLimit,getUserCount:e=>e.userCount,getShowConfig:e=>e.showConfig},L=p.Ay.CancelToken;let w=null;const _={state:I,mutations:U,getters:v,actions:{searchUsers:(e,{offset:t,limit:s,search:r})=>(r="string"==typeof r?r:"",h.A.get((0,c.KT)("cloud/users/details?offset={offset}&limit={limit}&search={search}",{offset:t,limit:s,search:r})).catch((t=>{p.Ay.isCancel(t)||e.commit("API_FAILURE",t)}))),getUser:(e,t)=>h.A.get((0,c.KT)(`cloud/users/${t}`)).catch((t=>{p.Ay.isCancel(t)||e.commit("API_FAILURE",t)})),getUsers:(e,{offset:t,limit:s,search:r,group:a})=>(w&&w.cancel("Operation canceled by another search request."),w=L.source(),r=(r="string"==typeof r?r:"").replace(/in:[^\s]+/g,"").trim(),""!==(a="string"==typeof a?a:"")?h.A.get((0,c.KT)("cloud/groups/{group}/users/details?offset={offset}&limit={limit}&search={search}",{group:encodeURIComponent(a),offset:t,limit:s,search:r}),{cancelToken:w.token}).then((t=>{const s=Object.keys(t.data.ocs.data.users).length;return s>0&&e.commit("appendUsers",t.data.ocs.data.users),s})).catch((t=>{p.Ay.isCancel(t)||e.commit("API_FAILURE",t)})):h.A.get((0,c.KT)("cloud/users/details?offset={offset}&limit={limit}&search={search}",{offset:t,limit:s,search:r}),{cancelToken:w.token}).then((t=>{const s=Object.keys(t.data.ocs.data.users).length;return s>0&&e.commit("appendUsers",t.data.ocs.data.users),s})).catch((t=>{p.Ay.isCancel(t)||e.commit("API_FAILURE",t)}))),async getRecentUsers(e,{offset:t,limit:s,search:r}){const a=(0,c.KT)("cloud/users/recent?offset={offset}&limit={limit}&search={search}",{offset:t,limit:s,search:r});try{const t=await h.A.get(a),s=Object.keys(t.data.ocs.data.users).length;return s>0&&e.commit("appendUsers",t.data.ocs.data.users),s}catch(t){e.commit("API_FAILURE",t)}},async getDisabledUsers(e,{offset:t,limit:s,search:r}){const a=(0,c.KT)("cloud/users/disabled?offset={offset}&limit={limit}&search={search}",{offset:t,limit:s,search:r});try{const t=await h.A.get(a),s=Object.keys(t.data.ocs.data.users).length;return s>0&&(e.commit("appendUsers",t.data.ocs.data.users),e.commit("updateDisabledUsers",t.data.ocs.data.users)),s}catch(t){e.commit("API_FAILURE",t)}},getGroups(e,{offset:t,limit:s,search:r}){r="string"==typeof r?r:"";const a=-1===s?"":`&limit=${s}`;return h.A.get((0,c.KT)("cloud/groups?offset={offset}&search={search}",{offset:t,search:r})+a).then((t=>Object.keys(t.data.ocs.data.groups).length>0&&(t.data.ocs.data.groups.forEach((function(t){e.commit("addGroup",{id:t,name:t})})),!0))).catch((t=>e.commit("API_FAILURE",t)))},getUsersFromList:(e,{offset:t,limit:s,search:r})=>(r="string"==typeof r?r:"",h.A.get((0,c.KT)("cloud/users/details?offset={offset}&limit={limit}&search={search}",{offset:t,limit:s,search:r})).then((t=>Object.keys(t.data.ocs.data.users).length>0&&(e.commit("appendUsers",t.data.ocs.data.users),!0))).catch((t=>e.commit("API_FAILURE",t)))),getUsersFromGroup:(e,{groupid:t,offset:s,limit:r})=>h.A.get((0,c.KT)("cloud/users/{groupId}/details?offset={offset}&limit={limit}",{groupId:encodeURIComponent(t),offset:s,limit:r})).then((t=>e.commit("getUsersFromList",t.data.ocs.data.users))).catch((t=>e.commit("API_FAILURE",t))),getPasswordPolicyMinLength:e=>!(!(0,i.F)().password_policy||!(0,i.F)().password_policy.minLength)&&(e.commit("setPasswordPolicyMinLength",(0,i.F)().password_policy.minLength),(0,i.F)().password_policy.minLength),addGroup:(e,t)=>h.A.requireAdmin().then((s=>h.A.post((0,c.KT)("cloud/groups"),{groupid:t}).then((s=>(e.commit("addGroup",{id:t,name:t}),{gid:t,displayName:t}))).catch((e=>{throw e})))).catch((s=>{throw e.commit("API_FAILURE",{gid:t,error:s}),s})),renameGroup:(e,{groupid:t,displayName:s})=>h.A.requireAdmin().then((r=>h.A.put((0,c.KT)("cloud/groups/{groupId}",{groupId:encodeURIComponent(t)}),{key:"displayname",value:s}).then((r=>(e.commit("renameGroup",{gid:t,displayName:s}),{groupid:t,displayName:s}))).catch((e=>{throw e})))).catch((s=>{throw e.commit("API_FAILURE",{groupid:t,error:s}),s})),removeGroup:(e,t)=>h.A.requireAdmin().then((s=>h.A.delete((0,c.KT)("cloud/groups/{groupId}",{groupId:encodeURIComponent(t)})).then((s=>e.commit("removeGroup",t))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{gid:t,error:s}))),addUserGroup:(e,{userid:t,gid:s})=>h.A.requireAdmin().then((r=>h.A.post((0,c.KT)("cloud/users/{userid}/groups",{userid:t}),{groupid:s}).then((r=>e.commit("addUserGroup",{userid:t,gid:s}))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s}))),removeUserGroup:(e,{userid:t,gid:s})=>h.A.requireAdmin().then((r=>h.A.delete((0,c.KT)("cloud/users/{userid}/groups",{userid:t}),{groupid:s}).then((r=>e.commit("removeUserGroup",{userid:t,gid:s}))).catch((e=>{throw e})))).catch((s=>{throw e.commit("API_FAILURE",{userid:t,error:s}),s})),addUserSubAdmin:(e,{userid:t,gid:s})=>h.A.requireAdmin().then((r=>h.A.post((0,c.KT)("cloud/users/{userid}/subadmins",{userid:t}),{groupid:s}).then((r=>e.commit("addUserSubAdmin",{userid:t,gid:s}))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s}))),removeUserSubAdmin:(e,{userid:t,gid:s})=>h.A.requireAdmin().then((r=>h.A.delete((0,c.KT)("cloud/users/{userid}/subadmins",{userid:t}),{groupid:s}).then((r=>e.commit("removeUserSubAdmin",{userid:t,gid:s}))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s}))),async wipeUserDevices(e,t){try{return await h.A.requireAdmin(),await h.A.post((0,c.KT)("cloud/users/{userid}/wipe",{userid:t}))}catch(s){return e.commit("API_FAILURE",{userid:t,error:s}),Promise.reject(new Error("Failed to wipe user devices"))}},deleteUser:(e,t)=>h.A.requireAdmin().then((s=>h.A.delete((0,c.KT)("cloud/users/{userid}",{userid:t})).then((s=>e.commit("deleteUser",t))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s}))),addUser:({commit:e,dispatch:t},{userid:s,password:r,displayName:a,email:o,groups:i,subadmin:n,quota:d,language:u,manager:p})=>h.A.requireAdmin().then((e=>h.A.post((0,c.KT)("cloud/users"),{userid:s,password:r,displayName:a,email:o,groups:i,subadmin:n,quota:d,language:u,manager:p}).then((e=>t("addUserData",s||e.data.ocs.data.id))).catch((e=>{throw e})))).catch((t=>{throw e("API_FAILURE",{userid:s,error:t}),t})),addUserData:(e,t)=>h.A.requireAdmin().then((s=>h.A.get((0,c.KT)("cloud/users/{userid}",{userid:t})).then((t=>e.commit("addUserData",t))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s}))),enableDisableUser(e,{userid:t,enabled:s=!0}){const r=s?"enable":"disable";return h.A.requireAdmin().then((a=>h.A.put((0,c.KT)("cloud/users/{userid}/{userStatus}",{userid:t,userStatus:r})).then((r=>e.commit("enableDisableUser",{userid:t,enabled:s}))).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s})))},async setUserData(e,{userid:t,key:s,value:r}){if(!["email","language","quota","displayname","password","manager"].includes(s))throw new Error("Invalid request data");if(""===r&&!["email","displayname","manager"].includes(s))throw new Error("Value cannot be empty for this field");try{return await h.A.requireAdmin(),await h.A.put((0,c.KT)("cloud/users/{userid}",{userid:t}),{key:s,value:r}),e.commit("setUserData",{userid:t,key:s,value:r})}catch(s){throw e.commit("API_FAILURE",{userid:t,error:s}),s}},sendWelcomeMail:(e,t)=>h.A.requireAdmin().then((e=>h.A.post((0,c.KT)("cloud/users/{userid}/welcome",{userid:t})).then((e=>!0)).catch((e=>{throw e})))).catch((s=>e.commit("API_FAILURE",{userid:t,error:s})))}};var P=r(85471);const C={apps:[],bundles:(0,u.C)("settings","appstoreBundles",[]),categories:[],updateCount:(0,u.C)("settings","appstoreUpdateCount",0),loading:{},gettingCategoriesPromise:null,appApiEnabled:(0,u.C)("settings","appApiEnabled",!1)},E={APPS_API_FAILURE(e,s){(0,d.Qg)(t("settings","An error occurred during the request. Unable to proceed.")+"
"+s.error.response.data.data.message,{isHTML:!0}),console.error(e,s)},initCategories(e,{categories:t,updateCount:s}){e.categories=t,e.updateCount=s},updateCategories(e,t){e.gettingCategoriesPromise=t},setUpdateCount(e,t){e.updateCount=t},addCategory(e,t){e.categories.push(t)},appendCategories(e,t){e.categories=t},setAllApps(e,t){e.apps=t},setError(e,{appId:t,error:s}){Array.isArray(t)||(t=[t]),t.forEach((t=>{e.apps.find((e=>e.id===t)).error=s}))},clearError(e,{appId:t,error:s}){e.apps.find((e=>e.id===t)).error=null},enableApp(e,{appId:t,groups:s}){const r=e.apps.find((e=>e.id===t));r.active=!0,r.groups=s,"app_api"===r.id&&(e.appApiEnabled=!0)},setInstallState(e,{appId:t,canInstall:s}){const r=e.apps.find((e=>e.id===t));r&&(r.canInstall=!0===s)},disableApp(e,t){const s=e.apps.find((e=>e.id===t));s.active=!1,s.groups=[],s.removable&&(s.canUnInstall=!0),"app_api"===s.id&&(e.appApiEnabled=!1)},uninstallApp(e,t){e.apps.find((e=>e.id===t)).active=!1,e.apps.find((e=>e.id===t)).groups=[],e.apps.find((e=>e.id===t)).needsDownload=!0,e.apps.find((e=>e.id===t)).installed=!1,e.apps.find((e=>e.id===t)).canUnInstall=!1,e.apps.find((e=>e.id===t)).canInstall=!0,"app_api"===t&&(e.appApiEnabled=!1)},updateApp(e,t){const s=e.apps.find((e=>e.id===t)),r=s.update;s.update=null,s.version=r,e.updateCount--},resetApps(e){e.apps=[]},reset(e){e.apps=[],e.categories=[],e.updateCount=0},startLoading(e,t){Array.isArray(t)?t.forEach((t=>{P.Ay.set(e.loading,t,!0)})):P.Ay.set(e.loading,t,!0)},stopLoading(e,t){Array.isArray(t)?t.forEach((t=>{P.Ay.set(e.loading,t,!1)})):P.Ay.set(e.loading,t,!1)}},F={enableApp(e,{appId:s,groups:r}){let a;return a=Array.isArray(s)?s:[s],h.A.requireAdmin().then((o=>(e.commit("startLoading",a),e.commit("startLoading","install"),h.A.post((0,c.Jv)("settings/apps/enable"),{appIds:a,groups:r}).then((o=>(e.commit("stopLoading",a),e.commit("stopLoading","install"),a.forEach((t=>{e.commit("enableApp",{appId:t,groups:r})})),p.Ay.get((0,c.Jv)("apps/files/")).then((()=>{o.data.update_required&&((0,d.cf)(t("settings","The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds."),{onClick:()=>window.location.reload(),close:!1}),setTimeout((function(){location.reload()}),5e3))})).catch((()=>{Array.isArray(s)||((0,d.Qg)(t("settings","Error: This app cannot be enabled because it makes the server unstable")),e.commit("setError",{appId:a,error:t("settings","Error: This app cannot be enabled because it makes the server unstable")}),e.dispatch("disableApp",{appId:s}))}))))).catch((t=>{e.commit("stopLoading",a),e.commit("stopLoading","install"),e.commit("setError",{appId:a,error:t.response.data.data.message}),e.commit("APPS_API_FAILURE",{appId:s,error:t})}))))).catch((t=>e.commit("API_FAILURE",{appId:s,error:t})))},forceEnableApp(e,{appId:t,groups:s}){let r;return r=Array.isArray(t)?t:[t],h.A.requireAdmin().then((()=>(e.commit("startLoading",r),e.commit("startLoading","install"),h.A.post((0,c.Jv)("settings/apps/force"),{appId:t}).then((s=>{e.commit("setInstallState",{appId:t,canInstall:!0})})).catch((s=>{e.commit("stopLoading",r),e.commit("stopLoading","install"),e.commit("setError",{appId:r,error:s.response.data.data.message}),e.commit("APPS_API_FAILURE",{appId:t,error:s})})).finally((()=>{e.commit("stopLoading",r),e.commit("stopLoading","install")}))))).catch((s=>e.commit("API_FAILURE",{appId:t,error:s})))},disableApp(e,{appId:t}){let s;return s=Array.isArray(t)?t:[t],h.A.requireAdmin().then((r=>(e.commit("startLoading",s),h.A.post((0,c.Jv)("settings/apps/disable"),{appIds:s}).then((t=>(e.commit("stopLoading",s),s.forEach((t=>{e.commit("disableApp",t)})),!0))).catch((r=>{e.commit("stopLoading",s),e.commit("APPS_API_FAILURE",{appId:t,error:r})}))))).catch((s=>e.commit("API_FAILURE",{appId:t,error:s})))},uninstallApp:(e,{appId:t})=>h.A.requireAdmin().then((s=>(e.commit("startLoading",t),h.A.get((0,c.Jv)(`settings/apps/uninstall/${t}`)).then((s=>(e.commit("stopLoading",t),e.commit("uninstallApp",t),!0))).catch((s=>{e.commit("stopLoading",t),e.commit("APPS_API_FAILURE",{appId:t,error:s})}))))).catch((s=>e.commit("API_FAILURE",{appId:t,error:s}))),updateApp:(e,{appId:t})=>h.A.requireAdmin().then((s=>(e.commit("startLoading",t),e.commit("startLoading","install"),h.A.get((0,c.Jv)(`settings/apps/update/${t}`)).then((s=>(e.commit("stopLoading","install"),e.commit("stopLoading",t),e.commit("updateApp",t),!0))).catch((s=>{e.commit("stopLoading",t),e.commit("stopLoading","install"),e.commit("APPS_API_FAILURE",{appId:t,error:s})}))))).catch((s=>e.commit("API_FAILURE",{appId:t,error:s}))),getAllApps:e=>(e.commit("startLoading","list"),h.A.get((0,c.Jv)("settings/apps/list")).then((t=>(e.commit("setAllApps",t.data.apps),e.commit("stopLoading","list"),!0))).catch((t=>e.commit("API_FAILURE",t)))),async getCategories(e,{shouldRefetchCategories:t=!1}={}){if(t||!e.state.gettingCategoriesPromise){e.commit("startLoading","categories");try{const t=h.A.get((0,c.Jv)("settings/apps/categories"));e.commit("updateCategories",t);const s=await t;return s.data.length>0?(e.commit("appendCategories",s.data),e.commit("stopLoading","categories"),!0):(e.commit("stopLoading","categories"),!1)}catch(t){e.commit("API_FAILURE",t)}}return e.state.gettingCategoriesPromise}},R={state:C,mutations:E,getters:{isAppApiEnabled:e=>e.appApiEnabled,loading:e=>function(t){return e.loading[t]},getCategories:e=>e.categories,getAllApps:e=>e.apps,getAppBundles:e=>e.bundles,getUpdateCount:e=>e.updateCount,getCategoryById:e=>t=>e.categories.find((e=>e.id===t))},actions:F},T={serverData:(0,u.C)("settings","usersSettings",{})},k={setServerData(e,t){e.serverData=t}},S={state:T,mutations:k,getters:{getServerData:e=>e.serverData},actions:{}},O={state:{},mutations:{},getters:{},actions:{setAppConfig:(e,{app:t,key:s,value:r})=>h.A.requireAdmin().then((e=>h.A.post((0,c.KT)("apps/provisioning_api/api/v1/config/apps/{app}/{key}",{app:t,key:s}),{value:r}).catch((e=>{throw e})))).catch((a=>e.commit("API_FAILURE",{app:t,key:s,value:r,error:a})))}},q={API_FAILURE(e,s){try{const e=s.error.response.data.ocs.meta.message;(0,d.Qg)(t("settings","An error occurred during the request. Unable to proceed.")+"
"+e,{isHTML:!0})}catch(e){(0,d.Qg)(t("settings","An error occurred during the request. Unable to proceed."))}console.error(e,s)}};let G=null;const K=()=>(null===G&&(G=new a.il({modules:{users:_,apps:R,settings:S,oc:O},strict:!1,mutations:q})),G)},15916:(e,t,s)=>{"use strict";var r;s.d(t,{q:()=>r}),function(e){e[e.UserCount=1]="UserCount",e[e.GroupName=2]="GroupName"}(r||(r={}))},18539:(e,t,s)=>{"use strict";var r=s(85471),a=s(95353),o=s(80284),i=s(58723),n=s(53334),d=s(22378);const c=(0,r.pM)({__name:"SettingsApp",setup:e=>({__sfc:!0,NcContent:d.A})}),u=(0,s(14486).A)(c,(function(){var e=this,t=e._self._c;return t(e._self._setupProxy.NcContent,{attrs:{"app-name":"settings"}},[t("router-view",{attrs:{name:"navigation"}}),e._v(" "),t("router-view"),e._v(" "),t("router-view",{attrs:{name:"sidebar"}})],1)}),[],!1,null,null,null).exports;var p=s(40173),l=s(63814);const m=[{name:"users",path:"/:index(index.php/)?settings/users",components:{default:()=>Promise.all([s.e(4208),s.e(7265),s.e(3239)]).then(s.bind(s,68747)),navigation:()=>Promise.all([s.e(4208),s.e(7265),s.e(3239)]).then(s.bind(s,66423))},props:!0,children:[{path:":selectedGroup",name:"group"}]},{path:"/:index(index.php/)?settings/apps",name:"apps",redirect:{name:"apps-category",params:{category:(0,s(32981).C)("settings","appstoreEnabled",!0)?"discover":"installed"}},components:{default:()=>Promise.all([s.e(4208),s.e(7265),s.e(4529)]).then(s.bind(s,79852)),navigation:()=>Promise.all([s.e(4208),s.e(7265),s.e(4529)]).then(s.bind(s,28372)),sidebar:()=>Promise.all([s.e(4208),s.e(7265),s.e(4529)]).then(s.bind(s,37058))},children:[{path:":category",name:"apps-category",children:[{path:":id",name:"apps-details"}]}]}];r.Ay.use(p.Ay);const g=new p.Ay({mode:"history",base:(0,l.Jv)(""),linkActiveClass:"active",routes:m});var h=s(14744),A=s(61884),f=s(65899);s.nc=(0,A.aV)(),r.Ay.prototype.t=n.t,r.Ay.prototype.n=n.n,r.Ay.use(f.R2),r.Ay.use(o.Ay,{defaultHtml:!1}),r.Ay.use(a.Ay);const b=(0,h.P)();(0,i.O)(b,g);const y=(0,f.Ey)();new r.Ay({router:g,store:b,pinia:y,render:e=>e(u),el:"#content"})},36620:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});const r=(0,s(35947).YK)().setApp("settings").detectUser().build()},58723:(e,t)=>{function s(e,t){var r={name:e.name,path:e.path,hash:e.hash,query:e.query,params:e.params,fullPath:e.fullPath,meta:e.meta};return t&&(r.from=s(t)),Object.freeze(r)}t.O=function(e,t,r){var a=(r||{}).moduleName||"route";e.registerModule(a,{namespaced:!0,state:s(t.currentRoute),mutations:{ROUTE_CHANGED:function(t,r){e.state[a]=s(r.to,r.from)}}});var o,i=!1,n=e.watch((function(e){return e[a]}),(function(e){var s=e.fullPath;s!==o&&(null!=o&&(i=!0,t.push(e)),o=s)}),{sync:!0}),d=t.afterEach((function(t,s){i?i=!1:(o=t.fullPath,e.commit(a+"/ROUTE_CHANGED",{to:t,from:s}))}));return function(){null!=d&&d(),null!=n&&n(),e.unregisterModule(a)}}}},o={};function i(e){var t=o[e];if(void 0!==t)return t.exports;var s=o[e]={id:e,loaded:!1,exports:{}};return a[e].call(s.exports,s,s.exports,i),s.loaded=!0,s.exports}i.m=a,e=[],i.O=(t,s,r,a)=>{if(!s){var o=1/0;for(u=0;u=a)&&Object.keys(i.O).every((e=>i.O[e](s[d])))?s.splice(d--,1):(n=!1,a0&&e[u-1][2]>a;u--)e[u]=e[u-1];e[u]=[s,r,a]},i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var s in t)i.o(t,s)&&!i.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,s)=>(i.f[s](e,t),t)),[])),i.u=e=>(({3239:"settings-users",4529:"settings-apps-view"}[e]||e)+"-"+e+".js?v="+{3239:"a345379f155ee4f34e2a",3278:"8b4fe0854296793e7bfb",3303:"d8c64a54c299c412b27b",4529:"cf01e5424ba636329f9f",4612:"aebb24cec040bc57223b",5664:"4b28558df62ae5fee1e5",5862:"142cd48ca8ec32e57725",7265:"901c2964e1f5de9faba1",7471:"6423b9b898ffefeb7d1d",8737:"3ea02e5c6b6e798b7d97",9972:"fbcc5a88a571c9921953"}[e]),i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s={},r="nextcloud:",i.l=(e,t,a,o)=>{if(s[e])s[e].push(t);else{var n,d;if(void 0!==a)for(var c=document.getElementsByTagName("script"),u=0;u{n.onerror=n.onload=null,clearTimeout(m);var a=s[e];if(delete s[e],n.parentNode&&n.parentNode.removeChild(n),a&&a.forEach((e=>e(r))),t)return t(r)},m=setTimeout(l.bind(null,void 0,{type:"timeout",target:n}),12e4);n.onerror=l.bind(null,n.onerror),n.onload=l.bind(null,n.onload),d&&document.head.appendChild(n)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),i.j=2689,(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var t=i.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var s=t.getElementsByTagName("script");if(s.length)for(var r=s.length-1;r>-1&&(!e||!/^http(s?):/.test(e));)e=s[r--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{i.b=document.baseURI||self.location.href;var e={2689:0};i.f.j=(t,s)=>{var r=i.o(e,t)?e[t]:void 0;if(0!==r)if(r)s.push(r[2]);else{var a=new Promise(((s,a)=>r=e[t]=[s,a]));s.push(r[2]=a);var o=i.p+i.u(t),n=new Error;i.l(o,(s=>{if(i.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var a=s&&("load"===s.type?"missing":s.type),o=s&&s.target&&s.target.src;n.message="Loading chunk "+t+" failed.\n("+a+": "+o+")",n.name="ChunkLoadError",n.type=a,n.request=o,r[1](n)}}),"chunk-"+t,t)}},i.O.j=t=>0===e[t];var t=(t,s)=>{var r,a,o=s[0],n=s[1],d=s[2],c=0;if(o.some((t=>0!==e[t]))){for(r in n)i.o(n,r)&&(i.m[r]=n[r]);if(d)var u=d(i)}for(t&&t(s);ci(18539)));n=i.O(n)})(); +//# sourceMappingURL=settings-vue-settings-apps-users-management.js.map?v=164d17f253cf304f28d7 \ No newline at end of file diff --git a/dist/settings-vue-settings-apps-users-management.js.map b/dist/settings-vue-settings-apps-users-management.js.map index 2af9f1ce02f..a93f2f64906 100644 --- a/dist/settings-vue-settings-apps-users-management.js.map +++ b/dist/settings-vue-settings-apps-users-management.js.map @@ -1 +1 @@ -{"version":3,"file":"settings-vue-settings-apps-users-management.js?v=52966bcf2b10254c885c","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/settings/src/store/api.js","webpack:///nextcloud/apps/settings/src/utils/sorting.ts","webpack:///nextcloud/apps/settings/src/store/users.js","webpack:///nextcloud/apps/settings/src/store/apps.js","webpack:///nextcloud/apps/settings/src/store/users-settings.js","webpack:///nextcloud/apps/settings/src/store/oc.js","webpack:///nextcloud/apps/settings/src/store/index.js","webpack:///nextcloud/apps/settings/src/constants/GroupManagement.ts","webpack:///nextcloud/apps/settings/src/views/SettingsApp.vue","webpack:///nextcloud/apps/settings/src/views/SettingsApp.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/settings/src/views/SettingsApp.vue?3a67","webpack:///nextcloud/apps/settings/src/router/routes.ts","webpack:///nextcloud/apps/settings/src/router/index.ts","webpack:///nextcloud/apps/settings/src/main-apps-users-management.ts","webpack:///nextcloud/apps/settings/src/logger.ts","webpack:///nextcloud/node_modules/vuex-router-sync/index.js","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport axios from '@nextcloud/axios'\nimport { confirmPassword } from '@nextcloud/password-confirmation'\nimport '@nextcloud/password-confirmation/dist/style.css'\n\nconst sanitize = function(url) {\n\treturn url.replace(/\\/$/, '') // Remove last url slash\n}\n\nexport default {\n\n\t/**\n\t * This Promise is used to chain a request that require an admin password confirmation\n\t * Since chaining Promise have a very precise behavior concerning catch and then,\n\t * you'll need to be careful when using it.\n\t * e.g\n\t * // store\n\t * action(context) {\n\t * return api.requireAdmin().then((response) => {\n\t * return api.get('url')\n\t * .then((response) => {API success})\n\t * .catch((error) => {API failure});\n\t * }).catch((error) => {requireAdmin failure});\n\t * }\n\t * // vue\n\t * this.$store.dispatch('action').then(() => {always executed})\n\t *\n\t * Since Promise.then().catch().then() will always execute the last then\n\t * this.$store.dispatch('action').then will always be executed\n\t *\n\t * If you want requireAdmin failure to also catch the API request failure\n\t * you will need to throw a new error in the api.get.catch()\n\t *\n\t * e.g\n\t * api.requireAdmin().then((response) => {\n\t * api.get('url')\n\t * .then((response) => {API success})\n\t * .catch((error) => {throw error;});\n\t * }).catch((error) => {requireAdmin OR API failure});\n\t *\n\t * @return {Promise}\n\t */\n\trequireAdmin() {\n\t\treturn confirmPassword()\n\t},\n\tget(url, options) {\n\t\treturn axios.get(sanitize(url), options)\n\t},\n\tpost(url, data) {\n\t\treturn axios.post(sanitize(url), data)\n\t},\n\tpatch(url, data) {\n\t\treturn axios.patch(sanitize(url), data)\n\t},\n\tput(url, data) {\n\t\treturn axios.put(sanitize(url), data)\n\t},\n\tdelete(url, data) {\n\t\treturn axios.delete(sanitize(url), { params: data })\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCanonicalLocale, getLanguage } from '@nextcloud/l10n';\nexport const naturalCollator = Intl.Collator([getLanguage(), getCanonicalLocale()], {\n numeric: true,\n usage: 'sort',\n});\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getBuilder } from '@nextcloud/browser-storage'\nimport { getCapabilities } from '@nextcloud/capabilities'\nimport { parseFileSize } from '@nextcloud/files'\nimport { showError } from '@nextcloud/dialogs'\nimport { generateOcsUrl, generateUrl } from '@nextcloud/router'\nimport { loadState } from '@nextcloud/initial-state'\nimport axios from '@nextcloud/axios'\n\nimport { GroupSorting } from '../constants/GroupManagement.ts'\nimport { naturalCollator } from '../utils/sorting.ts'\nimport api from './api.js'\nimport logger from '../logger.ts'\n\nconst usersSettings = loadState('settings', 'usersSettings', {})\n\nconst localStorage = getBuilder('settings').persist(true).build()\n\nconst defaults = {\n\t/**\n\t * @type {import('../views/user-types').IGroup}\n\t */\n\tgroup: {\n\t\tid: '',\n\t\tname: '',\n\t\tusercount: 0,\n\t\tdisabled: 0,\n\t\tcanAdd: true,\n\t\tcanRemove: true,\n\t},\n}\n\nconst state = {\n\tusers: [],\n\tgroups: [\n\t\t...(usersSettings.getSubAdminGroups ?? []),\n\t\t...(usersSettings.systemGroups ?? []),\n\t],\n\torderBy: usersSettings.sortGroups ?? GroupSorting.UserCount,\n\tminPasswordLength: 0,\n\tusersOffset: 0,\n\tusersLimit: 25,\n\tdisabledUsersOffset: 0,\n\tdisabledUsersLimit: 25,\n\tuserCount: usersSettings.userCount ?? 0,\n\tshowConfig: {\n\t\tshowStoragePath: localStorage.getItem('account_settings__showStoragePath') === 'true',\n\t\tshowUserBackend: localStorage.getItem('account_settings__showUserBackend') === 'true',\n\t\tshowFirstLogin: localStorage.getItem('account_settings__showFirstLogin') === 'true',\n\t\tshowLastLogin: localStorage.getItem('account_settings__showLastLogin') === 'true',\n\t\tshowNewUserForm: localStorage.getItem('account_settings__showNewUserForm') === 'true',\n\t\tshowLanguages: localStorage.getItem('account_settings__showLanguages') === 'true',\n\t},\n}\n\nconst mutations = {\n\tappendUsers(state, usersObj) {\n\t\tconst existingUsers = state.users.map(({ id }) => id)\n\t\tconst newUsers = Object.values(usersObj)\n\t\t\t.filter(({ id }) => !existingUsers.includes(id))\n\n\t\tconst users = state.users.concat(newUsers)\n\t\tstate.usersOffset += state.usersLimit\n\t\tstate.users = users\n\t},\n\tupdateDisabledUsers(state, _usersObj) {\n\t\tstate.disabledUsersOffset += state.disabledUsersLimit\n\t},\n\tsetPasswordPolicyMinLength(state, length) {\n\t\tstate.minPasswordLength = length !== '' ? length : 0\n\t},\n\t/**\n\t * @param {object} state store state\n\t * @param {import('../views/user-types.js').IGroup} newGroup new group\n\t */\n\taddGroup(state, newGroup) {\n\t\ttry {\n\t\t\tif (typeof state.groups.find((group) => group.id === newGroup.id) !== 'undefined') {\n\t\t\t\treturn\n\t\t\t}\n\t\t\t// extend group to default values\n\t\t\tconst group = Object.assign({}, defaults.group, newGroup)\n\t\t\tstate.groups.unshift(group)\n\t\t} catch (e) {\n\t\t\tconsole.error('Can\\'t create group', e)\n\t\t}\n\t},\n\trenameGroup(state, { gid, displayName }) {\n\t\tconst groupIndex = state.groups.findIndex(groupSearch => groupSearch.id === gid)\n\t\tif (groupIndex >= 0) {\n\t\t\tconst updatedGroup = state.groups[groupIndex]\n\t\t\tupdatedGroup.name = displayName\n\t\t\tstate.groups.splice(groupIndex, 1, updatedGroup)\n\t\t}\n\t},\n\tremoveGroup(state, gid) {\n\t\tconst groupIndex = state.groups.findIndex(groupSearch => groupSearch.id === gid)\n\t\tif (groupIndex >= 0) {\n\t\t\tstate.groups.splice(groupIndex, 1)\n\t\t}\n\t},\n\taddUserGroup(state, { userid, gid }) {\n\t\tconst group = state.groups.find(groupSearch => groupSearch.id === gid)\n\t\tconst user = state.users.find(user => user.id === userid)\n\t\t// increase count if user is enabled\n\t\tif (group && user.enabled && state.userCount > 0) {\n\t\t\tgroup.usercount++\n\t\t}\n\t\tconst groups = user.groups\n\t\tgroups.push(gid)\n\t},\n\tremoveUserGroup(state, { userid, gid }) {\n\t\tconst group = state.groups.find(groupSearch => groupSearch.id === gid)\n\t\tconst user = state.users.find(user => user.id === userid)\n\t\t// lower count if user is enabled\n\t\tif (group && user.enabled && state.userCount > 0) {\n\t\t\tgroup.usercount--\n\t\t}\n\t\tconst groups = user.groups\n\t\tgroups.splice(groups.indexOf(gid), 1)\n\t},\n\taddUserSubAdmin(state, { userid, gid }) {\n\t\tconst groups = state.users.find(user => user.id === userid).subadmin\n\t\tgroups.push(gid)\n\t},\n\tremoveUserSubAdmin(state, { userid, gid }) {\n\t\tconst groups = state.users.find(user => user.id === userid).subadmin\n\t\tgroups.splice(groups.indexOf(gid), 1)\n\t},\n\tdeleteUser(state, userid) {\n\t\tconst userIndex = state.users.findIndex(user => user.id === userid)\n\t\tthis.commit('updateUserCounts', { user: state.users[userIndex], actionType: 'remove' })\n\t\tstate.users.splice(userIndex, 1)\n\t},\n\taddUserData(state, response) {\n\t\tconst user = response.data.ocs.data\n\t\tstate.users.unshift(user)\n\t\tthis.commit('updateUserCounts', { user, actionType: 'create' })\n\t},\n\tenableDisableUser(state, { userid, enabled }) {\n\t\tconst user = state.users.find(user => user.id === userid)\n\t\tuser.enabled = enabled\n\t\tthis.commit('updateUserCounts', { user, actionType: enabled ? 'enable' : 'disable' })\n\t},\n\t// update active/disabled counts, groups counts\n\tupdateUserCounts(state, { user, actionType }) {\n\t\t// 0 is a special value\n\t\tif (state.userCount === 0) {\n\t\t\treturn\n\t\t}\n\n\t\tconst recentGroup = state.groups.find(group => group.id === '__nc_internal_recent')\n\t\tconst disabledGroup = state.groups.find(group => group.id === 'disabled')\n\t\tswitch (actionType) {\n\t\tcase 'enable':\n\t\tcase 'disable':\n\t\t\tdisabledGroup.usercount += user.enabled ? -1 : 1 // update Disabled Users count\n\t\t\trecentGroup.usercount += user.enabled ? 1 : -1\n\t\t\tstate.userCount += user.enabled ? 1 : -1 // update Active Users count\n\t\t\tuser.groups.forEach(userGroup => {\n\t\t\t\tconst group = state.groups.find(groupSearch => groupSearch.id === userGroup)\n\t\t\t\tif (!group) {\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tgroup.disabled += user.enabled ? -1 : 1 // update group disabled count\n\t\t\t})\n\t\t\tbreak\n\t\tcase 'create':\n\t\t\trecentGroup.usercount++\n\t\t\tstate.userCount++ // increment Active Users count\n\n\t\t\tuser.groups.forEach(userGroup => {\n\t\t\t\tconst group = state.groups.find(groupSearch => groupSearch.id === userGroup)\n\t\t\t\tif (!group) {\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tgroup.usercount++ // increment group total count\n\t\t\t})\n\t\t\tbreak\n\t\tcase 'remove':\n\t\t\tif (user.enabled) {\n\t\t\t\trecentGroup.usercount--\n\t\t\t\tstate.userCount-- // decrement Active Users count\n\t\t\t\tuser.groups.forEach(userGroup => {\n\t\t\t\t\tconst group = state.groups.find(groupSearch => groupSearch.id === userGroup)\n\t\t\t\t\tif (!group) {\n\t\t\t\t\t\tconsole.warn('User group ' + userGroup + ' does not exist during user removal')\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t\tgroup.usercount-- // decrement group total count\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\tdisabledGroup.usercount-- // decrement Disabled Users count\n\t\t\t\tuser.groups.forEach(userGroup => {\n\t\t\t\t\tconst group = state.groups.find(groupSearch => groupSearch.id === userGroup)\n\t\t\t\t\tif (!group) {\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t\tgroup.disabled-- // decrement group disabled count\n\t\t\t\t})\n\t\t\t}\n\t\t\tbreak\n\t\tdefault:\n\t\t\tlogger.error(`Unknown action type in updateUserCounts: '${actionType}'`)\n\t\t\t// not throwing error to interrupt execution as this is not fatal\n\t\t}\n\t},\n\tsetUserData(state, { userid, key, value }) {\n\t\tif (key === 'quota') {\n\t\t\tconst humanValue = parseFileSize(value, true)\n\t\t\tstate.users.find(user => user.id === userid)[key][key] = humanValue !== null ? humanValue : value\n\t\t} else {\n\t\t\tstate.users.find(user => user.id === userid)[key] = value\n\t\t}\n\t},\n\n\t/**\n\t * Reset users list\n\t *\n\t * @param {object} state the store state\n\t */\n\tresetUsers(state) {\n\t\tstate.users = []\n\t\tstate.usersOffset = 0\n\t\tstate.disabledUsersOffset = 0\n\t},\n\n\t/**\n\t * Reset group list\n\t *\n\t * @param {object} state the store state\n\t */\n\tresetGroups(state) {\n\t\tstate.groups = [\n\t\t\t...(usersSettings.getSubAdminGroups ?? []),\n\t\t\t...(usersSettings.systemGroups ?? []),\n\t\t]\n\t},\n\n\tsetShowConfig(state, { key, value }) {\n\t\tlocalStorage.setItem(`account_settings__${key}`, JSON.stringify(value))\n\t\tstate.showConfig[key] = value\n\t},\n\n\tsetGroupSorting(state, sorting) {\n\t\tconst oldValue = state.orderBy\n\t\tstate.orderBy = sorting\n\n\t\t// Persist the value on the server\n\t\taxios.post(\n\t\t\tgenerateUrl('/settings/users/preferences/group.sortBy'),\n\t\t\t{\n\t\t\t\tvalue: String(sorting),\n\t\t\t},\n\t\t).catch((error) => {\n\t\t\tstate.orderBy = oldValue\n\t\t\tshowError(t('settings', 'Could not set group sorting'))\n\t\t\tlogger.error(error)\n\t\t})\n\t},\n}\n\nconst getters = {\n\tgetUsers(state) {\n\t\treturn state.users\n\t},\n\tgetGroups(state) {\n\t\treturn state.groups\n\t},\n\tgetSubAdminGroups() {\n\t\treturn usersSettings.subAdminGroups ?? []\n\t},\n\n\tgetSortedGroups(state) {\n\t\tconst groups = [...state.groups]\n\t\tif (state.orderBy === GroupSorting.UserCount) {\n\t\t\treturn groups.sort((a, b) => {\n\t\t\t\tconst numA = a.usercount - a.disabled\n\t\t\t\tconst numB = b.usercount - b.disabled\n\t\t\t\treturn (numA < numB) ? 1 : (numB < numA ? -1 : naturalCollator.compare(a.name, b.name))\n\t\t\t})\n\t\t} else {\n\t\t\treturn groups.sort((a, b) => naturalCollator.compare(a.name, b.name))\n\t\t}\n\t},\n\tgetGroupSorting(state) {\n\t\treturn state.orderBy\n\t},\n\tgetPasswordPolicyMinLength(state) {\n\t\treturn state.minPasswordLength\n\t},\n\tgetUsersOffset(state) {\n\t\treturn state.usersOffset\n\t},\n\tgetUsersLimit(state) {\n\t\treturn state.usersLimit\n\t},\n\tgetDisabledUsersOffset(state) {\n\t\treturn state.disabledUsersOffset\n\t},\n\tgetDisabledUsersLimit(state) {\n\t\treturn state.disabledUsersLimit\n\t},\n\tgetUserCount(state) {\n\t\treturn state.userCount\n\t},\n\tgetShowConfig(state) {\n\t\treturn state.showConfig\n\t},\n}\n\nconst CancelToken = axios.CancelToken\nlet searchRequestCancelSource = null\n\nconst actions = {\n\n\t/**\n\t * search users\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param {string} options.search Search amongst users\n\t * @return {Promise}\n\t */\n\tsearchUsers(context, { offset, limit, search }) {\n\t\tsearch = typeof search === 'string' ? search : ''\n\n\t\treturn api.get(generateOcsUrl('cloud/users/details?offset={offset}&limit={limit}&search={search}', { offset, limit, search })).catch((error) => {\n\t\t\tif (!axios.isCancel(error)) {\n\t\t\t\tcontext.commit('API_FAILURE', error)\n\t\t\t}\n\t\t})\n\t},\n\n\t/**\n\t * Get user details\n\t *\n\t * @param {object} context store context\n\t * @param {string} userId user id\n\t * @return {Promise}\n\t */\n\tgetUser(context, userId) {\n\t\treturn api.get(generateOcsUrl(`cloud/users/${userId}`)).catch((error) => {\n\t\t\tif (!axios.isCancel(error)) {\n\t\t\t\tcontext.commit('API_FAILURE', error)\n\t\t\t}\n\t\t})\n\t},\n\n\t/**\n\t * Get all users with full details\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param {string} options.search Search amongst users\n\t * @param {string} options.group Get users from group\n\t * @return {Promise}\n\t */\n\tgetUsers(context, { offset, limit, search, group }) {\n\t\tif (searchRequestCancelSource) {\n\t\t\tsearchRequestCancelSource.cancel('Operation canceled by another search request.')\n\t\t}\n\t\tsearchRequestCancelSource = CancelToken.source()\n\t\tsearch = typeof search === 'string' ? search : ''\n\n\t\t/**\n\t\t * Adding filters in the search bar such as in:files, in:users, etc.\n\t\t * collides with this particular search, so we need to remove them\n\t\t * here and leave only the original search query\n\t\t */\n\t\tsearch = search.replace(/in:[^\\s]+/g, '').trim()\n\n\t\tgroup = typeof group === 'string' ? group : ''\n\t\tif (group !== '') {\n\t\t\treturn api.get(generateOcsUrl('cloud/groups/{group}/users/details?offset={offset}&limit={limit}&search={search}', { group: encodeURIComponent(group), offset, limit, search }), {\n\t\t\t\tcancelToken: searchRequestCancelSource.token,\n\t\t\t})\n\t\t\t\t.then((response) => {\n\t\t\t\t\tconst usersCount = Object.keys(response.data.ocs.data.users).length\n\t\t\t\t\tif (usersCount > 0) {\n\t\t\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users)\n\t\t\t\t\t}\n\t\t\t\t\treturn usersCount\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tif (!axios.isCancel(error)) {\n\t\t\t\t\t\tcontext.commit('API_FAILURE', error)\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t}\n\n\t\treturn api.get(generateOcsUrl('cloud/users/details?offset={offset}&limit={limit}&search={search}', { offset, limit, search }), {\n\t\t\tcancelToken: searchRequestCancelSource.token,\n\t\t})\n\t\t\t.then((response) => {\n\t\t\t\tconst usersCount = Object.keys(response.data.ocs.data.users).length\n\t\t\t\tif (usersCount > 0) {\n\t\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users)\n\t\t\t\t}\n\t\t\t\treturn usersCount\n\t\t\t})\n\t\t\t.catch((error) => {\n\t\t\t\tif (!axios.isCancel(error)) {\n\t\t\t\t\tcontext.commit('API_FAILURE', error)\n\t\t\t\t}\n\t\t\t})\n\t},\n\n\t/**\n\t * Get recent users with full details\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param {string} options.search Search query\n\t * @return {Promise}\n\t */\n\tasync getRecentUsers(context, { offset, limit, search }) {\n\t\tconst url = generateOcsUrl('cloud/users/recent?offset={offset}&limit={limit}&search={search}', { offset, limit, search })\n\t\ttry {\n\t\t\tconst response = await api.get(url)\n\t\t\tconst usersCount = Object.keys(response.data.ocs.data.users).length\n\t\t\tif (usersCount > 0) {\n\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users)\n\t\t\t}\n\t\t\treturn usersCount\n\t\t} catch (error) {\n\t\t\tcontext.commit('API_FAILURE', error)\n\t\t}\n\t},\n\n\t/**\n\t * Get disabled users with full details\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param options.search\n\t * @return {Promise}\n\t */\n\tasync getDisabledUsers(context, { offset, limit, search }) {\n\t\tconst url = generateOcsUrl('cloud/users/disabled?offset={offset}&limit={limit}&search={search}', { offset, limit, search })\n\t\ttry {\n\t\t\tconst response = await api.get(url)\n\t\t\tconst usersCount = Object.keys(response.data.ocs.data.users).length\n\t\t\tif (usersCount > 0) {\n\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users)\n\t\t\t\tcontext.commit('updateDisabledUsers', response.data.ocs.data.users)\n\t\t\t}\n\t\t\treturn usersCount\n\t\t} catch (error) {\n\t\t\tcontext.commit('API_FAILURE', error)\n\t\t}\n\t},\n\n\tgetGroups(context, { offset, limit, search }) {\n\t\tsearch = typeof search === 'string' ? search : ''\n\t\tconst limitParam = limit === -1 ? '' : `&limit=${limit}`\n\t\treturn api.get(generateOcsUrl('cloud/groups?offset={offset}&search={search}', { offset, search }) + limitParam)\n\t\t\t.then((response) => {\n\t\t\t\tif (Object.keys(response.data.ocs.data.groups).length > 0) {\n\t\t\t\t\tresponse.data.ocs.data.groups.forEach(function(group) {\n\t\t\t\t\t\tcontext.commit('addGroup', { id: group, name: group })\n\t\t\t\t\t})\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\treturn false\n\t\t\t})\n\t\t\t.catch((error) => context.commit('API_FAILURE', error))\n\t},\n\n\t/**\n\t * Get all users with full details\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param {string} options.search -\n\t * @return {Promise}\n\t */\n\tgetUsersFromList(context, { offset, limit, search }) {\n\t\tsearch = typeof search === 'string' ? search : ''\n\t\treturn api.get(generateOcsUrl('cloud/users/details?offset={offset}&limit={limit}&search={search}', { offset, limit, search }))\n\t\t\t.then((response) => {\n\t\t\t\tif (Object.keys(response.data.ocs.data.users).length > 0) {\n\t\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users)\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\treturn false\n\t\t\t})\n\t\t\t.catch((error) => context.commit('API_FAILURE', error))\n\t},\n\n\t/**\n\t * Get all users with full details from a groupid\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param {string} options.groupid -\n\t * @return {Promise}\n\t */\n\tgetUsersFromGroup(context, { groupid, offset, limit }) {\n\t\treturn api.get(generateOcsUrl('cloud/users/{groupId}/details?offset={offset}&limit={limit}', { groupId: encodeURIComponent(groupid), offset, limit }))\n\t\t\t.then((response) => context.commit('getUsersFromList', response.data.ocs.data.users))\n\t\t\t.catch((error) => context.commit('API_FAILURE', error))\n\t},\n\n\tgetPasswordPolicyMinLength(context) {\n\t\tif (getCapabilities().password_policy && getCapabilities().password_policy.minLength) {\n\t\t\tcontext.commit('setPasswordPolicyMinLength', getCapabilities().password_policy.minLength)\n\t\t\treturn getCapabilities().password_policy.minLength\n\t\t}\n\t\treturn false\n\t},\n\n\t/**\n\t * Add group\n\t *\n\t * @param {object} context store context\n\t * @param {string} gid Group id\n\t * @return {Promise}\n\t */\n\taddGroup(context, gid) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('cloud/groups'), { groupid: gid })\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('addGroup', { id: gid, name: gid })\n\t\t\t\t\treturn { gid, displayName: gid }\n\t\t\t\t})\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => {\n\t\t\tcontext.commit('API_FAILURE', { gid, error })\n\t\t\t// let's throw one more time to prevent the view\n\t\t\t// from adding the user to a group that doesn't exists\n\t\t\tthrow error\n\t\t})\n\t},\n\n\t/**\n\t * Rename group\n\t *\n\t * @param {object} context store context\n\t * @param {string} groupid Group id\n\t * @param {string} displayName Group display name\n\t * @return {Promise}\n\t */\n\trenameGroup(context, { groupid, displayName }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.put(generateOcsUrl('cloud/groups/{groupId}', { groupId: encodeURIComponent(groupid) }), { key: 'displayname', value: displayName })\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('renameGroup', { gid: groupid, displayName })\n\t\t\t\t\treturn { groupid, displayName }\n\t\t\t\t})\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => {\n\t\t\tcontext.commit('API_FAILURE', { groupid, error })\n\t\t\t// let's throw one more time to prevent the view\n\t\t\t// from renaming the group\n\t\t\tthrow error\n\t\t})\n\t},\n\n\t/**\n\t * Remove group\n\t *\n\t * @param {object} context store context\n\t * @param {string} gid Group id\n\t * @return {Promise}\n\t */\n\tremoveGroup(context, gid) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.delete(generateOcsUrl('cloud/groups/{groupId}', { groupId: encodeURIComponent(gid) }))\n\t\t\t\t.then((response) => context.commit('removeGroup', gid))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { gid, error }))\n\t},\n\n\t/**\n\t * Add user to group\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.gid Group id\n\t * @return {Promise}\n\t */\n\taddUserGroup(context, { userid, gid }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('cloud/users/{userid}/groups', { userid }), { groupid: gid })\n\t\t\t\t.then((response) => context.commit('addUserGroup', { userid, gid }))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Remove user from group\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.gid Group id\n\t * @return {Promise}\n\t */\n\tremoveUserGroup(context, { userid, gid }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.delete(generateOcsUrl('cloud/users/{userid}/groups', { userid }), { groupid: gid })\n\t\t\t\t.then((response) => context.commit('removeUserGroup', { userid, gid }))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => {\n\t\t\tcontext.commit('API_FAILURE', { userid, error })\n\t\t\t// let's throw one more time to prevent\n\t\t\t// the view from removing the user row on failure\n\t\t\tthrow error\n\t\t})\n\t},\n\n\t/**\n\t * Add user to group admin\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.gid Group id\n\t * @return {Promise}\n\t */\n\taddUserSubAdmin(context, { userid, gid }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('cloud/users/{userid}/subadmins', { userid }), { groupid: gid })\n\t\t\t\t.then((response) => context.commit('addUserSubAdmin', { userid, gid }))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Remove user from group admin\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.gid Group id\n\t * @return {Promise}\n\t */\n\tremoveUserSubAdmin(context, { userid, gid }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.delete(generateOcsUrl('cloud/users/{userid}/subadmins', { userid }), { groupid: gid })\n\t\t\t\t.then((response) => context.commit('removeUserSubAdmin', { userid, gid }))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Mark all user devices for remote wipe\n\t *\n\t * @param {object} context store context\n\t * @param {string} userid User id\n\t * @return {Promise}\n\t */\n\tasync wipeUserDevices(context, userid) {\n\t\ttry {\n\t\t\tawait api.requireAdmin()\n\t\t\treturn await api.post(generateOcsUrl('cloud/users/{userid}/wipe', { userid }))\n\t\t} catch (error) {\n\t\t\tcontext.commit('API_FAILURE', { userid, error })\n\t\t\treturn Promise.reject(new Error('Failed to wipe user devices'))\n\t\t}\n\t},\n\n\t/**\n\t * Delete a user\n\t *\n\t * @param {object} context store context\n\t * @param {string} userid User id\n\t * @return {Promise}\n\t */\n\tdeleteUser(context, userid) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.delete(generateOcsUrl('cloud/users/{userid}', { userid }))\n\t\t\t\t.then((response) => context.commit('deleteUser', userid))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Add a user\n\t *\n\t * @param {object} context store context\n\t * @param {Function} context.commit -\n\t * @param {Function} context.dispatch -\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.password User password\n\t * @param {string} options.displayName User display name\n\t * @param {string} options.email User email\n\t * @param {string} options.groups User groups\n\t * @param {string} options.subadmin User subadmin groups\n\t * @param {string} options.quota User email\n\t * @param {string} options.language User language\n\t * @param {string} options.manager User manager\n\t * @return {Promise}\n\t */\n\taddUser({ commit, dispatch }, { userid, password, displayName, email, groups, subadmin, quota, language, manager }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('cloud/users'), { userid, password, displayName, email, groups, subadmin, quota, language, manager })\n\t\t\t\t.then((response) => dispatch('addUserData', userid || response.data.ocs.data.id))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => {\n\t\t\tcommit('API_FAILURE', { userid, error })\n\t\t\tthrow error\n\t\t})\n\t},\n\n\t/**\n\t * Get user data and commit addition\n\t *\n\t * @param {object} context store context\n\t * @param {string} userid User id\n\t * @return {Promise}\n\t */\n\taddUserData(context, userid) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.get(generateOcsUrl('cloud/users/{userid}', { userid }))\n\t\t\t\t.then((response) => context.commit('addUserData', response))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Enable or disable user\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {boolean} options.enabled User enablement status\n\t * @return {Promise}\n\t */\n\tenableDisableUser(context, { userid, enabled = true }) {\n\t\tconst userStatus = enabled ? 'enable' : 'disable'\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.put(generateOcsUrl('cloud/users/{userid}/{userStatus}', { userid, userStatus }))\n\t\t\t\t.then((response) => context.commit('enableDisableUser', { userid, enabled }))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Edit user data\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.key User field to edit\n\t * @param {string} options.value Value of the change\n\t * @return {Promise}\n\t */\n\tasync setUserData(context, { userid, key, value }) {\n\t\tconst allowedEmpty = ['email', 'displayname', 'manager']\n\t\tconst validKeys = ['email', 'language', 'quota', 'displayname', 'password', 'manager']\n\n\t\tif (!validKeys.includes(key)) {\n\t\t\tthrow new Error('Invalid request data')\n\t\t}\n\n\t\t// If value is empty and the key doesn't allow empty values, throw error\n\t\tif (value === '' && !allowedEmpty.includes(key)) {\n\t\t\tthrow new Error('Value cannot be empty for this field')\n\t\t}\n\n\t\ttry {\n\t\t\tawait api.requireAdmin()\n\t\t\tawait api.put(generateOcsUrl('cloud/users/{userid}', { userid }), { key, value })\n\t\t\treturn context.commit('setUserData', { userid, key, value })\n\t\t} catch (error) {\n\t\t\tcontext.commit('API_FAILURE', { userid, error })\n\t\t\tthrow error\n\t\t}\n\t},\n\n\t/**\n\t * Send welcome mail\n\t *\n\t * @param {object} context store context\n\t * @param {string} userid User id\n\t * @return {Promise}\n\t */\n\tsendWelcomeMail(context, userid) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('cloud/users/{userid}/welcome', { userid }))\n\t\t\t\t.then(response => true)\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n}\n\nexport default { state, mutations, getters, actions }\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport api from './api.js'\nimport Vue from 'vue'\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\nimport { showError, showInfo } from '@nextcloud/dialogs'\nimport { loadState } from '@nextcloud/initial-state'\n\nconst state = {\n\tapps: [],\n\tbundles: loadState('settings', 'appstoreBundles', []),\n\tcategories: [],\n\tupdateCount: loadState('settings', 'appstoreUpdateCount', 0),\n\tloading: {},\n\tgettingCategoriesPromise: null,\n\tappApiEnabled: loadState('settings', 'appApiEnabled', false),\n}\n\nconst mutations = {\n\n\tAPPS_API_FAILURE(state, error) {\n\t\tshowError(t('settings', 'An error occurred during the request. Unable to proceed.') + '
' + error.error.response.data.data.message, { isHTML: true })\n\t\tconsole.error(state, error)\n\t},\n\n\tinitCategories(state, { categories, updateCount }) {\n\t\tstate.categories = categories\n\t\tstate.updateCount = updateCount\n\t},\n\n\tupdateCategories(state, categoriesPromise) {\n\t\tstate.gettingCategoriesPromise = categoriesPromise\n\t},\n\n\tsetUpdateCount(state, updateCount) {\n\t\tstate.updateCount = updateCount\n\t},\n\n\taddCategory(state, category) {\n\t\tstate.categories.push(category)\n\t},\n\n\tappendCategories(state, categoriesArray) {\n\t\t// convert obj to array\n\t\tstate.categories = categoriesArray\n\t},\n\n\tsetAllApps(state, apps) {\n\t\tstate.apps = apps\n\t},\n\n\tsetError(state, { appId, error }) {\n\t\tif (!Array.isArray(appId)) {\n\t\t\tappId = [appId]\n\t\t}\n\t\tappId.forEach((_id) => {\n\t\t\tconst app = state.apps.find(app => app.id === _id)\n\t\t\tapp.error = error\n\t\t})\n\t},\n\n\tclearError(state, { appId, error }) {\n\t\tconst app = state.apps.find(app => app.id === appId)\n\t\tapp.error = null\n\t},\n\n\tenableApp(state, { appId, groups }) {\n\t\tconst app = state.apps.find(app => app.id === appId)\n\t\tapp.active = true\n\t\tapp.groups = groups\n\t\tif (app.id === 'app_api') {\n\t\t\tstate.appApiEnabled = true\n\t\t}\n\t},\n\n\tsetInstallState(state, { appId, canInstall }) {\n\t\tconst app = state.apps.find(app => app.id === appId)\n\t\tif (app) {\n\t\t\tapp.canInstall = canInstall === true\n\t\t}\n\t},\n\n\tdisableApp(state, appId) {\n\t\tconst app = state.apps.find(app => app.id === appId)\n\t\tapp.active = false\n\t\tapp.groups = []\n\t\tif (app.removable) {\n\t\t\tapp.canUnInstall = true\n\t\t}\n\t\tif (app.id === 'app_api') {\n\t\t\tstate.appApiEnabled = false\n\t\t}\n\t},\n\n\tuninstallApp(state, appId) {\n\t\tstate.apps.find(app => app.id === appId).active = false\n\t\tstate.apps.find(app => app.id === appId).groups = []\n\t\tstate.apps.find(app => app.id === appId).needsDownload = true\n\t\tstate.apps.find(app => app.id === appId).installed = false\n\t\tstate.apps.find(app => app.id === appId).canUnInstall = false\n\t\tstate.apps.find(app => app.id === appId).canInstall = true\n\t\tif (appId === 'app_api') {\n\t\t\tstate.appApiEnabled = false\n\t\t}\n\t},\n\n\tupdateApp(state, appId) {\n\t\tconst app = state.apps.find(app => app.id === appId)\n\t\tconst version = app.update\n\t\tapp.update = null\n\t\tapp.version = version\n\t\tstate.updateCount--\n\n\t},\n\n\tresetApps(state) {\n\t\tstate.apps = []\n\t},\n\treset(state) {\n\t\tstate.apps = []\n\t\tstate.categories = []\n\t\tstate.updateCount = 0\n\t},\n\tstartLoading(state, id) {\n\t\tif (Array.isArray(id)) {\n\t\t\tid.forEach((_id) => {\n\t\t\t\tVue.set(state.loading, _id, true)\n\t\t\t})\n\t\t} else {\n\t\t\tVue.set(state.loading, id, true)\n\t\t}\n\t},\n\tstopLoading(state, id) {\n\t\tif (Array.isArray(id)) {\n\t\t\tid.forEach((_id) => {\n\t\t\t\tVue.set(state.loading, _id, false)\n\t\t\t})\n\t\t} else {\n\t\t\tVue.set(state.loading, id, false)\n\t\t}\n\t},\n}\n\nconst getters = {\n\tisAppApiEnabled(state) {\n\t\treturn state.appApiEnabled\n\t},\n\tloading(state) {\n\t\treturn function(id) {\n\t\t\treturn state.loading[id]\n\t\t}\n\t},\n\tgetCategories(state) {\n\t\treturn state.categories\n\t},\n\tgetAllApps(state) {\n\t\treturn state.apps\n\t},\n\tgetAppBundles(state) {\n\t\treturn state.bundles\n\t},\n\tgetUpdateCount(state) {\n\t\treturn state.updateCount\n\t},\n\tgetCategoryById: (state) => (selectedCategoryId) => {\n\t\treturn state.categories.find((category) => category.id === selectedCategoryId)\n\t},\n}\n\nconst actions = {\n\n\tenableApp(context, { appId, groups }) {\n\t\tlet apps\n\t\tif (Array.isArray(appId)) {\n\t\t\tapps = appId\n\t\t} else {\n\t\t\tapps = [appId]\n\t\t}\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\tcontext.commit('startLoading', apps)\n\t\t\tcontext.commit('startLoading', 'install')\n\t\t\treturn api.post(generateUrl('settings/apps/enable'), { appIds: apps, groups })\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t\tapps.forEach(_appId => {\n\t\t\t\t\t\tcontext.commit('enableApp', { appId: _appId, groups })\n\t\t\t\t\t})\n\n\t\t\t\t\t// check for server health\n\t\t\t\t\treturn axios.get(generateUrl('apps/files/'))\n\t\t\t\t\t\t.then(() => {\n\t\t\t\t\t\t\tif (response.data.update_required) {\n\t\t\t\t\t\t\t\tshowInfo(\n\t\t\t\t\t\t\t\t\tt(\n\t\t\t\t\t\t\t\t\t\t'settings',\n\t\t\t\t\t\t\t\t\t\t'The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds.',\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tonClick: () => window.location.reload(),\n\t\t\t\t\t\t\t\t\t\tclose: false,\n\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t\t\t\t\tlocation.reload()\n\t\t\t\t\t\t\t\t}, 5000)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.catch(() => {\n\t\t\t\t\t\t\tif (!Array.isArray(appId)) {\n\t\t\t\t\t\t\t\tshowError(t('settings', 'Error: This app cannot be enabled because it makes the server unstable'))\n\t\t\t\t\t\t\t\tcontext.commit('setError', {\n\t\t\t\t\t\t\t\t\tappId: apps,\n\t\t\t\t\t\t\t\t\terror: t('settings', 'Error: This app cannot be enabled because it makes the server unstable'),\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\tcontext.dispatch('disableApp', { appId })\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t\tcontext.commit('setError', {\n\t\t\t\t\t\tappId: apps,\n\t\t\t\t\t\terror: error.response.data.data.message,\n\t\t\t\t\t})\n\t\t\t\t\tcontext.commit('APPS_API_FAILURE', { appId, error })\n\t\t\t\t})\n\t\t}).catch((error) => context.commit('API_FAILURE', { appId, error }))\n\t},\n\tforceEnableApp(context, { appId, groups }) {\n\t\tlet apps\n\t\tif (Array.isArray(appId)) {\n\t\t\tapps = appId\n\t\t} else {\n\t\t\tapps = [appId]\n\t\t}\n\t\treturn api.requireAdmin().then(() => {\n\t\t\tcontext.commit('startLoading', apps)\n\t\t\tcontext.commit('startLoading', 'install')\n\t\t\treturn api.post(generateUrl('settings/apps/force'), { appId })\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('setInstallState', { appId, canInstall: true })\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t\tcontext.commit('setError', {\n\t\t\t\t\t\tappId: apps,\n\t\t\t\t\t\terror: error.response.data.data.message,\n\t\t\t\t\t})\n\t\t\t\t\tcontext.commit('APPS_API_FAILURE', { appId, error })\n\t\t\t\t})\n\t\t\t\t.finally(() => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t})\n\t\t}).catch((error) => context.commit('API_FAILURE', { appId, error }))\n\t},\n\tdisableApp(context, { appId }) {\n\t\tlet apps\n\t\tif (Array.isArray(appId)) {\n\t\t\tapps = appId\n\t\t} else {\n\t\t\tapps = [appId]\n\t\t}\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\tcontext.commit('startLoading', apps)\n\t\t\treturn api.post(generateUrl('settings/apps/disable'), { appIds: apps })\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tapps.forEach(_appId => {\n\t\t\t\t\t\tcontext.commit('disableApp', _appId)\n\t\t\t\t\t})\n\t\t\t\t\treturn true\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tcontext.commit('APPS_API_FAILURE', { appId, error })\n\t\t\t\t})\n\t\t}).catch((error) => context.commit('API_FAILURE', { appId, error }))\n\t},\n\tuninstallApp(context, { appId }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\tcontext.commit('startLoading', appId)\n\t\t\treturn api.get(generateUrl(`settings/apps/uninstall/${appId}`))\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('stopLoading', appId)\n\t\t\t\t\tcontext.commit('uninstallApp', appId)\n\t\t\t\t\treturn true\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tcontext.commit('stopLoading', appId)\n\t\t\t\t\tcontext.commit('APPS_API_FAILURE', { appId, error })\n\t\t\t\t})\n\t\t}).catch((error) => context.commit('API_FAILURE', { appId, error }))\n\t},\n\n\tupdateApp(context, { appId }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\tcontext.commit('startLoading', appId)\n\t\t\tcontext.commit('startLoading', 'install')\n\t\t\treturn api.get(generateUrl(`settings/apps/update/${appId}`))\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t\tcontext.commit('stopLoading', appId)\n\t\t\t\t\tcontext.commit('updateApp', appId)\n\t\t\t\t\treturn true\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tcontext.commit('stopLoading', appId)\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t\tcontext.commit('APPS_API_FAILURE', { appId, error })\n\t\t\t\t})\n\t\t}).catch((error) => context.commit('API_FAILURE', { appId, error }))\n\t},\n\n\tgetAllApps(context) {\n\t\tcontext.commit('startLoading', 'list')\n\t\treturn api.get(generateUrl('settings/apps/list'))\n\t\t\t.then((response) => {\n\t\t\t\tcontext.commit('setAllApps', response.data.apps)\n\t\t\t\tcontext.commit('stopLoading', 'list')\n\t\t\t\treturn true\n\t\t\t})\n\t\t\t.catch((error) => context.commit('API_FAILURE', error))\n\t},\n\n\tasync getCategories(context, { shouldRefetchCategories = false } = {}) {\n\t\tif (shouldRefetchCategories || !context.state.gettingCategoriesPromise) {\n\t\t\tcontext.commit('startLoading', 'categories')\n\t\t\ttry {\n\t\t\t\tconst categoriesPromise = api.get(generateUrl('settings/apps/categories'))\n\t\t\t\tcontext.commit('updateCategories', categoriesPromise)\n\t\t\t\tconst categoriesPromiseResponse = await categoriesPromise\n\t\t\t\tif (categoriesPromiseResponse.data.length > 0) {\n\t\t\t\t\tcontext.commit('appendCategories', categoriesPromiseResponse.data)\n\t\t\t\t\tcontext.commit('stopLoading', 'categories')\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\tcontext.commit('stopLoading', 'categories')\n\t\t\t\treturn false\n\t\t\t} catch (error) {\n\t\t\t\tcontext.commit('API_FAILURE', error)\n\t\t\t}\n\t\t}\n\t\treturn context.state.gettingCategoriesPromise\n\t},\n\n}\n\nexport default { state, mutations, getters, actions }\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { loadState } from '@nextcloud/initial-state'\n\nconst state = {\n\tserverData: loadState('settings', 'usersSettings', {}),\n}\nconst mutations = {\n\tsetServerData(state, data) {\n\t\tstate.serverData = data\n\t},\n}\nconst getters = {\n\tgetServerData(state) {\n\t\treturn state.serverData\n\t},\n}\nconst actions = {}\n\nexport default { state, mutations, getters, actions }\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport api from './api.js'\nimport { generateOcsUrl } from '@nextcloud/router'\n\nconst state = {}\nconst mutations = {}\nconst getters = {}\nconst actions = {\n\t/**\n\t * Set application config in database\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.app Application name\n\t * @param {boolean} options.key Config key\n\t * @param {boolean} options.value Value to set\n\t * @return {Promise}\n\t */\n\tsetAppConfig(context, { app, key, value }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('apps/provisioning_api/api/v1/config/apps/{app}/{key}', { app, key }), { value })\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { app, key, value, error }))\n\t},\n}\n\nexport default { state, mutations, getters, actions }\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { Store } from 'vuex'\nimport users from './users.js'\nimport apps from './apps.js'\nimport settings from './users-settings.js'\nimport oc from './oc.js'\nimport { showError } from '@nextcloud/dialogs'\n\nconst debug = process.env.NODE_ENV !== 'production'\n\nconst mutations = {\n\tAPI_FAILURE(state, error) {\n\t\ttry {\n\t\t\tconst message = error.error.response.data.ocs.meta.message\n\t\t\tshowError(t('settings', 'An error occurred during the request. Unable to proceed.') + '
' + message, { isHTML: true })\n\t\t} catch (e) {\n\t\t\tshowError(t('settings', 'An error occurred during the request. Unable to proceed.'))\n\t\t}\n\t\tconsole.error(state, error)\n\t},\n}\n\nlet store = null\n\nexport const useStore = () => {\n\tif (store === null) {\n\t\tstore = new Store({\n\t\t\tmodules: {\n\t\t\t\tusers,\n\t\t\t\tapps,\n\t\t\t\tsettings,\n\t\t\t\toc,\n\t\t\t},\n\t\t\tstrict: debug,\n\t\t\tmutations,\n\t\t})\n\t}\n\treturn store\n}\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * https://github.com/nextcloud/server/blob/208e38e84e1a07a49699aa90dc5b7272d24489f0/lib/private/Group/MetaData.php#L34\n */\nexport var GroupSorting;\n(function (GroupSorting) {\n GroupSorting[GroupSorting[\"UserCount\"] = 1] = \"UserCount\";\n GroupSorting[GroupSorting[\"GroupName\"] = 2] = \"GroupName\";\n})(GroupSorting || (GroupSorting = {}));\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcContent,{attrs:{\"app-name\":\"settings\"}},[_c('router-view',{attrs:{\"name\":\"navigation\"}}),_vm._v(\" \"),_c('router-view'),_vm._v(\" \"),_c('router-view',{attrs:{\"name\":\"sidebar\"}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsApp.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsApp.vue?vue&type=script&setup=true&lang=ts\"","import { render, staticRenderFns } from \"./SettingsApp.vue?vue&type=template&id=02c6e0e9\"\nimport script from \"./SettingsApp.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./SettingsApp.vue?vue&type=script&setup=true&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { loadState } from '@nextcloud/initial-state';\nconst appstoreEnabled = loadState('settings', 'appstoreEnabled', true);\n// Dynamic loading\nconst AppStore = () => import(/* webpackChunkName: 'settings-apps-view' */ '../views/AppStore.vue');\nconst AppStoreNavigation = () => import(/* webpackChunkName: 'settings-apps-view' */ '../views/AppStoreNavigation.vue');\nconst AppStoreSidebar = () => import(/* webpackChunkName: 'settings-apps-view' */ '../views/AppStoreSidebar.vue');\nconst UserManagement = () => import(/* webpackChunkName: 'settings-users' */ '../views/UserManagement.vue');\nconst UserManagementNavigation = () => import(/* webpackChunkName: 'settings-users' */ '../views/UserManagementNavigation.vue');\nconst routes = [\n {\n name: 'users',\n path: '/:index(index.php/)?settings/users',\n components: {\n default: UserManagement,\n navigation: UserManagementNavigation,\n },\n props: true,\n children: [\n {\n path: ':selectedGroup',\n name: 'group',\n },\n ],\n },\n {\n path: '/:index(index.php/)?settings/apps',\n name: 'apps',\n redirect: {\n name: 'apps-category',\n params: {\n category: appstoreEnabled ? 'discover' : 'installed',\n },\n },\n components: {\n default: AppStore,\n navigation: AppStoreNavigation,\n sidebar: AppStoreSidebar,\n },\n children: [\n {\n path: ':category',\n name: 'apps-category',\n children: [\n {\n path: ':id',\n name: 'apps-details',\n },\n ],\n },\n ],\n },\n];\nexport default routes;\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Vue from 'vue';\nimport Router from 'vue-router';\nimport { generateUrl } from '@nextcloud/router';\nimport routes from './routes.ts';\nVue.use(Router);\nconst router = new Router({\n mode: 'history',\n // if index.php is in the url AND we got this far, then it's working:\n // let's keep using index.php in the url\n base: generateUrl(''),\n linkActiveClass: 'active',\n routes,\n});\nexport default router;\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Vue from 'vue';\nimport Vuex from 'vuex';\nimport VTooltipPlugin from 'v-tooltip';\nimport { sync } from 'vuex-router-sync';\nimport { t, n } from '@nextcloud/l10n';\nimport SettingsApp from './views/SettingsApp.vue';\nimport router from './router/index.ts';\nimport { useStore } from './store/index.js';\nimport { getCSPNonce } from '@nextcloud/auth';\nimport { PiniaVuePlugin, createPinia } from 'pinia';\n// CSP config for webpack dynamic chunk loading\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = getCSPNonce();\n// bind to window\nVue.prototype.t = t;\nVue.prototype.n = n;\nVue.use(PiniaVuePlugin);\nVue.use(VTooltipPlugin, { defaultHtml: false });\nVue.use(Vuex);\nconst store = useStore();\nsync(store, router);\nconst pinia = createPinia();\nexport default new Vue({\n router,\n store,\n pinia,\n render: h => h(SettingsApp),\n el: '#content',\n});\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getLoggerBuilder } from '@nextcloud/logger';\nexport default getLoggerBuilder()\n .setApp('settings')\n .detectUser()\n .build();\n","exports.sync = function (store, router, options) {\n var moduleName = (options || {}).moduleName || 'route'\n\n store.registerModule(moduleName, {\n namespaced: true,\n state: cloneRoute(router.currentRoute),\n mutations: {\n 'ROUTE_CHANGED': function ROUTE_CHANGED (state, transition) {\n store.state[moduleName] = cloneRoute(transition.to, transition.from)\n }\n }\n })\n\n var isTimeTraveling = false\n var currentPath\n\n // sync router on store change\n var storeUnwatch = store.watch(\n function (state) { return state[moduleName]; },\n function (route) {\n var fullPath = route.fullPath;\n if (fullPath === currentPath) {\n return\n }\n if (currentPath != null) {\n isTimeTraveling = true\n router.push(route)\n }\n currentPath = fullPath\n },\n { sync: true }\n )\n\n // sync store on router navigation\n var afterEachUnHook = router.afterEach(function (to, from) {\n if (isTimeTraveling) {\n isTimeTraveling = false\n return\n }\n currentPath = to.fullPath\n store.commit(moduleName + '/ROUTE_CHANGED', { to: to, from: from })\n })\n\n return function unsync () {\n // On unsync, remove router hook\n if (afterEachUnHook != null) {\n afterEachUnHook()\n }\n\n // On unsync, remove store watch\n if (storeUnwatch != null) {\n storeUnwatch()\n }\n\n // On unsync, unregister Module with store\n store.unregisterModule(moduleName)\n }\n}\n\nfunction cloneRoute (to, from) {\n var clone = {\n name: to.name,\n path: to.path,\n hash: to.hash,\n query: to.query,\n params: to.params,\n fullPath: to.fullPath,\n meta: to.meta\n }\n if (from) {\n clone.from = cloneRoute(from)\n }\n return Object.freeze(clone)\n}\n\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + ({\"3239\":\"settings-users\",\"4529\":\"settings-apps-view\"}[chunkId] || chunkId) + \"-\" + chunkId + \".js?v=\" + {\"3239\":\"0b231fba2b1dc524137a\",\"3278\":\"8b4fe0854296793e7bfb\",\"3303\":\"d8c64a54c299c412b27b\",\"4529\":\"cf01e5424ba636329f9f\",\"4612\":\"aebb24cec040bc57223b\",\"5664\":\"4b28558df62ae5fee1e5\",\"5862\":\"142cd48ca8ec32e57725\",\"7265\":\"901c2964e1f5de9faba1\",\"7471\":\"6423b9b898ffefeb7d1d\",\"8737\":\"3ea02e5c6b6e798b7d97\",\"9972\":\"fbcc5a88a571c9921953\"}[chunkId] + \"\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 2689;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t2689: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(18539)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","sanitize","url","replace","requireAdmin","confirmPassword","get","options","axios","post","data","patch","put","delete","params","naturalCollator","Intl","Collator","getLanguage","getCanonicalLocale","numeric","usage","usersSettings","loadState","localStorage","getBuilder","persist","build","defaults","id","name","usercount","disabled","canAdd","canRemove","state","users","groups","getSubAdminGroups","systemGroups","orderBy","sortGroups","GroupSorting","UserCount","minPasswordLength","usersOffset","usersLimit","disabledUsersOffset","disabledUsersLimit","userCount","showConfig","showStoragePath","getItem","showUserBackend","showFirstLogin","showLastLogin","showNewUserForm","showLanguages","mutations","appendUsers","usersObj","existingUsers","map","newUsers","Object","values","filter","includes","concat","updateDisabledUsers","_usersObj","setPasswordPolicyMinLength","length","addGroup","newGroup","find","group","assign","unshift","e","console","error","renameGroup","gid","displayName","groupIndex","findIndex","groupSearch","updatedGroup","splice","removeGroup","addUserGroup","userid","user","enabled","push","removeUserGroup","indexOf","addUserSubAdmin","subadmin","removeUserSubAdmin","deleteUser","userIndex","this","commit","actionType","addUserData","response","ocs","enableDisableUser","updateUserCounts","recentGroup","disabledGroup","forEach","userGroup","warn","logger","setUserData","key","value","humanValue","parseFileSize","resetUsers","resetGroups","setShowConfig","setItem","JSON","stringify","setGroupSorting","sorting","oldValue","generateUrl","String","catch","showError","t","getters","getUsers","getGroups","subAdminGroups","getSortedGroups","sort","a","b","numA","numB","compare","getGroupSorting","getPasswordPolicyMinLength","getUsersOffset","getUsersLimit","getDisabledUsersOffset","getDisabledUsersLimit","getUserCount","getShowConfig","CancelToken","searchRequestCancelSource","actions","searchUsers","context","offset","limit","search","api","generateOcsUrl","getUser","userId","cancel","source","trim","encodeURIComponent","cancelToken","token","then","usersCount","keys","getRecentUsers","getDisabledUsers","limitParam","getUsersFromList","getUsersFromGroup","groupid","groupId","getCapabilities","password_policy","minLength","wipeUserDevices","Promise","reject","Error","addUser","dispatch","password","email","quota","language","manager","userStatus","sendWelcomeMail","apps","bundles","categories","updateCount","loading","gettingCategoriesPromise","appApiEnabled","APPS_API_FAILURE","message","isHTML","initCategories","updateCategories","categoriesPromise","setUpdateCount","addCategory","category","appendCategories","categoriesArray","setAllApps","setError","appId","Array","isArray","_id","app","clearError","enableApp","active","setInstallState","canInstall","disableApp","removable","canUnInstall","uninstallApp","needsDownload","installed","updateApp","version","update","resetApps","reset","startLoading","Vue","stopLoading","appIds","_appId","update_required","showInfo","onClick","window","location","reload","close","setTimeout","forceEnableApp","finally","getAllApps","getCategories","shouldRefetchCategories","categoriesPromiseResponse","isAppApiEnabled","getAppBundles","getUpdateCount","getCategoryById","selectedCategoryId","serverData","setServerData","getServerData","setAppConfig","API_FAILURE","meta","store","useStore","Store","modules","settings","oc","strict","process","_defineComponent","__name","setup","__props","__sfc","NcContent","_vm","_c","_self","_setupProxy","attrs","_v","path","components","default","UserManagement","navigation","UserManagementNavigation","props","children","redirect","AppStore","AppStoreNavigation","sidebar","AppStoreSidebar","use","Router","mode","base","linkActiveClass","routes","__webpack_nonce__","getCSPNonce","prototype","n","PiniaVuePlugin","VTooltipPlugin","defaultHtml","Vuex","sync","router","pinia","createPinia","render","h","SettingsApp","el","getLoggerBuilder","setApp","detectUser","cloneRoute","to","from","clone","hash","query","fullPath","freeze","exports","moduleName","registerModule","namespaced","currentRoute","transition","currentPath","isTimeTraveling","storeUnwatch","watch","route","afterEachUnHook","afterEach","unregisterModule","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","module","loaded","__webpack_modules__","call","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","every","r","getter","__esModule","d","definition","o","defineProperty","enumerable","f","chunkId","all","reduce","promises","u","g","globalThis","Function","obj","prop","hasOwnProperty","l","done","script","needAttach","scripts","document","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","bind","type","target","head","appendChild","Symbol","toStringTag","nmd","paths","scriptUrl","importScripts","currentScript","tagName","toUpperCase","test","p","baseURI","self","href","installedChunks","installedChunkData","promise","resolve","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"settings-vue-settings-apps-users-management.js?v=164d17f253cf304f28d7","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/settings/src/store/api.js","webpack:///nextcloud/apps/settings/src/utils/sorting.ts","webpack:///nextcloud/apps/settings/src/store/users.js","webpack:///nextcloud/apps/settings/src/store/apps.js","webpack:///nextcloud/apps/settings/src/store/users-settings.js","webpack:///nextcloud/apps/settings/src/store/oc.js","webpack:///nextcloud/apps/settings/src/store/index.js","webpack:///nextcloud/apps/settings/src/constants/GroupManagement.ts","webpack:///nextcloud/apps/settings/src/views/SettingsApp.vue","webpack:///nextcloud/apps/settings/src/views/SettingsApp.vue?vue&type=script&setup=true&lang=ts","webpack://nextcloud/./apps/settings/src/views/SettingsApp.vue?3a67","webpack:///nextcloud/apps/settings/src/router/routes.ts","webpack:///nextcloud/apps/settings/src/router/index.ts","webpack:///nextcloud/apps/settings/src/main-apps-users-management.ts","webpack:///nextcloud/apps/settings/src/logger.ts","webpack:///nextcloud/node_modules/vuex-router-sync/index.js","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport axios from '@nextcloud/axios'\nimport { confirmPassword } from '@nextcloud/password-confirmation'\nimport '@nextcloud/password-confirmation/dist/style.css'\n\nconst sanitize = function(url) {\n\treturn url.replace(/\\/$/, '') // Remove last url slash\n}\n\nexport default {\n\n\t/**\n\t * This Promise is used to chain a request that require an admin password confirmation\n\t * Since chaining Promise have a very precise behavior concerning catch and then,\n\t * you'll need to be careful when using it.\n\t * e.g\n\t * // store\n\t * action(context) {\n\t * return api.requireAdmin().then((response) => {\n\t * return api.get('url')\n\t * .then((response) => {API success})\n\t * .catch((error) => {API failure});\n\t * }).catch((error) => {requireAdmin failure});\n\t * }\n\t * // vue\n\t * this.$store.dispatch('action').then(() => {always executed})\n\t *\n\t * Since Promise.then().catch().then() will always execute the last then\n\t * this.$store.dispatch('action').then will always be executed\n\t *\n\t * If you want requireAdmin failure to also catch the API request failure\n\t * you will need to throw a new error in the api.get.catch()\n\t *\n\t * e.g\n\t * api.requireAdmin().then((response) => {\n\t * api.get('url')\n\t * .then((response) => {API success})\n\t * .catch((error) => {throw error;});\n\t * }).catch((error) => {requireAdmin OR API failure});\n\t *\n\t * @return {Promise}\n\t */\n\trequireAdmin() {\n\t\treturn confirmPassword()\n\t},\n\tget(url, options) {\n\t\treturn axios.get(sanitize(url), options)\n\t},\n\tpost(url, data) {\n\t\treturn axios.post(sanitize(url), data)\n\t},\n\tpatch(url, data) {\n\t\treturn axios.patch(sanitize(url), data)\n\t},\n\tput(url, data) {\n\t\treturn axios.put(sanitize(url), data)\n\t},\n\tdelete(url, data) {\n\t\treturn axios.delete(sanitize(url), { params: data })\n\t},\n}\n","/**\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCanonicalLocale, getLanguage } from '@nextcloud/l10n';\nexport const naturalCollator = Intl.Collator([getLanguage(), getCanonicalLocale()], {\n numeric: true,\n usage: 'sort',\n});\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getBuilder } from '@nextcloud/browser-storage'\nimport { getCapabilities } from '@nextcloud/capabilities'\nimport { parseFileSize } from '@nextcloud/files'\nimport { showError } from '@nextcloud/dialogs'\nimport { generateOcsUrl, generateUrl } from '@nextcloud/router'\nimport { loadState } from '@nextcloud/initial-state'\nimport axios from '@nextcloud/axios'\n\nimport { GroupSorting } from '../constants/GroupManagement.ts'\nimport { naturalCollator } from '../utils/sorting.ts'\nimport api from './api.js'\nimport logger from '../logger.ts'\n\nconst usersSettings = loadState('settings', 'usersSettings', {})\n\nconst localStorage = getBuilder('settings').persist(true).build()\n\nconst defaults = {\n\t/**\n\t * @type {import('../views/user-types').IGroup}\n\t */\n\tgroup: {\n\t\tid: '',\n\t\tname: '',\n\t\tusercount: 0,\n\t\tdisabled: 0,\n\t\tcanAdd: true,\n\t\tcanRemove: true,\n\t},\n}\n\nconst state = {\n\tusers: [],\n\tgroups: [\n\t\t...(usersSettings.getSubAdminGroups ?? []),\n\t\t...(usersSettings.systemGroups ?? []),\n\t],\n\torderBy: usersSettings.sortGroups ?? GroupSorting.UserCount,\n\tminPasswordLength: 0,\n\tusersOffset: 0,\n\tusersLimit: 25,\n\tdisabledUsersOffset: 0,\n\tdisabledUsersLimit: 25,\n\tuserCount: usersSettings.userCount ?? 0,\n\tshowConfig: {\n\t\tshowStoragePath: localStorage.getItem('account_settings__showStoragePath') === 'true',\n\t\tshowUserBackend: localStorage.getItem('account_settings__showUserBackend') === 'true',\n\t\tshowFirstLogin: localStorage.getItem('account_settings__showFirstLogin') === 'true',\n\t\tshowLastLogin: localStorage.getItem('account_settings__showLastLogin') === 'true',\n\t\tshowNewUserForm: localStorage.getItem('account_settings__showNewUserForm') === 'true',\n\t\tshowLanguages: localStorage.getItem('account_settings__showLanguages') === 'true',\n\t},\n}\n\nconst mutations = {\n\tappendUsers(state, usersObj) {\n\t\tconst existingUsers = state.users.map(({ id }) => id)\n\t\tconst newUsers = Object.values(usersObj)\n\t\t\t.filter(({ id }) => !existingUsers.includes(id))\n\n\t\tconst users = state.users.concat(newUsers)\n\t\tstate.usersOffset += state.usersLimit\n\t\tstate.users = users\n\t},\n\tupdateDisabledUsers(state, _usersObj) {\n\t\tstate.disabledUsersOffset += state.disabledUsersLimit\n\t},\n\tsetPasswordPolicyMinLength(state, length) {\n\t\tstate.minPasswordLength = length !== '' ? length : 0\n\t},\n\t/**\n\t * @param {object} state store state\n\t * @param {import('../views/user-types.js').IGroup} newGroup new group\n\t */\n\taddGroup(state, newGroup) {\n\t\ttry {\n\t\t\tif (typeof state.groups.find((group) => group.id === newGroup.id) !== 'undefined') {\n\t\t\t\treturn\n\t\t\t}\n\t\t\t// extend group to default values\n\t\t\tconst group = Object.assign({}, defaults.group, newGroup)\n\t\t\tstate.groups.unshift(group)\n\t\t} catch (e) {\n\t\t\tconsole.error('Can\\'t create group', e)\n\t\t}\n\t},\n\trenameGroup(state, { gid, displayName }) {\n\t\tconst groupIndex = state.groups.findIndex(groupSearch => groupSearch.id === gid)\n\t\tif (groupIndex >= 0) {\n\t\t\tconst updatedGroup = state.groups[groupIndex]\n\t\t\tupdatedGroup.name = displayName\n\t\t\tstate.groups.splice(groupIndex, 1, updatedGroup)\n\t\t}\n\t},\n\tremoveGroup(state, gid) {\n\t\tconst groupIndex = state.groups.findIndex(groupSearch => groupSearch.id === gid)\n\t\tif (groupIndex >= 0) {\n\t\t\tstate.groups.splice(groupIndex, 1)\n\t\t}\n\t},\n\taddUserGroup(state, { userid, gid }) {\n\t\tconst group = state.groups.find(groupSearch => groupSearch.id === gid)\n\t\tconst user = state.users.find(user => user.id === userid)\n\t\t// increase count if user is enabled\n\t\tif (group && user.enabled && state.userCount > 0) {\n\t\t\tgroup.usercount++\n\t\t}\n\t\tconst groups = user.groups\n\t\tgroups.push(gid)\n\t},\n\tremoveUserGroup(state, { userid, gid }) {\n\t\tconst group = state.groups.find(groupSearch => groupSearch.id === gid)\n\t\tconst user = state.users.find(user => user.id === userid)\n\t\t// lower count if user is enabled\n\t\tif (group && user.enabled && state.userCount > 0) {\n\t\t\tgroup.usercount--\n\t\t}\n\t\tconst groups = user.groups\n\t\tgroups.splice(groups.indexOf(gid), 1)\n\t},\n\taddUserSubAdmin(state, { userid, gid }) {\n\t\tconst groups = state.users.find(user => user.id === userid).subadmin\n\t\tgroups.push(gid)\n\t},\n\tremoveUserSubAdmin(state, { userid, gid }) {\n\t\tconst groups = state.users.find(user => user.id === userid).subadmin\n\t\tgroups.splice(groups.indexOf(gid), 1)\n\t},\n\tdeleteUser(state, userid) {\n\t\tconst userIndex = state.users.findIndex(user => user.id === userid)\n\t\tthis.commit('updateUserCounts', { user: state.users[userIndex], actionType: 'remove' })\n\t\tstate.users.splice(userIndex, 1)\n\t},\n\taddUserData(state, response) {\n\t\tconst user = response.data.ocs.data\n\t\tstate.users.unshift(user)\n\t\tthis.commit('updateUserCounts', { user, actionType: 'create' })\n\t},\n\tenableDisableUser(state, { userid, enabled }) {\n\t\tconst user = state.users.find(user => user.id === userid)\n\t\tuser.enabled = enabled\n\t\tthis.commit('updateUserCounts', { user, actionType: enabled ? 'enable' : 'disable' })\n\t},\n\t// update active/disabled counts, groups counts\n\tupdateUserCounts(state, { user, actionType }) {\n\t\t// 0 is a special value\n\t\tif (state.userCount === 0) {\n\t\t\treturn\n\t\t}\n\n\t\tconst recentGroup = state.groups.find(group => group.id === '__nc_internal_recent')\n\t\tconst disabledGroup = state.groups.find(group => group.id === 'disabled')\n\t\tswitch (actionType) {\n\t\tcase 'enable':\n\t\tcase 'disable':\n\t\t\tdisabledGroup.usercount += user.enabled ? -1 : 1 // update Disabled Users count\n\t\t\trecentGroup.usercount += user.enabled ? 1 : -1\n\t\t\tstate.userCount += user.enabled ? 1 : -1 // update Active Users count\n\t\t\tuser.groups.forEach(userGroup => {\n\t\t\t\tconst group = state.groups.find(groupSearch => groupSearch.id === userGroup)\n\t\t\t\tif (!group) {\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tgroup.disabled += user.enabled ? -1 : 1 // update group disabled count\n\t\t\t})\n\t\t\tbreak\n\t\tcase 'create':\n\t\t\trecentGroup.usercount++\n\t\t\tstate.userCount++ // increment Active Users count\n\n\t\t\tuser.groups.forEach(userGroup => {\n\t\t\t\tconst group = state.groups.find(groupSearch => groupSearch.id === userGroup)\n\t\t\t\tif (!group) {\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tgroup.usercount++ // increment group total count\n\t\t\t})\n\t\t\tbreak\n\t\tcase 'remove':\n\t\t\tif (user.enabled) {\n\t\t\t\trecentGroup.usercount--\n\t\t\t\tstate.userCount-- // decrement Active Users count\n\t\t\t\tuser.groups.forEach(userGroup => {\n\t\t\t\t\tconst group = state.groups.find(groupSearch => groupSearch.id === userGroup)\n\t\t\t\t\tif (!group) {\n\t\t\t\t\t\tconsole.warn('User group ' + userGroup + ' does not exist during user removal')\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t\tgroup.usercount-- // decrement group total count\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\tdisabledGroup.usercount-- // decrement Disabled Users count\n\t\t\t\tuser.groups.forEach(userGroup => {\n\t\t\t\t\tconst group = state.groups.find(groupSearch => groupSearch.id === userGroup)\n\t\t\t\t\tif (!group) {\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t\tgroup.disabled-- // decrement group disabled count\n\t\t\t\t})\n\t\t\t}\n\t\t\tbreak\n\t\tdefault:\n\t\t\tlogger.error(`Unknown action type in updateUserCounts: '${actionType}'`)\n\t\t\t// not throwing error to interrupt execution as this is not fatal\n\t\t}\n\t},\n\tsetUserData(state, { userid, key, value }) {\n\t\tif (key === 'quota') {\n\t\t\tconst humanValue = parseFileSize(value, true)\n\t\t\tstate.users.find(user => user.id === userid)[key][key] = humanValue !== null ? humanValue : value\n\t\t} else {\n\t\t\tstate.users.find(user => user.id === userid)[key] = value\n\t\t}\n\t},\n\n\t/**\n\t * Reset users list\n\t *\n\t * @param {object} state the store state\n\t */\n\tresetUsers(state) {\n\t\tstate.users = []\n\t\tstate.usersOffset = 0\n\t\tstate.disabledUsersOffset = 0\n\t},\n\n\t/**\n\t * Reset group list\n\t *\n\t * @param {object} state the store state\n\t */\n\tresetGroups(state) {\n\t\tstate.groups = [\n\t\t\t...(usersSettings.getSubAdminGroups ?? []),\n\t\t\t...(usersSettings.systemGroups ?? []),\n\t\t]\n\t},\n\n\tsetShowConfig(state, { key, value }) {\n\t\tlocalStorage.setItem(`account_settings__${key}`, JSON.stringify(value))\n\t\tstate.showConfig[key] = value\n\t},\n\n\tsetGroupSorting(state, sorting) {\n\t\tconst oldValue = state.orderBy\n\t\tstate.orderBy = sorting\n\n\t\t// Persist the value on the server\n\t\taxios.post(\n\t\t\tgenerateUrl('/settings/users/preferences/group.sortBy'),\n\t\t\t{\n\t\t\t\tvalue: String(sorting),\n\t\t\t},\n\t\t).catch((error) => {\n\t\t\tstate.orderBy = oldValue\n\t\t\tshowError(t('settings', 'Could not set group sorting'))\n\t\t\tlogger.error(error)\n\t\t})\n\t},\n}\n\nconst getters = {\n\tgetUsers(state) {\n\t\treturn state.users\n\t},\n\tgetGroups(state) {\n\t\treturn state.groups\n\t},\n\tgetSubAdminGroups() {\n\t\treturn usersSettings.subAdminGroups ?? []\n\t},\n\n\tgetSortedGroups(state) {\n\t\tconst groups = [...state.groups]\n\t\tif (state.orderBy === GroupSorting.UserCount) {\n\t\t\treturn groups.sort((a, b) => {\n\t\t\t\tconst numA = a.usercount - a.disabled\n\t\t\t\tconst numB = b.usercount - b.disabled\n\t\t\t\treturn (numA < numB) ? 1 : (numB < numA ? -1 : naturalCollator.compare(a.name, b.name))\n\t\t\t})\n\t\t} else {\n\t\t\treturn groups.sort((a, b) => naturalCollator.compare(a.name, b.name))\n\t\t}\n\t},\n\tgetGroupSorting(state) {\n\t\treturn state.orderBy\n\t},\n\tgetPasswordPolicyMinLength(state) {\n\t\treturn state.minPasswordLength\n\t},\n\tgetUsersOffset(state) {\n\t\treturn state.usersOffset\n\t},\n\tgetUsersLimit(state) {\n\t\treturn state.usersLimit\n\t},\n\tgetDisabledUsersOffset(state) {\n\t\treturn state.disabledUsersOffset\n\t},\n\tgetDisabledUsersLimit(state) {\n\t\treturn state.disabledUsersLimit\n\t},\n\tgetUserCount(state) {\n\t\treturn state.userCount\n\t},\n\tgetShowConfig(state) {\n\t\treturn state.showConfig\n\t},\n}\n\nconst CancelToken = axios.CancelToken\nlet searchRequestCancelSource = null\n\nconst actions = {\n\n\t/**\n\t * search users\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param {string} options.search Search amongst users\n\t * @return {Promise}\n\t */\n\tsearchUsers(context, { offset, limit, search }) {\n\t\tsearch = typeof search === 'string' ? search : ''\n\n\t\treturn api.get(generateOcsUrl('cloud/users/details?offset={offset}&limit={limit}&search={search}', { offset, limit, search })).catch((error) => {\n\t\t\tif (!axios.isCancel(error)) {\n\t\t\t\tcontext.commit('API_FAILURE', error)\n\t\t\t}\n\t\t})\n\t},\n\n\t/**\n\t * Get user details\n\t *\n\t * @param {object} context store context\n\t * @param {string} userId user id\n\t * @return {Promise}\n\t */\n\tgetUser(context, userId) {\n\t\treturn api.get(generateOcsUrl(`cloud/users/${userId}`)).catch((error) => {\n\t\t\tif (!axios.isCancel(error)) {\n\t\t\t\tcontext.commit('API_FAILURE', error)\n\t\t\t}\n\t\t})\n\t},\n\n\t/**\n\t * Get all users with full details\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param {string} options.search Search amongst users\n\t * @param {string} options.group Get users from group\n\t * @return {Promise}\n\t */\n\tgetUsers(context, { offset, limit, search, group }) {\n\t\tif (searchRequestCancelSource) {\n\t\t\tsearchRequestCancelSource.cancel('Operation canceled by another search request.')\n\t\t}\n\t\tsearchRequestCancelSource = CancelToken.source()\n\t\tsearch = typeof search === 'string' ? search : ''\n\n\t\t/**\n\t\t * Adding filters in the search bar such as in:files, in:users, etc.\n\t\t * collides with this particular search, so we need to remove them\n\t\t * here and leave only the original search query\n\t\t */\n\t\tsearch = search.replace(/in:[^\\s]+/g, '').trim()\n\n\t\tgroup = typeof group === 'string' ? group : ''\n\t\tif (group !== '') {\n\t\t\treturn api.get(generateOcsUrl('cloud/groups/{group}/users/details?offset={offset}&limit={limit}&search={search}', { group: encodeURIComponent(group), offset, limit, search }), {\n\t\t\t\tcancelToken: searchRequestCancelSource.token,\n\t\t\t})\n\t\t\t\t.then((response) => {\n\t\t\t\t\tconst usersCount = Object.keys(response.data.ocs.data.users).length\n\t\t\t\t\tif (usersCount > 0) {\n\t\t\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users)\n\t\t\t\t\t}\n\t\t\t\t\treturn usersCount\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tif (!axios.isCancel(error)) {\n\t\t\t\t\t\tcontext.commit('API_FAILURE', error)\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t}\n\n\t\treturn api.get(generateOcsUrl('cloud/users/details?offset={offset}&limit={limit}&search={search}', { offset, limit, search }), {\n\t\t\tcancelToken: searchRequestCancelSource.token,\n\t\t})\n\t\t\t.then((response) => {\n\t\t\t\tconst usersCount = Object.keys(response.data.ocs.data.users).length\n\t\t\t\tif (usersCount > 0) {\n\t\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users)\n\t\t\t\t}\n\t\t\t\treturn usersCount\n\t\t\t})\n\t\t\t.catch((error) => {\n\t\t\t\tif (!axios.isCancel(error)) {\n\t\t\t\t\tcontext.commit('API_FAILURE', error)\n\t\t\t\t}\n\t\t\t})\n\t},\n\n\t/**\n\t * Get recent users with full details\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param {string} options.search Search query\n\t * @return {Promise}\n\t */\n\tasync getRecentUsers(context, { offset, limit, search }) {\n\t\tconst url = generateOcsUrl('cloud/users/recent?offset={offset}&limit={limit}&search={search}', { offset, limit, search })\n\t\ttry {\n\t\t\tconst response = await api.get(url)\n\t\t\tconst usersCount = Object.keys(response.data.ocs.data.users).length\n\t\t\tif (usersCount > 0) {\n\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users)\n\t\t\t}\n\t\t\treturn usersCount\n\t\t} catch (error) {\n\t\t\tcontext.commit('API_FAILURE', error)\n\t\t}\n\t},\n\n\t/**\n\t * Get disabled users with full details\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param options.search\n\t * @return {Promise}\n\t */\n\tasync getDisabledUsers(context, { offset, limit, search }) {\n\t\tconst url = generateOcsUrl('cloud/users/disabled?offset={offset}&limit={limit}&search={search}', { offset, limit, search })\n\t\ttry {\n\t\t\tconst response = await api.get(url)\n\t\t\tconst usersCount = Object.keys(response.data.ocs.data.users).length\n\t\t\tif (usersCount > 0) {\n\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users)\n\t\t\t\tcontext.commit('updateDisabledUsers', response.data.ocs.data.users)\n\t\t\t}\n\t\t\treturn usersCount\n\t\t} catch (error) {\n\t\t\tcontext.commit('API_FAILURE', error)\n\t\t}\n\t},\n\n\tgetGroups(context, { offset, limit, search }) {\n\t\tsearch = typeof search === 'string' ? search : ''\n\t\tconst limitParam = limit === -1 ? '' : `&limit=${limit}`\n\t\treturn api.get(generateOcsUrl('cloud/groups?offset={offset}&search={search}', { offset, search }) + limitParam)\n\t\t\t.then((response) => {\n\t\t\t\tif (Object.keys(response.data.ocs.data.groups).length > 0) {\n\t\t\t\t\tresponse.data.ocs.data.groups.forEach(function(group) {\n\t\t\t\t\t\tcontext.commit('addGroup', { id: group, name: group })\n\t\t\t\t\t})\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\treturn false\n\t\t\t})\n\t\t\t.catch((error) => context.commit('API_FAILURE', error))\n\t},\n\n\t/**\n\t * Get all users with full details\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param {string} options.search -\n\t * @return {Promise}\n\t */\n\tgetUsersFromList(context, { offset, limit, search }) {\n\t\tsearch = typeof search === 'string' ? search : ''\n\t\treturn api.get(generateOcsUrl('cloud/users/details?offset={offset}&limit={limit}&search={search}', { offset, limit, search }))\n\t\t\t.then((response) => {\n\t\t\t\tif (Object.keys(response.data.ocs.data.users).length > 0) {\n\t\t\t\t\tcontext.commit('appendUsers', response.data.ocs.data.users)\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\treturn false\n\t\t\t})\n\t\t\t.catch((error) => context.commit('API_FAILURE', error))\n\t},\n\n\t/**\n\t * Get all users with full details from a groupid\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {number} options.offset List offset to request\n\t * @param {number} options.limit List number to return from offset\n\t * @param {string} options.groupid -\n\t * @return {Promise}\n\t */\n\tgetUsersFromGroup(context, { groupid, offset, limit }) {\n\t\treturn api.get(generateOcsUrl('cloud/users/{groupId}/details?offset={offset}&limit={limit}', { groupId: encodeURIComponent(groupid), offset, limit }))\n\t\t\t.then((response) => context.commit('getUsersFromList', response.data.ocs.data.users))\n\t\t\t.catch((error) => context.commit('API_FAILURE', error))\n\t},\n\n\tgetPasswordPolicyMinLength(context) {\n\t\tif (getCapabilities().password_policy && getCapabilities().password_policy.minLength) {\n\t\t\tcontext.commit('setPasswordPolicyMinLength', getCapabilities().password_policy.minLength)\n\t\t\treturn getCapabilities().password_policy.minLength\n\t\t}\n\t\treturn false\n\t},\n\n\t/**\n\t * Add group\n\t *\n\t * @param {object} context store context\n\t * @param {string} gid Group id\n\t * @return {Promise}\n\t */\n\taddGroup(context, gid) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('cloud/groups'), { groupid: gid })\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('addGroup', { id: gid, name: gid })\n\t\t\t\t\treturn { gid, displayName: gid }\n\t\t\t\t})\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => {\n\t\t\tcontext.commit('API_FAILURE', { gid, error })\n\t\t\t// let's throw one more time to prevent the view\n\t\t\t// from adding the user to a group that doesn't exists\n\t\t\tthrow error\n\t\t})\n\t},\n\n\t/**\n\t * Rename group\n\t *\n\t * @param {object} context store context\n\t * @param {string} groupid Group id\n\t * @param {string} displayName Group display name\n\t * @return {Promise}\n\t */\n\trenameGroup(context, { groupid, displayName }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.put(generateOcsUrl('cloud/groups/{groupId}', { groupId: encodeURIComponent(groupid) }), { key: 'displayname', value: displayName })\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('renameGroup', { gid: groupid, displayName })\n\t\t\t\t\treturn { groupid, displayName }\n\t\t\t\t})\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => {\n\t\t\tcontext.commit('API_FAILURE', { groupid, error })\n\t\t\t// let's throw one more time to prevent the view\n\t\t\t// from renaming the group\n\t\t\tthrow error\n\t\t})\n\t},\n\n\t/**\n\t * Remove group\n\t *\n\t * @param {object} context store context\n\t * @param {string} gid Group id\n\t * @return {Promise}\n\t */\n\tremoveGroup(context, gid) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.delete(generateOcsUrl('cloud/groups/{groupId}', { groupId: encodeURIComponent(gid) }))\n\t\t\t\t.then((response) => context.commit('removeGroup', gid))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { gid, error }))\n\t},\n\n\t/**\n\t * Add user to group\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.gid Group id\n\t * @return {Promise}\n\t */\n\taddUserGroup(context, { userid, gid }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('cloud/users/{userid}/groups', { userid }), { groupid: gid })\n\t\t\t\t.then((response) => context.commit('addUserGroup', { userid, gid }))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Remove user from group\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.gid Group id\n\t * @return {Promise}\n\t */\n\tremoveUserGroup(context, { userid, gid }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.delete(generateOcsUrl('cloud/users/{userid}/groups', { userid }), { groupid: gid })\n\t\t\t\t.then((response) => context.commit('removeUserGroup', { userid, gid }))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => {\n\t\t\tcontext.commit('API_FAILURE', { userid, error })\n\t\t\t// let's throw one more time to prevent\n\t\t\t// the view from removing the user row on failure\n\t\t\tthrow error\n\t\t})\n\t},\n\n\t/**\n\t * Add user to group admin\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.gid Group id\n\t * @return {Promise}\n\t */\n\taddUserSubAdmin(context, { userid, gid }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('cloud/users/{userid}/subadmins', { userid }), { groupid: gid })\n\t\t\t\t.then((response) => context.commit('addUserSubAdmin', { userid, gid }))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Remove user from group admin\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.gid Group id\n\t * @return {Promise}\n\t */\n\tremoveUserSubAdmin(context, { userid, gid }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.delete(generateOcsUrl('cloud/users/{userid}/subadmins', { userid }), { groupid: gid })\n\t\t\t\t.then((response) => context.commit('removeUserSubAdmin', { userid, gid }))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Mark all user devices for remote wipe\n\t *\n\t * @param {object} context store context\n\t * @param {string} userid User id\n\t * @return {Promise}\n\t */\n\tasync wipeUserDevices(context, userid) {\n\t\ttry {\n\t\t\tawait api.requireAdmin()\n\t\t\treturn await api.post(generateOcsUrl('cloud/users/{userid}/wipe', { userid }))\n\t\t} catch (error) {\n\t\t\tcontext.commit('API_FAILURE', { userid, error })\n\t\t\treturn Promise.reject(new Error('Failed to wipe user devices'))\n\t\t}\n\t},\n\n\t/**\n\t * Delete a user\n\t *\n\t * @param {object} context store context\n\t * @param {string} userid User id\n\t * @return {Promise}\n\t */\n\tdeleteUser(context, userid) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.delete(generateOcsUrl('cloud/users/{userid}', { userid }))\n\t\t\t\t.then((response) => context.commit('deleteUser', userid))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Add a user\n\t *\n\t * @param {object} context store context\n\t * @param {Function} context.commit -\n\t * @param {Function} context.dispatch -\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.password User password\n\t * @param {string} options.displayName User display name\n\t * @param {string} options.email User email\n\t * @param {string} options.groups User groups\n\t * @param {string} options.subadmin User subadmin groups\n\t * @param {string} options.quota User email\n\t * @param {string} options.language User language\n\t * @param {string} options.manager User manager\n\t * @return {Promise}\n\t */\n\taddUser({ commit, dispatch }, { userid, password, displayName, email, groups, subadmin, quota, language, manager }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('cloud/users'), { userid, password, displayName, email, groups, subadmin, quota, language, manager })\n\t\t\t\t.then((response) => dispatch('addUserData', userid || response.data.ocs.data.id))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => {\n\t\t\tcommit('API_FAILURE', { userid, error })\n\t\t\tthrow error\n\t\t})\n\t},\n\n\t/**\n\t * Get user data and commit addition\n\t *\n\t * @param {object} context store context\n\t * @param {string} userid User id\n\t * @return {Promise}\n\t */\n\taddUserData(context, userid) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.get(generateOcsUrl('cloud/users/{userid}', { userid }))\n\t\t\t\t.then((response) => context.commit('addUserData', response))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Enable or disable user\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {boolean} options.enabled User enablement status\n\t * @return {Promise}\n\t */\n\tenableDisableUser(context, { userid, enabled = true }) {\n\t\tconst userStatus = enabled ? 'enable' : 'disable'\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.put(generateOcsUrl('cloud/users/{userid}/{userStatus}', { userid, userStatus }))\n\t\t\t\t.then((response) => context.commit('enableDisableUser', { userid, enabled }))\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n\n\t/**\n\t * Edit user data\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.userid User id\n\t * @param {string} options.key User field to edit\n\t * @param {string} options.value Value of the change\n\t * @return {Promise}\n\t */\n\tasync setUserData(context, { userid, key, value }) {\n\t\tconst allowedEmpty = ['email', 'displayname', 'manager']\n\t\tconst validKeys = ['email', 'language', 'quota', 'displayname', 'password', 'manager']\n\n\t\tif (!validKeys.includes(key)) {\n\t\t\tthrow new Error('Invalid request data')\n\t\t}\n\n\t\t// If value is empty and the key doesn't allow empty values, throw error\n\t\tif (value === '' && !allowedEmpty.includes(key)) {\n\t\t\tthrow new Error('Value cannot be empty for this field')\n\t\t}\n\n\t\ttry {\n\t\t\tawait api.requireAdmin()\n\t\t\tawait api.put(generateOcsUrl('cloud/users/{userid}', { userid }), { key, value })\n\t\t\treturn context.commit('setUserData', { userid, key, value })\n\t\t} catch (error) {\n\t\t\tcontext.commit('API_FAILURE', { userid, error })\n\t\t\tthrow error\n\t\t}\n\t},\n\n\t/**\n\t * Send welcome mail\n\t *\n\t * @param {object} context store context\n\t * @param {string} userid User id\n\t * @return {Promise}\n\t */\n\tsendWelcomeMail(context, userid) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('cloud/users/{userid}/welcome', { userid }))\n\t\t\t\t.then(response => true)\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { userid, error }))\n\t},\n}\n\nexport default { state, mutations, getters, actions }\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport api from './api.js'\nimport Vue from 'vue'\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\nimport { showError, showInfo } from '@nextcloud/dialogs'\nimport { loadState } from '@nextcloud/initial-state'\n\nconst state = {\n\tapps: [],\n\tbundles: loadState('settings', 'appstoreBundles', []),\n\tcategories: [],\n\tupdateCount: loadState('settings', 'appstoreUpdateCount', 0),\n\tloading: {},\n\tgettingCategoriesPromise: null,\n\tappApiEnabled: loadState('settings', 'appApiEnabled', false),\n}\n\nconst mutations = {\n\n\tAPPS_API_FAILURE(state, error) {\n\t\tshowError(t('settings', 'An error occurred during the request. Unable to proceed.') + '
' + error.error.response.data.data.message, { isHTML: true })\n\t\tconsole.error(state, error)\n\t},\n\n\tinitCategories(state, { categories, updateCount }) {\n\t\tstate.categories = categories\n\t\tstate.updateCount = updateCount\n\t},\n\n\tupdateCategories(state, categoriesPromise) {\n\t\tstate.gettingCategoriesPromise = categoriesPromise\n\t},\n\n\tsetUpdateCount(state, updateCount) {\n\t\tstate.updateCount = updateCount\n\t},\n\n\taddCategory(state, category) {\n\t\tstate.categories.push(category)\n\t},\n\n\tappendCategories(state, categoriesArray) {\n\t\t// convert obj to array\n\t\tstate.categories = categoriesArray\n\t},\n\n\tsetAllApps(state, apps) {\n\t\tstate.apps = apps\n\t},\n\n\tsetError(state, { appId, error }) {\n\t\tif (!Array.isArray(appId)) {\n\t\t\tappId = [appId]\n\t\t}\n\t\tappId.forEach((_id) => {\n\t\t\tconst app = state.apps.find(app => app.id === _id)\n\t\t\tapp.error = error\n\t\t})\n\t},\n\n\tclearError(state, { appId, error }) {\n\t\tconst app = state.apps.find(app => app.id === appId)\n\t\tapp.error = null\n\t},\n\n\tenableApp(state, { appId, groups }) {\n\t\tconst app = state.apps.find(app => app.id === appId)\n\t\tapp.active = true\n\t\tapp.groups = groups\n\t\tif (app.id === 'app_api') {\n\t\t\tstate.appApiEnabled = true\n\t\t}\n\t},\n\n\tsetInstallState(state, { appId, canInstall }) {\n\t\tconst app = state.apps.find(app => app.id === appId)\n\t\tif (app) {\n\t\t\tapp.canInstall = canInstall === true\n\t\t}\n\t},\n\n\tdisableApp(state, appId) {\n\t\tconst app = state.apps.find(app => app.id === appId)\n\t\tapp.active = false\n\t\tapp.groups = []\n\t\tif (app.removable) {\n\t\t\tapp.canUnInstall = true\n\t\t}\n\t\tif (app.id === 'app_api') {\n\t\t\tstate.appApiEnabled = false\n\t\t}\n\t},\n\n\tuninstallApp(state, appId) {\n\t\tstate.apps.find(app => app.id === appId).active = false\n\t\tstate.apps.find(app => app.id === appId).groups = []\n\t\tstate.apps.find(app => app.id === appId).needsDownload = true\n\t\tstate.apps.find(app => app.id === appId).installed = false\n\t\tstate.apps.find(app => app.id === appId).canUnInstall = false\n\t\tstate.apps.find(app => app.id === appId).canInstall = true\n\t\tif (appId === 'app_api') {\n\t\t\tstate.appApiEnabled = false\n\t\t}\n\t},\n\n\tupdateApp(state, appId) {\n\t\tconst app = state.apps.find(app => app.id === appId)\n\t\tconst version = app.update\n\t\tapp.update = null\n\t\tapp.version = version\n\t\tstate.updateCount--\n\n\t},\n\n\tresetApps(state) {\n\t\tstate.apps = []\n\t},\n\treset(state) {\n\t\tstate.apps = []\n\t\tstate.categories = []\n\t\tstate.updateCount = 0\n\t},\n\tstartLoading(state, id) {\n\t\tif (Array.isArray(id)) {\n\t\t\tid.forEach((_id) => {\n\t\t\t\tVue.set(state.loading, _id, true)\n\t\t\t})\n\t\t} else {\n\t\t\tVue.set(state.loading, id, true)\n\t\t}\n\t},\n\tstopLoading(state, id) {\n\t\tif (Array.isArray(id)) {\n\t\t\tid.forEach((_id) => {\n\t\t\t\tVue.set(state.loading, _id, false)\n\t\t\t})\n\t\t} else {\n\t\t\tVue.set(state.loading, id, false)\n\t\t}\n\t},\n}\n\nconst getters = {\n\tisAppApiEnabled(state) {\n\t\treturn state.appApiEnabled\n\t},\n\tloading(state) {\n\t\treturn function(id) {\n\t\t\treturn state.loading[id]\n\t\t}\n\t},\n\tgetCategories(state) {\n\t\treturn state.categories\n\t},\n\tgetAllApps(state) {\n\t\treturn state.apps\n\t},\n\tgetAppBundles(state) {\n\t\treturn state.bundles\n\t},\n\tgetUpdateCount(state) {\n\t\treturn state.updateCount\n\t},\n\tgetCategoryById: (state) => (selectedCategoryId) => {\n\t\treturn state.categories.find((category) => category.id === selectedCategoryId)\n\t},\n}\n\nconst actions = {\n\n\tenableApp(context, { appId, groups }) {\n\t\tlet apps\n\t\tif (Array.isArray(appId)) {\n\t\t\tapps = appId\n\t\t} else {\n\t\t\tapps = [appId]\n\t\t}\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\tcontext.commit('startLoading', apps)\n\t\t\tcontext.commit('startLoading', 'install')\n\t\t\treturn api.post(generateUrl('settings/apps/enable'), { appIds: apps, groups })\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t\tapps.forEach(_appId => {\n\t\t\t\t\t\tcontext.commit('enableApp', { appId: _appId, groups })\n\t\t\t\t\t})\n\n\t\t\t\t\t// check for server health\n\t\t\t\t\treturn axios.get(generateUrl('apps/files/'))\n\t\t\t\t\t\t.then(() => {\n\t\t\t\t\t\t\tif (response.data.update_required) {\n\t\t\t\t\t\t\t\tshowInfo(\n\t\t\t\t\t\t\t\t\tt(\n\t\t\t\t\t\t\t\t\t\t'settings',\n\t\t\t\t\t\t\t\t\t\t'The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds.',\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tonClick: () => window.location.reload(),\n\t\t\t\t\t\t\t\t\t\tclose: false,\n\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t\t\t\t\tlocation.reload()\n\t\t\t\t\t\t\t\t}, 5000)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.catch(() => {\n\t\t\t\t\t\t\tif (!Array.isArray(appId)) {\n\t\t\t\t\t\t\t\tshowError(t('settings', 'Error: This app cannot be enabled because it makes the server unstable'))\n\t\t\t\t\t\t\t\tcontext.commit('setError', {\n\t\t\t\t\t\t\t\t\tappId: apps,\n\t\t\t\t\t\t\t\t\terror: t('settings', 'Error: This app cannot be enabled because it makes the server unstable'),\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\tcontext.dispatch('disableApp', { appId })\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t\tcontext.commit('setError', {\n\t\t\t\t\t\tappId: apps,\n\t\t\t\t\t\terror: error.response.data.data.message,\n\t\t\t\t\t})\n\t\t\t\t\tcontext.commit('APPS_API_FAILURE', { appId, error })\n\t\t\t\t})\n\t\t}).catch((error) => context.commit('API_FAILURE', { appId, error }))\n\t},\n\tforceEnableApp(context, { appId, groups }) {\n\t\tlet apps\n\t\tif (Array.isArray(appId)) {\n\t\t\tapps = appId\n\t\t} else {\n\t\t\tapps = [appId]\n\t\t}\n\t\treturn api.requireAdmin().then(() => {\n\t\t\tcontext.commit('startLoading', apps)\n\t\t\tcontext.commit('startLoading', 'install')\n\t\t\treturn api.post(generateUrl('settings/apps/force'), { appId })\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('setInstallState', { appId, canInstall: true })\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t\tcontext.commit('setError', {\n\t\t\t\t\t\tappId: apps,\n\t\t\t\t\t\terror: error.response.data.data.message,\n\t\t\t\t\t})\n\t\t\t\t\tcontext.commit('APPS_API_FAILURE', { appId, error })\n\t\t\t\t})\n\t\t\t\t.finally(() => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t})\n\t\t}).catch((error) => context.commit('API_FAILURE', { appId, error }))\n\t},\n\tdisableApp(context, { appId }) {\n\t\tlet apps\n\t\tif (Array.isArray(appId)) {\n\t\t\tapps = appId\n\t\t} else {\n\t\t\tapps = [appId]\n\t\t}\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\tcontext.commit('startLoading', apps)\n\t\t\treturn api.post(generateUrl('settings/apps/disable'), { appIds: apps })\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tapps.forEach(_appId => {\n\t\t\t\t\t\tcontext.commit('disableApp', _appId)\n\t\t\t\t\t})\n\t\t\t\t\treturn true\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tcontext.commit('stopLoading', apps)\n\t\t\t\t\tcontext.commit('APPS_API_FAILURE', { appId, error })\n\t\t\t\t})\n\t\t}).catch((error) => context.commit('API_FAILURE', { appId, error }))\n\t},\n\tuninstallApp(context, { appId }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\tcontext.commit('startLoading', appId)\n\t\t\treturn api.get(generateUrl(`settings/apps/uninstall/${appId}`))\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('stopLoading', appId)\n\t\t\t\t\tcontext.commit('uninstallApp', appId)\n\t\t\t\t\treturn true\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tcontext.commit('stopLoading', appId)\n\t\t\t\t\tcontext.commit('APPS_API_FAILURE', { appId, error })\n\t\t\t\t})\n\t\t}).catch((error) => context.commit('API_FAILURE', { appId, error }))\n\t},\n\n\tupdateApp(context, { appId }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\tcontext.commit('startLoading', appId)\n\t\t\tcontext.commit('startLoading', 'install')\n\t\t\treturn api.get(generateUrl(`settings/apps/update/${appId}`))\n\t\t\t\t.then((response) => {\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t\tcontext.commit('stopLoading', appId)\n\t\t\t\t\tcontext.commit('updateApp', appId)\n\t\t\t\t\treturn true\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tcontext.commit('stopLoading', appId)\n\t\t\t\t\tcontext.commit('stopLoading', 'install')\n\t\t\t\t\tcontext.commit('APPS_API_FAILURE', { appId, error })\n\t\t\t\t})\n\t\t}).catch((error) => context.commit('API_FAILURE', { appId, error }))\n\t},\n\n\tgetAllApps(context) {\n\t\tcontext.commit('startLoading', 'list')\n\t\treturn api.get(generateUrl('settings/apps/list'))\n\t\t\t.then((response) => {\n\t\t\t\tcontext.commit('setAllApps', response.data.apps)\n\t\t\t\tcontext.commit('stopLoading', 'list')\n\t\t\t\treturn true\n\t\t\t})\n\t\t\t.catch((error) => context.commit('API_FAILURE', error))\n\t},\n\n\tasync getCategories(context, { shouldRefetchCategories = false } = {}) {\n\t\tif (shouldRefetchCategories || !context.state.gettingCategoriesPromise) {\n\t\t\tcontext.commit('startLoading', 'categories')\n\t\t\ttry {\n\t\t\t\tconst categoriesPromise = api.get(generateUrl('settings/apps/categories'))\n\t\t\t\tcontext.commit('updateCategories', categoriesPromise)\n\t\t\t\tconst categoriesPromiseResponse = await categoriesPromise\n\t\t\t\tif (categoriesPromiseResponse.data.length > 0) {\n\t\t\t\t\tcontext.commit('appendCategories', categoriesPromiseResponse.data)\n\t\t\t\t\tcontext.commit('stopLoading', 'categories')\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\tcontext.commit('stopLoading', 'categories')\n\t\t\t\treturn false\n\t\t\t} catch (error) {\n\t\t\t\tcontext.commit('API_FAILURE', error)\n\t\t\t}\n\t\t}\n\t\treturn context.state.gettingCategoriesPromise\n\t},\n\n}\n\nexport default { state, mutations, getters, actions }\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { loadState } from '@nextcloud/initial-state'\n\nconst state = {\n\tserverData: loadState('settings', 'usersSettings', {}),\n}\nconst mutations = {\n\tsetServerData(state, data) {\n\t\tstate.serverData = data\n\t},\n}\nconst getters = {\n\tgetServerData(state) {\n\t\treturn state.serverData\n\t},\n}\nconst actions = {}\n\nexport default { state, mutations, getters, actions }\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport api from './api.js'\nimport { generateOcsUrl } from '@nextcloud/router'\n\nconst state = {}\nconst mutations = {}\nconst getters = {}\nconst actions = {\n\t/**\n\t * Set application config in database\n\t *\n\t * @param {object} context store context\n\t * @param {object} options destructuring object\n\t * @param {string} options.app Application name\n\t * @param {boolean} options.key Config key\n\t * @param {boolean} options.value Value to set\n\t * @return {Promise}\n\t */\n\tsetAppConfig(context, { app, key, value }) {\n\t\treturn api.requireAdmin().then((response) => {\n\t\t\treturn api.post(generateOcsUrl('apps/provisioning_api/api/v1/config/apps/{app}/{key}', { app, key }), { value })\n\t\t\t\t.catch((error) => { throw error })\n\t\t}).catch((error) => context.commit('API_FAILURE', { app, key, value, error }))\n\t},\n}\n\nexport default { state, mutations, getters, actions }\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { Store } from 'vuex'\nimport users from './users.js'\nimport apps from './apps.js'\nimport settings from './users-settings.js'\nimport oc from './oc.js'\nimport { showError } from '@nextcloud/dialogs'\n\nconst debug = process.env.NODE_ENV !== 'production'\n\nconst mutations = {\n\tAPI_FAILURE(state, error) {\n\t\ttry {\n\t\t\tconst message = error.error.response.data.ocs.meta.message\n\t\t\tshowError(t('settings', 'An error occurred during the request. Unable to proceed.') + '
' + message, { isHTML: true })\n\t\t} catch (e) {\n\t\t\tshowError(t('settings', 'An error occurred during the request. Unable to proceed.'))\n\t\t}\n\t\tconsole.error(state, error)\n\t},\n}\n\nlet store = null\n\nexport const useStore = () => {\n\tif (store === null) {\n\t\tstore = new Store({\n\t\t\tmodules: {\n\t\t\t\tusers,\n\t\t\t\tapps,\n\t\t\t\tsettings,\n\t\t\t\toc,\n\t\t\t},\n\t\t\tstrict: debug,\n\t\t\tmutations,\n\t\t})\n\t}\n\treturn store\n}\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * https://github.com/nextcloud/server/blob/208e38e84e1a07a49699aa90dc5b7272d24489f0/lib/private/Group/MetaData.php#L34\n */\nexport var GroupSorting;\n(function (GroupSorting) {\n GroupSorting[GroupSorting[\"UserCount\"] = 1] = \"UserCount\";\n GroupSorting[GroupSorting[\"GroupName\"] = 2] = \"GroupName\";\n})(GroupSorting || (GroupSorting = {}));\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcContent,{attrs:{\"app-name\":\"settings\"}},[_c('router-view',{attrs:{\"name\":\"navigation\"}}),_vm._v(\" \"),_c('router-view'),_vm._v(\" \"),_c('router-view',{attrs:{\"name\":\"sidebar\"}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsApp.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsApp.vue?vue&type=script&setup=true&lang=ts\"","import { render, staticRenderFns } from \"./SettingsApp.vue?vue&type=template&id=02c6e0e9\"\nimport script from \"./SettingsApp.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./SettingsApp.vue?vue&type=script&setup=true&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { loadState } from '@nextcloud/initial-state';\nconst appstoreEnabled = loadState('settings', 'appstoreEnabled', true);\n// Dynamic loading\nconst AppStore = () => import(/* webpackChunkName: 'settings-apps-view' */ '../views/AppStore.vue');\nconst AppStoreNavigation = () => import(/* webpackChunkName: 'settings-apps-view' */ '../views/AppStoreNavigation.vue');\nconst AppStoreSidebar = () => import(/* webpackChunkName: 'settings-apps-view' */ '../views/AppStoreSidebar.vue');\nconst UserManagement = () => import(/* webpackChunkName: 'settings-users' */ '../views/UserManagement.vue');\nconst UserManagementNavigation = () => import(/* webpackChunkName: 'settings-users' */ '../views/UserManagementNavigation.vue');\nconst routes = [\n {\n name: 'users',\n path: '/:index(index.php/)?settings/users',\n components: {\n default: UserManagement,\n navigation: UserManagementNavigation,\n },\n props: true,\n children: [\n {\n path: ':selectedGroup',\n name: 'group',\n },\n ],\n },\n {\n path: '/:index(index.php/)?settings/apps',\n name: 'apps',\n redirect: {\n name: 'apps-category',\n params: {\n category: appstoreEnabled ? 'discover' : 'installed',\n },\n },\n components: {\n default: AppStore,\n navigation: AppStoreNavigation,\n sidebar: AppStoreSidebar,\n },\n children: [\n {\n path: ':category',\n name: 'apps-category',\n children: [\n {\n path: ':id',\n name: 'apps-details',\n },\n ],\n },\n ],\n },\n];\nexport default routes;\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Vue from 'vue';\nimport Router from 'vue-router';\nimport { generateUrl } from '@nextcloud/router';\nimport routes from './routes.ts';\nVue.use(Router);\nconst router = new Router({\n mode: 'history',\n // if index.php is in the url AND we got this far, then it's working:\n // let's keep using index.php in the url\n base: generateUrl(''),\n linkActiveClass: 'active',\n routes,\n});\nexport default router;\n","/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport Vue from 'vue';\nimport Vuex from 'vuex';\nimport VTooltipPlugin from 'v-tooltip';\nimport { sync } from 'vuex-router-sync';\nimport { t, n } from '@nextcloud/l10n';\nimport SettingsApp from './views/SettingsApp.vue';\nimport router from './router/index.ts';\nimport { useStore } from './store/index.js';\nimport { getCSPNonce } from '@nextcloud/auth';\nimport { PiniaVuePlugin, createPinia } from 'pinia';\n// CSP config for webpack dynamic chunk loading\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = getCSPNonce();\n// bind to window\nVue.prototype.t = t;\nVue.prototype.n = n;\nVue.use(PiniaVuePlugin);\nVue.use(VTooltipPlugin, { defaultHtml: false });\nVue.use(Vuex);\nconst store = useStore();\nsync(store, router);\nconst pinia = createPinia();\nexport default new Vue({\n router,\n store,\n pinia,\n render: h => h(SettingsApp),\n el: '#content',\n});\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getLoggerBuilder } from '@nextcloud/logger';\nexport default getLoggerBuilder()\n .setApp('settings')\n .detectUser()\n .build();\n","exports.sync = function (store, router, options) {\n var moduleName = (options || {}).moduleName || 'route'\n\n store.registerModule(moduleName, {\n namespaced: true,\n state: cloneRoute(router.currentRoute),\n mutations: {\n 'ROUTE_CHANGED': function ROUTE_CHANGED (state, transition) {\n store.state[moduleName] = cloneRoute(transition.to, transition.from)\n }\n }\n })\n\n var isTimeTraveling = false\n var currentPath\n\n // sync router on store change\n var storeUnwatch = store.watch(\n function (state) { return state[moduleName]; },\n function (route) {\n var fullPath = route.fullPath;\n if (fullPath === currentPath) {\n return\n }\n if (currentPath != null) {\n isTimeTraveling = true\n router.push(route)\n }\n currentPath = fullPath\n },\n { sync: true }\n )\n\n // sync store on router navigation\n var afterEachUnHook = router.afterEach(function (to, from) {\n if (isTimeTraveling) {\n isTimeTraveling = false\n return\n }\n currentPath = to.fullPath\n store.commit(moduleName + '/ROUTE_CHANGED', { to: to, from: from })\n })\n\n return function unsync () {\n // On unsync, remove router hook\n if (afterEachUnHook != null) {\n afterEachUnHook()\n }\n\n // On unsync, remove store watch\n if (storeUnwatch != null) {\n storeUnwatch()\n }\n\n // On unsync, unregister Module with store\n store.unregisterModule(moduleName)\n }\n}\n\nfunction cloneRoute (to, from) {\n var clone = {\n name: to.name,\n path: to.path,\n hash: to.hash,\n query: to.query,\n params: to.params,\n fullPath: to.fullPath,\n meta: to.meta\n }\n if (from) {\n clone.from = cloneRoute(from)\n }\n return Object.freeze(clone)\n}\n\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + ({\"3239\":\"settings-users\",\"4529\":\"settings-apps-view\"}[chunkId] || chunkId) + \"-\" + chunkId + \".js?v=\" + {\"3239\":\"a345379f155ee4f34e2a\",\"3278\":\"8b4fe0854296793e7bfb\",\"3303\":\"d8c64a54c299c412b27b\",\"4529\":\"cf01e5424ba636329f9f\",\"4612\":\"aebb24cec040bc57223b\",\"5664\":\"4b28558df62ae5fee1e5\",\"5862\":\"142cd48ca8ec32e57725\",\"7265\":\"901c2964e1f5de9faba1\",\"7471\":\"6423b9b898ffefeb7d1d\",\"8737\":\"3ea02e5c6b6e798b7d97\",\"9972\":\"fbcc5a88a571c9921953\"}[chunkId] + \"\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 2689;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t2689: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(18539)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","sanitize","url","replace","requireAdmin","confirmPassword","get","options","axios","post","data","patch","put","delete","params","naturalCollator","Intl","Collator","getLanguage","getCanonicalLocale","numeric","usage","usersSettings","loadState","localStorage","getBuilder","persist","build","defaults","id","name","usercount","disabled","canAdd","canRemove","state","users","groups","getSubAdminGroups","systemGroups","orderBy","sortGroups","GroupSorting","UserCount","minPasswordLength","usersOffset","usersLimit","disabledUsersOffset","disabledUsersLimit","userCount","showConfig","showStoragePath","getItem","showUserBackend","showFirstLogin","showLastLogin","showNewUserForm","showLanguages","mutations","appendUsers","usersObj","existingUsers","map","newUsers","Object","values","filter","includes","concat","updateDisabledUsers","_usersObj","setPasswordPolicyMinLength","length","addGroup","newGroup","find","group","assign","unshift","e","console","error","renameGroup","gid","displayName","groupIndex","findIndex","groupSearch","updatedGroup","splice","removeGroup","addUserGroup","userid","user","enabled","push","removeUserGroup","indexOf","addUserSubAdmin","subadmin","removeUserSubAdmin","deleteUser","userIndex","this","commit","actionType","addUserData","response","ocs","enableDisableUser","updateUserCounts","recentGroup","disabledGroup","forEach","userGroup","warn","logger","setUserData","key","value","humanValue","parseFileSize","resetUsers","resetGroups","setShowConfig","setItem","JSON","stringify","setGroupSorting","sorting","oldValue","generateUrl","String","catch","showError","t","getters","getUsers","getGroups","subAdminGroups","getSortedGroups","sort","a","b","numA","numB","compare","getGroupSorting","getPasswordPolicyMinLength","getUsersOffset","getUsersLimit","getDisabledUsersOffset","getDisabledUsersLimit","getUserCount","getShowConfig","CancelToken","searchRequestCancelSource","actions","searchUsers","context","offset","limit","search","api","generateOcsUrl","getUser","userId","cancel","source","trim","encodeURIComponent","cancelToken","token","then","usersCount","keys","getRecentUsers","getDisabledUsers","limitParam","getUsersFromList","getUsersFromGroup","groupid","groupId","getCapabilities","password_policy","minLength","wipeUserDevices","Promise","reject","Error","addUser","dispatch","password","email","quota","language","manager","userStatus","sendWelcomeMail","apps","bundles","categories","updateCount","loading","gettingCategoriesPromise","appApiEnabled","APPS_API_FAILURE","message","isHTML","initCategories","updateCategories","categoriesPromise","setUpdateCount","addCategory","category","appendCategories","categoriesArray","setAllApps","setError","appId","Array","isArray","_id","app","clearError","enableApp","active","setInstallState","canInstall","disableApp","removable","canUnInstall","uninstallApp","needsDownload","installed","updateApp","version","update","resetApps","reset","startLoading","Vue","stopLoading","appIds","_appId","update_required","showInfo","onClick","window","location","reload","close","setTimeout","forceEnableApp","finally","getAllApps","getCategories","shouldRefetchCategories","categoriesPromiseResponse","isAppApiEnabled","getAppBundles","getUpdateCount","getCategoryById","selectedCategoryId","serverData","setServerData","getServerData","setAppConfig","API_FAILURE","meta","store","useStore","Store","modules","settings","oc","strict","process","_defineComponent","__name","setup","__props","__sfc","NcContent","_vm","_c","_self","_setupProxy","attrs","_v","path","components","default","UserManagement","navigation","UserManagementNavigation","props","children","redirect","AppStore","AppStoreNavigation","sidebar","AppStoreSidebar","use","Router","mode","base","linkActiveClass","routes","__webpack_nonce__","getCSPNonce","prototype","n","PiniaVuePlugin","VTooltipPlugin","defaultHtml","Vuex","sync","router","pinia","createPinia","render","h","SettingsApp","el","getLoggerBuilder","setApp","detectUser","cloneRoute","to","from","clone","hash","query","fullPath","freeze","exports","moduleName","registerModule","namespaced","currentRoute","transition","currentPath","isTimeTraveling","storeUnwatch","watch","route","afterEachUnHook","afterEach","unregisterModule","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","module","loaded","__webpack_modules__","call","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","every","r","getter","__esModule","d","definition","o","defineProperty","enumerable","f","chunkId","all","reduce","promises","u","g","globalThis","Function","obj","prop","hasOwnProperty","l","done","script","needAttach","scripts","document","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","bind","type","target","head","appendChild","Symbol","toStringTag","nmd","paths","scriptUrl","importScripts","currentScript","tagName","toUpperCase","test","p","baseURI","self","href","installedChunks","installedChunkData","promise","resolve","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file