{"version":3,"sources":["webpack:///./src/views/Settings/Users.vue?3370","webpack:///./src/components/UsersTable.vue?db3a","webpack:///./src/components/UserForm.vue?0ee3","webpack:///./src/shared/models/userModel.ts","webpack:///./src/components/UserForm.vue","webpack:///./src/components/UserForm.vue?5075","webpack:///./src/components/UserForm.vue?9991","webpack:///./src/components/UsersTable.vue","webpack:///./src/components/UsersTable.vue?36a7","webpack:///./src/components/UsersTable.vue?79a6","webpack:///./src/views/Settings/Users.vue","webpack:///./src/views/Settings/Users.vue?062d","webpack:///./src/views/Settings/Users.vue?9f55","webpack:///./src/components/UserForm.vue?c554","webpack:///./src/components/UsersTable.vue?8c4d","webpack:///./src/views/Settings/Users.vue?471c"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","key","sensitiveKey","class","$vuetify","breakpoint","xsOnly","staticRenderFns","attrs","loading","headers","list","result","count","options","settingsOpen","on","$event","rowDoubleClick","scopedSlots","_u","fn","ref","header","text","stopPropagation","model","value","filters","callback","$$v","$set","expression","item","_v","_s","$d","Date","createdOn","proxy","_g","_b","openItemDetails","$t","forgottenPassword","sendUserInvite","deleteItem","length","_e","addItem","userFormOpen","userFormUserId","load","open","initialUser","user","isFormValid","$emit","submit","theme","dark","submitDisabled","tab","showDeletedProperties","close","id","fkey","preventDefault","apply","arguments","userIsPropertyUnitOwner","rules","Required","concat","Name","canEditPersonalData","Email","TelephoneNumber","userId","_l","role","textResourceKey","descriptionTextResourceKey","eVisitorServiceName","eVisitorIntegrationName","loadingProperties","translatedHeaders","items","selectProperty","areAllPropertiesSelected","selectAllProperties","nameFilter","addressFilter","postalCodeFilter","name","status","selected","selectedOwners","allOwners","fiscalOperatorNotEmpty","OperatorName","fiscalOperatorEmptyOrRequired","operatorName","OperatorCode","operatorCode","OperatorPID","operatorOIB","fresh","old","loadAllOwners","loadUser","cloneDeep","isOwnedByActiveTenant","rolesIds","$refs","form","appRoles","sort","a","b","ownerRoles","PropertyOwnerLevel1","PropertyOwnerLevel1a","PropertyOwnerLevel2","PropertyOwnerLevel3","PropertyOwnerLevel3a","some","e","includes","setUpRules","loadAppRoles","test","axios","get","then","res","data","filter","r","SysAdmin","properties","x","propertiesIds","propertyId","customersIds","params","$count","$skip","$orderby","push","loadProperties","finally","s","toLowerCase","address","postalCodeAndCity","prop","index","findIndex","splice","selectedIndex","acc","map","customerTypeId","Owner","rightDrawer","clickOverlay","validate","$store","dispatch","color","message","timeout","personalData","username","firstName","lastName","eMail","telephoneNumber","undefined","operatorData","IsDefaultTenantOperator","isDefaultTenantOperator","put","refreshFilter","post","userExists","isEmailMatch","actions","fun","createUserConfirm","eVisitorIntegration","None","default","components","RightDrawer","FormDescription","NoData","DateField","SelectedItemsTable","component","VBtn","VCheckbox","VChip","VCol","VDataTable","VForm","VIcon","VProgressLinear","VRow","VSpacer","VTab","VTabItem","VTabs","VTabsItems","VTextField","VToolbar","VTooltip","active","exportHeaders","sortable","page","itemsPerPage","sortBy","sortDesc","groupBy","groupDesc","multiSort","mustSort","val","debouncedLoad","deleteItemConfirm","delete","initLoaded","queryParams","$top","resetEmailSent","errors","deep","GenericPMSTableMenu","SortableHeadersTable","UserForm","directives","SortableTable","VList","VListItem","VListItemContent","VListItemIcon","VListItemTitle","VMenu","UsersTable","mixins","GlobalFilterSensitiveMixin"],"mappings":"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","file":"js/chunk-dc8349f8.7037a520.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"users\"},[_c('UsersTable',{key:_vm.sensitiveKey,staticClass:\"users-table\",class:(_vm.$vuetify.breakpoint.xsOnly ? 'xs mt-4' :'' )})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"users\"},[_c('SortableHeadersTable',{staticClass:\"usersTable\",attrs:{\"fixed-header\":\"\",\"height\":\"100%\",\"item-key\":\"id\",\"loading\":_vm.loading,\"headers\":_vm.headers,\"items\":_vm.list.result,\"server-items-length\":_vm.list.count,\"options\":_vm.options,\"footer-props\":{'items-per-page-options':[15,25,50,100]},\"settingsOpen\":_vm.settingsOpen,\"tableName\":\"users\"},on:{\"update:headers\":function($event){_vm.headers=$event},\"update:options\":function($event){_vm.options=$event},\"update:settingsOpen\":function($event){_vm.settingsOpen=$event},\"update:settings-open\":function($event){_vm.settingsOpen=$event},\"dblclick:row\":_vm.rowDoubleClick},scopedSlots:_vm._u([{key:\"header.username\",fn:function(ref){\nvar header = ref.header;\nreturn [_c('v-text-field',{staticClass:\"header-filter\",attrs:{\"label\":header.text},on:{\"click\":function($event){$event.stopPropagation();}},model:{value:(_vm.filters.username),callback:function ($$v) {_vm.$set(_vm.filters, \"username\", $$v)},expression:\"filters.username\"}})]}},{key:\"header.firstName\",fn:function(ref){\nvar header = ref.header;\nreturn [_c('v-text-field',{staticClass:\"header-filter\",attrs:{\"label\":header.text},on:{\"click\":function($event){$event.stopPropagation();}},model:{value:(_vm.filters.firstName),callback:function ($$v) {_vm.$set(_vm.filters, \"firstName\", $$v)},expression:\"filters.firstName\"}})]}},{key:\"header.lastName\",fn:function(ref){\nvar header = ref.header;\nreturn [_c('v-text-field',{staticClass:\"header-filter\",attrs:{\"label\":header.text},on:{\"click\":function($event){$event.stopPropagation();}},model:{value:(_vm.filters.lastName),callback:function ($$v) {_vm.$set(_vm.filters, \"lastName\", $$v)},expression:\"filters.lastName\"}})]}},{key:\"header.eMail\",fn:function(ref){\nvar header = ref.header;\nreturn [_c('v-text-field',{staticClass:\"header-filter\",attrs:{\"label\":header.text},on:{\"click\":function($event){$event.stopPropagation();}},model:{value:(_vm.filters.eMail),callback:function ($$v) {_vm.$set(_vm.filters, \"eMail\", $$v)},expression:\"filters.eMail\"}})]}},{key:\"header.createdOn\",fn:function(ref){\nvar header = ref.header;\nreturn [_c('DateField',{staticClass:\"header-filter\",attrs:{\"label\":header.text,\"outlined\":false,\"clearable\":true},on:{\"click\":function($event){$event.stopPropagation();}},model:{value:(_vm.filters.createdOn),callback:function ($$v) {_vm.$set(_vm.filters, \"createdOn\", $$v)},expression:\"filters.createdOn\"}})]}},{key:\"item.createdOn\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('div',[_vm._v(_vm._s(_vm.$d(new Date(item.createdOn))))])]}},{key:\"header.actions\",fn:function(){return [_c('v-btn',{ref:\"settings\",attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.settingsOpen = true;}}},[_c('v-icon',[_vm._v(\"fal fa-fw fa-cog\")])],1)]},proxy:true},{key:\"item.actions\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('v-menu',{attrs:{\"bottom\":\"\",\"left\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({attrs:{\"small\":\"\",\"icon\":\"\"}},'v-btn',attrs,false),on),[_c('v-icon',[_vm._v(\"fal fa-fw fa-ellipsis-v\")])],1)]}}],null,true)},[_c('v-list',[_c('v-list-item',{attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.openItemDetails(item)}}},[_c('v-list-item-icon',[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"primary\"}},[_vm._v(\"fal fa-pen\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"Edit\")))])],1)],1),_c('v-list-item',{attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.forgottenPassword(item)}}},[_c('v-list-item-icon',[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"primary\"}},[_vm._v(\"fal fa-key\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"ForgottenPassword\")))])],1)],1),_c('v-list-item',{attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.sendUserInvite(item)}}},[_c('v-list-item-icon',[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"primary\"}},[_vm._v(\"fal fa-recycle\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"UserInvite\")))])],1)],1),_c('v-list-item',{attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.deleteItem(item)}}},[_c('v-list-item-icon',[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"red\"}},[_vm._v(\"fal fa-trash\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"Delete\")))])],1)],1)],1)],1)]}},{key:\"body.append\",fn:function(){return [((!_vm.list.result || _vm.list.result.length == 0) && !_vm.loading)?_c('td',{attrs:{\"colspan\":_vm.headers.length}},[_c('NoData',{attrs:{\"icon\":\"fal fa-users\"}})],1):_vm._e()]},proxy:true}])}),_c('v-btn',{staticClass:\"add-button\",attrs:{\"fab\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.addItem()}}},[_c('v-icon',[_vm._v(\"fal fa-plus\")])],1),_c('UserForm',{attrs:{\"open\":_vm.userFormOpen,\"userId\":_vm.userFormUserId,\"callback\":_vm.load},on:{\"update:open\":function($event){_vm.userFormOpen=$event}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('RightDrawer',{ref:\"drawer\",staticClass:\"drawer\",attrs:{\"open\":_vm.open,\"initial\":_vm.initialUser,\"watched\":_vm.user,\"is-watched-valid\":_vm.isFormValid},on:{\"update:open\":function($event){return _vm.$emit('update:open', $event)},\"save\":_vm.submit},scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('div',{staticClass:\"user-form-actions\",class:{ 'theme--dark': _vm.$vuetify.theme.dark }},[_c('v-btn',{attrs:{\"color\":\"primary\",\"disabled\":!_vm.submitDisabled},on:{\"click\":_vm.submit}},[_vm._v(\" \"+_vm._s(_vm.$t(\"Save\"))+\" \")]),_c('div',{staticClass:\"spacer-btn-checkbox\"}),(_vm.tab == 1)?_c('v-checkbox',{staticClass:\"with-deleted\",attrs:{\"label\":_vm.$t('ShowDeletedProperties'),\"hide-details\":\"\"},model:{value:(_vm.showDeletedProperties),callback:function ($$v) {_vm.showDeletedProperties=$$v},expression:\"showDeletedProperties\"}}):_vm._e(),_c('v-spacer'),_c('v-btn',{on:{\"click\":_vm.close}},[_vm._v(_vm._s(_vm.$t(\"Close\")))])],1)]},proxy:true}])},[_c('v-toolbar',[_c('div',{staticClass:\"user-form-title\"},[(!!_vm.user.id)?_c('span',[_vm._v(_vm._s(_vm.$t(\"User.Editing\")))]):_vm._e(),(!_vm.user.id)?_c('span',[_vm._v(_vm._s(_vm.$t(\"User.New\")))]):_vm._e()])]),_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"active\":_vm.loading,\"bottom\":\"\"}}),_c('v-form',{key:_vm.fkey,ref:\"form\",staticClass:\"form\",attrs:{\"disabled\":_vm.loading},on:{\"submit\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}},model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-tabs',{attrs:{\"grow\":\"\",\"show-arrows\":\"\",\"center-active\":\"\"},model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab',[_vm._v(_vm._s(_vm.$t(\"Basic information\")))]),(!_vm.userIsPropertyUnitOwner)?_c('v-tab',[_vm._v(_vm._s(_vm.$t(\"Property access\")))]):_vm._e(),(_vm.userIsPropertyUnitOwner)?_c('v-tab',[_vm._v(_vm._s(_vm.$t(\"UserForm.OwnersTab\")))]):_vm._e(),_c('v-tab',[_vm._v(_vm._s(_vm.$t(\"FiscalisationOperators.Title\")))])],1),_c('v-tabs-items',{staticClass:\"tab-items\",model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab-item',{staticClass:\"tab-item\"},[_c('v-text-field',{attrs:{\"label\":_vm.$t('User.Username') + '*',\"rules\":(_vm.rules.Required || []).concat( (_vm.rules.Name || [])),\"disabled\":!_vm.canEditPersonalData},model:{value:(_vm.user.username),callback:function ($$v) {_vm.$set(_vm.user, \"username\", $$v)},expression:\"user.username\"}}),_c('v-text-field',{attrs:{\"label\":_vm.$t('User.Firstname') + '*',\"rules\":(_vm.rules.Required || []).concat( (_vm.rules.Name || [])),\"disabled\":!_vm.canEditPersonalData},model:{value:(_vm.user.firstName),callback:function ($$v) {_vm.$set(_vm.user, \"firstName\", $$v)},expression:\"user.firstName\"}}),_c('v-text-field',{attrs:{\"label\":_vm.$t('User.Lastname') + '*',\"rules\":(_vm.rules.Required || []).concat( (_vm.rules.Name || [])),\"disabled\":!_vm.canEditPersonalData},model:{value:(_vm.user.lastName),callback:function ($$v) {_vm.$set(_vm.user, \"lastName\", $$v)},expression:\"user.lastName\"}}),_c('v-text-field',{attrs:{\"label\":_vm.$t('User.Email') + '*',\"rules\":(_vm.rules.Required || []).concat( (_vm.rules.Email || [])),\"disabled\":!_vm.canEditPersonalData},model:{value:(_vm.user.eMail),callback:function ($$v) {_vm.$set(_vm.user, \"eMail\", $$v)},expression:\"user.eMail\"}}),_c('v-text-field',{attrs:{\"label\":_vm.$t('User.TelephoneNumber'),\"rules\":_vm.rules.TelephoneNumber,\"placeholder\":\"+385 99 1111 222\",\"disabled\":!_vm.canEditPersonalData},model:{value:(_vm.user.telephoneNumber),callback:function ($$v) {_vm.$set(_vm.user, \"telephoneNumber\", $$v)},expression:\"user.telephoneNumber\"}}),(!!_vm.userId)?_c('DateField',{staticClass:\"created-on\",attrs:{\"dense\":\"\",\"hideDetails\":true,\"outlined\":true,\"label\":_vm.$t('User.CreatedOn'),\"readonly\":\"\",\"disabled\":\"\"},model:{value:(_vm.user.createdOn),callback:function ($$v) {_vm.$set(_vm.user, \"createdOn\", $$v)},expression:\"user.createdOn\"}}):_vm._e(),_c('form-description',[_vm._v(_vm._s(_vm.$t(\"User.MustHaveAtLeastOneRoleDesc\")))]),_c('v-row',{attrs:{\"no-gutters\":\"\"}},_vm._l((_vm.appRolesSorted),function(role){return _c('v-col',{key:role.id,attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-checkbox',{attrs:{\"dense\":\"\",\"hide-details\":\"\",\"value\":role.id},scopedSlots:_vm._u([{key:\"label\",fn:function(){return [_c('span',[_vm._v(_vm._s(_vm.$t(role.textResourceKey)))]),_c('v-tooltip',{attrs:{\"bottom\":\"\",\"max-width\":\"640\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-icon',_vm._g({staticClass:\"ml-2\",attrs:{\"small\":\"\"}},on),[_vm._v(\"fal fa-info-circle\")])]}}],null,true)},[_vm._v(\" \"+_vm._s(_vm.$t(role.descriptionTextResourceKey, { eVisitorServiceName: _vm.eVisitorIntegrationName, }))+\" \")])]},proxy:true}],null,true),model:{value:(_vm.user.rolesIds),callback:function ($$v) {_vm.$set(_vm.user, \"rolesIds\", $$v)},expression:\"user.rolesIds\"}})],1)}),1)],1),(!_vm.userIsPropertyUnitOwner)?_c('v-tab-item',{staticClass:\"property-access-tab\"},[_c('v-data-table',{attrs:{\"loading\":_vm.loadingProperties,\"headers\":_vm.translatedHeaders,\"items\":_vm.items,\"item-key\":\"propertyId\",\"item-name\":\"name\",\"items-per-page\":15,\"fixed-header\":\"\",\"show-select\":\"\",\"height\":\"100%\"},on:{\"item-selected\":_vm.selectProperty},scopedSlots:_vm._u([{key:\"header.data-table-select\",fn:function(){return [_c('v-checkbox',{attrs:{\"input-value\":_vm.areAllPropertiesSelected()},on:{\"change\":_vm.selectAllProperties}})]},proxy:true},{key:\"header.name\",fn:function(ref){\nvar header = ref.header;\nreturn [_c('v-text-field',{staticClass:\"header-filter\",attrs:{\"label\":header.text},on:{\"click\":function($event){$event.stopPropagation();}},model:{value:(_vm.nameFilter),callback:function ($$v) {_vm.nameFilter=$$v},expression:\"nameFilter\"}})]}},{key:\"header.address\",fn:function(ref){\nvar header = ref.header;\nreturn [_c('v-text-field',{staticClass:\"header-filter\",attrs:{\"label\":header.text},on:{\"click\":function($event){$event.stopPropagation();}},model:{value:(_vm.addressFilter),callback:function ($$v) {_vm.addressFilter=$$v},expression:\"addressFilter\"}})]}},{key:\"header.postalCodeAndCity\",fn:function(ref){\nvar header = ref.header;\nreturn [_c('v-text-field',{staticClass:\"header-filter\",attrs:{\"label\":header.text},on:{\"click\":function($event){$event.stopPropagation();}},model:{value:(_vm.postalCodeFilter),callback:function ($$v) {_vm.postalCodeFilter=$$v},expression:\"postalCodeFilter\"}})]}},{key:\"top\",fn:function(){return [_c('form-description',{staticClass:\"ma-4\"},[_vm._v(_vm._s(_vm.$t(\"User.PropertyAccessTabDesc\")))])]},proxy:true},{key:\"item.name\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(item.name)+\" \"),(!item.status)?_c('v-chip',{attrs:{\"color\":\"red lighten-1\",\"dark\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"Deleted\"))+\" \")]):_vm._e()]}},{key:\"no-data\",fn:function(){return [(_vm.loadingProperties)?_c('NoData',{staticClass:\"no-data\",attrs:{\"icon\":\"fa-hotel\"}}):_vm._e()]},proxy:true}],null,false,390340080),model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}})],1):_vm._e(),(_vm.userIsPropertyUnitOwner)?_c('v-tab-item',{staticClass:\"property-access-tab\"},[_c('SelectedItemsTable',{staticClass:\"owners-table\",attrs:{\"selectedItems\":_vm.selectedOwners,\"ownerItems\":_vm.allOwners,\"forOwner\":true},on:{\"update:selectedItems\":function($event){_vm.selectedOwners=$event},\"update:selected-items\":function($event){_vm.selectedOwners=$event}}})],1):_vm._e(),_c('v-tab-item',{staticClass:\"tab-item\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('form-description',[_vm._v(_vm._s(_vm.$t(\"FiscalisationOperators.Description\")))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FiscalisationOperators.OperatorName') +\n (_vm.fiscalOperatorNotEmpty ? '*' : ''),\"rules\":(_vm.rules.OperatorName || []).concat( [_vm.fiscalOperatorEmptyOrRequired(_vm.user.operatorName)] )},model:{value:(_vm.user.operatorName),callback:function ($$v) {_vm.$set(_vm.user, \"operatorName\", $$v)},expression:\"user.operatorName\"}})],1),_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FiscalisationOperators.OperatorCode') +\n (_vm.fiscalOperatorNotEmpty ? '*' : ''),\"rules\":(_vm.rules.OperatorCode || []).concat( [_vm.fiscalOperatorEmptyOrRequired(_vm.user.operatorCode)] )},model:{value:(_vm.user.operatorCode),callback:function ($$v) {_vm.$set(_vm.user, \"operatorCode\", $$v)},expression:\"user.operatorCode\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FiscalisationOperators.OperatorOIB') +\n (_vm.fiscalOperatorNotEmpty ? '*' : ''),\"rules\":(_vm.rules.OperatorPID || []).concat( [_vm.fiscalOperatorEmptyOrRequired(_vm.user.operatorOIB)] )},model:{value:(_vm.user.operatorOIB),callback:function ($$v) {_vm.$set(_vm.user, \"operatorOIB\", $$v)},expression:\"user.operatorOIB\"}})],1),_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-checkbox',{staticClass:\"mt-0\",attrs:{\"label\":_vm.$t('FiscalisationOperators.isDefaultTenantOperator')},model:{value:(_vm.user.isDefaultTenantOperator),callback:function ($$v) {_vm.$set(_vm.user, \"isDefaultTenantOperator\", $$v)},expression:\"user.isDefaultTenantOperator\"}},[_vm._v(\"ΒΈ\")])],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default interface UserViewModel {\n id: number;\n username: string;\n firstName: string;\n lastName: string;\n eMail: string;\n telephoneNumber: string;\n createdOn: string;\n}\n\nexport class UserModel{\n id?: number;\n username!: string;\n firstName!: string;\n lastName!: string;\n eMail!: string;\n telephoneNumber!: string;\n createdOn!: string;\n\n //fiscal operator\n operatorName!: string;\n operatorCode!: string;\n operatorOIB!: string;\n isDefaultTenantOperator!: boolean;\n\n isOwnedByActiveTenant?: boolean;\n\n rolesIds: number[] = [];\n propertiesIds: number[] = [];\n customersIds: number[] = [];\n}\n\nexport class UserViewModelPaymentSlip{\n id?: number;\n name!: string;\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch, Prop, Ref } from \"vue-property-decorator\";\nimport RightDrawer from \"@/components/misc/RightDrawer.vue\";\nimport { ListModel } from \"@/shared/models/listModel\";\nimport { AppRole } from \"@/shared/models/appRole\";\nimport { UserModel } from \"@/shared/models/userModel\";\nimport { PropertyWithPostalCode } from \"@/shared/models/property\";\nimport { Notification } from \"../store/modules/notifications\";\nimport FormDescription from \"@/components/misc/FormDescription.vue\";\nimport _ from \"lodash\";\nimport { RolesEnum } from \"@/shared/roles\";\nimport NoData from \"@/components/misc/NoData.vue\";\nimport DateField from \"@/components/misc/DateField.vue\";\nimport { Action, Getter } from \"vuex-class\";\nimport { JwtClaims } from \"@/store/modules/auth\";\nimport SelectedItemsTable from \"./misc/SelectedItemsTable.vue\";\nimport VCustomer from \"@/shared/models/vCustomer\";\nimport {\n CustomerTypeEnum,\n EVisitorIntegrationNameEnum,\n} from \"@/shared/models/enums.type\";\nimport { EVisitorIntegrationModel } from \"@/shared/models/eVisitor\";\n\nexport interface UserCheckResponseModel {\n userExists: boolean;\n isEmailMatch: boolean;\n}\n\n@Component({\n components: {\n RightDrawer,\n FormDescription,\n NoData,\n DateField,\n SelectedItemsTable,\n },\n})\nexport default class UserForm extends Vue {\n @Prop({ default: null }) userId!: number | null;\n @Prop({ default: false }) open!: boolean;\n @Prop() callback!: () => any;\n\n @Getter(\"auth/claims\") claims?: JwtClaims;\n\n tab = 0;\n\n fkey = 0;\n\n loading = false;\n initialUser = new UserModel();\n user = new UserModel();\n\n showDeletedProperties = false;\n\n // prettier-ignore\n @Action(\"globalFilters/refreshFilter\") refreshFilter?: (replace?: boolean) => void;\n\n @Watch(\"open\")\n async openWatch(fresh: boolean, old: boolean) {\n if (fresh && !old) {\n this.fkey++;\n this.tab = 0;\n await this.loadAllOwners();\n }\n\n if (fresh && this.userId) {\n await this.loadUser();\n this.initialUser = new UserModel();\n } else {\n this.user = new UserModel();\n this.selected = [];\n this.selectedOwners = [];\n this.initialUser = _.cloneDeep(this.user);\n\n this.nameFilter = \"\";\n this.addressFilter = \"\";\n this.postalCodeFilter = \"\";\n }\n }\n\n get canEditPersonalData() {\n return this.user && (!this.user.id || this.user.isOwnedByActiveTenant);\n }\n\n isFormValid = false;\n get submitDisabled(): boolean {\n return this.isFormValid && !this.loading && this.user.rolesIds.length > 0;\n }\n\n get form(): Vue & { validate: () => boolean } {\n return this.$refs.form as Vue & { validate: () => boolean };\n }\n\n rules = {};\n appRoles: AppRole[] = [];\n\n get appRolesSorted() {\n return this.appRoles.sort((a, b) =>\n this.$t(a.textResourceKey) > this.$t(b.textResourceKey)\n ? 1\n : this.$t(b.textResourceKey) > this.$t(a.textResourceKey)\n ? -1\n : 0\n );\n }\n\n get userIsPropertyUnitOwner() {\n const ownerRoles = [\n RolesEnum.PropertyOwnerLevel1,\n RolesEnum.PropertyOwnerLevel1a,\n RolesEnum.PropertyOwnerLevel2,\n RolesEnum.PropertyOwnerLevel3,\n RolesEnum.PropertyOwnerLevel3a,\n ];\n\n return this.user.rolesIds.some((e) => ownerRoles.includes(e));\n }\n\n mounted() {\n this.setUpRules();\n\n this.loadAppRoles();\n }\n\n setUpRules() {\n this.rules = {\n Required: [(value: any) => !!value || this.$t(\"Validation.Required\")],\n Name: [\n (value: string) =>\n !value ||\n value.length <= 50 ||\n this.$t(\"Validation.MaxLength\", { count: 50 }),\n ],\n OperatorName: [\n (value: string) =>\n !value ||\n value.length <= 30 ||\n this.$t(\"Validation.MaxLength\", { count: 30 }),\n ],\n OperatorCode: [\n (value: string) =>\n !value ||\n value.length <= 10 ||\n this.$t(\"Validation.MaxLength\", { count: 10 }),\n ],\n OperatorPID: [\n (value: string) =>\n !value ||\n value.length <= 50 ||\n this.$t(\"Validation.MaxLength\", { count: 50 }),\n ],\n Email: [\n (value: string) =>\n !value ||\n value.length <= 100 ||\n this.$t(\"Validation.MaxLength\", { count: 100 }),\n (value: string) =>\n /.+@.+\\..+/.test(value) || this.$t(\"Validation.EmailFormat\"),\n ],\n TelephoneNumber: [\n (value: string) =>\n !value ||\n value.length <= 100 ||\n this.$t(\"Validation.MaxLength\", { count: 50 }),\n ],\n };\n }\n fiscalOperatorEmptyOrRequired(value: string) {\n if (\n (this.user.operatorName ||\n this.user.operatorCode ||\n this.user.operatorOIB) &&\n value === \"\"\n ) {\n return this.$t(\"Validation.Required\");\n }\n return true;\n }\n\n get fiscalOperatorNotEmpty() {\n return (\n this.user.operatorName ||\n this.user.operatorCode ||\n this.user.operatorOIB ||\n false\n );\n }\n\n loadAppRoles() {\n Vue.axios.get>(\"AppRoles\").then((res) => {\n this.appRoles = res.data.result.filter((r) => r.id != RolesEnum.SysAdmin);\n });\n }\n\n loadUser() {\n this.loading = true;\n Vue.axios.get(\"/users/\" + this.userId).then((res) => {\n this.user = res.data;\n\n this.selected = this.properties.filter((x) =>\n this.user.propertiesIds.some((e) => e === x.propertyId)\n );\n\n this.selectedOwners = this.allOwners.filter((x) =>\n this.user.customersIds.some((e) => e === x.id)\n );\n\n this.initialUser = _.cloneDeep(this.user);\n this.loading = false;\n });\n }\n\n // property access\n selected = [] as PropertyWithPostalCode[];\n\n nameFilter = \"\";\n addressFilter = \"\";\n postalCodeFilter = \"\";\n loadingProperties = true;\n\n properties: PropertyWithPostalCode[] = [];\n loadProperties() {\n this.loadingProperties = true;\n Vue.axios\n .get>(\n \"/properties/GetAllPropertiesWithPostalCode\",\n {\n params: {\n $count: true,\n $skip: this.properties.length,\n $orderby: \"propertyId\",\n },\n }\n )\n .then((res) => {\n this.properties.push(...res.data.result);\n if (res.data.count && this.properties.length < res.data.count) {\n this.loadProperties();\n }\n })\n .finally(() => (this.loadingProperties = false));\n }\n\n created() {\n this.loadProperties();\n }\n\n get items(): PropertyWithPostalCode[] {\n let items = this.properties ?? [];\n\n if (!this.showDeletedProperties) {\n items = items.filter((s) => s.status !== false);\n }\n\n return items\n .filter(\n (e) =>\n !this.nameFilter ||\n e.name.toLowerCase().includes(this.nameFilter.toLowerCase())\n )\n .filter(\n (e) =>\n !this.addressFilter ||\n e.address.toLowerCase().includes(this.addressFilter.toLowerCase())\n )\n .filter(\n (e) =>\n !this.postalCodeFilter ||\n e.postalCodeAndCity\n .toLowerCase()\n .includes(this.postalCodeFilter.toLowerCase())\n );\n }\n\n selectAllProperties(value: boolean) {\n if (value) {\n for (const prop of this.items) {\n if (!this.user.propertiesIds.some((x) => x == prop.propertyId)) {\n this.user.propertiesIds.push(prop.propertyId);\n this.selected.push(prop);\n }\n }\n } else {\n for (const prop of this.items) {\n const index = this.user.propertiesIds.findIndex(\n (x) => x == prop.propertyId\n );\n\n if (index != -1) {\n this.user.propertiesIds.splice(index, 1);\n }\n\n const selectedIndex = this.selected.findIndex(\n (x) => x.propertyId == prop.propertyId\n );\n if (selectedIndex != -1) {\n this.selected.splice(selectedIndex, 1);\n }\n }\n }\n }\n\n selectProperty({\n item,\n value,\n }: {\n item: PropertyWithPostalCode;\n value: boolean;\n }) {\n if (value && !this.user.propertiesIds.some((x) => x == item.propertyId)) {\n this.user.propertiesIds.push(item.propertyId);\n } else if (!value) {\n const index = this.user.propertiesIds.findIndex(\n (x) => x == item.propertyId\n );\n if (index != -1) {\n this.user.propertiesIds.splice(index, 1);\n }\n }\n }\n\n areAllPropertiesSelected() {\n return !this.items.some(\n (e) =>\n this.user.propertiesIds.findIndex((acc) => acc == e.propertyId) == -1\n );\n }\n\n headers = [\n {\n text: \"Property\",\n value: \"name\",\n },\n {\n text: \"Address\",\n value: \"address\",\n },\n {\n text: \"City\",\n value: \"postalCodeAndCity\",\n },\n ];\n\n get translatedHeaders() {\n return this.headers.map((x) => ({ ...x, text: this.$t(x.text) }));\n }\n\n allOwners = [] as VCustomer[];\n selectedOwners = [] as VCustomer[];\n async loadAllOwners() {\n await this.axios\n .get(\"/customers/getAllOwners\", {\n params: {\n $orderby: \"name asc\",\n customerTypeId: CustomerTypeEnum.Owner,\n },\n })\n .then((res) => {\n this.allOwners = res.data;\n });\n }\n\n @Ref(\"drawer\") rightDrawer?: RightDrawer;\n\n close() {\n this.rightDrawer?.clickOverlay();\n }\n\n async submit() {\n this.form.validate();\n\n if (!this.isFormValid) {\n this.$store.dispatch(\"showNotification\", {\n color: \"error\",\n message: this.$t(\"Changes are invalid or incomplete\"),\n timeout: 5000,\n });\n\n return;\n }\n if (this.user.id && this.user.id !== 0) {\n this.loading = true;\n const model = {\n propertiesIds: this.user.propertiesIds,\n customersIds: this.selectedOwners.map((e) => e.id),\n rolesIds: this.user.rolesIds,\n } as any;\n if (this.canEditPersonalData) {\n model.personalData = {\n username: this.user.username,\n firstName: this.user.firstName,\n lastName: this.user.lastName,\n eMail: this.user.eMail,\n telephoneNumber: this.user.telephoneNumber,\n };\n }\n if (this.user.operatorOIB != undefined) {\n model.operatorData = {\n operatorName: this.user.operatorName,\n operatorCode: this.user.operatorCode,\n operatorOIB: this.user.operatorOIB,\n IsDefaultTenantOperator: this.user.isDefaultTenantOperator,\n };\n }\n await Vue.axios\n .put(`/users/${this.user.id}`, model)\n .then(() => {\n this.$store.dispatch(\"showNotification\", {\n color: \"success\",\n message: this.$t(\"User.SaveSuccess\"),\n timeout: 5000,\n });\n\n if (this.refreshFilter) {\n this.refreshFilter();\n }\n this.$emit(\"update:open\", false);\n this.callback();\n })\n .finally(() => (this.loading = false));\n } else {\n await Vue.axios\n .post(\"/users/CreateUserCheck\", this.user)\n .then((res) => {\n if (res.data.userExists) {\n if (res.data.isEmailMatch) {\n this.$store.dispatch(\"showNotification\", {\n color: \"warning\",\n message: this.$t(\"User.AddToTenantConfirmation\"),\n actions: [\n {\n text: this.$t(\"Confirm\"),\n fun: () => {\n this.createUserConfirm();\n return true;\n },\n },\n {\n text: this.$t(\"Cancel\"),\n fun: () => {\n return true;\n },\n },\n ],\n timeout: 10000,\n } as Notification);\n }\n else {\n this.$store.dispatch(\"showNotification\", {\n color: \"error\",\n message: this.$t(\"User.UsernameAlreadyInUse\"),\n timeout: 10000,\n } as Notification);\n }\n } else {\n this.createUserConfirm();\n }\n });\n }\n }\n\n async createUserConfirm() {\n this.loading = true;\n this.user.customersIds = this.selectedOwners.map((x) => x.id);\n await Vue.axios\n .post(\"/users\", this.user)\n .then((res) => {\n this.user = {\n ...this.user,\n id: res.data,\n };\n this.initialUser = _.cloneDeep(this.user);\n\n this.$store.dispatch(\"showNotification\", {\n color: \"success\",\n message: this.$t(\"User.SaveSuccess\"),\n timeout: 5000,\n } as Notification);\n\n if (this.refreshFilter) {\n this.refreshFilter();\n }\n\n this.$emit(\"update:open\", false);\n this.callback();\n })\n .finally(() => (this.loading = false));\n }\n\n @Getter(\"appParams/tenantEVisitorIntegration\")\n eVisitorIntegration?: EVisitorIntegrationModel;\n\n get eVisitorIntegrationName() {\n return this.eVisitorIntegration?.name ?? EVisitorIntegrationNameEnum.None;\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserForm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserForm.vue?vue&type=template&id=3211042e&scoped=true&\"\nimport script from \"./UserForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserForm.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UserForm.vue?vue&type=style&index=0&id=3211042e&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3211042e\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTabsItems } from 'vuetify/lib/components/VTabs';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\nimport { VTooltip } from 'vuetify/lib/components/VTooltip';\ninstallComponents(component, {VBtn,VCheckbox,VChip,VCol,VDataTable,VForm,VIcon,VProgressLinear,VRow,VSpacer,VTab,VTabItem,VTabs,VTabsItems,VTextField,VToolbar,VTooltip})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch } from \"vue-property-decorator\";\nimport GenericPMSTableMenu from \"@/components/generic-pms-table/GenericPMSTableMenu.vue\";\nimport { SortableTableHeader } from \"@/components/generic-pms-table/SortableTableDirective\";\nimport SortableTable from \"@/components/generic-pms-table/SortableTableDirective\";\nimport SortableHeadersTable from \"@/components/generic-pms-table/SortableHeadersTable.vue\";\nimport { ListModel } from \"@/shared/models/listModel\";\nimport { DataOptions } from \"vuetify\";\nimport { formatOrderbyArray } from \"@/shared/sortHelperFunctions\";\nimport { Notification } from \"../store/modules/notifications\";\nimport * as _ from \"lodash\";\nimport UserViewModel from \"@/shared/models/userModel\";\nimport UserForm from \"@/components/UserForm.vue\";\nimport NoData from \"@/components/misc/NoData.vue\";\nimport DateField from \"@/components/misc/DateField.vue\"\nimport { BrokenRule } from \"@/shared/models/apiErrors\";\n\n@Component({\n components: {\n GenericPMSTableMenu,\n SortableHeadersTable,\n UserForm,\n NoData,\n DateField\n },\n directives: {\n SortableTable,\n },\n})\nexport default class UsersTable extends Vue {\n settingsOpen = false;\n\n headers: SortableTableHeader[] = [\n {\n text: \"User.Username\",\n value: \"username\",\n active: true,\n default: false,\n class: \"resize-header\",\n exportHeaders: [],\n },\n {\n text: \"User.Firstname\",\n value: \"firstName\",\n active: true,\n default: false,\n class: \"resize-header\",\n exportHeaders: [],\n },\n {\n text: \"User.Lastname\",\n value: \"lastName\",\n active: true,\n default: false,\n class: \"resize-header\",\n exportHeaders: [],\n },\n {\n text: \"User.Email\",\n value: \"eMail\",\n active: true,\n default: false,\n class: \"resize-header\",\n exportHeaders: [],\n },\n {\n text: \"User.TelephoneNumber\",\n value: \"telephoneNumber\",\n active: true,\n default: false,\n class: \"resize-header\",\n exportHeaders: [],\n },\n {\n text: \"User.CreatedOn\",\n value: \"createdOn\",\n active: true,\n default: false,\n class: \"resize-header\",\n exportHeaders: [],\n },\n {\n text: \"Actions\",\n value: \"actions\",\n sortable: false,\n active: true,\n default: true,\n class: \"resize-header\",\n exportHeaders: [],\n },\n ];\n\n filters = {\n username: \"\",\n eMail: \"\",\n firstName: \"\",\n lastName: \"\",\n createdOn: \"\"\n };\n\n @Watch(\"filters\", { deep: true })\n watchFilters(val: any, old: any) {\n if (_.isEqual(val, old)) {\n this.options.page = 1;\n this.debouncedLoad();\n }\n }\n\n get translatedActiveHeaders() {\n return this.headers\n .filter((x) => x.active)\n .map((x) => ({ ...x, text: this.$t(x.text) }));\n }\n\n userFormOpen = false;\n userFormUserId: number | null = null;\n rowDoubleClick(e: MouseEvent, { item }: { item: UserViewModel }) {\n this.openItemDetails(item);\n }\n openItemDetails(item: UserViewModel) {\n this.userFormUserId = item.id;\n this.userFormOpen = true;\n }\n addItem() {\n this.userFormUserId = null;\n this.userFormOpen = true;\n }\n\n deleteItem(item: UserViewModel) {\n this.$store.dispatch(\"showNotification\", {\n color: \"warning\",\n message: this.$t(\"DeleteConfirmation\") + ` '${item?.username}'`,\n actions: [\n {\n text: this.$t(\"Delete\"),\n fun: () => {\n this.deleteItemConfirm(item);\n return true;\n },\n },\n {\n text: this.$t(\"Cancel\"),\n fun: () => {\n return true;\n },\n },\n ],\n timeout: 30000,\n } as Notification);\n }\n deleteItemConfirm({ id }: { id: number }) {\n this.loading = true;\n Vue.axios\n .delete(`/users/${id}`)\n .then(() => {\n this.$store.dispatch(\"showNotification\", {\n color: \"success\",\n message: this.$t(\"User.DeleteSuccess\"),\n timeout: 5000,\n } as Notification);\n })\n .finally(() => {\n this.load();\n this.loading = false;\n });\n }\n\n options: DataOptions = {\n page: 1,\n itemsPerPage: 15,\n sortBy: [\"username\"],\n sortDesc: [],\n groupBy: [],\n groupDesc: [],\n multiSort: false,\n mustSort: true,\n };\n\n initLoaded = false;\n @Watch(\"options\", { deep: true })\n watchOptions(fresh: DataOptions, old: DataOptions) {\n if (!this.initLoaded || !_.isEqual(fresh, old)) {\n this.initLoaded = true;\n this.load();\n }\n }\n\n loading = true;\n list: ListModel = {\n count: 0,\n result: [],\n };\n\n debouncedLoad = _.debounce(this.load, 500);\n\n async load(): Promise> {\n this.loading = true;\n return this.axios\n .get>(\"/users\", {\n params: this.queryParams,\n })\n .then((res) => {\n this.list = res.data;\n return this.list;\n })\n .finally(() => (this.loading = false));\n }\n\n get queryParams() {\n return {\n $skip: this.options.itemsPerPage * (this.options.page - 1),\n $top: this.options.itemsPerPage,\n $orderby: formatOrderbyArray(\n this.options.sortBy,\n this.options.sortDesc.map((x) => !x)\n ),\n $count: true,\n ...this.filters,\n };\n }\n\n errors = [];\n\n async forgottenPassword(item: UserViewModel): Promise {\n this.loading = true;\n const forgottenPassword = await this.$store.dispatch(\n \"auth/forgottenPassword\",\n { username: item.username }\n );\n\n if (forgottenPassword.resetEmailSent) {\n this.loading = false;\n this.$store.dispatch(\"showNotification\", {\n color: \"success\",\n message: this.$t(\"User.ForgottenPasswordSuccess\"),\n timeout: 5000,\n });\n } else {\n this.loading = false;\n this.errors = forgottenPassword.errors.map((x: BrokenRule) => x.name);\n this.$store.dispatch(\"showNotification\", {\n color: \"error\",\n message: this.errors,\n timeout: 5000,\n });\n }\n\n }\n\n async sendUserInvite(item: UserViewModel): Promise {\n this.loading = true;\n await Vue.axios.post(`/users/SendUserInvite`, item).then(() => {\n this.$store.dispatch(\"showNotification\", {\n color: \"success\",\n message: this.$t(\"User.InviteSendSuccess\"),\n timeout: 5000,\n });\n }).finally(() => {\n this.loading = false;\n });\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UsersTable.vue?vue&type=template&id=494fda77&scoped=true&\"\nimport script from \"./UsersTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./UsersTable.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UsersTable.vue?vue&type=style&index=0&id=494fda77&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"494fda77\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VIcon,VList,VListItem,VListItemContent,VListItemIcon,VListItemTitle,VMenu,VTextField})\n","\n\n\n\n\n\nimport { Component, Vue } from \"vue-property-decorator\";\nimport UsersTable from \"@/components/UsersTable.vue\";\nimport GlobalFilterSensitiveMixin from '@/mixins/GlobalFilterSensitiveMixin';\n\n@Component({\n components: {\n UsersTable\n },\n mixins: [\n GlobalFilterSensitiveMixin\n ]\n})\nexport default class Users extends Vue {}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Users.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Users.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Users.vue?vue&type=template&id=796a18e8&scoped=true&\"\nimport script from \"./Users.vue?vue&type=script&lang=ts&\"\nexport * from \"./Users.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Users.vue?vue&type=style&index=0&id=796a18e8&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"796a18e8\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserForm.vue?vue&type=style&index=0&id=3211042e&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersTable.vue?vue&type=style&index=0&id=494fda77&scoped=true&lang=css&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Users.vue?vue&type=style&index=0&id=796a18e8&scoped=true&lang=scss&\""],"sourceRoot":""}