From 2ae82137cd816b53cdf60ecba986e938f81d09e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6=20=28skjnldsv=29?= Date: Fri, 6 Apr 2018 20:56:02 +0200 Subject: [PATCH] Group filtering, disable state, ocs api final update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ (skjnldsv) --- core/css/inputs.scss | 7 +-- settings/css/settings.scss | 8 +++ settings/js/main.js | 20 +++---- .../components/popoverMenu/popoverItem.vue | 11 ++-- settings/src/components/userList.vue | 53 ++++++++++++++++--- settings/src/components/userList/userRow.vue | 39 +++++++++++--- settings/src/store/api.js | 2 +- settings/src/store/index.js | 23 +++++--- settings/src/store/users.js | 53 ++++++++++++++++--- settings/src/views/Users.vue | 35 ++++++++---- settings/users.php | 20 ++++--- 11 files changed, 202 insertions(+), 69 deletions(-) diff --git a/core/css/inputs.scss b/core/css/inputs.scss index a1a4b15fdd5..29b131ef015 100644 --- a/core/css/inputs.scss +++ b/core/css/inputs.scss @@ -636,8 +636,9 @@ input { opacity: 1 !important; } } - &.multiselect--disabled { - background-color: nc-darken($color-main-background, 8%); + &.multiselect--disabled, + &.multiselect--disabled .multiselect__single { + background-color: nc-darken($color-main-background, 8%) !important; } .multiselect__tags { display: flex; @@ -683,7 +684,7 @@ input { .multiselect__single { padding: 8px 10px; flex: 0 0 100%; - z-index: 5; + z-index: 1; /* above input */ background-color: $color-main-background; cursor: pointer; } diff --git a/settings/css/settings.scss b/settings/css/settings.scss index dd398f761f9..e97ad55a5b7 100644 --- a/settings/css/settings.scss +++ b/settings/css/settings.scss @@ -1289,6 +1289,9 @@ doesnotexist:-o-prefocus, .strengthify-wrapper { grid-template-columns: 44px; grid-auto-columns: min-content; border-top: $color-border 1px solid; + &.disabled { + opacity: .5; + } .name, .displayName, .password { @@ -1363,6 +1366,7 @@ doesnotexist:-o-prefocus, .strengthify-wrapper { left: 2px; bottom: 2px; height: 3px; + z-index: 5; /* above multiselect */ } } .icon-confirm { @@ -1381,6 +1385,9 @@ doesnotexist:-o-prefocus, .strengthify-wrapper { img { display: block; } + &.icon-loading > img { + display: none; + } } .toggleUserActions { position: relative; @@ -1419,6 +1426,7 @@ doesnotexist:-o-prefocus, .strengthify-wrapper { display: flex; align-items: center; justify-content: center; + grid-row-start: span 4; } .users-list-end { opacity: .5; diff --git a/settings/js/main.js b/settings/js/main.js index 8f5718beb3c..45e55ebfe5c 100644 --- a/settings/js/main.js +++ b/settings/js/main.js @@ -114,7 +114,7 @@ eval("//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_appNavigation__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_userList__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_localstorage__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_localstorage___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vue_localstorage__);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_2_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_3_vue_localstorage___default.a);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'Users',\n\tcomponents: {\n\t\tappNavigation: __WEBPACK_IMPORTED_MODULE_0__components_appNavigation__[\"a\" /* default */],\n\t\tuserList: __WEBPACK_IMPORTED_MODULE_1__components_userList__[\"a\" /* default */]\n\t},\n\tbeforeMount: function beforeMount() {\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});\n\t\tthis.$store.dispatch('getPasswordPolicyMinLength');\n\t},\n\tdata: function data() {\n\t\treturn {\n\t\t\tshowConfig: {\n\t\t\t\tshowStoragePath: false,\n\t\t\t\tshowUserBackend: false,\n\t\t\t\tshowLastLogin: false,\n\t\t\t\tshowNewUserForm: false\n\t\t\t}\n\t\t};\n\t},\n\n\tmethods: {\n\t\tgetLocalstorage: function getLocalstorage(key) {\n\t\t\t// force initialization\n\t\t\tthis.showConfig[key] = this.$localStorage.get(key) === 'true';\n\t\t\treturn this.showConfig[key];\n\t\t},\n\t\tsetLocalStorage: function setLocalStorage(key, status) {\n\t\t\tthis.showConfig[key] = status;\n\t\t\tthis.$localStorage.set(key, status);\n\t\t\treturn status;\n\t\t}\n\t},\n\tcomputed: {\n\t\tusers: function users() {\n\t\t\treturn this.$store.getters.getUsers;\n\t\t},\n\t\tloading: function loading() {\n\t\t\treturn Object.keys(this.users).length === 0;\n\t\t},\n\t\tusersOffset: function usersOffset() {\n\t\t\treturn this.$store.getters.getUsersOffset;\n\t\t},\n\t\tusersLimit: function usersLimit() {\n\t\t\treturn this.$store.getters.getUsersLimit;\n\t\t},\n\n\t\tshowLastLogin: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showLastLogin');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showLastLogin', status);\n\t\t\t}\n\t\t},\n\t\tshowUserBackend: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showUserBackend');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showUserBackend', status);\n\t\t\t}\n\t\t},\n\t\tshowStoragePath: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showStoragePath');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showStoragePath', status);\n\t\t\t}\n\t\t},\n\t\tmenu: function menu() {\n\t\t\tvar self = this;\n\t\t\t// Data provided php side\n\t\t\tvar groups = this.$store.getters.getGroups;\n\t\t\tgroups = Array.isArray(groups) ? groups : [];\n\n\t\t\t// Map groups\n\t\t\tgroups = groups.map(function (group) {\n\t\t\t\tvar item = {};\n\t\t\t\titem.id = group.id.replace(' ', '_');\n\t\t\t\titem.classes = [];\n\t\t\t\titem.href = '#group' + group.id.replace(' ', '_');\n\t\t\t\titem.text = group.name;\n\t\t\t\titem.utils = { counter: group.usercount };\n\t\t\t\treturn item;\n\t\t\t});\n\n\t\t\t// Adjust data\n\t\t\tif (groups[0].id === 'admin') {\n\t\t\t\tgroups[0].text = t('settings', 'Admins');\n\t\t\t} // rename admin group\n\t\t\tif (groups[1].id === '_disabled') {\n\t\t\t\tgroups[1].text = t('settings', 'Disabled users'); // rename disabled group\n\t\t\t\tif (groups[1].utils.counter === 0) {\n\t\t\t\t\tgroups.splice(1, 1); // remove disabled if empty\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Add everyone group\n\t\t\tgroups.unshift({\n\t\t\t\tid: '_everyone',\n\t\t\t\tclasses: ['active'],\n\t\t\t\thref: '#group_everyone',\n\t\t\t\ttext: t('settings', 'Everyone'),\n\t\t\t\tutils: { counter: this.users.length }\n\t\t\t});\n\n\t\t\t// Return\n\t\t\treturn {\n\t\t\t\tid: 'usergrouplist',\n\t\t\t\tnew: {\n\t\t\t\t\tid: 'new-user-button',\n\t\t\t\t\ttext: t('settings', 'New user'),\n\t\t\t\t\ticon: 'icon-add',\n\t\t\t\t\taction: function action() {\n\t\t\t\t\t\tself.showConfig.showNewUserForm = !self.showConfig.showNewUserForm;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\titems: groups\n\t\t\t};\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL3ZpZXdzL1VzZXJzLnZ1ZT8wNzZmIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEwQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtPQUVBOztBQUVBO0FBRUE7QUFIQTtxQ0FJQTs7NkNBRUE7OENBRUE7QUFIQTt1QkFJQTtBQUNBO3VCQUNBOzs7cUJBR0E7cUJBQ0E7bUJBQ0E7cUJBR0E7QUFOQTtBQURBO0FBUUE7OztpREFFQTtBQUNBOzBEQUNBOzBCQUNBO0FBQ0E7eURBQ0E7MEJBQ0E7K0JBQ0E7VUFDQTtBQUVBO0FBWEE7OzBCQWFBOzhCQUNBO0FBQ0E7OEJBQ0E7NkNBQ0E7QUFDQTtzQ0FDQTs4QkFDQTtBQUNBO29DQUNBOzhCQUNBO0FBQ0E7Ozs7O0FBRUE7NkJBQ0E7MENBQ0E7QUFFQTtBQUxBOzs7O0FBT0E7NkJBQ0E7NENBQ0E7QUFFQTtBQUxBOzs7O0FBT0E7NkJBQ0E7NENBQ0E7QUFFQTtBQUxBOztjQU9BO0FBQ0E7b0NBQ0E7NkNBRUE7O0FBQ0E7d0NBQ0E7ZUFDQTtvQ0FDQTttQkFDQTtpREFDQTtzQkFDQTtrQ0FDQTtXQUNBO0FBRUE7O0FBQ0E7aUNBQ0E7O0lBbEJBLENBbUJBO3FDQUNBO3NEQUNBOzt5QkFDQSxDQUNBO0FBQ0E7QUFFQTs7QUFDQTs7UUFFQTtjQUNBO1VBQ0E7d0JBQ0E7aUNBR0E7QUFQQTs7QUFRQTs7UUFFQTs7U0FFQTt5QkFDQTtXQUNBOzs7QUFFQTtBQUxBO1dBT0E7QUFUQTtBQVdBO0FBL0VBO0FBbkNBIiwiZmlsZSI6IjcuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDxkaXYgaWQ9XCJhcHBcIj5cblx0XHQ8YXBwLW5hdmlnYXRpb24gOm1lbnU9XCJtZW51XCI+XG5cdFx0XHQ8dGVtcGxhdGUgc2xvdD1cInNldHRpbmdzLWNvbnRlbnRcIj5cblx0XHRcdFx0PGRpdj5cblx0XHRcdFx0XHQ8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJzaG93TGFzdExvZ2luXCIgY2xhc3M9XCJjaGVja2JveFwiXG5cdFx0XHRcdFx0XHQgICA6Y2hlY2tlZD1cInNob3dMYXN0TG9naW5cIiB2LW1vZGVsPVwic2hvd0xhc3RMb2dpblwiPlxuXHRcdFx0XHRcdDxsYWJlbCBmb3I9XCJzaG93TGFzdExvZ2luXCI+e3t0KCdzZXR0aW5ncycsICdTaG93IGxhc3QgbG9naW4nKX19PC9sYWJlbD5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDxkaXY+XG5cdFx0XHRcdFx0PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwic2hvd1VzZXJCYWNrZW5kXCIgY2xhc3M9XCJjaGVja2JveFwiXG5cdFx0XHRcdFx0XHQgICA6Y2hlY2tlZD1cInNob3dVc2VyQmFja2VuZFwiIHYtbW9kZWw9XCJzaG93VXNlckJhY2tlbmRcIj5cblx0XHRcdFx0XHQ8bGFiZWwgZm9yPVwic2hvd1VzZXJCYWNrZW5kXCI+e3t0KCdzZXR0aW5ncycsICdTaG93IHVzZXIgYmFja2VuZCcpfX08L2xhYmVsPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PGRpdj5cblx0XHRcdFx0XHQ8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJzaG93U3RvcmFnZVBhdGhcIiBjbGFzcz1cImNoZWNrYm94XCJcblx0XHRcdFx0XHRcdCAgIDpjaGVja2VkPVwic2hvd1N0b3JhZ2VQYXRoXCIgdi1tb2RlbD1cInNob3dTdG9yYWdlUGF0aFwiPlxuXHRcdFx0XHRcdDxsYWJlbCBmb3I9XCJzaG93U3RvcmFnZVBhdGhcIj57e3QoJ3NldHRpbmdzJywgJ1Nob3cgc3RvcmFnZSBwYXRoJyl9fTwvbGFiZWw+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC90ZW1wbGF0ZT5cblx0XHQ8L2FwcC1uYXZpZ2F0aW9uPlxuXHRcdDx1c2VyLWxpc3QgOnVzZXJzPVwidXNlcnNcIiA6c2hvd0NvbmZpZz1cInNob3dDb25maWdcIiAvPlxuXHQ8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgYXBwTmF2aWdhdGlvbiBmcm9tICcuLi9jb21wb25lbnRzL2FwcE5hdmlnYXRpb24nO1xuaW1wb3J0IHVzZXJMaXN0IGZyb20gJy4uL2NvbXBvbmVudHMvdXNlckxpc3QnO1xuaW1wb3J0IFZ1ZSBmcm9tICd2dWUnO1xuaW1wb3J0IFZ1ZUxvY2FsU3RvcmFnZSBmcm9tICd2dWUtbG9jYWxzdG9yYWdlJ1xuVnVlLnVzZShWdWVMb2NhbFN0b3JhZ2UpXG5cbmV4cG9ydCBkZWZhdWx0IHtcblx0bmFtZTogJ1VzZXJzJyxcblx0Y29tcG9uZW50czoge1xuXHRcdGFwcE5hdmlnYXRpb24sXG5cdFx0dXNlckxpc3Rcblx0fSxcblx0YmVmb3JlTW91bnQoKSB7XG5cdFx0dGhpcy4kc3RvcmUuY29tbWl0KCdpbml0R3JvdXBzJywge1xuXHRcdFx0Z3JvdXBzOiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFNlcnZlckRhdGEuZ3JvdXBzLFxuXHRcdFx0b3JkZXJCeTogdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRTZXJ2ZXJEYXRhLnNvcnRHcm91cHNcblx0XHR9KTtcblx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZ2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgnKTtcblx0fSxcblx0ZGF0YSgpIHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0c2hvd0NvbmZpZzoge1xuXHRcdFx0XHRzaG93U3RvcmFnZVBhdGg6IGZhbHNlLFxuXHRcdFx0XHRzaG93VXNlckJhY2tlbmQ6IGZhbHNlLFxuXHRcdFx0XHRzaG93TGFzdExvZ2luOiBmYWxzZSxcblx0XHRcdFx0c2hvd05ld1VzZXJGb3JtOiBmYWxzZVxuXHRcdFx0fVxuXHRcdH1cblx0fSxcblx0bWV0aG9kczoge1xuXHRcdGdldExvY2Fsc3RvcmFnZShrZXkpIHtcblx0XHRcdC8vIGZvcmNlIGluaXRpYWxpemF0aW9uXG5cdFx0XHR0aGlzLnNob3dDb25maWdba2V5XSA9IHRoaXMuJGxvY2FsU3RvcmFnZS5nZXQoa2V5KSA9PT0gJ3RydWUnO1xuXHRcdFx0cmV0dXJuIHRoaXMuc2hvd0NvbmZpZ1trZXldO1xuXHRcdH0sXG5cdFx0c2V0TG9jYWxTdG9yYWdlKGtleSwgc3RhdHVzKSB7XG5cdFx0XHR0aGlzLnNob3dDb25maWdba2V5XSA9IHN0YXR1cztcblx0XHRcdHRoaXMuJGxvY2FsU3RvcmFnZS5zZXQoa2V5LCBzdGF0dXMpO1xuXHRcdFx0cmV0dXJuIHN0YXR1cztcblx0XHR9XG5cdH0sXG5cdGNvbXB1dGVkOiB7XG5cdFx0dXNlcnMoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vycztcblx0XHR9LFxuXHRcdGxvYWRpbmcoKSB7XG5cdFx0XHRyZXR1cm4gT2JqZWN0LmtleXModGhpcy51c2VycykubGVuZ3RoID09PSAwO1xuXHRcdH0sXG5cdFx0dXNlcnNPZmZzZXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc09mZnNldDtcblx0XHR9LFxuXHRcdHVzZXJzTGltaXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc0xpbWl0O1xuXHRcdH0sXG5cdFx0c2hvd0xhc3RMb2dpbjoge1xuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtyZXR1cm4gdGhpcy5nZXRMb2NhbHN0b3JhZ2UoJ3Nob3dMYXN0TG9naW4nKX0sXG5cdFx0XHRzZXQ6IGZ1bmN0aW9uKHN0YXR1cykge1xuXHRcdFx0XHR0aGlzLnNldExvY2FsU3RvcmFnZSgnc2hvd0xhc3RMb2dpbicsIHN0YXR1cyk7XG5cdFx0XHR9XG5cdFx0fSxcblx0XHRzaG93VXNlckJhY2tlbmQ6IHtcblx0XHRcdGdldDogZnVuY3Rpb24oKSB7cmV0dXJuIHRoaXMuZ2V0TG9jYWxzdG9yYWdlKCdzaG93VXNlckJhY2tlbmQnKX0sXG5cdFx0XHRzZXQ6IGZ1bmN0aW9uKHN0YXR1cykge1xuXHRcdFx0XHR0aGlzLnNldExvY2FsU3RvcmFnZSgnc2hvd1VzZXJCYWNrZW5kJywgc3RhdHVzKTtcblx0XHRcdH1cblx0XHR9LFxuXHRcdHNob3dTdG9yYWdlUGF0aDoge1xuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtyZXR1cm4gdGhpcy5nZXRMb2NhbHN0b3JhZ2UoJ3Nob3dTdG9yYWdlUGF0aCcpfSxcblx0XHRcdHNldDogZnVuY3Rpb24oc3RhdHVzKSB7XG5cdFx0XHRcdHRoaXMuc2V0TG9jYWxTdG9yYWdlKCdzaG93U3RvcmFnZVBhdGgnLCBzdGF0dXMpO1xuXHRcdFx0fVxuXHRcdH0sXG5cdFx0bWVudSgpIHtcblx0XHRcdGxldCBzZWxmID0gdGhpcztcblx0XHRcdC8vIERhdGEgcHJvdmlkZWQgcGhwIHNpZGVcblx0XHRcdGxldCBncm91cHMgPSB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldEdyb3Vwcztcblx0XHRcdGdyb3VwcyA9IEFycmF5LmlzQXJyYXkoZ3JvdXBzKSA/IGdyb3VwcyA6IFtdO1xuXG5cdFx0XHQvLyBNYXAgZ3JvdXBzXG5cdFx0XHRncm91cHMgPSBncm91cHMubWFwKGdyb3VwID0+IHtcblx0XHRcdFx0bGV0IGl0ZW0gPSB7fTtcblx0XHRcdFx0aXRlbS5pZCA9IGdyb3VwLmlkLnJlcGxhY2UoJyAnLCAnXycpO1xuXHRcdFx0XHRpdGVtLmNsYXNzZXMgPSBbXTtcblx0XHRcdFx0aXRlbS5ocmVmID0gJyNncm91cCcrZ3JvdXAuaWQucmVwbGFjZSgnICcsICdfJyk7XG5cdFx0XHRcdGl0ZW0udGV4dCA9IGdyb3VwLm5hbWU7XG5cdFx0XHRcdGl0ZW0udXRpbHMgPSB7Y291bnRlcjogZ3JvdXAudXNlcmNvdW50fTtcblx0XHRcdFx0cmV0dXJuIGl0ZW07XG5cdFx0XHR9KTtcblxuXHRcdFx0Ly8gQWRqdXN0IGRhdGFcblx0XHRcdGlmIChncm91cHNbMF0uaWQgPT09ICdhZG1pbicpIHtcblx0XHRcdFx0Z3JvdXBzWzBdLnRleHQgPSB0KCdzZXR0aW5ncycsICdBZG1pbnMnKTt9XHRcdFx0Ly8gcmVuYW1lIGFkbWluIGdyb3VwXG5cdFx0XHRpZiAoZ3JvdXBzWzFdLmlkID09PSAnX2Rpc2FibGVkJykge1xuXHRcdFx0XHRncm91cHNbMV0udGV4dCA9IHQoJ3NldHRpbmdzJywgJ0Rpc2FibGVkIHVzZXJzJyk7XHQvLyByZW5hbWUgZGlzYWJsZWQgZ3JvdXBcblx0XHRcdFx0aWYgKGdyb3Vwc1sxXS51dGlscy5jb3VudGVyID09PSAwKSB7XG5cdFx0XHRcdFx0Z3JvdXBzLnNwbGljZSgxLCAxKTtcdFx0XHRcdFx0XHRcdC8vIHJlbW92ZSBkaXNhYmxlZCBpZiBlbXB0eVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIEFkZCBldmVyeW9uZSBncm91cFxuXHRcdFx0Z3JvdXBzLnVuc2hpZnQoe1xuXHRcdFx0XHRpZDogJ19ldmVyeW9uZScsXG5cdFx0XHRcdGNsYXNzZXM6IFsnYWN0aXZlJ10sXG5cdFx0XHRcdGhyZWY6JyNncm91cF9ldmVyeW9uZScsXG5cdFx0XHRcdHRleHQ6IHQoJ3NldHRpbmdzJywgJ0V2ZXJ5b25lJyksXG5cdFx0XHRcdHV0aWxzOiB7Y291bnRlcjogdGhpcy51c2Vycy5sZW5ndGh9XG5cdFx0XHR9KTtcblxuXHRcdFx0Ly8gUmV0dXJuXG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRpZDogJ3VzZXJncm91cGxpc3QnLFxuXHRcdFx0XHRuZXc6IHtcblx0XHRcdFx0XHRpZDonbmV3LXVzZXItYnV0dG9uJyxcblx0XHRcdFx0XHR0ZXh0OiB0KCdzZXR0aW5ncycsJ05ldyB1c2VyJyksXG5cdFx0XHRcdFx0aWNvbjogJ2ljb24tYWRkJyxcblx0XHRcdFx0XHRhY3Rpb246IGZ1bmN0aW9uKCl7c2VsZi5zaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybT0hc2VsZi5zaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybX1cblx0XHRcdFx0fSxcblx0XHRcdFx0aXRlbXM6IGdyb3Vwc1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiPlxuPC9zdHlsZT5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvdmlld3MvVXNlcnMudnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///7\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_appNavigation__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_userList__ = __webpack_require__(44);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_localstorage__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_localstorage___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vue_localstorage__);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_2_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_3_vue_localstorage___default.a);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'Users',\n\tcomponents: {\n\t\tappNavigation: __WEBPACK_IMPORTED_MODULE_0__components_appNavigation__[\"a\" /* default */],\n\t\tuserList: __WEBPACK_IMPORTED_MODULE_1__components_userList__[\"a\" /* default */]\n\t},\n\tbeforeMount: function beforeMount() {\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\tdata: function data() {\n\t\treturn {\n\t\t\tshowConfig: {\n\t\t\t\tshowStoragePath: false,\n\t\t\t\tshowUserBackend: false,\n\t\t\t\tshowLastLogin: false,\n\t\t\t\tshowNewUserForm: false\n\t\t\t}\n\t\t};\n\t},\n\n\tmethods: {\n\t\tgetLocalstorage: function getLocalstorage(key) {\n\t\t\t// force initialization\n\t\t\tthis.showConfig[key] = this.$localStorage.get(key) === 'true';\n\t\t\treturn this.showConfig[key];\n\t\t},\n\t\tsetLocalStorage: function setLocalStorage(key, status) {\n\t\t\tthis.showConfig[key] = status;\n\t\t\tthis.$localStorage.set(key, status);\n\t\t\treturn status;\n\t\t}\n\t},\n\tcomputed: {\n\t\troute: function route() {\n\t\t\treturn this.$store.getters.getRoute;\n\t\t},\n\t\tusers: function users() {\n\t\t\treturn this.$store.getters.getUsers;\n\t\t},\n\t\tloading: function loading() {\n\t\t\treturn Object.keys(this.users).length === 0;\n\t\t},\n\t\tusersOffset: function usersOffset() {\n\t\t\treturn this.$store.getters.getUsersOffset;\n\t\t},\n\t\tusersLimit: function usersLimit() {\n\t\t\treturn this.$store.getters.getUsersLimit;\n\t\t},\n\n\t\tshowLastLogin: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showLastLogin');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showLastLogin', status);\n\t\t\t}\n\t\t},\n\t\tshowUserBackend: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showUserBackend');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showUserBackend', status);\n\t\t\t}\n\t\t},\n\t\tshowStoragePath: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.getLocalstorage('showStoragePath');\n\t\t\t},\n\t\t\tset: function set(status) {\n\t\t\t\tthis.setLocalStorage('showStoragePath', status);\n\t\t\t}\n\t\t},\n\t\tuserCount: function userCount() {\n\t\t\treturn this.$store.getters.getUserCount;\n\t\t},\n\t\tmenu: function menu() {\n\t\t\tvar _this = this;\n\n\t\t\tvar self = this;\n\t\t\t// Data provided php side\n\t\t\tvar groups = this.$store.getters.getGroups;\n\t\t\tgroups = Array.isArray(groups) ? groups : [];\n\n\t\t\t// Map groups\n\t\t\tgroups = groups.map(function (group) {\n\t\t\t\tvar item = {};\n\t\t\t\titem.id = group.id.replace(' ', '_');\n\t\t\t\titem.classes = [];\n\t\t\t\titem.href = '#group' + group.id.replace(' ', '_');\n\t\t\t\titem.text = group.name;\n\t\t\t\titem.utils = { counter: group.usercount };\n\t\t\t\treturn item;\n\t\t\t});\n\n\t\t\t// Adjust data\n\t\t\tvar adminGroup = groups.find(function (group) {\n\t\t\t\treturn group.id == 'admin';\n\t\t\t});\n\t\t\tvar disabledGroup = groups.find(function (group) {\n\t\t\t\treturn group.id == '_disabled';\n\t\t\t});\n\t\t\tif (adminGroup.text) {\n\t\t\t\tadminGroup.text = t('settings', 'Admins');\n\t\t\t} // rename admin group\n\t\t\tif (disabledGroup.text) {\n\t\t\t\tdisabledGroup.text = t('settings', 'Disabled users'); // rename disabled group\n\t\t\t\tif (disabledGroup.utils.counter === 0) {\n\t\t\t\t\tgroups.splice(groups.findIndex(function (group) {\n\t\t\t\t\t\treturn group.id == '_disabled';\n\t\t\t\t\t}), 1); // remove disabled if empty\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Add everyone group\n\t\t\tgroups.unshift({\n\t\t\t\tid: '_everyone',\n\t\t\t\tclasses: [],\n\t\t\t\thref: '#group_everyone',\n\t\t\t\ttext: t('settings', 'Everyone'),\n\t\t\t\tutils: { counter: this.userCount }\n\t\t\t});\n\n\t\t\t// Set current group as active\n\t\t\tvar activeGroup = groups.findIndex(function (group) {\n\t\t\t\treturn group.href === _this.route.hash;\n\t\t\t});\n\t\t\tif (activeGroup >= 0) {\n\t\t\t\tgroups[activeGroup].classes.push('active');\n\t\t\t} else {\n\t\t\t\tgroups[0].classes.push('active');\n\t\t\t}\n\n\t\t\t// Return\n\t\t\treturn {\n\t\t\t\tid: 'usergrouplist',\n\t\t\t\tnew: {\n\t\t\t\t\tid: 'new-user-button',\n\t\t\t\t\ttext: t('settings', 'New user'),\n\t\t\t\t\ticon: 'icon-add',\n\t\t\t\t\taction: function action() {\n\t\t\t\t\t\tself.showConfig.showNewUserForm = !self.showConfig.showNewUserForm;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\titems: groups\n\t\t\t};\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL3ZpZXdzL1VzZXJzLnZ1ZT8wNzZmIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEwQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtPQUVBOztBQUVBO0FBRUE7QUFIQTtxQ0FJQTs7NkNBRUE7OENBQ0E7Z0RBRUE7QUFKQTt1QkFLQTtBQUNBO3VCQUNBOzs7cUJBR0E7cUJBQ0E7bUJBQ0E7cUJBR0E7QUFOQTtBQURBO0FBUUE7OztpREFFQTtBQUNBOzBEQUNBOzBCQUNBO0FBQ0E7eURBQ0E7MEJBQ0E7K0JBQ0E7VUFDQTtBQUVBO0FBWEE7OzBCQWFBOzhCQUNBO0FBQ0E7MEJBQ0E7OEJBQ0E7QUFDQTs4QkFDQTs2Q0FDQTtBQUNBO3NDQUNBOzhCQUNBO0FBQ0E7b0NBQ0E7OEJBQ0E7QUFDQTs7Ozs7QUFFQTs2QkFDQTswQ0FDQTtBQUVBO0FBTEE7Ozs7QUFPQTs2QkFDQTs0Q0FDQTtBQUVBO0FBTEE7Ozs7QUFPQTs2QkFDQTs0Q0FDQTtBQUVBO0FBTEE7a0NBTUE7OEJBQ0E7QUFDQTs7QUFDQTs7Y0FDQTtBQUNBO29DQUNBOzZDQUVBOztBQUNBO3dDQUNBO2VBQ0E7b0NBQ0E7bUJBQ0E7aURBQ0E7c0JBQ0E7a0NBQ0E7V0FDQTtBQUVBOztBQUNBOzt1QkFDQTs7O3VCQUNBOzt3QkFDQTs7S0FDQTsyQkFDQTswREFDQTs7OztZQUNBLENBQ0E7QUFDQTtBQUVBOztBQUNBOztRQUVBO2FBQ0E7VUFDQTt3QkFDQTsyQkFHQTtBQVBBOztBQVFBOztzQ0FDQTs7eUJBQ0E7cUNBQ0E7VUFDQTsyQkFDQTtBQUVBOztBQUNBOztRQUVBOztTQUVBO3lCQUNBO1dBQ0E7OztBQUVBO0FBTEE7V0FPQTtBQVRBO0FBV0E7QUEvRkE7QUFwQ0EiLCJmaWxlIjoiNy5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PGRpdiBpZD1cImFwcFwiPlxuXHRcdDxhcHAtbmF2aWdhdGlvbiA6bWVudT1cIm1lbnVcIj5cblx0XHRcdDx0ZW1wbGF0ZSBzbG90PVwic2V0dGluZ3MtY29udGVudFwiPlxuXHRcdFx0XHQ8ZGl2PlxuXHRcdFx0XHRcdDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInNob3dMYXN0TG9naW5cIiBjbGFzcz1cImNoZWNrYm94XCJcblx0XHRcdFx0XHRcdCAgIDpjaGVja2VkPVwic2hvd0xhc3RMb2dpblwiIHYtbW9kZWw9XCJzaG93TGFzdExvZ2luXCI+XG5cdFx0XHRcdFx0PGxhYmVsIGZvcj1cInNob3dMYXN0TG9naW5cIj57e3QoJ3NldHRpbmdzJywgJ1Nob3cgbGFzdCBsb2dpbicpfX08L2xhYmVsPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PGRpdj5cblx0XHRcdFx0XHQ8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJzaG93VXNlckJhY2tlbmRcIiBjbGFzcz1cImNoZWNrYm94XCJcblx0XHRcdFx0XHRcdCAgIDpjaGVja2VkPVwic2hvd1VzZXJCYWNrZW5kXCIgdi1tb2RlbD1cInNob3dVc2VyQmFja2VuZFwiPlxuXHRcdFx0XHRcdDxsYWJlbCBmb3I9XCJzaG93VXNlckJhY2tlbmRcIj57e3QoJ3NldHRpbmdzJywgJ1Nob3cgdXNlciBiYWNrZW5kJyl9fTwvbGFiZWw+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8ZGl2PlxuXHRcdFx0XHRcdDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInNob3dTdG9yYWdlUGF0aFwiIGNsYXNzPVwiY2hlY2tib3hcIlxuXHRcdFx0XHRcdFx0ICAgOmNoZWNrZWQ9XCJzaG93U3RvcmFnZVBhdGhcIiB2LW1vZGVsPVwic2hvd1N0b3JhZ2VQYXRoXCI+XG5cdFx0XHRcdFx0PGxhYmVsIGZvcj1cInNob3dTdG9yYWdlUGF0aFwiPnt7dCgnc2V0dGluZ3MnLCAnU2hvdyBzdG9yYWdlIHBhdGgnKX19PC9sYWJlbD5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L3RlbXBsYXRlPlxuXHRcdDwvYXBwLW5hdmlnYXRpb24+XG5cdFx0PHVzZXItbGlzdCA6dXNlcnM9XCJ1c2Vyc1wiIDpzaG93Q29uZmlnPVwic2hvd0NvbmZpZ1wiIC8+XG5cdDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBhcHBOYXZpZ2F0aW9uIGZyb20gJy4uL2NvbXBvbmVudHMvYXBwTmF2aWdhdGlvbic7XG5pbXBvcnQgdXNlckxpc3QgZnJvbSAnLi4vY29tcG9uZW50cy91c2VyTGlzdCc7XG5pbXBvcnQgVnVlIGZyb20gJ3Z1ZSc7XG5pbXBvcnQgVnVlTG9jYWxTdG9yYWdlIGZyb20gJ3Z1ZS1sb2NhbHN0b3JhZ2UnXG5WdWUudXNlKFZ1ZUxvY2FsU3RvcmFnZSlcblxuZXhwb3J0IGRlZmF1bHQge1xuXHRuYW1lOiAnVXNlcnMnLFxuXHRjb21wb25lbnRzOiB7XG5cdFx0YXBwTmF2aWdhdGlvbixcblx0XHR1c2VyTGlzdFxuXHR9LFxuXHRiZWZvcmVNb3VudCgpIHtcblx0XHR0aGlzLiRzdG9yZS5jb21taXQoJ2luaXRHcm91cHMnLCB7XG5cdFx0XHRncm91cHM6IHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0U2VydmVyRGF0YS5ncm91cHMsXG5cdFx0XHRvcmRlckJ5OiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFNlcnZlckRhdGEuc29ydEdyb3Vwcyxcblx0XHRcdHVzZXJDb3VudDogdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRTZXJ2ZXJEYXRhLnVzZXJDb3VudFxuXHRcdH0pO1xuXHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdnZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aCcpO1xuXHR9LFxuXHRkYXRhKCkge1xuXHRcdHJldHVybiB7XG5cdFx0XHRzaG93Q29uZmlnOiB7XG5cdFx0XHRcdHNob3dTdG9yYWdlUGF0aDogZmFsc2UsXG5cdFx0XHRcdHNob3dVc2VyQmFja2VuZDogZmFsc2UsXG5cdFx0XHRcdHNob3dMYXN0TG9naW46IGZhbHNlLFxuXHRcdFx0XHRzaG93TmV3VXNlckZvcm06IGZhbHNlXG5cdFx0XHR9XG5cdFx0fVxuXHR9LFxuXHRtZXRob2RzOiB7XG5cdFx0Z2V0TG9jYWxzdG9yYWdlKGtleSkge1xuXHRcdFx0Ly8gZm9yY2UgaW5pdGlhbGl6YXRpb25cblx0XHRcdHRoaXMuc2hvd0NvbmZpZ1trZXldID0gdGhpcy4kbG9jYWxTdG9yYWdlLmdldChrZXkpID09PSAndHJ1ZSc7XG5cdFx0XHRyZXR1cm4gdGhpcy5zaG93Q29uZmlnW2tleV07XG5cdFx0fSxcblx0XHRzZXRMb2NhbFN0b3JhZ2Uoa2V5LCBzdGF0dXMpIHtcblx0XHRcdHRoaXMuc2hvd0NvbmZpZ1trZXldID0gc3RhdHVzO1xuXHRcdFx0dGhpcy4kbG9jYWxTdG9yYWdlLnNldChrZXksIHN0YXR1cyk7XG5cdFx0XHRyZXR1cm4gc3RhdHVzO1xuXHRcdH1cblx0fSxcblx0Y29tcHV0ZWQ6IHtcblx0XHRyb3V0ZSgpIHtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFJvdXRlO1xuXHRcdH0sXG5cdFx0dXNlcnMoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vycztcblx0XHR9LFxuXHRcdGxvYWRpbmcoKSB7XG5cdFx0XHRyZXR1cm4gT2JqZWN0LmtleXModGhpcy51c2VycykubGVuZ3RoID09PSAwO1xuXHRcdH0sXG5cdFx0dXNlcnNPZmZzZXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc09mZnNldDtcblx0XHR9LFxuXHRcdHVzZXJzTGltaXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc0xpbWl0O1xuXHRcdH0sXG5cdFx0c2hvd0xhc3RMb2dpbjoge1xuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtyZXR1cm4gdGhpcy5nZXRMb2NhbHN0b3JhZ2UoJ3Nob3dMYXN0TG9naW4nKX0sXG5cdFx0XHRzZXQ6IGZ1bmN0aW9uKHN0YXR1cykge1xuXHRcdFx0XHR0aGlzLnNldExvY2FsU3RvcmFnZSgnc2hvd0xhc3RMb2dpbicsIHN0YXR1cyk7XG5cdFx0XHR9XG5cdFx0fSxcblx0XHRzaG93VXNlckJhY2tlbmQ6IHtcblx0XHRcdGdldDogZnVuY3Rpb24oKSB7cmV0dXJuIHRoaXMuZ2V0TG9jYWxzdG9yYWdlKCdzaG93VXNlckJhY2tlbmQnKX0sXG5cdFx0XHRzZXQ6IGZ1bmN0aW9uKHN0YXR1cykge1xuXHRcdFx0XHR0aGlzLnNldExvY2FsU3RvcmFnZSgnc2hvd1VzZXJCYWNrZW5kJywgc3RhdHVzKTtcblx0XHRcdH1cblx0XHR9LFxuXHRcdHNob3dTdG9yYWdlUGF0aDoge1xuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtyZXR1cm4gdGhpcy5nZXRMb2NhbHN0b3JhZ2UoJ3Nob3dTdG9yYWdlUGF0aCcpfSxcblx0XHRcdHNldDogZnVuY3Rpb24oc3RhdHVzKSB7XG5cdFx0XHRcdHRoaXMuc2V0TG9jYWxTdG9yYWdlKCdzaG93U3RvcmFnZVBhdGgnLCBzdGF0dXMpO1xuXHRcdFx0fVxuXHRcdH0sXG5cdFx0dXNlckNvdW50KCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0VXNlckNvdW50O1xuXHRcdH0sXG5cdFx0bWVudSgpIHtcblx0XHRcdGxldCBzZWxmID0gdGhpcztcblx0XHRcdC8vIERhdGEgcHJvdmlkZWQgcGhwIHNpZGVcblx0XHRcdGxldCBncm91cHMgPSB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldEdyb3Vwcztcblx0XHRcdGdyb3VwcyA9IEFycmF5LmlzQXJyYXkoZ3JvdXBzKSA/IGdyb3VwcyA6IFtdO1xuXG5cdFx0XHQvLyBNYXAgZ3JvdXBzXG5cdFx0XHRncm91cHMgPSBncm91cHMubWFwKGdyb3VwID0+IHtcblx0XHRcdFx0bGV0IGl0ZW0gPSB7fTtcblx0XHRcdFx0aXRlbS5pZCA9IGdyb3VwLmlkLnJlcGxhY2UoJyAnLCAnXycpO1xuXHRcdFx0XHRpdGVtLmNsYXNzZXMgPSBbXTtcblx0XHRcdFx0aXRlbS5ocmVmID0gJyNncm91cCcrZ3JvdXAuaWQucmVwbGFjZSgnICcsICdfJyk7XG5cdFx0XHRcdGl0ZW0udGV4dCA9IGdyb3VwLm5hbWU7XG5cdFx0XHRcdGl0ZW0udXRpbHMgPSB7Y291bnRlcjogZ3JvdXAudXNlcmNvdW50fTtcblx0XHRcdFx0cmV0dXJuIGl0ZW07XG5cdFx0XHR9KTtcblxuXHRcdFx0Ly8gQWRqdXN0IGRhdGFcblx0XHRcdGxldCBhZG1pbkdyb3VwID0gZ3JvdXBzLmZpbmQoZ3JvdXAgPT4gZ3JvdXAuaWQgPT0gJ2FkbWluJyk7XG4gICAgICAgXHRcdGxldCBkaXNhYmxlZEdyb3VwID0gZ3JvdXBzLmZpbmQoZ3JvdXAgPT4gZ3JvdXAuaWQgPT0gJ19kaXNhYmxlZCcpO1xuXHRcdFx0aWYgKGFkbWluR3JvdXAudGV4dCkge1xuXHRcdFx0XHRhZG1pbkdyb3VwLnRleHQgPSB0KCdzZXR0aW5ncycsICdBZG1pbnMnKTt9XHRcdFx0Ly8gcmVuYW1lIGFkbWluIGdyb3VwXG5cdFx0XHRpZiAoZGlzYWJsZWRHcm91cC50ZXh0KSB7XG5cdFx0XHRcdGRpc2FibGVkR3JvdXAudGV4dCA9IHQoJ3NldHRpbmdzJywgJ0Rpc2FibGVkIHVzZXJzJyk7XHQvLyByZW5hbWUgZGlzYWJsZWQgZ3JvdXBcblx0XHRcdFx0aWYgKGRpc2FibGVkR3JvdXAudXRpbHMuY291bnRlciA9PT0gMCkge1xuXHRcdFx0XHRcdGdyb3Vwcy5zcGxpY2UoZ3JvdXBzLmZpbmRJbmRleChncm91cCA9PiBncm91cC5pZCA9PSAnX2Rpc2FibGVkJyksIDEpO1x0XHRcdFx0XHRcdFx0Ly8gcmVtb3ZlIGRpc2FibGVkIGlmIGVtcHR5XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gQWRkIGV2ZXJ5b25lIGdyb3VwXG5cdFx0XHRncm91cHMudW5zaGlmdCh7XG5cdFx0XHRcdGlkOiAnX2V2ZXJ5b25lJyxcblx0XHRcdFx0Y2xhc3NlczogW10sXG5cdFx0XHRcdGhyZWY6JyNncm91cF9ldmVyeW9uZScsXG5cdFx0XHRcdHRleHQ6IHQoJ3NldHRpbmdzJywgJ0V2ZXJ5b25lJyksXG5cdFx0XHRcdHV0aWxzOiB7Y291bnRlcjogdGhpcy51c2VyQ291bnR9XG5cdFx0XHR9KTtcblxuXHRcdFx0Ly8gU2V0IGN1cnJlbnQgZ3JvdXAgYXMgYWN0aXZlXG5cdFx0XHRsZXQgYWN0aXZlR3JvdXAgPSBncm91cHMuZmluZEluZGV4KGdyb3VwID0+IGdyb3VwLmhyZWYgPT09IHRoaXMucm91dGUuaGFzaCk7XG5cdFx0XHRpZiAoYWN0aXZlR3JvdXAgPj0gMCkge1xuXHRcdFx0XHRncm91cHNbYWN0aXZlR3JvdXBdLmNsYXNzZXMucHVzaCgnYWN0aXZlJyk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRncm91cHNbMF0uY2xhc3Nlcy5wdXNoKCdhY3RpdmUnKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gUmV0dXJuXG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRpZDogJ3VzZXJncm91cGxpc3QnLFxuXHRcdFx0XHRuZXc6IHtcblx0XHRcdFx0XHRpZDonbmV3LXVzZXItYnV0dG9uJyxcblx0XHRcdFx0XHR0ZXh0OiB0KCdzZXR0aW5ncycsJ05ldyB1c2VyJyksXG5cdFx0XHRcdFx0aWNvbjogJ2ljb24tYWRkJyxcblx0XHRcdFx0XHRhY3Rpb246IGZ1bmN0aW9uKCl7c2VsZi5zaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybT0hc2VsZi5zaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybX1cblx0XHRcdFx0fSxcblx0XHRcdFx0aXRlbXM6IGdyb3Vwc1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiPlxuPC9zdHlsZT5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvdmlld3MvVXNlcnMudnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///7\n"); /***/ }), /* 8 */ @@ -149,7 +149,7 @@ eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__popoverMenu_popoverI /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tprops: ['item'],\n\tmethods: {\n\t\tdispatchToStore: function dispatchToStore() {\n\t\t\tthis.$store.dispatch(this.item.action, this.item.data);\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUvcG9wb3Zlckl0ZW0udnVlPzZkN2IiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFjQTtTQUVBOzs4Q0FFQTtvREFDQTtBQUVBO0FBSkE7QUFGQSIsImZpbGUiOiIxMi5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PGxpPlxuXHRcdDxhIEBjbGljaz1cImRpc3BhdGNoVG9TdG9yZVwiIHYtaWY9XCJpdGVtLmhyZWZcIiA6aHJlZj1cIihpdGVtLmhyZWYpID8gaXRlbS5ocmVmIDogJyMnIFwiPlxuXHRcdFx0PHNwYW4gOmNsYXNzPVwiaXRlbS5pY29uXCI+PC9zcGFuPlxuXHRcdFx0PHNwYW4+e3tpdGVtLnRleHR9fTwvc3Bhbj5cblx0XHQ8L2E+XG5cdFx0PGJ1dHRvbiBAY2xpY2s9XCJkaXNwYXRjaFRvU3RvcmUoaXRlbS5hY3Rpb24pXCIgdi1lbHNlPlxuXHRcdFx0PHNwYW4gOmNsYXNzPVwiaXRlbS5pY29uXCI+PC9zcGFuPlxuXHRcdFx0PHNwYW4+e3tpdGVtLnRleHR9fTwvc3Bhbj5cblx0XHQ8L2J1dHRvbj5cblx0PC9saT5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5leHBvcnQgZGVmYXVsdCB7XG5cdHByb3BzOiBbJ2l0ZW0nXSxcblx0bWV0aG9kczoge1xuXHRcdGRpc3BhdGNoVG9TdG9yZSAoKSB7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCh0aGlzLml0ZW0uYWN0aW9uLCB0aGlzLml0ZW0uZGF0YSk7XG5cdFx0fVxuXHR9XG59XG48L3NjcmlwdD5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS9wb3BvdmVySXRlbS52dWUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///12\n"); +eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tprops: ['item']\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvcG9wb3Zlck1lbnUvcG9wb3Zlckl0ZW0udnVlPzZkN2IiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFjQTtTQUVBO0FBREEiLCJmaWxlIjoiMTIuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDxsaT5cblx0XHQ8YSBAY2xpY2s9XCJpdGVtLmFjdGlvblwiIHYtaWY9XCJpdGVtLmhyZWZcIiA6aHJlZj1cIihpdGVtLmhyZWYpID8gaXRlbS5ocmVmIDogJyMnIFwiPlxuXHRcdFx0PHNwYW4gOmNsYXNzPVwiaXRlbS5pY29uXCI+PC9zcGFuPlxuXHRcdFx0PHNwYW4+e3tpdGVtLnRleHR9fTwvc3Bhbj5cblx0XHQ8L2E+XG5cdFx0PGJ1dHRvbiBAY2xpY2s9XCJpdGVtLmFjdGlvblwiIHYtZWxzZT5cblx0XHRcdDxzcGFuIDpjbGFzcz1cIml0ZW0uaWNvblwiPjwvc3Bhbj5cblx0XHRcdDxzcGFuPnt7aXRlbS50ZXh0fX08L3NwYW4+XG5cdFx0PC9idXR0b24+XG5cdDwvbGk+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuZXhwb3J0IGRlZmF1bHQge1xuXHRwcm9wczogWydpdGVtJ11cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL3BvcG92ZXJNZW51L3BvcG92ZXJJdGVtLnZ1ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///12\n"); /***/ }), /* 13 */ @@ -162,14 +162,14 @@ eval("function validate(binding) {\r\n if (typeof binding.value !== 'function') /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__userList_userRow__ = __webpack_require__(45);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_multiselect__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_multiselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_multiselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading__ = __webpack_require__(47);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading__);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'userList',\n\tprops: ['users', 'showConfig'],\n\tcomponents: {\n\t\tuserRow: __WEBPACK_IMPORTED_MODULE_0__userList_userRow__[\"a\" /* default */],\n\t\tMultiselect: __WEBPACK_IMPORTED_MODULE_1_vue_multiselect___default.a,\n\t\tInfiniteLoading: __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading___default.a\n\t},\n\tdata: function data() {\n\t\tvar unlimitedQuota = { id: 'none', label: t('settings', 'Unlimited') },\n\t\t defaultQuota = { id: 'default', label: t('settings', 'Default quota') };\n\t\treturn {\n\t\t\tunlimitedQuota: unlimitedQuota,\n\t\t\tdefaultQuota: defaultQuota,\n\t\t\tloading: false,\n\t\t\tscrolled: false,\n\t\t\tnewUser: {\n\t\t\t\tid: '',\n\t\t\t\tdisplayName: '',\n\t\t\t\tpassword: '',\n\t\t\t\tmailAddress: '',\n\t\t\t\tgroups: [],\n\t\t\t\tsubAdminsGroups: [],\n\t\t\t\tquota: defaultQuota\n\t\t\t}\n\t\t};\n\t},\n\tmounted: function 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\t},\n\n\tcomputed: {\n\t\tsettings: function settings() {\n\t\t\treturn this.$store.getters.getServerData;\n\t\t},\n\t\tgroups: function groups() {\n\t\t\t// data provided php side + remove the disabled group\n\t\t\treturn this.$store.getters.getGroups.filter(function (group) {\n\t\t\t\treturn group.id !== '_disabled';\n\t\t\t});\n\t\t},\n\t\tsubAdminsGroups: function subAdminsGroups() {\n\t\t\t// data provided php side\n\t\t\treturn this.$store.getters.getServerData.subadmingroups;\n\t\t},\n\t\tquotaOptions: function quotaOptions() {\n\t\t\t// convert the preset array into objects\n\t\t\tvar quotaPreset = this.settings.quotaPreset.reduce(function (acc, cur) {\n\t\t\t\treturn acc.concat({ id: cur, label: cur });\n\t\t\t}, []);\n\t\t\t// add default presets\n\t\t\tquotaPreset.unshift(this.unlimitedQuota);\n\t\t\tquotaPreset.unshift(this.defaultQuota);\n\t\t\treturn quotaPreset;\n\t\t},\n\t\tminPasswordLength: function minPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength;\n\t\t},\n\t\tusersOffset: function usersOffset() {\n\t\t\treturn this.$store.getters.getUsersOffset;\n\t\t},\n\t\tusersLimit: function usersLimit() {\n\t\t\treturn this.$store.getters.getUsersLimit;\n\t\t}\n\t},\n\tmethods: {\n\t\tonScroll: function onScroll(event) {\n\t\t\tthis.scrolled = event.target.scrollTop > 0;\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string} quota Quota in readable format '5 GB'\n * @returns {Object}\n */\n\t\tvalidateQuota: function validateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tvar 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\treturn this.newUser.quota = { id: quota, label: quota };\n\t\t\t}\n\t\t\t// Default is unlimited\n\t\t\treturn this.newUser.quota = this.quotaOptions[0];\n\t\t},\n\t\tinfiniteHandler: function infiniteHandler($state) {\n\t\t\tthis.$store.dispatch('getUsers', { offset: this.usersOffset, limit: this.usersLimit }).then(function (response) {\n\t\t\t\tresponse ? $state.loaded() : $state.complete();\n\t\t\t});\n\t\t},\n\t\tresetForm: function resetForm() {\n\t\t\t// revert form to original state\n\t\t\tObject.assign(this.newUser, this.$options.data.call(this).newUser);\n\t\t\tthis.loading = false;\n\t\t},\n\t\tcreateUser: function createUser() {\n\t\t\tvar _this = this;\n\n\t\t\tthis.loading = true;\n\t\t\tthis.$store.dispatch('addUser', {\n\t\t\t\tuserid: this.newUser.id,\n\t\t\t\tpassword: this.newUser.password,\n\t\t\t\temail: this.newUser.mailAddress,\n\t\t\t\tgroups: this.newUser.groups.map(function (group) {\n\t\t\t\t\treturn group.id;\n\t\t\t\t})\n\t\t\t}).then(function () {\n\t\t\t\treturn _this.resetForm();\n\t\t\t});\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QudnVlP2JjNTEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBOEZBO0FBQ0E7QUFDQTs7QUFFQTtPQUVBO2tCQUNBOztBQUVBO0FBQ0E7QUFFQTtBQUpBO3VCQUtBOzBEQUNBOzJEQUNBOzttQkFFQTtpQkFDQTtZQUNBO2FBQ0E7O1FBRUE7aUJBQ0E7Y0FDQTtpQkFDQTtZQUNBO3FCQUNBO1dBR0E7QUFUQTtBQUxBO0FBZUE7NkJBQ0E7d0NBQ0E7K0NBQ0E7QUFDQTtBQUNBOzs7Z0NBRUE7OEJBQ0E7QUFDQTs0QkFDQTtBQUNBOzt3QkFDQTs7QUFDQTs4Q0FDQTtBQUNBOzRDQUNBO0FBQ0E7d0NBQ0E7QUFDQTs7O01BQ0E7QUFDQTs0QkFDQTs0QkFDQTtVQUNBO0FBQ0E7a0RBQ0E7OEJBQ0E7QUFDQTtzQ0FDQTs4QkFDQTtBQUNBO29DQUNBOzhCQUNBO0FBRUE7QUE3QkE7O3FDQStCQTs0Q0FDQTtBQUVBOzs7QUFNQTs7Ozs7OytDQUNBO0FBQ0E7NkNBQ0E7OENBQ0E7QUFDQTsyREFDQTtvREFDQTtBQUNBO0FBQ0E7aURBQ0E7QUFFQTtvREFDQTs0RUFDQTs7QUFDQTtBQUVBO2tDQUNBO0FBQ0E7NkRBQ0E7a0JBQ0E7QUFDQTs7QUFDQTs7a0JBQ0E7O3lCQUVBOzJCQUNBO3dCQUNBOztrQkFDQTs7QUFKQTtpQkFLQTs7QUFFQTtBQTFDQTtBQTlEQSIsImZpbGUiOiIxNC5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PGRpdiBpZD1cImFwcC1jb250ZW50XCIgY2xhc3M9XCJ1c2VyLWxpc3QtZ3JpZFwiIHYtb246c2Nyb2xsLnBhc3NpdmU9XCJvblNjcm9sbFwiPlxuXHRcdDxkaXYgY2xhc3M9XCJyb3dcIiBpZD1cImdyaWQtaGVhZGVyXCIgOmNsYXNzPVwieydzdGlja3knOiBzY3JvbGxlZCAmJiAhc2hvd0NvbmZpZy5zaG93TmV3VXNlckZvcm19XCI+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyQXZhdGFyXCIgY2xhc3M9XCJhdmF0YXJcIj48L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJOYW1lXCIgY2xhc3M9XCJuYW1lXCI+e3sgdCgnc2V0dGluZ3MnLCAnVXNlcm5hbWUnKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBpZD1cImhlYWRlckRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkaXNwbGF5TmFtZVwiPnt7IHQoJ3NldHRpbmdzJywgICdGdWxsIG5hbWUnKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBpZD1cImhlYWRlclBhc3N3b3JkXCIgY2xhc3M9XCJwYXNzd29yZFwiPnt7IHQoJ3NldHRpbmdzJywgICdQYXNzd29yZCcpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyQWRkcmVzc1wiIGNsYXNzPVwibWFpbEFkZHJlc3NcIj57eyB0KCdzZXR0aW5ncycsICAnRW1haWwnKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBpZD1cImhlYWRlckdyb3Vwc1wiIGNsYXNzPVwiZ3JvdXBzXCI+e3sgdCgnc2V0dGluZ3MnLCAgJ0dyb3VwcycpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyU3ViQWRtaW5zXCIgY2xhc3M9XCJzdWJhZG1pbnNcIlxuXHRcdFx0XHQgdi1pZj1cInN1YkFkbWluc0dyb3Vwcy5sZW5ndGg+MFwiPnt7IHQoJ3NldHRpbmdzJywgJ0dyb3VwIGFkbWluIGZvcicpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyUXVvdGFcIiBjbGFzcz1cInF1b3RhXCI+e3sgdCgnc2V0dGluZ3MnLCAnUXVvdGEnKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImhlYWRlclN0b3JhZ2VMb2NhdGlvbiBzdG9yYWdlTG9jYXRpb25cIlxuXHRcdFx0XHQgdi1pZj1cInNob3dDb25maWcuc2hvd1N0b3JhZ2VQYXRoXCI+e3sgdCgnc2V0dGluZ3MnLCAnU3RvcmFnZSBsb2NhdGlvbicpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiaGVhZGVyVXNlckJhY2tlbmQgdXNlckJhY2tlbmRcIlxuXHRcdFx0XHQgdi1pZj1cInNob3dDb25maWcuc2hvd1VzZXJCYWNrZW5kXCI+e3sgdCgnc2V0dGluZ3MnLCAnVXNlciBiYWNrZW5kJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJoZWFkZXJMYXN0TG9naW4gbGFzdExvZ2luXCIgXG5cdFx0XHRcdCB2LWlmPVwic2hvd0NvbmZpZy5zaG93TGFzdExvZ2luXCI+e3sgdCgnc2V0dGluZ3MnLCAnTGFzdCBsb2dpbicpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwidXNlckFjdGlvbnNcIj48L2Rpdj5cblx0XHQ8L2Rpdj5cblxuXHRcdDxmb3JtIGNsYXNzPVwicm93XCIgaWQ9XCJuZXctdXNlclwiIHYtc2hvdz1cInNob3dDb25maWcuc2hvd05ld1VzZXJGb3JtXCJcblx0XHRcdCAgdi1vbjpzdWJtaXQucHJldmVudD1cImNyZWF0ZVVzZXJcIiA6ZGlzYWJsZWQ9XCJsb2FkaW5nXCJcblx0XHRcdCAgOmNsYXNzPVwieydzdGlja3knOiBzY3JvbGxlZCAmJiBzaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybX1cIj5cblx0XHRcdDxkaXYgOmNsYXNzPVwibG9hZGluZz8naWNvbi1sb2FkaW5nLXNtYWxsJzonaWNvbi1hZGQnXCI+PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibmFtZVwiPlxuXHRcdFx0XHQ8aW5wdXQgaWQ9XCJuZXd1c2VybmFtZVwiIHR5cGU9XCJ0ZXh0XCIgcmVxdWlyZWQgdi1tb2RlbD1cIm5ld1VzZXIuaWRcIlxuXHRcdFx0XHRcdCAgIDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ1VzZXIgbmFtZScpXCIgbmFtZT1cInVzZXJuYW1lXCJcblx0XHRcdFx0XHQgICBhdXRvY29tcGxldGU9XCJvZmZcIiBhdXRvY2FwaXRhbGl6ZT1cIm5vbmVcIiBhdXRvY29ycmVjdD1cIm9mZlwiXG5cdFx0XHRcdFx0ICAgcGF0dGVybj1cIlthLXpBLVowLTkgX1xcLkBcXC0nXStcIj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImRpc3BsYXlOYW1lXCI+XG5cdFx0XHRcdDxpbnB1dCBpZD1cIm5ld2Rpc3BsYXluYW1lXCIgdHlwZT1cInRleHRcIiB2LW1vZGVsPVwibmV3VXNlci5kaXNwbGF5TmFtZVwiXG5cdFx0XHRcdFx0ICAgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnRGlzcGxheSBuYW1lJylcIiBuYW1lPVwiZGlzcGxheW5hbWVcIlxuXHRcdFx0XHRcdCAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiIGF1dG9jYXBpdGFsaXplPVwibm9uZVwiIGF1dG9jb3JyZWN0PVwib2ZmXCI+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJwYXNzd29yZFwiPlxuXHRcdFx0XHQ8aW5wdXQgaWQ9XCJuZXd1c2VycGFzc3dvcmRcIiB0eXBlPVwicGFzc3dvcmRcIiB2LW1vZGVsPVwibmV3VXNlci5wYXNzd29yZFwiXG5cdFx0XHRcdFx0ICAgOnJlcXVpcmVkPVwibmV3VXNlci5tYWlsQWRkcmVzcz09PScnXCJcblx0XHRcdFx0XHQgICA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdQYXNzd29yZCcpXCIgbmFtZT1cInBhc3N3b3JkXCJcblx0XHRcdFx0XHQgICBhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIiBhdXRvY2FwaXRhbGl6ZT1cIm5vbmVcIiBhdXRvY29ycmVjdD1cIm9mZlwiXG5cdFx0XHRcdFx0ICAgOm1pbmxlbmd0aD1cIm1pblBhc3N3b3JkTGVuZ3RoXCI+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJtYWlsQWRkcmVzc1wiPlxuXHRcdFx0XHQ8aW5wdXQgaWQ9XCJuZXdlbWFpbFwiIHR5cGU9XCJlbWFpbFwiIHYtbW9kZWw9XCJuZXdVc2VyLm1haWxBZGRyZXNzXCJcblx0XHRcdFx0XHQgICA6cmVxdWlyZWQ9XCJuZXdVc2VyLnBhc3N3b3JkPT09JydcIlxuXHRcdFx0XHRcdCAgIDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ01haWwgYWRkcmVzcycpXCIgbmFtZT1cImVtYWlsXCJcblx0XHRcdFx0XHQgICBhdXRvY29tcGxldGU9XCJvZmZcIiBhdXRvY2FwaXRhbGl6ZT1cIm5vbmVcIiBhdXRvY29ycmVjdD1cIm9mZlwiPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZ3JvdXBzXCI+XG5cdFx0XHRcdDxtdWx0aXNlbGVjdCA6b3B0aW9ucz1cImdyb3Vwc1wiIHYtbW9kZWw9XCJuZXdVc2VyLmdyb3Vwc1wiXG5cdFx0XHRcdFx0XHRcdCA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdBZGQgdXNlciBpbiBncm91cCcpXCJcblx0XHRcdFx0XHRcdFx0IGxhYmVsPVwibmFtZVwiIHRyYWNrLWJ5PVwiaWRcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHRcdCA6bXVsdGlwbGU9XCJ0cnVlXCIgOmNsb3NlLW9uLXNlbGVjdD1cImZhbHNlXCI+XG5cdFx0XHRcdFx0PHNwYW4gc2xvdD1cIm5vUmVzdWx0XCI+e3t0KCdzZXR0aW5ncycsJ05vIHJlc3VsdCcpfX08L3NwYW4+XG5cdFx0XHRcdDwvbXVsdGlzZWxlY3Q+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJzdWJhZG1pbnNcIiB2LWlmPVwic3ViQWRtaW5zR3JvdXBzLmxlbmd0aD4wXCI+XG5cdFx0XHRcdDxtdWx0aXNlbGVjdCA6b3B0aW9ucz1cInN1YkFkbWluc0dyb3Vwc1wiIHYtbW9kZWw9XCJuZXdVc2VyLnN1YkFkbWluc0dyb3Vwc1wiXG5cdFx0XHRcdFx0XHRcdCA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdTZXQgdXNlciBhcyBhZG1pbiBmb3InKVwiXG5cdFx0XHRcdFx0XHRcdCBsYWJlbD1cIm5hbWVcIiB0cmFjay1ieT1cImlkXCIgY2xhc3M9XCJtdWx0aXNlbGVjdC12dWVcIlxuXHRcdFx0XHRcdFx0XHQgOm11bHRpcGxlPVwidHJ1ZVwiIDpjbG9zZS1vbi1zZWxlY3Q9XCJmYWxzZVwiPlxuXHRcdFx0XHRcdDxzcGFuIHNsb3Q9XCJub1Jlc3VsdFwiPnt7dCgnc2V0dGluZ3MnLCdObyByZXN1bHQnKX19PC9zcGFuPlxuXHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cInF1b3RhXCI+XG5cdFx0XHRcdDxtdWx0aXNlbGVjdCA6b3B0aW9ucz1cInF1b3RhT3B0aW9uc1wiIHYtbW9kZWw9XCJuZXdVc2VyLnF1b3RhXCJcblx0XHRcdFx0XHRcdFx0IDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ1NlbGVjdCB1c2VyIHF1b3RhJylcIlxuXHRcdFx0XHRcdFx0XHQgbGFiZWw9XCJsYWJlbFwiIHRyYWNrLWJ5PVwiaWRcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHRcdCA6YWxsb3dFbXB0eT1cImZhbHNlXCIgOnRhZ2dhYmxlPVwidHJ1ZVwiXG5cdFx0XHRcdFx0XHQgXHQgQHRhZz1cInZhbGlkYXRlUXVvdGFcIiA+XG5cdFx0XHRcdDwvbXVsdGlzZWxlY3Q+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJzdG9yYWdlTG9jYXRpb25cIiB2LWlmPVwic2hvd0NvbmZpZy5zaG93U3RvcmFnZVBhdGhcIj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJ1c2VyQmFja2VuZFwiIHYtaWY9XCJzaG93Q29uZmlnLnNob3dVc2VyQmFja2VuZFwiPjwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImxhc3RMb2dpblwiIHYtaWY9XCJzaG93Q29uZmlnLnNob3dMYXN0TG9naW5cIj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJ1c2VyQWN0aW9uc1wiPlxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIGlkPVwibmV3c3VibWl0XCIgY2xhc3M9XCJidXR0b24gcHJpbWFyeSBpY29uLWNoZWNrbWFyay13aGl0ZSBoYXMtdG9vbHRpcFwiXG5cdFx0XHRcdFx0ICAgdmFsdWU9XCJcIiA6dGl0bGU9XCJ0KCdzZXR0aW5ncycsICdBZGQgYSBuZXcgdXNlcicpXCI+XG5cdFx0XHRcdDxpbnB1dCB0eXBlPVwicmVzZXRcIiBpZD1cIm5ld3Jlc2V0XCIgY2xhc3M9XCJidXR0b24gaWNvbi1jbG9zZSBoYXMtdG9vbHRpcFwiIEBjbGljaz1cInJlc2V0Rm9ybVwiXG5cdFx0XHRcdFx0ICAgdmFsdWU9XCJcIiA6dGl0bGU9XCJ0KCdzZXR0aW5ncycsICdDYW5jZWwgYW5kIHJlc2V0IHRoZSBmb3JtJylcIj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZm9ybT5cblxuXHRcdDx1c2VyLXJvdyB2LWZvcj1cIih1c2VyLCBrZXkpIGluIHVzZXJzXCIgOnVzZXI9XCJ1c2VyXCIgOmtleT1cImtleVwiIDpzZXR0aW5ncz1cInNldHRpbmdzXCIgOnNob3dDb25maWc9XCJzaG93Q29uZmlnXCJcblx0XHRcdFx0ICA6Z3JvdXBzPVwiZ3JvdXBzXCIgOnN1YkFkbWluc0dyb3Vwcz1cInN1YkFkbWluc0dyb3Vwc1wiIDpxdW90YU9wdGlvbnM9XCJxdW90YU9wdGlvbnNcIiAvPlxuXHRcdDxpbmZpbml0ZS1sb2FkaW5nIEBpbmZpbml0ZT1cImluZmluaXRlSGFuZGxlclwiPlxuXHRcdFx0PHNwYW4gc2xvdD1cInNwaW5uZXJcIj48ZGl2IGNsYXNzPVwidXNlcnMtaWNvbi1sb2FkaW5nXCI+PC9kaXY+PC9zcGFuPlxuXHRcdFx0PHNwYW4gc2xvdD1cIm5vLW1vcmVcIj48ZGl2IGNsYXNzPVwidXNlcnMtbGlzdC1lbmRcIj7igJQge3t0KCdzZXR0aW5ncycsICdubyBtb3JlIHJlc3VsdHMnKX19IOKAlDwvZGl2Pjwvc3Bhbj5cblx0XHQ8L2luZmluaXRlLWxvYWRpbmc+XG5cdDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCB1c2VyUm93IGZyb20gJy4vdXNlckxpc3QvdXNlclJvdyc7XG5pbXBvcnQgTXVsdGlzZWxlY3QgZnJvbSAndnVlLW11bHRpc2VsZWN0JztcbmltcG9ydCBJbmZpbml0ZUxvYWRpbmcgZnJvbSAndnVlLWluZmluaXRlLWxvYWRpbmcnO1xuXG5leHBvcnQgZGVmYXVsdCB7XG5cdG5hbWU6ICd1c2VyTGlzdCcsXG5cdHByb3BzOiBbJ3VzZXJzJywgJ3Nob3dDb25maWcnXSxcblx0Y29tcG9uZW50czoge1xuXHRcdHVzZXJSb3csXG5cdFx0TXVsdGlzZWxlY3QsXG5cdFx0SW5maW5pdGVMb2FkaW5nXG5cdH0sXG5cdGRhdGEoKSB7XG5cdFx0bGV0IHVubGltaXRlZFF1b3RhID0ge2lkOidub25lJywgbGFiZWw6dCgnc2V0dGluZ3MnLCAnVW5saW1pdGVkJyl9LFxuXHRcdFx0ZGVmYXVsdFF1b3RhID0ge2lkOidkZWZhdWx0JywgbGFiZWw6dCgnc2V0dGluZ3MnLCAnRGVmYXVsdCBxdW90YScpfTtcblx0XHRyZXR1cm4ge1xuXHRcdFx0dW5saW1pdGVkUXVvdGE6IHVubGltaXRlZFF1b3RhLFxuXHRcdFx0ZGVmYXVsdFF1b3RhOiBkZWZhdWx0UXVvdGEsXG5cdFx0XHRsb2FkaW5nOiBmYWxzZSxcblx0XHRcdHNjcm9sbGVkOiBmYWxzZSxcblx0XHRcdG5ld1VzZXI6IHtcblx0XHRcdFx0aWQ6JycsXG5cdFx0XHRcdGRpc3BsYXlOYW1lOicnLFxuXHRcdFx0XHRwYXNzd29yZDonJyxcblx0XHRcdFx0bWFpbEFkZHJlc3M6JycsXG5cdFx0XHRcdGdyb3VwczogW10sXG5cdFx0XHRcdHN1YkFkbWluc0dyb3VwczogW10sXG5cdFx0XHRcdHF1b3RhOiBkZWZhdWx0UXVvdGFcblx0XHRcdH1cblx0XHR9O1xuXHR9LFxuXHRtb3VudGVkKCkge1xuXHRcdGlmICghdGhpcy5zZXR0aW5ncy5jYW5DaGFuZ2VQYXNzd29yZCkge1xuXHRcdFx0T0MuTm90aWZpY2F0aW9uLnNob3dUZW1wb3JhcnkodCgnc2V0dGluZ3MnLCdQYXNzd29yZCBjaGFuZ2UgaXMgZGlzYWJsZWQgYmVjYXVzZSB0aGUgbWFzdGVyIGtleSBpcyBkaXNhYmxlZCcpKTtcblx0XHR9XG5cdH0sXG5cdGNvbXB1dGVkOiB7XG5cdFx0c2V0dGluZ3MoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRTZXJ2ZXJEYXRhO1xuXHRcdH0sXG5cdFx0Z3JvdXBzKCkge1xuXHRcdFx0Ly8gZGF0YSBwcm92aWRlZCBwaHAgc2lkZSArIHJlbW92ZSB0aGUgZGlzYWJsZWQgZ3JvdXBcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldEdyb3Vwcy5maWx0ZXIoZ3JvdXAgPT4gZ3JvdXAuaWQgIT09ICdfZGlzYWJsZWQnKTtcblx0XHR9LFxuXHRcdHN1YkFkbWluc0dyb3VwcygpIHtcblx0XHRcdC8vIGRhdGEgcHJvdmlkZWQgcGhwIHNpZGVcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFNlcnZlckRhdGEuc3ViYWRtaW5ncm91cHM7XG5cdFx0fSxcblx0XHRxdW90YU9wdGlvbnMoKSB7XG5cdFx0XHQvLyBjb252ZXJ0IHRoZSBwcmVzZXQgYXJyYXkgaW50byBvYmplY3RzXG5cdFx0XHRsZXQgcXVvdGFQcmVzZXQgPSB0aGlzLnNldHRpbmdzLnF1b3RhUHJlc2V0LnJlZHVjZSgoYWNjLCBjdXIpID0+IGFjYy5jb25jYXQoe2lkOmN1ciwgbGFiZWw6Y3VyfSksIFtdKTtcblx0XHRcdC8vIGFkZCBkZWZhdWx0IHByZXNldHNcblx0XHRcdHF1b3RhUHJlc2V0LnVuc2hpZnQodGhpcy51bmxpbWl0ZWRRdW90YSk7XG5cdFx0XHRxdW90YVByZXNldC51bnNoaWZ0KHRoaXMuZGVmYXVsdFF1b3RhKTtcblx0XHRcdHJldHVybiBxdW90YVByZXNldDtcblx0XHR9LFxuXHRcdG1pblBhc3N3b3JkTGVuZ3RoKCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGg7XG5cdFx0fSxcblx0XHR1c2Vyc09mZnNldCgpIHtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFVzZXJzT2Zmc2V0O1xuXHRcdH0sXG5cdFx0dXNlcnNMaW1pdCgpIHtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFVzZXJzTGltaXQ7XG5cdFx0fSwgXG5cdH0sXG5cdG1ldGhvZHM6IHtcblx0XHRvblNjcm9sbChldmVudCkge1xuXHRcdFx0dGhpcy5zY3JvbGxlZCA9IGV2ZW50LnRhcmdldC5zY3JvbGxUb3A+MDtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogVmFsaWRhdGUgcXVvdGEgc3RyaW5nIHRvIG1ha2Ugc3VyZSBpdCdzIGEgdmFsaWQgaHVtYW4gZmlsZSBzaXplXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd9IHF1b3RhIFF1b3RhIGluIHJlYWRhYmxlIGZvcm1hdCAnNSBHQidcblx0XHQgKiBAcmV0dXJucyB7T2JqZWN0fVxuXHRcdCAqL1xuXHRcdHZhbGlkYXRlUXVvdGEocXVvdGEpIHtcblx0XHRcdC8vIG9ubHkgdXNlZCBmb3IgbmV3IHByZXNldHMgc2VudCB0aHJvdWdoIEBUYWdcblx0XHRcdGxldCB2YWxpZFF1b3RhID0gT0MuVXRpbC5jb21wdXRlckZpbGVTaXplKHF1b3RhKTtcblx0XHRcdGlmICh2YWxpZFF1b3RhICE9PSBudWxsICYmIHZhbGlkUXVvdGEgPiAwKSB7XG5cdFx0XHRcdC8vIHVuaWZ5IGZvcm1hdCBvdXRwdXRcblx0XHRcdFx0cXVvdGEgPSBPQy5VdGlsLmh1bWFuRmlsZVNpemUoT0MuVXRpbC5jb21wdXRlckZpbGVTaXplKHF1b3RhKSk7XG5cdFx0XHRcdHJldHVybiB0aGlzLm5ld1VzZXIucXVvdGEgPSB7aWQ6IHF1b3RhLCBsYWJlbDogcXVvdGF9O1xuXHRcdFx0fVxuXHRcdFx0Ly8gRGVmYXVsdCBpcyB1bmxpbWl0ZWRcblx0XHRcdHJldHVybiB0aGlzLm5ld1VzZXIucXVvdGEgPSB0aGlzLnF1b3RhT3B0aW9uc1swXTtcblx0XHR9LFxuXG5cdFx0aW5maW5pdGVIYW5kbGVyKCRzdGF0ZSkge1xuXHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2dldFVzZXJzJywge29mZnNldDp0aGlzLnVzZXJzT2Zmc2V0LCBsaW1pdDp0aGlzLnVzZXJzTGltaXR9KVxuXHRcdFx0XHQudGhlbigocmVzcG9uc2UpID0+IHtyZXNwb25zZT8kc3RhdGUubG9hZGVkKCk6JHN0YXRlLmNvbXBsZXRlKCl9KTtcblx0XHR9LFxuXG5cdFx0cmVzZXRGb3JtICgpIHtcblx0XHRcdC8vIHJldmVydCBmb3JtIHRvIG9yaWdpbmFsIHN0YXRlXG5cdFx0XHRPYmplY3QuYXNzaWduKHRoaXMubmV3VXNlciwgdGhpcy4kb3B0aW9ucy5kYXRhLmNhbGwodGhpcykubmV3VXNlcik7XG5cdFx0XHR0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgfSxcblx0XHRjcmVhdGVVc2VyKCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nID0gdHJ1ZTtcblx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhZGRVc2VyJywge1xuXHRcdFx0XHR1c2VyaWQ6IHRoaXMubmV3VXNlci5pZCxcblx0XHRcdFx0cGFzc3dvcmQ6IHRoaXMubmV3VXNlci5wYXNzd29yZCxcblx0XHRcdFx0ZW1haWw6IHRoaXMubmV3VXNlci5tYWlsQWRkcmVzcyxcblx0XHRcdFx0Z3JvdXBzOiB0aGlzLm5ld1VzZXIuZ3JvdXBzLm1hcChncm91cCA9PiBncm91cC5pZClcblx0XHRcdH0pLnRoZW4oKCkgPT50aGlzLnJlc2V0Rm9ybSgpKTtcblx0XHR9XG5cdH1cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL3VzZXJMaXN0LnZ1ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///14\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__userList_userRow__ = __webpack_require__(45);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_multiselect__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_multiselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_multiselect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading__ = __webpack_require__(47);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading__);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'userList',\n\tprops: ['users', 'showConfig'],\n\tcomponents: {\n\t\tuserRow: __WEBPACK_IMPORTED_MODULE_0__userList_userRow__[\"a\" /* default */],\n\t\tMultiselect: __WEBPACK_IMPORTED_MODULE_1_vue_multiselect___default.a,\n\t\tInfiniteLoading: __WEBPACK_IMPORTED_MODULE_2_vue_infinite_loading___default.a\n\t},\n\tdata: function data() {\n\t\tvar unlimitedQuota = { id: 'none', label: t('settings', 'Unlimited') },\n\t\t defaultQuota = { id: 'default', label: t('settings', 'Default quota') };\n\t\treturn {\n\t\t\tunlimitedQuota: unlimitedQuota,\n\t\t\tdefaultQuota: defaultQuota,\n\t\t\tloading: false,\n\t\t\tscrolled: false,\n\t\t\tnewUser: {\n\t\t\t\tid: '',\n\t\t\t\tdisplayName: '',\n\t\t\t\tpassword: '',\n\t\t\t\tmailAddress: '',\n\t\t\t\tgroups: [],\n\t\t\t\tsubAdminsGroups: [],\n\t\t\t\tquota: defaultQuota\n\t\t\t}\n\t\t};\n\t},\n\tmounted: function 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\t},\n\n\tcomputed: {\n\t\tsettings: function settings() {\n\t\t\treturn this.$store.getters.getServerData;\n\t\t},\n\t\tfilteredUsers: function filteredUsers() {\n\t\t\tif (this.route.hash === '#group_disabled') {\n\t\t\t\treturn this.users.filter(function (user) {\n\t\t\t\t\treturn user.enabled !== true;\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn this.users.filter(function (user) {\n\t\t\t\treturn user.enabled === true;\n\t\t\t});\n\t\t},\n\t\tgroups: function groups() {\n\t\t\t// data provided php side + remove the disabled group\n\t\t\treturn this.$store.getters.getGroups.filter(function (group) {\n\t\t\t\treturn group.id !== '_disabled';\n\t\t\t});\n\t\t},\n\t\tsubAdminsGroups: function subAdminsGroups() {\n\t\t\t// data provided php side\n\t\t\treturn this.$store.getters.getServerData.subadmingroups;\n\t\t},\n\t\tquotaOptions: function quotaOptions() {\n\t\t\t// convert the preset array into objects\n\t\t\tvar quotaPreset = this.settings.quotaPreset.reduce(function (acc, cur) {\n\t\t\t\treturn acc.concat({ id: cur, label: cur });\n\t\t\t}, []);\n\t\t\t// add default presets\n\t\t\tquotaPreset.unshift(this.unlimitedQuota);\n\t\t\tquotaPreset.unshift(this.defaultQuota);\n\t\t\treturn quotaPreset;\n\t\t},\n\t\tminPasswordLength: function minPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength;\n\t\t},\n\t\tusersOffset: function usersOffset() {\n\t\t\treturn this.$store.getters.getUsersOffset;\n\t\t},\n\t\tusersLimit: function usersLimit() {\n\t\t\treturn this.$store.getters.getUsersLimit;\n\t\t},\n\t\troute: function route() {\n\t\t\treturn this.$store.getters.getRoute;\n\t\t},\n\n\t\t// get selected hash\n\t\tselectedGroup: function selectedGroup() {\n\t\t\tvar hash = this.route.hash;\n\t\t\tif (typeof hash === 'string' && hash.length > 0) {\n\t\t\t\t// we have a valid hash: groupXXXX\n\t\t\t\t// group_XXXX are reserved groups\n\t\t\t\tvar split = hash.split('group');\n\t\t\t\tif (split.length === 2 && split[1].charAt(0) !== '_') {\n\t\t\t\t\treturn hash.split('group')[1];\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\t},\n\twatch: {\n\t\t// watch url change and group select\n\t\tselectedGroup: function selectedGroup(val, old) {\n\t\t\tthis.$store.commit('resetUsers');\n\t\t\tthis.$refs.infiniteLoading.$emit('$InfiniteLoading:reset');\n\t\t}\n\t},\n\tmethods: {\n\t\tonScroll: function onScroll(event) {\n\t\t\tthis.scrolled = event.target.scrollTop > 0;\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string} quota Quota in readable format '5 GB'\n * @returns {Object}\n */\n\t\tvalidateQuota: function validateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tvar 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\treturn this.newUser.quota = { id: quota, label: quota };\n\t\t\t}\n\t\t\t// Default is unlimited\n\t\t\treturn this.newUser.quota = this.quotaOptions[0];\n\t\t},\n\t\tinfiniteHandler: function infiniteHandler($state) {\n\t\t\tthis.$store.dispatch('getUsers', { offset: this.usersOffset, limit: this.usersLimit, group: this.selectedGroup }).then(function (response) {\n\t\t\t\tresponse ? $state.loaded() : $state.complete();\n\t\t\t});\n\t\t},\n\t\tresetForm: function resetForm() {\n\t\t\t// revert form to original state\n\t\t\tObject.assign(this.newUser, this.$options.data.call(this).newUser);\n\t\t\tthis.loading = false;\n\t\t},\n\t\tcreateUser: function createUser() {\n\t\t\tvar _this = this;\n\n\t\t\tthis.loading = true;\n\t\t\tthis.$store.dispatch('addUser', {\n\t\t\t\tuserid: this.newUser.id,\n\t\t\t\tpassword: this.newUser.password,\n\t\t\t\temail: this.newUser.mailAddress,\n\t\t\t\tgroups: this.newUser.groups.map(function (group) {\n\t\t\t\t\treturn group.id;\n\t\t\t\t}),\n\t\t\t\tsubadmin: this.newUser.subAdminsGroups.map(function (group) {\n\t\t\t\t\treturn group.id;\n\t\t\t\t}),\n\t\t\t\tquota: this.newUser.quota.id\n\t\t\t}).then(function () {\n\t\t\t\treturn _this.resetForm();\n\t\t\t});\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QudnVlP2JjNTEiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0dBO0FBQ0E7QUFDQTs7QUFFQTtPQUVBO2tCQUNBOztBQUVBO0FBQ0E7QUFFQTtBQUpBO3VCQUtBOzBEQUNBOzJEQUNBOzttQkFFQTtpQkFDQTtZQUNBO2FBQ0E7O1FBRUE7aUJBQ0E7Y0FDQTtpQkFDQTtZQUNBO3FCQUNBO1dBR0E7QUFUQTtBQUxBO0FBZUE7NkJBQ0E7d0NBQ0E7K0NBQ0E7QUFDQTtBQUNBOzs7Z0NBRUE7OEJBQ0E7QUFDQTswQ0FDQTs4Q0FDQTs7NkJBQ0E7O0FBQ0E7OzRCQUNBOztBQUNBOzRCQUNBO0FBQ0E7O3dCQUNBOztBQUNBOzhDQUNBO0FBQ0E7NENBQ0E7QUFDQTt3Q0FDQTtBQUNBOzs7TUFDQTtBQUNBOzRCQUNBOzRCQUNBO1VBQ0E7QUFDQTtrREFDQTs4QkFDQTtBQUNBO3NDQUNBOzhCQUNBO0FBQ0E7b0NBQ0E7OEJBQ0E7QUFDQTswQkFDQTs4QkFDQTtBQUNBOztBQUNBOzBDQUNBO3lCQUNBO29EQUNBO0FBQ0E7QUFDQTsyQkFDQTswREFDQTtnQ0FDQTtBQUNBO0FBQ0E7VUFDQTtBQUVBO0FBbkRBOztBQXFEQTtrREFDQTtzQkFDQTtvQ0FDQTtBQUVBO0FBTkE7O3FDQVFBOzRDQUNBO0FBRUE7OztBQU1BOzs7Ozs7K0NBQ0E7QUFDQTs2Q0FDQTs4Q0FDQTtBQUNBOzJEQUNBO29EQUNBO0FBQ0E7QUFDQTtpREFDQTtBQUVBO29EQUNBO29HQUNBOztBQUNBO0FBRUE7a0NBQ0E7QUFDQTs2REFDQTtrQkFDQTtBQUNBOztBQUNBOztrQkFDQTs7eUJBRUE7MkJBQ0E7d0JBQ0E7O2tCQUNBOzs7a0JBQ0E7OzhCQUNBO0FBTkE7aUJBT0E7O0FBRUE7QUE1Q0E7QUEzRkEiLCJmaWxlIjoiMTQuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDxkaXYgaWQ9XCJhcHAtY29udGVudFwiIGNsYXNzPVwidXNlci1saXN0LWdyaWRcIiB2LW9uOnNjcm9sbC5wYXNzaXZlPVwib25TY3JvbGxcIj5cblx0XHQ8ZGl2IGNsYXNzPVwicm93XCIgaWQ9XCJncmlkLWhlYWRlclwiIDpjbGFzcz1cInsnc3RpY2t5Jzogc2Nyb2xsZWQgJiYgIXNob3dDb25maWcuc2hvd05ld1VzZXJGb3JtfVwiPlxuXHRcdFx0PGRpdiBpZD1cImhlYWRlckF2YXRhclwiIGNsYXNzPVwiYXZhdGFyXCI+PC9kaXY+XG5cdFx0XHQ8ZGl2IGlkPVwiaGVhZGVyTmFtZVwiIGNsYXNzPVwibmFtZVwiPnt7IHQoJ3NldHRpbmdzJywgJ1VzZXJuYW1lJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJEaXNwbGF5TmFtZVwiIGNsYXNzPVwiZGlzcGxheU5hbWVcIj57eyB0KCdzZXR0aW5ncycsICAnRnVsbCBuYW1lJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJQYXNzd29yZFwiIGNsYXNzPVwicGFzc3dvcmRcIj57eyB0KCdzZXR0aW5ncycsICAnUGFzc3dvcmQnKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBpZD1cImhlYWRlckFkZHJlc3NcIiBjbGFzcz1cIm1haWxBZGRyZXNzXCI+e3sgdCgnc2V0dGluZ3MnLCAgJ0VtYWlsJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoZWFkZXJHcm91cHNcIiBjbGFzcz1cImdyb3Vwc1wiPnt7IHQoJ3NldHRpbmdzJywgICdHcm91cHMnKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBpZD1cImhlYWRlclN1YkFkbWluc1wiIGNsYXNzPVwic3ViYWRtaW5zXCJcblx0XHRcdFx0IHYtaWY9XCJzdWJBZG1pbnNHcm91cHMubGVuZ3RoPjBcIj57eyB0KCdzZXR0aW5ncycsICdHcm91cCBhZG1pbiBmb3InKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBpZD1cImhlYWRlclF1b3RhXCIgY2xhc3M9XCJxdW90YVwiPnt7IHQoJ3NldHRpbmdzJywgJ1F1b3RhJykgfX08L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJoZWFkZXJTdG9yYWdlTG9jYXRpb24gc3RvcmFnZUxvY2F0aW9uXCJcblx0XHRcdFx0IHYtaWY9XCJzaG93Q29uZmlnLnNob3dTdG9yYWdlUGF0aFwiPnt7IHQoJ3NldHRpbmdzJywgJ1N0b3JhZ2UgbG9jYXRpb24nKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImhlYWRlclVzZXJCYWNrZW5kIHVzZXJCYWNrZW5kXCJcblx0XHRcdFx0IHYtaWY9XCJzaG93Q29uZmlnLnNob3dVc2VyQmFja2VuZFwiPnt7IHQoJ3NldHRpbmdzJywgJ1VzZXIgYmFja2VuZCcpIH19PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiaGVhZGVyTGFzdExvZ2luIGxhc3RMb2dpblwiIFxuXHRcdFx0XHQgdi1pZj1cInNob3dDb25maWcuc2hvd0xhc3RMb2dpblwiPnt7IHQoJ3NldHRpbmdzJywgJ0xhc3QgbG9naW4nKSB9fTwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cInVzZXJBY3Rpb25zXCI+PC9kaXY+XG5cdFx0PC9kaXY+XG5cblx0XHQ8Zm9ybSBjbGFzcz1cInJvd1wiIGlkPVwibmV3LXVzZXJcIiB2LXNob3c9XCJzaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybVwiXG5cdFx0XHQgIHYtb246c3VibWl0LnByZXZlbnQ9XCJjcmVhdGVVc2VyXCIgOmRpc2FibGVkPVwibG9hZGluZ1wiXG5cdFx0XHQgIDpjbGFzcz1cInsnc3RpY2t5Jzogc2Nyb2xsZWQgJiYgc2hvd0NvbmZpZy5zaG93TmV3VXNlckZvcm19XCI+XG5cdFx0XHQ8ZGl2IDpjbGFzcz1cImxvYWRpbmc/J2ljb24tbG9hZGluZy1zbWFsbCc6J2ljb24tYWRkJ1wiPjwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cIm5hbWVcIj5cblx0XHRcdFx0PGlucHV0IGlkPVwibmV3dXNlcm5hbWVcIiB0eXBlPVwidGV4dFwiIHJlcXVpcmVkIHYtbW9kZWw9XCJuZXdVc2VyLmlkXCJcblx0XHRcdFx0XHQgICA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdVc2VyIG5hbWUnKVwiIG5hbWU9XCJ1c2VybmFtZVwiXG5cdFx0XHRcdFx0ICAgYXV0b2NvbXBsZXRlPVwib2ZmXCIgYXV0b2NhcGl0YWxpemU9XCJub25lXCIgYXV0b2NvcnJlY3Q9XCJvZmZcIlxuXHRcdFx0XHRcdCAgIHBhdHRlcm49XCJbYS16QS1aMC05IF9cXC5AXFwtJ10rXCI+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJkaXNwbGF5TmFtZVwiPlxuXHRcdFx0XHQ8aW5wdXQgaWQ9XCJuZXdkaXNwbGF5bmFtZVwiIHR5cGU9XCJ0ZXh0XCIgdi1tb2RlbD1cIm5ld1VzZXIuZGlzcGxheU5hbWVcIlxuXHRcdFx0XHRcdCAgIDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ0Rpc3BsYXkgbmFtZScpXCIgbmFtZT1cImRpc3BsYXluYW1lXCJcblx0XHRcdFx0XHQgICBhdXRvY29tcGxldGU9XCJvZmZcIiBhdXRvY2FwaXRhbGl6ZT1cIm5vbmVcIiBhdXRvY29ycmVjdD1cIm9mZlwiPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwicGFzc3dvcmRcIj5cblx0XHRcdFx0PGlucHV0IGlkPVwibmV3dXNlcnBhc3N3b3JkXCIgdHlwZT1cInBhc3N3b3JkXCIgdi1tb2RlbD1cIm5ld1VzZXIucGFzc3dvcmRcIlxuXHRcdFx0XHRcdCAgIDpyZXF1aXJlZD1cIm5ld1VzZXIubWFpbEFkZHJlc3M9PT0nJ1wiXG5cdFx0XHRcdFx0ICAgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnUGFzc3dvcmQnKVwiIG5hbWU9XCJwYXNzd29yZFwiXG5cdFx0XHRcdFx0ICAgYXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCIgYXV0b2NhcGl0YWxpemU9XCJub25lXCIgYXV0b2NvcnJlY3Q9XCJvZmZcIlxuXHRcdFx0XHRcdCAgIDptaW5sZW5ndGg9XCJtaW5QYXNzd29yZExlbmd0aFwiPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibWFpbEFkZHJlc3NcIj5cblx0XHRcdFx0PGlucHV0IGlkPVwibmV3ZW1haWxcIiB0eXBlPVwiZW1haWxcIiB2LW1vZGVsPVwibmV3VXNlci5tYWlsQWRkcmVzc1wiXG5cdFx0XHRcdFx0ICAgOnJlcXVpcmVkPVwibmV3VXNlci5wYXNzd29yZD09PScnXCJcblx0XHRcdFx0XHQgICA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdNYWlsIGFkZHJlc3MnKVwiIG5hbWU9XCJlbWFpbFwiXG5cdFx0XHRcdFx0ICAgYXV0b2NvbXBsZXRlPVwib2ZmXCIgYXV0b2NhcGl0YWxpemU9XCJub25lXCIgYXV0b2NvcnJlY3Q9XCJvZmZcIj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImdyb3Vwc1wiPlxuXHRcdFx0XHQ8bXVsdGlzZWxlY3QgOm9wdGlvbnM9XCJncm91cHNcIiB2LW1vZGVsPVwibmV3VXNlci5ncm91cHNcIlxuXHRcdFx0XHRcdFx0XHQgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnQWRkIHVzZXIgaW4gZ3JvdXAnKVwiXG5cdFx0XHRcdFx0XHRcdCBsYWJlbD1cIm5hbWVcIiB0cmFjay1ieT1cImlkXCIgY2xhc3M9XCJtdWx0aXNlbGVjdC12dWVcIlxuXHRcdFx0XHRcdFx0XHQgOm11bHRpcGxlPVwidHJ1ZVwiIDpjbG9zZS1vbi1zZWxlY3Q9XCJmYWxzZVwiPlxuXHRcdFx0XHRcdDxzcGFuIHNsb3Q9XCJub1Jlc3VsdFwiPnt7dCgnc2V0dGluZ3MnLCdObyByZXN1bHQnKX19PC9zcGFuPlxuXHRcdFx0XHQ8L211bHRpc2VsZWN0PlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwic3ViYWRtaW5zXCIgdi1pZj1cInN1YkFkbWluc0dyb3Vwcy5sZW5ndGg+MFwiPlxuXHRcdFx0XHQ8bXVsdGlzZWxlY3QgOm9wdGlvbnM9XCJzdWJBZG1pbnNHcm91cHNcIiB2LW1vZGVsPVwibmV3VXNlci5zdWJBZG1pbnNHcm91cHNcIlxuXHRcdFx0XHRcdFx0XHQgOnBsYWNlaG9sZGVyPVwidCgnc2V0dGluZ3MnLCAnU2V0IHVzZXIgYXMgYWRtaW4gZm9yJylcIlxuXHRcdFx0XHRcdFx0XHQgbGFiZWw9XCJuYW1lXCIgdHJhY2stYnk9XCJpZFwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdFx0IDptdWx0aXBsZT1cInRydWVcIiA6Y2xvc2Utb24tc2VsZWN0PVwiZmFsc2VcIj5cblx0XHRcdFx0XHQ8c3BhbiBzbG90PVwibm9SZXN1bHRcIj57e3QoJ3NldHRpbmdzJywnTm8gcmVzdWx0Jyl9fTwvc3Bhbj5cblx0XHRcdDwvbXVsdGlzZWxlY3Q+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJxdW90YVwiPlxuXHRcdFx0XHQ8bXVsdGlzZWxlY3QgOm9wdGlvbnM9XCJxdW90YU9wdGlvbnNcIiB2LW1vZGVsPVwibmV3VXNlci5xdW90YVwiXG5cdFx0XHRcdFx0XHRcdCA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdTZWxlY3QgdXNlciBxdW90YScpXCJcblx0XHRcdFx0XHRcdFx0IGxhYmVsPVwibGFiZWxcIiB0cmFjay1ieT1cImlkXCIgY2xhc3M9XCJtdWx0aXNlbGVjdC12dWVcIlxuXHRcdFx0XHRcdFx0XHQgOmFsbG93RW1wdHk9XCJmYWxzZVwiIDp0YWdnYWJsZT1cInRydWVcIlxuXHRcdFx0XHRcdFx0IFx0IEB0YWc9XCJ2YWxpZGF0ZVF1b3RhXCIgPlxuXHRcdFx0XHQ8L211bHRpc2VsZWN0PlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwic3RvcmFnZUxvY2F0aW9uXCIgdi1pZj1cInNob3dDb25maWcuc2hvd1N0b3JhZ2VQYXRoXCI+PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwidXNlckJhY2tlbmRcIiB2LWlmPVwic2hvd0NvbmZpZy5zaG93VXNlckJhY2tlbmRcIj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJsYXN0TG9naW5cIiB2LWlmPVwic2hvd0NvbmZpZy5zaG93TGFzdExvZ2luXCI+PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwidXNlckFjdGlvbnNcIj5cblx0XHRcdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBpZD1cIm5ld3N1Ym1pdFwiIGNsYXNzPVwiYnV0dG9uIHByaW1hcnkgaWNvbi1jaGVja21hcmstd2hpdGUgaGFzLXRvb2x0aXBcIlxuXHRcdFx0XHRcdCAgIHZhbHVlPVwiXCIgOnRpdGxlPVwidCgnc2V0dGluZ3MnLCAnQWRkIGEgbmV3IHVzZXInKVwiPlxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInJlc2V0XCIgaWQ9XCJuZXdyZXNldFwiIGNsYXNzPVwiYnV0dG9uIGljb24tY2xvc2UgaGFzLXRvb2x0aXBcIiBAY2xpY2s9XCJyZXNldEZvcm1cIlxuXHRcdFx0XHRcdCAgIHZhbHVlPVwiXCIgOnRpdGxlPVwidCgnc2V0dGluZ3MnLCAnQ2FuY2VsIGFuZCByZXNldCB0aGUgZm9ybScpXCI+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Zvcm0+XG5cblx0XHQ8dXNlci1yb3cgdi1mb3I9XCIodXNlciwga2V5KSBpbiBmaWx0ZXJlZFVzZXJzXCIgOnVzZXI9XCJ1c2VyXCIgOmtleT1cImtleVwiIDpzZXR0aW5ncz1cInNldHRpbmdzXCIgOnNob3dDb25maWc9XCJzaG93Q29uZmlnXCJcblx0XHRcdFx0ICA6Z3JvdXBzPVwiZ3JvdXBzXCIgOnN1YkFkbWluc0dyb3Vwcz1cInN1YkFkbWluc0dyb3Vwc1wiIDpxdW90YU9wdGlvbnM9XCJxdW90YU9wdGlvbnNcIiAvPlxuXHRcdDxpbmZpbml0ZS1sb2FkaW5nIEBpbmZpbml0ZT1cImluZmluaXRlSGFuZGxlclwiIHJlZj1cImluZmluaXRlTG9hZGluZ1wiPlxuXHRcdFx0PGRpdiBzbG90PVwic3Bpbm5lclwiPjxkaXYgY2xhc3M9XCJ1c2Vycy1pY29uLWxvYWRpbmcgaWNvbi1sb2FkaW5nXCI+PC9kaXY+PC9kaXY+XG5cdFx0XHQ8ZGl2IHNsb3Q9XCJuby1tb3JlXCI+PGRpdiBjbGFzcz1cInVzZXJzLWxpc3QtZW5kXCI+4oCUIHt7dCgnc2V0dGluZ3MnLCAnbm8gbW9yZSByZXN1bHRzJyl9fSDigJQ8L2Rpdj48L2Rpdj5cblx0XHRcdDxkaXYgc2xvdD1cIm5vLXJlc3VsdHNcIj5cblx0XHRcdFx0PGRpdiBpZD1cImVtcHR5Y29udGVudFwiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpY29uLWNvbnRhY3RzLWRhcmtcIj48L2Rpdj5cblx0XHRcdFx0XHQ8aDI+e3t0KCdzZXR0aW5ncycsICdObyB1c2VycyBpbiBoZXJlJyl9fTwvaDI+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9pbmZpbml0ZS1sb2FkaW5nPlxuXHQ8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgdXNlclJvdyBmcm9tICcuL3VzZXJMaXN0L3VzZXJSb3cnO1xuaW1wb3J0IE11bHRpc2VsZWN0IGZyb20gJ3Z1ZS1tdWx0aXNlbGVjdCc7XG5pbXBvcnQgSW5maW5pdGVMb2FkaW5nIGZyb20gJ3Z1ZS1pbmZpbml0ZS1sb2FkaW5nJztcblxuZXhwb3J0IGRlZmF1bHQge1xuXHRuYW1lOiAndXNlckxpc3QnLFxuXHRwcm9wczogWyd1c2VycycsICdzaG93Q29uZmlnJ10sXG5cdGNvbXBvbmVudHM6IHtcblx0XHR1c2VyUm93LFxuXHRcdE11bHRpc2VsZWN0LFxuXHRcdEluZmluaXRlTG9hZGluZ1xuXHR9LFxuXHRkYXRhKCkge1xuXHRcdGxldCB1bmxpbWl0ZWRRdW90YSA9IHtpZDonbm9uZScsIGxhYmVsOnQoJ3NldHRpbmdzJywgJ1VubGltaXRlZCcpfSxcblx0XHRcdGRlZmF1bHRRdW90YSA9IHtpZDonZGVmYXVsdCcsIGxhYmVsOnQoJ3NldHRpbmdzJywgJ0RlZmF1bHQgcXVvdGEnKX07XG5cdFx0cmV0dXJuIHtcblx0XHRcdHVubGltaXRlZFF1b3RhOiB1bmxpbWl0ZWRRdW90YSxcblx0XHRcdGRlZmF1bHRRdW90YTogZGVmYXVsdFF1b3RhLFxuXHRcdFx0bG9hZGluZzogZmFsc2UsXG5cdFx0XHRzY3JvbGxlZDogZmFsc2UsXG5cdFx0XHRuZXdVc2VyOiB7XG5cdFx0XHRcdGlkOicnLFxuXHRcdFx0XHRkaXNwbGF5TmFtZTonJyxcblx0XHRcdFx0cGFzc3dvcmQ6JycsXG5cdFx0XHRcdG1haWxBZGRyZXNzOicnLFxuXHRcdFx0XHRncm91cHM6IFtdLFxuXHRcdFx0XHRzdWJBZG1pbnNHcm91cHM6IFtdLFxuXHRcdFx0XHRxdW90YTogZGVmYXVsdFF1b3RhXG5cdFx0XHR9XG5cdFx0fTtcblx0fSxcblx0bW91bnRlZCgpIHtcblx0XHRpZiAoIXRoaXMuc2V0dGluZ3MuY2FuQ2hhbmdlUGFzc3dvcmQpIHtcblx0XHRcdE9DLk5vdGlmaWNhdGlvbi5zaG93VGVtcG9yYXJ5KHQoJ3NldHRpbmdzJywnUGFzc3dvcmQgY2hhbmdlIGlzIGRpc2FibGVkIGJlY2F1c2UgdGhlIG1hc3RlciBrZXkgaXMgZGlzYWJsZWQnKSk7XG5cdFx0fVxuXHR9LFxuXHRjb21wdXRlZDoge1xuXHRcdHNldHRpbmdzKCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0U2VydmVyRGF0YTtcblx0XHR9LFxuXHRcdGZpbHRlcmVkVXNlcnMoKSB7XG5cdFx0XHRpZiAodGhpcy5yb3V0ZS5oYXNoID09PSAnI2dyb3VwX2Rpc2FibGVkJykge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy51c2Vycy5maWx0ZXIodXNlciA9PiB1c2VyLmVuYWJsZWQgIT09IHRydWUpO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIHRoaXMudXNlcnMuZmlsdGVyKHVzZXIgPT4gdXNlci5lbmFibGVkID09PSB0cnVlKTtcblx0XHR9LFxuXHRcdGdyb3VwcygpIHtcblx0XHRcdC8vIGRhdGEgcHJvdmlkZWQgcGhwIHNpZGUgKyByZW1vdmUgdGhlIGRpc2FibGVkIGdyb3VwXG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRHcm91cHMuZmlsdGVyKGdyb3VwID0+IGdyb3VwLmlkICE9PSAnX2Rpc2FibGVkJyk7XG5cdFx0fSxcblx0XHRzdWJBZG1pbnNHcm91cHMoKSB7XG5cdFx0XHQvLyBkYXRhIHByb3ZpZGVkIHBocCBzaWRlXG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRTZXJ2ZXJEYXRhLnN1YmFkbWluZ3JvdXBzO1xuXHRcdH0sXG5cdFx0cXVvdGFPcHRpb25zKCkge1xuXHRcdFx0Ly8gY29udmVydCB0aGUgcHJlc2V0IGFycmF5IGludG8gb2JqZWN0c1xuXHRcdFx0bGV0IHF1b3RhUHJlc2V0ID0gdGhpcy5zZXR0aW5ncy5xdW90YVByZXNldC5yZWR1Y2UoKGFjYywgY3VyKSA9PiBhY2MuY29uY2F0KHtpZDpjdXIsIGxhYmVsOmN1cn0pLCBbXSk7XG5cdFx0XHQvLyBhZGQgZGVmYXVsdCBwcmVzZXRzXG5cdFx0XHRxdW90YVByZXNldC51bnNoaWZ0KHRoaXMudW5saW1pdGVkUXVvdGEpO1xuXHRcdFx0cXVvdGFQcmVzZXQudW5zaGlmdCh0aGlzLmRlZmF1bHRRdW90YSk7XG5cdFx0XHRyZXR1cm4gcXVvdGFQcmVzZXQ7XG5cdFx0fSxcblx0XHRtaW5QYXNzd29yZExlbmd0aCgpIHtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmdldFBhc3N3b3JkUG9saWN5TWluTGVuZ3RoO1xuXHRcdH0sXG5cdFx0dXNlcnNPZmZzZXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc09mZnNldDtcblx0XHR9LFxuXHRcdHVzZXJzTGltaXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRVc2Vyc0xpbWl0O1xuXHRcdH0sXG5cdFx0cm91dGUoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRSb3V0ZTtcblx0XHR9LFxuXHRcdC8vIGdldCBzZWxlY3RlZCBoYXNoXG5cdFx0c2VsZWN0ZWRHcm91cCgpIHtcblx0XHRcdGxldCBoYXNoID0gdGhpcy5yb3V0ZS5oYXNoO1xuXHRcdFx0aWYgKHR5cGVvZiBoYXNoID09PSAnc3RyaW5nJyAmJiBoYXNoLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0Ly8gd2UgaGF2ZSBhIHZhbGlkIGhhc2g6IGdyb3VwWFhYWFxuXHRcdFx0XHQvLyBncm91cF9YWFhYIGFyZSByZXNlcnZlZCBncm91cHNcblx0XHRcdFx0bGV0IHNwbGl0ID0gaGFzaC5zcGxpdCgnZ3JvdXAnKTtcblx0XHRcdFx0aWYgKHNwbGl0Lmxlbmd0aCA9PT0gMiAmJiBzcGxpdFsxXS5jaGFyQXQoMCkgIT09ICdfJykge1xuXHRcdFx0XHRcdHJldHVybiBoYXNoLnNwbGl0KCdncm91cCcpWzFdO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gJyc7XG5cdFx0fVxuXHR9LFxuXHR3YXRjaDoge1xuXHRcdC8vIHdhdGNoIHVybCBjaGFuZ2UgYW5kIGdyb3VwIHNlbGVjdFxuXHRcdHNlbGVjdGVkR3JvdXA6IGZ1bmN0aW9uICh2YWwsIG9sZCkge1xuXHRcdFx0dGhpcy4kc3RvcmUuY29tbWl0KCdyZXNldFVzZXJzJyk7XG5cdFx0XHR0aGlzLiRyZWZzLmluZmluaXRlTG9hZGluZy4kZW1pdCgnJEluZmluaXRlTG9hZGluZzpyZXNldCcpO1xuXHRcdH1cblx0fSxcblx0bWV0aG9kczoge1xuXHRcdG9uU2Nyb2xsKGV2ZW50KSB7XG5cdFx0XHR0aGlzLnNjcm9sbGVkID0gZXZlbnQudGFyZ2V0LnNjcm9sbFRvcD4wO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBWYWxpZGF0ZSBxdW90YSBzdHJpbmcgdG8gbWFrZSBzdXJlIGl0J3MgYSB2YWxpZCBodW1hbiBmaWxlIHNpemVcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gcXVvdGEgUXVvdGEgaW4gcmVhZGFibGUgZm9ybWF0ICc1IEdCJ1xuXHRcdCAqIEByZXR1cm5zIHtPYmplY3R9XG5cdFx0ICovXG5cdFx0dmFsaWRhdGVRdW90YShxdW90YSkge1xuXHRcdFx0Ly8gb25seSB1c2VkIGZvciBuZXcgcHJlc2V0cyBzZW50IHRocm91Z2ggQFRhZ1xuXHRcdFx0bGV0IHZhbGlkUXVvdGEgPSBPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUocXVvdGEpO1xuXHRcdFx0aWYgKHZhbGlkUXVvdGEgIT09IG51bGwgJiYgdmFsaWRRdW90YSA+IDApIHtcblx0XHRcdFx0Ly8gdW5pZnkgZm9ybWF0IG91dHB1dFxuXHRcdFx0XHRxdW90YSA9IE9DLlV0aWwuaHVtYW5GaWxlU2l6ZShPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUocXVvdGEpKTtcblx0XHRcdFx0cmV0dXJuIHRoaXMubmV3VXNlci5xdW90YSA9IHtpZDogcXVvdGEsIGxhYmVsOiBxdW90YX07XG5cdFx0XHR9XG5cdFx0XHQvLyBEZWZhdWx0IGlzIHVubGltaXRlZFxuXHRcdFx0cmV0dXJuIHRoaXMubmV3VXNlci5xdW90YSA9IHRoaXMucXVvdGFPcHRpb25zWzBdO1xuXHRcdH0sXG5cblx0XHRpbmZpbml0ZUhhbmRsZXIoJHN0YXRlKSB7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZ2V0VXNlcnMnLCB7b2Zmc2V0OnRoaXMudXNlcnNPZmZzZXQsIGxpbWl0OnRoaXMudXNlcnNMaW1pdCwgZ3JvdXA6dGhpcy5zZWxlY3RlZEdyb3VwfSlcblx0XHRcdFx0LnRoZW4oKHJlc3BvbnNlKSA9PiB7cmVzcG9uc2U/JHN0YXRlLmxvYWRlZCgpOiRzdGF0ZS5jb21wbGV0ZSgpfSk7XG5cdFx0fSxcblxuXHRcdHJlc2V0Rm9ybSAoKSB7XG5cdFx0XHQvLyByZXZlcnQgZm9ybSB0byBvcmlnaW5hbCBzdGF0ZVxuXHRcdFx0T2JqZWN0LmFzc2lnbih0aGlzLm5ld1VzZXIsIHRoaXMuJG9wdGlvbnMuZGF0YS5jYWxsKHRoaXMpLm5ld1VzZXIpO1xuXHRcdFx0dGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIH0sXG5cdFx0Y3JlYXRlVXNlcigpIHtcblx0XHRcdHRoaXMubG9hZGluZyA9IHRydWU7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnYWRkVXNlcicsIHtcblx0XHRcdFx0dXNlcmlkOiB0aGlzLm5ld1VzZXIuaWQsXG5cdFx0XHRcdHBhc3N3b3JkOiB0aGlzLm5ld1VzZXIucGFzc3dvcmQsXG5cdFx0XHRcdGVtYWlsOiB0aGlzLm5ld1VzZXIubWFpbEFkZHJlc3MsXG5cdFx0XHRcdGdyb3VwczogdGhpcy5uZXdVc2VyLmdyb3Vwcy5tYXAoZ3JvdXAgPT4gZ3JvdXAuaWQpLFxuXHRcdFx0XHRzdWJhZG1pbjogdGhpcy5uZXdVc2VyLnN1YkFkbWluc0dyb3Vwcy5tYXAoZ3JvdXAgPT4gZ3JvdXAuaWQpLFxuXHRcdFx0XHRxdW90YTogdGhpcy5uZXdVc2VyLnF1b3RhLmlkXG5cdFx0XHR9KS50aGVuKCgpID0+IHRoaXMucmVzZXRGb3JtKCkpO1xuXHRcdH1cblx0fVxufVxuPC9zY3JpcHQ+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2NvbXBvbmVudHMvdXNlckxpc3QudnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///14\n"); /***/ }), /* 15 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__popoverMenu__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_click_outside__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_multiselect__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_multiselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_vue_multiselect__);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n//import Multiselect from '../../../node_modules/vue-multiselect/src/index';\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'userRow',\n\tprops: ['user', 'settings', 'groups', 'subAdminsGroups', 'quotaOptions', 'showConfig'],\n\tcomponents: {\n\t\tpopoverMenu: __WEBPACK_IMPORTED_MODULE_0__popoverMenu__[\"a\" /* default */],\n\t\tMultiselect: __WEBPACK_IMPORTED_MODULE_2_vue_multiselect___default.a\n\t},\n\tdirectives: {\n\t\tClickOutside: __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default.a\n\t},\n\tmounted: function mounted() {\n\t\t// prevent click outside event with popupItem.\n\t\tthis.popupItem = this.$el;\n\t},\n\tdata: function data() {\n\t\treturn {\n\t\t\trand: parseInt(Math.random() * 1000),\n\t\t\topenedMenu: 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}\n\t\t};\n\t},\n\n\tcomputed: {\n\t\t/* USER POPOVERMENU ACTIONS */\n\t\tuserActions: function userActions() {\n\t\t\treturn [{\n\t\t\t\ticon: 'icon-delete',\n\t\t\t\ttext: t('settings', 'Delete user'),\n\t\t\t\taction: 'deleteUser',\n\t\t\t\tdata: this.user.id\n\t\t\t}, {\n\t\t\t\t'icon': this.user.enabled ? 'icon-close' : 'icon-add',\n\t\t\t\t'text': this.user.enabled ? t('settings', 'Disable user') : t('settings', 'Enable user'),\n\t\t\t\t'action': 'enableDisableUser',\n\t\t\t\tdata: { userid: this.user.id, enabled: !this.user.enabled }\n\t\t\t}];\n\t\t},\n\n\n\t\t/* GROUPS MANAGEMENT */\n\t\tuserGroups: function userGroups() {\n\t\t\tvar _this = this;\n\n\t\t\tvar userGroups = this.groups.filter(function (group) {\n\t\t\t\treturn _this.user.groups.includes(group.id);\n\t\t\t});\n\t\t\treturn userGroups;\n\t\t},\n\t\tuserSubAdminsGroups: function userSubAdminsGroups() {\n\t\t\tvar _this2 = this;\n\n\t\t\tvar userSubAdminsGroups = this.subAdminsGroups.filter(function (group) {\n\t\t\t\treturn _this2.user.subadmin.includes(group.id);\n\t\t\t});\n\t\t\treturn userSubAdminsGroups;\n\t\t},\n\n\n\t\t/* QUOTA MANAGEMENT */\n\t\tusedQuota: function usedQuota() {\n\t\t\tvar 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\tvar usedInGB = this.user.quota.used / (10 * Math.pow(2, 30));\n\t\t\t\t//asymptotic curve approaching 50% at 10GB to visualize used stace with infinite quota\n\t\t\t\tquota = 95 * (1 - 1 / (usedInGB + 1));\n\t\t\t}\n\t\t\treturn isNaN(quota) ? 0 : quota;\n\t\t},\n\n\t\t// Mapping saved values to objects\n\t\tuserQuota: function userQuota() {\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\tvar humanQuota = OC.Util.humanFileSize(this.user.quota.quota);\n\t\t\t\tvar userQuota = this.quotaOptions.find(function (quota) {\n\t\t\t\t\treturn quota.id === humanQuota;\n\t\t\t\t});\n\t\t\t\treturn userQuota ? userQuota : { id: humanQuota, label: humanQuota };\n\t\t\t} else if (this.user.quota.quota === 0 || 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\n\t\t/* PASSWORD POLICY? */\n\t\tminPasswordLength: function minPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength;\n\t\t}\n\t},\n\tmethods: {\n\t\t/* MENU HANDLING */\n\t\tshowMenu: function showMenu() {\n\t\t\tthis.openedMenu = true;\n\t\t},\n\t\thideMenu: function hideMenu() {\n\t\t\tthis.openedMenu = false;\n\t\t},\n\n\n\t\t/**\n * Generate avatar url\n * \n * @param {string} user The user name\n * @param {int} size Size integer, default 32\n * @returns {string}\n */\n\t\tgenerateAvatar: function generateAvatar(user) {\n\t\t\tvar size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 32;\n\n\t\t\treturn OC.generateUrl('/avatar/{user}/{size}?v={version}', {\n\t\t\t\tuser: user,\n\t\t\t\tsize: size,\n\t\t\t\tversion: oc_userconfig.avatar.version\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Format the limit text in the selected options\n * \n * @param {int} count elements left\n * @returns {string}\n */\n\t\tlimitGroups: function limitGroups(count) {\n\t\t\treturn '+' + count;\n\t\t},\n\n\n\t\t/**\n * Set user displayName\n * \n * @param {string} displayName The display name\n * @returns {Promise}\n */\n\t\tupdateDisplayName: function updateDisplayName() {\n\t\t\tvar _this3 = this;\n\n\t\t\tvar displayName = this.$refs.displayName.value;\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: displayName\n\t\t\t}).then(function () {\n\t\t\t\t_this3.loading.displayName = false;\n\t\t\t\t_this3.$refs.displayName.value = displayName;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user password\n * \n * @param {string} password The email adress\n * @returns {Promise}\n */\n\t\tupdatePassword: function updatePassword() {\n\t\t\tvar _this4 = this;\n\n\t\t\tvar password = this.$refs.password.value;\n\t\t\tthis.loading.password = true;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'password',\n\t\t\t\tvalue: password\n\t\t\t}).then(function () {\n\t\t\t\t_this4.loading.password = false;\n\t\t\t\t_this4.$refs.password.value = ''; // empty & show placeholder \n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user mailAddress\n * \n * @param {string} mailAddress The email adress\n * @returns {Promise}\n */\n\t\tupdateEmail: function updateEmail() {\n\t\t\tvar _this5 = this;\n\n\t\t\tvar mailAddress = this.$refs.mailAddress.value;\n\t\t\tthis.loading.mailAddress = true;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'email',\n\t\t\t\tvalue: mailAddress\n\t\t\t}).then(function () {\n\t\t\t\t_this5.loading.mailAddress = false;\n\t\t\t\t_this5.$refs.mailAddress.value = mailAddress;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Create a new group\n * \n * @param {string} groups Group id\n * @returns {Promise}\n */\n\t\tcreateGroup: function createGroup(gid) {\n\t\t\tvar _this6 = this;\n\n\t\t\tthis.loading = { groups: true, subadmins: true };\n\t\t\tthis.$store.dispatch('addGroup', gid).then(function () {\n\t\t\t\t_this6.loading = { groups: false, subadmins: false };\n\t\t\t\tvar userid = _this6.user.id;\n\t\t\t\t_this6.$store.dispatch('addUserGroup', { userid: userid, gid: gid });\n\t\t\t});\n\t\t\treturn this.$store.getters.getGroups[this.groups.length];\n\t\t},\n\n\n\t\t/**\n * Add user to group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\taddUserGroup: function addUserGroup(group) {\n\t\t\tvar _this7 = this;\n\n\t\t\tthis.loading.groups = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('addUserGroup', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this7.loading.groups = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Remove user from group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\tremoveUserGroup: function removeUserGroup(group) {\n\t\t\tvar _this8 = this;\n\n\t\t\tthis.loading.groups = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('removeUserGroup', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this8.loading.groups = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Add user to group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\taddUserSubAdmin: function addUserSubAdmin(group) {\n\t\t\tvar _this9 = this;\n\n\t\t\tthis.loading.subadmins = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('addUserSubAdmin', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this9.loading.subadmins = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Remove user from group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\tremoveUserSubAdmin: function removeUserSubAdmin(group) {\n\t\t\tvar _this10 = this;\n\n\t\t\tthis.loading.subadmins = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('removeUserSubAdmin', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this10.loading.subadmins = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string|Object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}\n * @returns {string}\n */\n\t\tsetUserQuota: function setUserQuota() {\n\t\t\tvar _this11 = this;\n\n\t\t\tvar quota = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'none';\n\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\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'quota',\n\t\t\t\tvalue: quota\n\t\t\t}).then(function () {\n\t\t\t\treturn _this11.loading.quota = false;\n\t\t\t});\n\t\t\treturn quota;\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string} quota Quota in readable format '5 GB'\n * @returns {Promise|boolean}\n */\n\t\tvalidateQuota: function validateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tvar validQuota = OC.Util.computerFileSize(quota);\n\t\t\tif (validQuota === 0) {\n\t\t\t\treturn this.setUserQuota('none');\n\t\t\t} else if (validQuota !== null) {\n\t\t\t\t// unify format output\n\t\t\t\treturn this.setUserQuota(OC.Util.humanFileSize(OC.Util.computerFileSize(quota)));\n\t\t\t}\n\t\t\t// if no valid doo not change\n\t\t\treturn false;\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QvdXNlclJvdy52dWU/Mjg4YyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXdFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtPQUVBOzBFQUNBOztBQUVBO0FBRUE7QUFIQTs7QUFNQTtBQUZBOzZCQUdBO0FBQ0E7d0JBQ0E7QUFDQTt1QkFDQTs7a0NBRUE7ZUFDQTs7U0FFQTtpQkFDQTtjQUNBO2lCQUNBO1lBQ0E7ZUFDQTtXQUdBO0FBVEE7QUFIQTtBQWFBOzs7QUFFQTtzQ0FDQTs7VUFFQTt3QkFDQTtZQUNBO29CQUNBO0FBSkE7K0NBTUE7OEVBQ0E7Y0FDQTtzREFFQTtBQUxBO0FBT0E7OztBQUNBOztBQUNBOzs7NENBQ0E7O1VBQ0E7QUFDQTs7QUFDQTs7OytDQUNBOztVQUNBO0FBRUE7OztBQUNBO2tDQUNBOytCQUNBO2tCQUNBO29FQUNBO1VBQ0E7NERBQ0E7QUFDQTtzQ0FDQTtBQUNBOzZCQUNBO0FBQ0E7O0FBQ0E7O2tDQUVBO0FBQ0E7MkRBQ0E7O3lCQUNBOzs0REFDQTtrRkFDQTtBQUNBOzZCQUNBO0FBQ0E7K0JBVEEsQ0FVQTtBQUVBOzs7QUFDQTtrREFDQTs4QkFDQTtBQUVBO0FBeERBOztBQTBEQTtnQ0FDQTtxQkFDQTtBQUNBO2dDQUNBO3FCQUNBO0FBRUE7OztBQU9BOzs7Ozs7OztBQUNBOzthQUNBLFlBQ0E7VUFFQTtVQUNBO2tDQUdBO0FBTEE7QUFRQTs7O0FBTUE7Ozs7OzsyQ0FDQTtnQkFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs0Q0FDQTs4QkFDQTs7c0JBRUE7U0FDQTtXQUNBO0FBSEEsdUJBSUE7aUNBQ0E7cUNBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOztzQ0FDQTsyQkFDQTs7c0JBRUE7U0FDQTtXQUNBO0FBSEEsdUJBSUE7OEJBQ0E7c0NBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs0Q0FDQTs4QkFDQTs7c0JBRUE7U0FDQTtXQUNBO0FBSEEsdUJBSUE7aUNBQ0E7cUNBQ0E7QUFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs2Q0FDQTswREFDQTtpREFDQTs2QkFDQTs2REFDQTtBQUNBO29EQUNBO0FBRUE7OztBQU1BOzs7Ozs7O0FBQ0E7O3lCQUNBOzBCQUNBO21CQUNBO2lFQUNBO21DQUNBOztBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzt5QkFDQTswQkFDQTttQkFDQTtvRUFDQTttQ0FDQTs7QUFFQTs7O0FBTUE7Ozs7Ozs7QUFDQTs7NEJBQ0E7MEJBQ0E7bUJBQ0E7b0VBQ0E7c0NBQ0E7O0FBRUE7OztBQU1BOzs7Ozs7O0FBQ0E7OzRCQUNBOzBCQUNBO21CQUNBO3VFQUNBO3VDQUNBOztBQUdBOzs7QUFNQTs7Ozs7OztBQUNBOzs7O3dCQUNBO0FBQ0E7aUNBQ0E7O3NCQUVBO1NBQ0E7V0FDQTtBQUhBO21DQUlBOztVQUNBO0FBRUE7OztBQU1BOzs7Ozs7K0NBQ0E7QUFDQTs2Q0FDQTt5QkFDQTs2QkFDQTttQ0FDQTtBQUNBOzRFQUNBO0FBQ0E7QUFDQTtVQUNBO0FBRUE7QUE1TUE7QUF0RkEiLCJmaWxlIjoiMTUuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG5cdDxkaXYgY2xhc3M9XCJyb3dcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiYXZhdGFyXCI+PGltZyBhbHQ9XCJcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMzJcIiA6c3JjPVwiZ2VuZXJhdGVBdmF0YXIodXNlci5pZCwgMzIpXCIgOnNyY3NldD1cImdlbmVyYXRlQXZhdGFyKHVzZXIuaWQsIDY0KSsnIDJ4LCAnK2dlbmVyYXRlQXZhdGFyKHVzZXIuaWQsIDEyOCkrJyA0eCdcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibmFtZVwiPnt7dXNlci5pZH19PC9kaXY+XG5cdFx0PGZvcm0gY2xhc3M9XCJkaXNwbGF5TmFtZVwiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5kaXNwbGF5TmFtZX1cIiB2LW9uOnN1Ym1pdC5wcmV2ZW50PVwidXBkYXRlRGlzcGxheU5hbWVcIj5cblx0XHRcdDxpbnB1dCA6aWQ9XCInZGlzcGxheU5hbWUnK3VzZXIuaWQrcmFuZFwiIHR5cGU9XCJ0ZXh0XCJcblx0XHRcdFx0XHQ6ZGlzYWJsZWQ9XCJsb2FkaW5nLmRpc3BsYXlOYW1lfHxsb2FkaW5nLmFsbFwiXG5cdFx0XHRcdFx0OnZhbHVlPVwidXNlci5kaXNwbGF5bmFtZVwiIHJlZj1cImRpc3BsYXlOYW1lXCJcblx0XHRcdFx0XHRhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIiBhdXRvY29ycmVjdD1cIm9mZlwiIGF1dG9jYXBpdGFsaXplPVwib2ZmXCIgc3BlbGxjaGVjaz1cImZhbHNlXCIgLz5cblx0XHRcdDxpbnB1dCB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJpY29uLWNvbmZpcm1cIiB2YWx1ZT1cIlwiIC8+XG5cdFx0PC9mb3JtPlxuXHRcdDxmb3JtIGNsYXNzPVwicGFzc3dvcmRcIiB2LWlmPVwic2V0dGluZ3MuY2FuQ2hhbmdlUGFzc3dvcmRcIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZy1zbWFsbCc6IGxvYWRpbmcucGFzc3dvcmR9XCJcblx0XHRcdCAgdi1vbjpzdWJtaXQucHJldmVudD1cInVwZGF0ZVBhc3N3b3JkXCI+XG5cdFx0XHQ8aW5wdXQgOmlkPVwiJ3Bhc3N3b3JkJyt1c2VyLmlkK3JhbmRcIiB0eXBlPVwicGFzc3dvcmRcIiByZXF1aXJlZFxuXHRcdFx0XHRcdDpkaXNhYmxlZD1cImxvYWRpbmcucGFzc3dvcmR8fGxvYWRpbmcuYWxsXCIgOm1pbmxlbmd0aD1cIm1pblBhc3N3b3JkTGVuZ3RoXCJcblx0XHRcdFx0XHR2YWx1ZT1cIlwiIDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ05ldyBwYXNzd29yZCcpXCIgcmVmPVwicGFzc3dvcmRcIlxuXHRcdFx0XHRcdGF1dG9jb21wbGV0ZT1cIm5ldy1wYXNzd29yZFwiIGF1dG9jb3JyZWN0PVwib2ZmXCIgYXV0b2NhcGl0YWxpemU9XCJvZmZcIiBzcGVsbGNoZWNrPVwiZmFsc2VcIiAvPlxuXHRcdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImljb24tY29uZmlybVwiIHZhbHVlPVwiXCIgLz5cblx0XHQ8L2Zvcm0+XG5cdFx0PGRpdiB2LWVsc2U+PC9kaXY+XG5cdFx0PGZvcm0gY2xhc3M9XCJtYWlsQWRkcmVzc1wiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5tYWlsQWRkcmVzc31cIiB2LW9uOnN1Ym1pdC5wcmV2ZW50PVwidXBkYXRlRW1haWxcIj5cblx0XHRcdDxpbnB1dCA6aWQ9XCInbWFpbEFkZHJlc3MnK3VzZXIuaWQrcmFuZFwiIHR5cGU9XCJlbWFpbFwiXG5cdFx0XHRcdFx0OmRpc2FibGVkPVwibG9hZGluZy5tYWlsQWRkcmVzc3x8bG9hZGluZy5hbGxcIlxuXHRcdFx0XHRcdDp2YWx1ZT1cInVzZXIuZW1haWxcIiByZWY9XCJtYWlsQWRkcmVzc1wiXG5cdFx0XHRcdFx0YXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCIgYXV0b2NvcnJlY3Q9XCJvZmZcIiBhdXRvY2FwaXRhbGl6ZT1cIm9mZlwiIHNwZWxsY2hlY2s9XCJmYWxzZVwiIC8+XG5cdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiaWNvbi1jb25maXJtXCIgdmFsdWU9XCJcIiAvPlxuXHRcdDwvZm9ybT5cblx0XHQ8ZGl2IGNsYXNzPVwiZ3JvdXBzXCIgOmNsYXNzPVwieydpY29uLWxvYWRpbmctc21hbGwnOiBsb2FkaW5nLmdyb3Vwc31cIj5cblx0XHRcdDxtdWx0aXNlbGVjdCA6dmFsdWU9XCJ1c2VyR3JvdXBzXCIgOm9wdGlvbnM9XCJncm91cHNcIiA6ZGlzYWJsZWQ9XCJsb2FkaW5nLmdyb3Vwc3x8bG9hZGluZy5hbGxcIlxuXHRcdFx0XHRcdFx0IHRhZy1wbGFjZWhvbGRlcj1cImNyZWF0ZVwiIDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ0FkZCB1c2VyIGluIGdyb3VwJylcIlxuXHRcdFx0XHRcdFx0IGxhYmVsPVwibmFtZVwiIHRyYWNrLWJ5PVwiaWRcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHQgOmxpbWl0PVwiMlwiIDpsaW1pdFRleHQ9XCJsaW1pdEdyb3Vwc1wiXG5cdFx0XHRcdFx0XHQgOm11bHRpcGxlPVwidHJ1ZVwiIDp0YWdnYWJsZT1cInRydWVcIiA6Y2xvc2VPblNlbGVjdD1cImZhbHNlXCJcblx0XHRcdFx0XHRcdCBAdGFnPVwiY3JlYXRlR3JvdXBcIiBAc2VsZWN0PVwiYWRkVXNlckdyb3VwXCIgQHJlbW92ZT1cInJlbW92ZVVzZXJHcm91cFwiPlxuXHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwic3ViYWRtaW5zXCIgdi1pZj1cInN1YkFkbWluc0dyb3Vwcy5sZW5ndGg+MFwiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5zdWJhZG1pbnN9XCI+XG5cdFx0XHQ8bXVsdGlzZWxlY3QgOnZhbHVlPVwidXNlclN1YkFkbWluc0dyb3Vwc1wiIDpvcHRpb25zPVwic3ViQWRtaW5zR3JvdXBzXCIgOmRpc2FibGVkPVwibG9hZGluZy5zdWJhZG1pbnN8fGxvYWRpbmcuYWxsXCJcblx0XHRcdFx0XHRcdCA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdTZXQgdXNlciBhcyBhZG1pbiBmb3InKVwiXG5cdFx0XHRcdFx0XHQgbGFiZWw9XCJuYW1lXCIgdHJhY2stYnk9XCJpZFwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdCA6bGltaXQ9XCIyXCIgOmxpbWl0VGV4dD1cImxpbWl0R3JvdXBzXCJcblx0XHRcdFx0XHRcdCA6bXVsdGlwbGU9XCJ0cnVlXCIgOmNsb3NlT25TZWxlY3Q9XCJmYWxzZVwiXG5cdFx0XHRcdFx0XHQgQHNlbGVjdD1cImFkZFVzZXJTdWJBZG1pblwiIEByZW1vdmU9XCJyZW1vdmVVc2VyU3ViQWRtaW5cIj5cblx0XHRcdFx0PHNwYW4gc2xvdD1cIm5vUmVzdWx0XCI+e3t0KCdzZXR0aW5ncycsJ05vIHJlc3VsdCcpfX08L3NwYW4+XG5cdFx0XHQ8L211bHRpc2VsZWN0PlxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJxdW90YVwiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5xdW90YX1cIj5cblx0XHRcdDxtdWx0aXNlbGVjdCA6dmFsdWU9XCJ1c2VyUXVvdGFcIiA6b3B0aW9ucz1cInF1b3RhT3B0aW9uc1wiIDpkaXNhYmxlZD1cImxvYWRpbmcucXVvdGF8fGxvYWRpbmcuYWxsXCJcblx0XHRcdFx0XHRcdCB0YWctcGxhY2Vob2xkZXI9XCJjcmVhdGVcIiA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdTZWxlY3QgdXNlciBxdW90YScpXCJcblx0XHRcdFx0XHRcdCBsYWJlbD1cImxhYmVsXCIgdHJhY2stYnk9XCJpZFwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdCA6YWxsb3dFbXB0eT1cImZhbHNlXCIgOnRhZ2dhYmxlPVwidHJ1ZVwiXG5cdFx0XHRcdFx0XHQgQHRhZz1cInZhbGlkYXRlUXVvdGFcIiBAaW5wdXQ9XCJzZXRVc2VyUXVvdGFcIj5cblx0XHRcdDwvbXVsdGlzZWxlY3Q+XG5cdFx0XHQ8cHJvZ3Jlc3MgY2xhc3M9XCJxdW90YS11c2VyLXByb2dyZXNzXCIgOmNsYXNzPVwieyd3YXJuJzp1c2VkUXVvdGE+ODB9XCIgOnZhbHVlPVwidXNlZFF1b3RhXCIgbWF4PVwiMTAwXCI+PC9wcm9ncmVzcz5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwic3RvcmFnZUxvY2F0aW9uXCIgdi1pZj1cInNob3dDb25maWcuc2hvd1N0b3JhZ2VQYXRoXCI+e3t1c2VyLnN0b3JhZ2VMb2NhdGlvbn19PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cInVzZXJCYWNrZW5kXCIgdi1pZj1cInNob3dDb25maWcuc2hvd1VzZXJCYWNrZW5kXCI+e3t1c2VyLmJhY2tlbmR9fTwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJsYXN0TG9naW5cIiB2LWlmPVwic2hvd0NvbmZpZy5zaG93TGFzdExvZ2luXCIgOnRpdGxlPVwidXNlci5sYXN0TG9naW4+MCA/IE9DLlV0aWwuZm9ybWF0RGF0ZSh1c2VyLmxhc3RMb2dpbikgOiAnJ1wiPlxuXHRcdFx0e3t1c2VyLmxhc3RMb2dpbj4wID8gT0MuVXRpbC5yZWxhdGl2ZU1vZGlmaWVkRGF0ZSh1c2VyLmxhc3RMb2dpbikgOiB0KCdzZXR0aW5ncycsJ05ldmVyJyl9fVxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJ1c2VyQWN0aW9uc1wiPlxuXHRcdFx0PGRpdiBjbGFzcz1cInRvZ2dsZVVzZXJBY3Rpb25zXCIgdi1pZj1cIk9DLmN1cnJlbnRVc2VyICE9PSB1c2VyLmlkICYmIHVzZXIuaWQgIT09ICdhZG1pbidcIj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cImljb24tbW9yZVwiIHYtY2xpY2stb3V0c2lkZT1cImhpZGVNZW51XCIgQGNsaWNrPVwic2hvd01lbnVcIj48L2Rpdj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cInBvcG92ZXJtZW51XCIgOmNsYXNzPVwieyAnb3Blbic6IG9wZW5lZE1lbnUgfVwiPlxuXHRcdFx0XHRcdDxwb3BvdmVyLW1lbnUgOm1lbnU9XCJ1c2VyQWN0aW9uc1wiIC8+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IHBvcG92ZXJNZW51IGZyb20gJy4uL3BvcG92ZXJNZW51JztcbmltcG9ydCBDbGlja091dHNpZGUgZnJvbSAndnVlLWNsaWNrLW91dHNpZGUnO1xuaW1wb3J0IE11bHRpc2VsZWN0IGZyb20gJ3Z1ZS1tdWx0aXNlbGVjdCc7XG4vL2ltcG9ydCBNdWx0aXNlbGVjdCBmcm9tICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLW11bHRpc2VsZWN0L3NyYy9pbmRleCc7XG5cbmV4cG9ydCBkZWZhdWx0IHtcblx0bmFtZTogJ3VzZXJSb3cnLFxuXHRwcm9wczogWyd1c2VyJywgJ3NldHRpbmdzJywgJ2dyb3VwcycsICdzdWJBZG1pbnNHcm91cHMnLCAncXVvdGFPcHRpb25zJywgJ3Nob3dDb25maWcnXSxcblx0Y29tcG9uZW50czoge1xuXHRcdHBvcG92ZXJNZW51LFxuXHRcdE11bHRpc2VsZWN0XG5cdH0sXG5cdGRpcmVjdGl2ZXM6IHtcblx0XHRDbGlja091dHNpZGVcblx0fSxcblx0bW91bnRlZCgpIHtcblx0XHQvLyBwcmV2ZW50IGNsaWNrIG91dHNpZGUgZXZlbnQgd2l0aCBwb3B1cEl0ZW0uXG5cdFx0dGhpcy5wb3B1cEl0ZW0gPSB0aGlzLiRlbDtcblx0fSxcblx0ZGF0YSgpIHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0cmFuZDogcGFyc2VJbnQoTWF0aC5yYW5kb20oKSAqIDEwMDApLFxuXHRcdFx0b3BlbmVkTWVudTogZmFsc2UsXG5cdFx0XHRsb2FkaW5nOiB7XG5cdFx0XHRcdGFsbDogZmFsc2UsXG5cdFx0XHRcdGRpc3BsYXlOYW1lOiBmYWxzZSxcblx0XHRcdFx0cGFzc3dvcmQ6IGZhbHNlLFxuXHRcdFx0XHRtYWlsQWRkcmVzczogZmFsc2UsXG5cdFx0XHRcdGdyb3VwczogZmFsc2UsXG5cdFx0XHRcdHN1YmFkbWluczogZmFsc2UsXG5cdFx0XHRcdHF1b3RhOiBmYWxzZVxuXHRcdFx0fVxuXHRcdH1cblx0fSxcblx0Y29tcHV0ZWQ6IHtcblx0XHQvKiBVU0VSIFBPUE9WRVJNRU5VIEFDVElPTlMgKi9cblx0XHR1c2VyQWN0aW9ucygpIHtcblx0XHRcdHJldHVybiBbe1xuXHRcdFx0XHRpY29uOiAnaWNvbi1kZWxldGUnLFxuXHRcdFx0XHR0ZXh0OiB0KCdzZXR0aW5ncycsJ0RlbGV0ZSB1c2VyJyksXG5cdFx0XHRcdGFjdGlvbjogJ2RlbGV0ZVVzZXInLFxuXHRcdFx0XHRkYXRhOiB0aGlzLnVzZXIuaWRcblx0XHRcdH0se1xuXHRcdFx0XHQnaWNvbic6IHRoaXMudXNlci5lbmFibGVkID8gJ2ljb24tY2xvc2UnIDogJ2ljb24tYWRkJyxcblx0XHRcdFx0J3RleHQnOiB0aGlzLnVzZXIuZW5hYmxlZCA/IHQoJ3NldHRpbmdzJywnRGlzYWJsZSB1c2VyJykgOiB0KCdzZXR0aW5ncycsJ0VuYWJsZSB1c2VyJyksXG5cdFx0XHRcdCdhY3Rpb24nOiAnZW5hYmxlRGlzYWJsZVVzZXInLFxuXHRcdFx0XHRkYXRhOiB7dXNlcmlkOiB0aGlzLnVzZXIuaWQsIGVuYWJsZWQ6ICF0aGlzLnVzZXIuZW5hYmxlZH1cblx0XHRcdH1dXG5cdFx0fSxcblxuXHRcdC8qIEdST1VQUyBNQU5BR0VNRU5UICovXG5cdFx0dXNlckdyb3VwcygpIHtcblx0XHRcdGxldCB1c2VyR3JvdXBzID0gdGhpcy5ncm91cHMuZmlsdGVyKGdyb3VwID0+IHRoaXMudXNlci5ncm91cHMuaW5jbHVkZXMoZ3JvdXAuaWQpKTtcblx0XHRcdHJldHVybiB1c2VyR3JvdXBzO1xuXHRcdH0sXG5cdFx0dXNlclN1YkFkbWluc0dyb3VwcygpIHtcblx0XHRcdGxldCB1c2VyU3ViQWRtaW5zR3JvdXBzID0gdGhpcy5zdWJBZG1pbnNHcm91cHMuZmlsdGVyKGdyb3VwID0+IHRoaXMudXNlci5zdWJhZG1pbi5pbmNsdWRlcyhncm91cC5pZCkpO1xuXHRcdFx0cmV0dXJuIHVzZXJTdWJBZG1pbnNHcm91cHM7XG5cdFx0fSxcblxuXHRcdC8qIFFVT1RBIE1BTkFHRU1FTlQgKi9cblx0XHR1c2VkUXVvdGEoKSB7XG5cdFx0XHRsZXQgcXVvdGEgPSB0aGlzLnVzZXIucXVvdGEucXVvdGE7XG5cdFx0XHRpZiAocXVvdGEgPiAwKSB7XG5cdFx0XHRcdHF1b3RhID0gTWF0aC5taW4oMTAwLCBNYXRoLnJvdW5kKHRoaXMudXNlci5xdW90YS51c2VkIC8gcXVvdGEgKiAxMDApKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHZhciB1c2VkSW5HQiA9IHRoaXMudXNlci5xdW90YS51c2VkIC8gKDEwICogTWF0aC5wb3coMiwgMzApKTtcblx0XHRcdFx0Ly9hc3ltcHRvdGljIGN1cnZlIGFwcHJvYWNoaW5nIDUwJSBhdCAxMEdCIHRvIHZpc3VhbGl6ZSB1c2VkIHN0YWNlIHdpdGggaW5maW5pdGUgcXVvdGFcblx0XHRcdFx0cXVvdGEgPSA5NSAqICgxIC0gKDEgLyAodXNlZEluR0IgKyAxKSkpO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIGlzTmFOKHF1b3RhKSA/IDAgOiBxdW90YTtcblx0XHR9LFxuXHRcdC8vIE1hcHBpbmcgc2F2ZWQgdmFsdWVzIHRvIG9iamVjdHNcblx0XHR1c2VyUXVvdGEoKSB7XG5cdFx0XHRpZiAodGhpcy51c2VyLnF1b3RhLnF1b3RhID4gMCkge1xuXHRcdFx0XHQvLyBpZiB2YWx1ZSBpcyB2YWxpZCwgbGV0J3MgbWFwIHRoZSBxdW90YU9wdGlvbnMgb3IgcmV0dXJuIGN1c3RvbSBxdW90YVxuXHRcdFx0XHRsZXQgaHVtYW5RdW90YSA9IE9DLlV0aWwuaHVtYW5GaWxlU2l6ZSh0aGlzLnVzZXIucXVvdGEucXVvdGEpO1xuXHRcdFx0XHRsZXQgdXNlclF1b3RhID0gdGhpcy5xdW90YU9wdGlvbnMuZmluZChxdW90YSA9PiBxdW90YS5pZCA9PT0gaHVtYW5RdW90YSk7XG5cdFx0XHRcdHJldHVybiB1c2VyUXVvdGEgPyB1c2VyUXVvdGEgOiB7aWQ6aHVtYW5RdW90YSwgbGFiZWw6aHVtYW5RdW90YX07XG5cdFx0XHR9IGVsc2UgaWYgKHRoaXMudXNlci5xdW90YS5xdW90YSA9PT0gMCB8fCB0aGlzLnVzZXIucXVvdGEucXVvdGEgPT09ICdkZWZhdWx0Jykge1xuXHRcdFx0XHQvLyBkZWZhdWx0IHF1b3RhIGlzIHJlcGxhY2VkIGJ5IHRoZSBwcm9wZXIgdmFsdWUgb24gbG9hZFxuXHRcdFx0XHRyZXR1cm4gdGhpcy5xdW90YU9wdGlvbnNbMF07XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gdGhpcy5xdW90YU9wdGlvbnNbMV07IC8vIHVubGltaXRlZFxuXHRcdH0sXG5cblx0XHQvKiBQQVNTV09SRCBQT0xJQ1k/ICovXG5cdFx0bWluUGFzc3dvcmRMZW5ndGgoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aDtcblx0XHR9XG5cdH0sXG5cdG1ldGhvZHM6IHtcblx0XHQvKiBNRU5VIEhBTkRMSU5HICovXG5cdFx0c2hvd01lbnUgKCkge1xuXHRcdFx0dGhpcy5vcGVuZWRNZW51ID0gdHJ1ZTtcblx0XHR9LFxuXHRcdGhpZGVNZW51ICgpIHtcblx0XHRcdHRoaXMub3BlbmVkTWVudSA9IGZhbHNlO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBHZW5lcmF0ZSBhdmF0YXIgdXJsXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd9IHVzZXIgVGhlIHVzZXIgbmFtZVxuXHRcdCAqIEBwYXJhbSB7aW50fSBzaXplIFNpemUgaW50ZWdlciwgZGVmYXVsdCAzMlxuXHRcdCAqIEByZXR1cm5zIHtzdHJpbmd9XG5cdFx0ICovXG5cdFx0Z2VuZXJhdGVBdmF0YXIodXNlciwgc2l6ZT0zMikge1xuXHRcdFx0cmV0dXJuIE9DLmdlbmVyYXRlVXJsKFxuXHRcdFx0XHQnL2F2YXRhci97dXNlcn0ve3NpemV9P3Y9e3ZlcnNpb259Jyxcblx0XHRcdFx0e1xuXHRcdFx0XHRcdHVzZXI6IHVzZXIsXG5cdFx0XHRcdFx0c2l6ZTogc2l6ZSxcblx0XHRcdFx0XHR2ZXJzaW9uOiBvY191c2VyY29uZmlnLmF2YXRhci52ZXJzaW9uXG5cdFx0XHRcdH1cblx0XHRcdCk7XG5cdFx0fSxcblxuXG5cdFx0LyoqXG5cdFx0ICogRm9ybWF0IHRoZSBsaW1pdCB0ZXh0IGluIHRoZSBzZWxlY3RlZCBvcHRpb25zXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtpbnR9IGNvdW50IGVsZW1lbnRzIGxlZnRcblx0XHQgKiBAcmV0dXJucyB7c3RyaW5nfVxuXHRcdCAqL1xuXHRcdGxpbWl0R3JvdXBzKGNvdW50KSB7XG5cdFx0XHRyZXR1cm4gJysnK2NvdW50O1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBTZXQgdXNlciBkaXNwbGF5TmFtZVxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7c3RyaW5nfSBkaXNwbGF5TmFtZSBUaGUgZGlzcGxheSBuYW1lXG5cdFx0ICogQHJldHVybnMge1Byb21pc2V9XG5cdFx0ICovXG5cdFx0dXBkYXRlRGlzcGxheU5hbWUoKSB7XG5cdFx0XHRsZXQgZGlzcGxheU5hbWUgPSB0aGlzLiRyZWZzLmRpc3BsYXlOYW1lLnZhbHVlO1xuXHRcdFx0dGhpcy5sb2FkaW5nLmRpc3BsYXlOYW1lID0gdHJ1ZTtcblx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdzZXRVc2VyRGF0YScsIHtcblx0XHRcdFx0dXNlcmlkOiB0aGlzLnVzZXIuaWQsIFxuXHRcdFx0XHRrZXk6ICdkaXNwbGF5bmFtZScsXG5cdFx0XHRcdHZhbHVlOiBkaXNwbGF5TmFtZVxuXHRcdFx0fSkudGhlbigoKSA9PiB7XG5cdFx0XHRcdHRoaXMubG9hZGluZy5kaXNwbGF5TmFtZSA9IGZhbHNlO1xuXHRcdFx0XHR0aGlzLiRyZWZzLmRpc3BsYXlOYW1lLnZhbHVlID0gZGlzcGxheU5hbWU7XG5cdFx0XHR9KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogU2V0IHVzZXIgcGFzc3dvcmRcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gcGFzc3dvcmQgVGhlIGVtYWlsIGFkcmVzc1xuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdHVwZGF0ZVBhc3N3b3JkKCkge1xuXHRcdFx0bGV0IHBhc3N3b3JkID0gdGhpcy4kcmVmcy5wYXNzd29yZC52YWx1ZTtcblx0XHRcdHRoaXMubG9hZGluZy5wYXNzd29yZCA9IHRydWU7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy51c2VyLmlkLFxuXHRcdFx0XHRrZXk6ICdwYXNzd29yZCcsXG5cdFx0XHRcdHZhbHVlOiBwYXNzd29yZFxuXHRcdFx0fSkudGhlbigoKSA9PiB7XG5cdFx0XHRcdHRoaXMubG9hZGluZy5wYXNzd29yZCA9IGZhbHNlO1xuXHRcdFx0XHR0aGlzLiRyZWZzLnBhc3N3b3JkLnZhbHVlID0gJyc7IC8vIGVtcHR5ICYgc2hvdyBwbGFjZWhvbGRlciBcblx0XHRcdH0pO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBTZXQgdXNlciBtYWlsQWRkcmVzc1xuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7c3RyaW5nfSBtYWlsQWRkcmVzcyBUaGUgZW1haWwgYWRyZXNzXG5cdFx0ICogQHJldHVybnMge1Byb21pc2V9XG5cdFx0ICovXG5cdFx0dXBkYXRlRW1haWwoKSB7XG5cdFx0XHRsZXQgbWFpbEFkZHJlc3MgPSB0aGlzLiRyZWZzLm1haWxBZGRyZXNzLnZhbHVlO1xuXHRcdFx0dGhpcy5sb2FkaW5nLm1haWxBZGRyZXNzID0gdHJ1ZTtcblx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdzZXRVc2VyRGF0YScsIHtcblx0XHRcdFx0dXNlcmlkOiB0aGlzLnVzZXIuaWQsXG5cdFx0XHRcdGtleTogJ2VtYWlsJyxcblx0XHRcdFx0dmFsdWU6IG1haWxBZGRyZXNzXG5cdFx0XHR9KS50aGVuKCgpID0+IHtcblx0XHRcdFx0dGhpcy5sb2FkaW5nLm1haWxBZGRyZXNzID0gZmFsc2U7XG5cdFx0XHRcdHRoaXMuJHJlZnMubWFpbEFkZHJlc3MudmFsdWUgPSBtYWlsQWRkcmVzcztcblx0XHRcdH0pO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBDcmVhdGUgYSBuZXcgZ3JvdXBcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gZ3JvdXBzIEdyb3VwIGlkXG5cdFx0ICogQHJldHVybnMge1Byb21pc2V9XG5cdFx0ICovXG5cdFx0Y3JlYXRlR3JvdXAoZ2lkKSB7XG5cdFx0XHR0aGlzLmxvYWRpbmcgPSB7Z3JvdXBzOnRydWUsIHN1YmFkbWluczp0cnVlfVxuXHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2FkZEdyb3VwJywgZ2lkKS50aGVuKCgpID0+IHtcblx0XHRcdFx0dGhpcy5sb2FkaW5nID0ge2dyb3VwczpmYWxzZSwgc3ViYWRtaW5zOmZhbHNlfTtcblx0XHRcdFx0bGV0IHVzZXJpZCA9IHRoaXMudXNlci5pZDtcblx0XHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2FkZFVzZXJHcm91cCcsIHt1c2VyaWQsIGdpZH0pO1xuXHRcdFx0fSk7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5nZXRHcm91cHNbdGhpcy5ncm91cHMubGVuZ3RoXTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogQWRkIHVzZXIgdG8gZ3JvdXBcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge29iamVjdH0gZ3JvdXAgR3JvdXAgb2JqZWN0XG5cdFx0ICogQHJldHVybnMge1Byb21pc2V9XG5cdFx0ICovXG5cdFx0YWRkVXNlckdyb3VwKGdyb3VwKSB7XG5cdFx0XHR0aGlzLmxvYWRpbmcuZ3JvdXBzID0gdHJ1ZTtcblx0XHRcdGxldCB1c2VyaWQgPSB0aGlzLnVzZXIuaWQ7XG5cdFx0XHRsZXQgZ2lkID0gZ3JvdXAuaWQ7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2FkZFVzZXJHcm91cCcsIHt1c2VyaWQsIGdpZH0pXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5sb2FkaW5nLmdyb3VwcyA9IGZhbHNlKTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogUmVtb3ZlIHVzZXIgZnJvbSBncm91cFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7b2JqZWN0fSBncm91cCBHcm91cCBvYmplY3Rcblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0XHQgKi9cblx0XHRyZW1vdmVVc2VyR3JvdXAoZ3JvdXApIHtcblx0XHRcdHRoaXMubG9hZGluZy5ncm91cHMgPSB0cnVlO1xuXHRcdFx0bGV0IHVzZXJpZCA9IHRoaXMudXNlci5pZDtcblx0XHRcdGxldCBnaWQgPSBncm91cC5pZDtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgncmVtb3ZlVXNlckdyb3VwJywge3VzZXJpZCwgZ2lkfSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLmxvYWRpbmcuZ3JvdXBzID0gZmFsc2UpO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBBZGQgdXNlciB0byBncm91cFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7b2JqZWN0fSBncm91cCBHcm91cCBvYmplY3Rcblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0XHQgKi9cblx0XHRhZGRVc2VyU3ViQWRtaW4oZ3JvdXApIHtcblx0XHRcdHRoaXMubG9hZGluZy5zdWJhZG1pbnMgPSB0cnVlO1xuXHRcdFx0bGV0IHVzZXJpZCA9IHRoaXMudXNlci5pZDtcblx0XHRcdGxldCBnaWQgPSBncm91cC5pZDtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnYWRkVXNlclN1YkFkbWluJywge3VzZXJpZCwgZ2lkfSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLmxvYWRpbmcuc3ViYWRtaW5zID0gZmFsc2UpO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBSZW1vdmUgdXNlciBmcm9tIGdyb3VwXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtvYmplY3R9IGdyb3VwIEdyb3VwIG9iamVjdFxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdHJlbW92ZVVzZXJTdWJBZG1pbihncm91cCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nLnN1YmFkbWlucyA9IHRydWU7XG5cdFx0XHRsZXQgdXNlcmlkID0gdGhpcy51c2VyLmlkO1xuXHRcdFx0bGV0IGdpZCA9IGdyb3VwLmlkO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdyZW1vdmVVc2VyU3ViQWRtaW4nLCB7dXNlcmlkLCBnaWR9KVxuXHRcdFx0XHRcdC50aGVuKCgpID0+IHRoaXMubG9hZGluZy5zdWJhZG1pbnMgPSBmYWxzZSk7XG5cdFx0fSxcblxuXG5cdFx0LyoqXG5cdFx0ICogVmFsaWRhdGUgcXVvdGEgc3RyaW5nIHRvIG1ha2Ugc3VyZSBpdCdzIGEgdmFsaWQgaHVtYW4gZmlsZSBzaXplXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd8T2JqZWN0fSBxdW90YSBRdW90YSBpbiByZWFkYWJsZSBmb3JtYXQgJzUgR0InIG9yIE9iamVjdCB7aWQ6ICc1IEdCJywgbGFiZWw6ICc1R0InfVxuXHRcdCAqIEByZXR1cm5zIHtzdHJpbmd9XG5cdFx0ICovXG5cdFx0c2V0VXNlclF1b3RhKHF1b3RhID0gJ25vbmUnKSB7XG5cdFx0XHR0aGlzLmxvYWRpbmcucXVvdGEgPSB0cnVlO1xuXHRcdFx0Ly8gZW5zdXJlIHdlIG9ubHkgc2VuZCB0aGUgcHJlc2V0IGlkXG5cdFx0XHRxdW90YSA9IHF1b3RhLmlkID8gcXVvdGEuaWQgOiBxdW90YTtcblx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdzZXRVc2VyRGF0YScsIHtcblx0XHRcdFx0dXNlcmlkOiB0aGlzLnVzZXIuaWQsIFxuXHRcdFx0XHRrZXk6ICdxdW90YScsXG5cdFx0XHRcdHZhbHVlOiBxdW90YVxuXHRcdFx0fSkudGhlbigoKSA9PiB0aGlzLmxvYWRpbmcucXVvdGEgPSBmYWxzZSk7XG5cdFx0XHRyZXR1cm4gcXVvdGE7XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIFZhbGlkYXRlIHF1b3RhIHN0cmluZyB0byBtYWtlIHN1cmUgaXQncyBhIHZhbGlkIGh1bWFuIGZpbGUgc2l6ZVxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7c3RyaW5nfSBxdW90YSBRdW90YSBpbiByZWFkYWJsZSBmb3JtYXQgJzUgR0InXG5cdFx0ICogQHJldHVybnMge1Byb21pc2V8Ym9vbGVhbn1cblx0XHQgKi9cblx0XHR2YWxpZGF0ZVF1b3RhKHF1b3RhKSB7XG5cdFx0XHQvLyBvbmx5IHVzZWQgZm9yIG5ldyBwcmVzZXRzIHNlbnQgdGhyb3VnaCBAVGFnXG5cdFx0XHRsZXQgdmFsaWRRdW90YSA9IE9DLlV0aWwuY29tcHV0ZXJGaWxlU2l6ZShxdW90YSk7XG5cdFx0XHRpZiAodmFsaWRRdW90YSA9PT0gMCkge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5zZXRVc2VyUXVvdGEoJ25vbmUnKTtcblx0XHRcdH0gZWxzZSBpZiAodmFsaWRRdW90YSAhPT0gbnVsbCkge1xuXHRcdFx0XHQvLyB1bmlmeSBmb3JtYXQgb3V0cHV0XG5cdFx0XHRcdHJldHVybiB0aGlzLnNldFVzZXJRdW90YShPQy5VdGlsLmh1bWFuRmlsZVNpemUoT0MuVXRpbC5jb21wdXRlckZpbGVTaXplKHF1b3RhKSkpO1xuXHRcdFx0fVxuXHRcdFx0Ly8gaWYgbm8gdmFsaWQgZG9vIG5vdCBjaGFuZ2Vcblx0XHRcdHJldHVybiBmYWxzZTtcblx0XHR9XG5cdH1cbn1cbjwvc2NyaXB0PlxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9jb21wb25lbnRzL3VzZXJMaXN0L3VzZXJSb3cudnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///15\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__popoverMenu__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_click_outside__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_multiselect__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_multiselect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_vue_multiselect__);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n//import Multiselect from '../../../node_modules/vue-multiselect/src/index';\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'userRow',\n\tprops: ['user', 'settings', 'groups', 'subAdminsGroups', 'quotaOptions', 'showConfig'],\n\tcomponents: {\n\t\tpopoverMenu: __WEBPACK_IMPORTED_MODULE_0__popoverMenu__[\"a\" /* default */],\n\t\tMultiselect: __WEBPACK_IMPORTED_MODULE_2_vue_multiselect___default.a\n\t},\n\tdirectives: {\n\t\tClickOutside: __WEBPACK_IMPORTED_MODULE_1_vue_click_outside___default.a\n\t},\n\tmounted: function mounted() {\n\t\t// prevent click outside event with popupItem.\n\t\tthis.popupItem = this.$el;\n\t},\n\tdata: function data() {\n\t\treturn {\n\t\t\trand: parseInt(Math.random() * 1000),\n\t\t\topenedMenu: 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}\n\t\t};\n\t},\n\n\tcomputed: {\n\t\t/* USER POPOVERMENU ACTIONS */\n\t\tuserActions: function userActions() {\n\t\t\treturn [{\n\t\t\t\ticon: 'icon-delete',\n\t\t\t\ttext: t('settings', 'Delete user'),\n\t\t\t\taction: this.deleteUser\n\t\t\t}, {\n\t\t\t\t'icon': this.user.enabled ? 'icon-close' : 'icon-add',\n\t\t\t\t'text': this.user.enabled ? t('settings', 'Disable user') : t('settings', 'Enable user'),\n\t\t\t\t'action': this.enableDisableUser\n\t\t\t}];\n\t\t},\n\n\n\t\t/* GROUPS MANAGEMENT */\n\t\tuserGroups: function userGroups() {\n\t\t\tvar _this = this;\n\n\t\t\tvar userGroups = this.groups.filter(function (group) {\n\t\t\t\treturn _this.user.groups.includes(group.id);\n\t\t\t});\n\t\t\treturn userGroups;\n\t\t},\n\t\tuserSubAdminsGroups: function userSubAdminsGroups() {\n\t\t\tvar _this2 = this;\n\n\t\t\tvar userSubAdminsGroups = this.subAdminsGroups.filter(function (group) {\n\t\t\t\treturn _this2.user.subadmin.includes(group.id);\n\t\t\t});\n\t\t\treturn userSubAdminsGroups;\n\t\t},\n\n\n\t\t/* QUOTA MANAGEMENT */\n\t\tusedQuota: function usedQuota() {\n\t\t\tvar 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\tvar usedInGB = this.user.quota.used / (10 * Math.pow(2, 30));\n\t\t\t\t//asymptotic curve approaching 50% at 10GB to visualize used stace with infinite quota\n\t\t\t\tquota = 95 * (1 - 1 / (usedInGB + 1));\n\t\t\t}\n\t\t\treturn isNaN(quota) ? 0 : quota;\n\t\t},\n\n\t\t// Mapping saved values to objects\n\t\tuserQuota: function userQuota() {\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\tvar humanQuota = OC.Util.humanFileSize(this.user.quota.quota);\n\t\t\t\tvar userQuota = this.quotaOptions.find(function (quota) {\n\t\t\t\t\treturn quota.id === humanQuota;\n\t\t\t\t});\n\t\t\t\treturn userQuota ? userQuota : { id: humanQuota, label: humanQuota };\n\t\t\t} else if (this.user.quota.quota === 0 || 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\n\t\t/* PASSWORD POLICY? */\n\t\tminPasswordLength: function minPasswordLength() {\n\t\t\treturn this.$store.getters.getPasswordPolicyMinLength;\n\t\t}\n\t},\n\tmethods: {\n\t\t/* MENU HANDLING */\n\t\tshowMenu: function showMenu() {\n\t\t\tthis.openedMenu = true;\n\t\t},\n\t\thideMenu: function hideMenu() {\n\t\t\tthis.openedMenu = false;\n\t\t},\n\n\n\t\t/**\n * Generate avatar url\n * \n * @param {string} user The user name\n * @param {int} size Size integer, default 32\n * @returns {string}\n */\n\t\tgenerateAvatar: function generateAvatar(user) {\n\t\t\tvar size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 32;\n\n\t\t\treturn OC.generateUrl('/avatar/{user}/{size}?v={version}', {\n\t\t\t\tuser: user,\n\t\t\t\tsize: size,\n\t\t\t\tversion: oc_userconfig.avatar.version\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Format the limit text in the selected options\n * \n * @param {int} count elements left\n * @returns {string}\n */\n\t\tlimitGroups: function limitGroups(count) {\n\t\t\treturn '+' + count;\n\t\t},\n\t\tdeleteUser: function deleteUser() {\n\t\t\tvar _this3 = this;\n\n\t\t\tthis.loading.delete = true;\n\t\t\tthis.loading.all = true;\n\t\t\tvar userid = this.user.id;\n\t\t\treturn this.$store.dispatch('deleteUser', { userid: userid }).then(function () {\n\t\t\t\t_this3.loading.delete = false;\n\t\t\t\t_this3.loading.all = false;\n\t\t\t});\n\t\t},\n\t\tenableDisableUser: function enableDisableUser() {\n\t\t\tvar _this4 = this;\n\n\t\t\tthis.loading.delete = true;\n\t\t\tthis.loading.all = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar enabled = !this.user.enabled;\n\t\t\treturn this.$store.dispatch('enableDisableUser', { userid: userid, enabled: enabled }).then(function () {\n\t\t\t\t_this4.loading.delete = false;\n\t\t\t\t_this4.loading.all = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user displayName\n * \n * @param {string} displayName The display name\n * @returns {Promise}\n */\n\t\tupdateDisplayName: function updateDisplayName() {\n\t\t\tvar _this5 = this;\n\n\t\t\tvar displayName = this.$refs.displayName.value;\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: displayName\n\t\t\t}).then(function () {\n\t\t\t\t_this5.loading.displayName = false;\n\t\t\t\t_this5.$refs.displayName.value = displayName;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user password\n * \n * @param {string} password The email adress\n * @returns {Promise}\n */\n\t\tupdatePassword: function updatePassword() {\n\t\t\tvar _this6 = this;\n\n\t\t\tvar password = this.$refs.password.value;\n\t\t\tthis.loading.password = true;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'password',\n\t\t\t\tvalue: password\n\t\t\t}).then(function () {\n\t\t\t\t_this6.loading.password = false;\n\t\t\t\t_this6.$refs.password.value = ''; // empty & show placeholder \n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Set user mailAddress\n * \n * @param {string} mailAddress The email adress\n * @returns {Promise}\n */\n\t\tupdateEmail: function updateEmail() {\n\t\t\tvar _this7 = this;\n\n\t\t\tvar mailAddress = this.$refs.mailAddress.value;\n\t\t\tthis.loading.mailAddress = true;\n\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'email',\n\t\t\t\tvalue: mailAddress\n\t\t\t}).then(function () {\n\t\t\t\t_this7.loading.mailAddress = false;\n\t\t\t\t_this7.$refs.mailAddress.value = mailAddress;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Create a new group\n * \n * @param {string} groups Group id\n * @returns {Promise}\n */\n\t\tcreateGroup: function createGroup(gid) {\n\t\t\tvar _this8 = this;\n\n\t\t\tthis.loading = { groups: true, subadmins: true };\n\t\t\tthis.$store.dispatch('addGroup', gid).then(function () {\n\t\t\t\t_this8.loading = { groups: false, subadmins: false };\n\t\t\t\tvar userid = _this8.user.id;\n\t\t\t\t_this8.$store.dispatch('addUserGroup', { userid: userid, gid: gid });\n\t\t\t});\n\t\t\treturn this.$store.getters.getGroups[this.groups.length];\n\t\t},\n\n\n\t\t/**\n * Add user to group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\taddUserGroup: function addUserGroup(group) {\n\t\t\tvar _this9 = this;\n\n\t\t\tthis.loading.groups = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('addUserGroup', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this9.loading.groups = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Remove user from group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\tremoveUserGroup: function removeUserGroup(group) {\n\t\t\tvar _this10 = this;\n\n\t\t\tthis.loading.groups = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('removeUserGroup', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this10.loading.groups = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Add user to group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\taddUserSubAdmin: function addUserSubAdmin(group) {\n\t\t\tvar _this11 = this;\n\n\t\t\tthis.loading.subadmins = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('addUserSubAdmin', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this11.loading.subadmins = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Remove user from group\n * \n * @param {object} group Group object\n * @returns {Promise}\n */\n\t\tremoveUserSubAdmin: function removeUserSubAdmin(group) {\n\t\t\tvar _this12 = this;\n\n\t\t\tthis.loading.subadmins = true;\n\t\t\tvar userid = this.user.id;\n\t\t\tvar gid = group.id;\n\t\t\treturn this.$store.dispatch('removeUserSubAdmin', { userid: userid, gid: gid }).then(function () {\n\t\t\t\treturn _this12.loading.subadmins = false;\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string|Object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}\n * @returns {string}\n */\n\t\tsetUserQuota: function setUserQuota() {\n\t\t\tvar _this13 = this;\n\n\t\t\tvar quota = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'none';\n\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\t\t\tthis.$store.dispatch('setUserData', {\n\t\t\t\tuserid: this.user.id,\n\t\t\t\tkey: 'quota',\n\t\t\t\tvalue: quota\n\t\t\t}).then(function () {\n\t\t\t\treturn _this13.loading.quota = false;\n\t\t\t});\n\t\t\treturn quota;\n\t\t},\n\n\n\t\t/**\n * Validate quota string to make sure it's a valid human file size\n * \n * @param {string} quota Quota in readable format '5 GB'\n * @returns {Promise|boolean}\n */\n\t\tvalidateQuota: function validateQuota(quota) {\n\t\t\t// only used for new presets sent through @Tag\n\t\t\tvar validQuota = OC.Util.computerFileSize(quota);\n\t\t\tif (validQuota === 0) {\n\t\t\t\treturn this.setUserQuota('none');\n\t\t\t} else if (validQuota !== null) {\n\t\t\t\t// unify format output\n\t\t\t\treturn this.setUserQuota(OC.Util.humanFileSize(OC.Util.computerFileSize(quota)));\n\t\t\t}\n\t\t\t// if no valid doo not change\n\t\t\treturn false;\n\t\t}\n\t}\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QvdXNlclJvdy52dWU/Mjg4YyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXdFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtPQUVBOzBFQUNBOztBQUVBO0FBRUE7QUFIQTs7QUFNQTtBQUZBOzZCQUdBO0FBQ0E7d0JBQ0E7QUFDQTt1QkFDQTs7a0NBRUE7ZUFDQTs7U0FFQTtpQkFDQTtjQUNBO2lCQUNBO1lBQ0E7ZUFDQTtXQUNBO1lBQ0E7YUFHQTtBQVhBO0FBSEE7QUFlQTs7O0FBRUE7c0NBQ0E7O1VBRUE7d0JBQ0E7aUJBQ0E7QUFIQTsrQ0FLQTs4RUFDQTttQkFFQTtBQUpBO0FBTUE7OztBQUNBOztBQUNBOzs7NENBQ0E7O1VBQ0E7QUFDQTs7QUFDQTs7OytDQUNBOztVQUNBO0FBRUE7OztBQUNBO2tDQUNBOytCQUNBO2tCQUNBO29FQUNBO1VBQ0E7NERBQ0E7QUFDQTtzQ0FDQTtBQUNBOzZCQUNBO0FBQ0E7O0FBQ0E7O2tDQUVBO0FBQ0E7MkRBQ0E7O3lCQUNBOzs0REFDQTtrRkFDQTtBQUNBOzZCQUNBO0FBQ0E7K0JBVEEsQ0FVQTtBQUVBOzs7QUFDQTtrREFDQTs4QkFDQTtBQUVBO0FBdERBOztBQXdEQTtnQ0FDQTtxQkFDQTtBQUNBO2dDQUNBO3FCQUNBO0FBRUE7OztBQU9BOzs7Ozs7OztBQUNBOzthQUNBLFlBQ0E7VUFFQTtVQUNBO2tDQUdBO0FBTEE7QUFRQTs7O0FBTUE7Ozs7OzsyQ0FDQTtnQkFDQTtBQUVBOztBQUNBOzt5QkFDQTtzQkFDQTswQkFDQTsrQ0FDQSxtQ0FDQTs0QkFDQTt5QkFDQTtBQUNBO0FBRUE7O0FBQ0E7O3lCQUNBO3NCQUNBOzBCQUNBOzRCQUNBO3NFQUNBLHFDQUNBOzRCQUNBO3lCQUNBO0FBQ0E7QUFFQTs7O0FBTUE7Ozs7Ozs7QUFDQTs7NENBQ0E7OEJBQ0E7O3NCQUVBO1NBQ0E7V0FDQTtBQUhBLHVCQUlBO2lDQUNBO3FDQUNBO0FBQ0E7QUFFQTs7O0FBTUE7Ozs7Ozs7QUFDQTs7c0NBQ0E7MkJBQ0E7O3NCQUVBO1NBQ0E7V0FDQTtBQUhBLHVCQUlBOzhCQUNBO3NDQUNBO0FBQ0E7QUFFQTs7O0FBTUE7Ozs7Ozs7QUFDQTs7NENBQ0E7OEJBQ0E7O3NCQUVBO1NBQ0E7V0FDQTtBQUhBLHVCQUlBO2lDQUNBO3FDQUNBO0FBQ0E7QUFFQTs7O0FBTUE7Ozs7Ozs7QUFDQTs7NkNBQ0E7MERBQ0E7aURBQ0E7NkJBQ0E7NkRBQ0E7QUFDQTtvREFDQTtBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzt5QkFDQTswQkFDQTttQkFDQTtpRUFDQTttQ0FDQTs7QUFFQTs7O0FBTUE7Ozs7Ozs7QUFDQTs7eUJBQ0E7MEJBQ0E7bUJBQ0E7b0VBQ0E7b0NBQ0E7O0FBRUE7OztBQU1BOzs7Ozs7O0FBQ0E7OzRCQUNBOzBCQUNBO21CQUNBO29FQUNBO3VDQUNBOztBQUVBOzs7QUFNQTs7Ozs7OztBQUNBOzs0QkFDQTswQkFDQTttQkFDQTt1RUFDQTt1Q0FDQTs7QUFHQTs7O0FBTUE7Ozs7Ozs7QUFDQTs7Ozt3QkFDQTtBQUNBO2lDQUNBOztzQkFFQTtTQUNBO1dBQ0E7QUFIQTttQ0FJQTs7VUFDQTtBQUVBOzs7QUFNQTs7Ozs7OytDQUNBO0FBQ0E7NkNBQ0E7eUJBQ0E7NkJBQ0E7bUNBQ0E7QUFDQTs0RUFDQTtBQUNBO0FBQ0E7VUFDQTtBQUVBO0FBbk9BO0FBdEZBIiwiZmlsZSI6IjE1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8ZGl2IGNsYXNzPVwicm93XCIgOmNsYXNzPVwieydkaXNhYmxlZCc6IGxvYWRpbmcuZGVsZXRlIHx8IGxvYWRpbmcuZGlzYWJsZX1cIj5cblx0XHQ8ZGl2IGNsYXNzPVwiYXZhdGFyXCIgOmNsYXNzPVwieydpY29uLWxvYWRpbmcnOiBsb2FkaW5nLmRlbGV0ZSB8fCBsb2FkaW5nLmRpc2FibGV9XCI+PGltZyBhbHQ9XCJcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMzJcIiA6c3JjPVwiZ2VuZXJhdGVBdmF0YXIodXNlci5pZCwgMzIpXCIgOnNyY3NldD1cImdlbmVyYXRlQXZhdGFyKHVzZXIuaWQsIDY0KSsnIDJ4LCAnK2dlbmVyYXRlQXZhdGFyKHVzZXIuaWQsIDEyOCkrJyA0eCdcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibmFtZVwiPnt7dXNlci5pZH19PC9kaXY+XG5cdFx0PGZvcm0gY2xhc3M9XCJkaXNwbGF5TmFtZVwiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5kaXNwbGF5TmFtZX1cIiB2LW9uOnN1Ym1pdC5wcmV2ZW50PVwidXBkYXRlRGlzcGxheU5hbWVcIj5cblx0XHRcdDxpbnB1dCA6aWQ9XCInZGlzcGxheU5hbWUnK3VzZXIuaWQrcmFuZFwiIHR5cGU9XCJ0ZXh0XCJcblx0XHRcdFx0XHQ6ZGlzYWJsZWQ9XCJsb2FkaW5nLmRpc3BsYXlOYW1lfHxsb2FkaW5nLmFsbFwiXG5cdFx0XHRcdFx0OnZhbHVlPVwidXNlci5kaXNwbGF5bmFtZVwiIHJlZj1cImRpc3BsYXlOYW1lXCJcblx0XHRcdFx0XHRhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIiBhdXRvY29ycmVjdD1cIm9mZlwiIGF1dG9jYXBpdGFsaXplPVwib2ZmXCIgc3BlbGxjaGVjaz1cImZhbHNlXCIgLz5cblx0XHRcdDxpbnB1dCB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJpY29uLWNvbmZpcm1cIiB2YWx1ZT1cIlwiIC8+XG5cdFx0PC9mb3JtPlxuXHRcdDxmb3JtIGNsYXNzPVwicGFzc3dvcmRcIiB2LWlmPVwic2V0dGluZ3MuY2FuQ2hhbmdlUGFzc3dvcmRcIiA6Y2xhc3M9XCJ7J2ljb24tbG9hZGluZy1zbWFsbCc6IGxvYWRpbmcucGFzc3dvcmR9XCJcblx0XHRcdCAgdi1vbjpzdWJtaXQucHJldmVudD1cInVwZGF0ZVBhc3N3b3JkXCI+XG5cdFx0XHQ8aW5wdXQgOmlkPVwiJ3Bhc3N3b3JkJyt1c2VyLmlkK3JhbmRcIiB0eXBlPVwicGFzc3dvcmRcIiByZXF1aXJlZFxuXHRcdFx0XHRcdDpkaXNhYmxlZD1cImxvYWRpbmcucGFzc3dvcmR8fGxvYWRpbmcuYWxsXCIgOm1pbmxlbmd0aD1cIm1pblBhc3N3b3JkTGVuZ3RoXCJcblx0XHRcdFx0XHR2YWx1ZT1cIlwiIDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ05ldyBwYXNzd29yZCcpXCIgcmVmPVwicGFzc3dvcmRcIlxuXHRcdFx0XHRcdGF1dG9jb21wbGV0ZT1cIm5ldy1wYXNzd29yZFwiIGF1dG9jb3JyZWN0PVwib2ZmXCIgYXV0b2NhcGl0YWxpemU9XCJvZmZcIiBzcGVsbGNoZWNrPVwiZmFsc2VcIiAvPlxuXHRcdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImljb24tY29uZmlybVwiIHZhbHVlPVwiXCIgLz5cblx0XHQ8L2Zvcm0+XG5cdFx0PGRpdiB2LWVsc2U+PC9kaXY+XG5cdFx0PGZvcm0gY2xhc3M9XCJtYWlsQWRkcmVzc1wiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5tYWlsQWRkcmVzc31cIiB2LW9uOnN1Ym1pdC5wcmV2ZW50PVwidXBkYXRlRW1haWxcIj5cblx0XHRcdDxpbnB1dCA6aWQ9XCInbWFpbEFkZHJlc3MnK3VzZXIuaWQrcmFuZFwiIHR5cGU9XCJlbWFpbFwiXG5cdFx0XHRcdFx0OmRpc2FibGVkPVwibG9hZGluZy5tYWlsQWRkcmVzc3x8bG9hZGluZy5hbGxcIlxuXHRcdFx0XHRcdDp2YWx1ZT1cInVzZXIuZW1haWxcIiByZWY9XCJtYWlsQWRkcmVzc1wiXG5cdFx0XHRcdFx0YXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCIgYXV0b2NvcnJlY3Q9XCJvZmZcIiBhdXRvY2FwaXRhbGl6ZT1cIm9mZlwiIHNwZWxsY2hlY2s9XCJmYWxzZVwiIC8+XG5cdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiaWNvbi1jb25maXJtXCIgdmFsdWU9XCJcIiAvPlxuXHRcdDwvZm9ybT5cblx0XHQ8ZGl2IGNsYXNzPVwiZ3JvdXBzXCIgOmNsYXNzPVwieydpY29uLWxvYWRpbmctc21hbGwnOiBsb2FkaW5nLmdyb3Vwc31cIj5cblx0XHRcdDxtdWx0aXNlbGVjdCA6dmFsdWU9XCJ1c2VyR3JvdXBzXCIgOm9wdGlvbnM9XCJncm91cHNcIiA6ZGlzYWJsZWQ9XCJsb2FkaW5nLmdyb3Vwc3x8bG9hZGluZy5hbGxcIlxuXHRcdFx0XHRcdFx0IHRhZy1wbGFjZWhvbGRlcj1cImNyZWF0ZVwiIDpwbGFjZWhvbGRlcj1cInQoJ3NldHRpbmdzJywgJ0FkZCB1c2VyIGluIGdyb3VwJylcIlxuXHRcdFx0XHRcdFx0IGxhYmVsPVwibmFtZVwiIHRyYWNrLWJ5PVwiaWRcIiBjbGFzcz1cIm11bHRpc2VsZWN0LXZ1ZVwiXG5cdFx0XHRcdFx0XHQgOmxpbWl0PVwiMlwiIDpsaW1pdFRleHQ9XCJsaW1pdEdyb3Vwc1wiXG5cdFx0XHRcdFx0XHQgOm11bHRpcGxlPVwidHJ1ZVwiIDp0YWdnYWJsZT1cInRydWVcIiA6Y2xvc2VPblNlbGVjdD1cImZhbHNlXCJcblx0XHRcdFx0XHRcdCBAdGFnPVwiY3JlYXRlR3JvdXBcIiBAc2VsZWN0PVwiYWRkVXNlckdyb3VwXCIgQHJlbW92ZT1cInJlbW92ZVVzZXJHcm91cFwiPlxuXHRcdFx0PC9tdWx0aXNlbGVjdD5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwic3ViYWRtaW5zXCIgdi1pZj1cInN1YkFkbWluc0dyb3Vwcy5sZW5ndGg+MFwiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5zdWJhZG1pbnN9XCI+XG5cdFx0XHQ8bXVsdGlzZWxlY3QgOnZhbHVlPVwidXNlclN1YkFkbWluc0dyb3Vwc1wiIDpvcHRpb25zPVwic3ViQWRtaW5zR3JvdXBzXCIgOmRpc2FibGVkPVwibG9hZGluZy5zdWJhZG1pbnN8fGxvYWRpbmcuYWxsXCJcblx0XHRcdFx0XHRcdCA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdTZXQgdXNlciBhcyBhZG1pbiBmb3InKVwiXG5cdFx0XHRcdFx0XHQgbGFiZWw9XCJuYW1lXCIgdHJhY2stYnk9XCJpZFwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdCA6bGltaXQ9XCIyXCIgOmxpbWl0VGV4dD1cImxpbWl0R3JvdXBzXCJcblx0XHRcdFx0XHRcdCA6bXVsdGlwbGU9XCJ0cnVlXCIgOmNsb3NlT25TZWxlY3Q9XCJmYWxzZVwiXG5cdFx0XHRcdFx0XHQgQHNlbGVjdD1cImFkZFVzZXJTdWJBZG1pblwiIEByZW1vdmU9XCJyZW1vdmVVc2VyU3ViQWRtaW5cIj5cblx0XHRcdFx0PHNwYW4gc2xvdD1cIm5vUmVzdWx0XCI+e3t0KCdzZXR0aW5ncycsJ05vIHJlc3VsdCcpfX08L3NwYW4+XG5cdFx0XHQ8L211bHRpc2VsZWN0PlxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJxdW90YVwiIDpjbGFzcz1cInsnaWNvbi1sb2FkaW5nLXNtYWxsJzogbG9hZGluZy5xdW90YX1cIj5cblx0XHRcdDxtdWx0aXNlbGVjdCA6dmFsdWU9XCJ1c2VyUXVvdGFcIiA6b3B0aW9ucz1cInF1b3RhT3B0aW9uc1wiIDpkaXNhYmxlZD1cImxvYWRpbmcucXVvdGF8fGxvYWRpbmcuYWxsXCJcblx0XHRcdFx0XHRcdCB0YWctcGxhY2Vob2xkZXI9XCJjcmVhdGVcIiA6cGxhY2Vob2xkZXI9XCJ0KCdzZXR0aW5ncycsICdTZWxlY3QgdXNlciBxdW90YScpXCJcblx0XHRcdFx0XHRcdCBsYWJlbD1cImxhYmVsXCIgdHJhY2stYnk9XCJpZFwiIGNsYXNzPVwibXVsdGlzZWxlY3QtdnVlXCJcblx0XHRcdFx0XHRcdCA6YWxsb3dFbXB0eT1cImZhbHNlXCIgOnRhZ2dhYmxlPVwidHJ1ZVwiXG5cdFx0XHRcdFx0XHQgQHRhZz1cInZhbGlkYXRlUXVvdGFcIiBAaW5wdXQ9XCJzZXRVc2VyUXVvdGFcIj5cblx0XHRcdDwvbXVsdGlzZWxlY3Q+XG5cdFx0XHQ8cHJvZ3Jlc3MgY2xhc3M9XCJxdW90YS11c2VyLXByb2dyZXNzXCIgOmNsYXNzPVwieyd3YXJuJzp1c2VkUXVvdGE+ODB9XCIgOnZhbHVlPVwidXNlZFF1b3RhXCIgbWF4PVwiMTAwXCI+PC9wcm9ncmVzcz5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwic3RvcmFnZUxvY2F0aW9uXCIgdi1pZj1cInNob3dDb25maWcuc2hvd1N0b3JhZ2VQYXRoXCI+e3t1c2VyLnN0b3JhZ2VMb2NhdGlvbn19PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cInVzZXJCYWNrZW5kXCIgdi1pZj1cInNob3dDb25maWcuc2hvd1VzZXJCYWNrZW5kXCI+e3t1c2VyLmJhY2tlbmR9fTwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJsYXN0TG9naW5cIiB2LWlmPVwic2hvd0NvbmZpZy5zaG93TGFzdExvZ2luXCIgOnRpdGxlPVwidXNlci5sYXN0TG9naW4+MCA/IE9DLlV0aWwuZm9ybWF0RGF0ZSh1c2VyLmxhc3RMb2dpbikgOiAnJ1wiPlxuXHRcdFx0e3t1c2VyLmxhc3RMb2dpbj4wID8gT0MuVXRpbC5yZWxhdGl2ZU1vZGlmaWVkRGF0ZSh1c2VyLmxhc3RMb2dpbikgOiB0KCdzZXR0aW5ncycsJ05ldmVyJyl9fVxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJ1c2VyQWN0aW9uc1wiPlxuXHRcdFx0PGRpdiBjbGFzcz1cInRvZ2dsZVVzZXJBY3Rpb25zXCIgdi1pZj1cIk9DLmN1cnJlbnRVc2VyICE9PSB1c2VyLmlkICYmIHVzZXIuaWQgIT09ICdhZG1pbicgJiYgIWxvYWRpbmcuYWxsXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJpY29uLW1vcmVcIiB2LWNsaWNrLW91dHNpZGU9XCJoaWRlTWVudVwiIEBjbGljaz1cInNob3dNZW51XCI+PC9kaXY+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJwb3BvdmVybWVudVwiIDpjbGFzcz1cInsgJ29wZW4nOiBvcGVuZWRNZW51IH1cIj5cblx0XHRcdFx0XHQ8cG9wb3Zlci1tZW51IDptZW51PVwidXNlckFjdGlvbnNcIiAvPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBwb3BvdmVyTWVudSBmcm9tICcuLi9wb3BvdmVyTWVudSc7XG5pbXBvcnQgQ2xpY2tPdXRzaWRlIGZyb20gJ3Z1ZS1jbGljay1vdXRzaWRlJztcbmltcG9ydCBNdWx0aXNlbGVjdCBmcm9tICd2dWUtbXVsdGlzZWxlY3QnO1xuLy9pbXBvcnQgTXVsdGlzZWxlY3QgZnJvbSAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1tdWx0aXNlbGVjdC9zcmMvaW5kZXgnO1xuXG5leHBvcnQgZGVmYXVsdCB7XG5cdG5hbWU6ICd1c2VyUm93Jyxcblx0cHJvcHM6IFsndXNlcicsICdzZXR0aW5ncycsICdncm91cHMnLCAnc3ViQWRtaW5zR3JvdXBzJywgJ3F1b3RhT3B0aW9ucycsICdzaG93Q29uZmlnJ10sXG5cdGNvbXBvbmVudHM6IHtcblx0XHRwb3BvdmVyTWVudSxcblx0XHRNdWx0aXNlbGVjdFxuXHR9LFxuXHRkaXJlY3RpdmVzOiB7XG5cdFx0Q2xpY2tPdXRzaWRlXG5cdH0sXG5cdG1vdW50ZWQoKSB7XG5cdFx0Ly8gcHJldmVudCBjbGljayBvdXRzaWRlIGV2ZW50IHdpdGggcG9wdXBJdGVtLlxuXHRcdHRoaXMucG9wdXBJdGVtID0gdGhpcy4kZWw7XG5cdH0sXG5cdGRhdGEoKSB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdHJhbmQ6IHBhcnNlSW50KE1hdGgucmFuZG9tKCkgKiAxMDAwKSxcblx0XHRcdG9wZW5lZE1lbnU6IGZhbHNlLFxuXHRcdFx0bG9hZGluZzoge1xuXHRcdFx0XHRhbGw6IGZhbHNlLFxuXHRcdFx0XHRkaXNwbGF5TmFtZTogZmFsc2UsXG5cdFx0XHRcdHBhc3N3b3JkOiBmYWxzZSxcblx0XHRcdFx0bWFpbEFkZHJlc3M6IGZhbHNlLFxuXHRcdFx0XHRncm91cHM6IGZhbHNlLFxuXHRcdFx0XHRzdWJhZG1pbnM6IGZhbHNlLFxuXHRcdFx0XHRxdW90YTogZmFsc2UsXG5cdFx0XHRcdGRlbGV0ZTogZmFsc2UsXG5cdFx0XHRcdGRpc2FibGU6IGZhbHNlXG5cdFx0XHR9XG5cdFx0fVxuXHR9LFxuXHRjb21wdXRlZDoge1xuXHRcdC8qIFVTRVIgUE9QT1ZFUk1FTlUgQUNUSU9OUyAqL1xuXHRcdHVzZXJBY3Rpb25zKCkge1xuXHRcdFx0cmV0dXJuIFt7XG5cdFx0XHRcdGljb246ICdpY29uLWRlbGV0ZScsXG5cdFx0XHRcdHRleHQ6IHQoJ3NldHRpbmdzJywnRGVsZXRlIHVzZXInKSxcblx0XHRcdFx0YWN0aW9uOiB0aGlzLmRlbGV0ZVVzZXJcblx0XHRcdH0se1xuXHRcdFx0XHQnaWNvbic6IHRoaXMudXNlci5lbmFibGVkID8gJ2ljb24tY2xvc2UnIDogJ2ljb24tYWRkJyxcblx0XHRcdFx0J3RleHQnOiB0aGlzLnVzZXIuZW5hYmxlZCA/IHQoJ3NldHRpbmdzJywnRGlzYWJsZSB1c2VyJykgOiB0KCdzZXR0aW5ncycsJ0VuYWJsZSB1c2VyJyksXG5cdFx0XHRcdCdhY3Rpb24nOiB0aGlzLmVuYWJsZURpc2FibGVVc2VyXG5cdFx0XHR9XVxuXHRcdH0sXG5cblx0XHQvKiBHUk9VUFMgTUFOQUdFTUVOVCAqL1xuXHRcdHVzZXJHcm91cHMoKSB7XG5cdFx0XHRsZXQgdXNlckdyb3VwcyA9IHRoaXMuZ3JvdXBzLmZpbHRlcihncm91cCA9PiB0aGlzLnVzZXIuZ3JvdXBzLmluY2x1ZGVzKGdyb3VwLmlkKSk7XG5cdFx0XHRyZXR1cm4gdXNlckdyb3Vwcztcblx0XHR9LFxuXHRcdHVzZXJTdWJBZG1pbnNHcm91cHMoKSB7XG5cdFx0XHRsZXQgdXNlclN1YkFkbWluc0dyb3VwcyA9IHRoaXMuc3ViQWRtaW5zR3JvdXBzLmZpbHRlcihncm91cCA9PiB0aGlzLnVzZXIuc3ViYWRtaW4uaW5jbHVkZXMoZ3JvdXAuaWQpKTtcblx0XHRcdHJldHVybiB1c2VyU3ViQWRtaW5zR3JvdXBzO1xuXHRcdH0sXG5cblx0XHQvKiBRVU9UQSBNQU5BR0VNRU5UICovXG5cdFx0dXNlZFF1b3RhKCkge1xuXHRcdFx0bGV0IHF1b3RhID0gdGhpcy51c2VyLnF1b3RhLnF1b3RhO1xuXHRcdFx0aWYgKHF1b3RhID4gMCkge1xuXHRcdFx0XHRxdW90YSA9IE1hdGgubWluKDEwMCwgTWF0aC5yb3VuZCh0aGlzLnVzZXIucXVvdGEudXNlZCAvIHF1b3RhICogMTAwKSk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHR2YXIgdXNlZEluR0IgPSB0aGlzLnVzZXIucXVvdGEudXNlZCAvICgxMCAqIE1hdGgucG93KDIsIDMwKSk7XG5cdFx0XHRcdC8vYXN5bXB0b3RpYyBjdXJ2ZSBhcHByb2FjaGluZyA1MCUgYXQgMTBHQiB0byB2aXN1YWxpemUgdXNlZCBzdGFjZSB3aXRoIGluZmluaXRlIHF1b3RhXG5cdFx0XHRcdHF1b3RhID0gOTUgKiAoMSAtICgxIC8gKHVzZWRJbkdCICsgMSkpKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBpc05hTihxdW90YSkgPyAwIDogcXVvdGE7XG5cdFx0fSxcblx0XHQvLyBNYXBwaW5nIHNhdmVkIHZhbHVlcyB0byBvYmplY3RzXG5cdFx0dXNlclF1b3RhKCkge1xuXHRcdFx0aWYgKHRoaXMudXNlci5xdW90YS5xdW90YSA+IDApIHtcblx0XHRcdFx0Ly8gaWYgdmFsdWUgaXMgdmFsaWQsIGxldCdzIG1hcCB0aGUgcXVvdGFPcHRpb25zIG9yIHJldHVybiBjdXN0b20gcXVvdGFcblx0XHRcdFx0bGV0IGh1bWFuUXVvdGEgPSBPQy5VdGlsLmh1bWFuRmlsZVNpemUodGhpcy51c2VyLnF1b3RhLnF1b3RhKTtcblx0XHRcdFx0bGV0IHVzZXJRdW90YSA9IHRoaXMucXVvdGFPcHRpb25zLmZpbmQocXVvdGEgPT4gcXVvdGEuaWQgPT09IGh1bWFuUXVvdGEpO1xuXHRcdFx0XHRyZXR1cm4gdXNlclF1b3RhID8gdXNlclF1b3RhIDoge2lkOmh1bWFuUXVvdGEsIGxhYmVsOmh1bWFuUXVvdGF9O1xuXHRcdFx0fSBlbHNlIGlmICh0aGlzLnVzZXIucXVvdGEucXVvdGEgPT09IDAgfHwgdGhpcy51c2VyLnF1b3RhLnF1b3RhID09PSAnZGVmYXVsdCcpIHtcblx0XHRcdFx0Ly8gZGVmYXVsdCBxdW90YSBpcyByZXBsYWNlZCBieSB0aGUgcHJvcGVyIHZhbHVlIG9uIGxvYWRcblx0XHRcdFx0cmV0dXJuIHRoaXMucXVvdGFPcHRpb25zWzBdO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIHRoaXMucXVvdGFPcHRpb25zWzFdOyAvLyB1bmxpbWl0ZWRcblx0XHR9LFxuXG5cdFx0LyogUEFTU1dPUkQgUE9MSUNZPyAqL1xuXHRcdG1pblBhc3N3b3JkTGVuZ3RoKCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGg7XG5cdFx0fVxuXHR9LFxuXHRtZXRob2RzOiB7XG5cdFx0LyogTUVOVSBIQU5ETElORyAqL1xuXHRcdHNob3dNZW51ICgpIHtcblx0XHRcdHRoaXMub3BlbmVkTWVudSA9IHRydWU7XG5cdFx0fSxcblx0XHRoaWRlTWVudSAoKSB7XG5cdFx0XHR0aGlzLm9wZW5lZE1lbnUgPSBmYWxzZTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogR2VuZXJhdGUgYXZhdGFyIHVybFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7c3RyaW5nfSB1c2VyIFRoZSB1c2VyIG5hbWVcblx0XHQgKiBAcGFyYW0ge2ludH0gc2l6ZSBTaXplIGludGVnZXIsIGRlZmF1bHQgMzJcblx0XHQgKiBAcmV0dXJucyB7c3RyaW5nfVxuXHRcdCAqL1xuXHRcdGdlbmVyYXRlQXZhdGFyKHVzZXIsIHNpemU9MzIpIHtcblx0XHRcdHJldHVybiBPQy5nZW5lcmF0ZVVybChcblx0XHRcdFx0Jy9hdmF0YXIve3VzZXJ9L3tzaXplfT92PXt2ZXJzaW9ufScsXG5cdFx0XHRcdHtcblx0XHRcdFx0XHR1c2VyOiB1c2VyLFxuXHRcdFx0XHRcdHNpemU6IHNpemUsXG5cdFx0XHRcdFx0dmVyc2lvbjogb2NfdXNlcmNvbmZpZy5hdmF0YXIudmVyc2lvblxuXHRcdFx0XHR9XG5cdFx0XHQpO1xuXHRcdH0sXG5cblxuXHRcdC8qKlxuXHRcdCAqIEZvcm1hdCB0aGUgbGltaXQgdGV4dCBpbiB0aGUgc2VsZWN0ZWQgb3B0aW9uc1xuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7aW50fSBjb3VudCBlbGVtZW50cyBsZWZ0XG5cdFx0ICogQHJldHVybnMge3N0cmluZ31cblx0XHQgKi9cblx0XHRsaW1pdEdyb3Vwcyhjb3VudCkge1xuXHRcdFx0cmV0dXJuICcrJytjb3VudDtcblx0XHR9LFxuXG5cdFx0ZGVsZXRlVXNlcigpIHtcblx0XHRcdHRoaXMubG9hZGluZy5kZWxldGUgPSB0cnVlO1xuXHRcdFx0dGhpcy5sb2FkaW5nLmFsbCA9IHRydWU7XG5cdFx0XHRsZXQgdXNlcmlkID0gdGhpcy51c2VyLmlkO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdkZWxldGVVc2VyJywge3VzZXJpZH0pXG5cdFx0XHRcdC50aGVuKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLmxvYWRpbmcuZGVsZXRlID0gZmFsc2Vcblx0XHRcdFx0XHR0aGlzLmxvYWRpbmcuYWxsID0gZmFsc2Vcblx0XHRcdFx0fSk7XG5cdFx0fSxcblxuXHRcdGVuYWJsZURpc2FibGVVc2VyKCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nLmRlbGV0ZSA9IHRydWU7XG5cdFx0XHR0aGlzLmxvYWRpbmcuYWxsID0gdHJ1ZTtcblx0XHRcdGxldCB1c2VyaWQgPSB0aGlzLnVzZXIuaWQ7XG5cdFx0XHRsZXQgZW5hYmxlZCA9ICF0aGlzLnVzZXIuZW5hYmxlZDtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZW5hYmxlRGlzYWJsZVVzZXInLCB7dXNlcmlkLCBlbmFibGVkfSlcblx0XHRcdFx0LnRoZW4oKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMubG9hZGluZy5kZWxldGUgPSBmYWxzZVxuXHRcdFx0XHRcdHRoaXMubG9hZGluZy5hbGwgPSBmYWxzZVxuXHRcdFx0XHR9KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogU2V0IHVzZXIgZGlzcGxheU5hbWVcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gZGlzcGxheU5hbWUgVGhlIGRpc3BsYXkgbmFtZVxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdHVwZGF0ZURpc3BsYXlOYW1lKCkge1xuXHRcdFx0bGV0IGRpc3BsYXlOYW1lID0gdGhpcy4kcmVmcy5kaXNwbGF5TmFtZS52YWx1ZTtcblx0XHRcdHRoaXMubG9hZGluZy5kaXNwbGF5TmFtZSA9IHRydWU7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy51c2VyLmlkLCBcblx0XHRcdFx0a2V5OiAnZGlzcGxheW5hbWUnLFxuXHRcdFx0XHR2YWx1ZTogZGlzcGxheU5hbWVcblx0XHRcdH0pLnRoZW4oKCkgPT4ge1xuXHRcdFx0XHR0aGlzLmxvYWRpbmcuZGlzcGxheU5hbWUgPSBmYWxzZTtcblx0XHRcdFx0dGhpcy4kcmVmcy5kaXNwbGF5TmFtZS52YWx1ZSA9IGRpc3BsYXlOYW1lO1xuXHRcdFx0fSk7XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIFNldCB1c2VyIHBhc3N3b3JkXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd9IHBhc3N3b3JkIFRoZSBlbWFpbCBhZHJlc3Ncblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0XHQgKi9cblx0XHR1cGRhdGVQYXNzd29yZCgpIHtcblx0XHRcdGxldCBwYXNzd29yZCA9IHRoaXMuJHJlZnMucGFzc3dvcmQudmFsdWU7XG5cdFx0XHR0aGlzLmxvYWRpbmcucGFzc3dvcmQgPSB0cnVlO1xuXHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3NldFVzZXJEYXRhJywge1xuXHRcdFx0XHR1c2VyaWQ6IHRoaXMudXNlci5pZCxcblx0XHRcdFx0a2V5OiAncGFzc3dvcmQnLFxuXHRcdFx0XHR2YWx1ZTogcGFzc3dvcmRcblx0XHRcdH0pLnRoZW4oKCkgPT4ge1xuXHRcdFx0XHR0aGlzLmxvYWRpbmcucGFzc3dvcmQgPSBmYWxzZTtcblx0XHRcdFx0dGhpcy4kcmVmcy5wYXNzd29yZC52YWx1ZSA9ICcnOyAvLyBlbXB0eSAmIHNob3cgcGxhY2Vob2xkZXIgXG5cdFx0XHR9KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogU2V0IHVzZXIgbWFpbEFkZHJlc3Ncblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gbWFpbEFkZHJlc3MgVGhlIGVtYWlsIGFkcmVzc1xuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdHVwZGF0ZUVtYWlsKCkge1xuXHRcdFx0bGV0IG1haWxBZGRyZXNzID0gdGhpcy4kcmVmcy5tYWlsQWRkcmVzcy52YWx1ZTtcblx0XHRcdHRoaXMubG9hZGluZy5tYWlsQWRkcmVzcyA9IHRydWU7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy51c2VyLmlkLFxuXHRcdFx0XHRrZXk6ICdlbWFpbCcsXG5cdFx0XHRcdHZhbHVlOiBtYWlsQWRkcmVzc1xuXHRcdFx0fSkudGhlbigoKSA9PiB7XG5cdFx0XHRcdHRoaXMubG9hZGluZy5tYWlsQWRkcmVzcyA9IGZhbHNlO1xuXHRcdFx0XHR0aGlzLiRyZWZzLm1haWxBZGRyZXNzLnZhbHVlID0gbWFpbEFkZHJlc3M7XG5cdFx0XHR9KTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogQ3JlYXRlIGEgbmV3IGdyb3VwXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtzdHJpbmd9IGdyb3VwcyBHcm91cCBpZFxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdGNyZWF0ZUdyb3VwKGdpZCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nID0ge2dyb3Vwczp0cnVlLCBzdWJhZG1pbnM6dHJ1ZX1cblx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhZGRHcm91cCcsIGdpZCkudGhlbigoKSA9PiB7XG5cdFx0XHRcdHRoaXMubG9hZGluZyA9IHtncm91cHM6ZmFsc2UsIHN1YmFkbWluczpmYWxzZX07XG5cdFx0XHRcdGxldCB1c2VyaWQgPSB0aGlzLnVzZXIuaWQ7XG5cdFx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhZGRVc2VyR3JvdXAnLCB7dXNlcmlkLCBnaWR9KTtcblx0XHRcdH0pO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0R3JvdXBzW3RoaXMuZ3JvdXBzLmxlbmd0aF07XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIEFkZCB1c2VyIHRvIGdyb3VwXG5cdFx0ICogXG5cdFx0ICogQHBhcmFtIHtvYmplY3R9IGdyb3VwIEdyb3VwIG9iamVjdFxuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfVxuXHRcdCAqL1xuXHRcdGFkZFVzZXJHcm91cChncm91cCkge1xuXHRcdFx0dGhpcy5sb2FkaW5nLmdyb3VwcyA9IHRydWU7XG5cdFx0XHRsZXQgdXNlcmlkID0gdGhpcy51c2VyLmlkO1xuXHRcdFx0bGV0IGdpZCA9IGdyb3VwLmlkO1xuXHRcdFx0cmV0dXJuIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdhZGRVc2VyR3JvdXAnLCB7dXNlcmlkLCBnaWR9KVxuXHRcdFx0XHRcdC50aGVuKCgpID0+IHRoaXMubG9hZGluZy5ncm91cHMgPSBmYWxzZSk7XG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIFJlbW92ZSB1c2VyIGZyb20gZ3JvdXBcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge29iamVjdH0gZ3JvdXAgR3JvdXAgb2JqZWN0XG5cdFx0ICogQHJldHVybnMge1Byb21pc2V9XG5cdFx0ICovXG5cdFx0cmVtb3ZlVXNlckdyb3VwKGdyb3VwKSB7XG5cdFx0XHR0aGlzLmxvYWRpbmcuZ3JvdXBzID0gdHJ1ZTtcblx0XHRcdGxldCB1c2VyaWQgPSB0aGlzLnVzZXIuaWQ7XG5cdFx0XHRsZXQgZ2lkID0gZ3JvdXAuaWQ7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3JlbW92ZVVzZXJHcm91cCcsIHt1c2VyaWQsIGdpZH0pXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5sb2FkaW5nLmdyb3VwcyA9IGZhbHNlKTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogQWRkIHVzZXIgdG8gZ3JvdXBcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge29iamVjdH0gZ3JvdXAgR3JvdXAgb2JqZWN0XG5cdFx0ICogQHJldHVybnMge1Byb21pc2V9XG5cdFx0ICovXG5cdFx0YWRkVXNlclN1YkFkbWluKGdyb3VwKSB7XG5cdFx0XHR0aGlzLmxvYWRpbmcuc3ViYWRtaW5zID0gdHJ1ZTtcblx0XHRcdGxldCB1c2VyaWQgPSB0aGlzLnVzZXIuaWQ7XG5cdFx0XHRsZXQgZ2lkID0gZ3JvdXAuaWQ7XG5cdFx0XHRyZXR1cm4gdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2FkZFVzZXJTdWJBZG1pbicsIHt1c2VyaWQsIGdpZH0pXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5sb2FkaW5nLnN1YmFkbWlucyA9IGZhbHNlKTtcblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogUmVtb3ZlIHVzZXIgZnJvbSBncm91cFxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7b2JqZWN0fSBncm91cCBHcm91cCBvYmplY3Rcblx0XHQgKiBAcmV0dXJucyB7UHJvbWlzZX1cblx0XHQgKi9cblx0XHRyZW1vdmVVc2VyU3ViQWRtaW4oZ3JvdXApIHtcblx0XHRcdHRoaXMubG9hZGluZy5zdWJhZG1pbnMgPSB0cnVlO1xuXHRcdFx0bGV0IHVzZXJpZCA9IHRoaXMudXNlci5pZDtcblx0XHRcdGxldCBnaWQgPSBncm91cC5pZDtcblx0XHRcdHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgncmVtb3ZlVXNlclN1YkFkbWluJywge3VzZXJpZCwgZ2lkfSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLmxvYWRpbmcuc3ViYWRtaW5zID0gZmFsc2UpO1xuXHRcdH0sXG5cblxuXHRcdC8qKlxuXHRcdCAqIFZhbGlkYXRlIHF1b3RhIHN0cmluZyB0byBtYWtlIHN1cmUgaXQncyBhIHZhbGlkIGh1bWFuIGZpbGUgc2l6ZVxuXHRcdCAqIFxuXHRcdCAqIEBwYXJhbSB7c3RyaW5nfE9iamVjdH0gcXVvdGEgUXVvdGEgaW4gcmVhZGFibGUgZm9ybWF0ICc1IEdCJyBvciBPYmplY3Qge2lkOiAnNSBHQicsIGxhYmVsOiAnNUdCJ31cblx0XHQgKiBAcmV0dXJucyB7c3RyaW5nfVxuXHRcdCAqL1xuXHRcdHNldFVzZXJRdW90YShxdW90YSA9ICdub25lJykge1xuXHRcdFx0dGhpcy5sb2FkaW5nLnF1b3RhID0gdHJ1ZTtcblx0XHRcdC8vIGVuc3VyZSB3ZSBvbmx5IHNlbmQgdGhlIHByZXNldCBpZFxuXHRcdFx0cXVvdGEgPSBxdW90YS5pZCA/IHF1b3RhLmlkIDogcXVvdGE7XG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7XG5cdFx0XHRcdHVzZXJpZDogdGhpcy51c2VyLmlkLCBcblx0XHRcdFx0a2V5OiAncXVvdGEnLFxuXHRcdFx0XHR2YWx1ZTogcXVvdGFcblx0XHRcdH0pLnRoZW4oKCkgPT4gdGhpcy5sb2FkaW5nLnF1b3RhID0gZmFsc2UpO1xuXHRcdFx0cmV0dXJuIHF1b3RhO1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBWYWxpZGF0ZSBxdW90YSBzdHJpbmcgdG8gbWFrZSBzdXJlIGl0J3MgYSB2YWxpZCBodW1hbiBmaWxlIHNpemVcblx0XHQgKiBcblx0XHQgKiBAcGFyYW0ge3N0cmluZ30gcXVvdGEgUXVvdGEgaW4gcmVhZGFibGUgZm9ybWF0ICc1IEdCJ1xuXHRcdCAqIEByZXR1cm5zIHtQcm9taXNlfGJvb2xlYW59XG5cdFx0ICovXG5cdFx0dmFsaWRhdGVRdW90YShxdW90YSkge1xuXHRcdFx0Ly8gb25seSB1c2VkIGZvciBuZXcgcHJlc2V0cyBzZW50IHRocm91Z2ggQFRhZ1xuXHRcdFx0bGV0IHZhbGlkUXVvdGEgPSBPQy5VdGlsLmNvbXB1dGVyRmlsZVNpemUocXVvdGEpO1xuXHRcdFx0aWYgKHZhbGlkUXVvdGEgPT09IDApIHtcblx0XHRcdFx0cmV0dXJuIHRoaXMuc2V0VXNlclF1b3RhKCdub25lJyk7XG5cdFx0XHR9IGVsc2UgaWYgKHZhbGlkUXVvdGEgIT09IG51bGwpIHtcblx0XHRcdFx0Ly8gdW5pZnkgZm9ybWF0IG91dHB1dFxuXHRcdFx0XHRyZXR1cm4gdGhpcy5zZXRVc2VyUXVvdGEoT0MuVXRpbC5odW1hbkZpbGVTaXplKE9DLlV0aWwuY29tcHV0ZXJGaWxlU2l6ZShxdW90YSkpKTtcblx0XHRcdH1cblx0XHRcdC8vIGlmIG5vIHZhbGlkIGRvbyBub3QgY2hhbmdlXG5cdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0fVxuXHR9XG59XG48L3NjcmlwdD5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvY29tcG9uZW50cy91c2VyTGlzdC91c2VyUm93LnZ1ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///15\n"); /***/ }), /* 16 */ @@ -182,7 +182,7 @@ eval("!function(t,e){ true?module.exports=e():\"function\"==typeof define&&defin /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_axios__);\n\n\nvar requestToken = document.getElementsByTagName('head')[0].getAttribute('data-requesttoken');\nvar tokenHeaders = { headers: { requesttoken: requestToken } };\n\nvar sanitize = function sanitize(url) {\n return url.replace(/\\/$/, ''); // Remove last slash of url\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n requireAdmin: function requireAdmin() {\n return new Promise(function (resolve, reject) {\n setTimeout(reject, 5000); // automatically reject 5s if not ok\n function waitForpassword() {\n if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {\n setTimeout(waitForpassword, 500);\n return;\n }\n resolve();\n }\n waitForpassword();\n OC.PasswordConfirmation.requirePasswordConfirmation();\n }).catch(function (error) {\n return console.log('Required password not entered');\n });\n },\n get: function get(url) {\n return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.get(sanitize(url), tokenHeaders).then(function (response) {\n return Promise.resolve(response);\n }).catch(function (error) {\n return Promise.reject(error);\n });\n },\n post: function post(url, data) {\n return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.post(sanitize(url), data, tokenHeaders).then(function (response) {\n return Promise.resolve(response);\n }).catch(function (error) {\n return Promise.reject(error);\n });\n },\n patch: function patch(url, data) {\n return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.patch(sanitize(url), { data: data, headers: tokenHeaders.headers }).then(function (response) {\n return Promise.resolve(response);\n }).catch(function (error) {\n return Promise.reject(error);\n });\n },\n put: function put(url, data) {\n return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.put(sanitize(url), data, tokenHeaders).then(function (response) {\n return Promise.resolve(response);\n }).catch(function (error) {\n return Promise.reject(error);\n });\n },\n delete: function _delete(url, data) {\n return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.delete(sanitize(url), { data: data, headers: tokenHeaders.headers }).then(function (response) {\n return Promise.resolve(response);\n }).catch(function (error) {\n return Promise.reject(error);\n });\n }\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvYXBpLmpzP2JkOTMiXSwibmFtZXMiOlsicmVxdWVzdFRva2VuIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50c0J5VGFnTmFtZSIsImdldEF0dHJpYnV0ZSIsInRva2VuSGVhZGVycyIsImhlYWRlcnMiLCJyZXF1ZXN0dG9rZW4iLCJzYW5pdGl6ZSIsInVybCIsInJlcGxhY2UiLCJyZXF1aXJlQWRtaW4iLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInNldFRpbWVvdXQiLCJ3YWl0Rm9ycGFzc3dvcmQiLCJPQyIsIlBhc3N3b3JkQ29uZmlybWF0aW9uIiwicmVxdWlyZXNQYXNzd29yZENvbmZpcm1hdGlvbiIsInJlcXVpcmVQYXNzd29yZENvbmZpcm1hdGlvbiIsImNhdGNoIiwiZXJyb3IiLCJjb25zb2xlIiwibG9nIiwiZ2V0IiwiYXhpb3MiLCJ0aGVuIiwicmVzcG9uc2UiLCJwb3N0IiwiZGF0YSIsInBhdGNoIiwicHV0IiwiZGVsZXRlIl0sIm1hcHBpbmdzIjoiOztBQUFBOztBQUVBLElBQU1BLGVBQWVDLFNBQVNDLG9CQUFULENBQThCLE1BQTlCLEVBQXNDLENBQXRDLEVBQXlDQyxZQUF6QyxDQUFzRCxtQkFBdEQsQ0FBckI7QUFDQSxJQUFNQyxlQUFlLEVBQUVDLFNBQVMsRUFBRUMsY0FBY04sWUFBaEIsRUFBWCxFQUFyQjs7QUFFQSxJQUFNTyxXQUFXLFNBQVhBLFFBQVcsQ0FBU0MsR0FBVCxFQUFjO0FBQzNCLFdBQU9BLElBQUlDLE9BQUosQ0FBWSxLQUFaLEVBQW1CLEVBQW5CLENBQVAsQ0FEMkIsQ0FDSTtBQUNsQyxDQUZEOztBQUlBLHlEQUFlO0FBQ1hDLGdCQURXLDBCQUNJO0FBQ1gsZUFBTyxJQUFJQyxPQUFKLENBQVksVUFBU0MsT0FBVCxFQUFrQkMsTUFBbEIsRUFBMEI7QUFDekNDLHVCQUFXRCxNQUFYLEVBQW1CLElBQW5CLEVBRHlDLENBQ2Y7QUFDMUIscUJBQVNFLGVBQVQsR0FBMkI7QUFDdkIsb0JBQUlDLEdBQUdDLG9CQUFILENBQXdCQyw0QkFBeEIsRUFBSixFQUE0RDtBQUN4REosK0JBQVdDLGVBQVgsRUFBNEIsR0FBNUI7QUFDQTtBQUNIO0FBQ0RIO0FBQ0g7QUFDREc7QUFDQUMsZUFBR0Msb0JBQUgsQ0FBd0JFLDJCQUF4QjtBQUNILFNBWE0sRUFXSkMsS0FYSSxDQVdFLFVBQUNDLEtBQUQ7QUFBQSxtQkFBV0MsUUFBUUMsR0FBUixDQUFZLCtCQUFaLENBQVg7QUFBQSxTQVhGLENBQVA7QUFZSCxLQWRVO0FBZVhDLE9BZlcsZUFlUGhCLEdBZk8sRUFlRjtBQUNMLGVBQU8sNkNBQUFpQixDQUFNRCxHQUFOLENBQVVqQixTQUFTQyxHQUFULENBQVYsRUFBeUJKLFlBQXpCLEVBQ0ZzQixJQURFLENBQ0csVUFBQ0MsUUFBRDtBQUFBLG1CQUFjaEIsUUFBUUMsT0FBUixDQUFnQmUsUUFBaEIsQ0FBZDtBQUFBLFNBREgsRUFFRlAsS0FGRSxDQUVJLFVBQUNDLEtBQUQ7QUFBQSxtQkFBV1YsUUFBUUUsTUFBUixDQUFlUSxLQUFmLENBQVg7QUFBQSxTQUZKLENBQVA7QUFHSCxLQW5CVTtBQW9CWE8sUUFwQlcsZ0JBb0JOcEIsR0FwQk0sRUFvQkRxQixJQXBCQyxFQW9CSztBQUNaLGVBQU8sNkNBQUFKLENBQU1HLElBQU4sQ0FBV3JCLFNBQVNDLEdBQVQsQ0FBWCxFQUEwQnFCLElBQTFCLEVBQWdDekIsWUFBaEMsRUFDRnNCLElBREUsQ0FDRyxVQUFDQyxRQUFEO0FBQUEsbUJBQWNoQixRQUFRQyxPQUFSLENBQWdCZSxRQUFoQixDQUFkO0FBQUEsU0FESCxFQUVGUCxLQUZFLENBRUksVUFBQ0MsS0FBRDtBQUFBLG1CQUFXVixRQUFRRSxNQUFSLENBQWVRLEtBQWYsQ0FBWDtBQUFBLFNBRkosQ0FBUDtBQUdILEtBeEJVO0FBeUJYUyxTQXpCVyxpQkF5Qkx0QixHQXpCSyxFQXlCQXFCLElBekJBLEVBeUJNO0FBQ2IsZUFBTyw2Q0FBQUosQ0FBTUssS0FBTixDQUFZdkIsU0FBU0MsR0FBVCxDQUFaLEVBQTJCLEVBQUVxQixNQUFNQSxJQUFSLEVBQWN4QixTQUFTRCxhQUFhQyxPQUFwQyxFQUEzQixFQUNGcUIsSUFERSxDQUNHLFVBQUNDLFFBQUQ7QUFBQSxtQkFBY2hCLFFBQVFDLE9BQVIsQ0FBZ0JlLFFBQWhCLENBQWQ7QUFBQSxTQURILEVBRUZQLEtBRkUsQ0FFSSxVQUFDQyxLQUFEO0FBQUEsbUJBQVdWLFFBQVFFLE1BQVIsQ0FBZVEsS0FBZixDQUFYO0FBQUEsU0FGSixDQUFQO0FBR0gsS0E3QlU7QUE4QlhVLE9BOUJXLGVBOEJQdkIsR0E5Qk8sRUE4QkZxQixJQTlCRSxFQThCSTtBQUNYLGVBQU8sNkNBQUFKLENBQU1NLEdBQU4sQ0FBVXhCLFNBQVNDLEdBQVQsQ0FBVixFQUF5QnFCLElBQXpCLEVBQStCekIsWUFBL0IsRUFDRnNCLElBREUsQ0FDRyxVQUFDQyxRQUFEO0FBQUEsbUJBQWNoQixRQUFRQyxPQUFSLENBQWdCZSxRQUFoQixDQUFkO0FBQUEsU0FESCxFQUVGUCxLQUZFLENBRUksVUFBQ0MsS0FBRDtBQUFBLG1CQUFXVixRQUFRRSxNQUFSLENBQWVRLEtBQWYsQ0FBWDtBQUFBLFNBRkosQ0FBUDtBQUdILEtBbENVO0FBbUNYVyxVQW5DVyxtQkFtQ0p4QixHQW5DSSxFQW1DQ3FCLElBbkNELEVBbUNPO0FBQ2QsZUFBTyw2Q0FBQUosQ0FBTU8sTUFBTixDQUFhekIsU0FBU0MsR0FBVCxDQUFiLEVBQTRCLEVBQUVxQixNQUFNQSxJQUFSLEVBQWN4QixTQUFTRCxhQUFhQyxPQUFwQyxFQUE1QixFQUNGcUIsSUFERSxDQUNHLFVBQUNDLFFBQUQ7QUFBQSxtQkFBY2hCLFFBQVFDLE9BQVIsQ0FBZ0JlLFFBQWhCLENBQWQ7QUFBQSxTQURILEVBRUZQLEtBRkUsQ0FFSSxVQUFDQyxLQUFEO0FBQUEsbUJBQVdWLFFBQVFFLE1BQVIsQ0FBZVEsS0FBZixDQUFYO0FBQUEsU0FGSixDQUFQO0FBR0g7QUF2Q1UsQ0FBZiIsImZpbGUiOiIxNy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5cbmNvbnN0IHJlcXVlc3RUb2tlbiA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF0uZ2V0QXR0cmlidXRlKCdkYXRhLXJlcXVlc3R0b2tlbicpO1xuY29uc3QgdG9rZW5IZWFkZXJzID0geyBoZWFkZXJzOiB7IHJlcXVlc3R0b2tlbjogcmVxdWVzdFRva2VuIH0gfTtcblxuY29uc3Qgc2FuaXRpemUgPSBmdW5jdGlvbih1cmwpIHtcbiAgICByZXR1cm4gdXJsLnJlcGxhY2UoL1xcLyQvLCAnJyk7IC8vIFJlbW92ZSBsYXN0IHNsYXNoIG9mIHVybFxufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgcmVxdWlyZUFkbWluKCkge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KHJlamVjdCwgNTAwMCk7IC8vIGF1dG9tYXRpY2FsbHkgcmVqZWN0IDVzIGlmIG5vdCBva1xuICAgICAgICAgICAgZnVuY3Rpb24gd2FpdEZvcnBhc3N3b3JkKCkge1xuICAgICAgICAgICAgICAgIGlmIChPQy5QYXNzd29yZENvbmZpcm1hdGlvbi5yZXF1aXJlc1Bhc3N3b3JkQ29uZmlybWF0aW9uKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCh3YWl0Rm9ycGFzc3dvcmQsIDUwMCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgd2FpdEZvcnBhc3N3b3JkKCk7XG4gICAgICAgICAgICBPQy5QYXNzd29yZENvbmZpcm1hdGlvbi5yZXF1aXJlUGFzc3dvcmRDb25maXJtYXRpb24oKTtcbiAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiBjb25zb2xlLmxvZygnUmVxdWlyZWQgcGFzc3dvcmQgbm90IGVudGVyZWQnKSk7XG4gICAgfSxcbiAgICBnZXQodXJsKSB7XG4gICAgICAgIHJldHVybiBheGlvcy5nZXQoc2FuaXRpemUodXJsKSwgdG9rZW5IZWFkZXJzKVxuICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcbiAgICB9LFxuICAgIHBvc3QodXJsLCBkYXRhKSB7XG4gICAgICAgIHJldHVybiBheGlvcy5wb3N0KHNhbml0aXplKHVybCksIGRhdGEsIHRva2VuSGVhZGVycylcbiAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gUHJvbWlzZS5yZXNvbHZlKHJlc3BvbnNlKSlcbiAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IFByb21pc2UucmVqZWN0KGVycm9yKSk7XG4gICAgfSxcbiAgICBwYXRjaCh1cmwsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIGF4aW9zLnBhdGNoKHNhbml0aXplKHVybCksIHsgZGF0YTogZGF0YSwgaGVhZGVyczogdG9rZW5IZWFkZXJzLmhlYWRlcnMgfSlcbiAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gUHJvbWlzZS5yZXNvbHZlKHJlc3BvbnNlKSlcbiAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IFByb21pc2UucmVqZWN0KGVycm9yKSk7XG4gICAgfSxcbiAgICBwdXQodXJsLCBkYXRhKSB7XG4gICAgICAgIHJldHVybiBheGlvcy5wdXQoc2FuaXRpemUodXJsKSwgZGF0YSwgdG9rZW5IZWFkZXJzKVxuICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcbiAgICB9LFxuICAgIGRlbGV0ZSh1cmwsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIGF4aW9zLmRlbGV0ZShzYW5pdGl6ZSh1cmwpLCB7IGRhdGE6IGRhdGEsIGhlYWRlcnM6IHRva2VuSGVhZGVycy5oZWFkZXJzIH0pXG4gICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IFByb21pc2UucmVzb2x2ZShyZXNwb25zZSkpXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBQcm9taXNlLnJlamVjdChlcnJvcikpO1xuICAgIH1cbn07XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3N0b3JlL2FwaS5qcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///17\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_axios__);\n\n\nvar requestToken = document.getElementsByTagName('head')[0].getAttribute('data-requesttoken');\nvar tokenHeaders = { headers: { requesttoken: requestToken } };\n\nvar sanitize = function sanitize(url) {\n return url.replace(/\\/$/, ''); // Remove last slash of url\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n requireAdmin: function requireAdmin() {\n return new Promise(function (resolve, reject) {\n setTimeout(reject, 5000); // automatically reject 5s if not ok\n function waitForpassword() {\n if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {\n setTimeout(waitForpassword, 500);\n return;\n }\n resolve();\n }\n waitForpassword();\n OC.PasswordConfirmation.requirePasswordConfirmation();\n }).catch(function (error) {\n return console.log('Required password not entered');\n });\n },\n get: function get(url) {\n return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.get(sanitize(url), tokenHeaders).then(function (response) {\n return Promise.resolve(response);\n }).catch(function (error) {\n return Promise.reject(error);\n });\n },\n post: function post(url, data) {\n return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.post(sanitize(url), data, tokenHeaders).then(function (response) {\n return Promise.resolve(response);\n }).catch(function (error) {\n return Promise.reject(error);\n });\n },\n patch: function patch(url, data) {\n return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.patch(sanitize(url), data, tokenHeaders).then(function (response) {\n return Promise.resolve(response);\n }).catch(function (error) {\n return Promise.reject(error);\n });\n },\n put: function put(url, data) {\n return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.put(sanitize(url), data, tokenHeaders).then(function (response) {\n return Promise.resolve(response);\n }).catch(function (error) {\n return Promise.reject(error);\n });\n },\n delete: function _delete(url, data) {\n return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.delete(sanitize(url), { data: data, headers: tokenHeaders.headers }).then(function (response) {\n return Promise.resolve(response);\n }).catch(function (error) {\n return Promise.reject(error);\n });\n }\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvYXBpLmpzP2JkOTMiXSwibmFtZXMiOlsicmVxdWVzdFRva2VuIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50c0J5VGFnTmFtZSIsImdldEF0dHJpYnV0ZSIsInRva2VuSGVhZGVycyIsImhlYWRlcnMiLCJyZXF1ZXN0dG9rZW4iLCJzYW5pdGl6ZSIsInVybCIsInJlcGxhY2UiLCJyZXF1aXJlQWRtaW4iLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInNldFRpbWVvdXQiLCJ3YWl0Rm9ycGFzc3dvcmQiLCJPQyIsIlBhc3N3b3JkQ29uZmlybWF0aW9uIiwicmVxdWlyZXNQYXNzd29yZENvbmZpcm1hdGlvbiIsInJlcXVpcmVQYXNzd29yZENvbmZpcm1hdGlvbiIsImNhdGNoIiwiZXJyb3IiLCJjb25zb2xlIiwibG9nIiwiZ2V0IiwiYXhpb3MiLCJ0aGVuIiwicmVzcG9uc2UiLCJwb3N0IiwiZGF0YSIsInBhdGNoIiwicHV0IiwiZGVsZXRlIl0sIm1hcHBpbmdzIjoiOztBQUFBOztBQUVBLElBQU1BLGVBQWVDLFNBQVNDLG9CQUFULENBQThCLE1BQTlCLEVBQXNDLENBQXRDLEVBQXlDQyxZQUF6QyxDQUFzRCxtQkFBdEQsQ0FBckI7QUFDQSxJQUFNQyxlQUFlLEVBQUVDLFNBQVMsRUFBRUMsY0FBY04sWUFBaEIsRUFBWCxFQUFyQjs7QUFFQSxJQUFNTyxXQUFXLFNBQVhBLFFBQVcsQ0FBU0MsR0FBVCxFQUFjO0FBQzNCLFdBQU9BLElBQUlDLE9BQUosQ0FBWSxLQUFaLEVBQW1CLEVBQW5CLENBQVAsQ0FEMkIsQ0FDSTtBQUNsQyxDQUZEOztBQUlBLHlEQUFlO0FBQ1hDLGdCQURXLDBCQUNJO0FBQ1gsZUFBTyxJQUFJQyxPQUFKLENBQVksVUFBU0MsT0FBVCxFQUFrQkMsTUFBbEIsRUFBMEI7QUFDekNDLHVCQUFXRCxNQUFYLEVBQW1CLElBQW5CLEVBRHlDLENBQ2Y7QUFDMUIscUJBQVNFLGVBQVQsR0FBMkI7QUFD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IHJlcXVlc3RUb2tlbiA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF0uZ2V0QXR0cmlidXRlKCdkYXRhLXJlcXVlc3R0b2tlbicpO1xuY29uc3QgdG9rZW5IZWFkZXJzID0geyBoZWFkZXJzOiB7IHJlcXVlc3R0b2tlbjogcmVxdWVzdFRva2VuIH0gfTtcblxuY29uc3Qgc2FuaXRpemUgPSBmdW5jdGlvbih1cmwpIHtcbiAgICByZXR1cm4gdXJsLnJlcGxhY2UoL1xcLyQvLCAnJyk7IC8vIFJlbW92ZSBsYXN0IHNsYXNoIG9mIHVybFxufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgcmVxdWlyZUFkbWluKCkge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KHJlamVjdCwgNTAwMCk7IC8vIGF1dG9tYXRpY2FsbHkgcmVqZWN0IDVzIGlmIG5vdCBva1xuICAgICAgICAgICAgZnVuY3Rpb24gd2FpdEZvcnBhc3N3b3JkKCkge1xuICAgICAgICAgICAgICAgIGlmIChPQy5QYXNzd29yZENvbmZpcm1hdGlvbi5yZXF1aXJlc1Bhc3N3b3JkQ29uZmlybWF0aW9uKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCh3YWl0Rm9ycGFzc3dvcmQsIDUwMCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgd2FpdEZvcnBhc3N3b3JkKCk7XG4gICAgICAgICAgICBPQy5QYXNzd29yZENvbmZpcm1hdGlvbi5yZXF1aXJlUGFzc3dvcmRDb25maXJtYXRpb24oKTtcbiAgICAgICAgfSkuY2F0Y2goKGVycm9yKSA9PiBjb25zb2xlLmxvZygnUmVxdWlyZWQgcGFzc3dvcmQgbm90IGVudGVyZWQnKSk7XG4gICAgfSxcbiAgICBnZXQodXJsKSB7XG4gICAgICAgIHJldHVybiBheGlvcy5nZXQoc2FuaXRpemUodXJsKSwgdG9rZW5IZWFkZXJzKVxuICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcbiAgICB9LFxuICAgIHBvc3QodXJsLCBkYXRhKSB7XG4gICAgICAgIHJldHVybiBheGlvcy5wb3N0KHNhbml0aXplKHVybCksIGRhdGEsIHRva2VuSGVhZGVycylcbiAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gUHJvbWlzZS5yZXNvbHZlKHJlc3BvbnNlKSlcbiAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IFByb21pc2UucmVqZWN0KGVycm9yKSk7XG4gICAgfSxcbiAgICBwYXRjaCh1cmwsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIGF4aW9zLnBhdGNoKHNhbml0aXplKHVybCksIGRhdGEsIHRva2VuSGVhZGVycylcbiAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gUHJvbWlzZS5yZXNvbHZlKHJlc3BvbnNlKSlcbiAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IFByb21pc2UucmVqZWN0KGVycm9yKSk7XG4gICAgfSxcbiAgICBwdXQodXJsLCBkYXRhKSB7XG4gICAgICAgIHJldHVybiBheGlvcy5wdXQoc2FuaXRpemUodXJsKSwgZGF0YSwgdG9rZW5IZWFkZXJzKVxuICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpKVxuICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gUHJvbWlzZS5yZWplY3QoZXJyb3IpKTtcbiAgICB9LFxuICAgIGRlbGV0ZSh1cmwsIGRhdGEpIHtcbiAgICAgICAgcmV0dXJuIGF4aW9zLmRlbGV0ZShzYW5pdGl6ZSh1cmwpLCB7IGRhdGE6IGRhdGEsIGhlYWRlcnM6IHRva2VuSGVhZGVycy5oZWFkZXJzIH0pXG4gICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IFByb21pc2UucmVzb2x2ZShyZXNwb25zZSkpXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBQcm9taXNlLnJlamVjdChlcnJvcikpO1xuICAgIH1cbn07XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3N0b3JlL2FwaS5qcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///17\n"); /***/ }), /* 18 */ @@ -335,7 +335,7 @@ eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_mo /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"li\", [\n _vm.item.href\n ? _c(\n \"a\",\n {\n attrs: { href: _vm.item.href ? _vm.item.href : \"#\" },\n on: { click: _vm.dispatchToStore }\n },\n [\n _c(\"span\", { class: _vm.item.icon }),\n _vm._v(\" \"),\n _c(\"span\", [_vm._v(_vm._s(_vm.item.text))])\n ]\n )\n : _c(\n \"button\",\n {\n on: {\n click: function($event) {\n _vm.dispatchToStore(_vm.item.action)\n }\n }\n },\n [\n _c(\"span\", { class: _vm.item.icon }),\n _vm._v(\" \"),\n _c(\"span\", [_vm._v(_vm._s(_vm.item.text))])\n ]\n )\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (false) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\") .rerender(\"data-v-4c6af9e6\", esExports)\n }\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS9wb3BvdmVySXRlbS52dWU/MTVmYyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsNENBQTRDO0FBQ2hFLGlCQUFpQjtBQUNqQixXQUFXO0FBQ1g7QUFDQSx3QkFBd0IsdUJBQXVCO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBLHdCQUF3Qix1QkFBdUI7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiI0MC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXCJsaVwiLCBbXG4gICAgX3ZtLml0ZW0uaHJlZlxuICAgICAgPyBfYyhcbiAgICAgICAgICBcImFcIixcbiAgICAgICAgICB7XG4gICAgICAgICAgICBhdHRyczogeyBocmVmOiBfdm0uaXRlbS5ocmVmID8gX3ZtLml0ZW0uaHJlZiA6IFwiI1wiIH0sXG4gICAgICAgICAgICBvbjogeyBjbGljazogX3ZtLmRpc3BhdGNoVG9TdG9yZSB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICBbXG4gICAgICAgICAgICBfYyhcInNwYW5cIiwgeyBjbGFzczogX3ZtLml0ZW0uaWNvbiB9KSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcInNwYW5cIiwgW192bS5fdihfdm0uX3MoX3ZtLml0ZW0udGV4dCkpXSlcbiAgICAgICAgICBdXG4gICAgICAgIClcbiAgICAgIDogX2MoXG4gICAgICAgICAgXCJidXR0b25cIixcbiAgICAgICAgICB7XG4gICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICBjbGljazogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgX3ZtLmRpc3BhdGNoVG9TdG9yZShfdm0uaXRlbS5hY3Rpb24pXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFwic3BhblwiLCB7IGNsYXNzOiBfdm0uaXRlbS5pY29uIH0pLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KF92bS5fcyhfdm0uaXRlbS50ZXh0KSldKVxuICAgICAgICAgIF1cbiAgICAgICAgKVxuICBdKVxufVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNGM2YWY5ZTZcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi00YzZhZjllNlwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL3BvcG92ZXJNZW51L3BvcG92ZXJJdGVtLnZ1ZVxuLy8gbW9kdWxlIGlkID0gNDBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///40\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"li\", [\n _vm.item.href\n ? _c(\n \"a\",\n {\n attrs: { href: _vm.item.href ? _vm.item.href : \"#\" },\n on: { click: _vm.item.action }\n },\n [\n _c(\"span\", { class: _vm.item.icon }),\n _vm._v(\" \"),\n _c(\"span\", [_vm._v(_vm._s(_vm.item.text))])\n ]\n )\n : _c(\"button\", { on: { click: _vm.item.action } }, [\n _c(\"span\", { class: _vm.item.icon }),\n _vm._v(\" \"),\n _c(\"span\", [_vm._v(_vm._s(_vm.item.text))])\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (false) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\") .rerender(\"data-v-4c6af9e6\", esExports)\n }\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS9wb3BvdmVySXRlbS52dWU/MTVmYyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsNENBQTRDO0FBQ2hFLGlCQUFpQjtBQUNqQixXQUFXO0FBQ1g7QUFDQSx3QkFBd0IsdUJBQXVCO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLE1BQU0seUJBQXlCLEVBQUU7QUFDdkQsc0JBQXNCLHVCQUF1QjtBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiI0MC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXCJsaVwiLCBbXG4gICAgX3ZtLml0ZW0uaHJlZlxuICAgICAgPyBfYyhcbiAgICAgICAgICBcImFcIixcbiAgICAgICAgICB7XG4gICAgICAgICAgICBhdHRyczogeyBocmVmOiBfdm0uaXRlbS5ocmVmID8gX3ZtLml0ZW0uaHJlZiA6IFwiI1wiIH0sXG4gICAgICAgICAgICBvbjogeyBjbGljazogX3ZtLml0ZW0uYWN0aW9uIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFwic3BhblwiLCB7IGNsYXNzOiBfdm0uaXRlbS5pY29uIH0pLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KF92bS5fcyhfdm0uaXRlbS50ZXh0KSldKVxuICAgICAgICAgIF1cbiAgICAgICAgKVxuICAgICAgOiBfYyhcImJ1dHRvblwiLCB7IG9uOiB7IGNsaWNrOiBfdm0uaXRlbS5hY3Rpb24gfSB9LCBbXG4gICAgICAgICAgX2MoXCJzcGFuXCIsIHsgY2xhc3M6IF92bS5pdGVtLmljb24gfSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcInNwYW5cIiwgW192bS5fdihfdm0uX3MoX3ZtLml0ZW0udGV4dCkpXSlcbiAgICAgICAgXSlcbiAgXSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LTRjNmFmOWU2XCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtNGM2YWY5ZTZcIixcImhhc1Njb3BlZFwiOmZhbHNlLFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9wb3BvdmVyTWVudS9wb3BvdmVySXRlbS52dWVcbi8vIG1vZHVsZSBpZCA9IDQwXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///40\n"); /***/ }), /* 41 */ @@ -377,7 +377,7 @@ eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_mo /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"row\" }, [\n _c(\"div\", { staticClass: \"avatar\" }, [\n _c(\"img\", {\n attrs: {\n alt: \"\",\n width: \"32\",\n height: \"32\",\n src: _vm.generateAvatar(_vm.user.id, 32),\n srcset:\n _vm.generateAvatar(_vm.user.id, 64) +\n \" 2x, \" +\n _vm.generateAvatar(_vm.user.id, 128) +\n \" 4x\"\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"name\" }, [_vm._v(_vm._s(_vm.user.id))]),\n _vm._v(\" \"),\n _c(\n \"form\",\n {\n staticClass: \"displayName\",\n class: { \"icon-loading-small\": _vm.loading.displayName },\n on: {\n submit: function($event) {\n $event.preventDefault()\n return _vm.updateDisplayName($event)\n }\n }\n },\n [\n _c(\"input\", {\n ref: \"displayName\",\n attrs: {\n id: \"displayName\" + _vm.user.id + _vm.rand,\n type: \"text\",\n disabled: _vm.loading.displayName || _vm.loading.all,\n autocomplete: \"new-password\",\n autocorrect: \"off\",\n autocapitalize: \"off\",\n spellcheck: \"false\"\n },\n domProps: { value: _vm.user.displayname }\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"icon-confirm\",\n attrs: { type: \"submit\", value: \"\" }\n })\n ]\n ),\n _vm._v(\" \"),\n _vm.settings.canChangePassword\n ? _c(\n \"form\",\n {\n staticClass: \"password\",\n class: { \"icon-loading-small\": _vm.loading.password },\n on: {\n submit: function($event) {\n $event.preventDefault()\n return _vm.updatePassword($event)\n }\n }\n },\n [\n _c(\"input\", {\n ref: \"password\",\n attrs: {\n id: \"password\" + _vm.user.id + _vm.rand,\n type: \"password\",\n required: \"\",\n disabled: _vm.loading.password || _vm.loading.all,\n minlength: _vm.minPasswordLength,\n value: \"\",\n placeholder: _vm.t(\"settings\", \"New password\"),\n autocomplete: \"new-password\",\n autocorrect: \"off\",\n autocapitalize: \"off\",\n spellcheck: \"false\"\n }\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"icon-confirm\",\n attrs: { type: \"submit\", value: \"\" }\n })\n ]\n )\n : _c(\"div\"),\n _vm._v(\" \"),\n _c(\n \"form\",\n {\n staticClass: \"mailAddress\",\n class: { \"icon-loading-small\": _vm.loading.mailAddress },\n on: {\n submit: function($event) {\n $event.preventDefault()\n return _vm.updateEmail($event)\n }\n }\n },\n [\n _c(\"input\", {\n ref: \"mailAddress\",\n attrs: {\n id: \"mailAddress\" + _vm.user.id + _vm.rand,\n type: \"email\",\n disabled: _vm.loading.mailAddress || _vm.loading.all,\n autocomplete: \"new-password\",\n autocorrect: \"off\",\n autocapitalize: \"off\",\n spellcheck: \"false\"\n },\n domProps: { value: _vm.user.email }\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"icon-confirm\",\n attrs: { type: \"submit\", value: \"\" }\n })\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"groups\",\n class: { \"icon-loading-small\": _vm.loading.groups }\n },\n [\n _c(\"multiselect\", {\n staticClass: \"multiselect-vue\",\n attrs: {\n value: _vm.userGroups,\n options: _vm.groups,\n disabled: _vm.loading.groups || _vm.loading.all,\n \"tag-placeholder\": \"create\",\n placeholder: _vm.t(\"settings\", \"Add user in group\"),\n label: \"name\",\n \"track-by\": \"id\",\n limit: 2,\n limitText: _vm.limitGroups,\n multiple: true,\n taggable: true,\n closeOnSelect: false\n },\n on: {\n tag: _vm.createGroup,\n select: _vm.addUserGroup,\n remove: _vm.removeUserGroup\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.subAdminsGroups.length > 0\n ? _c(\n \"div\",\n {\n staticClass: \"subadmins\",\n class: { \"icon-loading-small\": _vm.loading.subadmins }\n },\n [\n _c(\n \"multiselect\",\n {\n staticClass: \"multiselect-vue\",\n attrs: {\n value: _vm.userSubAdminsGroups,\n options: _vm.subAdminsGroups,\n disabled: _vm.loading.subadmins || _vm.loading.all,\n placeholder: _vm.t(\"settings\", \"Set user as admin for\"),\n label: \"name\",\n \"track-by\": \"id\",\n limit: 2,\n limitText: _vm.limitGroups,\n multiple: true,\n closeOnSelect: false\n },\n on: {\n select: _vm.addUserSubAdmin,\n remove: _vm.removeUserSubAdmin\n }\n },\n [\n _c(\"span\", { attrs: { slot: \"noResult\" }, slot: \"noResult\" }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"No result\")))\n ])\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"quota\",\n class: { \"icon-loading-small\": _vm.loading.quota }\n },\n [\n _c(\"multiselect\", {\n staticClass: \"multiselect-vue\",\n attrs: {\n value: _vm.userQuota,\n options: _vm.quotaOptions,\n disabled: _vm.loading.quota || _vm.loading.all,\n \"tag-placeholder\": \"create\",\n placeholder: _vm.t(\"settings\", \"Select user quota\"),\n label: \"label\",\n \"track-by\": \"id\",\n allowEmpty: false,\n taggable: true\n },\n on: { tag: _vm.validateQuota, input: _vm.setUserQuota }\n }),\n _vm._v(\" \"),\n _c(\"progress\", {\n staticClass: \"quota-user-progress\",\n class: { warn: _vm.usedQuota > 80 },\n attrs: { max: \"100\" },\n domProps: { value: _vm.usedQuota }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.showConfig.showStoragePath\n ? _c(\"div\", { staticClass: \"storageLocation\" }, [\n _vm._v(_vm._s(_vm.user.storageLocation))\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showUserBackend\n ? _c(\"div\", { staticClass: \"userBackend\" }, [\n _vm._v(_vm._s(_vm.user.backend))\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showLastLogin\n ? _c(\n \"div\",\n {\n staticClass: \"lastLogin\",\n attrs: {\n title:\n _vm.user.lastLogin > 0\n ? _vm.OC.Util.formatDate(_vm.user.lastLogin)\n : \"\"\n }\n },\n [\n _vm._v(\n \"\\n\\t\\t\" +\n _vm._s(\n _vm.user.lastLogin > 0\n ? _vm.OC.Util.relativeModifiedDate(_vm.user.lastLogin)\n : _vm.t(\"settings\", \"Never\")\n ) +\n \"\\n\\t\"\n )\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"userActions\" }, [\n _vm.OC.currentUser !== _vm.user.id && _vm.user.id !== \"admin\"\n ? _c(\"div\", { staticClass: \"toggleUserActions\" }, [\n _c(\"div\", {\n directives: [\n {\n name: \"click-outside\",\n rawName: \"v-click-outside\",\n value: _vm.hideMenu,\n expression: \"hideMenu\"\n }\n ],\n staticClass: \"icon-more\",\n on: { click: _vm.showMenu }\n }),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"popovermenu\", class: { open: _vm.openedMenu } },\n [_c(\"popover-menu\", { attrs: { menu: _vm.userActions } })],\n 1\n )\n ])\n : _vm._e()\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (false) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\") .rerender(\"data-v-d19586ce\", esExports)\n }\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC91c2VyUm93LnZ1ZT8zMGMxIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHFCQUFxQjtBQUN6QyxlQUFlLHdCQUF3QjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLGVBQWUsc0JBQXNCO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsZ0RBQWdEO0FBQ2hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYLHFCQUFxQjtBQUNyQixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCO0FBQ2xCLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDZDQUE2QztBQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCO0FBQ3RCLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGdEQUFnRDtBQUNoRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWCxxQkFBcUI7QUFDckIsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQjtBQUNsQixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0I7QUFDaEIsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CO0FBQ3BCLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBLDRCQUE0QixTQUFTLG1CQUFtQixvQkFBb0I7QUFDNUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0I7QUFDaEIsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYLGVBQWU7QUFDZixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLDJCQUEyQjtBQUM3QyxrQkFBa0IsYUFBYTtBQUMvQixxQkFBcUI7QUFDckIsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsaUNBQWlDO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsNkJBQTZCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSw2QkFBNkI7QUFDNUM7QUFDQSxxQkFBcUIsbUNBQW1DO0FBQ3hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxlQUFlLHFDQUFxQyx1QkFBdUIsRUFBRTtBQUM3RSxtQ0FBbUMsU0FBUyx3QkFBd0IsRUFBRTtBQUN0RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiNDYuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwicm93XCIgfSwgW1xuICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiYXZhdGFyXCIgfSwgW1xuICAgICAgX2MoXCJpbWdcIiwge1xuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIGFsdDogXCJcIixcbiAgICAgICAgICB3aWR0aDogXCIzMlwiLFxuICAgICAgICAgIGhlaWdodDogXCIzMlwiLFxuICAgICAgICAgIHNyYzogX3ZtLmdlbmVyYXRlQXZhdGFyKF92bS51c2VyLmlkLCAzMiksXG4gICAgICAgICAgc3Jjc2V0OlxuICAgICAgICAgICAgX3ZtLmdlbmVyYXRlQXZhdGFyKF92bS51c2VyLmlkLCA2NCkgK1xuICAgICAgICAgICAgXCIgMngsIFwiICtcbiAgICAgICAgICAgIF92bS5nZW5lcmF0ZUF2YXRhcihfdm0udXNlci5pZCwgMTI4KSArXG4gICAgICAgICAgICBcIiA0eFwiXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgXSksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcIm5hbWVcIiB9LCBbX3ZtLl92KF92bS5fcyhfdm0udXNlci5pZCkpXSksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcbiAgICAgIFwiZm9ybVwiLFxuICAgICAge1xuICAgICAgICBzdGF0aWNDbGFzczogXCJkaXNwbGF5TmFtZVwiLFxuICAgICAgICBjbGFzczogeyBcImljb24tbG9hZGluZy1zbWFsbFwiOiBfdm0ubG9hZGluZy5kaXNwbGF5TmFtZSB9LFxuICAgICAgICBvbjoge1xuICAgICAgICAgIHN1Ym1pdDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgcmV0dXJuIF92bS51cGRhdGVEaXNwbGF5TmFtZSgkZXZlbnQpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICByZWY6IFwiZGlzcGxheU5hbWVcIixcbiAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgaWQ6IFwiZGlzcGxheU5hbWVcIiArIF92bS51c2VyLmlkICsgX3ZtLnJhbmQsXG4gICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgIGRpc2FibGVkOiBfdm0ubG9hZGluZy5kaXNwbGF5TmFtZSB8fCBfdm0ubG9hZGluZy5hbGwsXG4gICAgICAgICAgICBhdXRvY29tcGxldGU6IFwibmV3LXBhc3N3b3JkXCIsXG4gICAgICAgICAgICBhdXRvY29ycmVjdDogXCJvZmZcIixcbiAgICAgICAgICAgIGF1dG9jYXBpdGFsaXplOiBcIm9mZlwiLFxuICAgICAgICAgICAgc3BlbGxjaGVjazogXCJmYWxzZVwiXG4gICAgICAgICAgfSxcbiAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLnVzZXIuZGlzcGxheW5hbWUgfVxuICAgICAgICB9KSxcbiAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgc3RhdGljQ2xhc3M6IFwiaWNvbi1jb25maXJtXCIsXG4gICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJzdWJtaXRcIiwgdmFsdWU6IFwiXCIgfVxuICAgICAgICB9KVxuICAgICAgXVxuICAgICksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfdm0uc2V0dGluZ3MuY2FuQ2hhbmdlUGFzc3dvcmRcbiAgICAgID8gX2MoXG4gICAgICAgICAgXCJmb3JtXCIsXG4gICAgICAgICAge1xuICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwicGFzc3dvcmRcIixcbiAgICAgICAgICAgIGNsYXNzOiB7IFwiaWNvbi1sb2FkaW5nLXNtYWxsXCI6IF92bS5sb2FkaW5nLnBhc3N3b3JkIH0sXG4gICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICBzdWJtaXQ6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgICAgcmV0dXJuIF92bS51cGRhdGVQYXNzd29yZCgkZXZlbnQpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICByZWY6IFwicGFzc3dvcmRcIixcbiAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICBpZDogXCJwYXNzd29yZFwiICsgX3ZtLnVzZXIuaWQgKyBfdm0ucmFuZCxcbiAgICAgICAgICAgICAgICB0eXBlOiBcInBhc3N3b3JkXCIsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IFwiXCIsXG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ6IF92bS5sb2FkaW5nLnBhc3N3b3JkIHx8IF92bS5sb2FkaW5nLmFsbCxcbiAgICAgICAgICAgICAgICBtaW5sZW5ndGg6IF92bS5taW5QYXNzd29yZExlbmd0aCxcbiAgICAgICAgICAgICAgICB2YWx1ZTogXCJcIixcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIk5ldyBwYXNzd29yZFwiKSxcbiAgICAgICAgICAgICAgICBhdXRvY29tcGxldGU6IFwibmV3LXBhc3N3b3JkXCIsXG4gICAgICAgICAgICAgICAgYXV0b2NvcnJlY3Q6IFwib2ZmXCIsXG4gICAgICAgICAgICAgICAgYXV0b2NhcGl0YWxpemU6IFwib2ZmXCIsXG4gICAgICAgICAgICAgICAgc3BlbGxjaGVjazogXCJmYWxzZVwiXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJpY29uLWNvbmZpcm1cIixcbiAgICAgICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJzdWJtaXRcIiwgdmFsdWU6IFwiXCIgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdXG4gICAgICAgIClcbiAgICAgIDogX2MoXCJkaXZcIiksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcbiAgICAgIFwiZm9ybVwiLFxuICAgICAge1xuICAgICAgICBzdGF0aWNDbGFzczogXCJtYWlsQWRkcmVzc1wiLFxuICAgICAgICBjbGFzczogeyBcImljb24tbG9hZGluZy1zbWFsbFwiOiBfdm0ubG9hZGluZy5tYWlsQWRkcmVzcyB9LFxuICAgICAgICBvbjoge1xuICAgICAgICAgIHN1Ym1pdDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgcmV0dXJuIF92bS51cGRhdGVFbWFpbCgkZXZlbnQpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICByZWY6IFwibWFpbEFkZHJlc3NcIixcbiAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgaWQ6IFwibWFpbEFkZHJlc3NcIiArIF92bS51c2VyLmlkICsgX3ZtLnJhbmQsXG4gICAgICAgICAgICB0eXBlOiBcImVtYWlsXCIsXG4gICAgICAgICAgICBkaXNhYmxlZDogX3ZtLmxvYWRpbmcubWFpbEFkZHJlc3MgfHwgX3ZtLmxvYWRpbmcuYWxsLFxuICAgICAgICAgICAgYXV0b2NvbXBsZXRlOiBcIm5ldy1wYXNzd29yZFwiLFxuICAgICAgICAgICAgYXV0b2NvcnJlY3Q6IFwib2ZmXCIsXG4gICAgICAgICAgICBhdXRvY2FwaXRhbGl6ZTogXCJvZmZcIixcbiAgICAgICAgICAgIHNwZWxsY2hlY2s6IFwiZmFsc2VcIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS51c2VyLmVtYWlsIH1cbiAgICAgICAgfSksXG4gICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImljb24tY29uZmlybVwiLFxuICAgICAgICAgIGF0dHJzOiB7IHR5cGU6IFwic3VibWl0XCIsIHZhbHVlOiBcIlwiIH1cbiAgICAgICAgfSlcbiAgICAgIF1cbiAgICApLFxuICAgIF92bS5fdihcIiBcIiksXG4gICAgX2MoXG4gICAgICBcImRpdlwiLFxuICAgICAge1xuICAgICAgICBzdGF0aWNDbGFzczogXCJncm91cHNcIixcbiAgICAgICAgY2xhc3M6IHsgXCJpY29uLWxvYWRpbmctc21hbGxcIjogX3ZtLmxvYWRpbmcuZ3JvdXBzIH1cbiAgICAgIH0sXG4gICAgICBbXG4gICAgICAgIF9jKFwibXVsdGlzZWxlY3RcIiwge1xuICAgICAgICAgIHN0YXRpY0NsYXNzOiBcIm11bHRpc2VsZWN0LXZ1ZVwiLFxuICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICB2YWx1ZTogX3ZtLnVzZXJHcm91cHMsXG4gICAgICAgICAgICBvcHRpb25zOiBfdm0uZ3JvdXBzLFxuICAgICAgICAgICAgZGlzYWJsZWQ6IF92bS5sb2FkaW5nLmdyb3VwcyB8fCBfdm0ubG9hZGluZy5hbGwsXG4gICAgICAgICAgICBcInRhZy1wbGFjZWhvbGRlclwiOiBcImNyZWF0ZVwiLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS50KFwic2V0dGluZ3NcIiwgXCJBZGQgdXNlciBpbiBncm91cFwiKSxcbiAgICAgICAgICAgIGxhYmVsOiBcIm5hbWVcIixcbiAgICAgICAgICAgIFwidHJhY2stYnlcIjogXCJpZFwiLFxuICAgICAgICAgICAgbGltaXQ6IDIsXG4gICAgICAgICAgICBsaW1pdFRleHQ6IF92bS5saW1pdEdyb3VwcyxcbiAgICAgICAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgICAgICAgdGFnZ2FibGU6IHRydWUsXG4gICAgICAgICAgICBjbG9zZU9uU2VsZWN0OiBmYWxzZVxuICAgICAgICAgIH0sXG4gICAgICAgICAgb246IHtcbiAgICAgICAgICAgIHRhZzogX3ZtLmNyZWF0ZUdyb3VwLFxuICAgICAgICAgICAgc2VsZWN0OiBfdm0uYWRkVXNlckdyb3VwLFxuICAgICAgICAgICAgcmVtb3ZlOiBfdm0ucmVtb3ZlVXNlckdyb3VwXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgXSxcbiAgICAgIDFcbiAgICApLFxuICAgIF92bS5fdihcIiBcIiksXG4gICAgX3ZtLnN1YkFkbWluc0dyb3Vwcy5sZW5ndGggPiAwXG4gICAgICA/IF9jKFxuICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAge1xuICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwic3ViYWRtaW5zXCIsXG4gICAgICAgICAgICBjbGFzczogeyBcImljb24tbG9hZGluZy1zbWFsbFwiOiBfdm0ubG9hZGluZy5zdWJhZG1pbnMgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgW1xuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwibXVsdGlzZWxlY3RcIixcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcIm11bHRpc2VsZWN0LXZ1ZVwiLFxuICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnVzZXJTdWJBZG1pbnNHcm91cHMsXG4gICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0uc3ViQWRtaW5zR3JvdXBzLFxuICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ6IF92bS5sb2FkaW5nLnN1YmFkbWlucyB8fCBfdm0ubG9hZGluZy5hbGwsXG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlNldCB1c2VyIGFzIGFkbWluIGZvclwiKSxcbiAgICAgICAgICAgICAgICAgIGxhYmVsOiBcIm5hbWVcIixcbiAgICAgICAgICAgICAgICAgIFwidHJhY2stYnlcIjogXCJpZFwiLFxuICAgICAgICAgICAgICAgICAgbGltaXQ6IDIsXG4gICAgICAgICAgICAgICAgICBsaW1pdFRleHQ6IF92bS5saW1pdEdyb3VwcyxcbiAgICAgICAgICAgICAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgY2xvc2VPblNlbGVjdDogZmFsc2VcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICBzZWxlY3Q6IF92bS5hZGRVc2VyU3ViQWRtaW4sXG4gICAgICAgICAgICAgICAgICByZW1vdmU6IF92bS5yZW1vdmVVc2VyU3ViQWRtaW5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICBfYyhcInNwYW5cIiwgeyBhdHRyczogeyBzbG90OiBcIm5vUmVzdWx0XCIgfSwgc2xvdDogXCJub1Jlc3VsdFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIk5vIHJlc3VsdFwiKSkpXG4gICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgKVxuICAgICAgICAgIF0sXG4gICAgICAgICAgMVxuICAgICAgICApXG4gICAgICA6IF92bS5fZSgpLFxuICAgIF92bS5fdihcIiBcIiksXG4gICAgX2MoXG4gICAgICBcImRpdlwiLFxuICAgICAge1xuICAgICAgICBzdGF0aWNDbGFzczogXCJxdW90YVwiLFxuICAgICAgICBjbGFzczogeyBcImljb24tbG9hZGluZy1zbWFsbFwiOiBfdm0ubG9hZGluZy5xdW90YSB9XG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcIm11bHRpc2VsZWN0XCIsIHtcbiAgICAgICAgICBzdGF0aWNDbGFzczogXCJtdWx0aXNlbGVjdC12dWVcIixcbiAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgdmFsdWU6IF92bS51c2VyUXVvdGEsXG4gICAgICAgICAgICBvcHRpb25zOiBfdm0ucXVvdGFPcHRpb25zLFxuICAgICAgICAgICAgZGlzYWJsZWQ6IF92bS5sb2FkaW5nLnF1b3RhIHx8IF92bS5sb2FkaW5nLmFsbCxcbiAgICAgICAgICAgIFwidGFnLXBsYWNlaG9sZGVyXCI6IFwiY3JlYXRlXCIsXG4gICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlNlbGVjdCB1c2VyIHF1b3RhXCIpLFxuICAgICAgICAgICAgbGFiZWw6IFwibGFiZWxcIixcbiAgICAgICAgICAgIFwidHJhY2stYnlcIjogXCJpZFwiLFxuICAgICAgICAgICAgYWxsb3dFbXB0eTogZmFsc2UsXG4gICAgICAgICAgICB0YWdnYWJsZTogdHJ1ZVxuICAgICAgICAgIH0sXG4gICAgICAgICAgb246IHsgdGFnOiBfdm0udmFsaWRhdGVRdW90YSwgaW5wdXQ6IF92bS5zZXRVc2VyUXVvdGEgfVxuICAgICAgICB9KSxcbiAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgX2MoXCJwcm9ncmVzc1wiLCB7XG4gICAgICAgICAgc3RhdGljQ2xhc3M6IFwicXVvdGEtdXNlci1wcm9ncmVzc1wiLFxuICAgICAgICAgIGNsYXNzOiB7IHdhcm46IF92bS51c2VkUXVvdGEgPiA4MCB9LFxuICAgICAgICAgIGF0dHJzOiB7IG1heDogXCIxMDBcIiB9LFxuICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0udXNlZFF1b3RhIH1cbiAgICAgICAgfSlcbiAgICAgIF0sXG4gICAgICAxXG4gICAgKSxcbiAgICBfdm0uX3YoXCIgXCIpLFxuICAgIF92bS5zaG93Q29uZmlnLnNob3dTdG9yYWdlUGF0aFxuICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInN0b3JhZ2VMb2NhdGlvblwiIH0sIFtcbiAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS51c2VyLnN0b3JhZ2VMb2NhdGlvbikpXG4gICAgICAgIF0pXG4gICAgICA6IF92bS5fZSgpLFxuICAgIF92bS5fdihcIiBcIiksXG4gICAgX3ZtLnNob3dDb25maWcuc2hvd1VzZXJCYWNrZW5kXG4gICAgICA/IF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwidXNlckJhY2tlbmRcIiB9LCBbXG4gICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0udXNlci5iYWNrZW5kKSlcbiAgICAgICAgXSlcbiAgICAgIDogX3ZtLl9lKCksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfdm0uc2hvd0NvbmZpZy5zaG93TGFzdExvZ2luXG4gICAgICA/IF9jKFxuICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAge1xuICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibGFzdExvZ2luXCIsXG4gICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICB0aXRsZTpcbiAgICAgICAgICAgICAgICBfdm0udXNlci5sYXN0TG9naW4gPiAwXG4gICAgICAgICAgICAgICAgICA/IF92bS5PQy5VdGlsLmZvcm1hdERhdGUoX3ZtLnVzZXIubGFzdExvZ2luKVxuICAgICAgICAgICAgICAgICAgOiBcIlwiXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICBbXG4gICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgIFwiXFxuXFx0XFx0XCIgK1xuICAgICAgICAgICAgICAgIF92bS5fcyhcbiAgICAgICAgICAgICAgICAgIF92bS51c2VyLmxhc3RMb2dpbiA+IDBcbiAgICAgICAgICAgICAgICAgICAgPyBfdm0uT0MuVXRpbC5yZWxhdGl2ZU1vZGlmaWVkRGF0ZShfdm0udXNlci5sYXN0TG9naW4pXG4gICAgICAgICAgICAgICAgICAgIDogX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIk5ldmVyXCIpXG4gICAgICAgICAgICAgICAgKSArXG4gICAgICAgICAgICAgICAgXCJcXG5cXHRcIlxuICAgICAgICAgICAgKVxuICAgICAgICAgIF1cbiAgICAgICAgKVxuICAgICAgOiBfdm0uX2UoKSxcbiAgICBfdm0uX3YoXCIgXCIpLFxuICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwidXNlckFjdGlvbnNcIiB9LCBbXG4gICAgICBfdm0uT0MuY3VycmVudFVzZXIgIT09IF92bS51c2VyLmlkICYmIF92bS51c2VyLmlkICE9PSBcImFkbWluXCJcbiAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInRvZ2dsZVVzZXJBY3Rpb25zXCIgfSwgW1xuICAgICAgICAgICAgX2MoXCJkaXZcIiwge1xuICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogXCJjbGljay1vdXRzaWRlXCIsXG4gICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtY2xpY2stb3V0c2lkZVwiLFxuICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5oaWRlTWVudSxcbiAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiaGlkZU1lbnVcIlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiaWNvbi1tb3JlXCIsXG4gICAgICAgICAgICAgIG9uOiB7IGNsaWNrOiBfdm0uc2hvd01lbnUgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwicG9wb3Zlcm1lbnVcIiwgY2xhc3M6IHsgb3BlbjogX3ZtLm9wZW5lZE1lbnUgfSB9LFxuICAgICAgICAgICAgICBbX2MoXCJwb3BvdmVyLW1lbnVcIiwgeyBhdHRyczogeyBtZW51OiBfdm0udXNlckFjdGlvbnMgfSB9KV0sXG4gICAgICAgICAgICAgIDFcbiAgICAgICAgICAgIClcbiAgICAgICAgICBdKVxuICAgICAgICA6IF92bS5fZSgpXG4gICAgXSlcbiAgXSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LWQxOTU4NmNlXCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtZDE5NTg2Y2VcIixcImhhc1Njb3BlZFwiOmZhbHNlLFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC91c2VyUm93LnZ1ZVxuLy8gbW9kdWxlIGlkID0gNDZcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///46\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n {\n staticClass: \"row\",\n class: { disabled: _vm.loading.delete || _vm.loading.disable }\n },\n [\n _c(\n \"div\",\n {\n staticClass: \"avatar\",\n class: { \"icon-loading\": _vm.loading.delete || _vm.loading.disable }\n },\n [\n _c(\"img\", {\n attrs: {\n alt: \"\",\n width: \"32\",\n height: \"32\",\n src: _vm.generateAvatar(_vm.user.id, 32),\n srcset:\n _vm.generateAvatar(_vm.user.id, 64) +\n \" 2x, \" +\n _vm.generateAvatar(_vm.user.id, 128) +\n \" 4x\"\n }\n })\n ]\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"name\" }, [_vm._v(_vm._s(_vm.user.id))]),\n _vm._v(\" \"),\n _c(\n \"form\",\n {\n staticClass: \"displayName\",\n class: { \"icon-loading-small\": _vm.loading.displayName },\n on: {\n submit: function($event) {\n $event.preventDefault()\n return _vm.updateDisplayName($event)\n }\n }\n },\n [\n _c(\"input\", {\n ref: \"displayName\",\n attrs: {\n id: \"displayName\" + _vm.user.id + _vm.rand,\n type: \"text\",\n disabled: _vm.loading.displayName || _vm.loading.all,\n autocomplete: \"new-password\",\n autocorrect: \"off\",\n autocapitalize: \"off\",\n spellcheck: \"false\"\n },\n domProps: { value: _vm.user.displayname }\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"icon-confirm\",\n attrs: { type: \"submit\", value: \"\" }\n })\n ]\n ),\n _vm._v(\" \"),\n _vm.settings.canChangePassword\n ? _c(\n \"form\",\n {\n staticClass: \"password\",\n class: { \"icon-loading-small\": _vm.loading.password },\n on: {\n submit: function($event) {\n $event.preventDefault()\n return _vm.updatePassword($event)\n }\n }\n },\n [\n _c(\"input\", {\n ref: \"password\",\n attrs: {\n id: \"password\" + _vm.user.id + _vm.rand,\n type: \"password\",\n required: \"\",\n disabled: _vm.loading.password || _vm.loading.all,\n minlength: _vm.minPasswordLength,\n value: \"\",\n placeholder: _vm.t(\"settings\", \"New password\"),\n autocomplete: \"new-password\",\n autocorrect: \"off\",\n autocapitalize: \"off\",\n spellcheck: \"false\"\n }\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"icon-confirm\",\n attrs: { type: \"submit\", value: \"\" }\n })\n ]\n )\n : _c(\"div\"),\n _vm._v(\" \"),\n _c(\n \"form\",\n {\n staticClass: \"mailAddress\",\n class: { \"icon-loading-small\": _vm.loading.mailAddress },\n on: {\n submit: function($event) {\n $event.preventDefault()\n return _vm.updateEmail($event)\n }\n }\n },\n [\n _c(\"input\", {\n ref: \"mailAddress\",\n attrs: {\n id: \"mailAddress\" + _vm.user.id + _vm.rand,\n type: \"email\",\n disabled: _vm.loading.mailAddress || _vm.loading.all,\n autocomplete: \"new-password\",\n autocorrect: \"off\",\n autocapitalize: \"off\",\n spellcheck: \"false\"\n },\n domProps: { value: _vm.user.email }\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"icon-confirm\",\n attrs: { type: \"submit\", value: \"\" }\n })\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"groups\",\n class: { \"icon-loading-small\": _vm.loading.groups }\n },\n [\n _c(\"multiselect\", {\n staticClass: \"multiselect-vue\",\n attrs: {\n value: _vm.userGroups,\n options: _vm.groups,\n disabled: _vm.loading.groups || _vm.loading.all,\n \"tag-placeholder\": \"create\",\n placeholder: _vm.t(\"settings\", \"Add user in group\"),\n label: \"name\",\n \"track-by\": \"id\",\n limit: 2,\n limitText: _vm.limitGroups,\n multiple: true,\n taggable: true,\n closeOnSelect: false\n },\n on: {\n tag: _vm.createGroup,\n select: _vm.addUserGroup,\n remove: _vm.removeUserGroup\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.subAdminsGroups.length > 0\n ? _c(\n \"div\",\n {\n staticClass: \"subadmins\",\n class: { \"icon-loading-small\": _vm.loading.subadmins }\n },\n [\n _c(\n \"multiselect\",\n {\n staticClass: \"multiselect-vue\",\n attrs: {\n value: _vm.userSubAdminsGroups,\n options: _vm.subAdminsGroups,\n disabled: _vm.loading.subadmins || _vm.loading.all,\n placeholder: _vm.t(\"settings\", \"Set user as admin for\"),\n label: \"name\",\n \"track-by\": \"id\",\n limit: 2,\n limitText: _vm.limitGroups,\n multiple: true,\n closeOnSelect: false\n },\n on: {\n select: _vm.addUserSubAdmin,\n remove: _vm.removeUserSubAdmin\n }\n },\n [\n _c(\n \"span\",\n { attrs: { slot: \"noResult\" }, slot: \"noResult\" },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"No result\")))]\n )\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"quota\",\n class: { \"icon-loading-small\": _vm.loading.quota }\n },\n [\n _c(\"multiselect\", {\n staticClass: \"multiselect-vue\",\n attrs: {\n value: _vm.userQuota,\n options: _vm.quotaOptions,\n disabled: _vm.loading.quota || _vm.loading.all,\n \"tag-placeholder\": \"create\",\n placeholder: _vm.t(\"settings\", \"Select user quota\"),\n label: \"label\",\n \"track-by\": \"id\",\n allowEmpty: false,\n taggable: true\n },\n on: { tag: _vm.validateQuota, input: _vm.setUserQuota }\n }),\n _vm._v(\" \"),\n _c(\"progress\", {\n staticClass: \"quota-user-progress\",\n class: { warn: _vm.usedQuota > 80 },\n attrs: { max: \"100\" },\n domProps: { value: _vm.usedQuota }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.showConfig.showStoragePath\n ? _c(\"div\", { staticClass: \"storageLocation\" }, [\n _vm._v(_vm._s(_vm.user.storageLocation))\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showUserBackend\n ? _c(\"div\", { staticClass: \"userBackend\" }, [\n _vm._v(_vm._s(_vm.user.backend))\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showLastLogin\n ? _c(\n \"div\",\n {\n staticClass: \"lastLogin\",\n attrs: {\n title:\n _vm.user.lastLogin > 0\n ? _vm.OC.Util.formatDate(_vm.user.lastLogin)\n : \"\"\n }\n },\n [\n _vm._v(\n \"\\n\\t\\t\" +\n _vm._s(\n _vm.user.lastLogin > 0\n ? _vm.OC.Util.relativeModifiedDate(_vm.user.lastLogin)\n : _vm.t(\"settings\", \"Never\")\n ) +\n \"\\n\\t\"\n )\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"userActions\" }, [\n _vm.OC.currentUser !== _vm.user.id &&\n _vm.user.id !== \"admin\" &&\n !_vm.loading.all\n ? _c(\"div\", { staticClass: \"toggleUserActions\" }, [\n _c(\"div\", {\n directives: [\n {\n name: \"click-outside\",\n rawName: \"v-click-outside\",\n value: _vm.hideMenu,\n expression: \"hideMenu\"\n }\n ],\n staticClass: \"icon-more\",\n on: { click: _vm.showMenu }\n }),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"popovermenu\", class: { open: _vm.openedMenu } },\n [_c(\"popover-menu\", { attrs: { menu: _vm.userActions } })],\n 1\n )\n ])\n : _vm._e()\n ])\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (false) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\") .rerender(\"data-v-d19586ce\", esExports)\n }\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC91c2VyUm93LnZ1ZT8zMGMxIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjO0FBQ2QsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0I7QUFDbEIsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQixzQkFBc0I7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQixnREFBZ0Q7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsdUJBQXVCO0FBQ3ZCLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQSxvQkFBb0I7QUFDcEIsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsNkNBQTZDO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEIsZUFBZTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsZ0RBQWdEO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLHVCQUF1QjtBQUN2QixXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CO0FBQ3BCLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQjtBQUNsQixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0I7QUFDdEIsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixTQUFTLG1CQUFtQixvQkFBb0I7QUFDckU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0I7QUFDbEIsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGlCQUFpQjtBQUNqQixXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDJCQUEyQjtBQUMvQyxvQkFBb0IsYUFBYTtBQUNqQyx1QkFBdUI7QUFDdkIsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsaUNBQWlDO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsNkJBQTZCO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLDZCQUE2QjtBQUM5QztBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsbUNBQW1DO0FBQzFEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCLGVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIscUNBQXFDLHVCQUF1QixFQUFFO0FBQy9FLHFDQUFxQyxTQUFTLHdCQUF3QixFQUFFO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwiZmlsZSI6IjQ2LmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIHJlbmRlciA9IGZ1bmN0aW9uKCkge1xuICB2YXIgX3ZtID0gdGhpc1xuICB2YXIgX2ggPSBfdm0uJGNyZWF0ZUVsZW1lbnRcbiAgdmFyIF9jID0gX3ZtLl9zZWxmLl9jIHx8IF9oXG4gIHJldHVybiBfYyhcbiAgICBcImRpdlwiLFxuICAgIHtcbiAgICAgIHN0YXRpY0NsYXNzOiBcInJvd1wiLFxuICAgICAgY2xhc3M6IHsgZGlzYWJsZWQ6IF92bS5sb2FkaW5nLmRlbGV0ZSB8fCBfdm0ubG9hZGluZy5kaXNhYmxlIH1cbiAgICB9LFxuICAgIFtcbiAgICAgIF9jKFxuICAgICAgICBcImRpdlwiLFxuICAgICAgICB7XG4gICAgICAgICAgc3RhdGljQ2xhc3M6IFwiYXZhdGFyXCIsXG4gICAgICAgICAgY2xhc3M6IHsgXCJpY29uLWxvYWRpbmdcIjogX3ZtLmxvYWRpbmcuZGVsZXRlIHx8IF92bS5sb2FkaW5nLmRpc2FibGUgfVxuICAgICAgICB9LFxuICAgICAgICBbXG4gICAgICAgICAgX2MoXCJpbWdcIiwge1xuICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgYWx0OiBcIlwiLFxuICAgICAgICAgICAgICB3aWR0aDogXCIzMlwiLFxuICAgICAgICAgICAgICBoZWlnaHQ6IFwiMzJcIixcbiAgICAgICAgICAgICAgc3JjOiBfdm0uZ2VuZXJhdGVBdmF0YXIoX3ZtLnVzZXIuaWQsIDMyKSxcbiAgICAgICAgICAgICAgc3Jjc2V0OlxuICAgICAgICAgICAgICAgIF92bS5nZW5lcmF0ZUF2YXRhcihfdm0udXNlci5pZCwgNjQpICtcbiAgICAgICAgICAgICAgICBcIiAyeCwgXCIgK1xuICAgICAgICAgICAgICAgIF92bS5nZW5lcmF0ZUF2YXRhcihfdm0udXNlci5pZCwgMTI4KSArXG4gICAgICAgICAgICAgICAgXCIgNHhcIlxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgIF1cbiAgICAgICksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJuYW1lXCIgfSwgW192bS5fdihfdm0uX3MoX3ZtLnVzZXIuaWQpKV0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFxuICAgICAgICBcImZvcm1cIixcbiAgICAgICAge1xuICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImRpc3BsYXlOYW1lXCIsXG4gICAgICAgICAgY2xhc3M6IHsgXCJpY29uLWxvYWRpbmctc21hbGxcIjogX3ZtLmxvYWRpbmcuZGlzcGxheU5hbWUgfSxcbiAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgc3VibWl0OiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgICAgICAgICAgcmV0dXJuIF92bS51cGRhdGVEaXNwbGF5TmFtZSgkZXZlbnQpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBbXG4gICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICByZWY6IFwiZGlzcGxheU5hbWVcIixcbiAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgIGlkOiBcImRpc3BsYXlOYW1lXCIgKyBfdm0udXNlci5pZCArIF92bS5yYW5kLFxuICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6IF92bS5sb2FkaW5nLmRpc3BsYXlOYW1lIHx8IF92bS5sb2FkaW5nLmFsbCxcbiAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlOiBcIm5ldy1wYXNzd29yZFwiLFxuICAgICAgICAgICAgICBhdXRvY29ycmVjdDogXCJvZmZcIixcbiAgICAgICAgICAgICAgYXV0b2NhcGl0YWxpemU6IFwib2ZmXCIsXG4gICAgICAgICAgICAgIHNwZWxsY2hlY2s6IFwiZmFsc2VcIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0udXNlci5kaXNwbGF5bmFtZSB9XG4gICAgICAgICAgfSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImljb24tY29uZmlybVwiLFxuICAgICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJzdWJtaXRcIiwgdmFsdWU6IFwiXCIgfVxuICAgICAgICAgIH0pXG4gICAgICAgIF1cbiAgICAgICksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX3ZtLnNldHRpbmdzLmNhbkNoYW5nZVBhc3N3b3JkXG4gICAgICAgID8gX2MoXG4gICAgICAgICAgICBcImZvcm1cIixcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwicGFzc3dvcmRcIixcbiAgICAgICAgICAgICAgY2xhc3M6IHsgXCJpY29uLWxvYWRpbmctc21hbGxcIjogX3ZtLmxvYWRpbmcucGFzc3dvcmQgfSxcbiAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICBzdWJtaXQ6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0udXBkYXRlUGFzc3dvcmQoJGV2ZW50KVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgcmVmOiBcInBhc3N3b3JkXCIsXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgIGlkOiBcInBhc3N3b3JkXCIgKyBfdm0udXNlci5pZCArIF92bS5yYW5kLFxuICAgICAgICAgICAgICAgICAgdHlwZTogXCJwYXNzd29yZFwiLFxuICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IFwiXCIsXG4gICAgICAgICAgICAgICAgICBkaXNhYmxlZDogX3ZtLmxvYWRpbmcucGFzc3dvcmQgfHwgX3ZtLmxvYWRpbmcuYWxsLFxuICAgICAgICAgICAgICAgICAgbWlubGVuZ3RoOiBfdm0ubWluUGFzc3dvcmRMZW5ndGgsXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogXCJcIixcbiAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0udChcInNldHRpbmdzXCIsIFwiTmV3IHBhc3N3b3JkXCIpLFxuICAgICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlOiBcIm5ldy1wYXNzd29yZFwiLFxuICAgICAgICAgICAgICAgICAgYXV0b2NvcnJlY3Q6IFwib2ZmXCIsXG4gICAgICAgICAgICAgICAgICBhdXRvY2FwaXRhbGl6ZTogXCJvZmZcIixcbiAgICAgICAgICAgICAgICAgIHNwZWxsY2hlY2s6IFwiZmFsc2VcIlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImljb24tY29uZmlybVwiLFxuICAgICAgICAgICAgICAgIGF0dHJzOiB7IHR5cGU6IFwic3VibWl0XCIsIHZhbHVlOiBcIlwiIH1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIF1cbiAgICAgICAgICApXG4gICAgICAgIDogX2MoXCJkaXZcIiksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXG4gICAgICAgIFwiZm9ybVwiLFxuICAgICAgICB7XG4gICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWFpbEFkZHJlc3NcIixcbiAgICAgICAgICBjbGFzczogeyBcImljb24tbG9hZGluZy1zbWFsbFwiOiBfdm0ubG9hZGluZy5tYWlsQWRkcmVzcyB9LFxuICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICBzdWJtaXQ6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgICByZXR1cm4gX3ZtLnVwZGF0ZUVtYWlsKCRldmVudClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIFtcbiAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgIHJlZjogXCJtYWlsQWRkcmVzc1wiLFxuICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgaWQ6IFwibWFpbEFkZHJlc3NcIiArIF92bS51c2VyLmlkICsgX3ZtLnJhbmQsXG4gICAgICAgICAgICAgIHR5cGU6IFwiZW1haWxcIixcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6IF92bS5sb2FkaW5nLm1haWxBZGRyZXNzIHx8IF92bS5sb2FkaW5nLmFsbCxcbiAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlOiBcIm5ldy1wYXNzd29yZFwiLFxuICAgICAgICAgICAgICBhdXRvY29ycmVjdDogXCJvZmZcIixcbiAgICAgICAgICAgICAgYXV0b2NhcGl0YWxpemU6IFwib2ZmXCIsXG4gICAgICAgICAgICAgIHNwZWxsY2hlY2s6IFwiZmFsc2VcIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0udXNlci5lbWFpbCB9XG4gICAgICAgICAgfSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImljb24tY29uZmlybVwiLFxuICAgICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJzdWJtaXRcIiwgdmFsdWU6IFwiXCIgfVxuICAgICAgICAgIH0pXG4gICAgICAgIF1cbiAgICAgICksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXG4gICAgICAgIFwiZGl2XCIsXG4gICAgICAgIHtcbiAgICAgICAgICBzdGF0aWNDbGFzczogXCJncm91cHNcIixcbiAgICAgICAgICBjbGFzczogeyBcImljb24tbG9hZGluZy1zbWFsbFwiOiBfdm0ubG9hZGluZy5ncm91cHMgfVxuICAgICAgICB9LFxuICAgICAgICBbXG4gICAgICAgICAgX2MoXCJtdWx0aXNlbGVjdFwiLCB7XG4gICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtdWx0aXNlbGVjdC12dWVcIixcbiAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgIHZhbHVlOiBfdm0udXNlckdyb3VwcyxcbiAgICAgICAgICAgICAgb3B0aW9uczogX3ZtLmdyb3VwcyxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6IF92bS5sb2FkaW5nLmdyb3VwcyB8fCBfdm0ubG9hZGluZy5hbGwsXG4gICAgICAgICAgICAgIFwidGFnLXBsYWNlaG9sZGVyXCI6IFwiY3JlYXRlXCIsXG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0udChcInNldHRpbmdzXCIsIFwiQWRkIHVzZXIgaW4gZ3JvdXBcIiksXG4gICAgICAgICAgICAgIGxhYmVsOiBcIm5hbWVcIixcbiAgICAgICAgICAgICAgXCJ0cmFjay1ieVwiOiBcImlkXCIsXG4gICAgICAgICAgICAgIGxpbWl0OiAyLFxuICAgICAgICAgICAgICBsaW1pdFRleHQ6IF92bS5saW1pdEdyb3VwcyxcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IHRydWUsXG4gICAgICAgICAgICAgIHRhZ2dhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICBjbG9zZU9uU2VsZWN0OiBmYWxzZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgIHRhZzogX3ZtLmNyZWF0ZUdyb3VwLFxuICAgICAgICAgICAgICBzZWxlY3Q6IF92bS5hZGRVc2VyR3JvdXAsXG4gICAgICAgICAgICAgIHJlbW92ZTogX3ZtLnJlbW92ZVVzZXJHcm91cFxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgIF0sXG4gICAgICAgIDFcbiAgICAgICksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX3ZtLnN1YkFkbWluc0dyb3Vwcy5sZW5ndGggPiAwXG4gICAgICAgID8gX2MoXG4gICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJzdWJhZG1pbnNcIixcbiAgICAgICAgICAgICAgY2xhc3M6IHsgXCJpY29uLWxvYWRpbmctc21hbGxcIjogX3ZtLmxvYWRpbmcuc3ViYWRtaW5zIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgIFwibXVsdGlzZWxlY3RcIixcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtdWx0aXNlbGVjdC12dWVcIixcbiAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0udXNlclN1YkFkbWluc0dyb3VwcyxcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogX3ZtLnN1YkFkbWluc0dyb3VwcyxcbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ6IF92bS5sb2FkaW5nLnN1YmFkbWlucyB8fCBfdm0ubG9hZGluZy5hbGwsXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0udChcInNldHRpbmdzXCIsIFwiU2V0IHVzZXIgYXMgYWRtaW4gZm9yXCIpLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbDogXCJuYW1lXCIsXG4gICAgICAgICAgICAgICAgICAgIFwidHJhY2stYnlcIjogXCJpZFwiLFxuICAgICAgICAgICAgICAgICAgICBsaW1pdDogMixcbiAgICAgICAgICAgICAgICAgICAgbGltaXRUZXh0OiBfdm0ubGltaXRHcm91cHMsXG4gICAgICAgICAgICAgICAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBjbG9zZU9uU2VsZWN0OiBmYWxzZVxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdDogX3ZtLmFkZFVzZXJTdWJBZG1pbixcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlOiBfdm0ucmVtb3ZlVXNlclN1YkFkbWluXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgICAgICAgIHsgYXR0cnM6IHsgc2xvdDogXCJub1Jlc3VsdFwiIH0sIHNsb3Q6IFwibm9SZXN1bHRcIiB9LFxuICAgICAgICAgICAgICAgICAgICBbX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiTm8gcmVzdWx0XCIpKSldXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgMVxuICAgICAgICAgIClcbiAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcbiAgICAgICAgXCJkaXZcIixcbiAgICAgICAge1xuICAgICAgICAgIHN0YXRpY0NsYXNzOiBcInF1b3RhXCIsXG4gICAgICAgICAgY2xhc3M6IHsgXCJpY29uLWxvYWRpbmctc21hbGxcIjogX3ZtLmxvYWRpbmcucXVvdGEgfVxuICAgICAgICB9LFxuICAgICAgICBbXG4gICAgICAgICAgX2MoXCJtdWx0aXNlbGVjdFwiLCB7XG4gICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtdWx0aXNlbGVjdC12dWVcIixcbiAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgIHZhbHVlOiBfdm0udXNlclF1b3RhLFxuICAgICAgICAgICAgICBvcHRpb25zOiBfdm0ucXVvdGFPcHRpb25zLFxuICAgICAgICAgICAgICBkaXNhYmxlZDogX3ZtLmxvYWRpbmcucXVvdGEgfHwgX3ZtLmxvYWRpbmcuYWxsLFxuICAgICAgICAgICAgICBcInRhZy1wbGFjZWhvbGRlclwiOiBcImNyZWF0ZVwiLFxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlNlbGVjdCB1c2VyIHF1b3RhXCIpLFxuICAgICAgICAgICAgICBsYWJlbDogXCJsYWJlbFwiLFxuICAgICAgICAgICAgICBcInRyYWNrLWJ5XCI6IFwiaWRcIixcbiAgICAgICAgICAgICAgYWxsb3dFbXB0eTogZmFsc2UsXG4gICAgICAgICAgICAgIHRhZ2dhYmxlOiB0cnVlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgb246IHsgdGFnOiBfdm0udmFsaWRhdGVRdW90YSwgaW5wdXQ6IF92bS5zZXRVc2VyUXVvdGEgfVxuICAgICAgICAgIH0pLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXCJwcm9ncmVzc1wiLCB7XG4gICAgICAgICAgICBzdGF0aWNDbGFzczogXCJxdW90YS11c2VyLXByb2dyZXNzXCIsXG4gICAgICAgICAgICBjbGFzczogeyB3YXJuOiBfdm0udXNlZFF1b3RhID4gODAgfSxcbiAgICAgICAgICAgIGF0dHJzOiB7IG1heDogXCIxMDBcIiB9LFxuICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS51c2VkUXVvdGEgfVxuICAgICAgICAgIH0pXG4gICAgICAgIF0sXG4gICAgICAgIDFcbiAgICAgICksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX3ZtLnNob3dDb25maWcuc2hvd1N0b3JhZ2VQYXRoXG4gICAgICAgID8gX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJzdG9yYWdlTG9jYXRpb25cIiB9LCBbXG4gICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS51c2VyLnN0b3JhZ2VMb2NhdGlvbikpXG4gICAgICAgICAgXSlcbiAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfdm0uc2hvd0NvbmZpZy5zaG93VXNlckJhY2tlbmRcbiAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInVzZXJCYWNrZW5kXCIgfSwgW1xuICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0udXNlci5iYWNrZW5kKSlcbiAgICAgICAgICBdKVxuICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF92bS5zaG93Q29uZmlnLnNob3dMYXN0TG9naW5cbiAgICAgICAgPyBfYyhcbiAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImxhc3RMb2dpblwiLFxuICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgIHRpdGxlOlxuICAgICAgICAgICAgICAgICAgX3ZtLnVzZXIubGFzdExvZ2luID4gMFxuICAgICAgICAgICAgICAgICAgICA/IF92bS5PQy5VdGlsLmZvcm1hdERhdGUoX3ZtLnVzZXIubGFzdExvZ2luKVxuICAgICAgICAgICAgICAgICAgICA6IFwiXCJcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgIFwiXFxuXFx0XFx0XCIgK1xuICAgICAgICAgICAgICAgICAgX3ZtLl9zKFxuICAgICAgICAgICAgICAgICAgICBfdm0udXNlci5sYXN0TG9naW4gPiAwXG4gICAgICAgICAgICAgICAgICAgICAgPyBfdm0uT0MuVXRpbC5yZWxhdGl2ZU1vZGlmaWVkRGF0ZShfdm0udXNlci5sYXN0TG9naW4pXG4gICAgICAgICAgICAgICAgICAgICAgOiBfdm0udChcInNldHRpbmdzXCIsIFwiTmV2ZXJcIilcbiAgICAgICAgICAgICAgICAgICkgK1xuICAgICAgICAgICAgICAgICAgXCJcXG5cXHRcIlxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICBdXG4gICAgICAgICAgKVxuICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwidXNlckFjdGlvbnNcIiB9LCBbXG4gICAgICAgIF92bS5PQy5jdXJyZW50VXNlciAhPT0gX3ZtLnVzZXIuaWQgJiZcbiAgICAgICAgX3ZtLnVzZXIuaWQgIT09IFwiYWRtaW5cIiAmJlxuICAgICAgICAhX3ZtLmxvYWRpbmcuYWxsXG4gICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInRvZ2dsZVVzZXJBY3Rpb25zXCIgfSwgW1xuICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcImNsaWNrLW91dHNpZGVcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LWNsaWNrLW91dHNpZGVcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5oaWRlTWVudSxcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJoaWRlTWVudVwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJpY29uLW1vcmVcIixcbiAgICAgICAgICAgICAgICBvbjogeyBjbGljazogX3ZtLnNob3dNZW51IH1cbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJwb3BvdmVybWVudVwiLCBjbGFzczogeyBvcGVuOiBfdm0ub3BlbmVkTWVudSB9IH0sXG4gICAgICAgICAgICAgICAgW19jKFwicG9wb3Zlci1tZW51XCIsIHsgYXR0cnM6IHsgbWVudTogX3ZtLnVzZXJBY3Rpb25zIH0gfSldLFxuICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgXSlcbiAgICAgICAgICA6IF92bS5fZSgpXG4gICAgICBdKVxuICAgIF1cbiAgKVxufVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtZDE5NTg2Y2VcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi1kMTk1ODZjZVwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL3VzZXJMaXN0L3VzZXJSb3cudnVlXG4vLyBtb2R1bGUgaWQgPSA0NlxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///46\n"); /***/ }), /* 47 */ @@ -390,7 +390,7 @@ eval("!function(e,t){ true?module.exports=t():\"function\"==typeof define&&defin /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n {\n staticClass: \"user-list-grid\",\n attrs: { id: \"app-content\" },\n on: {\n \"&scroll\": function($event) {\n return _vm.onScroll($event)\n }\n }\n },\n [\n _c(\n \"div\",\n {\n staticClass: \"row\",\n class: { sticky: _vm.scrolled && !_vm.showConfig.showNewUserForm },\n attrs: { id: \"grid-header\" }\n },\n [\n _c(\"div\", { staticClass: \"avatar\", attrs: { id: \"headerAvatar\" } }),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"name\", attrs: { id: \"headerName\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Username\")))\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"displayName\", attrs: { id: \"headerDisplayName\" } },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"Full name\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"password\", attrs: { id: \"headerPassword\" } },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"Password\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"mailAddress\", attrs: { id: \"headerAddress\" } },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"Email\")))]\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"groups\", attrs: { id: \"headerGroups\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Groups\")))\n ]),\n _vm._v(\" \"),\n _vm.subAdminsGroups.length > 0\n ? _c(\n \"div\",\n { staticClass: \"subadmins\", attrs: { id: \"headerSubAdmins\" } },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"Group admin for\")))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"quota\", attrs: { id: \"headerQuota\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Quota\")))\n ]),\n _vm._v(\" \"),\n _vm.showConfig.showStoragePath\n ? _c(\n \"div\",\n { staticClass: \"headerStorageLocation storageLocation\" },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"Storage location\")))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showUserBackend\n ? _c(\"div\", { staticClass: \"headerUserBackend userBackend\" }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"User backend\")))\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showLastLogin\n ? _c(\"div\", { staticClass: \"headerLastLogin lastLogin\" }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Last login\")))\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"userActions\" })\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"form\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.showConfig.showNewUserForm,\n expression: \"showConfig.showNewUserForm\"\n }\n ],\n staticClass: \"row\",\n class: { sticky: _vm.scrolled && _vm.showConfig.showNewUserForm },\n attrs: { id: \"new-user\", disabled: _vm.loading },\n on: {\n submit: function($event) {\n $event.preventDefault()\n return _vm.createUser($event)\n }\n }\n },\n [\n _c(\"div\", { class: _vm.loading ? \"icon-loading-small\" : \"icon-add\" }),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"name\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.newUser.id,\n expression: \"newUser.id\"\n }\n ],\n attrs: {\n id: \"newusername\",\n type: \"text\",\n required: \"\",\n placeholder: _vm.t(\"settings\", \"User name\"),\n name: \"username\",\n autocomplete: \"off\",\n autocapitalize: \"none\",\n autocorrect: \"off\",\n pattern: \"[a-zA-Z0-9 _\\\\.@\\\\-']+\"\n },\n domProps: { value: _vm.newUser.id },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.$set(_vm.newUser, \"id\", $event.target.value)\n }\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"displayName\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.newUser.displayName,\n expression: \"newUser.displayName\"\n }\n ],\n attrs: {\n id: \"newdisplayname\",\n type: \"text\",\n placeholder: _vm.t(\"settings\", \"Display name\"),\n name: \"displayname\",\n autocomplete: \"off\",\n autocapitalize: \"none\",\n autocorrect: \"off\"\n },\n domProps: { value: _vm.newUser.displayName },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.$set(_vm.newUser, \"displayName\", $event.target.value)\n }\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"password\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.newUser.password,\n expression: \"newUser.password\"\n }\n ],\n attrs: {\n id: \"newuserpassword\",\n type: \"password\",\n required: _vm.newUser.mailAddress === \"\",\n placeholder: _vm.t(\"settings\", \"Password\"),\n name: \"password\",\n autocomplete: \"new-password\",\n autocapitalize: \"none\",\n autocorrect: \"off\",\n minlength: _vm.minPasswordLength\n },\n domProps: { value: _vm.newUser.password },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.$set(_vm.newUser, \"password\", $event.target.value)\n }\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"mailAddress\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.newUser.mailAddress,\n expression: \"newUser.mailAddress\"\n }\n ],\n attrs: {\n id: \"newemail\",\n type: \"email\",\n required: _vm.newUser.password === \"\",\n placeholder: _vm.t(\"settings\", \"Mail address\"),\n name: \"email\",\n autocomplete: \"off\",\n autocapitalize: \"none\",\n autocorrect: \"off\"\n },\n domProps: { value: _vm.newUser.mailAddress },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.$set(_vm.newUser, \"mailAddress\", $event.target.value)\n }\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"groups\" },\n [\n _c(\n \"multiselect\",\n {\n staticClass: \"multiselect-vue\",\n attrs: {\n options: _vm.groups,\n placeholder: _vm.t(\"settings\", \"Add user in group\"),\n label: \"name\",\n \"track-by\": \"id\",\n multiple: true,\n \"close-on-select\": false\n },\n model: {\n value: _vm.newUser.groups,\n callback: function($$v) {\n _vm.$set(_vm.newUser, \"groups\", $$v)\n },\n expression: \"newUser.groups\"\n }\n },\n [\n _c(\n \"span\",\n { attrs: { slot: \"noResult\" }, slot: \"noResult\" },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"No result\")))]\n )\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.subAdminsGroups.length > 0\n ? _c(\n \"div\",\n { staticClass: \"subadmins\" },\n [\n _c(\n \"multiselect\",\n {\n staticClass: \"multiselect-vue\",\n attrs: {\n options: _vm.subAdminsGroups,\n placeholder: _vm.t(\"settings\", \"Set user as admin for\"),\n label: \"name\",\n \"track-by\": \"id\",\n multiple: true,\n \"close-on-select\": false\n },\n model: {\n value: _vm.newUser.subAdminsGroups,\n callback: function($$v) {\n _vm.$set(_vm.newUser, \"subAdminsGroups\", $$v)\n },\n expression: \"newUser.subAdminsGroups\"\n }\n },\n [\n _c(\n \"span\",\n { attrs: { slot: \"noResult\" }, slot: \"noResult\" },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"No result\")))]\n )\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"quota\" },\n [\n _c(\"multiselect\", {\n staticClass: \"multiselect-vue\",\n attrs: {\n options: _vm.quotaOptions,\n placeholder: _vm.t(\"settings\", \"Select user quota\"),\n label: \"label\",\n \"track-by\": \"id\",\n allowEmpty: false,\n taggable: true\n },\n on: { tag: _vm.validateQuota },\n model: {\n value: _vm.newUser.quota,\n callback: function($$v) {\n _vm.$set(_vm.newUser, \"quota\", $$v)\n },\n expression: \"newUser.quota\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.showConfig.showStoragePath\n ? _c(\"div\", { staticClass: \"storageLocation\" })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showUserBackend\n ? _c(\"div\", { staticClass: \"userBackend\" })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showLastLogin\n ? _c(\"div\", { staticClass: \"lastLogin\" })\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"userActions\" }, [\n _c(\"input\", {\n staticClass: \"button primary icon-checkmark-white has-tooltip\",\n attrs: {\n type: \"submit\",\n id: \"newsubmit\",\n value: \"\",\n title: _vm.t(\"settings\", \"Add a new user\")\n }\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"button icon-close has-tooltip\",\n attrs: {\n type: \"reset\",\n id: \"newreset\",\n value: \"\",\n title: _vm.t(\"settings\", \"Cancel and reset the form\")\n },\n on: { click: _vm.resetForm }\n })\n ])\n ]\n ),\n _vm._v(\" \"),\n _vm._l(_vm.users, function(user, key) {\n return _c(\"user-row\", {\n key: key,\n attrs: {\n user: user,\n settings: _vm.settings,\n showConfig: _vm.showConfig,\n groups: _vm.groups,\n subAdminsGroups: _vm.subAdminsGroups,\n quotaOptions: _vm.quotaOptions\n }\n })\n }),\n _vm._v(\" \"),\n _c(\"infinite-loading\", { on: { infinite: _vm.infiniteHandler } }, [\n _c(\"span\", { attrs: { slot: \"spinner\" }, slot: \"spinner\" }, [\n _c(\"div\", { staticClass: \"users-icon-loading\" })\n ]),\n _vm._v(\" \"),\n _c(\"span\", { attrs: { slot: \"no-more\" }, slot: \"no-more\" }, [\n _c(\"div\", { staticClass: \"users-list-end\" }, [\n _vm._v(\"— \" + _vm._s(_vm.t(\"settings\", \"no more results\")) + \" —\")\n ])\n ])\n ])\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (false) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\") .rerender(\"data-v-40745299\", esExports)\n }\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC52dWU/M2I4YyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxvQkFBb0I7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLDBEQUEwRDtBQUM1RSxrQkFBa0I7QUFDbEIsU0FBUztBQUNUO0FBQ0EscUJBQXFCLGdDQUFnQyxxQkFBcUIsRUFBRTtBQUM1RTtBQUNBLHFCQUFxQiw4QkFBOEIsbUJBQW1CLEVBQUU7QUFDeEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWEscUNBQXFDLDBCQUEwQixFQUFFO0FBQzlFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLGtDQUFrQyx1QkFBdUIsRUFBRTtBQUN4RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYSxxQ0FBcUMsc0JBQXNCLEVBQUU7QUFDMUU7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLGdDQUFnQyxxQkFBcUIsRUFBRTtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsbUNBQW1DLHdCQUF3QixFQUFFO0FBQzlFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLCtCQUErQixvQkFBb0IsRUFBRTtBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsdURBQXVEO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsK0NBQStDO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsMkNBQTJDO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLDZCQUE2QjtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFD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O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZixtQkFBbUI7QUFDbkIsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxPQUFPO0FBQ1A7QUFDQSw4QkFBOEIsTUFBTSxnQ0FBZ0MsRUFBRTtBQUN0RSxvQkFBb0IsU0FBUyxrQkFBa0IsbUJBQW1CO0FBQ2xFLHFCQUFxQixvQ0FBb0M7QUFDekQ7QUFDQTtBQUNBLG9CQUFvQixTQUFTLGtCQUFrQixtQkFBbUI7QUFDbEUscUJBQXFCLGdDQUFnQztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiI0OC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJkaXZcIixcbiAgICB7XG4gICAgICBzdGF0aWNDbGFzczogXCJ1c2VyLWxpc3QtZ3JpZFwiLFxuICAgICAgYXR0cnM6IHsgaWQ6IFwiYXBwLWNvbnRlbnRcIiB9LFxuICAgICAgb246IHtcbiAgICAgICAgXCImc2Nyb2xsXCI6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgIHJldHVybiBfdm0ub25TY3JvbGwoJGV2ZW50KVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJkaXZcIixcbiAgICAgICAge1xuICAgICAgICAgIHN0YXRpY0NsYXNzOiBcInJvd1wiLFxuICAgICAgICAgIGNsYXNzOiB7IHN0aWNreTogX3ZtLnNjcm9sbGVkICYmICFfdm0uc2hvd0NvbmZpZy5zaG93TmV3VXNlckZvcm0gfSxcbiAgICAgICAgICBhdHRyczogeyBpZDogXCJncmlkLWhlYWRlclwiIH1cbiAgICAgICAgfSxcbiAgICAgICAgW1xuICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiYXZhdGFyXCIsIGF0dHJzOiB7IGlkOiBcImhlYWRlckF2YXRhclwiIH0gfSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcIm5hbWVcIiwgYXR0cnM6IHsgaWQ6IFwiaGVhZGVyTmFtZVwiIH0gfSwgW1xuICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiVXNlcm5hbWVcIikpKVxuICAgICAgICAgIF0pLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXG4gICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJkaXNwbGF5TmFtZVwiLCBhdHRyczogeyBpZDogXCJoZWFkZXJEaXNwbGF5TmFtZVwiIH0gfSxcbiAgICAgICAgICAgIFtfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJGdWxsIG5hbWVcIikpKV1cbiAgICAgICAgICApLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXG4gICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJwYXNzd29yZFwiLCBhdHRyczogeyBpZDogXCJoZWFkZXJQYXNzd29yZFwiIH0gfSxcbiAgICAgICAgICAgIFtfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJQYXNzd29yZFwiKSkpXVxuICAgICAgICAgICksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcbiAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcIm1haWxBZGRyZXNzXCIsIGF0dHJzOiB7IGlkOiBcImhlYWRlckFkZHJlc3NcIiB9IH0sXG4gICAgICAgICAgICBbX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiRW1haWxcIikpKV1cbiAgICAgICAgICApLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJncm91cHNcIiwgYXR0cnM6IHsgaWQ6IFwiaGVhZGVyR3JvdXBzXCIgfSB9LCBbXG4gICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJHcm91cHNcIikpKVxuICAgICAgICAgIF0pLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX3ZtLnN1YkFkbWluc0dyb3Vwcy5sZW5ndGggPiAwXG4gICAgICAgICAgICA/IF9jKFxuICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJzdWJhZG1pbnNcIiwgYXR0cnM6IHsgaWQ6IFwiaGVhZGVyU3ViQWRtaW5zXCIgfSB9LFxuICAgICAgICAgICAgICAgIFtfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJHcm91cCBhZG1pbiBmb3JcIikpKV1cbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwicXVvdGFcIiwgYXR0cnM6IHsgaWQ6IFwiaGVhZGVyUXVvdGFcIiB9IH0sIFtcbiAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlF1b3RhXCIpKSlcbiAgICAgICAgICBdKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF92bS5zaG93Q29uZmlnLnNob3dTdG9yYWdlUGF0aFxuICAgICAgICAgICAgPyBfYyhcbiAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiaGVhZGVyU3RvcmFnZUxvY2F0aW9uIHN0b3JhZ2VMb2NhdGlvblwiIH0sXG4gICAgICAgICAgICAgICAgW192bS5fdihfdm0uX3MoX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlN0b3JhZ2UgbG9jYXRpb25cIikpKV1cbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF92bS5zaG93Q29uZmlnLnNob3dVc2VyQmFja2VuZFxuICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImhlYWRlclVzZXJCYWNrZW5kIHVzZXJCYWNrZW5kXCIgfSwgW1xuICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlVzZXIgYmFja2VuZFwiKSkpXG4gICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX3ZtLnNob3dDb25maWcuc2hvd0xhc3RMb2dpblxuICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImhlYWRlckxhc3RMb2dpbiBsYXN0TG9naW5cIiB9LCBbXG4gICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiTGFzdCBsb2dpblwiKSkpXG4gICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJ1c2VyQWN0aW9uc1wiIH0pXG4gICAgICAgIF1cbiAgICAgICksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXG4gICAgICAgIFwiZm9ybVwiLFxuICAgICAgICB7XG4gICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgdmFsdWU6IF92bS5zaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybSxcbiAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJzaG93Q29uZmlnLnNob3dOZXdVc2VyRm9ybVwiXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICBzdGF0aWNDbGFzczogXCJyb3dcIixcbiAgICAgICAgICBjbGFzczogeyBzdGlja3k6IF92bS5zY3JvbGxlZCAmJiBfdm0uc2hvd0NvbmZpZy5zaG93TmV3VXNlckZvcm0gfSxcbiAgICAgICAgICBhdHRyczogeyBpZDogXCJuZXctdXNlclwiLCBkaXNhYmxlZDogX3ZtLmxvYWRpbmcgfSxcbiAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgc3VibWl0OiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgICAgICAgICAgcmV0dXJuIF92bS5jcmVhdGVVc2VyKCRldmVudClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIFtcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IGNsYXNzOiBfdm0ubG9hZGluZyA/IFwiaWNvbi1sb2FkaW5nLXNtYWxsXCIgOiBcImljb24tYWRkXCIgfSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcIm5hbWVcIiB9LCBbXG4gICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5uZXdVc2VyLmlkLFxuICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJuZXdVc2VyLmlkXCJcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgaWQ6IFwibmV3dXNlcm5hbWVcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogXCJcIixcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlVzZXIgbmFtZVwiKSxcbiAgICAgICAgICAgICAgICBuYW1lOiBcInVzZXJuYW1lXCIsXG4gICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlOiBcIm9mZlwiLFxuICAgICAgICAgICAgICAgIGF1dG9jYXBpdGFsaXplOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICBhdXRvY29ycmVjdDogXCJvZmZcIixcbiAgICAgICAgICAgICAgICBwYXR0ZXJuOiBcIlthLXpBLVowLTkgX1xcXFwuQFxcXFwtJ10rXCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5uZXdVc2VyLmlkIH0sXG4gICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLm5ld1VzZXIsIFwiaWRcIiwgJGV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImRpc3BsYXlOYW1lXCIgfSwgW1xuICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ubmV3VXNlci5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwibmV3VXNlci5kaXNwbGF5TmFtZVwiXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgIGlkOiBcIm5ld2Rpc3BsYXluYW1lXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogXCJ0ZXh0XCIsXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS50KFwic2V0dGluZ3NcIiwgXCJEaXNwbGF5IG5hbWVcIiksXG4gICAgICAgICAgICAgICAgbmFtZTogXCJkaXNwbGF5bmFtZVwiLFxuICAgICAgICAgICAgICAgIGF1dG9jb21wbGV0ZTogXCJvZmZcIixcbiAgICAgICAgICAgICAgICBhdXRvY2FwaXRhbGl6ZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgYXV0b2NvcnJlY3Q6IFwib2ZmXCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5uZXdVc2VyLmRpc3BsYXlOYW1lIH0sXG4gICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLm5ld1VzZXIsIFwiZGlzcGxheU5hbWVcIiwgJGV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInBhc3N3b3JkXCIgfSwgW1xuICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ubmV3VXNlci5wYXNzd29yZCxcbiAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwibmV3VXNlci5wYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgIGlkOiBcIm5ld3VzZXJwYXNzd29yZFwiLFxuICAgICAgICAgICAgICAgIHR5cGU6IFwicGFzc3dvcmRcIixcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogX3ZtLm5ld1VzZXIubWFpbEFkZHJlc3MgPT09IFwiXCIsXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS50KFwic2V0dGluZ3NcIiwgXCJQYXNzd29yZFwiKSxcbiAgICAgICAgICAgICAgICBuYW1lOiBcInBhc3N3b3JkXCIsXG4gICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlOiBcIm5ldy1wYXNzd29yZFwiLFxuICAgICAgICAgICAgICAgIGF1dG9jYXBpdGFsaXplOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICBhdXRvY29ycmVjdDogXCJvZmZcIixcbiAgICAgICAgICAgICAgICBtaW5sZW5ndGg6IF92bS5taW5QYXNzd29yZExlbmd0aFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLm5ld1VzZXIucGFzc3dvcmQgfSxcbiAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBfdm0uJHNldChfdm0ubmV3VXNlciwgXCJwYXNzd29yZFwiLCAkZXZlbnQudGFyZ2V0LnZhbHVlKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwibWFpbEFkZHJlc3NcIiB9LCBbXG4gICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5uZXdVc2VyLm1haWxBZGRyZXNzLFxuICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJuZXdVc2VyLm1haWxBZGRyZXNzXCJcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgaWQ6IFwibmV3ZW1haWxcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBcImVtYWlsXCIsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IF92bS5uZXdVc2VyLnBhc3N3b3JkID09PSBcIlwiLFxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0udChcInNldHRpbmdzXCIsIFwiTWFpbCBhZGRyZXNzXCIpLFxuICAgICAgICAgICAgICAgIG5hbWU6IFwiZW1haWxcIixcbiAgICAgICAgICAgICAgICBhdXRvY29tcGxldGU6IFwib2ZmXCIsXG4gICAgICAgICAgICAgICAgYXV0b2NhcGl0YWxpemU6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIGF1dG9jb3JyZWN0OiBcIm9mZlwiXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0ubmV3VXNlci5tYWlsQWRkcmVzcyB9LFxuICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgIGlmICgkZXZlbnQudGFyZ2V0LmNvbXBvc2luZykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5uZXdVc2VyLCBcIm1haWxBZGRyZXNzXCIsICRldmVudC50YXJnZXQudmFsdWUpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF0pLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXG4gICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJncm91cHNcIiB9LFxuICAgICAgICAgICAgW1xuICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICBcIm11bHRpc2VsZWN0XCIsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibXVsdGlzZWxlY3QtdnVlXCIsXG4gICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0uZ3JvdXBzLFxuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIkFkZCB1c2VyIGluIGdyb3VwXCIpLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbDogXCJuYW1lXCIsXG4gICAgICAgICAgICAgICAgICAgIFwidHJhY2stYnlcIjogXCJpZFwiLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgXCJjbG9zZS1vbi1zZWxlY3RcIjogZmFsc2VcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLm5ld1VzZXIuZ3JvdXBzLFxuICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLm5ld1VzZXIsIFwiZ3JvdXBzXCIsICQkdilcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJuZXdVc2VyLmdyb3Vwc1wiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgICAgICAgIHsgYXR0cnM6IHsgc2xvdDogXCJub1Jlc3VsdFwiIH0sIHNsb3Q6IFwibm9SZXN1bHRcIiB9LFxuICAgICAgICAgICAgICAgICAgICBbX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiTm8gcmVzdWx0XCIpKSldXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgMVxuICAgICAgICAgICksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfdm0uc3ViQWRtaW5zR3JvdXBzLmxlbmd0aCA+IDBcbiAgICAgICAgICAgID8gX2MoXG4gICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcInN1YmFkbWluc1wiIH0sXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgIFwibXVsdGlzZWxlY3RcIixcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcIm11bHRpc2VsZWN0LXZ1ZVwiLFxuICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0uc3ViQWRtaW5zR3JvdXBzLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS50KFwic2V0dGluZ3NcIiwgXCJTZXQgdXNlciBhcyBhZG1pbiBmb3JcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogXCJuYW1lXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcInRyYWNrLWJ5XCI6IFwiaWRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJjbG9zZS1vbi1zZWxlY3RcIjogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLm5ld1VzZXIuc3ViQWRtaW5zR3JvdXBzLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChfdm0ubmV3VXNlciwgXCJzdWJBZG1pbnNHcm91cHNcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwibmV3VXNlci5zdWJBZG1pbnNHcm91cHNcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGF0dHJzOiB7IHNsb3Q6IFwibm9SZXN1bHRcIiB9LCBzbG90OiBcIm5vUmVzdWx0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFtfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJObyByZXN1bHRcIikpKV1cbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFxuICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwicXVvdGFcIiB9LFxuICAgICAgICAgICAgW1xuICAgICAgICAgICAgICBfYyhcIm11bHRpc2VsZWN0XCIsIHtcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtdWx0aXNlbGVjdC12dWVcIixcbiAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgb3B0aW9uczogX3ZtLnF1b3RhT3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0udChcInNldHRpbmdzXCIsIFwiU2VsZWN0IHVzZXIgcXVvdGFcIiksXG4gICAgICAgICAgICAgICAgICBsYWJlbDogXCJsYWJlbFwiLFxuICAgICAgICAgICAgICAgICAgXCJ0cmFjay1ieVwiOiBcImlkXCIsXG4gICAgICAgICAgICAgICAgICBhbGxvd0VtcHR5OiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgIHRhZ2dhYmxlOiB0cnVlXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBvbjogeyB0YWc6IF92bS52YWxpZGF0ZVF1b3RhIH0sXG4gICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ubmV3VXNlci5xdW90YSxcbiAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLm5ld1VzZXIsIFwicXVvdGFcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwibmV3VXNlci5xdW90YVwiXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIDFcbiAgICAgICAgICApLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX3ZtLnNob3dDb25maWcuc2hvd1N0b3JhZ2VQYXRoXG4gICAgICAgICAgICA/IF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwic3RvcmFnZUxvY2F0aW9uXCIgfSlcbiAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfdm0uc2hvd0NvbmZpZy5zaG93VXNlckJhY2tlbmRcbiAgICAgICAgICAgID8gX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJ1c2VyQmFja2VuZFwiIH0pXG4gICAgICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX3ZtLnNob3dDb25maWcuc2hvd0xhc3RMb2dpblxuICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImxhc3RMb2dpblwiIH0pXG4gICAgICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJ1c2VyQWN0aW9uc1wiIH0sIFtcbiAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJidXR0b24gcHJpbWFyeSBpY29uLWNoZWNrbWFyay13aGl0ZSBoYXMtdG9vbHRpcFwiLFxuICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgIHR5cGU6IFwic3VibWl0XCIsXG4gICAgICAgICAgICAgICAgaWQ6IFwibmV3c3VibWl0XCIsXG4gICAgICAgICAgICAgICAgdmFsdWU6IFwiXCIsXG4gICAgICAgICAgICAgICAgdGl0bGU6IF92bS50KFwic2V0dGluZ3NcIiwgXCJBZGQgYSBuZXcgdXNlclwiKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiYnV0dG9uIGljb24tY2xvc2UgaGFzLXRvb2x0aXBcIixcbiAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICB0eXBlOiBcInJlc2V0XCIsXG4gICAgICAgICAgICAgICAgaWQ6IFwibmV3cmVzZXRcIixcbiAgICAgICAgICAgICAgICB2YWx1ZTogXCJcIixcbiAgICAgICAgICAgICAgICB0aXRsZTogX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIkNhbmNlbCBhbmQgcmVzZXQgdGhlIGZvcm1cIilcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgb246IHsgY2xpY2s6IF92bS5yZXNldEZvcm0gfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdKVxuICAgICAgICBdXG4gICAgICApLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF92bS5fbChfdm0udXNlcnMsIGZ1bmN0aW9uKHVzZXIsIGtleSkge1xuICAgICAgICByZXR1cm4gX2MoXCJ1c2VyLXJvd1wiLCB7XG4gICAgICAgICAga2V5OiBrZXksXG4gICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgIHVzZXI6IHVzZXIsXG4gICAgICAgICAgICBzZXR0aW5nczogX3ZtLnNldHRpbmdzLFxuICAgICAgICAgICAgc2hvd0NvbmZpZzogX3ZtLnNob3dDb25maWcsXG4gICAgICAgICAgICBncm91cHM6IF92bS5ncm91cHMsXG4gICAgICAgICAgICBzdWJBZG1pbnNHcm91cHM6IF92bS5zdWJBZG1pbnNHcm91cHMsXG4gICAgICAgICAgICBxdW90YU9wdGlvbnM6IF92bS5xdW90YU9wdGlvbnNcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcImluZmluaXRlLWxvYWRpbmdcIiwgeyBvbjogeyBpbmZpbml0ZTogX3ZtLmluZmluaXRlSGFuZGxlciB9IH0sIFtcbiAgICAgICAgX2MoXCJzcGFuXCIsIHsgYXR0cnM6IHsgc2xvdDogXCJzcGlubmVyXCIgfSwgc2xvdDogXCJzcGlubmVyXCIgfSwgW1xuICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwidXNlcnMtaWNvbi1sb2FkaW5nXCIgfSlcbiAgICAgICAgXSksXG4gICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgIF9jKFwic3BhblwiLCB7IGF0dHJzOiB7IHNsb3Q6IFwibm8tbW9yZVwiIH0sIHNsb3Q6IFwibm8tbW9yZVwiIH0sIFtcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInVzZXJzLWxpc3QtZW5kXCIgfSwgW1xuICAgICAgICAgICAgX3ZtLl92KFwi4oCUIFwiICsgX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJubyBtb3JlIHJlc3VsdHNcIikpICsgXCIg4oCUXCIpXG4gICAgICAgICAgXSlcbiAgICAgICAgXSlcbiAgICAgIF0pXG4gICAgXSxcbiAgICAyXG4gIClcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LTQwNzQ1Mjk5XCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtNDA3NDUyOTlcIixcImhhc1Njb3BlZFwiOmZhbHNlLFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC52dWVcbi8vIG1vZHVsZSBpZCA9IDQ4XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///48\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n {\n staticClass: \"user-list-grid\",\n attrs: { id: \"app-content\" },\n on: {\n \"&scroll\": function($event) {\n return _vm.onScroll($event)\n }\n }\n },\n [\n _c(\n \"div\",\n {\n staticClass: \"row\",\n class: { sticky: _vm.scrolled && !_vm.showConfig.showNewUserForm },\n attrs: { id: \"grid-header\" }\n },\n [\n _c(\"div\", { staticClass: \"avatar\", attrs: { id: \"headerAvatar\" } }),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"name\", attrs: { id: \"headerName\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Username\")))\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"displayName\", attrs: { id: \"headerDisplayName\" } },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"Full name\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"password\", attrs: { id: \"headerPassword\" } },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"Password\")))]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"mailAddress\", attrs: { id: \"headerAddress\" } },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"Email\")))]\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"groups\", attrs: { id: \"headerGroups\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Groups\")))\n ]),\n _vm._v(\" \"),\n _vm.subAdminsGroups.length > 0\n ? _c(\n \"div\",\n { staticClass: \"subadmins\", attrs: { id: \"headerSubAdmins\" } },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"Group admin for\")))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"quota\", attrs: { id: \"headerQuota\" } }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Quota\")))\n ]),\n _vm._v(\" \"),\n _vm.showConfig.showStoragePath\n ? _c(\n \"div\",\n { staticClass: \"headerStorageLocation storageLocation\" },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"Storage location\")))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showUserBackend\n ? _c(\"div\", { staticClass: \"headerUserBackend userBackend\" }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"User backend\")))\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showLastLogin\n ? _c(\"div\", { staticClass: \"headerLastLogin lastLogin\" }, [\n _vm._v(_vm._s(_vm.t(\"settings\", \"Last login\")))\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"userActions\" })\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"form\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.showConfig.showNewUserForm,\n expression: \"showConfig.showNewUserForm\"\n }\n ],\n staticClass: \"row\",\n class: { sticky: _vm.scrolled && _vm.showConfig.showNewUserForm },\n attrs: { id: \"new-user\", disabled: _vm.loading },\n on: {\n submit: function($event) {\n $event.preventDefault()\n return _vm.createUser($event)\n }\n }\n },\n [\n _c(\"div\", { class: _vm.loading ? \"icon-loading-small\" : \"icon-add\" }),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"name\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.newUser.id,\n expression: \"newUser.id\"\n }\n ],\n attrs: {\n id: \"newusername\",\n type: \"text\",\n required: \"\",\n placeholder: _vm.t(\"settings\", \"User name\"),\n name: \"username\",\n autocomplete: \"off\",\n autocapitalize: \"none\",\n autocorrect: \"off\",\n pattern: \"[a-zA-Z0-9 _\\\\.@\\\\-']+\"\n },\n domProps: { value: _vm.newUser.id },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.$set(_vm.newUser, \"id\", $event.target.value)\n }\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"displayName\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.newUser.displayName,\n expression: \"newUser.displayName\"\n }\n ],\n attrs: {\n id: \"newdisplayname\",\n type: \"text\",\n placeholder: _vm.t(\"settings\", \"Display name\"),\n name: \"displayname\",\n autocomplete: \"off\",\n autocapitalize: \"none\",\n autocorrect: \"off\"\n },\n domProps: { value: _vm.newUser.displayName },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.$set(_vm.newUser, \"displayName\", $event.target.value)\n }\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"password\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.newUser.password,\n expression: \"newUser.password\"\n }\n ],\n attrs: {\n id: \"newuserpassword\",\n type: \"password\",\n required: _vm.newUser.mailAddress === \"\",\n placeholder: _vm.t(\"settings\", \"Password\"),\n name: \"password\",\n autocomplete: \"new-password\",\n autocapitalize: \"none\",\n autocorrect: \"off\",\n minlength: _vm.minPasswordLength\n },\n domProps: { value: _vm.newUser.password },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.$set(_vm.newUser, \"password\", $event.target.value)\n }\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"mailAddress\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.newUser.mailAddress,\n expression: \"newUser.mailAddress\"\n }\n ],\n attrs: {\n id: \"newemail\",\n type: \"email\",\n required: _vm.newUser.password === \"\",\n placeholder: _vm.t(\"settings\", \"Mail address\"),\n name: \"email\",\n autocomplete: \"off\",\n autocapitalize: \"none\",\n autocorrect: \"off\"\n },\n domProps: { value: _vm.newUser.mailAddress },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.$set(_vm.newUser, \"mailAddress\", $event.target.value)\n }\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"groups\" },\n [\n _c(\n \"multiselect\",\n {\n staticClass: \"multiselect-vue\",\n attrs: {\n options: _vm.groups,\n placeholder: _vm.t(\"settings\", \"Add user in group\"),\n label: \"name\",\n \"track-by\": \"id\",\n multiple: true,\n \"close-on-select\": false\n },\n model: {\n value: _vm.newUser.groups,\n callback: function($$v) {\n _vm.$set(_vm.newUser, \"groups\", $$v)\n },\n expression: \"newUser.groups\"\n }\n },\n [\n _c(\n \"span\",\n { attrs: { slot: \"noResult\" }, slot: \"noResult\" },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"No result\")))]\n )\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.subAdminsGroups.length > 0\n ? _c(\n \"div\",\n { staticClass: \"subadmins\" },\n [\n _c(\n \"multiselect\",\n {\n staticClass: \"multiselect-vue\",\n attrs: {\n options: _vm.subAdminsGroups,\n placeholder: _vm.t(\"settings\", \"Set user as admin for\"),\n label: \"name\",\n \"track-by\": \"id\",\n multiple: true,\n \"close-on-select\": false\n },\n model: {\n value: _vm.newUser.subAdminsGroups,\n callback: function($$v) {\n _vm.$set(_vm.newUser, \"subAdminsGroups\", $$v)\n },\n expression: \"newUser.subAdminsGroups\"\n }\n },\n [\n _c(\n \"span\",\n { attrs: { slot: \"noResult\" }, slot: \"noResult\" },\n [_vm._v(_vm._s(_vm.t(\"settings\", \"No result\")))]\n )\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"quota\" },\n [\n _c(\"multiselect\", {\n staticClass: \"multiselect-vue\",\n attrs: {\n options: _vm.quotaOptions,\n placeholder: _vm.t(\"settings\", \"Select user quota\"),\n label: \"label\",\n \"track-by\": \"id\",\n allowEmpty: false,\n taggable: true\n },\n on: { tag: _vm.validateQuota },\n model: {\n value: _vm.newUser.quota,\n callback: function($$v) {\n _vm.$set(_vm.newUser, \"quota\", $$v)\n },\n expression: \"newUser.quota\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.showConfig.showStoragePath\n ? _c(\"div\", { staticClass: \"storageLocation\" })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showUserBackend\n ? _c(\"div\", { staticClass: \"userBackend\" })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showConfig.showLastLogin\n ? _c(\"div\", { staticClass: \"lastLogin\" })\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"userActions\" }, [\n _c(\"input\", {\n staticClass: \"button primary icon-checkmark-white has-tooltip\",\n attrs: {\n type: \"submit\",\n id: \"newsubmit\",\n value: \"\",\n title: _vm.t(\"settings\", \"Add a new user\")\n }\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"button icon-close has-tooltip\",\n attrs: {\n type: \"reset\",\n id: \"newreset\",\n value: \"\",\n title: _vm.t(\"settings\", \"Cancel and reset the form\")\n },\n on: { click: _vm.resetForm }\n })\n ])\n ]\n ),\n _vm._v(\" \"),\n _vm._l(_vm.filteredUsers, function(user, key) {\n return _c(\"user-row\", {\n key: key,\n attrs: {\n user: user,\n settings: _vm.settings,\n showConfig: _vm.showConfig,\n groups: _vm.groups,\n subAdminsGroups: _vm.subAdminsGroups,\n quotaOptions: _vm.quotaOptions\n }\n })\n }),\n _vm._v(\" \"),\n _c(\n \"infinite-loading\",\n { ref: \"infiniteLoading\", on: { infinite: _vm.infiniteHandler } },\n [\n _c(\"div\", { attrs: { slot: \"spinner\" }, slot: \"spinner\" }, [\n _c(\"div\", { staticClass: \"users-icon-loading icon-loading\" })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { attrs: { slot: \"no-more\" }, slot: \"no-more\" }, [\n _c(\"div\", { staticClass: \"users-list-end\" }, [\n _vm._v(\"— \" + _vm._s(_vm.t(\"settings\", \"no more results\")) + \" —\")\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", { attrs: { slot: \"no-results\" }, slot: \"no-results\" }, [\n _c(\"div\", { attrs: { id: \"emptycontent\" } }, [\n _c(\"div\", { staticClass: \"icon-contacts-dark\" }),\n _vm._v(\" \"),\n _c(\"h2\", [_vm._v(_vm._s(_vm.t(\"settings\", \"No users in here\")))])\n ])\n ])\n ]\n )\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (false) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\") .rerender(\"data-v-40745299\", esExports)\n }\n}\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy91c2VyTGlzdC52dWU/M2I4YyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxvQkFBb0I7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLDBEQUEwRDtBQUM1RSxrQkFBa0I7QUFDbEIsU0FBUztBQUNUO0FBQ0EscUJBQXFCLGdDQUFnQyxxQkFBcUIsRUFBRTtBQUM1RTtBQUNBLHFCQUFxQiw4QkFBOEIsbUJBQW1CLEVBQUU7QUFDeEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWEscUNBQXFDLDBCQUEwQixFQUFFO0FBQzlFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLGtDQUFrQyx1QkFBdUIsRUFBRTtBQUN4RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYSxxQ0FBcUMsc0JBQXNCLEVBQUU7QUFDMUU7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLGdDQUFnQyxxQkFBcUIsRUFBRTtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsbUNBQW1DLHdCQUF3QixFQUFFO0FBQzlFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLCtCQUErQixvQkFBb0IsRUFBRTtBQUMxRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsdURBQXVEO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsK0NBQStDO0FBQ3hFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsMkNBQTJDO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLDZCQUE2QjtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFD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O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZixtQkFBbUI7QUFDbkIsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsU0FBUyw4QkFBOEIsZ0NBQWdDLEVBQUU7QUFDekU7QUFDQSxxQkFBcUIsU0FBUyxrQkFBa0IsbUJBQW1CO0FBQ25FLHVCQUF1QixpREFBaUQ7QUFDeEU7QUFDQTtBQUNBLHFCQUFxQixTQUFTLGtCQUFrQixtQkFBbUI7QUFDbkUsdUJBQXVCLGdDQUFnQztBQUN2RDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixTQUFTLHFCQUFxQixzQkFBc0I7QUFDekUsdUJBQXVCLFNBQVMscUJBQXFCLEVBQUU7QUFDdkQseUJBQXlCLG9DQUFvQztBQUM3RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiNDguanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFxuICAgIFwiZGl2XCIsXG4gICAge1xuICAgICAgc3RhdGljQ2xhc3M6IFwidXNlci1saXN0LWdyaWRcIixcbiAgICAgIGF0dHJzOiB7IGlkOiBcImFwcC1jb250ZW50XCIgfSxcbiAgICAgIG9uOiB7XG4gICAgICAgIFwiJnNjcm9sbFwiOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICByZXR1cm4gX3ZtLm9uU2Nyb2xsKCRldmVudClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgW1xuICAgICAgX2MoXG4gICAgICAgIFwiZGl2XCIsXG4gICAgICAgIHtcbiAgICAgICAgICBzdGF0aWNDbGFzczogXCJyb3dcIixcbiAgICAgICAgICBjbGFzczogeyBzdGlja3k6IF92bS5zY3JvbGxlZCAmJiAhX3ZtLnNob3dDb25maWcuc2hvd05ld1VzZXJGb3JtIH0sXG4gICAgICAgICAgYXR0cnM6IHsgaWQ6IFwiZ3JpZC1oZWFkZXJcIiB9XG4gICAgICAgIH0sXG4gICAgICAgIFtcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImF2YXRhclwiLCBhdHRyczogeyBpZDogXCJoZWFkZXJBdmF0YXJcIiB9IH0pLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJuYW1lXCIsIGF0dHJzOiB7IGlkOiBcImhlYWRlck5hbWVcIiB9IH0sIFtcbiAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlVzZXJuYW1lXCIpKSlcbiAgICAgICAgICBdKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFxuICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZGlzcGxheU5hbWVcIiwgYXR0cnM6IHsgaWQ6IFwiaGVhZGVyRGlzcGxheU5hbWVcIiB9IH0sXG4gICAgICAgICAgICBbX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiRnVsbCBuYW1lXCIpKSldXG4gICAgICAgICAgKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFxuICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwicGFzc3dvcmRcIiwgYXR0cnM6IHsgaWQ6IFwiaGVhZGVyUGFzc3dvcmRcIiB9IH0sXG4gICAgICAgICAgICBbX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiUGFzc3dvcmRcIikpKV1cbiAgICAgICAgICApLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXG4gICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJtYWlsQWRkcmVzc1wiLCBhdHRyczogeyBpZDogXCJoZWFkZXJBZGRyZXNzXCIgfSB9LFxuICAgICAgICAgICAgW192bS5fdihfdm0uX3MoX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIkVtYWlsXCIpKSldXG4gICAgICAgICAgKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiZ3JvdXBzXCIsIGF0dHJzOiB7IGlkOiBcImhlYWRlckdyb3Vwc1wiIH0gfSwgW1xuICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiR3JvdXBzXCIpKSlcbiAgICAgICAgICBdKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF92bS5zdWJBZG1pbnNHcm91cHMubGVuZ3RoID4gMFxuICAgICAgICAgICAgPyBfYyhcbiAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwic3ViYWRtaW5zXCIsIGF0dHJzOiB7IGlkOiBcImhlYWRlclN1YkFkbWluc1wiIH0gfSxcbiAgICAgICAgICAgICAgICBbX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiR3JvdXAgYWRtaW4gZm9yXCIpKSldXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInF1b3RhXCIsIGF0dHJzOiB7IGlkOiBcImhlYWRlclF1b3RhXCIgfSB9LCBbXG4gICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJRdW90YVwiKSkpXG4gICAgICAgICAgXSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfdm0uc2hvd0NvbmZpZy5zaG93U3RvcmFnZVBhdGhcbiAgICAgICAgICAgID8gX2MoXG4gICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImhlYWRlclN0b3JhZ2VMb2NhdGlvbiBzdG9yYWdlTG9jYXRpb25cIiB9LFxuICAgICAgICAgICAgICAgIFtfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJTdG9yYWdlIGxvY2F0aW9uXCIpKSldXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfdm0uc2hvd0NvbmZpZy5zaG93VXNlckJhY2tlbmRcbiAgICAgICAgICAgID8gX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJoZWFkZXJVc2VyQmFja2VuZCB1c2VyQmFja2VuZFwiIH0sIFtcbiAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS50KFwic2V0dGluZ3NcIiwgXCJVc2VyIGJhY2tlbmRcIikpKVxuICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF92bS5zaG93Q29uZmlnLnNob3dMYXN0TG9naW5cbiAgICAgICAgICAgID8gX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJoZWFkZXJMYXN0TG9naW4gbGFzdExvZ2luXCIgfSwgW1xuICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIkxhc3QgbG9naW5cIikpKVxuICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwidXNlckFjdGlvbnNcIiB9KVxuICAgICAgICBdXG4gICAgICApLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFxuICAgICAgICBcImZvcm1cIixcbiAgICAgICAge1xuICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogXCJzaG93XCIsXG4gICAgICAgICAgICAgIHJhd05hbWU6IFwidi1zaG93XCIsXG4gICAgICAgICAgICAgIHZhbHVlOiBfdm0uc2hvd0NvbmZpZy5zaG93TmV3VXNlckZvcm0sXG4gICAgICAgICAgICAgIGV4cHJlc3Npb246IFwic2hvd0NvbmZpZy5zaG93TmV3VXNlckZvcm1cIlxuICAgICAgICAgICAgfVxuICAgICAgICAgIF0sXG4gICAgICAgICAgc3RhdGljQ2xhc3M6IFwicm93XCIsXG4gICAgICAgICAgY2xhc3M6IHsgc3RpY2t5OiBfdm0uc2Nyb2xsZWQgJiYgX3ZtLnNob3dDb25maWcuc2hvd05ld1VzZXJGb3JtIH0sXG4gICAgICAgICAgYXR0cnM6IHsgaWQ6IFwibmV3LXVzZXJcIiwgZGlzYWJsZWQ6IF92bS5sb2FkaW5nIH0sXG4gICAgICAgICAgb246IHtcbiAgICAgICAgICAgIHN1Ym1pdDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgIHJldHVybiBfdm0uY3JlYXRlVXNlcigkZXZlbnQpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBbXG4gICAgICAgICAgX2MoXCJkaXZcIiwgeyBjbGFzczogX3ZtLmxvYWRpbmcgPyBcImljb24tbG9hZGluZy1zbWFsbFwiIDogXCJpY29uLWFkZFwiIH0pLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJuYW1lXCIgfSwgW1xuICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ubmV3VXNlci5pZCxcbiAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwibmV3VXNlci5pZFwiXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgIGlkOiBcIm5ld3VzZXJuYW1lXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogXCJ0ZXh0XCIsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IFwiXCIsXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS50KFwic2V0dGluZ3NcIiwgXCJVc2VyIG5hbWVcIiksXG4gICAgICAgICAgICAgICAgbmFtZTogXCJ1c2VybmFtZVwiLFxuICAgICAgICAgICAgICAgIGF1dG9jb21wbGV0ZTogXCJvZmZcIixcbiAgICAgICAgICAgICAgICBhdXRvY2FwaXRhbGl6ZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgYXV0b2NvcnJlY3Q6IFwib2ZmXCIsXG4gICAgICAgICAgICAgICAgcGF0dGVybjogXCJbYS16QS1aMC05IF9cXFxcLkBcXFxcLSddK1wiXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0ubmV3VXNlci5pZCB9LFxuICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgIGlmICgkZXZlbnQudGFyZ2V0LmNvbXBvc2luZykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5uZXdVc2VyLCBcImlkXCIsICRldmVudC50YXJnZXQudmFsdWUpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF0pLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJkaXNwbGF5TmFtZVwiIH0sIFtcbiAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLm5ld1VzZXIuZGlzcGxheU5hbWUsXG4gICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcIm5ld1VzZXIuZGlzcGxheU5hbWVcIlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICBpZDogXCJuZXdkaXNwbGF5bmFtZVwiLFxuICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0udChcInNldHRpbmdzXCIsIFwiRGlzcGxheSBuYW1lXCIpLFxuICAgICAgICAgICAgICAgIG5hbWU6IFwiZGlzcGxheW5hbWVcIixcbiAgICAgICAgICAgICAgICBhdXRvY29tcGxldGU6IFwib2ZmXCIsXG4gICAgICAgICAgICAgICAgYXV0b2NhcGl0YWxpemU6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIGF1dG9jb3JyZWN0OiBcIm9mZlwiXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0ubmV3VXNlci5kaXNwbGF5TmFtZSB9LFxuICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgIGlmICgkZXZlbnQudGFyZ2V0LmNvbXBvc2luZykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5uZXdVc2VyLCBcImRpc3BsYXlOYW1lXCIsICRldmVudC50YXJnZXQudmFsdWUpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF0pLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJwYXNzd29yZFwiIH0sIFtcbiAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLm5ld1VzZXIucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcIm5ld1VzZXIucGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICBpZDogXCJuZXd1c2VycGFzc3dvcmRcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBcInBhc3N3b3JkXCIsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IF92bS5uZXdVc2VyLm1haWxBZGRyZXNzID09PSBcIlwiLFxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0udChcInNldHRpbmdzXCIsIFwiUGFzc3dvcmRcIiksXG4gICAgICAgICAgICAgICAgbmFtZTogXCJwYXNzd29yZFwiLFxuICAgICAgICAgICAgICAgIGF1dG9jb21wbGV0ZTogXCJuZXctcGFzc3dvcmRcIixcbiAgICAgICAgICAgICAgICBhdXRvY2FwaXRhbGl6ZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgYXV0b2NvcnJlY3Q6IFwib2ZmXCIsXG4gICAgICAgICAgICAgICAgbWlubGVuZ3RoOiBfdm0ubWluUGFzc3dvcmRMZW5ndGhcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5uZXdVc2VyLnBhc3N3b3JkIH0sXG4gICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLm5ld1VzZXIsIFwicGFzc3dvcmRcIiwgJGV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcIm1haWxBZGRyZXNzXCIgfSwgW1xuICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ubmV3VXNlci5tYWlsQWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwibmV3VXNlci5tYWlsQWRkcmVzc1wiXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgIGlkOiBcIm5ld2VtYWlsXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogXCJlbWFpbFwiLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBfdm0ubmV3VXNlci5wYXNzd29yZCA9PT0gXCJcIixcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIk1haWwgYWRkcmVzc1wiKSxcbiAgICAgICAgICAgICAgICBuYW1lOiBcImVtYWlsXCIsXG4gICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlOiBcIm9mZlwiLFxuICAgICAgICAgICAgICAgIGF1dG9jYXBpdGFsaXplOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICBhdXRvY29ycmVjdDogXCJvZmZcIlxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLm5ld1VzZXIubWFpbEFkZHJlc3MgfSxcbiAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBfdm0uJHNldChfdm0ubmV3VXNlciwgXCJtYWlsQWRkcmVzc1wiLCAkZXZlbnQudGFyZ2V0LnZhbHVlKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFxuICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZ3JvdXBzXCIgfSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgXCJtdWx0aXNlbGVjdFwiLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcIm11bHRpc2VsZWN0LXZ1ZVwiLFxuICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogX3ZtLmdyb3VwcyxcbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS50KFwic2V0dGluZ3NcIiwgXCJBZGQgdXNlciBpbiBncm91cFwiKSxcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6IFwibmFtZVwiLFxuICAgICAgICAgICAgICAgICAgICBcInRyYWNrLWJ5XCI6IFwiaWRcIixcbiAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIFwiY2xvc2Utb24tc2VsZWN0XCI6IGZhbHNlXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5uZXdVc2VyLmdyb3VwcyxcbiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5uZXdVc2VyLCBcImdyb3Vwc1wiLCAkJHYpXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwibmV3VXNlci5ncm91cHNcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgIFwic3BhblwiLFxuICAgICAgICAgICAgICAgICAgICB7IGF0dHJzOiB7IHNsb3Q6IFwibm9SZXN1bHRcIiB9LCBzbG90OiBcIm5vUmVzdWx0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgW192bS5fdihfdm0uX3MoX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIk5vIHJlc3VsdFwiKSkpXVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIDFcbiAgICAgICAgICApLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX3ZtLnN1YkFkbWluc0dyb3Vwcy5sZW5ndGggPiAwXG4gICAgICAgICAgICA/IF9jKFxuICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJzdWJhZG1pbnNcIiB9LFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICBcIm11bHRpc2VsZWN0XCIsXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtdWx0aXNlbGVjdC12dWVcIixcbiAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogX3ZtLnN1YkFkbWluc0dyb3VwcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0udChcInNldHRpbmdzXCIsIFwiU2V0IHVzZXIgYXMgYWRtaW4gZm9yXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IFwibmFtZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJ0cmFjay1ieVwiOiBcImlkXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiY2xvc2Utb24tc2VsZWN0XCI6IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5uZXdVc2VyLnN1YkFkbWluc0dyb3VwcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLm5ld1VzZXIsIFwic3ViQWRtaW5zR3JvdXBzXCIsICQkdilcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcIm5ld1VzZXIuc3ViQWRtaW5zR3JvdXBzXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgIFwic3BhblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgeyBhdHRyczogeyBzbG90OiBcIm5vUmVzdWx0XCIgfSwgc2xvdDogXCJub1Jlc3VsdFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBbX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiTm8gcmVzdWx0XCIpKSldXG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcbiAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcInF1b3RhXCIgfSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgX2MoXCJtdWx0aXNlbGVjdFwiLCB7XG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibXVsdGlzZWxlY3QtdnVlXCIsXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IF92bS5xdW90YU9wdGlvbnMsXG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLnQoXCJzZXR0aW5nc1wiLCBcIlNlbGVjdCB1c2VyIHF1b3RhXCIpLFxuICAgICAgICAgICAgICAgICAgbGFiZWw6IFwibGFiZWxcIixcbiAgICAgICAgICAgICAgICAgIFwidHJhY2stYnlcIjogXCJpZFwiLFxuICAgICAgICAgICAgICAgICAgYWxsb3dFbXB0eTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICB0YWdnYWJsZTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgb246IHsgdGFnOiBfdm0udmFsaWRhdGVRdW90YSB9LFxuICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLm5ld1VzZXIucXVvdGEsXG4gICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5uZXdVc2VyLCBcInF1b3RhXCIsICQkdilcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcIm5ld1VzZXIucXVvdGFcIlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAxXG4gICAgICAgICAgKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF92bS5zaG93Q29uZmlnLnNob3dTdG9yYWdlUGF0aFxuICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInN0b3JhZ2VMb2NhdGlvblwiIH0pXG4gICAgICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX3ZtLnNob3dDb25maWcuc2hvd1VzZXJCYWNrZW5kXG4gICAgICAgICAgICA/IF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwidXNlckJhY2tlbmRcIiB9KVxuICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF92bS5zaG93Q29uZmlnLnNob3dMYXN0TG9naW5cbiAgICAgICAgICAgID8gX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJsYXN0TG9naW5cIiB9KVxuICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwidXNlckFjdGlvbnNcIiB9LCBbXG4gICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiYnV0dG9uIHByaW1hcnkgaWNvbi1jaGVja21hcmstd2hpdGUgaGFzLXRvb2x0aXBcIixcbiAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICB0eXBlOiBcInN1Ym1pdFwiLFxuICAgICAgICAgICAgICAgIGlkOiBcIm5ld3N1Ym1pdFwiLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBcIlwiLFxuICAgICAgICAgICAgICAgIHRpdGxlOiBfdm0udChcInNldHRpbmdzXCIsIFwiQWRkIGEgbmV3IHVzZXJcIilcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImJ1dHRvbiBpY29uLWNsb3NlIGhhcy10b29sdGlwXCIsXG4gICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgdHlwZTogXCJyZXNldFwiLFxuICAgICAgICAgICAgICAgIGlkOiBcIm5ld3Jlc2V0XCIsXG4gICAgICAgICAgICAgICAgdmFsdWU6IFwiXCIsXG4gICAgICAgICAgICAgICAgdGl0bGU6IF92bS50KFwic2V0dGluZ3NcIiwgXCJDYW5jZWwgYW5kIHJlc2V0IHRoZSBmb3JtXCIpXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIG9uOiB7IGNsaWNrOiBfdm0ucmVzZXRGb3JtIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXSlcbiAgICAgICAgXVxuICAgICAgKSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfdm0uX2woX3ZtLmZpbHRlcmVkVXNlcnMsIGZ1bmN0aW9uKHVzZXIsIGtleSkge1xuICAgICAgICByZXR1cm4gX2MoXCJ1c2VyLXJvd1wiLCB7XG4gICAgICAgICAga2V5OiBrZXksXG4gICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgIHVzZXI6IHVzZXIsXG4gICAgICAgICAgICBzZXR0aW5nczogX3ZtLnNldHRpbmdzLFxuICAgICAgICAgICAgc2hvd0NvbmZpZzogX3ZtLnNob3dDb25maWcsXG4gICAgICAgICAgICBncm91cHM6IF92bS5ncm91cHMsXG4gICAgICAgICAgICBzdWJBZG1pbnNHcm91cHM6IF92bS5zdWJBZG1pbnNHcm91cHMsXG4gICAgICAgICAgICBxdW90YU9wdGlvbnM6IF92bS5xdW90YU9wdGlvbnNcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcbiAgICAgICAgXCJpbmZpbml0ZS1sb2FkaW5nXCIsXG4gICAgICAgIHsgcmVmOiBcImluZmluaXRlTG9hZGluZ1wiLCBvbjogeyBpbmZpbml0ZTogX3ZtLmluZmluaXRlSGFuZGxlciB9IH0sXG4gICAgICAgIFtcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IGF0dHJzOiB7IHNsb3Q6IFwic3Bpbm5lclwiIH0sIHNsb3Q6IFwic3Bpbm5lclwiIH0sIFtcbiAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwidXNlcnMtaWNvbi1sb2FkaW5nIGljb24tbG9hZGluZ1wiIH0pXG4gICAgICAgICAgXSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IGF0dHJzOiB7IHNsb3Q6IFwibm8tbW9yZVwiIH0sIHNsb3Q6IFwibm8tbW9yZVwiIH0sIFtcbiAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwidXNlcnMtbGlzdC1lbmRcIiB9LCBbXG4gICAgICAgICAgICAgIF92bS5fdihcIuKAlCBcIiArIF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwibm8gbW9yZSByZXN1bHRzXCIpKSArIFwiIOKAlFwiKVxuICAgICAgICAgICAgXSlcbiAgICAgICAgICBdKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFwiZGl2XCIsIHsgYXR0cnM6IHsgc2xvdDogXCJuby1yZXN1bHRzXCIgfSwgc2xvdDogXCJuby1yZXN1bHRzXCIgfSwgW1xuICAgICAgICAgICAgX2MoXCJkaXZcIiwgeyBhdHRyczogeyBpZDogXCJlbXB0eWNvbnRlbnRcIiB9IH0sIFtcbiAgICAgICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJpY29uLWNvbnRhY3RzLWRhcmtcIiB9KSxcbiAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgX2MoXCJoMlwiLCBbX3ZtLl92KF92bS5fcyhfdm0udChcInNldHRpbmdzXCIsIFwiTm8gdXNlcnMgaW4gaGVyZVwiKSkpXSlcbiAgICAgICAgICAgIF0pXG4gICAgICAgICAgXSlcbiAgICAgICAgXVxuICAgICAgKVxuICAgIF0sXG4gICAgMlxuICApXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi00MDc0NTI5OVwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LTQwNzQ1Mjk5XCIsXCJoYXNTY29wZWRcIjpmYWxzZSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvdXNlckxpc3QudnVlXG4vLyBtb2R1bGUgaWQgPSA0OFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///48\n"); /***/ }), /* 49 */ @@ -410,7 +410,7 @@ eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(52);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__users__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__settings__ = __webpack_require__(73);\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* default */]);\n\nvar debug = process.env.NODE_ENV !== 'production';\n\nvar mutations = {\n\tAPI_FAILURE: function API_FAILURE(state, error) {\n\t\tconsole.log(state, error);\n\t}\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (new __WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* default */].Store({\n\tmodules: {\n\t\tusers: __WEBPACK_IMPORTED_MODULE_2__users__[\"a\" /* default */],\n\t\tsettings: __WEBPACK_IMPORTED_MODULE_3__settings__[\"a\" /* default */]\n\t},\n\tstrict: debug,\n\n\tmutations: mutations\n}));\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvaW5kZXguanM/MjFjOSJdLCJuYW1lcyI6WyJWdWUiLCJ1c2UiLCJkZWJ1ZyIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsIm11dGF0aW9ucyIsIkFQSV9GQUlMVVJFIiwic3RhdGUiLCJlcnJvciIsImNvbnNvbGUiLCJsb2ciLCJWdWV4IiwiU3RvcmUiLCJtb2R1bGVzIiwidXNlcnMiLCJzZXR0aW5ncyIsInN0cmljdCJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLG9EQUFBQSxDQUFJQyxHQUFKLENBQVEscURBQVI7O0FBRUEsSUFBTUMsUUFBUUMsUUFBUUMsR0FBUixDQUFZQyxRQUFaLEtBQXlCLFlBQXZDOztBQUVBLElBQU1DLFlBQVk7QUFDakJDLFlBRGlCLHVCQUNMQyxLQURLLEVBQ0VDLEtBREYsRUFDUztBQUN6QkMsVUFBUUMsR0FBUixDQUFZSCxLQUFaLEVBQW1CQyxLQUFuQjtBQUNBO0FBSGdCLENBQWxCOztBQU1BLHlEQUFlLElBQUkscURBQUFHLENBQUtDLEtBQVQsQ0FBZTtBQUM3QkMsVUFBUztBQUNSQyxTQUFBLHVEQURRO0FBRVJDLFlBQUEsMERBQUFBO0FBRlEsRUFEb0I7QUFLN0JDLFNBQVFmLEtBTHFCOztBQU83Qkk7QUFQNkIsQ0FBZixDQUFmLEUiLCJmaWxlIjoiNTEuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcbmltcG9ydCBWdWV4IGZyb20gJ3Z1ZXgnXG5pbXBvcnQgdXNlcnMgZnJvbSAnLi91c2VycydcbmltcG9ydCBzZXR0aW5ncyBmcm9tICcuL3NldHRpbmdzJ1xuXG5WdWUudXNlKFZ1ZXgpXG5cbmNvbnN0IGRlYnVnID0gcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJ1xuXG5jb25zdCBtdXRhdGlvbnMgPSB7XG5cdEFQSV9GQUlMVVJFKHN0YXRlLCBlcnJvcikge1xuXHRcdGNvbnNvbGUubG9nKHN0YXRlLCBlcnJvcik7XG5cdH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgbmV3IFZ1ZXguU3RvcmUoe1xuXHRtb2R1bGVzOiB7XG5cdFx0dXNlcnMsXG5cdFx0c2V0dGluZ3Ncblx0fSxcblx0c3RyaWN0OiBkZWJ1ZyxcblxuXHRtdXRhdGlvbnNcbn0pXG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9zcmMvc3RvcmUvaW5kZXguanMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///51\n"); +eval("/* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(52);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__users__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__settings__ = __webpack_require__(73);\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* default */]);\n\nvar debug = process.env.NODE_ENV !== 'production';\n\nvar mutations = {\n\tAPI_FAILURE: function API_FAILURE(state, error) {\n\t\tconsole.log(state, error);\n\t}\n};\n\nvar getters = {\n\tgetRoute: function getRoute(state) {\n\t\treturn state.route;\n\t}\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (new __WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* default */].Store({\n\tmodules: {\n\t\tusers: __WEBPACK_IMPORTED_MODULE_2__users__[\"a\" /* default */],\n\t\tsettings: __WEBPACK_IMPORTED_MODULE_3__settings__[\"a\" /* default */]\n\t},\n\tstrict: debug,\n\n\tmutations: mutations,\n\tgetters: getters\n}));\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1)))\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvaW5kZXguanM/MjFjOSJdLCJuYW1lcyI6WyJWdWUiLCJ1c2UiLCJkZWJ1ZyIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsIm11dGF0aW9ucyIsIkFQSV9GQUlMVVJFIiwic3RhdGUiLCJlcnJvciIsImNvbnNvbGUiLCJsb2ciLCJnZXR0ZXJzIiwiZ2V0Um91dGUiLCJyb3V0ZSIsIlZ1ZXgiLCJTdG9yZSIsIm1vZHVsZXMiLCJ1c2VycyIsInNldHRpbmdzIiwic3RyaWN0Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsb0RBQUFBLENBQUlDLEdBQUosQ0FBUSxxREFBUjs7QUFFQSxJQUFNQyxRQUFRQyxRQUFRQyxHQUFSLENBQVlDLFFBQVosS0FBeUIsWUFBdkM7O0FBRUEsSUFBTUMsWUFBWTtBQUNqQkMsWUFEaUIsdUJBQ0xDLEtBREssRUFDRUMsS0FERixFQUNTO0FBQ3pCQyxVQUFRQyxHQUFSLENBQVlILEtBQVosRUFBbUJDLEtBQW5CO0FBQ0E7QUFIZ0IsQ0FBbEI7O0FBTUEsSUFBTUcsVUFBVTtBQUNaQyxTQURZLG9CQUNITCxLQURHLEVBQ0k7QUFDWixTQUFPQSxNQUFNTSxLQUFiO0FBQ047QUFIYyxDQUFoQjs7QUFNQSx5REFBZSxJQUFJLHFEQUFBQyxDQUFLQyxLQUFULENBQWU7QUFDN0JDLFVBQVM7QUFDUkMsU0FBQSx1REFEUTtBQUVSQyxZQUFBLDBEQUFBQTtBQUZRLEVBRG9CO0FBSzdCQyxTQUFRbEIsS0FMcUI7O0FBTzdCSSxxQkFQNkI7QUFRN0JNO0FBUjZCLENBQWYsQ0FBZixFIiwiZmlsZSI6IjUxLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFZ1ZSBmcm9tICd2dWUnO1xuaW1wb3J0IFZ1ZXggZnJvbSAndnVleCc7XG5pbXBvcnQgdXNlcnMgZnJvbSAnLi91c2Vycyc7XG5pbXBvcnQgc2V0dGluZ3MgZnJvbSAnLi9zZXR0aW5ncyc7XG5cblZ1ZS51c2UoVnVleClcblxuY29uc3QgZGVidWcgPSBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nO1xuXG5jb25zdCBtdXRhdGlvbnMgPSB7XG5cdEFQSV9GQUlMVVJFKHN0YXRlLCBlcnJvcikge1xuXHRcdGNvbnNvbGUubG9nKHN0YXRlLCBlcnJvcik7XG5cdH1cbn07XG5cbmNvbnN0IGdldHRlcnMgPSB7XG4gICAgZ2V0Um91dGUoc3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIHN0YXRlLnJvdXRlO1xuXHR9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgVnVleC5TdG9yZSh7XG5cdG1vZHVsZXM6IHtcblx0XHR1c2Vycyxcblx0XHRzZXR0aW5nc1xuXHR9LFxuXHRzdHJpY3Q6IGRlYnVnLFxuXG5cdG11dGF0aW9ucyxcblx0Z2V0dGVyc1xufSk7XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9zcmMvc3RvcmUvaW5kZXguanMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///51\n"); /***/ }), /* 52 */ @@ -424,7 +424,7 @@ eval("/* WEBPACK VAR INJECTION */(function(process) {/* unused harmony export St /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(17);\n\n\nvar orderGroups = function orderGroups(groups, orderBy) {\n /* const SORT_USERCOUNT = 1;\n * const SORT_GROUPNAME = 2;\n * https://github.com/nextcloud/server/blob/208e38e84e1a07a49699aa90dc5b7272d24489f0/lib/private/Group/MetaData.php#L34\n */\n if (orderBy === 1) {\n return groups.sort(function (a, b) {\n return a.usercount < b.usercount;\n });\n } else {\n return groups.sort(function (a, b) {\n return a.name.localeCompare(b.name);\n });\n }\n};\n\nvar state = {\n users: [],\n groups: [],\n orderBy: 1,\n minPasswordLength: 0,\n usersOffset: 0,\n usersLimit: 25\n};\n\nvar mutations = {\n appendUsers: function appendUsers(state, usersObj) {\n // convert obj to array\n var users = state.users.concat(Object.keys(usersObj).map(function (userid) {\n return usersObj[userid];\n }));\n state.usersOffset += state.usersLimit;\n state.users = users;\n },\n setPasswordPolicyMinLength: function setPasswordPolicyMinLength(state, length) {\n state.minPasswordLength = length !== '' ? length : 0;\n },\n initGroups: function initGroups(state, _ref) {\n var groups = _ref.groups,\n orderBy = _ref.orderBy;\n\n state.groups = groups;\n state.orderBy = orderBy;\n state.groups = orderGroups(state.groups, state.orderBy);\n },\n addGroup: function addGroup(state, groupid) {\n try {\n state.groups.push({\n id: groupid,\n name: groupid,\n usercount: 0 // user will be added after the creation\n });\n state.groups = orderGroups(state.groups, state.orderBy);\n } catch (e) {\n console.log('Can\\'t create group', e);\n }\n },\n addUserGroup: function addUserGroup(state, _ref2) {\n var userid = _ref2.userid,\n gid = _ref2.gid;\n\n // this should not be needed as it would means the user contains a group\n // the server database doesn't have.\n var group = state.groups.find(function (groupSearch) {\n return groupSearch.id == gid;\n });\n if (group) {\n group.usercount++; // increase count\n }\n var groups = state.users.find(function (user) {\n return user.id == userid;\n }).groups;\n groups.push(gid);\n state.groups = orderGroups(state.groups, state.orderBy);\n },\n removeUserGroup: function removeUserGroup(state, _ref3) {\n var userid = _ref3.userid,\n gid = _ref3.gid;\n\n // this should not be needed as it would means the user contains a group\n // the server database doesn't have.\n var group = state.groups.find(function (groupSearch) {\n return groupSearch.id == gid;\n });\n if (group) {\n group.usercount--; // lower count\n }\n var groups = state.users.find(function (user) {\n return user.id == userid;\n }).groups;\n groups.splice(groups.indexOf(gid), 1);\n state.groups = orderGroups(state.groups, state.orderBy);\n },\n addUserSubAdmin: function addUserSubAdmin(state, _ref4) {\n var userid = _ref4.userid,\n gid = _ref4.gid;\n\n var groups = state.users.find(function (user) {\n return user.id == userid;\n }).subadmin;\n groups.push(gid);\n },\n removeUserSubAdmin: function removeUserSubAdmin(state, _ref5) {\n var userid = _ref5.userid,\n gid = _ref5.gid;\n\n var groups = state.users.find(function (user) {\n return user.id == userid;\n }).subadmin;\n groups.splice(groups.indexOf(gid), 1);\n },\n deleteUser: function deleteUser(state, userid) {\n var userIndex = state.users.findIndex(function (user) {\n return user.id == userid;\n });\n state.users.splice(userIndex, 1);\n },\n addUserData: function addUserData(state, response) {\n state.users.push(response.data.ocs.data);\n },\n enableDisableUser: function enableDisableUser(state, _ref6) {\n var userid = _ref6.userid,\n enabled = _ref6.enabled;\n\n state.users.find(function (user) {\n return user.id == userid;\n }).enabled = enabled;\n state.groups.find(function (group) {\n return group.id == '_disabled';\n }).usercount += enabled ? -1 : 1;\n },\n setUserData: function setUserData(state, _ref7) {\n var userid = _ref7.userid,\n key = _ref7.key,\n value = _ref7.value;\n\n if (key === 'quota') {\n var humanValue = OC.Util.computerFileSize(value);\n state.users.find(function (user) {\n return user.id == userid;\n })[key][key] = humanValue ? humanValue : value;\n } else {\n state.users.find(function (user) {\n return user.id == userid;\n })[key] = value;\n }\n }\n};\n\nvar getters = {\n getUsers: function getUsers(state) {\n return state.users;\n },\n getGroups: function getGroups(state) {\n return state.groups;\n },\n getPasswordPolicyMinLength: function getPasswordPolicyMinLength(state) {\n return state.minPasswordLength;\n },\n getUsersOffset: function getUsersOffset(state) {\n return state.usersOffset;\n },\n getUsersLimit: function getUsersLimit(state) {\n return state.usersLimit;\n }\n};\n\nvar actions = {\n /**\n * Get all users with full details\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @returns {Promise}\n */\n getUsers: function getUsers(context, _ref8) {\n var offset = _ref8.offset,\n limit = _ref8.limit,\n search = _ref8.search;\n\n search = typeof search === 'string' ? search : '';\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n if (Object.keys(response.data.ocs.data.users).length > 0) {\n context.commit('appendUsers', response.data.ocs.data.users);\n return true;\n }\n return false;\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n },\n\n\n /**\n * Get all users with full details\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @returns {Promise}\n */\n getUsersFromList: function getUsersFromList(context, _ref9) {\n var offset = _ref9.offset,\n limit = _ref9.limit,\n search = _ref9.search;\n\n search = typeof search === 'string' ? search : '';\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n if (Object.keys(response.data.ocs.data.users).length > 0) {\n context.commit('appendUsers', response.data.ocs.data.users);\n return true;\n }\n return false;\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n },\n\n\n /**\n * Get all users with full details from a groupid\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @returns {Promise}\n */\n getUsersFromGroup: function getUsersFromGroup(context, _ref10) {\n var groupid = _ref10.groupid,\n offset = _ref10.offset,\n limit = _ref10.limit;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/' + groupid + '/details?offset=' + offset + '&limit=' + limit, 2)).then(function (response) {\n return context.commit('getUsersFromList', response.data.ocs.data.users);\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n },\n getPasswordPolicyMinLength: function getPasswordPolicyMinLength(context) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('apps/provisioning_api/api/v1/config/apps/password_policy/minLength', 2)).then(function (response) {\n return context.commit('setPasswordPolicyMinLength', response.data.ocs.data.data);\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n },\n\n\n /**\n * Add group\n * \n * @param {Object} context\n * @param {string} gid Group id\n * @returns {Promise}\n */\n addGroup: function addGroup(context, gid) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/groups', 2), { groupid: gid }).then(function (response) {\n return context.commit('addGroup', gid);\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n });\n },\n\n\n /**\n * Add group\n * \n * @param {Object} context\n * @param {string} gid Group id\n * @returns {Promise}\n */\n removeGroup: function removeGroup(context, gid) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/groups', 2), { groupid: gid }).then(function (response) {\n return context.commit('removeGroup', gid);\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n });\n },\n\n\n /**\n * Add user to group\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n addUserGroup: function addUserGroup(context, _ref11) {\n var userid = _ref11.userid,\n gid = _ref11.gid;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users/' + userid + '/groups', 2), { groupid: gid }).then(function (response) {\n return context.commit('addUserGroup', { userid: userid, gid: gid });\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n });\n },\n\n\n /**\n * Remove user from group\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n removeUserGroup: function removeUserGroup(context, _ref12) {\n var userid = _ref12.userid,\n gid = _ref12.gid;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid + '/groups', 2), { groupid: gid }).then(function (response) {\n return context.commit('removeUserGroup', { userid: userid, gid: gid });\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /**\n * Add user to group admin\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n addUserSubAdmin: function addUserSubAdmin(context, _ref13) {\n var userid = _ref13.userid,\n gid = _ref13.gid;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users/' + userid + '/subadmins', 2), { groupid: gid }).then(function (response) {\n return context.commit('addUserSubAdmin', { userid: userid, gid: gid });\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n });\n },\n\n\n /**\n * Remove user from group admin\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n removeUserSubAdmin: function removeUserSubAdmin(context, _ref14) {\n var userid = _ref14.userid,\n gid = _ref14.gid;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid + '/subadmins', 2), { groupid: gid }).then(function (response) {\n return context.commit('removeUserSubAdmin', { userid: userid, gid: gid });\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /**\n * Delete a user\n * \n * @param {Object} context\n * @param {string} userid User id \n * @returns {Promise}\n */\n deleteUser: function deleteUser(context, userid) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid, 2)).then(function (response) {\n return context.commit('deleteUser', userid);\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /**\n * Add a user\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.password User password \n * @param {string} options.email User email\n * @returns {Promise}\n */\n addUser: function addUser(_ref15, _ref16) {\n var context = _ref15.context,\n dispatch = _ref15.dispatch;\n var userid = _ref16.userid,\n password = _ref16.password,\n email = _ref16.email,\n groups = _ref16.groups;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users', 2), { userid: userid, password: password, email: email, groups: groups }).then(function (response) {\n return dispatch('addUserData', userid);\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /**\n * Get user data and commit addition\n * \n * @param {Object} context\n * @param {string} userid User id \n * @returns {Promise}\n */\n addUserData: function addUserData(context, userid) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/' + userid, 2)).then(function (response) {\n return context.commit('addUserData', response);\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /** Enable or disable user \n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {boolean} options.enabled User enablement status\n * @returns {Promise}\n */\n enableDisableUser: function enableDisableUser(context, _ref17) {\n var userid = _ref17.userid,\n _ref17$enabled = _ref17.enabled,\n enabled = _ref17$enabled === undefined ? true : _ref17$enabled;\n\n var userStatus = enabled ? 'enable' : 'disable';\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].put(OC.linkToOCS('cloud/users/' + userid + '/' + userStatus, 2)).then(function (response) {\n return context.commit('enableDisableUser', { userid: userid, enabled: enabled });\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /**\n * Edit user data\n * \n * @param {Object} context \n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.key User field to edit\n * @param {string} options.value Value of the change\n * @returns {Promise}\n */\n setUserData: function setUserData(context, _ref18) {\n var userid = _ref18.userid,\n key = _ref18.key,\n value = _ref18.value;\n\n if (['email', 'quota', 'displayname', 'password'].indexOf(key) !== -1) {\n // We allow empty email or displayname\n if (typeof value === 'string' && (['quota', 'password'].indexOf(key) !== -1 && value.length > 0 || ['email', 'displayname'].indexOf(key) !== -1)) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].put(OC.linkToOCS('cloud/users/' + userid, 2), { key: key, value: value }).then(function (response) {\n return context.commit('setUserData', { userid: userid, key: key, value: value });\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n }\n }\n return Promise.reject(new Error('Invalid request data'));\n }\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({ state: state, mutations: mutations, getters: getters, actions: actions });\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvdXNlcnMuanM/MjhjMiJdLCJuYW1lcyI6WyJvcmRlckdyb3VwcyIsImdyb3VwcyIsIm9yZGVyQnkiLCJzb3J0IiwiYSIsImIiLCJ1c2VyY291bnQiLCJuYW1lIiwibG9jYWxlQ29tcGFyZSIsInN0YXRlIiwidXNlcnMiLCJtaW5QYXNzd29yZExlbmd0aCIsInVzZXJzT2Zmc2V0IiwidXNlcnNMaW1pdCIsIm11dGF0aW9ucyIsImFwcGVuZFVzZXJzIiwidXNlcnNPYmoiLCJjb25jYXQiLCJPYmplY3QiLCJrZXlzIiwibWFwIiwidXNlcmlkIiwic2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgiLCJsZW5ndGgiLCJpbml0R3JvdXBzIiwiYWRkR3JvdXAiLCJncm91cGlkIiwicHVzaCIsImlkIiwiZSIsImNvbnNvbGUiLCJsb2ciLCJhZGRVc2VyR3JvdXAiLCJnaWQiLCJncm91cCIsImZpbmQiLCJncm91cFNlYXJjaCIsInVzZXIiLCJyZW1vdmVVc2VyR3JvdXAiLCJzcGxpY2UiLCJpbmRleE9mIiwiYWRkVXNlclN1YkFkbWluIiwic3ViYWRtaW4iLCJyZW1vdmVVc2VyU3ViQWRtaW4iLCJkZWxldGVVc2VyIiwidXNlckluZGV4IiwiZmluZEluZGV4IiwiYWRkVXNlckRhdGEiLCJyZXNwb25zZSIsImRhdGEiLCJvY3MiLCJlbmFibGVEaXNhYmxlVXNlciIsImVuYWJsZWQiLCJzZXRVc2VyRGF0YSIsImtleSIsInZhbHVlIiwiaHVtYW5WYWx1ZSIsIk9DIiwiVXRpbCIsImNvbXB1dGVyRmlsZVNpemUiLCJnZXR0ZXJzIiwiZ2V0VXNlcnMiLCJnZXRHcm91cHMiLCJnZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aCIsImdldFVzZXJzT2Zmc2V0IiwiZ2V0VXNlcnNMaW1pdCIsImFjdGlvbnMiLCJjb250ZXh0Iiwib2Zmc2V0IiwibGltaXQiLCJzZWFyY2giLCJhcGkiLCJnZXQiLCJsaW5rVG9PQ1MiLCJ0aGVuIiwiY29tbWl0IiwiY2F0Y2giLCJlcnJvciIsImdldFVzZXJzRnJvbUxpc3QiLCJnZXRVc2Vyc0Zyb21Hcm91cCIsInJlcXVpcmVBZG1pbiIsInBvc3QiLCJyZW1vdmVHcm91cCIsImRlbGV0ZSIsImFkZFVzZXIiLCJkaXNwYXRjaCIsInBhc3N3b3JkIiwiZW1haWwiLCJ1c2VyU3RhdHVzIiwicHV0IiwiUHJvbWlzZSIsInJlamVjdCIsIkVycm9yIl0sIm1hcHBpbmdzIjoiO0FBQUE7O0FBRUEsSUFBTUEsY0FBYyxTQUFkQSxXQUFjLENBQVNDLE1BQVQsRUFBaUJDLE9BQWpCLEVBQTBCO0FBQzFDOzs7O0FBSUEsUUFBSUEsWUFBWSxDQUFoQixFQUFtQjtBQUNmLGVBQU9ELE9BQU9FLElBQVAsQ0FBWSxVQUFDQyxDQUFELEVBQUlDLENBQUo7QUFBQSxtQkFBVUQsRUFBRUUsU0FBRixHQUFjRCxFQUFFQyxTQUExQjtBQUFBLFNBQVosQ0FBUDtBQUNILEtBRkQsTUFFTztBQUNILGVBQU9MLE9BQU9FLElBQVAsQ0FBWSxVQUFDQyxDQUFELEVBQUlDLENBQUo7QUFBQSxtQkFBVUQsRUFBRUcsSUFBRixDQUFPQyxhQUFQLENBQXFCSCxFQUFFRSxJQUF2QixDQUFWO0FBQUEsU0FBWixDQUFQO0FBQ0g7QUFDSixDQVZEOztBQVlBLElBQU1FLFFBQVE7QUFDVkMsV0FBTyxFQURHO0FBRVZULFlBQVEsRUFGRTtBQUdWQyxhQUFTLENBSEM7QUFJVlMsdUJBQW1CLENBSlQ7QUFLVkMsaUJBQWEsQ0FMSDtBQU1WQyxnQkFBWTtBQU5GLENBQWQ7O0FBU0EsSUFBTUMsWUFBWTtBQUNkQyxlQURjLHVCQUNGTixLQURFLEVBQ0tPLFFBREwsRUFDZTtBQUN6QjtBQUNBLFlBQUlOLFFBQVFELE1BQU1DLEtBQU4sQ0FBWU8sTUFBWixDQUFtQkMsT0FBT0MsSUFBUCxDQUFZSCxRQUFaLEVBQXNCSSxHQUF0QixDQUEwQjtBQUFBLG1CQUFVSixTQUFTSyxNQUFULENBQVY7QUFBQSxTQUExQixDQUFuQixDQUFaO0FBQ0FaLGNBQU1HLFdBQU4sSUFB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RCxFQUFFaUMsS0FBS0EsR0FBUCxFQUFZQyxPQUFPQSxLQUFuQixFQUFsRCxFQUNGbUIsSUFERSxDQUNHLFVBQUMxQixRQUFEO0FBQUEsK0JBQWNtQixRQUFRUSxNQUFSLENBQWUsYUFBZixFQUE4QixFQUFFdEQsY0FBRixFQUFVaUMsUUFBVixFQUFlQyxZQUFmLEVBQTlCLENBQWQ7QUFBQSxxQkFESCxFQUVGcUIsS0FGRSxDQUVJLFVBQUNDLEtBQUQ7QUFBQSwrQkFBV1YsUUFBUVEsTUFBUixDQUFlLGFBQWYsRUFBOEIsRUFBRXRELGNBQUYsRUFBVXdELFlBQVYsRUFBOUIsQ0FBWDtBQUFBLHFCQUZKLENBQVA7QUFHSCxpQkFKTSxDQUFQO0FBS0g7QUFDSjtBQUNELGVBQU9hLFFBQVFDLE1BQVIsQ0FBZSxJQUFJQyxLQUFKLENBQVUsc0JBQVYsQ0FBZixDQUFQO0FBQ0g7QUFqUVcsQ0FBaEI7O0FBb1FBLHlEQUFlLEVBQUVuRixZQUFGLEVBQVNLLG9CQUFULEVBQW9COEMsZ0JBQXBCLEVBQTZCTSxnQkFBN0IsRUFBZiIsImZpbGUiOiI1My5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhcGkgZnJvbSAnLi9hcGknO1xuXG5jb25zdCBvcmRlckdyb3VwcyA9IGZ1bmN0aW9uKGdyb3Vwcywgb3JkZXJCeSkge1xuICAgIC8qIGNvbnN0IFNPUlRfVVNFUkNPVU5UID0gMTtcbiAgICAgKiBjb25zdCBTT1JUX0dST1VQTkFNRSA9IDI7XG4gICAgICogaHR0cHM6Ly9naXRodWIuY29tL25leHRjbG91ZC9zZXJ2ZXIvYmxvYi8yMDhlMzhlODRlMWEwN2E0OTY5OWFhOTBkYzViNzI3MmQyNDQ4OWYwL2xpYi9wcml2YXRlL0dyb3VwL01ldGFEYXRhLnBocCNMMzRcbiAgICAgKi9cbiAgICBpZiAob3JkZXJCeSA9PT0gMSkge1xuICAgICAgICByZXR1cm4gZ3JvdXBzLnNvcnQoKGEsIGIpID0+IGEudXNlcmNvdW50IDwgYi51c2VyY291bnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBncm91cHMuc29ydCgoYSwgYikgPT4gYS5uYW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKSk7XG4gICAgfVxufVxuXG5jb25zdCBzdGF0ZSA9IHtcbiAgICB1c2VyczogW10sXG4gICAgZ3JvdXBzOiBbXSxcbiAgICBvcmRlckJ5OiAxLFxuICAgIG1pblBhc3N3b3JkTGVuZ3RoOiAwLFxuICAgIHVzZXJzT2Zmc2V0OiAwLFxuICAgIHVzZXJzTGltaXQ6IDI1LFxufTtcblxuY29uc3QgbXV0YXRpb25zID0ge1xuICAgIGFwcGVuZFVzZXJzKHN0YXRlLCB1c2Vyc09iaikge1xuICAgICAgICAvLyBjb252ZXJ0IG9iaiB0byBhcnJheVxuICAgICAgICBsZXQgdXNlcnMgPSBzdGF0ZS51c2Vycy5jb25jYXQoT2JqZWN0LmtleXModXNlcnNPYmopLm1hcCh1c2VyaWQgPT4gdXNlcnNPYmpbdXNlcmlkXSkpO1xuICAgICAgICBzdGF0ZS51c2Vyc09mZnNldCArPSBzdGF0ZS51c2Vyc0xpbWl0O1xuICAgICAgICBzdGF0ZS51c2VycyA9IHVzZXJzO1xuICAgIH0sXG4gICAgc2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgoc3RhdGUsIGxlbmd0aCkge1xuICAgICAgICBzdGF0ZS5taW5QYXNzd29yZExlbmd0aCA9IGxlbmd0aCE9PScnID8gbGVuZ3RoIDogMDtcbiAgICB9LFxuICAgIGluaXRHcm91cHMoc3RhdGUsIHtncm91cHMsIG9yZGVyQnl9KSB7XG4gICAgICAgIHN0YXRlLmdyb3VwcyA9IGdyb3VwcztcbiAgICAgICAgc3RhdGUub3JkZXJCeSA9IG9yZGVyQnk7XG4gICAgICAgIHN0YXRlLmdyb3VwcyA9IG9yZGVyR3JvdXBzKHN0YXRlLmdyb3Vwcywgc3RhdGUub3JkZXJCeSk7XG4gICAgfSxcbiAgICBhZGRHcm91cChzdGF0ZSwgZ3JvdXBpZCkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgc3RhdGUuZ3JvdXBzLnB1c2goe1xuICAgICAgICAgICAgICAgIGlkOiBncm91cGlkLFxuICAgICAgICAgICAgICAgIG5hbWU6IGdyb3VwaWQsXG4gICAgICAgICAgICAgICAgdXNlcmNvdW50OiAwIC8vIHVzZXIgd2lsbCBiZSBhZGRlZCBhZnRlciB0aGUgY3JlYXRpb25cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgc3RhdGUuZ3JvdXBzID0gb3JkZXJHcm91cHMoc3RhdGUuZ3JvdXBzLCBzdGF0ZS5vcmRlckJ5KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgY29uc29sZS5sb2coJ0NhblxcJ3QgY3JlYXRlIGdyb3VwJywgZSk7XG4gICAgICAgIH1cbiAgICB9LFxuICAgIGFkZFVzZXJHcm91cChzdGF0ZSwgeyB1c2VyaWQsIGdpZCB9KSB7XG4gICAgICAgIC8vIHRoaXMgc2hvdWxkIG5vdCBiZSBuZWVkZWQgYXMgaXQgd291bGQgbWVhbnMgdGhlIHVzZXIgY29udGFpbnMgYSBncm91cFxuICAgICAgICAvLyB0aGUgc2VydmVyIGRhdGFiYXNlIGRvZXNuJ3QgaGF2ZS5cbiAgICAgICAgbGV0IGdyb3VwID0gc3RhdGUuZ3JvdXBzLmZpbmQoZ3JvdXBTZWFyY2ggPT4gZ3JvdXBTZWFyY2guaWQgPT0gZ2lkKTtcbiAgICAgICAgaWYgKGdyb3VwKSB7XG4gICAgICAgICAgICBncm91cC51c2VyY291bnQrKzsgLy8gaW5jcmVhc2UgY291bnRcbiAgICAgICAgfVxuICAgICAgICBsZXQgZ3JvdXBzID0gc3RhdGUudXNlcnMuZmluZCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKS5ncm91cHM7XG4gICAgICAgIGdyb3Vwcy5wdXNoKGdpZCk7XG4gICAgICAgIHN0YXRlLmdyb3VwcyA9IG9yZGVyR3JvdXBzKHN0YXRlLmdyb3Vwcywgc3RhdGUub3JkZXJCeSk7XG4gICAgfSxcbiAgICByZW1vdmVVc2VyR3JvdXAoc3RhdGUsIHsgdXNlcmlkLCBnaWQgfSkge1xuICAgICAgICAvLyB0aGlzIHNob3VsZCBub3QgYmUgbmVlZGVkIGFzIGl0IHdvdWxkIG1lYW5zIHRoZSB1c2VyIGNvbnRhaW5zIGEgZ3JvdXBcbiAgICAgICAgLy8gdGhlIHNlcnZlciBkYXRhYmFzZSBkb2Vzbid0IGhhdmUuXG4gICAgICAgIGxldCBncm91cCA9IHN0YXRlLmdyb3Vwcy5maW5kKGdyb3VwU2VhcmNoID0+IGdyb3VwU2VhcmNoLmlkID09IGdpZCk7XG4gICAgICAgIGlmIChncm91cCkge1xuICAgICAgICAgICAgZ3JvdXAudXNlcmNvdW50LS07IC8vIGxvd2VyIGNvdW50XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGdyb3VwcyA9IHN0YXRlLnVzZXJzLmZpbmQodXNlciA9PiB1c2VyLmlkID09IHVzZXJpZCkuZ3JvdXBzO1xuICAgICAgICBncm91cHMuc3BsaWNlKGdyb3Vwcy5pbmRleE9mKGdpZCksMSk7XG4gICAgICAgIHN0YXRlLmdyb3VwcyA9IG9yZGVyR3JvdXBzKHN0YXRlLmdyb3Vwcywgc3RhdGUub3JkZXJCeSk7XG4gICAgfSxcbiAgICBhZGRVc2VyU3ViQWRtaW4oc3RhdGUsIHsgdXNlcmlkLCBnaWQgfSkge1xuICAgICAgICBsZXQgZ3JvdXBzID0gc3RhdGUudXNlcnMuZmluZCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKS5zdWJhZG1pbjtcbiAgICAgICAgZ3JvdXBzLnB1c2goZ2lkKTtcbiAgICB9LFxuICAgIHJlbW92ZVVzZXJTdWJBZG1pbihzdGF0ZSwgeyB1c2VyaWQsIGdpZCB9KSB7XG4gICAgICAgIGxldCBncm91cHMgPSBzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpLnN1YmFkbWluO1xuICAgICAgICBncm91cHMuc3BsaWNlKGdyb3Vwcy5pbmRleE9mKGdpZCksMSk7XG4gICAgfSxcbiAgICBkZWxldGVVc2VyKHN0YXRlLCB1c2VyaWQpIHtcbiAgICAgICAgbGV0IHVzZXJJbmRleCA9IHN0YXRlLnVzZXJzLmZpbmRJbmRleCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKTtcbiAgICAgICAgc3RhdGUudXNlcnMuc3BsaWNlKHVzZXJJbmRleCwgMSk7XG4gICAgfSxcbiAgICBhZGRVc2VyRGF0YShzdGF0ZSwgcmVzcG9uc2UpIHtcbiAgICAgICAgc3RhdGUudXNlcnMucHVzaChyZXNwb25zZS5kYXRhLm9jcy5kYXRhKTtcbiAgICB9LFxuICAgIGVuYWJsZURpc2FibGVVc2VyKHN0YXRlLCB7IHVzZXJpZCwgZW5hYmxlZCB9KSB7XG4gICAgICAgIHN0YXRlLnVzZXJzLmZpbmQodXNlciA9PiB1c2VyLmlkID09IHVzZXJpZCkuZW5hYmxlZCA9IGVuYWJsZWQ7XG4gICAgICAgIHN0YXRlLmdyb3Vwcy5maW5kKGdyb3VwID0+IGdyb3VwLmlkID09ICdfZGlzYWJsZWQnKS51c2VyY291bnQgKz0gZW5hYmxlZCA/IC0xIDogMTtcbiAgICB9LFxuICAgIHNldFVzZXJEYXRhKHN0YXRlLCB7IHVzZXJpZCwga2V5LCB2YWx1ZSB9KSB7XG4gICAgICAgIGlmIChrZXkgPT09ICdxdW90YScpIHtcbiAgICAgICAgICAgIGxldCBodW1hblZhbHVlID0gT0MuVXRpbC5jb21wdXRlckZpbGVTaXplKHZhbHVlKTtcbiAgICAgICAgICAgIHN0YXRlLnVzZXJzLmZpbmQodXNlciA9PiB1c2VyLmlkID09IHVzZXJpZClba2V5XVtrZXldID0gaHVtYW5WYWx1ZT9odW1hblZhbHVlOnZhbHVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3RhdGUudXNlcnMuZmluZCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKVtrZXldID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9LFxufTtcblxuY29uc3QgZ2V0dGVycyA9IHtcbiAgICBnZXRVc2VycyhzdGF0ZSkge1xuICAgICAgICByZXR1cm4gc3RhdGUudXNlcnM7XG4gICAgfSxcbiAgICBnZXRHcm91cHMoc3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIHN0YXRlLmdyb3VwcztcbiAgICB9LFxuICAgIGdldFBhc3N3b3JkUG9saWN5TWluTGVuZ3RoKHN0YXRlKSB7XG4gICAgICAgIHJldHVybiBzdGF0ZS5taW5QYXNzd29yZExlbmd0aDtcbiAgICB9LFxuICAgIGdldFVzZXJzT2Zmc2V0KHN0YXRlKSB7XG4gICAgICAgIHJldHVybiBzdGF0ZS51c2Vyc09mZnNldDtcbiAgICB9LFxuICAgIGdldFVzZXJzTGltaXQoc3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIHN0YXRlLnVzZXJzTGltaXQ7XG4gICAgfVxufTtcblxuY29uc3QgYWN0aW9ucyA9IHtcbiAgICAvKipcbiAgICAgKiBHZXQgYWxsIHVzZXJzIHdpdGggZnVsbCBkZXRhaWxzXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICAgICAqIEBwYXJhbSB7aW50fSBvcHRpb25zLm9mZnNldCBMaXN0IG9mZnNldCB0byByZXF1ZXN0XG4gICAgICogQHBhcmFtIHtpbnR9IG9wdGlvbnMubGltaXQgTGlzdCBudW1iZXIgdG8gcmV0dXJuIGZyb20gb2Zmc2V0XG4gICAgICogQHJldHVybnMge1Byb21pc2V9XG4gICAgICovXG4gICAgZ2V0VXNlcnMoY29udGV4dCwgeyBvZmZzZXQsIGxpbWl0LCBzZWFyY2ggfSkge1xuICAgICAgICBzZWFyY2ggPSB0eXBlb2Ygc2VhcmNoID09PSAnc3RyaW5nJyA/IHNlYXJjaCA6ICcnO1xuICAgICAgICByZXR1cm4gYXBpLmdldChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzL2RldGFpbHM/b2Zmc2V0PSR7b2Zmc2V0fSZsaW1pdD0ke2xpbWl0fSZzZWFyY2g9JHtzZWFyY2h9YCwgMikpXG4gICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmtleXMocmVzcG9uc2UuZGF0YS5vY3MuZGF0YS51c2VycykubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0LmNvbW1pdCgnYXBwZW5kVXNlcnMnLCByZXNwb25zZS5kYXRhLm9jcy5kYXRhLnVzZXJzKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCBlcnJvcikpO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBHZXQgYWxsIHVzZXJzIHdpdGggZnVsbCBkZXRhaWxzXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICAgICAqIEBwYXJhbSB7aW50fSBvcHRpb25zLm9mZnNldCBMaXN0IG9mZnNldCB0byByZXF1ZXN0XG4gICAgICogQHBhcmFtIHtpbnR9IG9wdGlvbnMubGltaXQgTGlzdCBudW1iZXIgdG8gcmV0dXJuIGZyb20gb2Zmc2V0XG4gICAgICogQHJldHVybnMge1Byb21pc2V9XG4gICAgICovXG4gICAgZ2V0VXNlcnNGcm9tTGlzdChjb250ZXh0LCB7IG9mZnNldCwgbGltaXQsIHNlYXJjaCB9KSB7XG4gICAgICAgIHNlYXJjaCA9IHR5cGVvZiBzZWFyY2ggPT09ICdzdHJpbmcnID8gc2VhcmNoIDogJyc7XG4gICAgICAgIHJldHVybiBhcGkuZ2V0KE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvZGV0YWlscz9vZmZzZXQ9JHtvZmZzZXR9JmxpbWl0PSR7bGltaXR9JnNlYXJjaD0ke3NlYXJjaH1gLCAyKSlcbiAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhyZXNwb25zZS5kYXRhLm9jcy5kYXRhLnVzZXJzKS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRleHQuY29tbWl0KCdhcHBlbmRVc2VycycsIHJlc3BvbnNlLmRhdGEub2NzLmRhdGEudXNlcnMpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIGVycm9yKSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIEdldCBhbGwgdXNlcnMgd2l0aCBmdWxsIGRldGFpbHMgZnJvbSBhIGdyb3VwaWRcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gICAgICogQHBhcmFtIHtpbnR9IG9wdGlvbnMub2Zmc2V0IExpc3Qgb2Zmc2V0IHRvIHJlcXVlc3RcbiAgICAgKiBAcGFyYW0ge2ludH0gb3B0aW9ucy5saW1pdCBMaXN0IG51bWJlciB0byByZXR1cm4gZnJvbSBvZmZzZXRcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICBnZXRVc2Vyc0Zyb21Hcm91cChjb250ZXh0LCB7IGdyb3VwaWQsIG9mZnNldCwgbGltaXQgfSkge1xuICAgICAgICByZXR1cm4gYXBpLmdldChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7Z3JvdXBpZH0vZGV0YWlscz9vZmZzZXQ9JHtvZmZzZXR9JmxpbWl0PSR7bGltaXR9YCwgMikpXG4gICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdnZXRVc2Vyc0Zyb21MaXN0JywgcmVzcG9uc2UuZGF0YS5vY3MuZGF0YS51c2VycykpXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCBlcnJvcikpO1xuICAgIH0sXG4gICAgXG5cbiAgICBnZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aChjb250ZXh0KSB7XG4gICAgICAgIHJldHVybiBhcGkuZ2V0KE9DLmxpbmtUb09DUygnYXBwcy9wcm92aXNpb25pbmdfYXBpL2FwaS92MS9jb25maWcvYXBwcy9wYXNzd29yZF9wb2xpY3kvbWluTGVuZ3RoJywgMikpXG4gICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdzZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aCcsIHJlc3BvbnNlLmRhdGEub2NzLmRhdGEuZGF0YSkpXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCBlcnJvcikpO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBBZGQgZ3JvdXBcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBnaWQgR3JvdXAgaWRcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICBhZGRHcm91cChjb250ZXh0LCBnaWQpIHtcbiAgICAgICAgcmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGFwaS5wb3N0KE9DLmxpbmtUb09DUyhgY2xvdWQvZ3JvdXBzYCwgMiksIHtncm91cGlkOiBnaWR9KVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ2FkZEdyb3VwJywgZ2lkKSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCBlcnJvcikpO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogQWRkIGdyb3VwXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gZ2lkIEdyb3VwIGlkXG4gICAgICogQHJldHVybnMge1Byb21pc2V9XG4gICAgICovXG4gICAgcmVtb3ZlR3JvdXAoY29udGV4dCwgZ2lkKSB7XG4gICAgICAgIHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL2dyb3Vwc2AsIDIpLCB7Z3JvdXBpZDogZ2lkfSlcbiAgICAgICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdyZW1vdmVHcm91cCcsIGdpZCkpXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcbiAgICAgICAgfSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIEFkZCB1c2VyIHRvIGdyb3VwXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnVzZXJpZCBVc2VyIGlkXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuZ2lkIEdyb3VwIGlkXG4gICAgICogQHJldHVybnMge1Byb21pc2V9XG4gICAgICovXG4gICAgYWRkVXNlckdyb3VwKGNvbnRleHQsIHsgdXNlcmlkLCBnaWQgfSkge1xuICAgICAgICByZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYXBpLnBvc3QoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy8ke3VzZXJpZH0vZ3JvdXBzYCwgMiksIHsgZ3JvdXBpZDogZ2lkIH0pXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnYWRkVXNlckdyb3VwJywgeyB1c2VyaWQsIGdpZCB9KSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCBlcnJvcikpO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHVzZXIgZnJvbSBncm91cFxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG4gICAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy51c2VyaWQgVXNlciBpZFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmdpZCBHcm91cCBpZFxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgICAqL1xuICAgIHJlbW92ZVVzZXJHcm91cChjb250ZXh0LCB7IHVzZXJpZCwgZ2lkIH0pIHtcbiAgICAgICAgcmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGFwaS5kZWxldGUoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy8ke3VzZXJpZH0vZ3JvdXBzYCwgMiksIHsgZ3JvdXBpZDogZ2lkIH0pXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgncmVtb3ZlVXNlckdyb3VwJywgeyB1c2VyaWQsIGdpZCB9KSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogQWRkIHVzZXIgdG8gZ3JvdXAgYWRtaW5cbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5naWQgR3JvdXAgaWRcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICBhZGRVc2VyU3ViQWRtaW4oY29udGV4dCwgeyB1c2VyaWQsIGdpZCB9KSB7XG4gICAgICAgIHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7dXNlcmlkfS9zdWJhZG1pbnNgLCAyKSwgIHsgZ3JvdXBpZDogZ2lkIH0pXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnYWRkVXNlclN1YkFkbWluJywgeyB1c2VyaWQsIGdpZCB9KSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCBlcnJvcikpO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHVzZXIgZnJvbSBncm91cCBhZG1pblxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG4gICAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy51c2VyaWQgVXNlciBpZFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmdpZCBHcm91cCBpZFxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgICAqL1xuICAgIHJlbW92ZVVzZXJTdWJBZG1pbihjb250ZXh0LCB7IHVzZXJpZCwgZ2lkIH0pIHtcbiAgICAgICAgcmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGFwaS5kZWxldGUoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy8ke3VzZXJpZH0vc3ViYWRtaW5zYCwgMiksIHsgZ3JvdXBpZDogZ2lkIH0pXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgncmVtb3ZlVXNlclN1YkFkbWluJywgeyB1c2VyaWQsIGdpZCB9KSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogRGVsZXRlIGEgdXNlclxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG4gICAgICogQHBhcmFtIHtzdHJpbmd9IHVzZXJpZCBVc2VyIGlkIFxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgICAqL1xuICAgIGRlbGV0ZVVzZXIoY29udGV4dCwgdXNlcmlkKSB7XG4gICAgICAgIHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBhcGkuZGVsZXRlKE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9YCwgMikpXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnZGVsZXRlVXNlcicsIHVzZXJpZCkpXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgeyB1c2VyaWQsIGVycm9yIH0pKTtcbiAgICAgICAgfSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIEFkZCBhIHVzZXJcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5wYXNzd29yZCBVc2VyIHBhc3N3b3JkIFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmVtYWlsIFVzZXIgZW1haWxcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICBhZGRVc2VyKHtjb250ZXh0LCBkaXNwYXRjaH0sIHt1c2VyaWQsIHBhc3N3b3JkLCBlbWFpbCwgZ3JvdXBzfSkge1xuICAgICAgICByZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYXBpLnBvc3QoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vyc2AsIDIpLCB7dXNlcmlkLCBwYXNzd29yZCwgZW1haWwsIGdyb3Vwc30pXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBkaXNwYXRjaCgnYWRkVXNlckRhdGEnLCB1c2VyaWQpKVxuICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIHsgdXNlcmlkLCBlcnJvciB9KSk7XG4gICAgICAgIH0pO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBHZXQgdXNlciBkYXRhIGFuZCBjb21taXQgYWRkaXRpb25cbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSB1c2VyaWQgVXNlciBpZCBcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICBhZGRVc2VyRGF0YShjb250ZXh0LCB1c2VyaWQpIHtcbiAgICAgICAgcmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGFwaS5nZXQoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy8ke3VzZXJpZH1gLCAyKSlcbiAgICAgICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdhZGRVc2VyRGF0YScsIHJlc3BvbnNlKSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqIEVuYWJsZSBvciBkaXNhYmxlIHVzZXIgXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnVzZXJpZCBVc2VyIGlkXG4gICAgICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLmVuYWJsZWQgVXNlciBlbmFibGVtZW50IHN0YXR1c1xuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgICAqL1xuICAgIGVuYWJsZURpc2FibGVVc2VyKGNvbnRleHQsIHsgdXNlcmlkLCBlbmFibGVkID0gdHJ1ZSB9KSB7XG4gICAgICAgIGxldCB1c2VyU3RhdHVzID0gZW5hYmxlZCA/ICdlbmFibGUnIDogJ2Rpc2FibGUnO1xuICAgICAgICByZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYXBpLnB1dChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7dXNlcmlkfS8ke3VzZXJTdGF0dXN9YCwgMikpXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnZW5hYmxlRGlzYWJsZVVzZXInLCB7IHVzZXJpZCwgZW5hYmxlZCB9KSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogRWRpdCB1c2VyIGRhdGFcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dCBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnVzZXJpZCBVc2VyIGlkXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMua2V5IFVzZXIgZmllbGQgdG8gZWRpdFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnZhbHVlIFZhbHVlIG9mIHRoZSBjaGFuZ2VcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICBzZXRVc2VyRGF0YShjb250ZXh0LCB7IHVzZXJpZCwga2V5LCB2YWx1ZSB9KSB7XG4gICAgICAgIGlmIChbJ2VtYWlsJywgJ3F1b3RhJywgJ2Rpc3BsYXluYW1lJywgJ3Bhc3N3b3JkJ10uaW5kZXhPZihrZXkpICE9PSAtMSkge1xuICAgICAgICAgICAgLy8gV2UgYWxsb3cgZW1wdHkgZW1haWwgb3IgZGlzcGxheW5hbWVcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmXG4gICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAoWydxdW90YScsICdwYXNzd29yZCddLmluZGV4T2Yoa2V5KSAhPT0gLTEgJiYgdmFsdWUubGVuZ3RoID4gMCkgfHxcbiAgICAgICAgICAgICAgICAgICAgWydlbWFpbCcsICdkaXNwbGF5bmFtZSddLmluZGV4T2Yoa2V5KSAhPT0gLTFcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBhcGkucHV0KE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9YCwgMiksIHsga2V5OiBrZXksIHZhbHVlOiB2YWx1ZSB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnc2V0VXNlckRhdGEnLCB7IHVzZXJpZCwga2V5LCB2YWx1ZSB9KSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIHsgdXNlcmlkLCBlcnJvciB9KSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcignSW52YWxpZCByZXF1ZXN0IGRhdGEnKSk7XG4gICAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgeyBzdGF0ZSwgbXV0YXRpb25zLCBnZXR0ZXJzLCBhY3Rpb25zIH07XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3N0b3JlL3VzZXJzLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///53\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__api__ = __webpack_require__(17);\n\n\nvar orderGroups = function orderGroups(groups, orderBy) {\n /* const SORT_USERCOUNT = 1;\n * const SORT_GROUPNAME = 2;\n * https://github.com/nextcloud/server/blob/208e38e84e1a07a49699aa90dc5b7272d24489f0/lib/private/Group/MetaData.php#L34\n */\n if (orderBy === 1) {\n return groups.sort(function (a, b) {\n return a.usercount < b.usercount;\n });\n } else {\n return groups.sort(function (a, b) {\n return a.name.localeCompare(b.name);\n });\n }\n};\n\nvar state = {\n users: [],\n groups: [],\n orderBy: 1,\n minPasswordLength: 0,\n usersOffset: 0,\n usersLimit: 25,\n userCount: 0\n};\n\nvar mutations = {\n appendUsers: function appendUsers(state, usersObj) {\n // convert obj to array\n var users = state.users.concat(Object.keys(usersObj).map(function (userid) {\n return usersObj[userid];\n }));\n state.usersOffset += state.usersLimit;\n state.users = users;\n },\n setPasswordPolicyMinLength: function setPasswordPolicyMinLength(state, length) {\n state.minPasswordLength = length !== '' ? length : 0;\n },\n initGroups: function initGroups(state, _ref) {\n var groups = _ref.groups,\n orderBy = _ref.orderBy,\n userCount = _ref.userCount;\n\n state.groups = groups;\n state.orderBy = orderBy;\n state.userCount = userCount;\n state.groups = orderGroups(state.groups, state.orderBy);\n },\n addGroup: function addGroup(state, groupid) {\n try {\n state.groups.push({\n id: groupid,\n name: groupid,\n usercount: 0 // user will be added after the creation\n });\n state.groups = orderGroups(state.groups, state.orderBy);\n } catch (e) {\n console.log('Can\\'t create group', e);\n }\n },\n addUserGroup: function addUserGroup(state, _ref2) {\n var userid = _ref2.userid,\n gid = _ref2.gid;\n\n // this should not be needed as it would means the user contains a group\n // the server database doesn't have.\n var group = state.groups.find(function (groupSearch) {\n return groupSearch.id == gid;\n });\n if (group) {\n group.usercount++; // increase count\n }\n var groups = state.users.find(function (user) {\n return user.id == userid;\n }).groups;\n groups.push(gid);\n state.groups = orderGroups(state.groups, state.orderBy);\n },\n removeUserGroup: function removeUserGroup(state, _ref3) {\n var userid = _ref3.userid,\n gid = _ref3.gid;\n\n // this should not be needed as it would means the user contains a group\n // the server database doesn't have.\n var group = state.groups.find(function (groupSearch) {\n return groupSearch.id == gid;\n });\n if (group) {\n group.usercount--; // lower count\n }\n var groups = state.users.find(function (user) {\n return user.id == userid;\n }).groups;\n groups.splice(groups.indexOf(gid), 1);\n state.groups = orderGroups(state.groups, state.orderBy);\n },\n addUserSubAdmin: function addUserSubAdmin(state, _ref4) {\n var userid = _ref4.userid,\n gid = _ref4.gid;\n\n var groups = state.users.find(function (user) {\n return user.id == userid;\n }).subadmin;\n groups.push(gid);\n },\n removeUserSubAdmin: function removeUserSubAdmin(state, _ref5) {\n var userid = _ref5.userid,\n gid = _ref5.gid;\n\n var groups = state.users.find(function (user) {\n return user.id == userid;\n }).subadmin;\n groups.splice(groups.indexOf(gid), 1);\n },\n deleteUser: function deleteUser(state, userid) {\n var userIndex = state.users.findIndex(function (user) {\n return user.id == userid;\n });\n state.users.splice(userIndex, 1);\n },\n addUserData: function addUserData(state, response) {\n state.users.push(response.data.ocs.data);\n },\n enableDisableUser: function enableDisableUser(state, _ref6) {\n var userid = _ref6.userid,\n enabled = _ref6.enabled;\n\n state.users.find(function (user) {\n return user.id == userid;\n }).enabled = enabled;\n // increment or not\n state.groups.find(function (group) {\n return group.id == '_disabled';\n }).usercount += enabled ? -1 : 1;\n state.userCount += enabled ? 1 : -1;\n console.log(enabled);\n },\n setUserData: function setUserData(state, _ref7) {\n var userid = _ref7.userid,\n key = _ref7.key,\n value = _ref7.value;\n\n if (key === 'quota') {\n var humanValue = OC.Util.computerFileSize(value);\n state.users.find(function (user) {\n return user.id == userid;\n })[key][key] = humanValue ? humanValue : value;\n } else {\n state.users.find(function (user) {\n return user.id == userid;\n })[key] = value;\n }\n },\n\n\n /**\n * Reset users list\n */\n resetUsers: function resetUsers(state) {\n state.users = [];\n state.usersOffset = 0;\n }\n};\n\nvar getters = {\n getUsers: function getUsers(state) {\n return state.users;\n },\n getGroups: function getGroups(state) {\n return state.groups;\n },\n getPasswordPolicyMinLength: function getPasswordPolicyMinLength(state) {\n return state.minPasswordLength;\n },\n getUsersOffset: function getUsersOffset(state) {\n return state.usersOffset;\n },\n getUsersLimit: function getUsersLimit(state) {\n return state.usersLimit;\n },\n getUserCount: function getUserCount(state) {\n return state.userCount;\n }\n};\n\nvar actions = {\n\n /**\n * Get all users with full details\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @param {string} options.search Search amongst users\n * @param {string} options.group Get users from group\n * @returns {Promise}\n */\n getUsers: function getUsers(context, _ref8) {\n var offset = _ref8.offset,\n limit = _ref8.limit,\n search = _ref8.search,\n group = _ref8.group;\n\n search = typeof search === 'string' ? search : '';\n group = typeof group === 'string' ? group : '';\n if (group !== '') {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/groups/' + group + '/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n if (Object.keys(response.data.ocs.data.users).length > 0) {\n context.commit('appendUsers', response.data.ocs.data.users);\n return true;\n }\n return false;\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n }\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n if (Object.keys(response.data.ocs.data.users).length > 0) {\n context.commit('appendUsers', response.data.ocs.data.users);\n return true;\n }\n return false;\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n },\n\n\n /**\n * Get all users with full details\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @returns {Promise}\n */\n getUsersFromList: function getUsersFromList(context, _ref9) {\n var offset = _ref9.offset,\n limit = _ref9.limit,\n search = _ref9.search;\n\n search = typeof search === 'string' ? search : '';\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/details?offset=' + offset + '&limit=' + limit + '&search=' + search, 2)).then(function (response) {\n if (Object.keys(response.data.ocs.data.users).length > 0) {\n context.commit('appendUsers', response.data.ocs.data.users);\n return true;\n }\n return false;\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n },\n\n\n /**\n * Get all users with full details from a groupid\n * \n * @param {Object} context\n * @param {Object} options\n * @param {int} options.offset List offset to request\n * @param {int} options.limit List number to return from offset\n * @returns {Promise}\n */\n getUsersFromGroup: function getUsersFromGroup(context, _ref10) {\n var groupid = _ref10.groupid,\n offset = _ref10.offset,\n limit = _ref10.limit;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/' + groupid + '/details?offset=' + offset + '&limit=' + limit, 2)).then(function (response) {\n return context.commit('getUsersFromList', response.data.ocs.data.users);\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n },\n getPasswordPolicyMinLength: function getPasswordPolicyMinLength(context) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('apps/provisioning_api/api/v1/config/apps/password_policy/minLength', 2)).then(function (response) {\n return context.commit('setPasswordPolicyMinLength', response.data.ocs.data.data);\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n },\n\n\n /**\n * Add group\n * \n * @param {Object} context\n * @param {string} gid Group id\n * @returns {Promise}\n */\n addGroup: function addGroup(context, gid) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/groups', 2), { groupid: gid }).then(function (response) {\n return context.commit('addGroup', gid);\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n });\n },\n\n\n /**\n * Remove group\n * \n * @param {Object} context\n * @param {string} gid Group id\n * @returns {Promise}\n */\n removeGroup: function removeGroup(context, gid) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/groups', 2), { groupid: gid }).then(function (response) {\n return context.commit('removeGroup', gid);\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n });\n },\n\n\n /**\n * Add user to group\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n addUserGroup: function addUserGroup(context, _ref11) {\n var userid = _ref11.userid,\n gid = _ref11.gid;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users/' + userid + '/groups', 2), { groupid: gid }).then(function (response) {\n return context.commit('addUserGroup', { userid: userid, gid: gid });\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n });\n },\n\n\n /**\n * Remove user from group\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n removeUserGroup: function removeUserGroup(context, _ref12) {\n var userid = _ref12.userid,\n gid = _ref12.gid;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid + '/groups', 2), { groupid: gid }).then(function (response) {\n return context.commit('removeUserGroup', { userid: userid, gid: gid });\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /**\n * Add user to group admin\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n addUserSubAdmin: function addUserSubAdmin(context, _ref13) {\n var userid = _ref13.userid,\n gid = _ref13.gid;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users/' + userid + '/subadmins', 2), { groupid: gid }).then(function (response) {\n return context.commit('addUserSubAdmin', { userid: userid, gid: gid });\n }).catch(function (error) {\n return context.commit('API_FAILURE', error);\n });\n });\n },\n\n\n /**\n * Remove user from group admin\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.gid Group id\n * @returns {Promise}\n */\n removeUserSubAdmin: function removeUserSubAdmin(context, _ref14) {\n var userid = _ref14.userid,\n gid = _ref14.gid;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid + '/subadmins', 2), { groupid: gid }).then(function (response) {\n return context.commit('removeUserSubAdmin', { userid: userid, gid: gid });\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /**\n * Delete a user\n * \n * @param {Object} context\n * @param {string} userid User id \n * @returns {Promise}\n */\n deleteUser: function deleteUser(context, _ref15) {\n var userid = _ref15.userid;\n\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].delete(OC.linkToOCS('cloud/users/' + userid, 2)).then(function (response) {\n return context.commit('deleteUser', userid);\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /**\n * Add a user\n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.password User password \n * @param {string} options.email User email\n * @param {string} options.groups User groups\n * @param {string} options.subadmin User subadmin groups\n * @param {string} options.quota User email\n * @returns {Promise}\n */\n addUser: function addUser(_ref16, _ref17) {\n var context = _ref16.context,\n dispatch = _ref16.dispatch;\n var userid = _ref17.userid,\n password = _ref17.password,\n email = _ref17.email,\n groups = _ref17.groups,\n subadmin = _ref17.subadmin,\n quota = _ref17.quota;\n\n console.log(subadmin, quota);\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].post(OC.linkToOCS('cloud/users', 2), { userid: userid, password: password, email: email, groups: groups, subadmin: subadmin, quota: quota }).then(function (response) {\n //let quotaDis = dispatch('setUserData', { userid, key: 'quota', value:quota });\n //let subadminDis = dispatch('addUserSubAdmin', userid);\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /**\n * Get user data and commit addition\n * \n * @param {Object} context\n * @param {string} userid User id \n * @returns {Promise}\n */\n addUserData: function addUserData(context, userid) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].get(OC.linkToOCS('cloud/users/' + userid, 2)).then(function (response) {\n return context.commit('addUserData', response);\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /** Enable or disable user \n * \n * @param {Object} context\n * @param {Object} options\n * @param {string} options.userid User id\n * @param {boolean} options.enabled User enablement status\n * @returns {Promise}\n */\n enableDisableUser: function enableDisableUser(context, _ref18) {\n var userid = _ref18.userid,\n _ref18$enabled = _ref18.enabled,\n enabled = _ref18$enabled === undefined ? true : _ref18$enabled;\n\n var userStatus = enabled ? 'enable' : 'disable';\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].put(OC.linkToOCS('cloud/users/' + userid + '/' + userStatus, 2)).then(function (response) {\n return context.commit('enableDisableUser', { userid: userid, enabled: enabled });\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n },\n\n\n /**\n * Edit user data\n * \n * @param {Object} context \n * @param {Object} options\n * @param {string} options.userid User id\n * @param {string} options.key User field to edit\n * @param {string} options.value Value of the change\n * @returns {Promise}\n */\n setUserData: function setUserData(context, _ref19) {\n var userid = _ref19.userid,\n key = _ref19.key,\n value = _ref19.value;\n\n if (['email', 'quota', 'displayname', 'password'].indexOf(key) !== -1) {\n // We allow empty email or displayname\n if (typeof value === 'string' && (['quota', 'password'].indexOf(key) !== -1 && value.length > 0 || ['email', 'displayname'].indexOf(key) !== -1)) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].requireAdmin().then(function (response) {\n return __WEBPACK_IMPORTED_MODULE_0__api__[\"a\" /* default */].put(OC.linkToOCS('cloud/users/' + userid, 2), { key: key, value: value }).then(function (response) {\n return context.commit('setUserData', { userid: userid, key: key, value: value });\n }).catch(function (error) {\n return context.commit('API_FAILURE', { userid: userid, error: error });\n });\n });\n }\n }\n return Promise.reject(new Error('Invalid request data'));\n }\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({ state: state, mutations: mutations, getters: getters, actions: actions });\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3RvcmUvdXNlcnMuanM/MjhjMiJdLCJuYW1lcyI6WyJvcmRlckdyb3VwcyIsImdyb3VwcyIsIm9yZGVyQnkiLCJzb3J0IiwiYSIsImIiLCJ1c2VyY291bnQiLCJuYW1lIiwibG9jYWxlQ29tcGFyZSIsInN0YXRlIiwidXNlcnMiLCJtaW5QYXNzd29yZExlbmd0aCIsInVzZXJzT2Zmc2V0IiwidXNlcnNMaW1pdCIsInVzZXJDb3VudCIsIm11dGF0aW9ucyIsImFwcGVuZFVzZXJzIiwidXNlcnNPYmoiLCJjb25jYXQiLCJPYmplY3QiLCJrZXlzIiwibWFwIiwidXNlcmlkIiwic2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgiLCJsZW5ndGgiLCJpbml0R3JvdXBzIiwiYWRkR3JvdXAiLCJncm91cGlkIiwicHVzaCIsImlkIiwiZSIsImNvbnNvbGUiLCJsb2ciLCJhZGRVc2VyR3JvdXAiLCJnaWQiLCJncm91cCIsImZpbmQiLCJncm91cFNlYXJjaCIsInVzZXIiLCJyZW1vdmVVc2VyR3JvdXAiLCJzcGxpY2UiLCJpbmRleE9mIiwiYWRkVXNlclN1YkFkbWluIiwic3ViYWRtaW4iLCJyZW1vdmVVc2VyU3ViQWRtaW4iLCJkZWxldGVVc2VyIiwidXNlckluZGV4IiwiZmluZEluZGV4IiwiYWRkVXNlckRhdGEiLCJyZXNwb25zZSIsImRhdGEiLCJvY3MiLCJlbmFibGVEaXNhYmxlVXNlciIsImVuYWJsZWQiLCJzZXRVc2VyRGF0YSIsImtleSIsInZhbHVlIiwiaHVtYW5WYWx1ZSIsIk9DIiwiVXRpbCIsImNvbXB1dGVyRmlsZVNpemUiLCJyZXNldFVzZXJzIiwiZ2V0dGVycyIsImdldFVzZXJzIiwiZ2V0R3JvdXBzIiwiZ2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgiLCJnZXRVc2Vyc09mZnNldCIsImdldFVzZXJzTGltaXQiLCJnZXRVc2VyQ291bnQiLCJhY3Rpb25zIiwiY29udGV4dCIsIm9mZnNldCIsImxpbWl0Iiwic2VhcmNoIiwiYXBpIiwiZ2V0IiwibGlua1RvT0NTIiwidGhlbiIsImNvbW1pdCIsImNhdGNoIiwiZXJyb3IiLCJnZXRVc2Vyc0Zyb21MaXN0IiwiZ2V0VXNlcnNGcm9tR3JvdXAiLCJyZXF1aXJlQWRtaW4iLCJwb3N0IiwicmVtb3ZlR3JvdXAiLCJkZWxldGUiLCJhZGRVc2VyIiwiZGlzcGF0Y2giLCJwYXNzd29yZCIsImVtYWlsIiwicXVvdGEiLCJ1c2VyU3RhdHVzIiwicHV0IiwiUHJvbWlzZSIsInJlamVjdCIsIkVycm9yIl0sIm1hcHBpbmdzIjoiO0FBQUE7O0FBRUEsSUFBTUEsY0FBYyxTQUFkQSxXQUFjLENBQVNDLE1BQVQsRUFBaUJDLE9BQWpCLEVBQTBCO0FBQzFDOzs7O0FBSUEsUUFBSUEsWUFBWSxDQUFoQixFQUFtQjtBQUNmLGVBQU9ELE9BQU9FLElBQVAsQ0FBWSxVQUFDQyxDQUFELEVBQUlDLENBQUo7QUFBQSxtQkFBVUQsRUFBRUUsU0FBRixHQUFjRCxFQUFFQyxTQUExQjtBQUFBLFNBQVosQ0FBUDtBQUNILEtBRkQsTUFFTztBQUNILGVBQU9MLE9BQU9FLElBQVAsQ0FBWSxVQUFDQyxDQUFELEVBQUlDLENBQUo7QUFBQSxtQkFBVUQsRUFBRUcsSUFBRixDQUFPQyxhQUFQLENBQXFCSCxFQUFFRSxJQUF2QixDQUFWO0FBQUEsU0FBWixDQUFQO0FBQ0g7QUFDSixDQVZEOztBQVlBLElBQU1FLFFBQVE7QUFDVkMsV0FBTyxFQURHO0FBRVZULFlBQVEsRUFGRTtBQUdWQyxhQUFTLENBSEM7QUFJVlMsdUJBQW1CLENBSlQ7QUFLVkMsaUJBQWEsQ0FMSDtBQU1WQyxnQkFBWSxFQU5GO0FBT1ZDLGVBQVc7QUFQRCxDQUFkOztBQVVBLElBQU1DLFlBQVk7QUFDZEMsZUFEYyx1QkFDRlAsS0FERSxFQUNLUSxRQURMLEVBQ2U7QUFDekI7QUFDQSxZQUFJUCxRQUFRRCxNQUFNQyxLQUFOLENBQVlRLE1BQVosQ0FBbUJDLE9BQU9DLElBQVAsQ0FBWUgsUUFBWixFQUFzQkksR0FBdEIsQ0FBMEI7QUFBQSxt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SUFBNkNDLE1BQU1oQyxNQUFOLEdBQWUsQ0FBN0QsSUFDQSxDQUFDLE9BQUQsRUFBVSxhQUFWLEVBQXlCaUIsT0FBekIsQ0FBaUNjLEdBQWpDLE1BQTBDLENBQUMsQ0FIL0MsQ0FBSixFQUtFO0FBQ0UsdUJBQU8scURBQUFtQixDQUFJUyxZQUFKLEdBQW1CTixJQUFuQixDQUF3QixVQUFDNUIsUUFBRCxFQUFjO0FBQ3pDLDJCQUFPLHFEQUFBeUIsQ0FBSW1CLEdBQUosQ0FBUW5DLEdBQUdrQixTQUFILGtCQUE0QnRELE1BQTVCLEVBQXNDLENBQXRDLENBQVIsRUFBa0QsRUFBRWlDLEtBQUtBLEdBQVAsRUFBWUMsT0FBT0EsS0FBbkIsRUFBbEQsRUFDRnFCLElBREUsQ0FDRyxVQUFDNUIsUUFBRDtBQUFBLCtCQUFjcUIsUUFBUVEsTUFBUixDQUFlLGFBQWYsRUFBOEIsRUFBRXhELGNBQUYsRUFBVWlDLFFBQVYsRUFBZUMsWUFBZixFQUE5QixDQUFkO0FBQUEscUJBREgsRUFFRnVCLEtBRkUsQ0FFSSxVQUFDQyxLQUFEO0FBQUEsK0JBQVdWLFFBQVFRLE1BQVIsQ0FBZSxhQUFmLEVBQThCLEVBQUV4RCxjQUFGLEVBQVUwRCxZQUFWLEVBQTlCLENBQVg7QUFBQSxxQkFGSixDQUFQO0FBR0gsaUJBSk0sQ0FBUDtBQUtIO0FBQ0o7QUFDRCxlQUFPYyxRQUFRQyxNQUFSLENBQWUsSUFBSUMsS0FBSixDQUFVLHNCQUFWLENBQWYsQ0FBUDtBQUNIO0FBeFJXLENBQWhCOztBQTJSQSx5REFBZSxFQUFFdkYsWUFBRixFQUFTTSxvQkFBVCxFQUFvQitDLGdCQUFwQixFQUE2Qk8sZ0JBQTdCLEVBQWYiLCJmaWxlIjoiNTMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXBpIGZyb20gJy4vYXBpJztcblxuY29uc3Qgb3JkZXJHcm91cHMgPSBmdW5jdGlvbihncm91cHMsIG9yZGVyQnkpIHtcbiAgICAvKiBjb25zdCBTT1JUX1VTRVJDT1VOVCA9IDE7XG4gICAgICogY29uc3QgU09SVF9HUk9VUE5BTUUgPSAyO1xuICAgICAqIGh0dHBzOi8vZ2l0aHViLmNvbS9uZXh0Y2xvdWQvc2VydmVyL2Jsb2IvMjA4ZTM4ZTg0ZTFhMDdhNDk2OTlhYTkwZGM1YjcyNzJkMjQ0ODlmMC9saWIvcHJpdmF0ZS9Hcm91cC9NZXRhRGF0YS5waHAjTDM0XG4gICAgICovXG4gICAgaWYgKG9yZGVyQnkgPT09IDEpIHtcbiAgICAgICAgcmV0dXJuIGdyb3Vwcy5zb3J0KChhLCBiKSA9PiBhLnVzZXJjb3VudCA8IGIudXNlcmNvdW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZ3JvdXBzLnNvcnQoKGEsIGIpID0+IGEubmFtZS5sb2NhbGVDb21wYXJlKGIubmFtZSkpO1xuICAgIH1cbn1cblxuY29uc3Qgc3RhdGUgPSB7XG4gICAgdXNlcnM6IFtdLFxuICAgIGdyb3VwczogW10sXG4gICAgb3JkZXJCeTogMSxcbiAgICBtaW5QYXNzd29yZExlbmd0aDogMCxcbiAgICB1c2Vyc09mZnNldDogMCxcbiAgICB1c2Vyc0xpbWl0OiAyNSxcbiAgICB1c2VyQ291bnQ6IDBcbn07XG5cbmNvbnN0IG11dGF0aW9ucyA9IHtcbiAgICBhcHBlbmRVc2VycyhzdGF0ZSwgdXNlcnNPYmopIHtcbiAgICAgICAgLy8gY29udmVydCBvYmogdG8gYXJyYXlcbiAgICAgICAgbGV0IHVzZXJzID0gc3RhdGUudXNlcnMuY29uY2F0KE9iamVjdC5rZXlzKHVzZXJzT2JqKS5tYXAodXNlcmlkID0+IHVzZXJzT2JqW3VzZXJpZF0pKTtcbiAgICAgICAgc3RhdGUudXNlcnNPZmZzZXQgKz0gc3RhdGUudXNlcnNMaW1pdDtcbiAgICAgICAgc3RhdGUudXNlcnMgPSB1c2VycztcbiAgICB9LFxuICAgIHNldFBhc3N3b3JkUG9saWN5TWluTGVuZ3RoKHN0YXRlLCBsZW5ndGgpIHtcbiAgICAgICAgc3RhdGUubWluUGFzc3dvcmRMZW5ndGggPSBsZW5ndGghPT0nJyA/IGxlbmd0aCA6IDA7XG4gICAgfSxcbiAgICBpbml0R3JvdXBzKHN0YXRlLCB7Z3JvdXBzLCBvcmRlckJ5LCB1c2VyQ291bnR9KSB7XG4gICAgICAgIHN0YXRlLmdyb3VwcyA9IGdyb3VwcztcbiAgICAgICAgc3RhdGUub3JkZXJCeSA9IG9yZGVyQnk7XG4gICAgICAgIHN0YXRlLnVzZXJDb3VudCA9IHVzZXJDb3VudDtcbiAgICAgICAgc3RhdGUuZ3JvdXBzID0gb3JkZXJHcm91cHMoc3RhdGUuZ3JvdXBzLCBzdGF0ZS5vcmRlckJ5KTtcbiAgICB9LFxuICAgIGFkZEdyb3VwKHN0YXRlLCBncm91cGlkKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBzdGF0ZS5ncm91cHMucHVzaCh7XG4gICAgICAgICAgICAgICAgaWQ6IGdyb3VwaWQsXG4gICAgICAgICAgICAgICAgbmFtZTogZ3JvdXBpZCxcbiAgICAgICAgICAgICAgICB1c2VyY291bnQ6IDAgLy8gdXNlciB3aWxsIGJlIGFkZGVkIGFmdGVyIHRoZSBjcmVhdGlvblxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBzdGF0ZS5ncm91cHMgPSBvcmRlckdyb3VwcyhzdGF0ZS5ncm91cHMsIHN0YXRlLm9yZGVyQnkpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZygnQ2FuXFwndCBjcmVhdGUgZ3JvdXAnLCBlKTtcbiAgICAgICAgfVxuICAgIH0sXG4gICAgYWRkVXNlckdyb3VwKHN0YXRlLCB7IHVzZXJpZCwgZ2lkIH0pIHtcbiAgICAgICAgLy8gdGhpcyBzaG91bGQgbm90IGJlIG5lZWRlZCBhcyBpdCB3b3VsZCBtZWFucyB0aGUgdXNlciBjb250YWlucyBhIGdyb3VwXG4gICAgICAgIC8vIHRoZSBzZXJ2ZXIgZGF0YWJhc2UgZG9lc24ndCBoYXZlLlxuICAgICAgICBsZXQgZ3JvdXAgPSBzdGF0ZS5ncm91cHMuZmluZChncm91cFNlYXJjaCA9PiBncm91cFNlYXJjaC5pZCA9PSBnaWQpO1xuICAgICAgICBpZiAoZ3JvdXApIHtcbiAgICAgICAgICAgIGdyb3VwLnVzZXJjb3VudCsrOyAvLyBpbmNyZWFzZSBjb3VudFxuICAgICAgICB9XG4gICAgICAgIGxldCBncm91cHMgPSBzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpLmdyb3VwcztcbiAgICAgICAgZ3JvdXBzLnB1c2goZ2lkKTtcbiAgICAgICAgc3RhdGUuZ3JvdXBzID0gb3JkZXJHcm91cHMoc3RhdGUuZ3JvdXBzLCBzdGF0ZS5vcmRlckJ5KTtcbiAgICB9LFxuICAgIHJlbW92ZVVzZXJHcm91cChzdGF0ZSwgeyB1c2VyaWQsIGdpZCB9KSB7XG4gICAgICAgIC8vIHRoaXMgc2hvdWxkIG5vdCBiZSBuZWVkZWQgYXMgaXQgd291bGQgbWVhbnMgdGhlIHVzZXIgY29udGFpbnMgYSBncm91cFxuICAgICAgICAvLyB0aGUgc2VydmVyIGRhdGFiYXNlIGRvZXNuJ3QgaGF2ZS5cbiAgICAgICAgbGV0IGdyb3VwID0gc3RhdGUuZ3JvdXBzLmZpbmQoZ3JvdXBTZWFyY2ggPT4gZ3JvdXBTZWFyY2guaWQgPT0gZ2lkKTtcbiAgICAgICAgaWYgKGdyb3VwKSB7XG4gICAgICAgICAgICBncm91cC51c2VyY291bnQtLTsgLy8gbG93ZXIgY291bnRcbiAgICAgICAgfVxuICAgICAgICBsZXQgZ3JvdXBzID0gc3RhdGUudXNlcnMuZmluZCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKS5ncm91cHM7XG4gICAgICAgIGdyb3Vwcy5zcGxpY2UoZ3JvdXBzLmluZGV4T2YoZ2lkKSwxKTtcbiAgICAgICAgc3RhdGUuZ3JvdXBzID0gb3JkZXJHcm91cHMoc3RhdGUuZ3JvdXBzLCBzdGF0ZS5vcmRlckJ5KTtcbiAgICB9LFxuICAgIGFkZFVzZXJTdWJBZG1pbihzdGF0ZSwgeyB1c2VyaWQsIGdpZCB9KSB7XG4gICAgICAgIGxldCBncm91cHMgPSBzdGF0ZS51c2Vycy5maW5kKHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpLnN1YmFkbWluO1xuICAgICAgICBncm91cHMucHVzaChnaWQpO1xuICAgIH0sXG4gICAgcmVtb3ZlVXNlclN1YkFkbWluKHN0YXRlLCB7IHVzZXJpZCwgZ2lkIH0pIHtcbiAgICAgICAgbGV0IGdyb3VwcyA9IHN0YXRlLnVzZXJzLmZpbmQodXNlciA9PiB1c2VyLmlkID09IHVzZXJpZCkuc3ViYWRtaW47XG4gICAgICAgIGdyb3Vwcy5zcGxpY2UoZ3JvdXBzLmluZGV4T2YoZ2lkKSwxKTtcbiAgICB9LFxuICAgIGRlbGV0ZVVzZXIoc3RhdGUsIHVzZXJpZCkge1xuICAgICAgICBsZXQgdXNlckluZGV4ID0gc3RhdGUudXNlcnMuZmluZEluZGV4KHVzZXIgPT4gdXNlci5pZCA9PSB1c2VyaWQpO1xuICAgICAgICBzdGF0ZS51c2Vycy5zcGxpY2UodXNlckluZGV4LCAxKTtcbiAgICB9LFxuICAgIGFkZFVzZXJEYXRhKHN0YXRlLCByZXNwb25zZSkge1xuICAgICAgICBzdGF0ZS51c2Vycy5wdXNoKHJlc3BvbnNlLmRhdGEub2NzLmRhdGEpO1xuICAgIH0sXG4gICAgZW5hYmxlRGlzYWJsZVVzZXIoc3RhdGUsIHsgdXNlcmlkLCBlbmFibGVkIH0pIHtcbiAgICAgICAgc3RhdGUudXNlcnMuZmluZCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKS5lbmFibGVkID0gZW5hYmxlZDtcbiAgICAgICAgLy8gaW5jcmVtZW50IG9yIG5vdFxuICAgICAgICBzdGF0ZS5ncm91cHMuZmluZChncm91cCA9PiBncm91cC5pZCA9PSAnX2Rpc2FibGVkJykudXNlcmNvdW50ICs9IGVuYWJsZWQgPyAtMSA6IDE7XG4gICAgICAgIHN0YXRlLnVzZXJDb3VudCArPSBlbmFibGVkID8gMSA6IC0xO1xuICAgICAgICBjb25zb2xlLmxvZyhlbmFibGVkKTtcbiAgICB9LFxuICAgIHNldFVzZXJEYXRhKHN0YXRlLCB7IHVzZXJpZCwga2V5LCB2YWx1ZSB9KSB7XG4gICAgICAgIGlmIChrZXkgPT09ICdxdW90YScpIHtcbiAgICAgICAgICAgIGxldCBodW1hblZhbHVlID0gT0MuVXRpbC5jb21wdXRlckZpbGVTaXplKHZhbHVlKTtcbiAgICAgICAgICAgIHN0YXRlLnVzZXJzLmZpbmQodXNlciA9PiB1c2VyLmlkID09IHVzZXJpZClba2V5XVtrZXldID0gaHVtYW5WYWx1ZT9odW1hblZhbHVlOnZhbHVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3RhdGUudXNlcnMuZmluZCh1c2VyID0+IHVzZXIuaWQgPT0gdXNlcmlkKVtrZXldID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogUmVzZXQgdXNlcnMgbGlzdFxuICAgICAqL1xuICAgIHJlc2V0VXNlcnMoc3RhdGUpIHtcbiAgICAgICAgc3RhdGUudXNlcnMgPSBbXTtcbiAgICAgICAgc3RhdGUudXNlcnNPZmZzZXQgPSAwO1xuICAgIH1cbn07XG5cbmNvbnN0IGdldHRlcnMgPSB7XG4gICAgZ2V0VXNlcnMoc3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIHN0YXRlLnVzZXJzO1xuICAgIH0sXG4gICAgZ2V0R3JvdXBzKHN0YXRlKSB7XG4gICAgICAgIHJldHVybiBzdGF0ZS5ncm91cHM7XG4gICAgfSxcbiAgICBnZXRQYXNzd29yZFBvbGljeU1pbkxlbmd0aChzdGF0ZSkge1xuICAgICAgICByZXR1cm4gc3RhdGUubWluUGFzc3dvcmRMZW5ndGg7XG4gICAgfSxcbiAgICBnZXRVc2Vyc09mZnNldChzdGF0ZSkge1xuICAgICAgICByZXR1cm4gc3RhdGUudXNlcnNPZmZzZXQ7XG4gICAgfSxcbiAgICBnZXRVc2Vyc0xpbWl0KHN0YXRlKSB7XG4gICAgICAgIHJldHVybiBzdGF0ZS51c2Vyc0xpbWl0O1xuICAgIH0sXG4gICAgZ2V0VXNlckNvdW50KHN0YXRlKSB7XG4gICAgICAgIHJldHVybiBzdGF0ZS51c2VyQ291bnQ7XG4gICAgfVxufTtcblxuY29uc3QgYWN0aW9ucyA9IHtcblxuICAgIC8qKlxuICAgICAqIEdldCBhbGwgdXNlcnMgd2l0aCBmdWxsIGRldGFpbHNcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gICAgICogQHBhcmFtIHtpbnR9IG9wdGlvbnMub2Zmc2V0IExpc3Qgb2Zmc2V0IHRvIHJlcXVlc3RcbiAgICAgKiBAcGFyYW0ge2ludH0gb3B0aW9ucy5saW1pdCBMaXN0IG51bWJlciB0byByZXR1cm4gZnJvbSBvZmZzZXRcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5zZWFyY2ggU2VhcmNoIGFtb25nc3QgdXNlcnNcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5ncm91cCBHZXQgdXNlcnMgZnJvbSBncm91cFxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgICAqL1xuICAgIGdldFVzZXJzKGNvbnRleHQsIHsgb2Zmc2V0LCBsaW1pdCwgc2VhcmNoLCBncm91cCB9KSB7XG4gICAgICAgIHNlYXJjaCA9IHR5cGVvZiBzZWFyY2ggPT09ICdzdHJpbmcnID8gc2VhcmNoIDogJyc7XG4gICAgICAgIGdyb3VwID0gdHlwZW9mIGdyb3VwID09PSAnc3RyaW5nJyA/IGdyb3VwIDogJyc7XG4gICAgICAgIGlmIChncm91cCAhPT0gJycpIHtcbiAgICAgICAgICAgIHJldHVybiBhcGkuZ2V0KE9DLmxpbmtUb09DUyhgY2xvdWQvZ3JvdXBzLyR7Z3JvdXB9L3VzZXJzL2RldGFpbHM/b2Zmc2V0PSR7b2Zmc2V0fSZsaW1pdD0ke2xpbWl0fSZzZWFyY2g9JHtzZWFyY2h9YCwgMikpXG4gICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmtleXMocmVzcG9uc2UuZGF0YS5vY3MuZGF0YS51c2VycykubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0LmNvbW1pdCgnYXBwZW5kVXNlcnMnLCByZXNwb25zZS5kYXRhLm9jcy5kYXRhLnVzZXJzKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCBlcnJvcikpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGFwaS5nZXQoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy9kZXRhaWxzP29mZnNldD0ke29mZnNldH0mbGltaXQ9JHtsaW1pdH0mc2VhcmNoPSR7c2VhcmNofWAsIDIpKVxuICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKE9iamVjdC5rZXlzKHJlc3BvbnNlLmRhdGEub2NzLmRhdGEudXNlcnMpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dC5jb21taXQoJ2FwcGVuZFVzZXJzJywgcmVzcG9uc2UuZGF0YS5vY3MuZGF0YS51c2Vycyk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogR2V0IGFsbCB1c2VycyB3aXRoIGZ1bGwgZGV0YWlsc1xuICAgICAqIFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG4gICAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcbiAgICAgKiBAcGFyYW0ge2ludH0gb3B0aW9ucy5vZmZzZXQgTGlzdCBvZmZzZXQgdG8gcmVxdWVzdFxuICAgICAqIEBwYXJhbSB7aW50fSBvcHRpb25zLmxpbWl0IExpc3QgbnVtYmVyIHRvIHJldHVybiBmcm9tIG9mZnNldFxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgICAqL1xuICAgIGdldFVzZXJzRnJvbUxpc3QoY29udGV4dCwgeyBvZmZzZXQsIGxpbWl0LCBzZWFyY2ggfSkge1xuICAgICAgICBzZWFyY2ggPSB0eXBlb2Ygc2VhcmNoID09PSAnc3RyaW5nJyA/IHNlYXJjaCA6ICcnO1xuICAgICAgICByZXR1cm4gYXBpLmdldChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzL2RldGFpbHM/b2Zmc2V0PSR7b2Zmc2V0fSZsaW1pdD0ke2xpbWl0fSZzZWFyY2g9JHtzZWFyY2h9YCwgMikpXG4gICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmtleXMocmVzcG9uc2UuZGF0YS5vY3MuZGF0YS51c2VycykubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0LmNvbW1pdCgnYXBwZW5kVXNlcnMnLCByZXNwb25zZS5kYXRhLm9jcy5kYXRhLnVzZXJzKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCBlcnJvcikpO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBHZXQgYWxsIHVzZXJzIHdpdGggZnVsbCBkZXRhaWxzIGZyb20gYSBncm91cGlkXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICAgICAqIEBwYXJhbSB7aW50fSBvcHRpb25zLm9mZnNldCBMaXN0IG9mZnNldCB0byByZXF1ZXN0XG4gICAgICogQHBhcmFtIHtpbnR9IG9wdGlvbnMubGltaXQgTGlzdCBudW1iZXIgdG8gcmV0dXJuIGZyb20gb2Zmc2V0XG4gICAgICogQHJldHVybnMge1Byb21pc2V9XG4gICAgICovXG4gICAgZ2V0VXNlcnNGcm9tR3JvdXAoY29udGV4dCwgeyBncm91cGlkLCBvZmZzZXQsIGxpbWl0IH0pIHtcbiAgICAgICAgcmV0dXJuIGFwaS5nZXQoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy8ke2dyb3VwaWR9L2RldGFpbHM/b2Zmc2V0PSR7b2Zmc2V0fSZsaW1pdD0ke2xpbWl0fWAsIDIpKVxuICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnZ2V0VXNlcnNGcm9tTGlzdCcsIHJlc3BvbnNlLmRhdGEub2NzLmRhdGEudXNlcnMpKVxuICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcbiAgICB9LFxuICAgIFxuXG4gICAgZ2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgoY29udGV4dCkge1xuICAgICAgICByZXR1cm4gYXBpLmdldChPQy5saW5rVG9PQ1MoJ2FwcHMvcHJvdmlzaW9uaW5nX2FwaS9hcGkvdjEvY29uZmlnL2FwcHMvcGFzc3dvcmRfcG9saWN5L21pbkxlbmd0aCcsIDIpKVxuICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnc2V0UGFzc3dvcmRQb2xpY3lNaW5MZW5ndGgnLCByZXNwb25zZS5kYXRhLm9jcy5kYXRhLmRhdGEpKVxuICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogQWRkIGdyb3VwXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gZ2lkIEdyb3VwIGlkXG4gICAgICogQHJldHVybnMge1Byb21pc2V9XG4gICAgICovXG4gICAgYWRkR3JvdXAoY29udGV4dCwgZ2lkKSB7XG4gICAgICAgIHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBhcGkucG9zdChPQy5saW5rVG9PQ1MoYGNsb3VkL2dyb3Vwc2AsIDIpLCB7Z3JvdXBpZDogZ2lkfSlcbiAgICAgICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdhZGRHcm91cCcsIGdpZCkpXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcbiAgICAgICAgfSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSBncm91cFxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGdpZCBHcm91cCBpZFxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgICAqL1xuICAgIHJlbW92ZUdyb3VwKGNvbnRleHQsIGdpZCkge1xuICAgICAgICByZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYXBpLnBvc3QoT0MubGlua1RvT0NTKGBjbG91ZC9ncm91cHNgLCAyKSwge2dyb3VwaWQ6IGdpZH0pXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgncmVtb3ZlR3JvdXAnLCBnaWQpKVxuICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIGVycm9yKSk7XG4gICAgICAgIH0pO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdXNlciB0byBncm91cFxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG4gICAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy51c2VyaWQgVXNlciBpZFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmdpZCBHcm91cCBpZFxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgICAqL1xuICAgIGFkZFVzZXJHcm91cChjb250ZXh0LCB7IHVzZXJpZCwgZ2lkIH0pIHtcbiAgICAgICAgcmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGFwaS5wb3N0KE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9L2dyb3Vwc2AsIDIpLCB7IGdyb3VwaWQ6IGdpZCB9KVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ2FkZFVzZXJHcm91cCcsIHsgdXNlcmlkLCBnaWQgfSkpXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcbiAgICAgICAgfSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB1c2VyIGZyb20gZ3JvdXBcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5naWQgR3JvdXAgaWRcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICByZW1vdmVVc2VyR3JvdXAoY29udGV4dCwgeyB1c2VyaWQsIGdpZCB9KSB7XG4gICAgICAgIHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBhcGkuZGVsZXRlKE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9L2dyb3Vwc2AsIDIpLCB7IGdyb3VwaWQ6IGdpZCB9KVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ3JlbW92ZVVzZXJHcm91cCcsIHsgdXNlcmlkLCBnaWQgfSkpXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgeyB1c2VyaWQsIGVycm9yIH0pKTtcbiAgICAgICAgfSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIEFkZCB1c2VyIHRvIGdyb3VwIGFkbWluXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnVzZXJpZCBVc2VyIGlkXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuZ2lkIEdyb3VwIGlkXG4gICAgICogQHJldHVybnMge1Byb21pc2V9XG4gICAgICovXG4gICAgYWRkVXNlclN1YkFkbWluKGNvbnRleHQsIHsgdXNlcmlkLCBnaWQgfSkge1xuICAgICAgICByZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYXBpLnBvc3QoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy8ke3VzZXJpZH0vc3ViYWRtaW5zYCwgMiksICB7IGdyb3VwaWQ6IGdpZCB9KVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ2FkZFVzZXJTdWJBZG1pbicsIHsgdXNlcmlkLCBnaWQgfSkpXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgZXJyb3IpKTtcbiAgICAgICAgfSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB1c2VyIGZyb20gZ3JvdXAgYWRtaW5cbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMudXNlcmlkIFVzZXIgaWRcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5naWQgR3JvdXAgaWRcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICByZW1vdmVVc2VyU3ViQWRtaW4oY29udGV4dCwgeyB1c2VyaWQsIGdpZCB9KSB7XG4gICAgICAgIHJldHVybiBhcGkucmVxdWlyZUFkbWluKCkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBhcGkuZGVsZXRlKE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9L3N1YmFkbWluc2AsIDIpLCB7IGdyb3VwaWQ6IGdpZCB9KVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gY29udGV4dC5jb21taXQoJ3JlbW92ZVVzZXJTdWJBZG1pbicsIHsgdXNlcmlkLCBnaWQgfSkpXG4gICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gY29udGV4dC5jb21taXQoJ0FQSV9GQUlMVVJFJywgeyB1c2VyaWQsIGVycm9yIH0pKTtcbiAgICAgICAgfSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIERlbGV0ZSBhIHVzZXJcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSB1c2VyaWQgVXNlciBpZCBcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICBkZWxldGVVc2VyKGNvbnRleHQsIHsgdXNlcmlkIH0pIHtcbiAgICAgICAgcmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGFwaS5kZWxldGUoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy8ke3VzZXJpZH1gLCAyKSlcbiAgICAgICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdkZWxldGVVc2VyJywgdXNlcmlkKSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogQWRkIGEgdXNlclxuICAgICAqIFxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0XG4gICAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy51c2VyaWQgVXNlciBpZFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnBhc3N3b3JkIFVzZXIgcGFzc3dvcmQgXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMuZW1haWwgVXNlciBlbWFpbFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmdyb3VwcyBVc2VyIGdyb3Vwc1xuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnN1YmFkbWluIFVzZXIgc3ViYWRtaW4gZ3JvdXBzXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMucXVvdGEgVXNlciBlbWFpbFxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgICAqL1xuICAgIGFkZFVzZXIoe2NvbnRleHQsIGRpc3BhdGNofSwgeyB1c2VyaWQsIHBhc3N3b3JkLCBlbWFpbCwgZ3JvdXBzLCBzdWJhZG1pbiwgcXVvdGEgfSkge1xuICAgICAgICBjb25zb2xlLmxvZyhzdWJhZG1pbiwgcXVvdGEpO1xuICAgICAgICByZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYXBpLnBvc3QoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vyc2AsIDIpLCB7IHVzZXJpZCwgcGFzc3dvcmQsIGVtYWlsLCBncm91cHMsIHN1YmFkbWluLCBxdW90YSB9KVxuICAgICAgICAgICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gIHtcbiAgICAgICAgICAgICAgICAgICAgLy9sZXQgcXVvdGFEaXMgPSBkaXNwYXRjaCgnc2V0VXNlckRhdGEnLCB7IHVzZXJpZCwga2V5OiAncXVvdGEnLCB2YWx1ZTpxdW90YSB9KTtcbiAgICAgICAgICAgICAgICAgICAgLy9sZXQgc3ViYWRtaW5EaXMgPSBkaXNwYXRjaCgnYWRkVXNlclN1YkFkbWluJywgdXNlcmlkKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIHsgdXNlcmlkLCBlcnJvciB9KSk7XG4gICAgICAgIH0pO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBHZXQgdXNlciBkYXRhIGFuZCBjb21taXQgYWRkaXRpb25cbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSB1c2VyaWQgVXNlciBpZCBcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICBhZGRVc2VyRGF0YShjb250ZXh0LCB1c2VyaWQpIHtcbiAgICAgICAgcmV0dXJuIGFwaS5yZXF1aXJlQWRtaW4oKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGFwaS5nZXQoT0MubGlua1RvT0NTKGBjbG91ZC91c2Vycy8ke3VzZXJpZH1gLCAyKSlcbiAgICAgICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IGNvbnRleHQuY29tbWl0KCdhZGRVc2VyRGF0YScsIHJlc3BvbnNlKSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqIEVuYWJsZSBvciBkaXNhYmxlIHVzZXIgXG4gICAgICogXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNvbnRleHRcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnVzZXJpZCBVc2VyIGlkXG4gICAgICogQHBhcmFtIHtib29sZWFufSBvcHRpb25zLmVuYWJsZWQgVXNlciBlbmFibGVtZW50IHN0YXR1c1xuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgICAqL1xuICAgIGVuYWJsZURpc2FibGVVc2VyKGNvbnRleHQsIHsgdXNlcmlkLCBlbmFibGVkID0gdHJ1ZSB9KSB7XG4gICAgICAgIGxldCB1c2VyU3RhdHVzID0gZW5hYmxlZCA/ICdlbmFibGUnIDogJ2Rpc2FibGUnO1xuICAgICAgICByZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYXBpLnB1dChPQy5saW5rVG9PQ1MoYGNsb3VkL3VzZXJzLyR7dXNlcmlkfS8ke3VzZXJTdGF0dXN9YCwgMikpXG4gICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnZW5hYmxlRGlzYWJsZVVzZXInLCB7IHVzZXJpZCwgZW5hYmxlZCB9KSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb250ZXh0LmNvbW1pdCgnQVBJX0ZBSUxVUkUnLCB7IHVzZXJpZCwgZXJyb3IgfSkpO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogRWRpdCB1c2VyIGRhdGFcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY29udGV4dCBcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnVzZXJpZCBVc2VyIGlkXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMua2V5IFVzZXIgZmllbGQgdG8gZWRpdFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLnZhbHVlIFZhbHVlIG9mIHRoZSBjaGFuZ2VcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX1cbiAgICAgKi9cbiAgICBzZXRVc2VyRGF0YShjb250ZXh0LCB7IHVzZXJpZCwga2V5LCB2YWx1ZSB9KSB7XG4gICAgICAgIGlmIChbJ2VtYWlsJywgJ3F1b3RhJywgJ2Rpc3BsYXluYW1lJywgJ3Bhc3N3b3JkJ10uaW5kZXhPZihrZXkpICE9PSAtMSkge1xuICAgICAgICAgICAgLy8gV2UgYWxsb3cgZW1wdHkgZW1haWwgb3IgZGlzcGxheW5hbWVcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmXG4gICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAoWydxdW90YScsICdwYXNzd29yZCddLmluZGV4T2Yoa2V5KSAhPT0gLTEgJiYgdmFsdWUubGVuZ3RoID4gMCkgfHxcbiAgICAgICAgICAgICAgICAgICAgWydlbWFpbCcsICdkaXNwbGF5bmFtZSddLmluZGV4T2Yoa2V5KSAhPT0gLTFcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYXBpLnJlcXVpcmVBZG1pbigpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBhcGkucHV0KE9DLmxpbmtUb09DUyhgY2xvdWQvdXNlcnMvJHt1c2VyaWR9YCwgMiksIHsga2V5OiBrZXksIHZhbHVlOiB2YWx1ZSB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiBjb250ZXh0LmNvbW1pdCgnc2V0VXNlckRhdGEnLCB7IHVzZXJpZCwga2V5LCB2YWx1ZSB9KSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IGNvbnRleHQuY29tbWl0KCdBUElfRkFJTFVSRScsIHsgdXNlcmlkLCBlcnJvciB9KSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcignSW52YWxpZCByZXF1ZXN0IGRhdGEnKSk7XG4gICAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgeyBzdGF0ZSwgbXV0YXRpb25zLCBnZXR0ZXJzLCBhY3Rpb25zIH07XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3N0b3JlL3VzZXJzLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///53\n"); /***/ }), /* 54 */ diff --git a/settings/src/components/popoverMenu/popoverItem.vue b/settings/src/components/popoverMenu/popoverItem.vue index 84907341327..343c4638005 100644 --- a/settings/src/components/popoverMenu/popoverItem.vue +++ b/settings/src/components/popoverMenu/popoverItem.vue @@ -1,10 +1,10 @@ @@ -132,6 +138,12 @@ export default { settings() { return this.$store.getters.getServerData; }, + filteredUsers() { + if (this.route.hash === '#group_disabled') { + return this.users.filter(user => user.enabled !== true); + } + return this.users.filter(user => user.enabled === true); + }, groups() { // data provided php side + remove the disabled group return this.$store.getters.getGroups.filter(group => group.id !== '_disabled'); @@ -156,7 +168,30 @@ export default { }, usersLimit() { return this.$store.getters.getUsersLimit; - }, + }, + route() { + return this.$store.getters.getRoute; + }, + // get selected hash + selectedGroup() { + let hash = this.route.hash; + if (typeof hash === 'string' && hash.length > 0) { + // we have a valid hash: groupXXXX + // group_XXXX are reserved groups + let split = hash.split('group'); + if (split.length === 2 && split[1].charAt(0) !== '_') { + return hash.split('group')[1]; + } + } + return ''; + } + }, + watch: { + // watch url change and group select + selectedGroup: function (val, old) { + this.$store.commit('resetUsers'); + this.$refs.infiniteLoading.$emit('$InfiniteLoading:reset'); + } }, methods: { onScroll(event) { @@ -182,7 +217,7 @@ export default { }, infiniteHandler($state) { - this.$store.dispatch('getUsers', {offset:this.usersOffset, limit:this.usersLimit}) + this.$store.dispatch('getUsers', {offset:this.usersOffset, limit:this.usersLimit, group:this.selectedGroup}) .then((response) => {response?$state.loaded():$state.complete()}); }, @@ -197,8 +232,10 @@ export default { userid: this.newUser.id, password: this.newUser.password, email: this.newUser.mailAddress, - groups: this.newUser.groups.map(group => group.id) - }).then(() =>this.resetForm()); + groups: this.newUser.groups.map(group => group.id), + subadmin: this.newUser.subAdminsGroups.map(group => group.id), + quota: this.newUser.quota.id + }).then(() => this.resetForm()); } } } diff --git a/settings/src/components/userList/userRow.vue b/settings/src/components/userList/userRow.vue index 816b0a33fa3..bc2ef228db8 100644 --- a/settings/src/components/userList/userRow.vue +++ b/settings/src/components/userList/userRow.vue @@ -1,6 +1,6 @@