1 |
- {"version":3,"file":"settings-users-8351.js?v=5deed4f326b641e0eaf2","mappings":"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","sources":["webpack:///nextcloud/apps/settings/src/components/GroupListItem.vue?vue&type=style&index=0&id=36dd2d08&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/UserList.vue?vue&type=style&index=0&id=69659716&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/Users/NewUserModal.vue?vue&type=style&index=0&id=0634d81b&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/Users/UserListFooter.vue?vue&type=style&index=0&id=5b39b95a&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/Users/UserListHeader.vue?vue&type=style&index=0&id=69afa821&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/Users/UserRow.vue?vue&type=style&index=0&id=35c0ba98&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/Users/UserSettingsDialog.vue?vue&type=style&index=0&id=0a250c55&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/Users/VirtualList.vue?vue&type=style&index=0&id=4377829d&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/views/Users.vue?vue&type=style&index=0&id=a0643d36&prod&lang=scss&scoped=true&","webpack://nextcloud/./apps/settings/src/views/Users.vue?962b","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountOff.vue?vue&type=script&lang=js&","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountOff.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/AccountOff.vue?800f","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountOff.vue?vue&type=template&id=4a2e1178&","webpack:///nextcloud/node_modules/vue-material-design-icons/ShieldAccount.vue?vue&type=script&lang=js&","webpack:///nextcloud/node_modules/vue-material-design-icons/ShieldAccount.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ShieldAccount.vue?d5b2","webpack:///nextcloud/node_modules/vue-material-design-icons/ShieldAccount.vue?vue&type=template&id=3937f138&","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?db3e","webpack://nextcloud/./apps/settings/src/components/GroupListItem.vue?7b19","webpack://nextcloud/./apps/settings/src/components/GroupListItem.vue?9f48","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?4bb8","webpack://nextcloud/./apps/settings/src/components/Users/VirtualList.vue?1915","webpack:///nextcloud/apps/settings/src/components/Users/NewUserModal.vue","webpack:///nextcloud/apps/settings/src/components/Users/NewUserModal.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/Users/NewUserModal.vue?c974","webpack://nextcloud/./apps/settings/src/components/Users/NewUserModal.vue?0748","webpack://nextcloud/./apps/settings/src/components/Users/NewUserModal.vue?6ea8","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?fe55","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?cd95","webpack://nextcloud/./apps/settings/src/components/Users/UserListHeader.vue?758a","webpack:///nextcloud/apps/settings/src/components/Users/UserRowActions.vue?vue&type=script&lang=ts&","webpack:///nextcloud/apps/settings/src/components/Users/UserRowActions.vue","webpack://nextcloud/./apps/settings/src/components/Users/UserRowActions.vue?3c2a","webpack:///nextcloud/apps/settings/src/mixins/UserRowMixin.js","webpack:///nextcloud/apps/settings/src/utils/userUtils.ts","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?4cd5","webpack://nextcloud/./apps/settings/src/components/Users/UserRow.vue?eb6e","webpack://nextcloud/./apps/settings/src/components/Users/UserRow.vue?5434","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?af39","webpack://nextcloud/./apps/settings/src/components/UserList.vue?02a4","webpack://nextcloud/./apps/settings/src/components/UserList.vue?c96e","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?ca5f","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/views/Users.vue","webpack:///nextcloud/apps/settings/src/views/Users.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/views/Users.vue?0edd","webpack://nextcloud/./apps/settings/src/views/Users.vue?cf86","webpack:///nextcloud/node_modules/vue-localstorage/dist/vue-local-storage.js"],"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, \".modal__header[data-v-36dd2d08]{margin:0}.modal__content[data-v-36dd2d08]{display:flex;flex-direction:column;align-items:center;padding:20px;gap:4px 0}.modal__button-row[data-v-36dd2d08]{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","// 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-69659716] .icon-vue{width:64px;height:64px}.empty[data-v-69659716] .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@import './Users/shared/styles.scss';\\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","// 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__form[data-v-0634d81b]{display:flex;flex-direction:column;align-items:center;padding:20px;gap:4px 0}.modal__form #new-user-groups-input[data-v-0634d81b]{position:absolute;opacity:0;width:0}.modal__item[data-v-0634d81b]{width:100%}.modal__item[data-v-0634d81b]:not(:focus):not(:active){border-color:var(--color-border-dark)}.modal__hint[data-v-0634d81b]{color:var(--color-text-maxcontrast);margin-top:8px;align-self:flex-start}.modal__label[data-v-0634d81b]{display:block;padding:4px 0}.modal__select[data-v-0634d81b]{width:100%}.modal__submit[data-v-0634d81b]{margin-top:20px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/NewUserModal.vue\"],\"names\":[],\"mappings\":\"AAEC,8BACC,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,YAAA,CACA,SAAA,CAGA,qDACC,iBAAA,CACA,SAAA,CAMA,OAAA,CAIF,8BACC,UAAA,CAEA,uDACC,qCAAA,CAIF,8BACC,mCAAA,CACA,cAAA,CACA,qBAAA,CAGD,+BACC,aAAA,CACA,aAAA,CAGD,gCACC,UAAA,CAGD,gCACC,eAAA\",\"sourcesContent\":[\"\\n.modal {\\n\\t&__form {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\tpadding: 20px;\\n\\t\\tgap: 4px 0;\\n\\n\\t\\t/* fake input for groups validation */\\n\\t\\t#new-user-groups-input {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\topacity: 0;\\n\\t\\t\\t/* The \\\"hidden\\\" input is behind the NcSelect, so in general it does\\n\\t\\t\\t* not receives clicks. However, with Firefox, after the validation\\n\\t\\t\\t* fails, it will receive the first click done on it, so its width needs\\n\\t\\t\\t* to be set to 0 to prevent that (\\\"pointer-events: none\\\" does not\\n\\t\\t\\t* prevent it). */\\n\\t\\t\\twidth: 0;\\n\\t\\t}\\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&__submit {\\n\\t\\tmargin-top: 20px;\\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-5b39b95a]{position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background)}.footer__cell[data-v-5b39b95a]{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-5b39b95a],.footer__cell span[data-v-5b39b95a],.footer__cell label[data-v-5b39b95a]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.footer__cell--avatar[data-v-5b39b95a],.footer__cell--displayname[data-v-5b39b95a]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.footer__cell--avatar[data-v-5b39b95a]{left:0}.footer__cell--displayname[data-v-5b39b95a]{left:var(--avatar-cell-width);border-right:1px solid var(--color-border)}}.footer__cell--avatar[data-v-5b39b95a]{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-5b39b95a]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.footer__cell--multiline span[data-v-5b39b95a]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.footer__cell--large[data-v-5b39b95a]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.footer__cell--obfuscated[data-v-5b39b95a]{min-width:400px;width:400px}.footer__cell--fill[data-v-5b39b95a]{min-width:var(--cell-width-large);width:100%}.footer__cell--actions[data-v-5b39b95a]{position:sticky;right: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-left:1px solid var(--color-border)}.footer__subtitle[data-v-5b39b95a]{color:var(--color-text-maxcontrast)}.footer__cell[data-v-5b39b95a]{position:sticky;color:var(--color-text-maxcontrast)}.footer__cell--loading[data-v-5b39b95a]{left:0;min-width:var(--avatar-cell-width);width:var(--avatar-cell-width);align-items:center;padding:0}.footer__cell--count[data-v-5b39b95a]{left: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,yBCoBC,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,MAAA,CAGD,4CACC,6BAAA,CACA,0CAAA,CAAA,CAIF,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,OAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,yCAAA,CAIF,mCACC,mCAAA,CDjHD,+BACC,eAAA,CACA,mCAAA,CAEA,wCACC,MAAA,CACA,kCAAA,CACA,8BAAA,CACA,kBAAA,CACA,SAAA,CAGD,sCACC,6BAAA,CACA,2BAAA,CACA,uBAAA\",\"sourcesContent\":[\"\\n@import './shared/styles.scss';\\n\\n.footer {\\n\\t@include row;\\n\\t@include cell;\\n\\n\\t&__cell {\\n\\t\\tposition: sticky;\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\n\\t\\t&--loading {\\n\\t\\t\\tleft: 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\\tleft: 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 * @copyright 2023 Christopher Ng <chrng8@gmail.com>\\n *\\n * @author Christopher Ng <chrng8@gmail.com>\\n *\\n * @license AGPL-3.0-or-later\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\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\\tleft: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tleft: var(--avatar-cell-width);\\n\\t\\t\\t\\tborder-right: 1px solid var(--color-border);\\n\\t\\t\\t}\\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\\tright: 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-left: 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-69afa821]{position:relative;display:flex;min-width:100%;width:fit-content;height:var(--row-height);background-color:var(--color-main-background);border-bottom:1px solid var(--color-border)}.header__cell[data-v-69afa821]{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-69afa821],.header__cell span[data-v-69afa821],.header__cell label[data-v-69afa821]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.header__cell--avatar[data-v-69afa821],.header__cell--displayname[data-v-69afa821]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.header__cell--avatar[data-v-69afa821]{left:0}.header__cell--displayname[data-v-69afa821]{left:var(--avatar-cell-width);border-right:1px solid var(--color-border)}}.header__cell--avatar[data-v-69afa821]{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-69afa821]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.header__cell--multiline span[data-v-69afa821]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.header__cell--large[data-v-69afa821]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.header__cell--obfuscated[data-v-69afa821]{min-width:400px;width:400px}.header__cell--fill[data-v-69afa821]{min-width:var(--cell-width-large);width:100%}.header__cell--actions[data-v-69afa821]{position:sticky;right: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-left:1px solid var(--color-border)}.header__subtitle[data-v-69afa821]{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,yBCoBC,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CDrBA,2CAAA,CCyBA,+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,MAAA,CAGD,4CACC,6BAAA,CACA,0CAAA,CAAA,CAIF,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,OAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,yCAAA,CAIF,mCACC,mCAAA\",\"sourcesContent\":[\"\\n@import './shared/styles.scss';\\n\\n.header {\\n\\t@include row;\\n\\t@include cell;\\n\\n\\tborder-bottom: 1px solid var(--color-border);\\n}\\n\",\"/**\\n * @copyright 2023 Christopher Ng <chrng8@gmail.com>\\n *\\n * @author Christopher Ng <chrng8@gmail.com>\\n *\\n * @license AGPL-3.0-or-later\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\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\\tleft: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tleft: var(--avatar-cell-width);\\n\\t\\t\\t\\tborder-right: 1px solid var(--color-border);\\n\\t\\t\\t}\\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\\tright: 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-left: 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, \".user-list__row[data-v-35c0ba98]{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-35c0ba98]:hover{background-color:var(--color-background-hover)}.user-list__row:hover .row__cell[data-v-35c0ba98]:not(.row__cell--actions){background-color:var(--color-background-hover)}.user-list__row .select--fill[data-v-35c0ba98]{max-width:calc(var(--cell-width-large) - 2*var(--cell-padding))}.row__cell[data-v-35c0ba98]{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-35c0ba98],.row__cell span[data-v-35c0ba98],.row__cell label[data-v-35c0ba98]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}@media(min-width: 670px){.row__cell--avatar[data-v-35c0ba98],.row__cell--displayname[data-v-35c0ba98]{position:sticky;z-index:var(--sticky-column-z-index);background-color:var(--color-main-background)}.row__cell--avatar[data-v-35c0ba98]{left:0}.row__cell--displayname[data-v-35c0ba98]{left:var(--avatar-cell-width);border-right:1px solid var(--color-border)}}.row__cell--avatar[data-v-35c0ba98]{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-35c0ba98]{line-height:1.3em;white-space:unset}@supports(-webkit-line-clamp: 2){.row__cell--multiline span[data-v-35c0ba98]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.row__cell--large[data-v-35c0ba98]{min-width:var(--cell-width-large);width:var(--cell-width-large)}.row__cell--obfuscated[data-v-35c0ba98]{min-width:400px;width:400px}.row__cell--fill[data-v-35c0ba98]{min-width:var(--cell-width-large);width:100%}.row__cell--actions[data-v-35c0ba98]{position:sticky;right: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-left:1px solid var(--color-border)}.row__subtitle[data-v-35c0ba98]{color:var(--color-text-maxcontrast)}.row__cell[data-v-35c0ba98]{border-bottom:1px solid var(--color-border)}.row__cell[data-v-35c0ba98] .input-field,.row__cell[data-v-35c0ba98] .input-field__main-wrapper,.row__cell[data-v-35c0ba98] .input-field__input{height:48px !important}.row__cell[data-v-35c0ba98] .input-field__input:placeholder-shown:not(:focus)+.input-field__label{inset-block-start:16px !important}.row__cell[data-v-35c0ba98] .button-vue--icon-only{height:44px !important}.row__cell[data-v-35c0ba98] .v-select.select{min-width:var(--cell-min-width)}.row__progress[data-v-35c0ba98]{margin-top:4px}.row__progress--warn[data-v-35c0ba98]::-moz-progress-bar{background:var(--color-warning) !important}.row__progress--warn[data-v-35c0ba98]::-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,iCCoBC,iBAAA,CACA,YAAA,CACA,cAAA,CACA,iBAAA,CACA,wBAAA,CACA,6CAAA,CDtBA,uCACC,8CAAA,CAEA,2EACC,8CAAA,CAKF,+CACC,+DAAA,CCgBD,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,MAAA,CAGD,yCACC,6BAAA,CACA,0CAAA,CAAA,CAIF,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,OAAA,CACA,oCAAA,CACA,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA,CACA,WAAA,CACA,6CAAA,CACA,yCAAA,CAIF,gCACC,mCAAA,CDjGD,4BACC,2CAAA,CAGC,gJAGC,sBAAA,CAIA,kGACC,iCAAA,CAIF,mDACC,sBAAA,CAGD,6CACC,+BAAA,CAKH,gCACC,cAAA,CAGC,yDACC,0CAAA,CAED,8DACC,0CAAA\",\"sourcesContent\":[\"\\n@import './shared/styles.scss';\\n\\n.user-list__row {\\n\\t@include 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 cell;\\n\\n\\t&__cell {\\n\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\n\\t\\t:deep {\\n\\t\\t\\t.input-field,\\n\\t\\t\\t.input-field__main-wrapper,\\n\\t\\t\\t.input-field__input {\\n\\t\\t\\t\\theight: 48px !important;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.input-field__input {\\n\\t\\t\\t\\t&:placeholder-shown:not(:focus) + .input-field__label {\\n\\t\\t\\t\\t\\tinset-block-start: 16px !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t.button-vue--icon-only {\\n\\t\\t\\t\\theight: 44px !important;\\n\\t\\t\\t}\\n\\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 * @copyright 2023 Christopher Ng <chrng8@gmail.com>\\n *\\n * @author Christopher Ng <chrng8@gmail.com>\\n *\\n * @license AGPL-3.0-or-later\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\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\\tleft: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--displayname {\\n\\t\\t\\t\\tleft: var(--avatar-cell-width);\\n\\t\\t\\t\\tborder-right: 1px solid var(--color-border);\\n\\t\\t\\t}\\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\\tright: 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-left: 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, \"label[for=default-quota-select][data-v-0a250c55]{display:block;padding:4px 0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/Users/UserSettingsDialog.vue\"],\"names\":[],\"mappings\":\"AACA,iDACC,aAAA,CACA,aAAA\",\"sourcesContent\":[\"\\nlabel[for=\\\"default-quota-select\\\"] {\\n\\tdisplay: block;\\n\\tpadding: 4px 0;\\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-4377829d]{--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%}.user-list__header[data-v-4377829d],.user-list__footer[data-v-4377829d]{position:sticky;display:block}.user-list__header[data-v-4377829d]{top:0;z-index:calc(var(--sticky-column-z-index) + 1)}.user-list__footer[data-v-4377829d]{left:0}.user-list__body[data-v-4377829d]{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,CAEA,wEAEC,eAAA,CAEA,aAAA,CAGD,oCACC,KAAA,CACA,8CAAA,CAGD,oCACC,MAAA,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\\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\\tleft: 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, \".app-content[data-v-a0643d36]{display:flex;overflow:hidden;flex-direction:column;max-height:100%}.app-navigation-entry__settings[data-v-a0643d36]{height:auto !important;flex:0 0 auto}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/views/Users.vue\"],\"names\":[],\"mappings\":\"AACA,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CAGD,iDACC,sBAAA,CAEA,aAAA\",\"sourcesContent\":[\"\\n.app-content {\\n\\t// Virtual list needs to be full height and is scrollable\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\tflex-direction: column;\\n\\tmax-height: 100%;\\n}\\n\\n.app-navigation-entry__settings {\\n\\theight: auto !important;\\n\\t// Prevent shrinking or growing\\n\\tflex: 0 0 auto;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('Fragment',[_c('NcContent',{attrs:{\"app-name\":\"settings\"}},[_c('NcAppNavigation',{scopedSlots:_vm._u([{key:\"list\",fn:function(){return [_c('NcAppNavigationItem',{attrs:{\"id\":\"everyone\",\"exact\":true,\"name\":_vm.t('settings', 'Active users'),\"to\":{ name: 'users' }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountGroup',{attrs:{\"size\":20}})]},proxy:true},{key:\"counter\",fn:function(){return [(_vm.userCount)?_c('NcCounterBubble',{attrs:{\"type\":!_vm.selectedGroupDecoded ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.userCount)+\"\\n\\t\\t\\t\\t\\t\\t\")]):_vm._e()]},proxy:true}])}),_vm._v(\" \"),(_vm.settings.isAdmin)?_c('NcAppNavigationItem',{attrs:{\"id\":\"admin\",\"exact\":true,\"name\":_vm.t('settings', 'Admins'),\"to\":{ name: 'group', params: { selectedGroup: 'admin' } }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ShieldAccount',{attrs:{\"size\":20}})]},proxy:true},(_vm.adminGroupMenu.count > 0)?{key:\"counter\",fn:function(){return [_c('NcCounterBubble',{attrs:{\"type\":_vm.selectedGroupDecoded === 'admin' ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.adminGroupMenu.count)+\"\\n\\t\\t\\t\\t\\t\\t\")])]},proxy:true}:null],null,true)}):_vm._e(),_vm._v(\" \"),(_vm.disabledGroupMenu.usercount > 0 || _vm.disabledGroupMenu.usercount === -1)?_c('NcAppNavigationItem',{attrs:{\"id\":\"disabled\",\"exact\":true,\"name\":_vm.t('settings', 'Disabled users'),\"to\":{ name: 'group', params: { selectedGroup: 'disabled' } }},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountOff',{attrs:{\"size\":20}})]},proxy:true},(_vm.disabledGroupMenu.usercount > 0)?{key:\"counter\",fn:function(){return [_c('NcCounterBubble',{attrs:{\"type\":_vm.selectedGroupDecoded === 'disabled' ? 'highlighted' : undefined}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.disabledGroupMenu.usercount)+\"\\n\\t\\t\\t\\t\\t\\t\")])]},proxy:true}:null],null,true)}):_vm._e(),_vm._v(\" \"),_c('NcAppNavigationCaption',{attrs:{\"name\":_vm.t('settings', 'Groups'),\"disabled\":_vm.loadingAddGroup,\"aria-label\":_vm.loadingAddGroup ? _vm.t('settings', 'Creating group …') : _vm.t('settings', 'Create group'),\"force-menu\":\"\",\"open\":_vm.isAddGroupOpen},on:{\"update:open\":function($event){_vm.isAddGroupOpen=$event}},scopedSlots:_vm._u([{key:\"actionsTriggerIcon\",fn:function(){return [(_vm.loadingAddGroup)?_c('NcLoadingIcon'):_c('Plus',{attrs:{\"size\":20}})]},proxy:true},{key:\"actions\",fn:function(){return [_c('NcActionText',{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountGroup',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Create group'))+\"\\n\\t\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionInput',{attrs:{\"label\":_vm.t('settings', 'Group name'),\"label-outside\":false,\"disabled\":_vm.loadingAddGroup,\"value\":_vm.newGroupName,\"error\":_vm.hasAddGroupError,\"helper-text\":_vm.hasAddGroupError ? _vm.t('settings', 'Please enter a valid group name') : ''},on:{\"update:value\":function($event){_vm.newGroupName=$event},\"submit\":_vm.createGroup}})]},proxy:true}])}),_vm._v(\" \"),_vm._l((_vm.groupList),function(group){return _c('GroupListItem',{key:group.id,attrs:{\"id\":group.id,\"active\":_vm.selectedGroupDecoded === group.id,\"name\":group.title,\"count\":group.count}})})]},proxy:true},{key:\"footer\",fn:function(){return [_c('ul',{staticClass:\"app-navigation-entry__settings\"},[_c('NcAppNavigationItem',{attrs:{\"name\":_vm.t('settings', 'User management settings')},on:{\"click\":function($event){_vm.isDialogOpen = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Cog',{attrs:{\"size\":20}})]},proxy:true}])})],1)]},proxy:true}])},[_c('NcAppNavigationNew',{attrs:{\"button-id\":\"new-user-button\",\"text\":_vm.t('settings','New user')},on:{\"click\":_vm.showNewUserMenu,\"keyup\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.showNewUserMenu.apply(null, arguments)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"space\",32,$event.key,[\" \",\"Spacebar\"]))return null;return _vm.showNewUserMenu.apply(null, arguments)}]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Plus',{attrs:{\"size\":20}})]},proxy:true}])})],1),_vm._v(\" \"),_c('NcAppContent',[_c('UserList',{attrs:{\"selected-group\":_vm.selectedGroupDecoded,\"external-actions\":_vm.externalActions}})],1)],1),_vm._v(\" \"),_c('UserSettingsDialog',{attrs:{\"open\":_vm.isDialogOpen},on:{\"update:open\":function($event){_vm.isDialogOpen=$event}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountOff.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountOff.vue?vue&type=script&lang=js&\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon account-off-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,4A4,4 0 0,1 16,8C16,9.95 14.6,11.58 12.75,11.93L8.07,7.25C8.42,5.4 10.05,4 12,4M12.28,14L18.28,20L20,21.72L18.73,23L15.73,20H4V18C4,16.16 6.5,14.61 9.87,14.14L2.78,7.05L4.05,5.78L12.28,14M20,18V19.18L15.14,14.32C18,14.93 20,16.35 20,18Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"AccountOffIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./AccountOff.vue?vue&type=template&id=4a2e1178&\"\nimport script from \"./AccountOff.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountOff.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon account-off-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,4A4,4 0 0,1 16,8C16,9.95 14.6,11.58 12.75,11.93L8.07,7.25C8.42,5.4 10.05,4 12,4M12.28,14L18.28,20L20,21.72L18.73,23L15.73,20H4V18C4,16.16 6.5,14.61 9.87,14.14L2.78,7.05L4.05,5.78L12.28,14M20,18V19.18L15.14,14.32C18,14.93 20,16.35 20,18Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShieldAccount.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShieldAccount.vue?vue&type=script&lang=js&\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon shield-account-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,1L3,5V11C3,16.55 6.84,21.74 12,23C17.16,21.74 21,16.55 21,11V5L12,1M12,5A3,3 0 0,1 15,8A3,3 0 0,1 12,11A3,3 0 0,1 9,8A3,3 0 0,1 12,5M17.13,17C15.92,18.85 14.11,20.24 12,20.92C9.89,20.24 8.08,18.85 6.87,17C6.53,16.5 6.24,16 6,15.47C6,13.82 8.71,12.47 12,12.47C15.29,12.47 18,13.79 18,15.47C17.76,16 17.47,16.5 17.13,17Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ShieldAccountIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./ShieldAccount.vue?vue&type=template&id=3937f138&\"\nimport script from \"./ShieldAccount.vue?vue&type=script&lang=js&\"\nexport * from \"./ShieldAccount.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon shield-account-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,1L3,5V11C3,16.55 6.84,21.74 12,23C17.16,21.74 21,16.55 21,11V5L12,1M12,5A3,3 0 0,1 15,8A3,3 0 0,1 12,11A3,3 0 0,1 9,8A3,3 0 0,1 12,5M17.13,17C15.92,18.85 14.11,20.24 12,20.92C9.89,20.24 8.08,18.85 6.87,17C6.53,16.5 6.24,16 6,15.47C6,13.82 8.71,12.47 12,12.47C15.29,12.47 18,13.79 18,15.47C17.76,16 17.47,16.5 17.13,17Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2021 Martin Jänel <spammemore@posteo.de>\n -\n - @author Martin Jänel <spammemore@posteo.de>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<Fragment>\n\t\t<NcModal v-if=\"showRemoveGroupModal\"\n\t\t\t@close=\"showRemoveGroupModal = false\">\n\t\t\t<div class=\"modal__content\">\n\t\t\t\t<h2 class=\"modal__header\">\n\t\t\t\t\t{{ t('settings', 'Please confirm the group removal') }}\n\t\t\t\t</h2>\n\t\t\t\t<NcNoteCard type=\"warning\"\n\t\t\t\t\tshow-alert>\n\t\t\t\t\t{{ t('settings', 'You are about to remove the group \"{group}\". The users will NOT be deleted.', { group: name }) }}\n\t\t\t\t</NcNoteCard>\n\t\t\t\t<div class=\"modal__button-row\">\n\t\t\t\t\t<NcButton type=\"secondary\"\n\t\t\t\t\t\t@click=\"showRemoveGroupModal = false\">\n\t\t\t\t\t\t{{ t('settings', 'Cancel') }}\n\t\t\t\t\t</NcButton>\n\t\t\t\t\t<NcButton type=\"primary\"\n\t\t\t\t\t\t@click=\"removeGroup\">\n\t\t\t\t\t\t{{ t('settings', 'Confirm') }}\n\t\t\t\t\t</NcButton>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</NcModal>\n\n\t\t<NcAppNavigationItem :key=\"id\"\n\t\t\t:exact=\"true\"\n\t\t\t:name=\"name\"\n\t\t\t:to=\"{ name: 'group', params: { selectedGroup: encodeURIComponent(id) } }\"\n\t\t\t:loading=\"loadingRenameGroup\"\n\t\t\t:menu-open=\"openGroupMenu\"\n\t\t\t@update:menuOpen=\"handleGroupMenuOpen\">\n\t\t\t<template #icon>\n\t\t\t\t<AccountGroup :size=\"20\" />\n\t\t\t</template>\n\t\t\t<template #counter>\n\t\t\t\t<NcCounterBubble v-if=\"count\"\n\t\t\t\t\t:type=\"active ? 'highlighted' : undefined\">\n\t\t\t\t\t{{ count }}\n\t\t\t\t</NcCounterBubble>\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionInput v-if=\"id !== 'admin' && id !== 'disabled' && settings.isAdmin\"\n\t\t\t\t\tref=\"displayNameInput\"\n\t\t\t\t\t:trailing-button-label=\"t('settings', 'Submit')\"\n\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t:value=\"name\"\n\t\t\t\t\t:label=\" t('settings', 'Rename group')\"\n\t\t\t\t\t@submit=\"renameGroup(id)\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionInput>\n\t\t\t\t<NcActionButton v-if=\"id !== 'admin' && id !== 'disabled' && settings.isAdmin\"\n\t\t\t\t\t@click=\"showRemoveGroupModal = true\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ t('settings', 'Remove group') }}\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcAppNavigationItem>\n\t</Fragment>\n</template>\n\n<script>\nimport { Fragment } from 'vue-frag'\n\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport NcActionInput from '@nextcloud/vue/dist/Components/NcActionInput.js'\nimport NcAppNavigationItem from '@nextcloud/vue/dist/Components/NcAppNavigationItem.js'\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcCounterBubble from '@nextcloud/vue/dist/Components/NcCounterBubble.js'\nimport NcModal from '@nextcloud/vue/dist/Components/NcModal.js'\nimport NcNoteCard from '@nextcloud/vue/dist/Components/NcNoteCard.js'\n\nimport AccountGroup from 'vue-material-design-icons/AccountGroup.vue'\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\n\nimport { showError } from '@nextcloud/dialogs'\n\nexport default {\n\tname: 'GroupListItem',\n\tcomponents: {\n\t\tAccountGroup,\n\t\tDelete,\n\t\tFragment,\n\t\tNcActionButton,\n\t\tNcActionInput,\n\t\tNcAppNavigationItem,\n\t\tNcButton,\n\t\tNcCounterBubble,\n\t\tNcModal,\n\t\tNcNoteCard,\n\t\tPencil,\n\t},\n\tprops: {\n\t\t/**\n\t\t * If this group is currently selected\n\t\t */\n\t\tactive: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * Number of members within this group\n\t\t */\n\t\tcount: {\n\t\t\ttype: Number,\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * Identifier of this group\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * Name of this group\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tloadingRenameGroup: false,\n\t\t\topenGroupMenu: false,\n\t\t\tshowRemoveGroupModal: false,\n\t\t}\n\t},\n\tcomputed: {\n\t\tsettings() {\n\t\t\treturn this.$store.getters.getServerData\n\t\t},\n\t},\n\tmethods: {\n\t\thandleGroupMenuOpen() {\n\t\t\tthis.openGroupMenu = true\n\t\t},\n\t\tasync renameGroup(gid) {\n\t\t\t// check if group id is valid\n\t\t\tif (gid.trim() === '') {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst displayName = this.$refs.displayNameInput.$el.querySelector('input[type=\"text\"]').value\n\n\t\t\t// check if group name is valid\n\t\t\tif (displayName.trim() === '') {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tthis.openGroupMenu = false\n\t\t\t\tthis.loadingRenameGroup = true\n\t\t\t\tawait this.$store.dispatch('renameGroup', {\n\t\t\t\t\tgroupid: gid.trim(),\n\t\t\t\t\tdisplayName: displayName.trim(),\n\t\t\t\t})\n\n\t\t\t\tthis.loadingRenameGroup = false\n\t\t\t} catch {\n\t\t\t\tthis.openGroupMenu = true\n\t\t\t\tthis.loadingRenameGroup = false\n\t\t\t}\n\t\t},\n\t\tasync removeGroup() {\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('removeGroup', this.id)\n\t\t\t\tthis.showRemoveGroupModal = false\n\t\t\t} catch (error) {\n\t\t\t\tshowError(t('settings', 'Failed to remove group \"{group}\"', { group: this.name }))\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\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</style>\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=36dd2d08&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupListItem.vue?vue&type=style&index=0&id=36dd2d08&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=36dd2d08&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=36dd2d08&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 \"36dd2d08\",\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 remove the group \"{group}\". The users 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,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)?_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)?_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', 'Remove group'))+\"\\n\\t\\t\\t\")]):_vm._e()]},proxy:true}])})],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=4377829d&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=style&index=0&id=4377829d&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=4377829d&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=4377829d&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 \"4377829d\",\n null\n \n)\n\nexport default component.exports","<!--\n\t- @copyright 2023 Christopher Ng <chrng8@gmail.com>\n\t-\n\t- @author Christopher Ng <chrng8@gmail.com>\n\t-\n\t- @license AGPL-3.0-or-later\n\t-\n\t- This program is free software: you can redistribute it and/or modify\n\t- it under the terms of the GNU Affero General Public License as\n\t- published by the Free Software Foundation, either version 3 of the\n\t- License, or (at your option) any later version.\n\t-\n\t- This program is distributed in the hope that it will be useful,\n\t- but WITHOUT ANY WARRANTY; without even the implied warranty of\n\t- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\t- GNU Affero General Public License for more details.\n\t-\n\t- You should have received a copy of the GNU Affero General Public License\n\t- along with this program. If not, see <http://www.gnu.org/licenses/>.\n\t-\n-->\n\n<template>\n\t<NcModal class=\"modal\"\n\t\tsize=\"small\"\n\t\tv-on=\"$listeners\">\n\t\t<form class=\"modal__form\"\n\t\t\tdata-test=\"form\"\n\t\t\t:disabled=\"loading.all\"\n\t\t\t@submit.prevent=\"createUser\">\n\t\t\t<h2>{{ t('settings', 'New user') }}</h2>\n\t\t\t<NcTextField ref=\"username\"\n\t\t\t\tclass=\"modal__item\"\n\t\t\t\tdata-test=\"username\"\n\t\t\t\t:value.sync=\"newUser.id\"\n\t\t\t\t:disabled=\"settings.newUserGenerateUserID\"\n\t\t\t\t:label=\"usernameLabel\"\n\t\t\t\tautocapitalize=\"none\"\n\t\t\t\tautocomplete=\"off\"\n\t\t\t\tspellcheck=\"false\"\n\t\t\t\tpattern=\"[a-zA-Z0-9 _\\.@\\-']+\"\n\t\t\t\trequired />\n\t\t\t<NcTextField class=\"modal__item\"\n\t\t\t\tdata-test=\"displayName\"\n\t\t\t\t:value.sync=\"newUser.displayName\"\n\t\t\t\t:label=\"t('settings', 'Display name')\"\n\t\t\t\tautocapitalize=\"none\"\n\t\t\t\tautocomplete=\"off\"\n\t\t\t\tspellcheck=\"false\" />\n\t\t\t<span v-if=\"!settings.newUserRequireEmail\"\n\t\t\t\tid=\"password-email-hint\"\n\t\t\t\tclass=\"modal__hint\">\n\t\t\t\t{{ t('settings', 'Either password or email is required') }}\n\t\t\t</span>\n\t\t\t<NcPasswordField ref=\"password\"\n\t\t\t\tclass=\"modal__item\"\n\t\t\t\tdata-test=\"password\"\n\t\t\t\t:value.sync=\"newUser.password\"\n\t\t\t\t:minlength=\"minPasswordLength\"\n\t\t\t\t:maxlength=\"469\"\n\t\t\t\taria-describedby=\"password-email-hint\"\n\t\t\t\t:label=\"newUser.mailAddress === '' ? t('settings', 'Password (required)') : t('settings', 'Password')\"\n\t\t\t\tautocapitalize=\"none\"\n\t\t\t\tautocomplete=\"new-password\"\n\t\t\t\tspellcheck=\"false\"\n\t\t\t\t:required=\"newUser.mailAddress === ''\" />\n\t\t\t<NcTextField class=\"modal__item\"\n\t\t\t\tdata-test=\"email\"\n\t\t\t\ttype=\"email\"\n\t\t\t\t:value.sync=\"newUser.mailAddress\"\n\t\t\t\taria-describedby=\"password-email-hint\"\n\t\t\t\t:label=\"newUser.password === '' || settings.newUserRequireEmail ? t('settings', 'Email (required)') : t('settings', 'Email')\"\n\t\t\t\tautocapitalize=\"none\"\n\t\t\t\tautocomplete=\"off\"\n\t\t\t\tspellcheck=\"false\"\n\t\t\t\t:required=\"newUser.password === '' || settings.newUserRequireEmail\" />\n\t\t\t<div class=\"modal__item\">\n\t\t\t\t<!-- hidden input trick for vanilla html5 form validation -->\n\t\t\t\t<NcTextField v-if=\"!settings.isAdmin\"\n\t\t\t\t\tid=\"new-user-groups-input\"\n\t\t\t\t\ttabindex=\"-1\"\n\t\t\t\t\t:class=\"{ 'icon-loading-small': loading.groups }\"\n\t\t\t\t\t:value=\"newUser.groups\"\n\t\t\t\t\t:required=\"!settings.isAdmin\" />\n\t\t\t\t<label class=\"modal__label\"\n\t\t\t\t\tfor=\"new-user-groups\">\n\t\t\t\t\t{{ !settings.isAdmin ? t('settings', 'Groups (required)') : t('settings', 'Groups') }}\n\t\t\t\t</label>\n\t\t\t\t<NcSelect class=\"modal__select\"\n\t\t\t\t\tinput-id=\"new-user-groups\"\n\t\t\t\t\t:placeholder=\"t('settings', 'Set user groups')\"\n\t\t\t\t\t:disabled=\"loading.groups || loading.all\"\n\t\t\t\t\t:options=\"canAddGroups\"\n\t\t\t\t\t:value=\"newUser.groups\"\n\t\t\t\t\tlabel=\"name\"\n\t\t\t\t\t:close-on-select=\"false\"\n\t\t\t\t\t:multiple=\"true\"\n\t\t\t\t\t:taggable=\"true\"\n\t\t\t\t\t@input=\"handleGroupInput\"\n\t\t\t\t\t@option:created=\"createGroup\" />\n\t\t\t\t\t<!-- If user is not admin, he is a subadmin.\n\t\t\t\t\t\tSubadmins can't create users outside their groups\n\t\t\t\t\t\tTherefore, empty select is forbidden -->\n\t\t\t</div>\n\t\t\t<div v-if=\"subAdminsGroups.length > 0 && settings.isAdmin\"\n\t\t\t\tclass=\"modal__item\">\n\t\t\t\t<label class=\"modal__label\"\n\t\t\t\t\tfor=\"new-user-sub-admin\">\n\t\t\t\t\t{{ t('settings', 'Administered groups') }}\n\t\t\t\t</label>\n\t\t\t\t<NcSelect v-model=\"newUser.subAdminsGroups\"\n\t\t\t\t\tclass=\"modal__select\"\n\t\t\t\t\tinput-id=\"new-user-sub-admin\"\n\t\t\t\t\t:placeholder=\"t('settings', 'Set user as admin for …')\"\n\t\t\t\t\t:options=\"subAdminsGroups\"\n\t\t\t\t\t:close-on-select=\"false\"\n\t\t\t\t\t:multiple=\"true\"\n\t\t\t\t\tlabel=\"name\" />\n\t\t\t</div>\n\t\t\t<div class=\"modal__item\">\n\t\t\t\t<label class=\"modal__label\"\n\t\t\t\t\tfor=\"new-user-quota\">\n\t\t\t\t\t{{ t('settings', 'Quota') }}\n\t\t\t\t</label>\n\t\t\t\t<NcSelect v-model=\"newUser.quota\"\n\t\t\t\t\tclass=\"modal__select\"\n\t\t\t\t\tinput-id=\"new-user-quota\"\n\t\t\t\t\t:placeholder=\"t('settings', 'Set user quota')\"\n\t\t\t\t\t:options=\"quotaOptions\"\n\t\t\t\t\t:clearable=\"false\"\n\t\t\t\t\t:taggable=\"true\"\n\t\t\t\t\t:create-option=\"validateQuota\" />\n\t\t\t</div>\n\t\t\t<div v-if=\"showConfig.showLanguages\"\n\t\t\t\tclass=\"modal__item\">\n\t\t\t\t<label class=\"modal__label\"\n\t\t\t\t\tfor=\"new-user-language\">\n\t\t\t\t\t{{ t('settings', 'Language') }}\n\t\t\t\t</label>\n\t\t\t\t<NcSelect\tv-model=\"newUser.language\"\n\t\t\t\t\tclass=\"modal__select\"\n\t\t\t\t\tinput-id=\"new-user-language\"\n\t\t\t\t\t:placeholder=\"t('settings', 'Set default language')\"\n\t\t\t\t\t:clearable=\"false\"\n\t\t\t\t\t:selectable=\"option => !option.languages\"\n\t\t\t\t\t:filter-by=\"languageFilterBy\"\n\t\t\t\t\t:options=\"languages\"\n\t\t\t\t\tlabel=\"name\" />\n\t\t\t</div>\n\t\t\t<div :class=\"['modal__item managers', { 'icon-loading-small': loading.manager }]\">\n\t\t\t\t<label class=\"modal__label\"\n\t\t\t\t\tfor=\"new-user-manager\">\n\t\t\t\t\t<!-- TRANSLATORS This string describes a manager in the context of an organization -->\n\t\t\t\t\t{{ t('settings', 'Manager') }}\n\t\t\t\t</label>\n\t\t\t\t<NcSelect v-model=\"newUser.manager\"\n\t\t\t\t\tclass=\"modal__select\"\n\t\t\t\t\tinput-id=\"new-user-manager\"\n\t\t\t\t\t:placeholder=\"managerLabel\"\n\t\t\t\t\t:options=\"possibleManagers\"\n\t\t\t\t\t:user-select=\"true\"\n\t\t\t\t\tlabel=\"displayname\"\n\t\t\t\t\t@search=\"searchUserManager\" />\n\t\t\t</div>\n\t\t\t<NcButton class=\"modal__submit\"\n\t\t\t\tdata-test=\"submit\"\n\t\t\t\ttype=\"primary\"\n\t\t\t\tnative-type=\"submit\">\n\t\t\t\t{{ t('settings', 'Add new user') }}\n\t\t\t</NcButton>\n\t\t</form>\n\t</NcModal>\n</template>\n\n<script>\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcModal from '@nextcloud/vue/dist/Components/NcModal.js'\nimport NcPasswordField from '@nextcloud/vue/dist/Components/NcPasswordField.js'\nimport NcSelect from '@nextcloud/vue/dist/Components/NcSelect.js'\nimport NcTextField from '@nextcloud/vue/dist/Components/NcTextField.js'\n\nexport default {\n\tname: 'NewUserModal',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tNcModal,\n\t\tNcPasswordField,\n\t\tNcSelect,\n\t\tNcTextField,\n\t},\n\n\tprops: {\n\t\tloading: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\n\t\tnewUser: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\n\t\tquotaOptions: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tpossibleManagers: [],\n\t\t\t// TRANSLATORS This string describes a manager in the context of an organization\n\t\t\tmanagerLabel: t('settings', 'Set user manager'),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tshowConfig() {\n\t\t\treturn this.$store.getters.getShowConfig\n\t\t},\n\n\t\tsettings() {\n\t\t\treturn this.$store.getters.getServerData\n\t\t},\n\n\t\tusernameLabel() {\n\t\t\tif (this.settings.newUserGenerateUserID) {\n\t\t\t\treturn t('settings', 'Username will be autogenerated')\n\t\t\t}\n\t\t\treturn t('settings', 'Username (required)')\n\t\t},\n\n\t\tminPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength\n\t\t},\n\n\t\tgroups() {\n\t\t\t// data provided php side + remove the disabled group\n\t\t\treturn this.$store.getters.getGroups\n\t\t\t\t.filter(group => group.id !== 'disabled')\n\t\t\t\t.sort((a, b) => a.name.localeCompare(b.name))\n\t\t},\n\n\t\tsubAdminsGroups() {\n\t\t\t// data provided php side\n\t\t\treturn this.$store.getters.getSubadminGroups\n\t\t},\n\n\t\tcanAddGroups() {\n\t\t\t// disabled if no permission to add new users to group\n\t\t\treturn this.groups.map(group => {\n\t\t\t\t// clone object because we don't want\n\t\t\t\t// to edit the original groups\n\t\t\t\tgroup = Object.assign({}, group)\n\t\t\t\tgroup.$isDisabled = group.canAdd === false\n\t\t\t\treturn group\n\t\t\t})\n\t\t},\n\n\t\tlanguages() {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tname: t('settings', 'Common languages'),\n\t\t\t\t\tlanguages: this.settings.languages.commonLanguages,\n\t\t\t\t},\n\t\t\t\t...this.settings.languages.commonLanguages,\n\t\t\t\t{\n\t\t\t\t\tname: t('settings', 'Other languages'),\n\t\t\t\t\tlanguages: this.settings.languages.otherLanguages,\n\t\t\t\t},\n\t\t\t\t...this.settings.languages.otherLanguages,\n\t\t\t]\n\t\t},\n\t},\n\n\tasync beforeMount() {\n\t\tawait this.searchUserManager()\n\t},\n\n\tmethods: {\n\t\tasync createUser() {\n\t\t\tthis.loading.all = true\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('addUser', {\n\t\t\t\t\tuserid: this.newUser.id,\n\t\t\t\t\tpassword: this.newUser.password,\n\t\t\t\t\tdisplayName: this.newUser.displayName,\n\t\t\t\t\temail: this.newUser.mailAddress,\n\t\t\t\t\tgroups: this.newUser.groups.map(group => group.id),\n\t\t\t\t\tsubadmin: this.newUser.subAdminsGroups.map(group => group.id),\n\t\t\t\t\tquota: this.newUser.quota.id,\n\t\t\t\t\tlanguage: this.newUser.language.code,\n\t\t\t\t\tmanager: this.newUser.manager.id,\n\t\t\t\t})\n\n\t\t\t\tthis.$emit('reset')\n\t\t\t\tthis.$refs.username?.$refs?.inputField?.$refs?.input?.focus?.()\n\t\t\t\tthis.$emit('close')\n\t\t\t} catch (error) {\n\t\t\t\tthis.loading.all = false\n\t\t\t\tif (error.response && error.response.data && error.response.data.ocs && error.response.data.ocs.meta) {\n\t\t\t\t\tconst statuscode = error.response.data.ocs.meta.statuscode\n\t\t\t\t\tif (statuscode === 102) {\n\t\t\t\t\t\t// wrong username\n\t\t\t\t\t\tthis.$refs.username?.$refs?.inputField?.$refs?.input?.focus?.()\n\t\t\t\t\t} else if (statuscode === 107) {\n\t\t\t\t\t\t// wrong password\n\t\t\t\t\t\tthis.$refs.password?.$refs?.inputField?.$refs?.input?.focus?.()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\thandleGroupInput(groups) {\n\t\t\t/**\n\t\t\t * Filter out groups with no id to prevent duplicate selected options\n\t\t\t *\n\t\t\t * Created groups are added programmatically by `createGroup()`\n\t\t\t */\n\t\t\t this.newUser.groups = groups.filter(group => Boolean(group.id))\n\t\t},\n\n\t\t/**\n\t\t * Create a new group\n\t\t *\n\t\t * @param {any} group Group\n\t\t * @param {string} group.name Group id\n\t\t */\n\t\tasync createGroup({ name: gid }) {\n\t\t\tthis.loading.groups = true\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('addGroup', gid)\n\t\t\t\tthis.newUser.groups.push(this.groups.find(group => group.id === gid))\n\t\t\t\tthis.loading.groups = false\n\t\t\t} catch (error) {\n\t\t\t\tthis.loading.groups = false\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Validate quota string to make sure it's a valid human file size\n\t\t *\n\t\t * @param {string} quota Quota in readable format '5 GB'\n\t\t * @return {object}\n\t\t */\n\t\tvalidateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tconst validQuota = OC.Util.computerFileSize(quota)\n\t\t\tif (validQuota !== null && validQuota >= 0) {\n\t\t\t\t// unify format output\n\t\t\t\tquota = OC.Util.humanFileSize(OC.Util.computerFileSize(quota))\n\t\t\t\tthis.newUser.quota = { id: quota, label: quota }\n\t\t\t\treturn this.newUser.quota\n\t\t\t}\n\t\t\t// Default is unlimited\n\t\t\tthis.newUser.quota = this.quotaOptions[0]\n\t\t\treturn this.quotaOptions[0]\n\t\t},\n\n\t\tlanguageFilterBy(option, label, search) {\n\t\t\t// Show group header of the language\n\t\t\tif (option.languages) {\n\t\t\t\treturn option.languages.some(\n\t\t\t\t\t({ name }) => name.toLocaleLowerCase().includes(search.toLocaleLowerCase()),\n\t\t\t\t)\n\t\t\t}\n\n\t\t\treturn (label || '').toLocaleLowerCase().includes(search.toLocaleLowerCase())\n\t\t},\n\n\t\tasync searchUserManager(query) {\n\t\t\tawait this.$store.dispatch(\n\t\t\t\t'searchUsers',\n\t\t\t\t{\n\t\t\t\t\toffset: 0,\n\t\t\t\t\tlimit: 10,\n\t\t\t\t\tsearch: query,\n\t\t\t\t},\n\t\t\t).then(response => {\n\t\t\t\tconst users = response?.data ? Object.values(response?.data.ocs.data.users) : []\n\t\t\t\tif (users.length > 0) {\n\t\t\t\t\tthis.possibleManagers = users\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.modal {\n\t&__form {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\tpadding: 20px;\n\t\tgap: 4px 0;\n\n\t\t/* fake input for groups validation */\n\t\t#new-user-groups-input {\n\t\t\tposition: absolute;\n\t\t\topacity: 0;\n\t\t\t/* The \"hidden\" input is behind the NcSelect, so in general it does\n\t\t\t* not receives clicks. However, with Firefox, after the validation\n\t\t\t* fails, it will receive the first click done on it, so its width needs\n\t\t\t* to be set to 0 to prevent that (\"pointer-events: none\" does not\n\t\t\t* prevent it). */\n\t\t\twidth: 0;\n\t\t}\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&__submit {\n\t\tmargin-top: 20px;\n\t}\n}\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewUserModal.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!./NewUserModal.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!./NewUserModal.vue?vue&type=style&index=0&id=0634d81b&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewUserModal.vue?vue&type=style&index=0&id=0634d81b&prod&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewUserModal.vue?vue&type=template&id=0634d81b&scoped=true&\"\nimport script from \"./NewUserModal.vue?vue&type=script&lang=js&\"\nexport * from \"./NewUserModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NewUserModal.vue?vue&type=style&index=0&id=0634d81b&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 \"0634d81b\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcModal',_vm._g({staticClass:\"modal\",attrs:{\"size\":\"small\"}},_vm.$listeners),[_c('form',{staticClass:\"modal__form\",attrs:{\"data-test\":\"form\",\"disabled\":_vm.loading.all},on:{\"submit\":function($event){$event.preventDefault();return _vm.createUser.apply(null, arguments)}}},[_c('h2',[_vm._v(_vm._s(_vm.t('settings', 'New user')))]),_vm._v(\" \"),_c('NcTextField',{ref:\"username\",staticClass:\"modal__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:\"modal__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:\"modal__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:\"modal__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:\"modal__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:\"modal__item\"},[(!_vm.settings.isAdmin)?_c('NcTextField',{class:{ 'icon-loading-small': _vm.loading.groups },attrs:{\"id\":\"new-user-groups-input\",\"tabindex\":\"-1\",\"value\":_vm.newUser.groups,\"required\":!_vm.settings.isAdmin}}):_vm._e(),_vm._v(\" \"),_c('label',{staticClass:\"modal__label\",attrs:{\"for\":\"new-user-groups\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(!_vm.settings.isAdmin ? _vm.t('settings', 'Groups (required)') : _vm.t('settings', 'Groups'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{staticClass:\"modal__select\",attrs:{\"input-id\":\"new-user-groups\",\"placeholder\":_vm.t('settings', 'Set user groups'),\"disabled\":_vm.loading.groups || _vm.loading.all,\"options\":_vm.canAddGroups,\"value\":_vm.newUser.groups,\"label\":\"name\",\"close-on-select\":false,\"multiple\":true,\"taggable\":true},on:{\"input\":_vm.handleGroupInput,\"option:created\":_vm.createGroup}})],1),_vm._v(\" \"),(_vm.subAdminsGroups.length > 0 && _vm.settings.isAdmin)?_c('div',{staticClass:\"modal__item\"},[_c('label',{staticClass:\"modal__label\",attrs:{\"for\":\"new-user-sub-admin\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Administered groups'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{staticClass:\"modal__select\",attrs:{\"input-id\":\"new-user-sub-admin\",\"placeholder\":_vm.t('settings', 'Set user as admin for …'),\"options\":_vm.subAdminsGroups,\"close-on-select\":false,\"multiple\":true,\"label\":\"name\"},model:{value:(_vm.newUser.subAdminsGroups),callback:function ($$v) {_vm.$set(_vm.newUser, \"subAdminsGroups\", $$v)},expression:\"newUser.subAdminsGroups\"}})],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"modal__item\"},[_c('label',{staticClass:\"modal__label\",attrs:{\"for\":\"new-user-quota\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Quota'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{staticClass:\"modal__select\",attrs:{\"input-id\":\"new-user-quota\",\"placeholder\":_vm.t('settings', 'Set user 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:\"modal__item\"},[_c('label',{staticClass:\"modal__label\",attrs:{\"for\":\"new-user-language\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Language'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{staticClass:\"modal__select\",attrs:{\"input-id\":\"new-user-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:['modal__item managers', { 'icon-loading-small': _vm.loading.manager }]},[_c('label',{staticClass:\"modal__label\",attrs:{\"for\":\"new-user-manager\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Manager'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcSelect',{staticClass:\"modal__select\",attrs:{\"input-id\":\"new-user-manager\",\"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),_vm._v(\" \"),_c('NcButton',{staticClass:\"modal__submit\",attrs:{\"data-test\":\"submit\",\"type\":\"primary\",\"native-type\":\"submit\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Add new user'))+\"\\n\\t\\t\")])],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!./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 users …'),\"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=5b39b95a&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListFooter.vue?vue&type=style&index=0&id=5b39b95a&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=5b39b95a&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=5b39b95a&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 \"5b39b95a\",\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('span',{staticClass:\"header__subtitle\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Username'))+\"\\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.subAdminsGroups.length > 0 && _vm.settings.isAdmin)?_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', 'User 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.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', 'User 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=69afa821&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListHeader.vue?vue&type=style&index=0&id=69afa821&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=69afa821&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=69afa821&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 \"69afa821\",\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!./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&\"","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 user 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.actions),function({ action, icon, text },index){return _c('NcActionButton',{key:index,attrs:{\"disabled\":_vm.disabled,\"aria-label\":text,\"icon\":icon},on:{\"click\":action}},[_vm._v(\"\\n\\t\\t\"+_vm._s(text)+\"\\n\\t\")])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./UserRowActions.vue?vue&type=template&id=41b3dab7&\"\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","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Greta Doci <gretadoci@gmail.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\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\tgroups: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\t\tsubAdminsGroups: {\n\t\t\ttype: Array,\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\tcomputed: {\n\t\tshowConfig() {\n\t\t\treturn this.$store.getters.getShowConfig\n\t\t},\n\n\t\t/* GROUPS MANAGEMENT */\n\t\tuserGroups() {\n\t\t\tconst userGroups = this.groups.filter(group => this.user.groups.includes(group.id))\n\t\t\treturn userGroups\n\t\t},\n\t\tuserSubAdminsGroups() {\n\t\t\tconst userSubAdminsGroups = this.subAdminsGroups.filter(group => this.user.subadmin.includes(group.id))\n\t\t\treturn userSubAdminsGroups\n\t\t},\n\t\tavailableGroups() {\n\t\t\treturn this.groups.map((group) => {\n\t\t\t\t// clone object because we don't want\n\t\t\t\t// to edit the original groups\n\t\t\t\tconst groupClone = Object.assign({}, group)\n\n\t\t\t\t// two settings here:\n\t\t\t\t// 1. user NOT in group but no permission to add\n\t\t\t\t// 2. user is in group but no permission to remove\n\t\t\t\tgroupClone.$isDisabled\n\t\t\t\t\t= (group.canAdd === false\n\t\t\t\t\t\t&& !this.user.groups.includes(group.id))\n\t\t\t\t\t|| (group.canRemove === false\n\t\t\t\t\t\t&& this.user.groups.includes(group.id))\n\t\t\t\treturn groupClone\n\t\t\t})\n\t\t},\n\n\t\t/* QUOTA MANAGEMENT */\n\t\tusedSpace() {\n\t\t\tif (this.user.quota.used) {\n\t\t\t\treturn t('settings', '{size} used', { size: OC.Util.humanFileSize(this.user.quota.used) })\n\t\t\t}\n\t\t\treturn t('settings', '{size} used', { size: OC.Util.humanFileSize(0) })\n\t\t},\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\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 = OC.Util.humanFileSize(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\t/* LAST LOGIN */\n\t\tuserLastLoginTooltip() {\n\t\t\tif (this.user.lastLogin > 0) {\n\t\t\t\treturn OC.Util.formatDate(this.user.lastLogin)\n\t\t\t}\n\t\t\treturn ''\n\t\t},\n\t\tuserLastLogin() {\n\t\t\tif (this.user.lastLogin > 0) {\n\t\t\t\treturn OC.Util.relativeModifiedDate(this.user.lastLogin)\n\t\t\t}\n\t\t\treturn t('settings', 'Never')\n\t\t},\n\t},\n}\n","/**\n * @copyright 2023 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\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\n * @param user.id\n */\nexport const isObfuscated = (user) => {\n const keys = Object.keys(user);\n return keys.length === 1 && keys.at(0) === 'id';\n};\n","<!--\n - @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>\n - @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n -\n\t- @author Christopher Ng <chrng8@gmail.com>\n - @author Gary Kim <gary@garykim.dev>\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<tr class=\"user-list__row\"\n\t\t:data-cy-user-row=\"user.id\">\n\t\t<td class=\"row__cell row__cell--avatar\" data-cy-user-list-cell-avatar>\n\t\t\t<NcLoadingIcon v-if=\"isLoadingUser\"\n\t\t\t\t:name=\"t('settings', 'Loading user …')\"\n\t\t\t\t:size=\"32\" />\n\t\t\t<NcAvatar v-else-if=\"visible\"\n\t\t\t\tdisable-menu\n\t\t\t\t:show-user-status=\"false\"\n\t\t\t\t:user=\"user.id\" />\n\t\t</td>\n\n\t\t<td class=\"row__cell row__cell--displayname\" data-cy-user-list-cell-displayname>\n\t\t\t<template v-if=\"editing && user.backendCapabilities.setDisplayName\">\n\t\t\t\t<NcTextField ref=\"displayNameField\"\n\t\t\t\t\tclass=\"user-row-text-field\"\n\t\t\t\t\tdata-cy-user-list-input-displayname\n\t\t\t\t\t:data-loading=\"loading.displayName || undefined\"\n\t\t\t\t\t:trailing-button-label=\"t('settings', 'Submit')\"\n\t\t\t\t\t:class=\"{ 'icon-loading-small': loading.displayName }\"\n\t\t\t\t\t:show-trailing-button=\"true\"\n\t\t\t\t\t:disabled=\"loading.displayName || isLoadingField\"\n\t\t\t\t\t:label=\"t('settings', 'Change display name')\"\n\t\t\t\t\ttrailing-button-icon=\"arrowRight\"\n\t\t\t\t\t:value.sync=\"editedDisplayName\"\n\t\t\t\t\tautocapitalize=\"off\"\n\t\t\t\t\tautocomplete=\"off\"\n\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t@trailing-button-click=\"updateDisplayName\" />\n\t\t\t</template>\n\t\t\t<template v-else>\n\t\t\t\t<strong v-if=\"!isObfuscated\"\n\t\t\t\t\t:title=\"user.displayname?.length > 20 ? user.displayname : null\">\n\t\t\t\t\t{{ user.displayname }}\n\t\t\t\t</strong>\n\t\t\t\t<span class=\"row__subtitle\">{{ user.id }}</span>\n\t\t\t</template>\n\t\t</td>\n\n\t\t<td data-cy-user-list-cell-password\n\t\t\tclass=\"row__cell\"\n\t\t\t:class=\"{ 'row__cell--obfuscated': hasObfuscated }\">\n\t\t\t<template v-if=\"editing && settings.canChangePassword && user.backendCapabilities.setPassword\">\n\t\t\t\t<NcTextField class=\"user-row-text-field\"\n\t\t\t\t\tdata-cy-user-list-input-password\n\t\t\t\t\t:data-loading=\"loading.password || undefined\"\n\t\t\t\t\t:trailing-button-label=\"t('settings', 'Submit')\"\n\t\t\t\t\t:class=\"{'icon-loading-small': loading.password}\"\n\t\t\t\t\t:show-trailing-button=\"true\"\n\t\t\t\t\t:disabled=\"loading.password || isLoadingField\"\n\t\t\t\t\t:minlength=\"minPasswordLength\"\n\t\t\t\t\tmaxlength=\"469\"\n\t\t\t\t\t:label=\"t('settings', 'Set new password')\"\n\t\t\t\t\ttrailing-button-icon=\"arrowRight\"\n\t\t\t\t\t:value.sync=\"editedPassword\"\n\t\t\t\t\tautocapitalize=\"off\"\n\t\t\t\t\tautocomplete=\"new-password\"\n\t\t\t\t\trequired\n\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\ttype=\"password\"\n\t\t\t\t\t@trailing-button-click=\"updatePassword\" />\n\t\t\t</template>\n\t\t\t<span v-else-if=\"isObfuscated\">\n\t\t\t\t{{ t('settings', 'You do not have permissions to see the details of this user') }}\n\t\t\t</span>\n\t\t</td>\n\n\t\t<td class=\"row__cell\" data-cy-user-list-cell-email>\n\t\t\t<template v-if=\"editing\">\n\t\t\t\t<NcTextField class=\"user-row-text-field\"\n\t\t\t\t\t:class=\"{'icon-loading-small': loading.mailAddress}\"\n\t\t\t\t\tdata-cy-user-list-input-email\n\t\t\t\t\t:data-loading=\"loading.mailAddress || undefined\"\n\t\t\t\t\t:show-trailing-button=\"true\"\n\t\t\t\t\t:trailing-button-label=\"t('settings', 'Submit')\"\n\t\t\t\t\t:label=\"t('settings', 'Set new email address')\"\n\t\t\t\t\t:disabled=\"loading.mailAddress || isLoadingField\"\n\t\t\t\t\ttrailing-button-icon=\"arrowRight\"\n\t\t\t\t\t:value.sync=\"editedMail\"\n\t\t\t\t\tautocapitalize=\"off\"\n\t\t\t\t\tautocomplete=\"email\"\n\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\ttype=\"email\"\n\t\t\t\t\t@trailing-button-click=\"updateEmail\" />\n\t\t\t</template>\n\t\t\t<span v-else-if=\"!isObfuscated\"\n\t\t\t\t:title=\"user.email?.length > 20 ? user.email : null\">\n\t\t\t\t{{ user.email }}\n\t\t\t</span>\n\t\t</td>\n\n\t\t<td class=\"row__cell row__cell--large row__cell--multiline\" data-cy-user-list-cell-groups>\n\t\t\t<template v-if=\"editing\">\n\t\t\t\t<label class=\"hidden-visually\"\n\t\t\t\t\t:for=\"'groups' + uniqueId\">\n\t\t\t\t\t{{ t('settings', 'Add user to group') }}\n\t\t\t\t</label>\n\t\t\t\t<NcSelect data-cy-user-list-input-groups\n\t\t\t\t\t:data-loading=\"loading.groups || undefined\"\n\t\t\t\t\t:input-id=\"'groups' + uniqueId\"\n\t\t\t\t\t:close-on-select=\"false\"\n\t\t\t\t\t:disabled=\"isLoadingField\"\n\t\t\t\t\t:loading=\"loading.groups\"\n\t\t\t\t\t:multiple=\"true\"\n\t\t\t\t\t:append-to-body=\"false\"\n\t\t\t\t\t:options=\"availableGroups\"\n\t\t\t\t\t:placeholder=\"t('settings', 'Add user to group')\"\n\t\t\t\t\t:taggable=\"settings.isAdmin\"\n\t\t\t\t\t:value=\"userGroups\"\n\t\t\t\t\tlabel=\"name\"\n\t\t\t\t\t:no-wrap=\"true\"\n\t\t\t\t\t:create-option=\"(value) => ({ name: value, isCreating: true })\"\n\t\t\t\t\t@option:created=\"createGroup\"\n\t\t\t\t\t@option:selected=\"options => addUserGroup(options.at(-1))\"\n\t\t\t\t\t@option:deselected=\"removeUserGroup\" />\n\t\t\t</template>\n\t\t\t<span v-else-if=\"!isObfuscated\"\n\t\t\t\t:title=\"userGroupsLabels?.length > 40 ? userGroupsLabels : null\">\n\t\t\t\t{{ userGroupsLabels }}\n\t\t\t</span>\n\t\t</td>\n\n\t\t<td v-if=\"subAdminsGroups.length > 0 && settings.isAdmin\"\n\t\t\tdata-cy-user-list-cell-subadmins\n\t\t\tclass=\"row__cell row__cell--large row__cell--multiline\">\n\t\t\t<template v-if=\"editing && settings.isAdmin && subAdminsGroups.length > 0\">\n\t\t\t\t<label class=\"hidden-visually\"\n\t\t\t\t\t:for=\"'subadmins' + uniqueId\">\n\t\t\t\t\t{{ t('settings', 'Set user as admin for') }}\n\t\t\t\t</label>\n\t\t\t\t<NcSelect data-cy-user-list-input-subadmins\n\t\t\t\t\t:data-loading=\"loading.subadmins || undefined\"\n\t\t\t\t\t:input-id=\"'subadmins' + uniqueId\"\n\t\t\t\t\t:close-on-select=\"false\"\n\t\t\t\t\t:disabled=\"isLoadingField\"\n\t\t\t\t\t:loading=\"loading.subadmins\"\n\t\t\t\t\tlabel=\"name\"\n\t\t\t\t\t:append-to-body=\"false\"\n\t\t\t\t\t:multiple=\"true\"\n\t\t\t\t\t:no-wrap=\"true\"\n\t\t\t\t\t:options=\"subAdminsGroups\"\n\t\t\t\t\t:placeholder=\"t('settings', 'Set user as admin for')\"\n\t\t\t\t\t:value=\"userSubAdminsGroups\"\n\t\t\t\t\t@option:deselected=\"removeUserSubAdmin\"\n\t\t\t\t\t@option:selected=\"options => addUserSubAdmin(options.at(-1))\" />\n\t\t\t</template>\n\t\t\t<span v-else-if=\"!isObfuscated\"\n\t\t\t\t:title=\"userSubAdminsGroupsLabels?.length > 40 ? userSubAdminsGroupsLabels : null\">\n\t\t\t\t{{ userSubAdminsGroupsLabels }}\n\t\t\t</span>\n\t\t</td>\n\n\t\t<td class=\"row__cell\" data-cy-user-list-cell-quota>\n\t\t\t<template v-if=\"editing\">\n\t\t\t\t<label class=\"hidden-visually\"\n\t\t\t\t\t:for=\"'quota' + uniqueId\">\n\t\t\t\t\t{{ t('settings', 'Select user quota') }}\n\t\t\t\t</label>\n\t\t\t\t<NcSelect v-model=\"editedUserQuota\"\n\t\t\t\t\t:close-on-select=\"true\"\n\t\t\t\t\t:create-option=\"validateQuota\"\n\t\t\t\t\tdata-cy-user-list-input-quota\n\t\t\t\t\t:data-loading=\"loading.quota || undefined\"\n\t\t\t\t\t:disabled=\"isLoadingField\"\n\t\t\t\t\t:loading=\"loading.quota\"\n\t\t\t\t\t:append-to-body=\"false\"\n\t\t\t\t\t:clearable=\"false\"\n\t\t\t\t\t:input-id=\"'quota' + uniqueId\"\n\t\t\t\t\t:options=\"quotaOptions\"\n\t\t\t\t\t:placeholder=\"t('settings', 'Select user quota')\"\n\t\t\t\t\t:taggable=\"true\"\n\t\t\t\t\t@option:selected=\"setUserQuota\" />\n\t\t\t</template>\n\t\t\t<template v-else-if=\"!isObfuscated\">\n\t\t\t\t<span :id=\"'quota-progress' + uniqueId\">{{ userQuota }} ({{ usedSpace }})</span>\n\t\t\t\t<NcProgressBar :aria-labelledby=\"'quota-progress' + uniqueId\"\n\t\t\t\t\tclass=\"row__progress\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t'row__progress--warn': usedQuota > 80,\n\t\t\t\t\t}\"\n\t\t\t\t\t:value=\"usedQuota\" />\n\t\t\t</template>\n\t\t</td>\n\n\t\t<td v-if=\"showConfig.showLanguages\"\n\t\t\tclass=\"row__cell row__cell--large\"\n\t\t\tdata-cy-user-list-cell-language>\n\t\t\t<template v-if=\"editing\">\n\t\t\t\t<label class=\"hidden-visually\"\n\t\t\t\t\t:for=\"'language' + uniqueId\">\n\t\t\t\t\t{{ t('settings', 'Set the language') }}\n\t\t\t\t</label>\n\t\t\t\t<NcSelect :id=\"'language' + uniqueId\"\n\t\t\t\t\tdata-cy-user-list-input-language\n\t\t\t\t\t:data-loading=\"loading.languages || undefined\"\n\t\t\t\t\t:allow-empty=\"false\"\n\t\t\t\t\t:disabled=\"isLoadingField\"\n\t\t\t\t\t:loading=\"loading.languages\"\n\t\t\t\t\t:clearable=\"false\"\n\t\t\t\t\t:append-to-body=\"false\"\n\t\t\t\t\t:options=\"availableLanguages\"\n\t\t\t\t\t:placeholder=\"t('settings', 'No language set')\"\n\t\t\t\t\t:value=\"userLanguage\"\n\t\t\t\t\tlabel=\"name\"\n\t\t\t\t\t@input=\"setUserLanguage\" />\n\t\t\t</template>\n\t\t\t<span v-else-if=\"!isObfuscated\">\n\t\t\t\t{{ userLanguage.name }}\n\t\t\t</span>\n\t\t</td>\n\n\t\t<td v-if=\"showConfig.showUserBackend || showConfig.showStoragePath\"\n\t\t\tdata-cy-user-list-cell-storage-location\n\t\t\tclass=\"row__cell row__cell--large\">\n\t\t\t<template v-if=\"!isObfuscated\">\n\t\t\t\t<span v-if=\"showConfig.showUserBackend\">{{ user.backend }}</span>\n\t\t\t\t<span v-if=\"showConfig.showStoragePath\"\n\t\t\t\t\t:title=\"user.storageLocation\"\n\t\t\t\t\tclass=\"row__subtitle\">\n\t\t\t\t\t{{ user.storageLocation }}\n\t\t\t\t</span>\n\t\t\t</template>\n\t\t</td>\n\n\t\t<td v-if=\"showConfig.showLastLogin\"\n\t\t\t:title=\"userLastLoginTooltip\"\n\t\t\tclass=\"row__cell\"\n\t\t\tdata-cy-user-list-cell-last-login>\n\t\t\t<span v-if=\"!isObfuscated\">{{ userLastLogin }}</span>\n\t\t</td>\n\n\t\t<td class=\"row__cell row__cell--large row__cell--fill\" data-cy-user-list-cell-manager>\n\t\t\t<template v-if=\"editing\">\n\t\t\t\t<label class=\"hidden-visually\"\n\t\t\t\t\t:for=\"'manager' + uniqueId\">\n\t\t\t\t\t{{ managerLabel }}\n\t\t\t\t</label>\n\t\t\t\t<NcSelect v-model=\"currentManager\"\n\t\t\t\t\tclass=\"select--fill\"\n\t\t\t\t\tdata-cy-user-list-input-manager\n\t\t\t\t\t:data-loading=\"loading.manager || undefined\"\n\t\t\t\t\t:input-id=\"'manager' + uniqueId\"\n\t\t\t\t\t:close-on-select=\"true\"\n\t\t\t\t\t:disabled=\"isLoadingField\"\n\t\t\t\t\t:append-to-body=\"false\"\n\t\t\t\t\t:loading=\"loadingPossibleManagers || loading.manager\"\n\t\t\t\t\tlabel=\"displayname\"\n\t\t\t\t\t:options=\"possibleManagers\"\n\t\t\t\t\t:placeholder=\"managerLabel\"\n\t\t\t\t\t@open=\"searchInitialUserManager\"\n\t\t\t\t\t@search=\"searchUserManager\"\n\t\t\t\t\t@option:selected=\"updateUserManager\"\n\t\t\t\t\t@input=\"updateUserManager\" />\n\t\t\t</template>\n\t\t\t<span v-else-if=\"!isObfuscated\">\n\t\t\t\t{{ user.manager }}\n\t\t\t</span>\n\t\t</td>\n\n\t\t<td class=\"row__cell row__cell--actions\" data-cy-user-list-cell-actions>\n\t\t\t<UserRowActions v-if=\"visible && !isObfuscated && canEdit && !loading.all\"\n\t\t\t\t:actions=\"userActions\"\n\t\t\t\t:disabled=\"isLoadingField\"\n\t\t\t\t:edit=\"editing\"\n\t\t\t\t@update:edit=\"toggleEdit\" />\n\t\t</td>\n\t</tr>\n</template>\n\n<script>\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { showSuccess, showError } from '@nextcloud/dialogs'\n\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport NcLoadingIcon from '@nextcloud/vue/dist/Components/NcLoadingIcon.js'\nimport NcProgressBar from '@nextcloud/vue/dist/Components/NcProgressBar.js'\nimport NcSelect from '@nextcloud/vue/dist/Components/NcSelect.js'\nimport NcTextField from '@nextcloud/vue/dist/Components/NcTextField.js'\n\nimport UserRowActions from './UserRowActions.vue'\n\nimport UserRowMixin from '../../mixins/UserRowMixin.js'\nimport { isObfuscated, unlimitedQuota } from '../../utils/userUtils.ts'\n\nexport default {\n\tname: 'UserRow',\n\n\tcomponents: {\n\t\tNcAvatar,\n\t\tNcLoadingIcon,\n\t\tNcProgressBar,\n\t\tNcSelect,\n\t\tNcTextField,\n\t\tUserRowActions,\n\t},\n\n\tmixins: [\n\t\tUserRowMixin,\n\t],\n\n\tprops: {\n\t\tuser: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tvisible: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\tusers: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\thasObfuscated: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\tgroups: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\t\tsubAdminsGroups: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\tquotaOptions: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\tlanguages: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\t\tsettings: {\n\t\t\ttype: Object,\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\n\tdata() {\n\t\treturn {\n\t\t\tselectedQuota: false,\n\t\t\trand: Math.random().toString(36).substring(2),\n\t\t\tloadingPossibleManagers: false,\n\t\t\tpossibleManagers: [],\n\t\t\tcurrentManager: '',\n\t\t\tediting: false,\n\t\t\tloading: {\n\t\t\t\tall: false,\n\t\t\t\tdisplayName: false,\n\t\t\t\tpassword: false,\n\t\t\t\tmailAddress: false,\n\t\t\t\tgroups: false,\n\t\t\t\tsubadmins: false,\n\t\t\t\tquota: false,\n\t\t\t\tdelete: false,\n\t\t\t\tdisable: false,\n\t\t\t\tlanguages: false,\n\t\t\t\twipe: false,\n\t\t\t\tmanager: false,\n\t\t\t},\n\t\t\teditedDisplayName: this.user.displayname,\n\t\t\teditedPassword: '',\n\t\t\teditedMail: this.user.email ?? '',\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tmanagerLabel() {\n\t\t\t// TRANSLATORS This string describes a manager in the context of an organization\n\t\t\treturn t('settings', 'Set user manager')\n\t\t},\n\n\t\tisObfuscated() {\n\t\t\treturn isObfuscated(this.user)\n\t\t},\n\n\t\tshowConfig() {\n\t\t\treturn this.$store.getters.getShowConfig\n\t\t},\n\n\t\tisLoadingUser() {\n\t\t\treturn this.loading.delete || this.loading.disable || this.loading.wipe\n\t\t},\n\n\t\tisLoadingField() {\n\t\t\treturn this.loading.delete || this.loading.disable || this.loading.all\n\t\t},\n\n\t\tuniqueId() {\n\t\t\treturn encodeURIComponent(this.user.id + this.rand)\n\t\t},\n\n\t\tuserGroupsLabels() {\n\t\t\treturn this.userGroups\n\t\t\t\t.map(group => group.name)\n\t\t\t\t.join(', ')\n\t\t},\n\n\t\tuserSubAdminsGroupsLabels() {\n\t\t\treturn this.userSubAdminsGroups\n\t\t\t\t.map(group => group.name)\n\t\t\t\t.join(', ')\n\t\t},\n\n\t\tusedSpace() {\n\t\t\tif (this.user.quota?.used) {\n\t\t\t\treturn t('settings', '{size} used', { size: OC.Util.humanFileSize(this.user.quota?.used) })\n\t\t\t}\n\t\t\treturn t('settings', '{size} used', { size: OC.Util.humanFileSize(0) })\n\t\t},\n\n\t\tcanEdit() {\n\t\t\treturn getCurrentUser().uid !== this.user.id || this.settings.isAdmin\n\t\t},\n\n\t\tuserQuota() {\n\t\t\tlet quota = this.user.quota?.quota\n\n\t\t\tif (quota === 'default') {\n\t\t\t\tquota = this.settings.defaultQuota\n\t\t\t\tif (quota !== 'none') {\n\t\t\t\t\t// convert to numeric value to match what the server would usually return\n\t\t\t\t\tquota = OC.Util.computerFileSize(quota)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// when the default quota is unlimited, the server returns -3 here, map it to \"none\"\n\t\t\tif (quota === 'none' || quota === -3) {\n\t\t\t\treturn t('settings', 'Unlimited')\n\t\t\t} else if (quota >= 0) {\n\t\t\t\treturn OC.Util.humanFileSize(quota)\n\t\t\t}\n\t\t\treturn OC.Util.humanFileSize(0)\n\t\t},\n\n\t\tuserActions() {\n\t\t\tconst actions = [\n\t\t\t\t{\n\t\t\t\t\ticon: 'icon-delete',\n\t\t\t\t\ttext: t('settings', 'Delete user'),\n\t\t\t\t\taction: this.deleteUser,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ticon: 'icon-delete',\n\t\t\t\t\ttext: t('settings', 'Wipe all devices'),\n\t\t\t\t\taction: this.wipeUserDevices,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ticon: this.user.enabled ? 'icon-close' : 'icon-add',\n\t\t\t\t\ttext: this.user.enabled ? t('settings', 'Disable user') : t('settings', 'Enable user'),\n\t\t\t\t\taction: this.enableDisableUser,\n\t\t\t\t},\n\t\t\t]\n\t\t\tif (this.user.email !== null && this.user.email !== '') {\n\t\t\t\tactions.push({\n\t\t\t\t\ticon: 'icon-mail',\n\t\t\t\t\ttext: t('settings', 'Resend welcome email'),\n\t\t\t\t\taction: this.sendWelcomeMail,\n\t\t\t\t})\n\t\t\t}\n\t\t\treturn actions.concat(this.externalActions)\n\t\t},\n\n\t\t// mapping saved values to objects\n\t\teditedUserQuota: {\n\t\t\tget() {\n\t\t\t\tif (this.selectedQuota !== false) {\n\t\t\t\t\treturn this.selectedQuota\n\t\t\t\t}\n\t\t\t\tif (this.settings.defaultQuota !== unlimitedQuota.id && OC.Util.computerFileSize(this.settings.defaultQuota) >= 0) {\n\t\t\t\t\t// if value is valid, let's map the quotaOptions or return custom quota\n\t\t\t\t\treturn { id: this.settings.defaultQuota, label: this.settings.defaultQuota }\n\t\t\t\t}\n\t\t\t\treturn unlimitedQuota // unlimited\n\t\t\t},\n\t\t\tset(quota) {\n\t\t\t\tthis.selectedQuota = quota\n\t\t\t},\n\t\t},\n\n\t\tavailableLanguages() {\n\t\t\treturn this.languages[0].languages.concat(this.languages[1].languages)\n\t\t},\n\t},\n\n\tasync beforeMount() {\n\t\tif (this.user.manager) {\n\t\t\tawait this.initManager(this.user.manager)\n\t\t}\n\t},\n\n\tmethods: {\n\t\twipeUserDevices() {\n\t\t\tconst userid = this.user.id\n\t\t\tOC.dialogs.confirmDestructive(\n\t\t\t\tt('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 }),\n\t\t\t\tt('settings', 'Remote wipe of devices'),\n\t\t\t\t{\n\t\t\t\t\ttype: OC.dialogs.YES_NO_BUTTONS,\n\t\t\t\t\tconfirm: t('settings', 'Wipe {userid}\\'s devices', { userid }),\n\t\t\t\t\tconfirmClasses: 'error',\n\t\t\t\t\tcancel: t('settings', 'Cancel'),\n\t\t\t\t},\n\t\t\t\t(result) => {\n\t\t\t\t\tif (result) {\n\t\t\t\t\t\tthis.loading.wipe = true\n\t\t\t\t\t\tthis.loading.all = true\n\t\t\t\t\t\tthis.$store.dispatch('wipeUserDevices', userid)\n\t\t\t\t\t\t\t.then(() => showSuccess(t('settings', 'Wiped {userid}\\'s devices', { userid })), { timeout: 2000 })\n\t\t\t\t\t\t\t.finally(() => {\n\t\t\t\t\t\t\t\tthis.loading.wipe = false\n\t\t\t\t\t\t\t\tthis.loading.all = false\n\t\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\ttrue,\n\t\t\t)\n\t\t},\n\n\t\tfilterManagers(managers) {\n\t\t\treturn managers.filter((manager) => manager.id !== this.user.id)\n\t\t},\n\n\t\tasync initManager(userId) {\n\t\t\tawait this.$store.dispatch('getUser', userId).then(response => {\n\t\t\t\tthis.currentManager = response?.data.ocs.data\n\t\t\t})\n\t\t},\n\n\t\tasync searchInitialUserManager() {\n\t\t\tthis.loadingPossibleManagers = true\n\t\t\tawait this.searchUserManager()\n\t\t\tthis.loadingPossibleManagers = false\n\t\t},\n\n\t\tasync searchUserManager(query) {\n\t\t\tawait this.$store.dispatch('searchUsers', { offset: 0, limit: 10, search: query }).then(response => {\n\t\t\t\tconst users = response?.data ? this.filterManagers(Object.values(response?.data.ocs.data.users)) : []\n\t\t\t\tif (users.length > 0) {\n\t\t\t\t\tthis.possibleManagers = users\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\n\t\tasync updateUserManager(manager) {\n\t\t\tif (manager === null) {\n\t\t\t\tthis.currentManager = ''\n\t\t\t}\n\t\t\tthis.loading.manager = true\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('setUserData', {\n\t\t\t\t\tuserid: this.user.id,\n\t\t\t\t\tkey: 'manager',\n\t\t\t\t\tvalue: this.currentManager ? this.currentManager.id : '',\n\t\t\t\t})\n\t\t\t} catch (error) {\n\t\t\t\t// TRANSLATORS This string describes a manager in the context of an organization\n\t\t\t\tshowError(t('setting', 'Failed to update user manager'))\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loading.manager = false\n\t\t\t}\n\t\t},\n\n\t\tdeleteUser() {\n\t\t\tconst userid = this.user.id\n\t\t\tOC.dialogs.confirmDestructive(\n\t\t\t\tt('settings', 'Fully delete {userid}\\'s account including all their personal files, app data, etc.', { userid }),\n\t\t\t\tt('settings', 'Account deletion'),\n\t\t\t\t{\n\t\t\t\t\ttype: OC.dialogs.YES_NO_BUTTONS,\n\t\t\t\t\tconfirm: t('settings', 'Delete {userid}\\'s account', { userid }),\n\t\t\t\t\tconfirmClasses: 'error',\n\t\t\t\t\tcancel: t('settings', 'Cancel'),\n\t\t\t\t},\n\t\t\t\t(result) => {\n\t\t\t\t\tif (result) {\n\t\t\t\t\t\tthis.loading.delete = true\n\t\t\t\t\t\tthis.loading.all = true\n\t\t\t\t\t\treturn this.$store.dispatch('deleteUser', userid)\n\t\t\t\t\t\t\t.then(() => {\n\t\t\t\t\t\t\t\tthis.loading.delete = false\n\t\t\t\t\t\t\t\tthis.loading.all = false\n\t\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\ttrue,\n\t\t\t)\n\t\t},\n\n\t\tenableDisableUser() {\n\t\t\tthis.loading.delete = true\n\t\t\tthis.loading.all = true\n\t\t\tconst userid = this.user.id\n\t\t\tconst enabled = !this.user.enabled\n\t\t\treturn this.$store.dispatch('enableDisableUser', {\n\t\t\t\tuserid,\n\t\t\t\tenabled,\n\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\tthis.loading.delete = false\n\t\t\t\t\tthis.loading.all = false\n\t\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Set user displayName\n\t\t *\n\t\t * @param {string} displayName The display name\n\t\t */\n\t\tupdateDisplayName() {\n\t\t\tthis.loading.displayName = true\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'displayname',\n\t\t\t\tvalue: this.editedDisplayName,\n\t\t\t}).then(() => {\n\t\t\t\tthis.loading.displayName = false\n\t\t\t\tif (this.editedDisplayName === this.user.displayname) {\n\t\t\t\t\tshowSuccess(t('setting', 'Display name was successfully changed'))\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Set user password\n\t\t *\n\t\t * @param {string} password The email address\n\t\t */\n\t\tupdatePassword() {\n\t\t\tthis.loading.password = true\n\t\t\tif (this.editedPassword.length === 0) {\n\t\t\t\tshowError(t('setting', \"Password can't be empty\"))\n\t\t\t\tthis.loading.password = false\n\t\t\t} else {\n\t\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\t\tuserid: this.user.id,\n\t\t\t\t\tkey: 'password',\n\t\t\t\t\tvalue: this.editedPassword,\n\t\t\t\t}).then(() => {\n\t\t\t\t\tthis.loading.password = false\n\t\t\t\t\tthis.editedPassword = ''\n\t\t\t\t\tshowSuccess(t('setting', 'Password was successfully changed'))\n\t\t\t\t})\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Set user mailAddress\n\t\t *\n\t\t * @param {string} mailAddress The email address\n\t\t */\n\t\tupdateEmail() {\n\t\t\tthis.loading.mailAddress = true\n\t\t\tif (this.editedMail === '') {\n\t\t\t\tshowError(t('setting', \"Email can't be empty\"))\n\t\t\t\tthis.loading.mailAddress = false\n\t\t\t\tthis.editedMail = this.user.email\n\t\t\t} else {\n\t\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\t\tuserid: this.user.id,\n\t\t\t\t\tkey: 'email',\n\t\t\t\t\tvalue: this.editedMail,\n\t\t\t\t}).then(() => {\n\t\t\t\t\tthis.loading.mailAddress = false\n\t\t\t\t\tif (this.editedMail === this.user.email) {\n\t\t\t\t\t\tshowSuccess(t('setting', 'Email was successfully changed'))\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Create a new group and add user to it\n\t\t *\n\t\t * @param {string} gid Group id\n\t\t */\n\t\tasync createGroup({ name: gid }) {\n\t\t\tthis.loading = { groups: true, subadmins: true }\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('addGroup', gid)\n\t\t\t\tconst userid = this.user.id\n\t\t\t\tawait this.$store.dispatch('addUserGroup', { userid, gid })\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loading = { groups: false, subadmins: false }\n\t\t\t}\n\t\t\treturn this.$store.getters.getGroups[this.groups.length]\n\t\t},\n\n\t\t/**\n\t\t * Add user to group\n\t\t *\n\t\t * @param {object} group Group object\n\t\t */\n\t\tasync addUserGroup(group) {\n\t\t\tif (group.isCreating) {\n\t\t\t\t// This is NcSelect's internal value for a new inputted group name\n\t\t\t\t// Ignore\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.loading.groups = true\n\t\t\tconst userid = this.user.id\n\t\t\tconst gid = group.id\n\t\t\tif (group.canAdd === false) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('addUserGroup', { userid, gid })\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loading.groups = false\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Remove user from group\n\t\t *\n\t\t * @param {object} group Group object\n\t\t */\n\t\tasync removeUserGroup(group) {\n\t\t\tif (group.canRemove === false) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\tthis.loading.groups = true\n\t\t\tconst userid = this.user.id\n\t\t\tconst gid = group.id\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('removeUserGroup', {\n\t\t\t\t\tuserid,\n\t\t\t\t\tgid,\n\t\t\t\t})\n\t\t\t\tthis.loading.groups = false\n\t\t\t\t// remove user from current list if current list is the removed group\n\t\t\t\tif (this.$route.params.selectedGroup === gid) {\n\t\t\t\t\tthis.$store.commit('deleteUser', userid)\n\t\t\t\t}\n\t\t\t} catch {\n\t\t\t\tthis.loading.groups = false\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Add user to group\n\t\t *\n\t\t * @param {object} group Group object\n\t\t */\n\t\tasync addUserSubAdmin(group) {\n\t\t\tthis.loading.subadmins = true\n\t\t\tconst userid = this.user.id\n\t\t\tconst gid = group.id\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('addUserSubAdmin', {\n\t\t\t\t\tuserid,\n\t\t\t\t\tgid,\n\t\t\t\t})\n\t\t\t\tthis.loading.subadmins = false\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(error)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Remove user from group\n\t\t *\n\t\t * @param {object} group Group object\n\t\t */\n\t\tasync removeUserSubAdmin(group) {\n\t\t\tthis.loading.subadmins = true\n\t\t\tconst userid = this.user.id\n\t\t\tconst gid = group.id\n\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('removeUserSubAdmin', {\n\t\t\t\t\tuserid,\n\t\t\t\t\tgid,\n\t\t\t\t})\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loading.subadmins = false\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Dispatch quota set request\n\t\t *\n\t\t * @param {string | object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}\n\t\t * @return {string}\n\t\t */\n\t\tasync setUserQuota(quota = 'none') {\n\t\t\t// Make sure correct label is set for unlimited quota\n\t\t\tif (quota === 'none') {\n\t\t\t\tquota = unlimitedQuota\n\t\t\t}\n\t\t\tthis.loading.quota = true\n\t\t\t// ensure we only send the preset id\n\t\t\tquota = quota.id ? quota.id : quota\n\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('setUserData', {\n\t\t\t\t\tuserid: this.user.id,\n\t\t\t\t\tkey: 'quota',\n\t\t\t\t\tvalue: quota,\n\t\t\t\t})\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loading.quota = false\n\t\t\t}\n\t\t\treturn quota\n\t\t},\n\n\t\t/**\n\t\t * Validate quota string to make sure it's a valid human file size\n\t\t *\n\t\t * @param {string | object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}\n\t\t * @return {object} The validated quota object or unlimited quota if input is invalid\n\t\t */\n\t\tvalidateQuota(quota) {\n\t\t\tif (typeof quota === 'object') {\n\t\t\t\tquota = quota?.id || quota.label\n\t\t\t}\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tconst validQuota = OC.Util.computerFileSize(quota)\n\t\t\tif (validQuota === null) {\n\t\t\t\treturn unlimitedQuota\n\t\t\t} else {\n\t\t\t\t// unify format output\n\t\t\t\tquota = OC.Util.humanFileSize(OC.Util.computerFileSize(quota))\n\t\t\t\treturn { id: quota, label: quota }\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Dispatch language set request\n\t\t *\n\t\t * @param {object} lang language object {code:'en', name:'English'}\n\t\t * @return {object}\n\t\t */\n\t\tasync setUserLanguage(lang) {\n\t\t\tthis.loading.languages = true\n\t\t\t// ensure we only send the preset id\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('setUserData', {\n\t\t\t\t\tuserid: this.user.id,\n\t\t\t\t\tkey: 'language',\n\t\t\t\t\tvalue: lang.code,\n\t\t\t\t})\n\t\t\t\tthis.loading.languages = false\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(error)\n\t\t\t}\n\t\t\treturn lang\n\t\t},\n\n\t\t/**\n\t\t * Dispatch new welcome mail request\n\t\t */\n\t\tsendWelcomeMail() {\n\t\t\tthis.loading.all = true\n\t\t\tthis.$store.dispatch('sendWelcomeMail', this.user.id)\n\t\t\t\t.then(() => showSuccess(t('setting', 'Welcome mail sent!'), { timeout: 2000 }))\n\t\t\t\t.finally(() => {\n\t\t\t\t\tthis.loading.all = false\n\t\t\t\t})\n\t\t},\n\n\t\tasync toggleEdit() {\n\t\t\tthis.editing = !this.editing\n\t\t\tif (this.editing) {\n\t\t\t\tawait this.$nextTick()\n\t\t\t\tthis.$refs.displayNameField?.$refs?.inputField?.$refs?.input?.focus()\n\t\t\t}\n\t\t\tif (this.editedDisplayName !== this.user.displayname) {\n\t\t\t\tthis.editedDisplayName = this.user.displayname\n\t\t\t} else if (this.editedMail !== this.user.email) {\n\t\t\t\tthis.editedMail = this.user.email ?? ''\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import './shared/styles.scss';\n\n.user-list__row {\n\t@include 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 cell;\n\n\t&__cell {\n\t\tborder-bottom: 1px solid var(--color-border);\n\n\t\t:deep {\n\t\t\t.input-field,\n\t\t\t.input-field__main-wrapper,\n\t\t\t.input-field__input {\n\t\t\t\theight: 48px !important;\n\t\t\t}\n\n\t\t\t.input-field__input {\n\t\t\t\t&:placeholder-shown:not(:focus) + .input-field__label {\n\t\t\t\t\tinset-block-start: 16px !important;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.button-vue--icon-only {\n\t\t\t\theight: 44px !important;\n\t\t\t}\n\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</style>\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=35c0ba98&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserRow.vue?vue&type=style&index=0&id=35c0ba98&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=35c0ba98&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=35c0ba98&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 \"35c0ba98\",\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 user …'),\"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\\t\"+_vm._s(_vm.user.displayname)+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('span',{staticClass:\"row__subtitle\"},[_vm._v(_vm._s(_vm.user.id))])]],2),_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 user'))+\"\\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 user 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,\"loading\":_vm.loading.groups,\"multiple\":true,\"append-to-body\":false,\"options\":_vm.availableGroups,\"placeholder\":_vm.t('settings', 'Add user to group'),\"taggable\":_vm.settings.isAdmin,\"value\":_vm.userGroups,\"label\":\"name\",\"no-wrap\":true,\"create-option\":(value) => ({ name: value, isCreating: true })},on:{\"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.subAdminsGroups.length > 0 && _vm.settings.isAdmin)?_c('td',{staticClass:\"row__cell row__cell--large row__cell--multiline\",attrs:{\"data-cy-user-list-cell-subadmins\":\"\"}},[(_vm.editing && _vm.settings.isAdmin && _vm.subAdminsGroups.length > 0)?[_c('label',{staticClass:\"hidden-visually\",attrs:{\"for\":'subadmins' + _vm.uniqueId}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('settings', 'Set user 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,\"loading\":_vm.loading.subadmins,\"label\":\"name\",\"append-to-body\":false,\"multiple\":true,\"no-wrap\":true,\"options\":_vm.subAdminsGroups,\"placeholder\":_vm.t('settings', 'Set user as admin for'),\"value\":_vm.userSubAdminsGroups},on:{\"option:deselected\":_vm.removeUserSubAdmin,\"option:selected\":options => _vm.addUserSubAdmin(options.at(-1))}})]:(!_vm.isObfuscated)?_c('span',{attrs:{\"title\":_vm.userSubAdminsGroupsLabels?.length > 40 ? _vm.userSubAdminsGroupsLabels : null}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.userSubAdminsGroupsLabels)+\"\\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 user 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 user 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.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,\"close-on-select\":true,\"disabled\":_vm.isLoadingField,\"append-to-body\":false,\"loading\":_vm.loadingPossibleManagers || _vm.loading.manager,\"label\":\"displayname\",\"options\":_vm.possibleManagers,\"placeholder\":_vm.managerLabel},on:{\"open\":_vm.searchInitialUserManager,\"search\":_vm.searchUserManager,\"option:selected\":_vm.updateUserManager,\"input\":_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},on:{\"update:edit\":_vm.toggleEdit}}):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<Fragment>\n\t\t<NewUserModal v-if=\"showConfig.showNewUserForm\"\n\t\t\t:loading=\"loading\"\n\t\t\t:new-user=\"newUser\"\n\t\t\t:quota-options=\"quotaOptions\"\n\t\t\t@reset=\"resetForm\"\n\t\t\t@close=\"closeModal\" />\n\n\t\t<NcEmptyContent v-if=\"filteredUsers.length === 0\"\n\t\t\tclass=\"empty\"\n\t\t\t:name=\"isInitialLoad && loading.users ? null : t('settings', 'No users')\">\n\t\t\t<template #icon>\n\t\t\t\t<NcLoadingIcon v-if=\"isInitialLoad && loading.users\"\n\t\t\t\t\t:name=\"t('settings', 'Loading users …')\"\n\t\t\t\t\t:size=\"64\" />\n\t\t\t\t<NcIconSvgWrapper v-else\n\t\t\t\t\t:svg=\"usersSvg\" />\n\t\t\t</template>\n\t\t</NcEmptyContent>\n\n\t\t<VirtualList v-else\n\t\t\t:data-component=\"UserRow\"\n\t\t\t:data-sources=\"filteredUsers\"\n\t\t\tdata-key=\"id\"\n\t\t\tdata-cy-user-list\n\t\t\t:item-height=\"rowHeight\"\n\t\t\t:style=\"style\"\n\t\t\t:extra-props=\"{\n\t\t\t\tusers,\n\t\t\t\tsettings,\n\t\t\t\thasObfuscated,\n\t\t\t\tgroups,\n\t\t\t\tsubAdminsGroups,\n\t\t\t\tquotaOptions,\n\t\t\t\tlanguages,\n\t\t\t\texternalActions,\n\t\t\t}\"\n\t\t\t@scroll-end=\"handleScrollEnd\">\n\t\t\t<template #before>\n\t\t\t\t<caption class=\"hidden-visually\">\n\t\t\t\t\t{{ t('settings', 'List of users. This list is not fully rendered for performance reasons. The users will be rendered as you navigate through the list.') }}\n\t\t\t\t</caption>\n\t\t\t</template>\n\n\t\t\t<template #header>\n\t\t\t\t<UserListHeader :has-obfuscated=\"hasObfuscated\" />\n\t\t\t</template>\n\n\t\t\t<template #footer>\n\t\t\t\t<UserListFooter :loading=\"loading.users\"\n\t\t\t\t\t:filtered-users=\"filteredUsers\" />\n\t\t\t</template>\n\t\t</VirtualList>\n\t</Fragment>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { Fragment } from 'vue-frag'\n\nimport NcEmptyContent from '@nextcloud/vue/dist/Components/NcEmptyContent.js'\nimport NcIconSvgWrapper from '@nextcloud/vue/dist/Components/NcIconSvgWrapper.js'\nimport NcLoadingIcon from '@nextcloud/vue/dist/Components/NcLoadingIcon.js'\n\nimport { subscribe, unsubscribe } from '@nextcloud/event-bus'\nimport { showError } from '@nextcloud/dialogs'\n\nimport VirtualList from './Users/VirtualList.vue'\nimport NewUserModal from './Users/NewUserModal.vue'\nimport UserListFooter from './Users/UserListFooter.vue'\nimport UserListHeader from './Users/UserListHeader.vue'\nimport UserRow from './Users/UserRow.vue'\n\nimport { defaultQuota, isObfuscated, unlimitedQuota } from '../utils/userUtils.ts'\nimport logger from '../logger.js'\n\nimport usersSvg from '../../img/users.svg?raw'\n\nconst newUser = {\n\tid: '',\n\tdisplayName: '',\n\tpassword: '',\n\tmailAddress: '',\n\tgroups: [],\n\tmanager: '',\n\tsubAdminsGroups: [],\n\tquota: defaultQuota,\n\tlanguage: {\n\t\tcode: 'en',\n\t\tname: t('settings', 'Default language'),\n\t},\n}\n\nexport default {\n\tname: 'UserList',\n\n\tcomponents: {\n\t\tFragment,\n\t\tNcEmptyContent,\n\t\tNcIconSvgWrapper,\n\t\tNcLoadingIcon,\n\t\tNewUserModal,\n\t\tUserListFooter,\n\t\tUserListHeader,\n\t\tVirtualList,\n\t},\n\n\tprops: {\n\t\tselectedGroup: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\texternalActions: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tUserRow,\n\t\t\tloading: {\n\t\t\t\tall: false,\n\t\t\t\tgroups: false,\n\t\t\t\tusers: false,\n\t\t\t},\n\t\t\tisInitialLoad: true,\n\t\t\trowHeight: 55,\n\t\t\tusersSvg,\n\t\t\tsearchQuery: '',\n\t\t\tnewUser: Object.assign({}, newUser),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tshowConfig() {\n\t\t\treturn this.$store.getters.getShowConfig\n\t\t},\n\n\t\tsettings() {\n\t\t\treturn this.$store.getters.getServerData\n\t\t},\n\n\t\tstyle() {\n\t\t\treturn {\n\t\t\t\t'--row-height': `${this.rowHeight}px`,\n\t\t\t}\n\t\t},\n\n\t\thasObfuscated() {\n\t\t\treturn this.filteredUsers.some(user => isObfuscated(user))\n\t\t},\n\n\t\tusers() {\n\t\t\treturn this.$store.getters.getUsers\n\t\t},\n\n\t\tfilteredUsers() {\n\t\t\tif (this.selectedGroup === 'disabled') {\n\t\t\t\treturn this.users.filter(user => user.enabled === false)\n\t\t\t}\n\t\t\tif (!this.settings.isAdmin) {\n\t\t\t\t// we don't want subadmins to edit themselves\n\t\t\t\treturn this.users.filter(user => user.enabled !== false)\n\t\t\t}\n\t\t\treturn this.users.filter(user => user.enabled !== false)\n\t\t},\n\n\t\tgroups() {\n\t\t\t// data provided php side + remove the disabled group\n\t\t\treturn this.$store.getters.getGroups\n\t\t\t\t.filter(group => group.id !== 'disabled')\n\t\t\t\t.sort((a, b) => a.name.localeCompare(b.name))\n\t\t},\n\n\t\tsubAdminsGroups() {\n\t\t\t// data provided php side\n\t\t\treturn this.$store.getters.getSubadminGroups\n\t\t},\n\n\t\tquotaOptions() {\n\t\t\t// convert the preset array into objects\n\t\t\tconst quotaPreset = this.settings.quotaPreset.reduce((acc, cur) => acc.concat({\n\t\t\t\tid: cur,\n\t\t\t\tlabel: cur,\n\t\t\t}), [])\n\t\t\t// add default presets\n\t\t\tif (this.settings.allowUnlimitedQuota) {\n\t\t\t\tquotaPreset.unshift(unlimitedQuota)\n\t\t\t}\n\t\t\tquotaPreset.unshift(defaultQuota)\n\t\t\treturn quotaPreset\n\t\t},\n\n\t\tusersOffset() {\n\t\t\treturn this.$store.getters.getUsersOffset\n\t\t},\n\n\t\tusersLimit() {\n\t\t\treturn this.$store.getters.getUsersLimit\n\t\t},\n\n\t\tusersCount() {\n\t\t\treturn this.users.length\n\t\t},\n\n\t\t/* LANGUAGES */\n\t\tlanguages() {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tlabel: t('settings', 'Common languages'),\n\t\t\t\t\tlanguages: this.settings.languages.commonLanguages,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: t('settings', 'Other languages'),\n\t\t\t\t\tlanguages: this.settings.languages.otherLanguages,\n\t\t\t\t},\n\t\t\t]\n\t\t},\n\t},\n\n\twatch: {\n\t\t// watch url change and group select\n\t\tasync selectedGroup(val, old) {\n\t\t\tthis.isInitialLoad = true\n\t\t\t// if selected is the disabled group but it's empty\n\t\t\tawait this.redirectIfDisabled()\n\t\t\tthis.$store.commit('resetUsers')\n\t\t\tawait this.loadUsers()\n\t\t\tthis.setNewUserDefaultGroup(val)\n\t\t},\n\n\t\tfilteredUsers(filteredUsers) {\n\t\t\tlogger.debug(`${filteredUsers.length} filtered user(s)`)\n\t\t},\n\t},\n\n\tasync created() {\n\t\tawait this.loadUsers()\n\t},\n\n\tasync mounted() {\n\t\tif (!this.settings.canChangePassword) {\n\t\t\tOC.Notification.showTemporary(t('settings', 'Password change is disabled because the master key is disabled'))\n\t\t}\n\n\t\t/**\n\t\t * Reset and init new user form\n\t\t */\n\t\tthis.resetForm()\n\n\t\t/**\n\t\t * Register search\n\t\t */\n\t\tsubscribe('nextcloud:unified-search.search', this.search)\n\t\tsubscribe('nextcloud:unified-search.reset', this.resetSearch)\n\n\t\t/**\n\t\t * If disabled group but empty, redirect\n\t\t */\n\t\tawait this.redirectIfDisabled()\n\t},\n\n\tbeforeDestroy() {\n\t\tunsubscribe('nextcloud:unified-search.search', this.search)\n\t\tunsubscribe('nextcloud:unified-search.reset', this.resetSearch)\n\t},\n\n\tmethods: {\n\t\tasync handleScrollEnd() {\n\t\t\tawait this.loadUsers()\n\t\t},\n\n\t\tasync loadUsers() {\n\t\t\tthis.loading.users = true\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('getUsers', {\n\t\t\t\t\toffset: this.usersOffset,\n\t\t\t\t\tlimit: this.usersLimit,\n\t\t\t\t\tgroup: this.selectedGroup !== 'disabled' ? this.selectedGroup : '',\n\t\t\t\t\tsearch: this.searchQuery,\n\t\t\t\t})\n\t\t\t\tlogger.debug(`${this.users.length} total user(s) loaded`)\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Failed to load users', { error })\n\t\t\t\tshowError('Failed to load users')\n\t\t\t}\n\t\t\tthis.loading.users = false\n\t\t\tthis.isInitialLoad = false\n\t\t},\n\n\t\tcloseModal() {\n\t\t\tthis.$store.commit('setShowConfig', {\n\t\t\t\tkey: 'showNewUserForm',\n\t\t\t\tvalue: false,\n\t\t\t})\n\t\t},\n\n\t\tasync search({ query }) {\n\t\t\tthis.searchQuery = query\n\t\t\tthis.$store.commit('resetUsers')\n\t\t\tawait this.loadUsers()\n\t\t},\n\n\t\tresetSearch() {\n\t\t\tthis.search({ query: '' })\n\t\t},\n\n\t\tresetForm() {\n\t\t\t// revert form to original state\n\t\t\tthis.newUser = Object.assign({}, newUser)\n\n\t\t\t/**\n\t\t\t * Init default language from server data. The use of this.settings\n\t\t\t * requires a computed variable, which break the v-model binding of the form,\n\t\t\t * this is a much easier solution than getter and setter on a computed var\n\t\t\t */\n\t\t\tif (this.settings.defaultLanguage) {\n\t\t\t\tVue.set(this.newUser.language, 'code', this.settings.defaultLanguage)\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * In case the user directly loaded the user list within a group\n\t\t\t * the watch won't be triggered. We need to initialize it.\n\t\t\t */\n\t\t\tthis.setNewUserDefaultGroup(this.selectedGroup)\n\n\t\t\tthis.loading.all = false\n\t\t},\n\n\t\tsetNewUserDefaultGroup(value) {\n\t\t\tif (value && value.length > 0) {\n\t\t\t\t// setting new user default group to the current selected one\n\t\t\t\tconst currentGroup = this.groups.find(group => group.id === value)\n\t\t\t\tif (currentGroup) {\n\t\t\t\t\tthis.newUser.groups = [currentGroup]\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t}\n\t\t\t// fallback, empty selected group\n\t\t\tthis.newUser.groups = []\n\t\t},\n\n\t\t/**\n\t\t * If the selected group is the disabled group but the count is 0\n\t\t * redirect to the all users page.\n\t\t * we only check for 0 because we don't have the count on ldap\n\t\t * and we therefore set the usercount to -1 in this specific case\n\t\t */\n\t\tasync redirectIfDisabled() {\n\t\t\tconst allGroups = this.$store.getters.getGroups\n\t\t\tif (this.selectedGroup === 'disabled'\n\t\t\t\t\t\t&& allGroups.findIndex(group => group.id === 'disabled' && group.usercount === 0) > -1) {\n\t\t\t\t// disabled group is empty, redirection to all users\n\t\t\t\tthis.$router.push({ name: 'users' })\n\t\t\t\tawait this.loadUsers()\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import './Users/shared/styles.scss';\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</style>\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=69659716&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=style&index=0&id=69659716&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=69659716&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=69659716&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 \"69659716\",\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('NewUserModal',{attrs:{\"loading\":_vm.loading,\"new-user\":_vm.newUser,\"quota-options\":_vm.quotaOptions},on:{\"reset\":_vm.resetForm,\"close\":_vm.closeModal}}):_vm._e(),_vm._v(\" \"),(_vm.filteredUsers.length === 0)?_c('NcEmptyContent',{staticClass:\"empty\",attrs:{\"name\":_vm.isInitialLoad && _vm.loading.users ? null : _vm.t('settings', 'No users')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.isInitialLoad && _vm.loading.users)?_c('NcLoadingIcon',{attrs:{\"name\":_vm.t('settings', 'Loading users …'),\"size\":64}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":_vm.usersSvg}})]},proxy:true}],null,false,934871631)}):_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\tgroups: _vm.groups,\n\t\t\tsubAdminsGroups: _vm.subAdminsGroups,\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 users. This list is not fully rendered for performance reasons. The users 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 }","<!--\n\t- @copyright 2023 Christopher Ng <chrng8@gmail.com>\n\t-\n\t- @author Christopher Ng <chrng8@gmail.com>\n\t-\n\t- @license AGPL-3.0-or-later\n\t-\n\t- This program is free software: you can redistribute it and/or modify\n\t- it under the terms of the GNU Affero General Public License as\n\t- published by the Free Software Foundation, either version 3 of the\n\t- License, or (at your option) any later version.\n\t-\n\t- This program is distributed in the hope that it will be useful,\n\t- but WITHOUT ANY WARRANTY; without even the implied warranty of\n\t- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\t- GNU Affero General Public License for more details.\n\t-\n\t- You should have received a copy of the GNU Affero General Public License\n\t- along with this program. If not, see <http://www.gnu.org/licenses/>.\n\t-\n-->\n\n<template>\n\t<NcAppSettingsDialog :open.sync=\"isModalOpen\"\n\t\t:show-navigation=\"true\"\n\t\t:name=\"t('settings', 'User management settings')\">\n\t\t<NcAppSettingsSection id=\"visibility-settings\"\n\t\t\t:name=\"t('settings', 'Visibility')\">\n\t\t\t<NcCheckboxRadioSwitch type=\"switch\"\n\t\t\t\tdata-test=\"showLanguages\"\n\t\t\t\t:checked.sync=\"showLanguages\">\n\t\t\t\t{{ t('settings', 'Show language') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch type=\"switch\"\n\t\t\t\tdata-test=\"showUserBackend\"\n\t\t\t\t:checked.sync=\"showUserBackend\">\n\t\t\t\t{{ t('settings', 'Show user backend') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch type=\"switch\"\n\t\t\t\tdata-test=\"showStoragePath\"\n\t\t\t\t:checked.sync=\"showStoragePath\">\n\t\t\t\t{{ t('settings', 'Show storage path') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch type=\"switch\"\n\t\t\t\tdata-test=\"showLastLogin\"\n\t\t\t\t:checked.sync=\"showLastLogin\">\n\t\t\t\t{{ t('settings', 'Show last login') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t</NcAppSettingsSection>\n\n\t\t<NcAppSettingsSection id=\"email-settings\"\n\t\t\t:name=\"t('settings', 'Send email')\">\n\t\t\t<NcCheckboxRadioSwitch type=\"switch\"\n\t\t\t\tdata-test=\"sendWelcomeMail\"\n\t\t\t\t:checked.sync=\"sendWelcomeMail\"\n\t\t\t\t:disabled=\"loadingSendMail\">\n\t\t\t\t{{ t('settings', 'Send welcome email to new users') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t</NcAppSettingsSection>\n\n\t\t<NcAppSettingsSection id=\"default-settings\"\n\t\t\t:name=\"t('settings', 'Defaults')\">\n\t\t\t<label for=\"default-quota-select\">{{ t('settings', 'Default quota') }}</label>\n\t\t\t<NcSelect v-model=\"defaultQuota\"\n\t\t\t\tinput-id=\"default-quota-select\"\n\t\t\t\tplacement=\"top\"\n\t\t\t\t:taggable=\"true\"\n\t\t\t\t:options=\"quotaOptions\"\n\t\t\t\t:create-option=\"validateQuota\"\n\t\t\t\t:placeholder=\"t('settings', 'Select default quota')\"\n\t\t\t\t:clearable=\"false\"\n\t\t\t\t@option:selected=\"setDefaultQuota\" />\n\t\t</NcAppSettingsSection>\n\t</NcAppSettingsDialog>\n</template>\n\n<script>\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\n\nimport NcAppSettingsDialog from '@nextcloud/vue/dist/Components/NcAppSettingsDialog.js'\nimport NcAppSettingsSection from '@nextcloud/vue/dist/Components/NcAppSettingsSection.js'\nimport NcCheckboxRadioSwitch from '@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js'\nimport NcSelect from '@nextcloud/vue/dist/Components/NcSelect.js'\n\nimport { unlimitedQuota } from '../../utils/userUtils.ts'\n\nexport default {\n\tname: 'UserSettingsDialog',\n\n\tcomponents: {\n\t\tNcAppSettingsDialog,\n\t\tNcAppSettingsSection,\n\t\tNcCheckboxRadioSwitch,\n\t\tNcSelect,\n\t},\n\n\tprops: {\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tselectedQuota: false,\n\t\t\tloadingSendMail: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tisModalOpen: {\n\t\t\tget() {\n\t\t\t\treturn this.open\n\t\t\t},\n\t\t\tset(open) {\n\t\t\t\tthis.$emit('update:open', open)\n\t\t\t},\n\t\t},\n\n\t\tshowConfig() {\n\t\t\treturn this.$store.getters.getShowConfig\n\t\t},\n\n\t\tsettings() {\n\t\t\treturn this.$store.getters.getServerData\n\t\t},\n\n\t\tshowLanguages: {\n\t\t\tget() {\n\t\t\t\treturn this.getLocalstorage('showLanguages')\n\t\t\t},\n\t\t\tset(status) {\n\t\t\t\tthis.setLocalStorage('showLanguages', status)\n\t\t\t},\n\t\t},\n\n\t\tshowLastLogin: {\n\t\t\tget() {\n\t\t\t\treturn this.getLocalstorage('showLastLogin')\n\t\t\t},\n\t\t\tset(status) {\n\t\t\t\tthis.setLocalStorage('showLastLogin', status)\n\t\t\t},\n\t\t},\n\n\t\tshowUserBackend: {\n\t\t\tget() {\n\t\t\t\treturn this.getLocalstorage('showUserBackend')\n\t\t\t},\n\t\t\tset(status) {\n\t\t\t\tthis.setLocalStorage('showUserBackend', status)\n\t\t\t},\n\t\t},\n\n\t\tshowStoragePath: {\n\t\t\tget() {\n\t\t\t\treturn this.getLocalstorage('showStoragePath')\n\t\t\t},\n\t\t\tset(status) {\n\t\t\t\tthis.setLocalStorage('showStoragePath', status)\n\t\t\t},\n\t\t},\n\n\t\tquotaOptions() {\n\t\t\t// convert the preset array into objects\n\t\t\tconst quotaPreset = this.settings.quotaPreset.reduce((acc, cur) => acc.concat({ id: cur, label: cur }), [])\n\t\t\t// add default presets\n\t\t\tif (this.settings.allowUnlimitedQuota) {\n\t\t\t\tquotaPreset.unshift(unlimitedQuota)\n\t\t\t}\n\t\t\treturn quotaPreset\n\t\t},\n\n\t\tdefaultQuota: {\n\t\t\tget() {\n\t\t\t\tif (this.selectedQuota !== false) {\n\t\t\t\t\treturn this.selectedQuota\n\t\t\t\t}\n\t\t\t\tif (this.settings.defaultQuota !== unlimitedQuota.id && OC.Util.computerFileSize(this.settings.defaultQuota) >= 0) {\n\t\t\t\t\t// if value is valid, let's map the quotaOptions or return custom quota\n\t\t\t\t\treturn { id: this.settings.defaultQuota, label: this.settings.defaultQuota }\n\t\t\t\t}\n\t\t\t\treturn unlimitedQuota // unlimited\n\t\t\t},\n\t\t\tset(quota) {\n\t\t\t\tthis.selectedQuota = quota\n\t\t\t},\n\t\t},\n\n\t\tsendWelcomeMail: {\n\t\t\tget() {\n\t\t\t\treturn this.settings.newUserSendEmail\n\t\t\t},\n\t\t\tasync set(value) {\n\t\t\t\ttry {\n\t\t\t\t\tthis.loadingSendMail = true\n\t\t\t\t\tthis.$store.commit('setServerData', {\n\t\t\t\t\t\t...this.settings,\n\t\t\t\t\t\tnewUserSendEmail: value,\n\t\t\t\t\t})\n\t\t\t\t\tawait axios.post(generateUrl('/settings/users/preferences/newUser.sendEmail'), { value: value ? 'yes' : 'no' })\n\t\t\t\t} catch (e) {\n\t\t\t\t\tconsole.error('could not update newUser.sendEmail preference: ' + e.message, e)\n\t\t\t\t} finally {\n\t\t\t\t\tthis.loadingSendMail = false\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\n\tmethods: {\n\t\tgetLocalstorage(key) {\n\t\t\t// force initialization\n\t\t\tconst localConfig = this.$localStorage.get(key)\n\t\t\t// if localstorage is null, fallback to original values\n\t\t\tthis.$store.commit('setShowConfig', { key, value: localConfig !== null ? localConfig === 'true' : this.showConfig[key] })\n\t\t\treturn this.showConfig[key]\n\t\t},\n\n\t\tsetLocalStorage(key, status) {\n\t\t\tthis.$store.commit('setShowConfig', { key, value: status })\n\t\t\tthis.$localStorage.set(key, status)\n\t\t\treturn status\n\t\t},\n\n\t\t/**\n\t\t * Validate quota string to make sure it's a valid human file size\n\t\t *\n\t\t * @param {string | object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}\n\t\t * @return {object} The validated quota object or unlimited quota if input is invalid\n\t\t */\n\t\tvalidateQuota(quota) {\n\t\t\tif (typeof quota === 'object') {\n\t\t\t\tquota = quota?.id || quota.label\n\t\t\t}\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tconst validQuota = OC.Util.computerFileSize(quota)\n\t\t\tif (validQuota === null) {\n\t\t\t\treturn unlimitedQuota\n\t\t\t} else {\n\t\t\t\t// unify format output\n\t\t\t\tquota = OC.Util.humanFileSize(OC.Util.computerFileSize(quota))\n\t\t\t\treturn { id: quota, label: quota }\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Dispatch default quota set request\n\t\t *\n\t\t * @param {string | object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}\n\t\t */\n\t\tsetDefaultQuota(quota = 'none') {\n\t\t\t// Make sure correct label is set for unlimited quota\n\t\t\tif (quota === 'none') {\n\t\t\t\tquota = unlimitedQuota\n\t\t\t}\n\t\t\tthis.$store.dispatch('setAppConfig', {\n\t\t\t\tapp: 'files',\n\t\t\t\tkey: 'default_quota',\n\t\t\t\t// ensure we only send the preset id\n\t\t\t\tvalue: quota.id ? quota.id : quota,\n\t\t\t}).then(() => {\n\t\t\t\tif (typeof quota !== 'object') {\n\t\t\t\t\tquota = { id: quota, label: quota }\n\t\t\t\t}\n\t\t\t\tthis.defaultQuota = quota\n\t\t\t})\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\nlabel[for=\"default-quota-select\"] {\n\tdisplay: block;\n\tpadding: 4px 0;\n}\n</style>\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=0a250c55&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserSettingsDialog.vue?vue&type=style&index=0&id=0a250c55&prod&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserSettingsDialog.vue?vue&type=template&id=0a250c55&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=0a250c55&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 \"0a250c55\",\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', 'User 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 user 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\":\"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\":\"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 users'))+\"\\n\\t\\t\")])],1),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"default-settings\",\"name\":_vm.t('settings', 'Defaults')}},[_c('label',{attrs:{\"for\":\"default-quota-select\"}},[_vm._v(_vm._s(_vm.t('settings', 'Default quota')))]),_vm._v(\" \"),_c('NcSelect',{attrs:{\"input-id\":\"default-quota-select\",\"placement\":\"top\",\"taggable\":true,\"options\":_vm.quotaOptions,\"create-option\":_vm.validateQuota,\"placeholder\":_vm.t('settings', 'Select default quota'),\"clearable\":false},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 }","<!--\n - @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<Fragment>\n\t\t<NcContent app-name=\"settings\">\n\t\t\t<NcAppNavigation>\n\t\t\t\t<NcAppNavigationNew button-id=\"new-user-button\"\n\t\t\t\t\t:text=\"t('settings','New user')\"\n\t\t\t\t\t@click=\"showNewUserMenu\"\n\t\t\t\t\t@keyup.enter=\"showNewUserMenu\"\n\t\t\t\t\t@keyup.space=\"showNewUserMenu\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcAppNavigationNew>\n\n\t\t\t\t<template #list>\n\t\t\t\t\t<NcAppNavigationItem id=\"everyone\"\n\t\t\t\t\t\t:exact=\"true\"\n\t\t\t\t\t\t:name=\"t('settings', 'Active users')\"\n\t\t\t\t\t\t:to=\"{ name: 'users' }\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<AccountGroup :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<template #counter>\n\t\t\t\t\t\t\t<NcCounterBubble v-if=\"userCount\" :type=\"!selectedGroupDecoded ? 'highlighted' : undefined\">\n\t\t\t\t\t\t\t\t{{ userCount }}\n\t\t\t\t\t\t\t</NcCounterBubble>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcAppNavigationItem>\n\n\t\t\t\t\t<NcAppNavigationItem v-if=\"settings.isAdmin\"\n\t\t\t\t\t\tid=\"admin\"\n\t\t\t\t\t\t:exact=\"true\"\n\t\t\t\t\t\t:name=\"t('settings', 'Admins')\"\n\t\t\t\t\t\t:to=\"{ name: 'group', params: { selectedGroup: 'admin' } }\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<ShieldAccount :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<template v-if=\"adminGroupMenu.count > 0\" #counter>\n\t\t\t\t\t\t\t<NcCounterBubble :type=\"selectedGroupDecoded === 'admin' ? 'highlighted' : undefined\">\n\t\t\t\t\t\t\t\t{{ adminGroupMenu.count }}\n\t\t\t\t\t\t\t</NcCounterBubble>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcAppNavigationItem>\n\n\t\t\t\t\t<!-- Hide the disabled if none, if we don't have the data (-1) show it -->\n\t\t\t\t\t<NcAppNavigationItem v-if=\"disabledGroupMenu.usercount > 0 || disabledGroupMenu.usercount === -1\"\n\t\t\t\t\t\tid=\"disabled\"\n\t\t\t\t\t\t:exact=\"true\"\n\t\t\t\t\t\t:name=\"t('settings', 'Disabled users')\"\n\t\t\t\t\t\t:to=\"{ name: 'group', params: { selectedGroup: 'disabled' } }\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<AccountOff :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<template v-if=\"disabledGroupMenu.usercount > 0\" #counter>\n\t\t\t\t\t\t\t<NcCounterBubble :type=\"selectedGroupDecoded === 'disabled' ? 'highlighted' : undefined\">\n\t\t\t\t\t\t\t\t{{ disabledGroupMenu.usercount }}\n\t\t\t\t\t\t\t</NcCounterBubble>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcAppNavigationItem>\n\n\t\t\t\t\t<NcAppNavigationCaption :name=\"t('settings', 'Groups')\"\n\t\t\t\t\t\t:disabled=\"loadingAddGroup\"\n\t\t\t\t\t\t:aria-label=\"loadingAddGroup ? t('settings', 'Creating group …') : t('settings', 'Create group')\"\n\t\t\t\t\t\tforce-menu\n\t\t\t\t\t\t:open.sync=\"isAddGroupOpen\">\n\t\t\t\t\t\t<template #actionsTriggerIcon>\n\t\t\t\t\t\t\t<NcLoadingIcon v-if=\"loadingAddGroup\" />\n\t\t\t\t\t\t\t<Plus v-else :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<template #actions>\n\t\t\t\t\t\t\t<NcActionText>\n\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t<AccountGroup :size=\"20\" />\n\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t{{ t('settings', 'Create group') }}\n\t\t\t\t\t\t\t</NcActionText>\n\t\t\t\t\t\t\t<NcActionInput :label=\"t('settings', 'Group name')\"\n\t\t\t\t\t\t\t\t:label-outside=\"false\"\n\t\t\t\t\t\t\t\t:disabled=\"loadingAddGroup\"\n\t\t\t\t\t\t\t\t:value.sync=\"newGroupName\"\n\t\t\t\t\t\t\t\t:error=\"hasAddGroupError\"\n\t\t\t\t\t\t\t\t:helper-text=\"hasAddGroupError ? t('settings', 'Please enter a valid group name') : ''\"\n\t\t\t\t\t\t\t\t@submit=\"createGroup\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcAppNavigationCaption>\n\n\t\t\t\t\t<GroupListItem v-for=\"group in groupList\"\n\t\t\t\t\t\t:id=\"group.id\"\n\t\t\t\t\t\t:key=\"group.id\"\n\t\t\t\t\t\t:active=\"selectedGroupDecoded === group.id\"\n\t\t\t\t\t\t:name=\"group.title\"\n\t\t\t\t\t\t:count=\"group.count\" />\n\t\t\t\t</template>\n\n\t\t\t\t<template #footer>\n\t\t\t\t\t<ul class=\"app-navigation-entry__settings\">\n\t\t\t\t\t\t<NcAppNavigationItem :name=\"t('settings', 'User management settings')\"\n\t\t\t\t\t\t\t@click=\"isDialogOpen = true\">\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<Cog :size=\"20\" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t</NcAppNavigationItem>\n\t\t\t\t\t</ul>\n\t\t\t\t</template>\n\t\t\t</NcAppNavigation>\n\n\t\t\t<NcAppContent>\n\t\t\t\t<UserList :selected-group=\"selectedGroupDecoded\"\n\t\t\t\t\t:external-actions=\"externalActions\" />\n\t\t\t</NcAppContent>\n\t\t</NcContent>\n\n\t\t<UserSettingsDialog :open.sync=\"isDialogOpen\" />\n\t</Fragment>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport VueLocalStorage from 'vue-localstorage'\nimport { Fragment } from 'vue-frag'\nimport { translate as t } from '@nextcloud/l10n'\nimport { showError } from '@nextcloud/dialogs'\n\nimport NcActionInput from '@nextcloud/vue/dist/Components/NcActionInput.js'\nimport NcActionText from '@nextcloud/vue/dist/Components/NcActionText.js'\nimport NcAppContent from '@nextcloud/vue/dist/Components/NcAppContent.js'\nimport NcAppNavigation from '@nextcloud/vue/dist/Components/NcAppNavigation.js'\nimport NcAppNavigationCaption from '@nextcloud/vue/dist/Components/NcAppNavigationCaption.js'\nimport NcAppNavigationItem from '@nextcloud/vue/dist/Components/NcAppNavigationItem.js'\nimport NcAppNavigationNew from '@nextcloud/vue/dist/Components/NcAppNavigationNew.js'\nimport NcContent from '@nextcloud/vue/dist/Components/NcContent.js'\nimport NcCounterBubble from '@nextcloud/vue/dist/Components/NcCounterBubble.js'\nimport NcLoadingIcon from '@nextcloud/vue/dist/Components/NcLoadingIcon.js'\n\nimport AccountGroup from 'vue-material-design-icons/AccountGroup.vue'\nimport AccountOff from 'vue-material-design-icons/AccountOff.vue'\nimport Cog from 'vue-material-design-icons/Cog.vue'\nimport Plus from 'vue-material-design-icons/Plus.vue'\nimport ShieldAccount from 'vue-material-design-icons/ShieldAccount.vue'\n\nimport GroupListItem from '../components/GroupListItem.vue'\nimport UserList from '../components/UserList.vue'\nimport UserSettingsDialog from '../components/Users/UserSettingsDialog.vue'\n\nVue.use(VueLocalStorage)\n\nexport default {\n\tname: 'Users',\n\n\tcomponents: {\n\t\tAccountGroup,\n\t\tAccountOff,\n\t\tCog,\n\t\tFragment,\n\t\tGroupListItem,\n\t\tNcActionInput,\n\t\tNcActionText,\n\t\tNcAppContent,\n\t\tNcAppNavigation,\n\t\tNcAppNavigationCaption,\n\t\tNcAppNavigationItem,\n\t\tNcAppNavigationNew,\n\t\tNcContent,\n\t\tNcCounterBubble,\n\t\tNcLoadingIcon,\n\t\tPlus,\n\t\tShieldAccount,\n\t\tUserList,\n\t\tUserSettingsDialog,\n\t},\n\n\tprops: {\n\t\tselectedGroup: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\t// temporary value used for multiselect change\n\t\t\texternalActions: [],\n\t\t\tnewGroupName: '',\n\t\t\tisAddGroupOpen: false,\n\t\t\tloadingAddGroup: false,\n\t\t\thasAddGroupError: false,\n\t\t\tisDialogOpen: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tshowConfig() {\n\t\t\treturn this.$store.getters.getShowConfig\n\t\t},\n\n\t\tselectedGroupDecoded() {\n\t\t\treturn this.selectedGroup ? decodeURIComponent(this.selectedGroup) : null\n\t\t},\n\n\t\tusers() {\n\t\t\treturn this.$store.getters.getUsers\n\t\t},\n\n\t\tgroups() {\n\t\t\treturn this.$store.getters.getGroups\n\t\t},\n\n\t\tusersOffset() {\n\t\t\treturn this.$store.getters.getUsersOffset\n\t\t},\n\n\t\tusersLimit() {\n\t\t\treturn this.$store.getters.getUsersLimit\n\t\t},\n\n\t\tuserCount() {\n\t\t\treturn this.$store.getters.getUserCount\n\t\t},\n\n\t\tsettings() {\n\t\t\treturn this.$store.getters.getServerData\n\t\t},\n\n\t\tgroupList() {\n\t\t\tconst groups = Array.isArray(this.groups) ? this.groups : []\n\n\t\t\treturn groups\n\t\t\t\t// filter out disabled and admin\n\t\t\t\t.filter(group => group.id !== 'disabled' && group.id !== 'admin')\n\t\t\t\t.map(group => this.formatGroupMenu(group))\n\t\t},\n\n\t\tadminGroupMenu() {\n\t\t\treturn this.formatGroupMenu(this.groups.find(group => group.id === 'admin'))\n\t\t},\n\n\t\tdisabledGroupMenu() {\n\t\t\treturn this.formatGroupMenu(this.groups.find(group => group.id === 'disabled'))\n\t\t},\n\t},\n\n\tbeforeMount() {\n\t\tthis.$store.commit('initGroups', {\n\t\t\tgroups: this.$store.getters.getServerData.groups,\n\t\t\torderBy: this.$store.getters.getServerData.sortGroups,\n\t\t\tuserCount: this.$store.getters.getServerData.userCount,\n\t\t})\n\t\tthis.$store.dispatch('getPasswordPolicyMinLength')\n\t},\n\n\tcreated() {\n\t\t// init the OCA.Settings.UserList object\n\t\t// and add the registerAction method\n\t\tObject.assign(OCA, {\n\t\t\tSettings: {\n\t\t\t\tUserList: {\n\t\t\t\t\tregisterAction: this.registerAction,\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t},\n\n\tmethods: {\n\t\tt,\n\n\t\tshowNewUserMenu() {\n\t\t\tthis.$store.commit('setShowConfig', {\n\t\t\t\tkey: 'showNewUserForm',\n\t\t\t\tvalue: true,\n\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Register a new action for the user menu\n\t\t *\n\t\t * @param {string} icon the icon class\n\t\t * @param {string} text the text to display\n\t\t * @param {Function} action the function to run\n\t\t * @return {Array}\n\t\t */\n\t\tregisterAction(icon, text, action) {\n\t\t\tthis.externalActions.push({\n\t\t\t\ticon,\n\t\t\t\ttext,\n\t\t\t\taction,\n\t\t\t})\n\t\t\treturn this.externalActions\n\t\t},\n\n\t\t/**\n\t\t * Create a new group\n\t\t */\n\t\tasync createGroup() {\n\t\t\tthis.hasAddGroupError = false\n\t\t\tconst groupId = this.newGroupName.trim()\n\t\t\tif (groupId === '') {\n\t\t\t\tthis.hasAddGroupError = true\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.isAddGroupOpen = false\n\t\t\tthis.loadingAddGroup = true\n\t\t\ttry {\n\t\t\t\tawait this.$store.dispatch('addGroup', groupId)\n\t\t\t\tawait this.$router.push({\n\t\t\t\t\tname: 'group',\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tselectedGroup: encodeURIComponent(groupId),\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tthis.newGroupName = ''\n\t\t\t} catch {\n\t\t\t\tshowError(t('settings', 'Failed to create group'))\n\t\t\t}\n\t\t\tthis.loadingAddGroup = false\n\t\t},\n\n\t\t/**\n\t\t * Format a group to a menu entry\n\t\t *\n\t\t * @param {object} group the group\n\t\t * @return {object}\n\t\t */\n\t\tformatGroupMenu(group) {\n\t\t\tconst item = {}\n\t\t\tif (typeof group === 'undefined') {\n\t\t\t\treturn {}\n\t\t\t}\n\n\t\t\titem.id = group.id\n\t\t\titem.title = group.name\n\t\t\titem.usercount = group.usercount\n\n\t\t\t// users count for all groups\n\t\t\tif (group.usercount - group.disabled > 0) {\n\t\t\t\titem.count = group.usercount - group.disabled\n\t\t\t}\n\n\t\t\treturn item\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.app-content {\n\t// Virtual list needs to be full height and is scrollable\n\tdisplay: flex;\n\toverflow: hidden;\n\tflex-direction: column;\n\tmax-height: 100%;\n}\n\n.app-navigation-entry__settings {\n\theight: auto !important;\n\t// Prevent shrinking or growing\n\tflex: 0 0 auto;\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Users.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!./Users.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!./Users.vue?vue&type=style&index=0&id=a0643d36&prod&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Users.vue?vue&type=style&index=0&id=a0643d36&prod&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Users.vue?vue&type=template&id=a0643d36&scoped=true&\"\nimport script from \"./Users.vue?vue&type=script&lang=js&\"\nexport * from \"./Users.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Users.vue?vue&type=style&index=0&id=a0643d36&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 \"a0643d36\",\n null\n \n)\n\nexport default component.exports","/**\n * vue-local-storage v0.6.0\n * (c) 2017 Alexander Avakov\n * @license MIT\n */\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(global.VueLocalStorage = factory());\n}(this, (function () { 'use strict';\n\nvar VueLocalStorage = function VueLocalStorage () {\n this._properties = {};\n this._namespace = '';\n this._isSupported = true;\n};\n\nvar prototypeAccessors = { namespace: {} };\n\n/**\n * Namespace getter.\n *\n * @returns {string}\n */\nprototypeAccessors.namespace.get = function () {\n return this._namespace\n};\n\n/**\n * Namespace setter.\n *\n * @param {string} value\n */\nprototypeAccessors.namespace.set = function (value) {\n this._namespace = value ? (value + \".\") : '';\n};\n\n/**\n * Concatenates localStorage key with namespace prefix.\n *\n * @param {string} lsKey\n * @returns {string}\n * @private\n */\nVueLocalStorage.prototype._getLsKey = function _getLsKey (lsKey) {\n return (\"\" + (this._namespace) + lsKey)\n};\n\n/**\n * Set a value to localStorage giving respect to the namespace.\n *\n * @param {string} lsKey\n * @param {*} rawValue\n * @param {*} type\n * @private\n */\nVueLocalStorage.prototype._lsSet = function _lsSet (lsKey, rawValue, type) {\n var key = this._getLsKey(lsKey);\n var value = type && [Array, Object].includes(type)\n ? JSON.stringify(rawValue)\n : rawValue;\n\n window.localStorage.setItem(key, value);\n};\n\n/**\n * Get value from localStorage giving respect to the namespace.\n *\n * @param {string} lsKey\n * @returns {any}\n * @private\n */\nVueLocalStorage.prototype._lsGet = function _lsGet (lsKey) {\n var key = this._getLsKey(lsKey);\n\n return window.localStorage[key]\n};\n\n/**\n * Get value from localStorage\n *\n * @param {String} lsKey\n * @param {*} defaultValue\n * @param {*} defaultType\n * @returns {*}\n */\nVueLocalStorage.prototype.get = function get (lsKey, defaultValue, defaultType) {\n var this$1 = this;\n if ( defaultValue === void 0 ) defaultValue = null;\n if ( defaultType === void 0 ) defaultType = String;\n\n if (!this._isSupported) {\n return null\n }\n\n if (this._lsGet(lsKey)) {\n var type = defaultType;\n\n for (var key in this$1._properties) {\n if (key === lsKey) {\n type = this$1._properties[key].type;\n break\n }\n }\n\n return this._process(type, this._lsGet(lsKey))\n }\n\n return defaultValue !== null ? defaultValue : null\n};\n\n/**\n * Set localStorage value\n *\n * @param {String} lsKey\n * @param {*} value\n * @returns {*}\n */\nVueLocalStorage.prototype.set = function set (lsKey, value) {\n var this$1 = this;\n\n if (!this._isSupported) {\n return null\n }\n\n for (var key in this$1._properties) {\n var type = this$1._properties[key].type;\n\n if ((key === lsKey)) {\n this$1._lsSet(lsKey, value, type);\n\n return value\n }\n }\n\n this._lsSet(lsKey, value);\n\n return value\n};\n\n/**\n * Remove value from localStorage\n *\n * @param {String} lsKey\n */\nVueLocalStorage.prototype.remove = function remove (lsKey) {\n if (!this._isSupported) {\n return null\n }\n\n return window.localStorage.removeItem(lsKey)\n};\n\n/**\n * Add new property to localStorage\n *\n * @param {String} key\n * @param {function} type\n * @param {*} defaultValue\n */\nVueLocalStorage.prototype.addProperty = function addProperty (key, type, defaultValue) {\n if ( defaultValue === void 0 ) defaultValue = undefined;\n\n type = type || String;\n\n this._properties[key] = { type: type };\n\n if (!this._lsGet(key) && defaultValue !== null) {\n this._lsSet(key, defaultValue, type);\n }\n};\n\n/**\n * Process the value before return it from localStorage\n *\n * @param {String} type\n * @param {*} value\n * @returns {*}\n * @private\n */\nVueLocalStorage.prototype._process = function _process (type, value) {\n switch (type) {\n case Boolean:\n return value === 'true'\n case Number:\n return parseFloat(value)\n case Array:\n try {\n var array = JSON.parse(value);\n\n return Array.isArray(array) ? array : []\n } catch (e) {\n return []\n }\n case Object:\n try {\n return JSON.parse(value)\n } catch (e) {\n return {}\n }\n default:\n return value\n }\n};\n\nObject.defineProperties( VueLocalStorage.prototype, prototypeAccessors );\n\nvar vueLocalStorage = new VueLocalStorage();\n\nvar index = {\n /**\n * Install vue-local-storage plugin\n *\n * @param {Vue} Vue\n * @param {Object} options\n */\n install: function (Vue, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof process !== 'undefined' &&\n (\n process.server ||\n process.SERVER_BUILD ||\n (process.env && process.env.VUE_ENV === 'server')\n )\n ) {\n return\n }\n\n var isSupported = true;\n\n try {\n var test = '__vue-localstorage-test__';\n\n window.localStorage.setItem(test, test);\n window.localStorage.removeItem(test);\n } catch (e) {\n isSupported = false;\n vueLocalStorage._isSupported = false;\n\n console.error('Local storage is not supported');\n }\n\n var name = options.name || 'localStorage';\n var bind = options.bind;\n\n if (options.namespace) {\n vueLocalStorage.namespace = options.namespace;\n }\n\n Vue.mixin({\n beforeCreate: function beforeCreate () {\n var this$1 = this;\n\n if (!isSupported) {\n return\n }\n\n if (this.$options[name]) {\n Object.keys(this.$options[name]).forEach(function (key) {\n var config = this$1.$options[name][key];\n var ref = [config.type, config.default];\n var type = ref[0];\n var defaultValue = ref[1];\n\n vueLocalStorage.addProperty(key, type, defaultValue);\n\n var existingProp = Object.getOwnPropertyDescriptor(vueLocalStorage, key);\n\n if (!existingProp) {\n var prop = {\n get: function () { return Vue.localStorage.get(key, defaultValue); },\n set: function (val) { return Vue.localStorage.set(key, val); },\n configurable: true\n };\n\n Object.defineProperty(vueLocalStorage, key, prop);\n Vue.util.defineReactive(vueLocalStorage, key, defaultValue);\n } else if (!Vue.config.silent) {\n console.log((key + \": is already defined and will be reused\"));\n }\n\n if ((bind || config.bind) && config.bind !== false) {\n this$1.$options.computed = this$1.$options.computed || {};\n\n if (!this$1.$options.computed[key]) {\n this$1.$options.computed[key] = {\n get: function () { return Vue.localStorage[key]; },\n set: function (val) { Vue.localStorage[key] = val; }\n };\n }\n }\n });\n }\n }\n });\n\n Vue[name] = vueLocalStorage;\n Vue.prototype[(\"$\" + name)] = vueLocalStorage;\n }\n};\n\nreturn index;\n\n})));\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","_regeneratorRuntime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","obj","key","desc","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","call","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","_typeof","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","state","Error","undefined","done","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","return","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","doneResult","displayName","isGeneratorFunction","genFun","ctor","constructor","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","args","arguments","apply","components","AccountGroup","Delete","Fragment","NcActionButton","NcActionInput","NcAppNavigationItem","NcButton","NcCounterBubble","NcModal","NcNoteCard","Pencil","active","Boolean","required","count","data","loadingRenameGroup","openGroupMenu","showRemoveGroupModal","computed","settings","$store","getters","getServerData","methods","handleGroupMenuOpen","renameGroup","gid","_this","_callee","_context","trim","$refs","displayNameInput","$el","querySelector","dispatch","groupid","t0","removeGroup","_this2","_callee2","_context2","showError","t","group","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","params","selectedGroup","encodeURIComponent","scopedSlots","_u","proxy","isAdmin","ref","Vue","directive","vElementVisibility","extend","dataComponent","Function","dataKey","dataSources","Array","itemHeight","extraProps","bufferItems","index","headerHeight","tableHeight","resizeObserver","startIndex","Math","max","shownItems","ceil","renderedItems","tbodyStyle","isOverScrolled","lastIndex","hiddenAfterItems","min","paddingTop","concat","paddingBottom","mounted","_this$$refs","_this$$refs2","root","tfoot","thead","ResizeObserver","debounce","_thead$clientHeight","_root$clientHeight","clientHeight","logger","debug","onScroll","observe","addEventListener","beforeDestroy","disconnect","handleFooterVisibility","visible","round","scrollTop","_setupProxy","_t","style","_l","item","tag","directives","rawName","expression","_toConsumableArray","arr","isArray","_arrayLikeToArray","_arrayWithoutHoles","from","_iterableToArray","o","minLen","n","toString","test","_unsupportedIterableToArray","_nonIterableSpread","len","arr2","NcPasswordField","NcSelect","NcTextField","loading","newUser","quotaOptions","possibleManagers","managerLabel","showConfig","getShowConfig","usernameLabel","newUserGenerateUserID","minPasswordLength","getPasswordPolicyMinLength","groups","getGroups","filter","sort","a","b","localeCompare","subAdminsGroups","getSubadminGroups","canAddGroups","map","assign","$isDisabled","canAdd","languages","commonLanguages","otherLanguages","beforeMount","searchUserManager","createUser","_this2$$refs$username","_this2$$refs$username2","statuscode","_this2$$refs$username3","_this2$$refs$username4","_this2$$refs$password","_this2$$refs$password2","all","userid","password","email","mailAddress","subadmin","quota","language","code","manager","username","inputField","input","focus","response","ocs","meta","handleGroupInput","createGroup","_ref","_this3","_callee3","_context3","find","validateQuota","validQuota","OC","Util","computerFileSize","humanFileSize","label","languageFilterBy","option","search","some","_ref2","toLocaleLowerCase","includes","query","_this4","_callee4","_context4","offset","limit","users","_g","$listeners","preventDefault","$set","newUserRequireEmail","class","model","callback","$$v","showLanguages","NcLoadingIcon","filteredUsers","userCount","hasObfuscated","passwordLabel","showUserBackend","showStoragePath","showLastLogin","defineComponent","NcActions","NcIconSvgWrapper","actions","disabled","edit","editSvg","toggleEdit","action","icon","text","user","externalActions","userGroups","userSubAdminsGroups","availableGroups","groupClone","canRemove","usedSpace","used","usedQuota","pow","userQuota","humanQuota","userLanguage","userLang","lang","userLastLoginTooltip","lastLogin","formatDate","userLastLogin","relativeModifiedDate","unlimitedQuota","defaultQuota","isObfuscated","at","NcAvatar","NcProgressBar","UserRowActions","mixins","UserRowMixin","_this$user$email","selectedQuota","rand","random","substring","loadingPossibleManagers","currentManager","editing","subadmins","delete","disable","wipe","editedDisplayName","displayname","editedPassword","editedMail","isLoadingUser","isLoadingField","uniqueId","userGroupsLabels","join","userSubAdminsGroupsLabels","_this$user$quota","_this$user$quota2","canEdit","getCurrentUser","uid","_this$user$quota3","userActions","deleteUser","wipeUserDevices","enabled","enableDisableUser","sendWelcomeMail","editedUserQuota","get","set","availableLanguages","initManager","dialogs","confirmDestructive","YES_NO_BUTTONS","confirm","confirmClasses","cancel","showSuccess","timeout","finally","filterManagers","managers","userId","searchInitialUserManager","_this5","_this6","updateUserManager","_this7","_callee5","_context5","console","_this8","_this9","updateDisplayName","_this10","updatePassword","_this11","updateEmail","_this12","_this13","_callee6","_context6","addUserGroup","_this14","_callee7","_context7","isCreating","removeUserGroup","_this15","_callee8","_context8","$route","commit","addUserSubAdmin","_this16","_callee9","_context9","removeUserSubAdmin","_this17","_callee10","_context10","setUserQuota","_arguments","_this18","_callee11","_context11","_quota","setUserLanguage","_this19","_callee12","_context12","_this20","_this21","_callee13","_this21$$refs$display","_this21$user$email","_context13","$nextTick","displayNameField","_vm$user$displayname","_vm$user$email","_vm$userGroupsLabels","_vm$userSubAdminsGrou","backendCapabilities","setDisplayName","canChangePassword","setPassword","backend","storageLocation","NcEmptyContent","NewUserModal","UserListFooter","UserListHeader","VirtualList","UserRow","isInitialLoad","rowHeight","usersSvg","searchQuery","getUsers","quotaPreset","reduce","acc","cur","allowUnlimitedQuota","unshift","usersOffset","getUsersOffset","usersLimit","getUsersLimit","usersCount","watch","old","redirectIfDisabled","loadUsers","setNewUserDefaultGroup","created","Notification","showTemporary","resetForm","subscribe","resetSearch","unsubscribe","handleScrollEnd","closeModal","defaultLanguage","currentGroup","allGroups","findIndex","usercount","$router","showNewUserForm","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","_objectSpread","target","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","hint","prim","toPrimitive","res","_toPrimitive","_toPropertyKey","NcAppSettingsDialog","NcAppSettingsSection","NcCheckboxRadioSwitch","open","loadingSendMail","isModalOpen","getLocalstorage","status","setLocalStorage","newUserSendEmail","axios","post","generateUrl","message","localConfig","$localStorage","setDefaultQuota","app","use","VueLocalStorage","AccountOff","Cog","GroupListItem","NcActionText","NcAppContent","NcAppNavigation","NcAppNavigationCaption","NcAppNavigationNew","NcContent","Plus","ShieldAccount","UserList","UserSettingsDialog","newGroupName","isAddGroupOpen","loadingAddGroup","hasAddGroupError","isDialogOpen","selectedGroupDecoded","decodeURIComponent","getUserCount","groupList","formatGroupMenu","adminGroupMenu","disabledGroupMenu","orderBy","sortGroups","OCA","Settings","registerAction","showNewUserMenu","groupId","indexOf","_k","keyCode","_properties","_namespace","_isSupported","prototypeAccessors","namespace","_getLsKey","lsKey","_lsSet","rawValue","JSON","stringify","window","localStorage","setItem","_lsGet","defaultValue","defaultType","_process","this$1","remove","removeItem","addProperty","parseFloat","array","parse","e","vueLocalStorage","install","process","server","SERVER_BUILD","env","VUE_ENV","isSupported","bind","mixin","beforeCreate","$options","config","silent","log","prop","util","defineReactive","factory"],"sourceRoot":""}
|