{"version":3,"sources":["webpack:///../../../src/components/VExpansionPanel/VExpansionPanels.ts","webpack:///./src/views/App/Tools/UserManagement/UsersTable.vue?3e01","webpack:///./src/views/App/Tools/UserManagement/UserMFASwitch.vue?419e","webpack:///./src/model/communication/users/MFA/GetMFAStatusResData.ts","webpack:///./src/model/communication/users/MFA/GetMFAStatusCommand.ts","webpack:///./src/model/communication/ApiResponse.ts","webpack:///./src/model/communication/users/MFA/EnableMFACommand.ts","webpack:///./src/model/communication/users/MFA/DisableMFACommand.ts","webpack:///./src/model/communication/users/MFA/DownloadMFAInstructions.ts","webpack:///./src/views/App/Tools/UserManagement/UserMFASwitch.vue","webpack:///./src/views/App/Tools/UserManagement/UserMFASwitch.vue?1d36","webpack:///./src/views/App/Tools/UserManagement/UserMFASwitch.vue?8e6b","webpack:///./src/views/App/Tools/UserManagement/EditClientUserModal.vue?d0c1","webpack:///./src/model/communication/users/CreateClientUserReqData.ts","webpack:///./src/model/communication/users/CreateClientUserCommand.ts","webpack:///./src/model/communication/users/EditClientUserCommand.ts","webpack:///./src/views/App/Tools/UserManagement/EditClientUserModal.vue","webpack:///./src/views/App/Tools/UserManagement/EditClientUserModal.vue?4a6d","webpack:///./src/views/App/Tools/UserManagement/EditClientUserModal.vue?d28f","webpack:///./src/views/App/Tools/UserManagement/DeleteClientUserModal.vue?7131","webpack:///./src/views/App/Tools/UserManagement/DeleteClientUserModal.vue","webpack:///./src/views/App/Tools/UserManagement/DeleteClientUserModal.vue?53ec","webpack:///./src/views/App/Tools/UserManagement/DeleteClientUserModal.vue?e66c","webpack:///./src/model/communication/users/FetchClientUsersResponse.ts","webpack:///./src/model/communication/users/FetchClientUsersCommand.ts","webpack:///./src/views/App/Tools/UserManagement/UsersTable.vue","webpack:///./src/views/App/Tools/UserManagement/UsersTable.vue?a91e","webpack:///./src/views/App/Tools/UserManagement/UsersTable.vue?d590","webpack:///./src/model/communication/users/FetchClientProfilesResponse.ts","webpack:///../../../src/components/VExpansionPanel/VExpansionPanelContent.ts","webpack:///./src/model/communication/users/DeleteClientProfileReqData.ts","webpack:///./src/views/App/Tools/UserManagement/ProfilesTable.vue?de72","webpack:///./src/views/App/Tools/UserManagement/EditClientProfileModal.vue?9c30","webpack:///./src/model/communication/users/CreateClientProfileCommand.ts","webpack:///./src/model/communication/users/CreateClientProfileReqData.ts","webpack:///./src/model/communication/users/FetchWindowsGroupsResponse.ts","webpack:///./src/model/communication/users/FetchWindowsGroupsCommand.ts","webpack:///./src/model/communication/users/GetAnyAuthPluginCommand.ts","webpack:///./src/model/communication/users/UpdateClientProfileCommand.ts","webpack:///./src/views/App/Tools/UserManagement/EditClientProfileModal.vue","webpack:///./src/views/App/Tools/UserManagement/EditClientProfileModal.vue?81ee","webpack:///./src/views/App/Tools/UserManagement/EditClientProfileModal.vue?dbfb","webpack:///./src/views/App/Tools/UserManagement/DeleteClientProfileModal.vue?a0a3","webpack:///./src/views/App/Tools/UserManagement/DeleteClientProfileModal.vue","webpack:///./src/views/App/Tools/UserManagement/DeleteClientProfileModal.vue?1cd1","webpack:///./src/views/App/Tools/UserManagement/DeleteClientProfileModal.vue?7515","webpack:///./src/views/App/Tools/UserManagement/EditOrganizationProfiles.vue?978e","webpack:///./src/views/App/Tools/UserManagement/EditOrganizationProfiles.vue","webpack:///./src/views/App/Tools/UserManagement/EditOrganizationProfiles.vue?cbf2","webpack:///./src/views/App/Tools/UserManagement/EditOrganizationProfiles.vue?ac87","webpack:///./src/model/communication/organizations/EditOrganizationProfilesCommand.ts","webpack:///./src/views/App/Tools/UserManagement/ProfilesTable.vue","webpack:///./src/views/App/Tools/UserManagement/ProfilesTable.vue?70de","webpack:///./src/views/App/Tools/UserManagement/ProfilesTable.vue?defd","webpack:///./src/model/communication/users/DeleteClientUserReqData.ts","webpack:///./src/model/communication/users/FetchClientProfilesCommand.ts","webpack:///./src/model/communication/users/DeleteClientUserCommand.ts","webpack:///../../../src/components/VExpansionPanel/VExpansionPanelHeader.ts","webpack:///../../../src/components/VExpansionPanel/VExpansionPanel.ts","webpack:///./src/model/communication/application/GetAvailableLanguagesResponse.ts","webpack:///./src/model/communication/application/GetAvailableLanguagesCommand.ts","webpack:///./src/views/App/Tools/OrganizationsManagement/index.vue?7204","webpack:///./src/views/App/Tools/OrganizationsManagement/CreateOrganizationDialog.vue?c65e","webpack:///./src/model/communication/organizations/AddOrganizationCommand.ts","webpack:///./src/views/App/Tools/OrganizationsManagement/CreateOrganizationDialog.vue","webpack:///./src/views/App/Tools/OrganizationsManagement/CreateOrganizationDialog.vue?5f59","webpack:///./src/views/App/Tools/OrganizationsManagement/CreateOrganizationDialog.vue?f874","webpack:///./src/views/App/Tools/OrganizationsManagement/OrganizationCard.vue?6f0f","webpack:///./src/views/App/Tools/OrganizationsManagement/EditOrganizationDialog.vue?eb4d","webpack:///./src/model/communication/organizations/DeleteOrganizationCommand.ts","webpack:///./src/views/App/Tools/OrganizationsManagement/EditOrganizationDialog.vue","webpack:///./src/views/App/Tools/OrganizationsManagement/EditOrganizationDialog.vue?3828","webpack:///./src/views/App/Tools/OrganizationsManagement/EditOrganizationDialog.vue?1f11","webpack:///./src/views/App/Tools/OrganizationsManagement/OrganizationCard.vue","webpack:///./src/views/App/Tools/OrganizationsManagement/OrganizationCard.vue?03b8","webpack:///./src/views/App/Tools/OrganizationsManagement/OrganizationCard.vue?93b5","webpack:///./src/views/App/Tools/OrganizationsManagement/index.vue","webpack:///./src/views/App/Tools/OrganizationsManagement/index.vue?2def","webpack:///./src/views/App/Tools/OrganizationsManagement/index.vue?7c47","webpack:///./src/model/communication/users/DeleteClientProfileCommand.ts"],"names":["name","provide","expansionPanels","this","props","accordion","disabled","flat","hover","focusable","inset","popout","readonly","tile","Boolean","computed","classes","created","$attrs","hasOwnProperty","Array","value","length","methods","updateItem","getValue","item","nextValue","index","toggleMethod","render","_vm","_h","$createElement","_c","_self","staticClass","attrs","model","callback","$$v","showErrorAlert","expression","_v","_s","$t","organization","on","$event","filterUsersByProfile","domProps","_e","search","openEditUserDialog","headers","users","filter","u","profile","selectedProfileName","loading","scopedSlots","_u","key","fn","ref","authUser","includes","profileNameInternalString","substring","lastIndexOf","_l","folder","id","associatedHierarchyList","openDeleteUserDialog","$vuetify","breakpoint","mdAndDown","getUsers","showEditUserDialog","userToEdit","$emit","showDeleteUserDialog","userToDelete","deleteUser","staticRenderFns","downloadLoading","onSwitchChange","mfaEnabled","response","isEnabled","data","Payload","IsEnabled","ApiGenericResponse","username","endPoint","httpVerb","executeCommand","res","Command","message","payload","ApiResponse","Response","Message","FromAxiosResponse","responseType","extend","String","watch","handler","fetchMFAStatus","immediate","downloadInstructions","execute","fileURL","window","URL","createObjectURL","Blob","fileLink","document","createElement","href","setAttribute","body","appendChild","click","val","component","VSwitch","justSaved","clientUser","canSave","saving","onSaveClick","onCloseClick","email","lang","copyEmailTemplate","emailTemplateAlert","errorMessage","usernameRules","availableProfiles","availableLanguages","selectedLanguage","availableDateFormat","selectedDateFormat","availableTimeFormat","selectedTimeFormat","secureLength","showPassword","onScoreChange","onFeedbackChange","password1","password2","suggestions","warning","ENDPOINT","clientUserReqData","ServiceResponseData","minScoreKey","minCharactersKey","defaultMinScore","defaultMinCharacters","components","Password","v","currentScore","text","passwordPolicy","state","application","configurationEntries","c","section","currentUser","authMod","every","r","undefined","minScoreRequired","samePassword","Number","find","error","console","ClientUser","newValue","reset","user","localeFromOptions","userConfig","dateFormat","timeFormat","language","trim","getProfiles","FetchClientProfilesCommand","responseStatus","ApiResponseStatusEnum","Success","clientProfiles","map","p","f","replace","join","log","getLanguages","GetAvailableLanguagesCommand","reqData","password","profileName","responseString","0","score","toCopy","1","2","3","location","origin","$te","navigator","clipboard","writeText","mounted","VAlert","VAutocomplete","VBtn","VCard","VCardActions","VCardText","VCardTitle","VDivider","VSelect","VSpacer","VTextField","type","required","clientUsers","forEach","push","parseFrom","UserMFASwitch","EditClientUserModal","DeleteClientUserModal","sortable","width","Object","filterUsersTable","$refs","editClientUserModal","some","organizationId","DeleteClientUserCommand","DeleteClientUserReqData","VDataTable","VDialog","VToolbar","VToolbarTitle","FetchClientProfilesResponse","ClientProfileExtended","Name","windowsGroup","WindowsGroup","authPluginGroup","AuthPluginGroup","privileges","Privileges","PrivilegeName","associatedUsersCount","AssociatedUsersCount","associatedExternalUsersCount","AssociatedExternalUsersCount","AssociatedHierarchyList","OrganizationId","baseMixins","isActive","expansionPanel","beforeDestroy","h","showLazyContent","directives","class","DeleteClientProfileReqData","isOrganizationManagementEnabled","showAddProfilesToTheOrganizationDialog","openEditProfileDialog","profiles","header","_g","availableOrganizations","o","isUserSuperAdminComp","$tc","count","openDeleteProfileDialog","showEditProfileDialog","profileToEdit","showDeleteProfileDialog","profileToDelete","deleteProfile","editOrganizationProfiles","clientProfile","profileNameMaxLength","startupData","isWSFedAuthenticationEnabledComp","wsFedProfile","selectedOrganization","azureADLoginEnabled","profileOrganization","loginModes","l","LoginModeType","AzureAD","enabled","azureGroup","availableWindowsGroups","windowsGroupsLoading","selectedPrivilegesLength","e","reduce","a","b","availablePrivilegesForThisProfile","unselectAllPrivileges","selectAllPrivileges","licenseModule","getLicenseModuleIconAndColor","color","icon","selectedPrivileges","requiredLicense","getLicenseModuleLabel","namei18n","s","$set","staticStyle","selectedFolders","clientProfileReqData","groups","any","Any","DeviceFolderTree","LoginMode","showAuthPluginGroupInput","ClientProfile","default","licenseData","license","licenseModules","isUserSuperAdmin","isWSFedAuthenticationEnabled","privilegeName","OrganizationsManagement","availableLicenseModules","defaultLicenseModuleEnumSorting","modules","m","module","LicenseModuleEnum","None","isAvailable","SuperAdmin","sort","availableLicenseModule","selectedPrivilegesSingleModule","tempOrganization","tempLoginModes","loginMode","ADLegacy","getWindowsGroups","firstLevelMenu","menu","children","ServiceAndUpdatesManagement","CashFlowManagement","FitnessStatistics","SecurityManagement","PredictiveMaintenance","RemoteLink","OneTimeCode","requiredLicenseModules","element","availablePrivilegeForThisProfile","group","getAnyAuthPlugin","then","associatedFoldersIds","VAvatar","VChip","VCol","VCombobox","VIcon","VRow","selectedProfiles","profileNames","folderId","EditClientProfileModal","DeleteClientProfileModal","EditOrganizationProfiles","DeleteClientProfileCommand","getOrganizations","GetOrganizationsCommand","organizations","selectedProfile","VTooltip","ripple","disableIconRotate","expandIcon","hideActions","hasMousedown","isDisabled","isReadonly","onClick","genIcon","setBackgroundColor","tabindex","mousedown","mouseup","open","content","nextIsActive","groupClasses","registerContent","unregisterContent","registerHeader","vm","unregisterHeader","toggle","isBooted","blacklistedLanguages","store","menuEntry","name_i18n","deviceTreeSelectedObjectItems","selectedFolder","showCreateOrganizationDialog","onClosingCreateOrganizationDialog","folderToConvert","organizationName","showSuccessAlert","saveable","addOrganization","params","creatingOrganization","organizationProfile","createdOrganization","Organization","showEditOrganizationDialog","newLoginModes","newLoginMode","loginModeTypeEnumLabel","newADLegacyParams","newAzureADParams","onClosingEditOrganizationDialog","organizationNewName","nativeOn","stopPropagation","showAreYouSureDialog","deleteOrganization","availableLoginModes","keys","isNaN","isADLegacyEnabled","isAzureADEnabled","JSON","stringify","tempLoginMode","parse","VCardSubtitle","VExpansionPanel","VExpansionPanelContent","VExpansionPanelHeader","VExpansionPanels","EditOrganizationDialog","ProfilesTable","UsersTable","usersTable","DeviceTreeAppPage","CreateOrganizationDialog","OrganizationCard","editing","newOrganizationName","DeviceTreeNodeTypeEnum","Folder"],"mappings":"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","file":"js/chunk_app_organizations_management_view.f4dee690.js","sourcesContent":["// Styles\nimport './VExpansionPanel.sass'\n\n// Components\nimport { BaseItemGroup, GroupableInstance } from '../VItemGroup/VItemGroup'\nimport VExpansionPanel from './VExpansionPanel'\n\n// Utilities\nimport { breaking } from '../../util/console'\n\n// Types\ninterface VExpansionPanelInstance extends InstanceType {}\n\n/* @vue/component */\nexport default BaseItemGroup.extend({\n name: 'v-expansion-panels',\n\n provide (): object {\n return {\n expansionPanels: this,\n }\n },\n\n props: {\n accordion: Boolean,\n disabled: Boolean,\n flat: Boolean,\n hover: Boolean,\n focusable: Boolean,\n inset: Boolean,\n popout: Boolean,\n readonly: Boolean,\n tile: Boolean,\n },\n\n computed: {\n classes (): object {\n return {\n ...BaseItemGroup.options.computed.classes.call(this),\n 'v-expansion-panels': true,\n 'v-expansion-panels--accordion': this.accordion,\n 'v-expansion-panels--flat': this.flat,\n 'v-expansion-panels--hover': this.hover,\n 'v-expansion-panels--focusable': this.focusable,\n 'v-expansion-panels--inset': this.inset,\n 'v-expansion-panels--popout': this.popout,\n 'v-expansion-panels--tile': this.tile,\n }\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('expand')) {\n breaking('expand', 'multiple', this)\n }\n\n /* istanbul ignore next */\n if (\n Array.isArray(this.value) &&\n this.value.length > 0 &&\n typeof this.value[0] === 'boolean'\n ) {\n breaking(':value=\"[true, false, true]\"', ':value=\"[0, 2]\"', this)\n }\n },\n\n methods: {\n updateItem (item: GroupableInstance & VExpansionPanelInstance, index: number) {\n const value = this.getValue(item, index)\n const nextValue = this.getValue(item, index + 1)\n\n item.isActive = this.toggleMethod(value)\n item.nextIsActive = this.toggleMethod(nextValue)\n },\n },\n})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"px-4 pb-6\",attrs:{\"outlined\":\"\"}},[_c('v-alert',{staticClass:\"mt-3\",attrs:{\"type\":\"error\",\"text\":\"\",\"dismissible\":\"\"},model:{value:(_vm.showErrorAlert),callback:function ($$v) {_vm.showErrorAlert=$$v},expression:\"showErrorAlert\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"user_management.error_deleting\"))+\" \")]),_c('v-toolbar',{attrs:{\"flat\":\"\"}},[_c('v-fa-icon',{staticClass:\"mr-3\",attrs:{\"icon\":\"list\",\"medium\":\"\",\"color\":\"primary\"}}),_c('v-toolbar-title',[_vm._v(\" \"+_vm._s(_vm.organization != null ? _vm.$t(\"organizationsManagement.organizationUsers\") : _vm.$t(\"organizationsManagement.users\"))+\" \")]),_c('v-spacer'),(_vm.filterUsersByProfile)?_c('v-btn',{staticClass:\"mx-5\",attrs:{\"small\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.filterUsersByProfile = false}}},[_c('v-fa-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"times\",\"small\":\"\"}}),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('user_management.resetFilters'))}})],1):_vm._e(),_c('v-card',{attrs:{\"flat\":\"\",\"width\":\"30%\"}},[_c('v-text-field',{attrs:{\"append-icon\":\"fa-search\",\"label\":_vm.$t('common.search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),(!_vm.organization)?_c('v-btn',{staticClass:\"ml-2\",attrs:{\"icon\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.openEditUserDialog(null)}}},[_c('v-fa-icon',{attrs:{\"icon\":\"plus\"}})],1):_vm._e()],1),_c('v-divider'),_c('v-data-table',{staticClass:\"px-4 mt-2\",attrs:{\"headers\":_vm.headers,\"items\":_vm.filterUsersByProfile ? _vm.users.filter(function (u) { return u.profile.name == _vm.selectedProfileName; }) : _vm.users,\"dense\":\"\",\"loading\":_vm.loading,\"hide-default-footer\":_vm.organization != null && _vm.users.length < 20,\"search\":_vm.search},scopedSlots:_vm._u([{key:\"item.name\",fn:function(ref){\nvar value = ref.value;\nreturn [(value == _vm.authUser.name)?_c('b',{domProps:{\"textContent\":_vm._s(value + ' (' + _vm.$t('user_management.your_user') + ')')}}):_c('span',{domProps:{\"textContent\":_vm._s(value)}})]}},{key:\"item.profile.name\",fn:function(ref){\nvar value = ref.value;\nreturn [(value.includes(_vm.profileNameInternalString))?_c('span',[(value == _vm.authUser.profile.name)?_c('span',{domProps:{\"textContent\":_vm._s(value.substring(0, value.lastIndexOf(_vm.profileNameInternalString)) + ' (' + _vm.$t('user_management.your_profile') + ')')}}):_c('span',{domProps:{\"textContent\":_vm._s(value.substring(0, value.lastIndexOf(_vm.profileNameInternalString)))}})]):_c('span',[(value == _vm.authUser.profile.name)?_c('span',{domProps:{\"textContent\":_vm._s(value + ' (' + _vm.$t('user_management.your_profile') + ')')}}):_c('span',{domProps:{\"textContent\":_vm._s(value)}})])]}},{key:\"item.visibility\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._l((item.profile.associatedHierarchyList),function(folder){return _c('span',{key:folder.id},[_c('v-fa-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"folder\",\"small\":\"\",\"color\":\"primary\"}}),_c('span',{staticClass:\"mr-4\",domProps:{\"textContent\":_vm._s(folder.name)}}),_c('br')],1)}),(!item.profile.associatedHierarchyList || !item.profile.associatedHierarchyList.length)?_c('div',[_c('v-fa-icon',{staticClass:\"mr-1\",attrs:{\"icon\":\"exclamation-triangle\",\"color\":\"warning\",\"small\":\"\"}}),_vm._v(\" \"),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('user_management.noFolder'))}})],1):_vm._e()]}},{key:\"item.action\",fn:function(ref){\nvar item = ref.item;\nreturn [(_vm.authUser == null || item.name != _vm.authUser.name)?_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.openEditUserDialog(item)}}},[_c('v-fa-icon',{attrs:{\"color\":\"warning\",\"icon\":\"edit\"}})],1):_vm._e(),(_vm.authUser == null || item.name != _vm.authUser.name)?_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.openDeleteUserDialog(item)}}},[_c('v-fa-icon',{attrs:{\"color\":\"error\",\"icon\":\"trash\"}})],1):_vm._e()]}},{key:\"item.mfa\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('UserMFASwitch',{attrs:{\"username\":item.name}})]}}],null,true)}),_c('v-dialog',{attrs:{\"width\":_vm.$vuetify.breakpoint.mdAndDown ? '90%' : '40%'},on:{\"click:outside\":function($event){return _vm.getUsers()}},model:{value:(_vm.showEditUserDialog),callback:function ($$v) {_vm.showEditUserDialog=$$v},expression:\"showEditUserDialog\"}},[_c('EditClientUserModal',{ref:\"editClientUserModal\",attrs:{\"clientUser\":_vm.userToEdit,\"availableProfiles\":[]},on:{\"close\":function($event){_vm.getUsers();\n _vm.$emit('getProfiles');}}})],1),_c('v-dialog',{attrs:{\"width\":\"40%\"},on:{\"click:outside\":function($event){_vm.showDeleteUserDialog = false}},model:{value:(_vm.showDeleteUserDialog),callback:function ($$v) {_vm.showDeleteUserDialog=$$v},expression:\"showDeleteUserDialog\"}},[(_vm.userToDelete)?_c('DeleteClientUserModal',{attrs:{\"clientUser\":_vm.userToDelete},on:{\"close\":function($event){_vm.showDeleteUserDialog = false},\"confirm\":function($event){return _vm.deleteUser()}}}):_vm._e()],1)],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('v-switch',{staticClass:\"ma-0 pa-0\",attrs:{\"disabled\":_vm.downloadLoading,\"loading\":_vm.loading,\"hide-details\":\"\"},on:{\"change\":_vm.onSwitchChange},model:{value:(_vm.mfaEnabled),callback:function ($$v) {_vm.mfaEnabled=$$v},expression:\"mfaEnabled\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { AxiosResponse } from \"axios\";\r\nimport { ApiGenericResponse } from \"../../ApiGenericResponse\";\r\n\r\nexport class GetMFAStatusResData extends ApiGenericResponse {\r\n isEnabled: boolean = false;\r\n\r\n constructor(response: AxiosResponse) {\r\n super(response);\r\n if (response.data && response.data.Payload) {\r\n this.isEnabled = response.data.Payload.IsEnabled;\r\n }\r\n }\r\n}\r\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../../Command\";\r\nimport { GetMFAStatusResData } from \"./GetMFAStatusResData\";\r\n\r\nexport class GetMFAStatusCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + \"/usermanagement\";\r\n httpVerb: HttpVerbType = \"get\";\r\n\r\n constructor(username: string) {\r\n super();\r\n this.endPoint += `/${username}/mfa`;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand();\r\n return new GetMFAStatusResData(res);\r\n }\r\n}\r\n","import { ApiResponseCodeEnum } from \"./ApiResponseCodeEnum\";\r\n\r\nexport class ApiResponse {\r\n response: ApiResponseCodeEnum;\r\n message: string;\r\n payload: object;\r\n\r\n constructor(response: ApiResponseCodeEnum, message: string, payload: object) {\r\n this.response = response;\r\n this.message = message;\r\n this.payload = payload;\r\n }\r\n\r\n public static FromAxiosResponse(res: any) {\r\n return new ApiResponse(res.data.Response as ApiResponseCodeEnum, res.data.Message, res.data.Payload);\r\n }\r\n}\r\n","import { ApiGenericResponse } from \"../../ApiGenericResponse\";\r\nimport { ApiResponse } from \"../../ApiResponse\";\r\nimport { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../../Command\";\r\n\r\nexport class EnableMFACommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + \"/usermanagement\";\r\n httpVerb: HttpVerbType = \"post\";\r\n username: string;\r\n\r\n constructor(username: string) {\r\n super();\r\n this.endPoint += `/${username}/mfa`;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand();\r\n return ApiResponse.FromAxiosResponse(res);\r\n }\r\n}\r\n","import { ApiGenericResponse } from \"../../ApiGenericResponse\";\r\nimport { ApiResponse } from \"../../ApiResponse\";\r\nimport { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../../Command\";\r\n\r\nexport class DisableMFACommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + \"/usermanagement\";\r\n httpVerb: HttpVerbType = \"delete\";\r\n username: string;\r\n\r\n constructor(username: string) {\r\n super();\r\n this.endPoint += `/${username}/mfa`;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand();\r\n return ApiResponse.FromAxiosResponse(res);\r\n }\r\n}\r\n","import { AxiosResponse } from \"axios\";\r\nimport { ApiGenericResponse } from \"../../ApiGenericResponse\";\r\nimport { ApiResponse } from \"../../ApiResponse\";\r\nimport { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../../Command\";\r\n\r\nexport class DownloadMFAInstructions extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + \"/usermanagement\";\r\n httpVerb: HttpVerbType = \"get\";\r\n username: string;\r\n\r\n constructor(username: string) {\r\n super();\r\n this.responseType = \"blob\";\r\n this.endPoint += `/${username}/mfa/download`;\r\n }\r\n\r\n public async execute(): Promise {\r\n return await this.executeCommand();\r\n }\r\n}\r\n","\n\n\n\n\r\nimport Vue from \"vue\";\r\n\r\nimport { GetMFAStatusCommand } from \"@/model/communication/users/MFA/GetMFAStatusCommand\";\r\nimport { EnableMFACommand } from \"@/model/communication/users/MFA/EnableMFACommand\";\r\nimport { DisableMFACommand } from \"@/model/communication/users/MFA/DisableMFACommand\";\r\nimport { DownloadMFAInstructions } from \"@/model/communication/users/MFA/DownloadMFAInstructions\";\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n loading: false,\r\n mfaEnabled: false,\r\n disabled: false,\r\n downloadLoading: false,\r\n };\r\n },\r\n props: {\r\n username: String,\r\n },\r\n watch: {\r\n username: {\r\n handler() {\r\n this.fetchMFAStatus();\r\n },\r\n immediate: true,\r\n },\r\n },\r\n methods: {\r\n async downloadInstructions() {\r\n this.downloadLoading = true;\r\n const res = await new DownloadMFAInstructions(this.username).execute();\r\n\r\n let fileURL = window.URL.createObjectURL(new Blob([res.data]));\r\n let fileLink = document.createElement(\"a\");\r\n fileLink.href = fileURL;\r\n fileLink.setAttribute(\"download\", res.headers[\"content-disposition\"].substring(\"attachment; filename=\".length));\r\n document.body.appendChild(fileLink);\r\n fileLink.click();\r\n this.downloadLoading = false;\r\n },\r\n async onSwitchChange(val: boolean) {\r\n this.loading = true;\r\n if (val) {\r\n await new EnableMFACommand(this.username).execute();\r\n this.downloadInstructions();\r\n } else await new DisableMFACommand(this.username).execute();\r\n this.fetchMFAStatus();\r\n this.loading = false;\r\n },\r\n async fetchMFAStatus() {\r\n this.loading = true;\r\n const res = await new GetMFAStatusCommand(this.username).execute();\r\n this.mfaEnabled = res.isEnabled;\r\n this.loading = false;\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserMFASwitch.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserMFASwitch.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserMFASwitch.vue?vue&type=template&id=3aa592c8&\"\nimport script from \"./UserMFASwitch.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserMFASwitch.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\ninstallComponents(component, {VSwitch})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"pb-4\",attrs:{\"flat\":\"\"}},[_c('v-card-title',[_c('v-fa-icon',{staticClass:\"mr-2\",attrs:{\"icon\":_vm.justSaved ? 'thumbs-up' : 'edit',\"color\":_vm.justSaved ? 'success' : ''}}),(_vm.justSaved)?_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('user_management.user_saved'))}}):_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(_vm.clientUser != null ? \"user_management.edit_user\" : \"user_management.add_new_user\"))+\" \")]),_c('v-spacer'),(!_vm.justSaved)?_c('v-btn',{staticClass:\"px-8 mr-2\",attrs:{\"color\":\"success\",\"disabled\":!_vm.canSave,\"loading\":_vm.saving},on:{\"click\":function($event){return _vm.onSaveClick()}}},[_c('v-fa-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"save\"}}),_vm._v(\" \"+_vm._s(_vm.$t(\"common.save\"))+\" \")],1):_vm._e(),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.onCloseClick()}}},[_c('v-fa-icon',{attrs:{\"icon\":\"times\"}})],1)],1),_c('v-divider',{staticClass:\"mx-6\"}),(_vm.justSaved)?_c('v-card',{staticClass:\"mt-4 mx-6 pt-4\",attrs:{\"outlined\":\"\"}},[(_vm.email)?_c('span',{staticClass:\"px-4\",domProps:{\"textContent\":_vm._s(_vm.$t('user_management.user_email') + ': ' + _vm.email)}}):_vm._e(),_c('v-card-actions',{staticClass:\"px-4 pt-0 mt-2\"},[_c('span',{staticClass:\"ma-0 pa-0 mr-3\",domProps:{\"textContent\":_vm._s(_vm.$t('user_management.email_template') + ':')}}),_vm._l((_vm.availableLanguages),function(lang){return _c('v-btn',{key:lang,staticClass:\"ma-1 py-1 px-4 mx-1\",attrs:{\"small\":\"\",\"outlined\":\"\"},on:{\"click\":function($event){return _vm.copyEmailTemplate(lang)}}},[_c('v-fa-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"copy\",\"small\":\"\"}}),_vm._v(\" \"+_vm._s(lang)+\" \")],1)}),_c('v-spacer'),_c('v-alert',{staticClass:\"ma-0 py-1 px-4\",attrs:{\"text\":\"\",\"color\":\"success\",\"dense\":\"\",\"dismissible\":\"\"},model:{value:(_vm.emailTemplateAlert),callback:function ($$v) {_vm.emailTemplateAlert=$$v},expression:\"emailTemplateAlert\"}},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('common.copiedToClipboard'))}})])],2)],1):_c('v-card',{staticClass:\"mt-4 mx-6\",attrs:{\"outlined\":\"\"}},[(_vm.errorMessage)?_c('v-alert',{staticClass:\"ma-2\",attrs:{\"type\":\"error\"}},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.errorMessage)}})]):_vm._e(),_c('v-card-text',[_c('form',[_c('v-text-field',{attrs:{\"label\":_vm.$t('user_management.name'),\"disabled\":_vm.clientUser != null,\"autocomplete\":\"username\",\"rules\":_vm.usernameRules},model:{value:(_vm.username),callback:function ($$v) {_vm.username=$$v},expression:\"username\"}}),_c('v-autocomplete',{attrs:{\"items\":_vm.availableProfiles,\"label\":_vm.$t('user_management.profile')},model:{value:(_vm.selectedProfileName),callback:function ($$v) {_vm.selectedProfileName=$$v},expression:\"selectedProfileName\"}}),_c('v-text-field',{attrs:{\"label\":_vm.$t('user_preferences.email'),\"autocomplete\":\"email\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}})],1),_c('v-select',{attrs:{\"items\":_vm.availableLanguages,\"label\":_vm.$t('options.language')},model:{value:(_vm.selectedLanguage),callback:function ($$v) {_vm.selectedLanguage=$$v},expression:\"selectedLanguage\"}}),_c('v-select',{attrs:{\"items\":_vm.availableDateFormat,\"label\":_vm.$t('options.dateFormat')},model:{value:(_vm.selectedDateFormat),callback:function ($$v) {_vm.selectedDateFormat=$$v},expression:\"selectedDateFormat\"}}),_c('v-select',{attrs:{\"items\":_vm.availableTimeFormat,\"label\":_vm.$t('options.timeFormat')},model:{value:(_vm.selectedTimeFormat),callback:function ($$v) {_vm.selectedTimeFormat=$$v},expression:\"selectedTimeFormat\"}})],1),_c('v-card-text',{staticClass:\"py-0\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"login.new_password\"))+\" \")]),_c('Password',{attrs:{\"toggle\":true,\"secureLength\":_vm.secureLength,\"showPassword\":_vm.showPassword},on:{\"score\":_vm.onScoreChange,\"feedback\":_vm.onFeedbackChange,\"show\":function($event){_vm.showPassword = true},\"hide\":function($event){_vm.showPassword = false}},model:{value:(_vm.password1),callback:function ($$v) {_vm.password1=$$v},expression:\"password1\"}}),_c('v-card-text',{staticClass:\"py-0\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"login.confirm_new_password\"))+\" \"),(_vm.samePassword)?_c('v-fa-icon',{attrs:{\"icon\":\"check-circle\",\"small\":\"\",\"color\":\"success\"}}):_vm._e()],1),_c('Password',{staticClass:\"mb-4\",attrs:{\"toggle\":false,\"showStrengthMeter\":false,\"badge\":false,\"showPassword\":_vm.showPassword},model:{value:(_vm.password2),callback:function ($$v) {_vm.password2=$$v},expression:\"password2\"}}),(_vm.suggestions && _vm.suggestions.length > 0)?_c('v-alert',{staticClass:\"mx-5\",attrs:{\"type\":\"success\",\"text\":\"\",\"dense\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.suggestions[0])+\" \")]):_vm._e(),(_vm.warning)?_c('v-alert',{staticClass:\"mx-5\",attrs:{\"type\":\"error\",\"text\":\"\",\"dense\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.warning)+\" \")]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export class CreateClientUserReqData {\r\n username: string;\r\n password: string;\r\n profileName: string;\r\n language: string;\r\n dateFormat: string;\r\n timeFormat: string;\r\n email: string;\r\n}\r\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\nimport { CreateClientUserReqData } from \"./CreateClientUserReqData\";\r\n\r\nconst ENDPOINT = \"/usermanagement/createuser\";\r\n\r\nexport class CreateClientUserCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"post\";\r\n clientUserReqData: CreateClientUserReqData;\r\n\r\n constructor(clientUserReqData: CreateClientUserReqData) {\r\n super();\r\n this.clientUserReqData = clientUserReqData;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand(this.clientUserReqData);\r\n return new ServiceResponseData(res);\r\n }\r\n}\r\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\nimport { CreateClientUserReqData } from \"./CreateClientUserReqData\";\r\n\r\nconst ENDPOINT = \"/usermanagement/edituser\";\r\n\r\nexport class EditClientUserCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"post\";\r\n clientUserReqData: CreateClientUserReqData;\r\n\r\n constructor(clientUserReqData: CreateClientUserReqData) {\r\n super();\r\n this.clientUserReqData = clientUserReqData;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand(this.clientUserReqData);\r\n return new ServiceResponseData(res);\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { RootState } from \"@/store\";\r\nimport { mapGetters, mapState } from \"vuex\";\r\nimport { ApplicationState } from \"@/store/modules/ApplicationModule\";\r\n\r\n// Vue components\r\nimport Password from \"vue-password-strength-meter\";\r\n\r\n// Model\r\nimport { ClientUser } from \"@/model/data/authentication/ClientUser\";\r\nimport { CreateClientUserReqData } from \"@/model/communication/users/CreateClientUserReqData\";\r\nimport { ApiResponseStatusEnum } from \"@/model/communication/ApiResponseStatusEnum\";\r\nimport { ConfigurationEntry } from \"@/model/communication/application/GetServerConfigurationResponse\";\r\nimport { GetAvailableLanguagesCommand } from \"@/model/communication/application/GetAvailableLanguagesCommand\";\r\nimport { FetchClientProfilesCommand } from \"@/model/communication/users/FetchClientProfilesCommand\";\r\nimport { CreateClientUserCommand } from \"@/model/communication/users/CreateClientUserCommand\";\r\nimport { EditClientUserCommand } from \"@/model/communication/users/EditClientUserCommand\";\r\nimport { ServiceResponseData } from \"@/model/communication/ServiceResponseData\";\r\n\r\nconst minScoreKey: string = \"minScore\";\r\nconst minCharactersKey: string = \"minCharacters\";\r\n\r\nconst defaultMinScore: number = 3;\r\nconst defaultMinCharacters: number = 8;\r\n\r\nexport default Vue.extend({\r\n components: { Password },\r\n data() {\r\n return {\r\n profileNameInternalString: \"@$\",\r\n loading: false,\r\n saving: false,\r\n showPassword: false,\r\n justSaved: false,\r\n emailTemplateAlert: false,\r\n\r\n username: \"\",\r\n availableProfiles: [],\r\n selectedProfileName: \"\",\r\n email: \"\",\r\n password1: \"\",\r\n password2: \"\",\r\n availableLanguages: [],\r\n selectedLanguage: \"\",\r\n selectedDateFormat: \"YYYY-MM-DD\",\r\n selectedTimeFormat: \"ampm\",\r\n\r\n usernameRules: [(v: string) => v.length > 3 || \"Min 4 characters\"],\r\n\r\n errorMessage: \"\",\r\n currentScore: 0,\r\n suggestions: null,\r\n warning: null,\r\n\r\n availableTimeFormat: [\r\n {\r\n text: `AM/PM (${this.$t(\"options.forExample\")} 2:52 PM)`,\r\n value: \"ampm\",\r\n },\r\n {\r\n text: `24 ${this.$t(\"options.hours\")} (${this.$t(\"options.forExample\")} 14:52)`,\r\n value: \"24hr\",\r\n },\r\n ],\r\n availableDateFormat: [\r\n {\r\n text: `${this.$t(\"options.day\")}-${this.$t(\"options.month\")}-${this.$t(\"options.year\")} (${this.$t(\"options.forExample\")} 31-12-2022)`,\r\n value: \"DD-MM-YYYY\",\r\n },\r\n {\r\n text: `${this.$t(\"options.year\")}-${this.$t(\"options.month\")}-${this.$t(\"options.day\")} (${this.$t(\"options.forExample\")} 2022-12-31)`,\r\n value: \"YYYY-MM-DD\",\r\n },\r\n {\r\n text: `${this.$t(\"options.month\")}-${this.$t(\"options.day\")}-${this.$t(\"options.year\")} (${this.$t(\"options.forExample\")} 12-31-2022)`,\r\n value: \"MM-DD-YYYY\",\r\n },\r\n ],\r\n };\r\n },\r\n\r\n computed: {\r\n ...mapGetters([\"localeFromOptions\"]),\r\n ...mapState({\r\n passwordPolicy: function (state: RootState): ConfigurationEntry[] {\r\n return (state.application as ApplicationState).configurationEntries.filter((c) => c.section == \"PASSWORD_POLICY\");\r\n },\r\n currentUser: (state: RootState) => state.authMod.currentUser,\r\n }),\r\n\r\n canSave() {\r\n if (!this.usernameRules.every((r) => r(this.username))) return false;\r\n if (this.username.length <= 0 || this.selectedProfileName.length <= 0) return false;\r\n if (this.minScoreRequired == undefined) return false;\r\n if (this.clientUser != null && (this.password1 == null || this.password1.length == 0) && (this.password2 == null || this.password2.length == 0)) return true;\r\n if (!(this.samePassword && this.currentScore >= this.minScoreRequired && this.password1.length >= this.secureLength)) return false;\r\n return true;\r\n },\r\n\r\n minScoreRequired() {\r\n try {\r\n let value = Number((this.passwordPolicy.find((c: ConfigurationEntry) => c.key == minScoreKey) as ConfigurationEntry).value);\r\n return value >= 0 ? value : defaultMinScore;\r\n } catch (error) {\r\n console.error(\"Cannot read \", minScoreKey, \" value from server pw policy configuration. Set it to \", defaultMinScore, \" as default.\");\r\n return defaultMinScore;\r\n }\r\n },\r\n\r\n secureLength() {\r\n try {\r\n let value = Number((this.passwordPolicy.find((c: ConfigurationEntry) => c.key == minCharactersKey) as ConfigurationEntry).value);\r\n return value >= 0 ? value : defaultMinCharacters;\r\n } catch (error) {\r\n console.error(\"Cannot read \", minCharactersKey, \" value from server pw policy configuration. Set it to \", defaultMinCharacters, \" as default.\");\r\n return defaultMinCharacters;\r\n }\r\n },\r\n\r\n samePassword() {\r\n return this.password1 != null && this.password2 != null && this.password1.length > 0 && this.password2 == this.password1;\r\n },\r\n },\r\n props: {\r\n clientUser: ClientUser,\r\n },\r\n watch: {\r\n clientUser(newValue) {\r\n this.reset(newValue);\r\n },\r\n },\r\n methods: {\r\n async reset(user: ClientUser) {\r\n this.errorMessage = \"\";\r\n this.currentScore = 0;\r\n this.suggestions = null;\r\n this.warning = null;\r\n this.justSaved = false;\r\n this.emailTemplateAlert = false;\r\n\r\n this.username = \"\";\r\n this.email = \"\";\r\n this.selectedProfileName = this.availableProfiles.length > 0 ? this.availableProfiles[0].value : [];\r\n if (this.localeFromOptions != null) this.selectedLanguage = this.localeFromOptions;\r\n else if (this.availableLanguages.length > 0) this.selectedLanguage = this.availableLanguages[0];\r\n else this.selectedLanguage = \"\";\r\n this.password1 = \"\";\r\n this.password2 = \"\";\r\n\r\n this.selectedDateFormat = \"YYYY-MM-DD\";\r\n this.selectedTimeFormat = \"ampm\";\r\n if (this.currentUser != null && this.currentUser.userConfig != null) {\r\n if (this.currentUser.userConfig.dateFormat != null && this.currentUser.userConfig.dateFormat != undefined)\r\n this.selectedDateFormat = this.currentUser.userConfig.dateFormat;\r\n if (this.currentUser.userConfig.timeFormat != null && this.currentUser.userConfig.timeFormat != undefined)\r\n this.selectedTimeFormat = this.currentUser.userConfig.timeFormat;\r\n }\r\n\r\n if (this.clientUser) {\r\n this.username = this.clientUser.name;\r\n this.selectedProfileName = this.clientUser.profile.name;\r\n this.email = this.clientUser.email;\r\n\r\n if (this.clientUser.userConfig != null) {\r\n if (this.clientUser.userConfig.language != null && this.clientUser.userConfig.language != undefined && this.clientUser.userConfig.language.trim() != \"\")\r\n this.selectedLanguage = this.clientUser.userConfig.language;\r\n if (this.clientUser.userConfig.dateFormat != null && this.clientUser.userConfig.dateFormat != undefined)\r\n this.selectedDateFormat = this.clientUser.userConfig.dateFormat;\r\n if (this.clientUser.userConfig.timeFormat != null && this.clientUser.userConfig.timeFormat != undefined)\r\n this.selectedTimeFormat = this.clientUser.userConfig.timeFormat;\r\n }\r\n }\r\n },\r\n\r\n async getProfiles() {\r\n try {\r\n this.reset(null);\r\n let res = await new FetchClientProfilesCommand().execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) {\r\n this.availableProfiles = res.clientProfiles.map((p) => ({\r\n text: `${p.name.includes(this.profileNameInternalString) ? p.name.substring(0, p.name.lastIndexOf(this.profileNameInternalString)) : p.name} (${\r\n p.associatedHierarchyList.length\r\n ? p.associatedHierarchyList.map((f) => \"📁 \" + f.name.replace(\"/\", \"Root\")).join(\", \")\r\n : this.$t(\"user_management.noFolder\")\r\n })`,\r\n value: p.name,\r\n }));\r\n }\r\n } catch (error) {\r\n console.log(\"Something went wrong during FetchClientProfilesCommand execution: \", error);\r\n }\r\n },\r\n\r\n async getLanguages() {\r\n try {\r\n let res = await new GetAvailableLanguagesCommand().execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) this.availableLanguages = res.availableLanguages;\r\n else this.availableLanguages = [\"en\", \"it\"];\r\n } catch (error) {\r\n console.log(\"Something went wrong during GetAvailableLanguagesCommand execution: \", error);\r\n }\r\n },\r\n\r\n onCloseClick() {\r\n this.$emit(\"close\");\r\n this.reset(null);\r\n },\r\n\r\n async onSaveClick() {\r\n if (this.canSave && !this.saving) {\r\n try {\r\n this.saving = true;\r\n\r\n const reqData = new CreateClientUserReqData();\r\n reqData.username = this.username;\r\n reqData.email = this.email;\r\n reqData.password = this.password1;\r\n reqData.profileName = this.selectedProfileName;\r\n reqData.language = this.selectedLanguage;\r\n reqData.dateFormat = this.selectedDateFormat;\r\n reqData.timeFormat = this.selectedTimeFormat;\r\n let res: ServiceResponseData;\r\n if (this.clientUser != null) res = await new EditClientUserCommand(reqData).execute();\r\n else res = await new CreateClientUserCommand(reqData).execute();\r\n\r\n if (res.responseStatus == ApiResponseStatusEnum.Success && res.responseString != \"GenericError\") {\r\n if (this.password1 != null && this.password1.length > 0) this.justSaved = true;\r\n else this.onCloseClick();\r\n } else if (this.clientUser != null) this.errorMessage = this.$t(\"user_management.error_editing\", { 0: this.username });\r\n else {\r\n this.errorMessage = this.$t(\"user_management.error_adding\", { 0: this.username });\r\n this.reset(null);\r\n }\r\n this.saving = false;\r\n } catch (error) {\r\n console.log(\"Something went wrong during CreateClientUserCommand/EditClientUserCommand execution: \", error);\r\n this.saving = false;\r\n }\r\n }\r\n },\r\n\r\n onScoreChange(score) {\r\n this.currentScore = score;\r\n },\r\n\r\n onFeedbackChange({ suggestions, warning }) {\r\n this.suggestions = suggestions;\r\n this.warning = warning;\r\n },\r\n\r\n copyEmailTemplate(lang: string) {\r\n if (this.availableLanguages.includes(lang)) {\r\n let toCopy = this.$t(\"user_management.email_template_en\", { 0: this.selectedProfileName, 1: this.username, 2: this.password1, 3: window.location.origin });\r\n if (this.$te(\"user_management.email_template_\" + lang))\r\n toCopy = this.$t(\"user_management.email_template_\" + lang, { 0: this.selectedProfileName, 1: this.username, 2: this.password1, 3: window.location.origin });\r\n navigator.clipboard.writeText(toCopy);\r\n this.emailTemplateAlert = true;\r\n console.log(\"Copied to the clipboard: \", toCopy);\r\n } else {\r\n console.error(\"Email template not available in the selected language\");\r\n }\r\n },\r\n },\r\n async mounted() {\r\n await this.getProfiles();\r\n await this.getLanguages();\r\n this.reset(this.clientUser);\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditClientUserModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditClientUserModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditClientUserModal.vue?vue&type=template&id=a0cafa30&\"\nimport script from \"./EditClientUserModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditClientUserModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VAlert,VAutocomplete,VBtn,VCard,VCardActions,VCardText,VCardTitle,VDivider,VSelect,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.clientUser)?_c('v-card',{staticClass:\"pa-4\",attrs:{\"flat\":\"\"}},[_c('v-card-title',{staticClass:\"ma-0 pa-0 mb-2\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"user_management.delete_profile_title\"))+\" \"),_c('v-spacer'),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('close')}}},[_c('v-fa-icon',{attrs:{\"icon\":\"times\"}})],1)],1),_c('v-divider',{staticClass:\"mb-4\"}),_c('v-card-text',{staticClass:\"ma-0 pa-0 mb-2\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"user_management.delete_user_text\", [_vm.clientUser.name]))+\" \")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"error\"},on:{\"click\":function($event){return _vm.$emit('confirm')}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"user_management.confirm_to_delete_user\"))+\" \")]),_c('v-spacer')],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { ClientUser } from \"@/model/data/authentication/ClientUser\";\r\n\r\nexport default Vue.extend({\r\n props: {\r\n clientUser: {\r\n type: ClientUser,\r\n required: true,\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeleteClientUserModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeleteClientUserModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DeleteClientUserModal.vue?vue&type=template&id=589a2576&\"\nimport script from \"./DeleteClientUserModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./DeleteClientUserModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VDivider,VSpacer})\n","import { ClientUser } from \"@/model/data/authentication/ClientUser\";\r\nimport { AxiosResponse } from \"axios\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\n\r\nexport class FetchClientUsersResponse extends ServiceResponseData {\r\n clientUsers: ClientUser[] = [];\r\n\r\n constructor(response: AxiosResponse) {\r\n super(response);\r\n if (response && response.data.Payload) {\r\n response.data.Payload.forEach((u) => {\r\n this.clientUsers.push(ClientUser.parseFrom(u));\r\n });\r\n }\r\n }\r\n}\r\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { FetchClientUsersResponse } from \"./FetchClientUsersResponse\";\r\n\r\nconst ENDPOINT = \"/usermanagement/users\";\r\n\r\nexport class FetchClientUsersCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"get\";\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand();\r\n return new FetchClientUsersResponse(res);\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { mapState } from \"vuex\";\r\nimport { RootState } from \"@/store\";\r\n\r\n// Vue components\r\nimport UserMFASwitch from \"@/views/App/Tools/UserManagement/UserMFASwitch.vue\";\r\nimport EditClientUserModal from \"@/views/App/Tools/UserManagement/EditClientUserModal.vue\";\r\nimport DeleteClientUserModal from \"@/views/App/Tools/UserManagement/DeleteClientUserModal.vue\";\r\n\r\n// Model\r\nimport { ApiResponseStatusEnum } from \"@/model/communication/ApiResponseStatusEnum\";\r\nimport { FetchClientUsersCommand } from \"@/model/communication/users/FetchClientUsersCommand\";\r\nimport { DeleteClientUserCommand } from \"@/model/communication/users/DeleteClientUserCommand\";\r\nimport { DeleteClientUserReqData } from \"@/model/communication/users/DeleteClientUserReqData\";\r\nimport { Organization } from \"@/model/data/organizations/Organization\";\r\nimport { ClientUser } from \"@/model/data/authentication/ClientUser\";\r\n\r\nexport default Vue.extend({\r\n components: {\r\n UserMFASwitch,\r\n EditClientUserModal,\r\n DeleteClientUserModal,\r\n },\r\n data() {\r\n return {\r\n profileNameInternalString: \"@$\",\r\n loading: false,\r\n showErrorAlert: false,\r\n search: \"\",\r\n users: [],\r\n showEditUserDialog: false,\r\n showDeleteUserDialog: false,\r\n userToEdit: null,\r\n userToDelete: null,\r\n filterUsersByProfile: false,\r\n selectedProfileName: null,\r\n };\r\n },\r\n computed: {\r\n ...mapState({ authUser: (state: RootState) => state.authMod.currentUser }),\r\n\r\n headers() {\r\n let res = [];\r\n\r\n res.push({ text: this.$t(\"common.name\"), value: \"name\" });\r\n res.push({ text: this.$t(\"user_management.profile\"), value: \"profile.name\" });\r\n res.push({ text: this.$t(\"user_management.visibility\"), value: \"visibility\", sortable: false });\r\n if (this.organization == null) res.push({ text: this.$t(\"common.actions\"), value: \"action\", sortable: false });\r\n if (this.organization == null) res.push({ text: this.$t(\"login.mfa\"), value: \"mfa\", sortable: false, width: \"1\" });\r\n return res;\r\n },\r\n },\r\n props: {\r\n organization: { type: Object as () => Organization, required: false },\r\n },\r\n watch: {\r\n organization() {\r\n this.getUsers();\r\n },\r\n },\r\n methods: {\r\n openEditUserDialog(user: ClientUser) {\r\n this.userToEdit = user;\r\n this.showEditUserDialog = true;\r\n },\r\n\r\n openDeleteUserDialog(user: ClientUser) {\r\n this.userToDelete = user;\r\n this.showDeleteUserDialog = true;\r\n },\r\n\r\n filterUsersTable(profileName: string) {\r\n this.filterUsersByProfile = true;\r\n this.selectedProfileName = profileName;\r\n },\r\n\r\n async getUsers() {\r\n this.showEditUserDialog = false;\r\n this.userToEdit = null;\r\n this.userToDelete = null;\r\n this.filterUsersByProfile = false;\r\n this.selectedProfileName = null;\r\n\r\n if (this.$refs.editClientUserModal) this.$refs.editClientUserModal.getProfiles();\r\n\r\n if (!this.loading) {\r\n try {\r\n this.loading = true;\r\n let res = await new FetchClientUsersCommand().execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) {\r\n if (this.organization != null)\r\n if (res.clientUsers.some((u) => u.profile.organizationId && u.profile.organizationId == (this.organization as Organization).id))\r\n this.users = res.clientUsers.filter((u) => u.profile.organizationId && u.profile.organizationId == (this.organization as Organization).id);\r\n else this.users = [];\r\n else this.users = res.clientUsers;\r\n }\r\n this.loading = false;\r\n } catch (error) {\r\n console.log(\"Something went wrong during FetchClientUsersCommand execution: \", error);\r\n this.loading = false;\r\n }\r\n }\r\n },\r\n\r\n async deleteUser() {\r\n try {\r\n this.showDeleteUserDialog = false;\r\n const res = await new DeleteClientUserCommand(new DeleteClientUserReqData(this.userToDelete.name)).execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) {\r\n this.getUsers();\r\n this.$emit(\"getProfiles\");\r\n } else this.showErrorAlert = true;\r\n } catch (error) {\r\n console.log(\"Something went wrong during DeleteClientUserCommand execution: \", error);\r\n }\r\n },\r\n },\r\n mounted() {\r\n this.getUsers();\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-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--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-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=c208b2b4&\"\nimport script from \"./UsersTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./UsersTable.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\nimport { VToolbarTitle } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAlert,VBtn,VCard,VDataTable,VDialog,VDivider,VSpacer,VTextField,VToolbar,VToolbarTitle})\n","import { FolderHierarchy } from \"@/model/data/FolderHierarchy\";\r\nimport { ClientPrivileges } from \"@/model/data/authentication/ClientPrivilegesEnum\";\r\nimport { ClientProfile } from \"@/model/data/authentication/ClientProfile\";\r\nimport { AxiosResponse } from \"axios\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\n\r\nexport class FetchClientProfilesResponse extends ServiceResponseData {\r\n clientProfiles: ClientProfileExtended[] = [];\r\n\r\n constructor(response: AxiosResponse) {\r\n super(response);\r\n if (response && response.data && response.data.Payload) {\r\n response.data.Payload.forEach((u) => {\r\n this.clientProfiles.push(ClientProfileExtended.parseFrom(u));\r\n });\r\n }\r\n }\r\n}\r\n\r\nexport class ClientProfileExtended extends ClientProfile {\r\n associatedUsersCount: number;\r\n associatedExternalUsersCount: number;\r\n\r\n static parseFrom(data: any): ClientProfileExtended {\r\n let res = new ClientProfileExtended();\r\n res.name = data.Name;\r\n res.windowsGroup = data.WindowsGroup;\r\n res.authPluginGroup = data.AuthPluginGroup;\r\n res.privileges = new ClientPrivileges(data.Privileges.PrivilegeName);\r\n res.associatedUsersCount = data.AssociatedUsersCount;\r\n res.associatedExternalUsersCount = data.AssociatedExternalUsersCount;\r\n res.associatedHierarchyList = [];\r\n if (data.AssociatedHierarchyList) {\r\n data.AssociatedHierarchyList.forEach((c) => {\r\n res.associatedHierarchyList.push(FolderHierarchy.parseFrom(c));\r\n });\r\n }\r\n if (data.OrganizationId != null) res.organizationId = data.OrganizationId;\r\n\r\n return res;\r\n }\r\n}\r\n","// Components\nimport VExpansionPanel from './VExpansionPanel'\nimport { VExpandTransition } from '../transitions'\n\n// Mixins\nimport Bootable from '../../mixins/bootable'\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, VueConstructor } from 'vue'\n\nconst baseMixins = mixins(\n Bootable,\n Colorable,\n RegistrableInject<'expansionPanel', VueConstructor>('expansionPanel', 'v-expansion-panel-content', 'v-expansion-panel')\n)\n\ninterface options extends ExtractVue {\n expansionPanel: InstanceType\n}\n\n/* @vue/component */\nexport default baseMixins.extend().extend({\n name: 'v-expansion-panel-content',\n\n computed: {\n isActive (): boolean {\n return this.expansionPanel.isActive\n },\n },\n\n created () {\n this.expansionPanel.registerContent(this)\n },\n\n beforeDestroy () {\n this.expansionPanel.unregisterContent()\n },\n\n render (h): VNode {\n return h(VExpandTransition, this.showLazyContent(() => [\n h('div', this.setBackgroundColor(this.color, {\n staticClass: 'v-expansion-panel-content',\n directives: [{\n name: 'show',\n value: this.isActive,\n }],\n }), [\n h('div', { class: 'v-expansion-panel-content__wrap' }, getSlot(this)),\n ]),\n ]))\n },\n})\n","export class DeleteClientProfileReqData {\r\n name: string;\r\n\r\n constructor(name: string) {\r\n this.name = name;\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"px-4 pb-2\",attrs:{\"outlined\":\"\"}},[_c('v-alert',{staticClass:\"mt-3\",attrs:{\"type\":\"error\",\"text\":\"\",\"dismissible\":\"\"},model:{value:(_vm.showErrorAlert),callback:function ($$v) {_vm.showErrorAlert=$$v},expression:\"showErrorAlert\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"user_management.error_deleting_profile\"))+\" \")]),_c('v-toolbar',{attrs:{\"flat\":\"\"}},[_c('v-fa-icon',{staticClass:\"mr-3\",attrs:{\"icon\":\"list\",\"medium\":\"\",\"color\":\"primary\"}}),(!_vm.organization)?_c('v-toolbar-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"organizationsManagement.profiles\"))+\" \")]):_c('v-toolbar-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"organizationsManagement.organizationProfiles\"))+\" \")]),(_vm.isOrganizationManagementEnabled && _vm.organization)?_c('v-btn',{staticClass:\"mx-6\",attrs:{\"small\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.showAddProfilesToTheOrganizationDialog = true}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"organizationsManagement.addProfiles\"))+\" \")]):_vm._e(),_c('v-spacer'),_c('v-card',{attrs:{\"flat\":\"\",\"width\":\"30%\"}},[_c('v-text-field',{attrs:{\"append-icon\":\"fa-search\",\"label\":_vm.$t('common.search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),(!_vm.organization)?_c('v-btn',{staticClass:\"ml-2\",attrs:{\"icon\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.openEditProfileDialog(null)}}},[_c('v-fa-icon',{attrs:{\"icon\":\"plus\"}})],1):_vm._e()],1),_c('v-divider'),_c('v-data-table',{staticClass:\"px-4 mt-2\",attrs:{\"headers\":_vm.headers,\"items\":_vm.organization == null ? _vm.profiles : _vm.profiles.filter(function (p) { return p.organizationId == _vm.organization.id; }),\"dense\":\"\",\"loading\":_vm.loading,\"item-key\":\"name\",\"search\":_vm.search,\"hide-default-footer\":_vm.organization != null && _vm.profiles.filter(function (p) { return p.organizationId == _vm.organization.id; }).length < 10},scopedSlots:_vm._u([{key:\"header.associatedExternalUsersCount\",fn:function(ref){\nvar header = ref.header;\nreturn [_c('v-tooltip',{staticClass:\"opaque-tooltip\",attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('div',_vm._g({},on),[_c('span',{domProps:{\"textContent\":_vm._s(header.text)}}),_vm._v(\" \"),_c('v-fa-icon',{staticClass:\"ml-1\",attrs:{\"icon\":\"info-circle\",\"small\":\"\"}})],1)]}}],null,true)},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('user_management.externalUserTooltip'))}})])]}},{key:\"item.name\",fn:function(ref){\nvar value = ref.value;\nreturn [(value.includes(_vm.profileNameInternalString))?_c('span',[(value == _vm.authUser.profile.name)?_c('b',{domProps:{\"textContent\":_vm._s(value.substring(0, value.lastIndexOf(_vm.profileNameInternalString)) + ' (' + _vm.$t('user_management.your_profile') + ')')}}):_c('span',{domProps:{\"textContent\":_vm._s(value.substring(0, value.lastIndexOf(_vm.profileNameInternalString)))}})]):_c('span',[(value == _vm.authUser.profile.name)?_c('b',{domProps:{\"textContent\":_vm._s(value + ' (' + _vm.$t('user_management.your_profile') + ')')}}):_c('span',{domProps:{\"textContent\":_vm._s(value)}})])]}},{key:\"item.organizationId\",fn:function(ref){\nvar value = ref.value;\nreturn [_c('span',{domProps:{\"textContent\":_vm._s(value != null ? (_vm.availableOrganizations.some(function (o) { return o.id == value; }) ? _vm.availableOrganizations.filter(function (o) { return o.id == value; })[0].name : '-') : '-')}})]}},{key:\"item.visibility\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._l((item.associatedHierarchyList),function(folder){return _c('span',{key:folder.id},[_c('v-fa-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"folder\",\"small\":\"\",\"color\":\"primary\"}}),_c('span',{staticClass:\"mr-4\",domProps:{\"textContent\":_vm._s(folder.name)}}),_c('br')],1)}),(!item.associatedHierarchyList || !item.associatedHierarchyList.length)?_c('div',[_c('v-fa-icon',{staticClass:\"mr-1\",attrs:{\"icon\":\"exclamation-triangle\",\"color\":\"warning\",\"small\":\"\"}}),_vm._v(\" \"),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('user_management.noFolder'))}})],1):_vm._e()]}},{key:\"item.associatedUsersCount\",fn:function(ref){\nvar item = ref.item;\nvar value = ref.value;\nreturn [(item.name != _vm.authUser.profile.name || _vm.isUserSuperAdminComp == true)?_c('span',[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$tc('common.users', value, { count: value }))}}),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('filterUsersTable', item.name)}}},[_c('v-fa-icon',{attrs:{\"icon\":\"filter\",\"small\":\"\"}})],1)],1):_vm._e()]}},{key:\"item.associatedExternalUsersCount\",fn:function(ref){\nvar value = ref.value;\nreturn [_c('span',{domProps:{\"textContent\":_vm._s(_vm.$tc('common.users', value, { count: value }))}})]}},{key:\"item.action\",fn:function(ref){\nvar item = ref.item;\nreturn [(item.name != _vm.authUser.profile.name || _vm.isUserSuperAdminComp == true)?_c('span',[_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.openEditProfileDialog(item)}}},[_c('v-fa-icon',{attrs:{\"color\":\"warning\",\"icon\":\"edit\"}})],1),_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.openDeleteProfileDialog(item)}}},[_c('v-fa-icon',{attrs:{\"color\":\"error\",\"icon\":\"trash\"}})],1)],1):_vm._e()]}}],null,true)}),_c('v-dialog',{attrs:{\"width\":\"90%\"},on:{\"click:outside\":function($event){return _vm.getProfiles()}},model:{value:(_vm.showEditProfileDialog),callback:function ($$v) {_vm.showEditProfileDialog=$$v},expression:\"showEditProfileDialog\"}},[_c('EditClientProfileModal',{attrs:{\"clientProfile\":_vm.profileToEdit,\"availableOrganizations\":_vm.availableOrganizations},on:{\"close\":function($event){return _vm.getProfiles()}}})],1),_c('v-dialog',{attrs:{\"width\":\"40%\"},on:{\"click:outside\":function($event){_vm.showDeleteProfileDialog = false}},model:{value:(_vm.showDeleteProfileDialog),callback:function ($$v) {_vm.showDeleteProfileDialog=$$v},expression:\"showDeleteProfileDialog\"}},[(_vm.profileToDelete)?_c('DeleteClientProfileModal',{attrs:{\"clientProfile\":_vm.profileToDelete},on:{\"close\":function($event){_vm.showDeleteProfileDialog = false},\"confirm\":function($event){return _vm.deleteProfile()}}}):_vm._e()],1),_c('v-dialog',{attrs:{\"width\":\"70%\"},on:{\"click:outside\":function($event){_vm.showAddProfilesToTheOrganizationDialog = false}},model:{value:(_vm.showAddProfilesToTheOrganizationDialog),callback:function ($$v) {_vm.showAddProfilesToTheOrganizationDialog=$$v},expression:\"showAddProfilesToTheOrganizationDialog\"}},[_c('EditOrganizationProfiles',{attrs:{\"organization\":_vm.organization,\"profiles\":_vm.profiles},on:{\"save\":function($event){return _vm.editOrganizationProfiles($event)}}})],1)],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('v-card',{staticClass:\"pb-4\",attrs:{\"flat\":\"\"}},[_c('v-card-title',[_c('v-fa-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"edit\"}}),_vm._v(\" \"+_vm._s(_vm.$t(_vm.clientProfile != null ? \"user_management.edit_profile\" : \"user_management.add_new_profile\"))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"px-8 mr-2\",attrs:{\"color\":\"success\",\"disabled\":!_vm.canSave,\"loading\":_vm.saving},on:{\"click\":function($event){return _vm.onSaveClick()}}},[_c('v-fa-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"save\"}}),_vm._v(\" \"+_vm._s(_vm.$t(\"common.save\"))+\" \")],1),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('close')}}},[_c('v-fa-icon',{attrs:{\"icon\":\"times\"}})],1)],1),_c('v-divider',{staticClass:\"mx-6\"}),(_vm.errorMessage)?_c('v-alert',{staticClass:\"ma-2\",attrs:{\"type\":\"error\"}},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.errorMessage)}})]):_vm._e(),_c('v-card-text',[_c('v-row',[_c('v-col',{attrs:{\"cols\":_vm.$vuetify.breakpoint.mdAndDown ? 12 : 7}},[_c('v-card',{staticClass:\"px-4\",attrs:{\"outlined\":\"\"}},[_c('v-card-title',{staticClass:\"text-h6 ma-0 pa-0 mt-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"common.options\"))+\" \")]),_c('v-divider',{staticClass:\"mb-8 mt-2\"}),(_vm.clientProfile != null && _vm.clientProfile.name.includes(_vm.profileNameInternalString))?_c('v-text-field',{attrs:{\"value\":_vm.clientProfile.name.substring(0, _vm.clientProfile.name.lastIndexOf(_vm.profileNameInternalString)),\"label\":_vm.$t('user_management.name'),\"disabled\":_vm.clientProfile != null}}):_c('v-text-field',{attrs:{\"label\":_vm.$t('user_management.name'),\"disabled\":_vm.clientProfile != null,\"maxlength\":_vm.profileNameMaxLength},model:{value:(_vm.profileName),callback:function ($$v) {_vm.profileName=$$v},expression:\"profileName\"}}),(_vm.startupData != null && _vm.isWSFedAuthenticationEnabledComp)?_c('v-text-field',{attrs:{\"label\":_vm.$t('user_management.wsfed_profile_name')},model:{value:(_vm.wsFedProfile),callback:function ($$v) {_vm.wsFedProfile=$$v},expression:\"wsFedProfile\"}}):_vm._e(),(_vm.isOrganizationManagementEnabled)?_c('v-combobox',{attrs:{\"items\":_vm.availableOrganizations.map(function (o) { return ({ text: o.name, value: o.id }); }),\"label\":_vm.$t('organizationsManagement.organization'),\"clearable\":\"\"},model:{value:(_vm.selectedOrganization),callback:function ($$v) {_vm.selectedOrganization=$$v},expression:\"selectedOrganization\"}}):_vm._e(),(\n _vm.startupData.azureADLoginEnabled ||\n (_vm.profileOrganization != null &&\n _vm.profileOrganization.loginModes != null &&\n _vm.profileOrganization.loginModes.some(function (l) { return l.type == _vm.LoginModeType.AzureAD && l.enabled; }))\n )?_c('v-text-field',{attrs:{\"label\":_vm.$t('user_management.azure_group_id'),\"messages\":_vm.$t('user_management.info_azure_group')},model:{value:(_vm.azureGroup),callback:function ($$v) {_vm.azureGroup=$$v},expression:\"azureGroup\"}}):(_vm.availableWindowsGroups != null && _vm.availableWindowsGroups.length > 0)?_c('v-combobox',{attrs:{\"items\":_vm.availableWindowsGroups,\"label\":_vm.$t('user_management.windows_group'),\"clearable\":\"\",\"readonly\":_vm.windowsGroupsLoading,\"loading\":_vm.windowsGroupsLoading},model:{value:(_vm.windowsGroup),callback:function ($$v) {_vm.windowsGroup=$$v},expression:\"windowsGroup\"}}):_vm._e(),(_vm.showAuthPluginGroupInput)?_c('v-text-field',{attrs:{\"label\":_vm.$t('user_management.auth_plugin_group')},model:{value:(_vm.authPluginGroup),callback:function ($$v) {_vm.authPluginGroup=$$v},expression:\"authPluginGroup\"}}):_vm._e()],1),_c('v-card',{staticClass:\"px-4 mt-4\",attrs:{\"outlined\":\"\"}},[_c('v-card-title',{staticClass:\"text-h6 ma-0 pa-0 mt-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"user_management.priviliges\"))+\" \"),_c('span',{staticClass:\"ml-2 mt-1 text-body-2\"},[_vm._v(\" (\"+_vm._s(_vm.selectedPrivilegesLength.map(function (e) { return e.length; }).reduce(function (a, b) { return a + b; }))+\"/\"+_vm._s(_vm.availablePrivilegesForThisProfile.length)+\") \")]),_c('v-spacer'),_c('span',{staticClass:\"mr-2 mt-1 text-body-2\",domProps:{\"textContent\":_vm._s(_vm.$t('common.select_all') + ':')}}),(_vm.selectedPrivilegesLength.map(function (e) { return e.length; }).reduce(function (a, b) { return a + b; }) == _vm.availablePrivilegesForThisProfile.length)?_c('v-btn',{staticClass:\"pt-1\",attrs:{\"icon\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.unselectAllPrivileges(null)}}},[_c('v-fa-icon',{attrs:{\"icon\":\"check-square\"}})],1):(_vm.selectedPrivilegesLength.map(function (e) { return e.length; }).reduce(function (a, b) { return a + b; }) == 0)?_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.selectAllPrivileges(null)}}},[_c('v-icon',[_vm._v(\"far fa-square\")])],1):_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.selectAllPrivileges(null)}}},[_c('v-fa-icon',{attrs:{\"icon\":\"minus-square\"}})],1)],1),_c('v-divider',{staticClass:\"mb-8 mt-2\"}),_vm._l((_vm.availableLicenseModules),function(licenseModule){return _c('v-row',{key:licenseModule,staticClass:\"pl-6 pr-2\"},[_c('v-col',{staticClass:\"ma-0 pa-0\",attrs:{\"cols\":\"auto\"}},[_c('v-avatar',{staticClass:\"mr-2\",attrs:{\"min-width\":\"24px\"}},[_c('v-icon',{attrs:{\"color\":_vm.getLicenseModuleIconAndColor(licenseModule).color}},[_vm._v(\" \"+_vm._s(_vm.getLicenseModuleIconAndColor(licenseModule).icon)+\" \")])],1)],1),(_vm.selectedPrivileges != null && _vm.selectedPrivileges.length > 0)?_c('v-col',{staticClass:\"pa-0 ma-1\",attrs:{\"cols\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.availablePrivilegesForThisProfile.filter(function (p) { return p.requiredLicense == licenseModule; }),\"label\":_vm.$t(_vm.getLicenseModuleLabel(licenseModule)),\"item-text\":function (v) { return _vm.$t(v.namei18n); },\"item-value\":\"name.privilegeName\",\"chips\":\"\",\"multiple\":\"\",\"clearable\":\"\",\"dense\":\"\"},scopedSlots:_vm._u([{key:\"selection\",fn:function(ref){\n var item = ref.item;\n var index = ref.index;\nreturn [(index == 0)?_c('v-chip',{staticClass:\"my-1\"},[_vm._v(\" \"+_vm._s(_vm.$t(item.namei18n))+\" \")]):_vm._e(),(index == 1)?_c('v-chip',{staticClass:\"my-1\"},[_vm._v(\" \"+_vm._s(_vm.$t(item.namei18n))+\" \")]):_vm._e(),(index == 2)?_c('span',{staticClass:\"grey--text text-caption\"},[_vm._v(\" (+\"+_vm._s(_vm.selectedPrivileges.find(function (s) { return s.licenseModule == licenseModule; }).privileges.length - 2)+\" \"+_vm._s(_vm.$t(\"common.others\"))+\") \")]):_vm._e()]}}],null,true),model:{value:(_vm.selectedPrivileges.find(function (s) { return s.licenseModule == licenseModule; }).privileges),callback:function ($$v) {_vm.$set(_vm.selectedPrivileges.find(function (s) { return s.licenseModule == licenseModule; }), \"privileges\", $$v)},expression:\"selectedPrivileges.find((s) => s.licenseModule == licenseModule).privileges\"}})],1):_vm._e(),(_vm.selectedPrivileges != null && _vm.selectedPrivileges.length > 0)?_c('v-col',{staticClass:\"pa-0 ma-1 ml-6 mt-2\",attrs:{\"cols\":\"auto\"}},[(\n _vm.selectedPrivilegesLength.find(function (s) { return s.licenseModule == licenseModule; }).length ==\n _vm.availablePrivilegesForThisProfile.filter(function (p) { return p.requiredLicense == licenseModule; }).length\n )?_c('v-btn',{attrs:{\"icon\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.unselectAllPrivileges(licenseModule)}}},[_c('v-fa-icon',{attrs:{\"icon\":\"check-square\"}})],1):(_vm.selectedPrivilegesLength.find(function (s) { return s.licenseModule == licenseModule; }).length == 0)?_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.selectAllPrivileges(licenseModule)}}},[_c('v-icon',[_vm._v(\"far fa-square\")])],1):_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.selectAllPrivileges(licenseModule)}}},[_c('v-fa-icon',{attrs:{\"icon\":\"minus-square\"}})],1)],1):_vm._e()],1)})],2)],1),_c('v-col',{attrs:{\"cols\":_vm.$vuetify.breakpoint.mdAndDown ? 12 : 5}},[_c('v-card',{staticClass:\"px-4\",attrs:{\"outlined\":\"\",\"max-height\":\"700\"}},[_c('v-card-title',{staticClass:\"text-h6 ma-0 pa-0 mt-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"user_management.enabled_folders\"))+\" \")]),_c('v-divider',{staticClass:\"mt-2\"}),_c('v-card-text',{staticClass:\"fill-height\"},[_c('DeviceFolderTree',{staticStyle:{\"max-height\":\"600px\",\"overflow\":\"auto\"},attrs:{\"leaf\":false,\"title\":_vm.$t('common.select_folder'),\"multiple-active\":\"\"},model:{value:(_vm.selectedFolders),callback:function ($$v) {_vm.selectedFolders=$$v},expression:\"selectedFolders\"}})],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\nimport { CreateClientProfileReqData } from \"./CreateClientProfileReqData\";\r\n\r\nconst ENDPOINT = \"/usermanagement/profiles\";\r\n\r\nexport class CreateClientProfileCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"post\";\r\n clientProfileReqData: CreateClientProfileReqData;\r\n\r\n constructor(clientProfileReqData: CreateClientProfileReqData) {\r\n super();\r\n this.clientProfileReqData = clientProfileReqData;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand(this.clientProfileReqData);\r\n return new ServiceResponseData(res);\r\n }\r\n}\r\n","import { ClientPrivileges } from \"@/model/data/authentication/ClientPrivilegesEnum\";\r\n\r\nexport class CreateClientProfileReqData {\r\n name: string;\r\n organizationId: number;\r\n windowsGroup: string;\r\n authPluginGroup: string;\r\n privileges: ClientPrivileges;\r\n associatedFoldersIds: number[];\r\n}\r\n","import { AxiosResponse } from \"axios\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\n\r\nexport class FetchWindowsGruoupsResponse extends ServiceResponseData {\r\n groups: string[] = [];\r\n\r\n constructor(response: AxiosResponse) {\r\n super(response);\r\n if (response && response.data.Payload) {\r\n response.data.Payload.forEach((u) => {\r\n this.groups.push(u);\r\n });\r\n }\r\n }\r\n}\r\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { FetchWindowsGruoupsResponse } from \"./FetchWindowsGroupsResponse\";\r\n\r\nconst ENDPOINT = \"/usermanagement/windows_groups\";\r\n\r\nexport class FetchWindowsGroupsCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"get\";\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand();\r\n return new FetchWindowsGruoupsResponse(res);\r\n }\r\n}\r\n","import { AxiosResponse } from \"axios\";\r\nimport { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\nimport { FetchWindowsGruoupsResponse } from \"./FetchWindowsGroupsResponse\";\r\n\r\nconst ENDPOINT = \"/usermanagement/any_auth_plugin\";\r\n\r\nexport class GetAnyAuthPluginCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"get\";\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand();\r\n return new GetAnyAuthPluginResData(res);\r\n }\r\n}\r\n\r\nexport class GetAnyAuthPluginResData extends ServiceResponseData {\r\n any: boolean = false;\r\n\r\n constructor(response: AxiosResponse) {\r\n super(response);\r\n // console.log(\"response\", response);\r\n if (response && response.data.Payload) {\r\n this.any = response.data.Payload.Any;\r\n }\r\n }\r\n}\r\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\nimport { CreateClientProfileReqData } from \"./CreateClientProfileReqData\";\r\n\r\nconst ENDPOINT = \"/usermanagement/profiles\";\r\n\r\nexport class UpdateClientProfileCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"patch\";\r\n clientProfileReqData: CreateClientProfileReqData;\r\n\r\n constructor(clientProfileReqData: CreateClientProfileReqData) {\r\n super();\r\n this.clientProfileReqData = clientProfileReqData;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand(this.clientProfileReqData);\r\n return new ServiceResponseData(res);\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { RootState } from \"@/store\";\r\nimport Vue from \"vue\";\r\nimport { mapGetters, mapState } from \"vuex\";\r\n\r\n// Vue components\r\nimport DeviceFolderTree from \"@/components/DeviceFolderTree.vue\";\r\n\r\n// Model\r\nimport { ApiResponseStatusEnum } from \"@/model/communication/ApiResponseStatusEnum\";\r\nimport { ServiceResponseData } from \"@/model/communication/ServiceResponseData\";\r\nimport { CreateClientProfileCommand } from \"@/model/communication/users/CreateClientProfileCommand\";\r\nimport { CreateClientProfileReqData } from \"@/model/communication/users/CreateClientProfileReqData\";\r\nimport { FetchWindowsGroupsCommand } from \"@/model/communication/users/FetchWindowsGroupsCommand\";\r\nimport { GetAnyAuthPluginCommand } from \"@/model/communication/users/GetAnyAuthPluginCommand\";\r\nimport { UpdateClientProfileCommand } from \"@/model/communication/users/UpdateClientProfileCommand\";\r\nimport { ClientPrivileges } from \"@/model/data/authentication/ClientPrivilegesEnum\";\r\nimport { ClientProfile } from \"@/model/data/authentication/ClientProfile\";\r\nimport { LicenseData } from \"@/model/data/License/LicenseData\";\r\nimport { defaultLicenseModuleEnumSorting, getLicenseModuleLabel, LicenseModuleEnum } from \"@/model/data/License/LicenseModuleEnum\";\r\nimport { LoginMode, LoginModeType } from \"@/model/data/organizations/LoginMode\";\r\nimport { Organization } from \"@/model/data/organizations/Organization\";\r\nimport menu from \"@/store/modules/ApplicationModule/data/menu\";\r\nimport Privileges, { SinglePrivilege } from \"@/utility/UserPrivileges\";\r\n\r\nexport default Vue.extend({\r\n components: {\r\n DeviceFolderTree,\r\n },\r\n data() {\r\n return {\r\n LoginModeType,\r\n profileNameMaxLength: 58,\r\n profileNameInternalString: \"@$\",\r\n profileName: \"\",\r\n windowsGroup: \"\",\r\n authPluginGroup: \"\",\r\n selectedPrivileges: [],\r\n selectedFolders: [],\r\n errorMessage: \"\",\r\n windowsGroupsLoading: false,\r\n availableWindowsGroups: [],\r\n showAuthPluginGroupInput: false,\r\n azureGroup: \"\",\r\n wsFedProfile: \"\",\r\n\r\n selectedOrganization: null,\r\n saving: false,\r\n };\r\n },\r\n props: {\r\n clientProfile: ClientProfile,\r\n availableOrganizations: { type: Array as () => Organization[], default: [] },\r\n },\r\n computed: {\r\n ...mapState({\r\n licenseData: (state: RootState) => state.license.licenseModules,\r\n startupData: (state: RootState) => state.application.startupData,\r\n authUser: (state: RootState) => state.authMod.currentUser,\r\n }),\r\n\r\n ...mapGetters([\"isUserSuperAdmin\"]),\r\n\r\n isUserSuperAdminComp() {\r\n return this.isUserSuperAdmin;\r\n },\r\n\r\n isWSFedAuthenticationEnabledComp() {\r\n return this.startupData.isWSFedAuthenticationEnabled;\r\n },\r\n\r\n isOrganizationManagementEnabled() {\r\n if (\r\n this.authUser != null &&\r\n this.authUser.profile != null &&\r\n this.authUser.profile.privileges != null &&\r\n this.authUser.profile.privileges.privilegeName != null &&\r\n this.authUser.profile.privileges.privilegeName.includes(ClientPrivileges.OrganizationsManagement.privilegeName)\r\n )\r\n return true;\r\n else return false;\r\n },\r\n\r\n canSave(): boolean {\r\n if (this.profileName == null || this.profileName.length == 0 || this.profileName.length > this.profileNameMaxLength) return false;\r\n if (this.selectedFolders == null || this.selectedFolders.length == 0) return false;\r\n if (this.selectedPrivileges == null || this.selectedPrivileges.length == 0 || this.selectedPrivileges.map((p) => p.privileges).flat().length == 0) return false;\r\n return true;\r\n },\r\n\r\n availableLicenseModules() {\r\n let res = this.defaultLicenseModuleEnumSorting();\r\n res = res.filter((v) => this.licenseData.modules.map((m) => m.module).includes(v));\r\n res.push(LicenseModuleEnum.None);\r\n // filtro in base ai privilegi del profilo dell'utente loggato\r\n res = res.filter((l) => this.availablePrivilegesForThisProfile.map((p) => p.requiredLicense).includes(l));\r\n return res;\r\n },\r\n\r\n availablePrivilegesForThisProfile(): SinglePrivilege[] {\r\n let res: SinglePrivilege[];\r\n // filtro per moduli di licenza (sul cloud comunque ci sono tutti)\r\n res = Privileges.filter((v) => (this.licenseData as LicenseData).isAvailable(v.requiredLicense));\r\n // privilegi esclusi dall'UI\r\n res = res.filter((v) => v.name != ClientPrivileges.None && v.name != ClientPrivileges.SuperAdmin);\r\n // un utente può associare a un profilo un subset dei privilegi (o tutti) associati al profilo a cui esso appartiene (tranne il super admin)\r\n if (\r\n this.authUser != null &&\r\n this.authUser.profile != null &&\r\n this.authUser.profile.privileges != null &&\r\n this.authUser.profile.privileges.privilegeName != null &&\r\n !this.isUserSuperAdminComp\r\n )\r\n res = res.filter((p) => this.authUser.profile.privileges.privilegeName.includes(p.name));\r\n\r\n // ordino in ordine alfabetico\r\n res.sort((a, b) => {\r\n if (this.$t(a.namei18n) < this.$t(b.namei18n)) return -1;\r\n if (this.$t(a.namei18n) > this.$t(b.namei18n)) return 1;\r\n return 0;\r\n });\r\n return res;\r\n },\r\n\r\n profileOrganization() {\r\n let res = null;\r\n if (this.selectedOrganization != null && this.availableOrganizations != null && this.availableOrganizations.length > 0)\r\n if (this.availableOrganizations.some((o) => o.id == this.selectedOrganization.value))\r\n res = this.availableOrganizations.filter((o) => o.id == this.selectedOrganization.value)[0];\r\n return res;\r\n },\r\n\r\n selectedPrivilegesLength() {\r\n let res = [];\r\n this.availableLicenseModules.forEach((availableLicenseModule) => {\r\n res.push({ licenseModule: availableLicenseModule, length: 0 });\r\n });\r\n\r\n this.selectedPrivileges.forEach((selectedPrivilegesSingleModule) => {\r\n res.find((s) => s.licenseModule == selectedPrivilegesSingleModule.licenseModule).length += selectedPrivilegesSingleModule.privileges.length;\r\n });\r\n\r\n return res;\r\n },\r\n },\r\n watch: {\r\n clientProfile(newValue) {\r\n this.reset(newValue);\r\n },\r\n\r\n selectedOrganization(newValue) {\r\n console.log(\"selectedOrganization changed\", newValue);\r\n this.availableWindowsGroups = [];\r\n if (newValue != null && this.availableOrganizations.some((o) => o.id == newValue.value)) {\r\n let tempOrganization = this.availableOrganizations.filter((o) => o.id == newValue.value)[0];\r\n let tempLoginModes = tempOrganization.loginModes;\r\n if (tempLoginModes != null && tempLoginModes.some((l) => l.enabled)) {\r\n tempLoginModes\r\n .filter((l) => l.enabled)\r\n .forEach(async (loginMode: LoginMode) => {\r\n switch (loginMode.type) {\r\n case LoginModeType.ADLegacy:\r\n console.log(\"Try to get the Windoes groups for the organization: \", tempOrganization);\r\n await this.getWindowsGroups();\r\n break;\r\n default:\r\n break;\r\n }\r\n });\r\n }\r\n }\r\n },\r\n },\r\n methods: {\r\n getLicenseModuleLabel,\r\n defaultLicenseModuleEnumSorting,\r\n\r\n getLicenseModuleIconAndColor(licenseModule: LicenseModuleEnum): any {\r\n let firstLevelMenu = menu.filter((m) => m.children.length > 0);\r\n switch (licenseModule) {\r\n case LicenseModuleEnum.ServiceAndUpdatesManagement:\r\n case LicenseModuleEnum.CashFlowManagement:\r\n case LicenseModuleEnum.FitnessStatistics:\r\n case LicenseModuleEnum.SecurityManagement:\r\n case LicenseModuleEnum.PredictiveMaintenance:\r\n case LicenseModuleEnum.RemoteLink:\r\n case LicenseModuleEnum.OneTimeCode:\r\n return {\r\n icon: firstLevelMenu.find((m) => m.requiredLicenseModules.includes(licenseModule)).icon,\r\n color: firstLevelMenu.find((m) => m.requiredLicenseModules.includes(licenseModule)).color,\r\n };\r\n case LicenseModuleEnum.None:\r\n return {\r\n icon: firstLevelMenu.find((m) => m.requiredLicenseModules.length == 0).icon,\r\n color: firstLevelMenu.find((m) => m.requiredLicenseModules.length == 0).color,\r\n };\r\n default:\r\n return \"\";\r\n }\r\n },\r\n\r\n unselectAllPrivileges(licenseModule: LicenseModuleEnum) {\r\n if (licenseModule == null) {\r\n this.selectedPrivileges = [];\r\n this.availableLicenseModules.forEach((element) => {\r\n this.selectedPrivileges.push({ licenseModule: element, privileges: [] });\r\n });\r\n } else if (this.selectedPrivileges.some((p) => p.licenseModule == licenseModule)) this.selectedPrivileges.find((p) => p.licenseModule == licenseModule).privileges = [];\r\n },\r\n\r\n selectAllPrivileges(licenseModule: LicenseModuleEnum) {\r\n if (licenseModule == null) {\r\n this.selectedPrivileges = [];\r\n this.availableLicenseModules.forEach((element) => {\r\n this.selectedPrivileges.push({ licenseModule: element, privileges: [] });\r\n });\r\n this.availablePrivilegesForThisProfile.forEach((availablePrivilegeForThisProfile) => {\r\n this.selectedPrivileges\r\n .find((s) => s.licenseModule == availablePrivilegeForThisProfile.requiredLicense)\r\n .privileges.push(availablePrivilegeForThisProfile.name.privilegeName);\r\n });\r\n } else if (this.selectedPrivileges.some((p) => p.licenseModule == licenseModule))\r\n this.selectedPrivileges.find((p) => p.licenseModule == licenseModule).privileges = this.availablePrivilegesForThisProfile\r\n .filter((p) => p.requiredLicense == licenseModule)\r\n .map((p) => p.name.privilegeName);\r\n },\r\n\r\n onCloseClick() {\r\n this.reset(null);\r\n this.$emit(\"close\");\r\n },\r\n\r\n async getWindowsGroups() {\r\n try {\r\n if (!this.windowsGroupsLoading) {\r\n this.windowsGroupsLoading = true;\r\n const res = await new FetchWindowsGroupsCommand().execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) {\r\n if (res.groups != null && res.groups.length > 0) {\r\n this.availableWindowsGroups = [];\r\n res.groups.forEach((group) => {\r\n this.availableWindowsGroups.push(group);\r\n });\r\n }\r\n }\r\n this.windowsGroupsLoading = false;\r\n }\r\n } catch (error) {\r\n console.log(\"Something went wrong during FetchWindowsGroupsCommand execution: \", error);\r\n this.windowsGroupsLoading = false;\r\n }\r\n },\r\n\r\n async getAnyAuthPlugin() {\r\n try {\r\n // check if any authplugin group\r\n new GetAnyAuthPluginCommand().execute().then((res) => {\r\n this.showAuthPluginGroupInput = res.any;\r\n });\r\n } catch (error) {\r\n console.log(\"Something went wrong during GetAnyAuthPluginCommand execution: \", error);\r\n }\r\n },\r\n\r\n async reset(profile: ClientProfile) {\r\n this.profileName = \"\";\r\n this.windowsGroup = \"\";\r\n this.azureGroup = \"\";\r\n this.wsFedProfile = \"\";\r\n this.authPluginGroup = \"\";\r\n this.availableWindowsGroups = [];\r\n this.showAuthPluginGroupInput = false;\r\n\r\n this.errorMessage = \"\";\r\n this.selectedFolders = [];\r\n this.selectedOrganization = null;\r\n\r\n // console.log(\"profile: \", profile);\r\n\r\n this.selectedPrivileges = [];\r\n this.availableLicenseModules.forEach((element) => {\r\n this.selectedPrivileges.push({ licenseModule: element, privileges: [] });\r\n });\r\n\r\n // await this.getWindowsGroups();\r\n await this.getAnyAuthPlugin();\r\n\r\n if (profile != null) {\r\n this.profileName = profile.name;\r\n\r\n // Profile organization\r\n if (profile.organizationId != null)\r\n this.selectedOrganization = this.availableOrganizations.map((o) => ({ text: o.name, value: o.id })).filter((o) => o.value == profile.organizationId)[0];\r\n\r\n // if (this.profileOrganization != null && this.profileOrganization.loginModes != null && this.profileOrganization.loginModes.length > 0)\r\n // await this.getWindowsGroups();\r\n // await this.getAnyAuthPlugin();\r\n\r\n // SSO login\r\n this.windowsGroup = profile.windowsGroup;\r\n if (this.startupData != null && this.isWSFedAuthenticationEnabledComp) {\r\n this.wsFedProfile = profile.windowsGroup;\r\n this.windowsGroup = \"\";\r\n } else if (\r\n (this.startupData != null && this.startupData.azureADLoginEnabled) ||\r\n (this.profileOrganization != null &&\r\n this.profileOrganization.loginModes != null &&\r\n this.profileOrganization.loginModes.some((l) => l.type == LoginModeType.AzureAD && l.enabled))\r\n ) {\r\n this.azureGroup = profile.windowsGroup;\r\n this.windowsGroup = \"\";\r\n }\r\n this.authPluginGroup = profile.authPluginGroup;\r\n\r\n // Preselect privileges\r\n try {\r\n this.availablePrivilegesForThisProfile.forEach((availablePrivilegeForThisProfile) => {\r\n if (profile.privileges.privilegeName.includes(availablePrivilegeForThisProfile.name))\r\n this.selectedPrivileges\r\n .find((s) => s.licenseModule == availablePrivilegeForThisProfile.requiredLicense)\r\n .privileges.push(availablePrivilegeForThisProfile.name.privilegeName);\r\n });\r\n } catch {\r\n this.selectedPrivileges = [];\r\n this.availableLicenseModules.forEach((element) => {\r\n this.selectedPrivileges.push({ licenseModule: element, privileges: [] });\r\n });\r\n }\r\n\r\n // Folders visibility\r\n if (profile.associatedHierarchyList != null && profile.associatedHierarchyList.length > 0) this.selectedFolders = profile.associatedHierarchyList.map((c) => c.id);\r\n else this.selectedFolders = [];\r\n }\r\n },\r\n\r\n async onSaveClick() {\r\n if (this.canSave && !this.saving) {\r\n try {\r\n this.saving = true;\r\n\r\n const reqData = new CreateClientProfileReqData();\r\n reqData.name = this.profileName;\r\n reqData.organizationId = null;\r\n if (this.selectedOrganization != null) reqData.organizationId = this.selectedOrganization.value;\r\n reqData.privileges = new ClientPrivileges(\r\n this.selectedPrivileges\r\n .map((p) => p.privileges)\r\n .flat()\r\n .join(\",\")\r\n );\r\n reqData.windowsGroup =\r\n this.windowsGroup != null && this.windowsGroup.length > 0\r\n ? this.windowsGroup\r\n : this.azureGroup != null && this.azureGroup.length > 0\r\n ? this.azureGroup\r\n : this.wsFedProfile;\r\n reqData.authPluginGroup = this.authPluginGroup;\r\n reqData.associatedFoldersIds = this.selectedFolders;\r\n\r\n let res: ServiceResponseData;\r\n if (this.clientProfile != null) res = await new UpdateClientProfileCommand(reqData).execute();\r\n else res = await new CreateClientProfileCommand(reqData).execute();\r\n\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) this.onCloseClick();\r\n else this.errorMessage = this.$t(\"user_management.error_editing\", this.profileName);\r\n\r\n this.saving = false;\r\n } catch (error) {\r\n console.log(\"Something went wrong during CreateClientProfileCommand or UpdateClientProfileCommand execution: \", error);\r\n this.saving = false;\r\n }\r\n }\r\n },\r\n },\r\n mounted() {\r\n this.reset(this.clientProfile);\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditClientProfileModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditClientProfileModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditClientProfileModal.vue?vue&type=template&id=ec7c2bf6&\"\nimport script from \"./EditClientProfileModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditClientProfileModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VCombobox } from 'vuetify/lib/components/VCombobox';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VAlert,VAvatar,VBtn,VCard,VCardText,VCardTitle,VChip,VCol,VCombobox,VDivider,VIcon,VRow,VSelect,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.clientProfile)?_c('v-card',{staticClass:\"pa-4\",attrs:{\"flat\":\"\"}},[_c('v-card-title',{staticClass:\"ma-0 pa-0 mb-2\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"user_management.delete_profile_title\"))+\" \"),_c('v-spacer'),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('close')}}},[_c('v-fa-icon',{attrs:{\"icon\":\"times\"}})],1)],1),_c('v-divider',{staticClass:\"mb-4\"}),_c('v-card-text',{staticClass:\"ma-0 pa-0 mb-2\"},[(_vm.clientProfile.name.includes(_vm.profileNameInternalString))?_c('span',[(_vm.clientProfile.associatedUsersCount > 0)?_c('span',{domProps:{\"textContent\":_vm._s(\n _vm.$t('user_management.delete_profile_text', [\n _vm.clientProfile.name.substring(0, _vm.clientProfile.name.lastIndexOf(_vm.profileNameInternalString)),\n _vm.clientProfile.associatedUsersCount ])\n )}}):_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('user_management.delete_profile_no_users_text', [_vm.clientProfile.name.substring(0, _vm.clientProfile.name.lastIndexOf(_vm.profileNameInternalString))]))}})]):_c('span',[(_vm.clientProfile.associatedUsersCount > 0)?_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('user_management.delete_profile_text', [_vm.clientProfile.name, _vm.clientProfile.associatedUsersCount]))}}):_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('user_management.delete_profile_no_users_text', [_vm.clientProfile.name.substring(0, _vm.clientProfile.name.lastIndexOf(_vm.profileNameInternalString))]))}})])]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"error\"},on:{\"click\":function($event){return _vm.$emit('confirm')}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"user_management.confirm_to_delete\"))+\" \")]),_c('v-spacer')],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { ClientProfileExtended } from \"@/model/communication/users/FetchClientProfilesResponse\";\r\nimport Vue from \"vue\";\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n profileNameInternalString: \"@$\",\r\n };\r\n },\r\n props: {\r\n clientProfile: {\r\n type: ClientProfileExtended,\r\n required: true,\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeleteClientProfileModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeleteClientProfileModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DeleteClientProfileModal.vue?vue&type=template&id=6449b958&\"\nimport script from \"./DeleteClientProfileModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./DeleteClientProfileModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VDivider,VSpacer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"flat\":\"\"}},[_c('v-card-title',{domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.addProfilesSubtitle', [_vm.organization.name]))}}),_c('v-divider',{staticClass:\"mx-6 mb-4\"}),_c('v-combobox',{staticClass:\"mx-6\",attrs:{\"multiple\":\"\",\"items\":_vm.availableProfiles,\"label\":_vm.$t('organizationsManagement.organizationProfiles'),\"small-chips\":\"\"},model:{value:(_vm.selectedProfiles),callback:function ($$v) {_vm.selectedProfiles=$$v},expression:\"selectedProfiles\"}}),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"px-4 mb-4\",attrs:{\"color\":\"success\"},domProps:{\"textContent\":_vm._s(_vm.$t('common.save'))},on:{\"click\":function($event){_vm.$emit(\n 'save',\n _vm.selectedProfiles.map(function (p) { return p.value; })\n )}}}),_c('v-spacer')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\n\r\n// Model\r\nimport { ClientProfileExtended } from \"@/model/communication/users/FetchClientProfilesResponse\";\r\nimport { Organization } from \"@/model/data/organizations/Organization\";\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n selectedProfiles: [],\r\n };\r\n },\r\n props: {\r\n organization: { type: Object as () => Organization, required: true },\r\n profiles: { type: Array as () => ClientProfileExtended[], required: true },\r\n },\r\n computed: {\r\n availableProfiles() {\r\n return this.profiles.map((p) => ({\r\n text: (p.name.includes(this.profileNameInternalString) ? p.name.substring(0, p.name.lastIndexOf(this.profileNameInternalString)) : p.name) + \" (\" + p.associatedHierarchyList.map((f) => \"📁 \" + f.name.replace(\"/\", \"Root\")).join(\", \") + \")\",\r\n value: p.name,\r\n }));\r\n },\r\n },\r\n watch: {\r\n organization(newValue) {\r\n this.reset();\r\n },\r\n },\r\n methods: {\r\n reset() {\r\n this.selectedProfiles = this.profiles\r\n .filter((p) => p.organizationId == this.organization.id)\r\n .map((p) => ({\r\n text: (p.name.includes(this.profileNameInternalString) ? p.name.substring(0, p.name.lastIndexOf(this.profileNameInternalString)) : p.name) + \" (\" + p.associatedHierarchyList.map((f) => \"📁 \" + f.name.replace(\"/\", \"Root\")).join(\", \") + \")\",\r\n value: p.name,\r\n }));\r\n },\r\n },\r\n mounted() {\r\n this.reset();\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditOrganizationProfiles.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditOrganizationProfiles.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditOrganizationProfiles.vue?vue&type=template&id=757a397c&\"\nimport script from \"./EditOrganizationProfiles.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditOrganizationProfiles.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCombobox } from 'vuetify/lib/components/VCombobox';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardTitle,VCombobox,VDivider,VSpacer})\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\n\r\nconst ENDPOINT = \"/organizations/editOrganizationProfiles\";\r\n\r\nexport class EditOrganizationProfilesCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"post\";\r\n data: EditOrganizationProfilesReqData;\r\n\r\n constructor(data: EditOrganizationProfilesReqData) {\r\n super();\r\n this.data = data;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand(this.data);\r\n return new ServiceResponseData(res);\r\n }\r\n}\r\n\r\nexport class EditOrganizationProfilesReqData {\r\n folderId: number;\r\n profileNames: string[];\r\n\r\n constructor(profileNames: string[], folderId: number) {\r\n this.profileNames = profileNames;\r\n this.folderId = folderId;\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { mapState, mapGetters } from \"vuex\";\r\nimport { RootState } from \"@/store\";\r\n\r\n// Vue components\r\nimport EditClientProfileModal from \"@/views/App/Tools/UserManagement/EditClientProfileModal.vue\";\r\nimport DeleteClientProfileModal from \"@/views/App/Tools/UserManagement/DeleteClientProfileModal.vue\";\r\nimport EditOrganizationProfiles from \"@/views/App/Tools/UserManagement/EditOrganizationProfiles.vue\";\r\n\r\n// Model\r\nimport { ApiResponseStatusEnum } from \"@/model/communication/ApiResponseStatusEnum\";\r\nimport { FetchClientProfilesCommand } from \"@/model/communication/users/FetchClientProfilesCommand\";\r\nimport { Organization } from \"@/model/data/organizations/Organization\";\r\nimport { DeleteClientProfileReqData } from \"@/model/communication/users/DeleteClientProfileReqData\";\r\nimport { DeleteClientProfileCommand } from \"@/model/communication/users/DeleteClientProfileCommand\";\r\nimport { GetOrganizationsCommand } from \"@/model/communication/organizations/GetOrganizationsCommand\";\r\nimport { ClientPrivileges } from \"@/model/data/authentication/ClientPrivilegesEnum\";\r\nimport { EditOrganizationProfilesCommand, EditOrganizationProfilesReqData } from \"@/model/communication/organizations/EditOrganizationProfilesCommand\";\r\n\r\nexport default Vue.extend({\r\n components: {\r\n EditClientProfileModal,\r\n DeleteClientProfileModal,\r\n EditOrganizationProfiles,\r\n },\r\n data() {\r\n return {\r\n profileNameInternalString: \"@$\",\r\n loading: false,\r\n showErrorAlert: false,\r\n search: \"\",\r\n profiles: [],\r\n availableOrganizations: [],\r\n showEditProfileDialog: false,\r\n showDeleteProfileDialog: false,\r\n profileToEdit: null,\r\n profileToDelete: null,\r\n showAddProfilesToTheOrganizationDialog: false,\r\n };\r\n },\r\n props: {\r\n organization: { type: Object as () => Organization, required: false },\r\n },\r\n computed: {\r\n ...mapState({ authUser: (state: RootState) => state.authMod.currentUser }),\r\n ...mapGetters([\"isUserSuperAdmin\"]),\r\n\r\n isUserSuperAdminComp() {\r\n return this.isUserSuperAdmin;\r\n },\r\n\r\n isOrganizationManagementEnabled() {\r\n if (\r\n this.authUser != null &&\r\n this.authUser.profile != null &&\r\n this.authUser.profile.privileges != null &&\r\n this.authUser.profile.privileges.privilegeName != null &&\r\n this.authUser.profile.privileges.privilegeName.includes(ClientPrivileges.OrganizationsManagement.privilegeName)\r\n )\r\n return true;\r\n else return false;\r\n },\r\n\r\n headers() {\r\n let res = [];\r\n res.push({ text: this.$t(\"common.name\"), value: \"name\" });\r\n if (this.isOrganizationManagementEnabled && !this.organization) res.push({ text: this.$t(\"user_management.organization\"), value: \"organizationId\", sortable: false });\r\n res.push({ text: this.$t(\"user_management.visibility\"), value: \"visibility\", sortable: false });\r\n res.push({ text: this.$t(\"organizationsManagement.users\"), value: \"associatedUsersCount\", sortable: false });\r\n res.push({ text: this.$t(\"organizationsManagement.externalUsers\"), value: \"associatedExternalUsersCount\", sortable: false });\r\n if (!this.organization) res.push({ text: this.$t(\"common.actions\"), value: \"action\", sortable: false });\r\n return res;\r\n },\r\n },\r\n watch: {\r\n organization() {\r\n this.getProfiles();\r\n },\r\n },\r\n methods: {\r\n openEditProfileDialog(profile: any) {\r\n this.profileToEdit = profile;\r\n this.showEditProfileDialog = true;\r\n },\r\n\r\n openDeleteProfileDialog(profile: any) {\r\n this.profileToDelete = profile;\r\n this.showDeleteProfileDialog = true;\r\n },\r\n\r\n async getProfiles() {\r\n this.showEditProfileDialog = false;\r\n this.showDeleteProfileDialog = false;\r\n this.profileToEdit = null;\r\n this.profileToDelete = null;\r\n if (!this.loading) {\r\n try {\r\n this.loading = true;\r\n let res = await new FetchClientProfilesCommand().execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) {\r\n this.profiles = res.clientProfiles;\r\n }\r\n this.$emit(\"getUsers\");\r\n this.loading = false;\r\n } catch (error) {\r\n console.log(\"Something went wrong during FetchClientProfilesCommand execution: \", error);\r\n this.loading = false;\r\n }\r\n }\r\n },\r\n\r\n async deleteProfile() {\r\n try {\r\n this.showDeleteProfileDialog = false;\r\n const res = await new DeleteClientProfileCommand(new DeleteClientProfileReqData(this.profileToDelete.name)).execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) {\r\n this.getProfiles();\r\n } else this.showErrorAlert = true;\r\n } catch (error) {\r\n console.log(\"Something went wrong during DeleteClientProfileCommand execution: \", error);\r\n }\r\n },\r\n\r\n async getOrganizations() {\r\n try {\r\n const res = await new GetOrganizationsCommand().execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) this.availableOrganizations = res.organizations;\r\n } catch (e) {\r\n console.error(\"Something went wrong during GetOrganizationsCommand execution: \", e);\r\n }\r\n },\r\n\r\n async editOrganizationProfiles(selectedProfile: string[]) {\r\n try {\r\n this.showAddProfilesToTheOrganizationDialog = false;\r\n const res = await new EditOrganizationProfilesCommand(new EditOrganizationProfilesReqData(selectedProfile, this.organization.folderId)).execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) {\r\n console.log(\"this.$emit('getOrganizations');\");\r\n this.$emit(\"getOrganizations\");\r\n } else console.error(\"Something went wrong during editOrganizationProfiles execution: \");\r\n } catch (error) {\r\n console.error(\"Something went wrong during editOrganizationProfiles execution: \", error);\r\n }\r\n },\r\n },\r\n async mounted() {\r\n if (this.isOrganizationManagementEnabled) await this.getOrganizations();\r\n this.getProfiles();\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfilesTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfilesTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProfilesTable.vue?vue&type=template&id=15f64538&\"\nimport script from \"./ProfilesTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProfilesTable.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\nimport { VToolbarTitle } from 'vuetify/lib/components/VToolbar';\nimport { VTooltip } from 'vuetify/lib/components/VTooltip';\ninstallComponents(component, {VAlert,VBtn,VCard,VDataTable,VDialog,VDivider,VSpacer,VTextField,VToolbar,VToolbarTitle,VTooltip})\n","export class DeleteClientUserReqData {\r\n name: string;\r\n\r\n constructor(name: string) {\r\n this.name = name;\r\n }\r\n}\r\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { FetchClientProfilesResponse } from \"./FetchClientProfilesResponse\";\r\n\r\nconst ENDPOINT = \"/usermanagement/profiles\";\r\n\r\nexport class FetchClientProfilesCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"get\";\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand();\r\n return new FetchClientProfilesResponse(res);\r\n }\r\n}\r\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\nimport { DeleteClientUserReqData } from \"./DeleteClientUserReqData\";\r\n\r\nconst ENDPOINT = \"/usermanagement/users\";\r\n\r\nexport class DeleteClientUserCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"delete\";\r\n data: DeleteClientUserReqData;\r\n\r\n constructor(data: DeleteClientUserReqData) {\r\n super();\r\n this.data = data;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand(this.data);\r\n return new ServiceResponseData(res);\r\n }\r\n}\r\n","// Components\nimport { VFadeTransition } from '../transitions'\nimport VExpansionPanel from './VExpansionPanel'\nimport VIcon from '../VIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, VueConstructor } from 'vue'\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject<'expansionPanel', VueConstructor>('expansionPanel', 'v-expansion-panel-header', 'v-expansion-panel')\n)\n\ninterface options extends ExtractVue {\n $el: HTMLElement\n expansionPanel: InstanceType\n}\n\nexport default baseMixins.extend().extend({\n name: 'v-expansion-panel-header',\n\n directives: { ripple },\n\n props: {\n disableIconRotate: Boolean,\n expandIcon: {\n type: String,\n default: '$expand',\n },\n hideActions: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: false,\n },\n },\n\n data: () => ({\n hasMousedown: false,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-expansion-panel-header--active': this.isActive,\n 'v-expansion-panel-header--mousedown': this.hasMousedown,\n }\n },\n isActive (): boolean {\n return this.expansionPanel.isActive\n },\n isDisabled (): boolean {\n return this.expansionPanel.isDisabled\n },\n isReadonly (): boolean {\n return this.expansionPanel.isReadonly\n },\n },\n\n created () {\n this.expansionPanel.registerHeader(this)\n },\n\n beforeDestroy () {\n this.expansionPanel.unregisterHeader()\n },\n\n methods: {\n onClick (e: MouseEvent) {\n this.$emit('click', e)\n },\n genIcon () {\n const icon = getSlot(this, 'actions') ||\n [this.$createElement(VIcon, this.expandIcon)]\n\n return this.$createElement(VFadeTransition, [\n this.$createElement('div', {\n staticClass: 'v-expansion-panel-header__icon',\n class: {\n 'v-expansion-panel-header__icon--disable-rotate': this.disableIconRotate,\n },\n directives: [{\n name: 'show',\n value: !this.isDisabled,\n }],\n }, icon),\n ])\n },\n },\n\n render (h): VNode {\n return h('button', this.setBackgroundColor(this.color, {\n staticClass: 'v-expansion-panel-header',\n class: this.classes,\n attrs: {\n tabindex: this.isDisabled ? -1 : null,\n type: 'button',\n },\n directives: [{\n name: 'ripple',\n value: this.ripple,\n }],\n on: {\n ...this.$listeners,\n click: this.onClick,\n mousedown: () => (this.hasMousedown = true),\n mouseup: () => (this.hasMousedown = false),\n },\n }), [\n getSlot(this, 'default', { open: this.isActive }, true),\n this.hideActions || this.genIcon(),\n ])\n },\n})\n","// Components\nimport VExpansionPanels from './VExpansionPanels'\nimport VExpansionPanelHeader from './VExpansionPanelHeader'\nimport VExpansionPanelContent from './VExpansionPanelContent'\n\n// Mixins\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport { provide as RegistrableProvide } from '../../mixins/registrable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\n\ntype VExpansionPanelHeaderInstance = InstanceType\ntype VExpansionPanelContentInstance = InstanceType\n\nexport default mixins(\n GroupableFactory<'expansionPanels', typeof VExpansionPanels>('expansionPanels', 'v-expansion-panel', 'v-expansion-panels'),\n RegistrableProvide('expansionPanel', true)\n /* @vue/component */\n).extend({\n name: 'v-expansion-panel',\n\n props: {\n disabled: Boolean,\n readonly: Boolean,\n },\n\n data () {\n return {\n content: null as VExpansionPanelContentInstance | null,\n header: null as VExpansionPanelHeaderInstance | null,\n nextIsActive: false,\n }\n },\n\n computed: {\n classes (): object {\n return {\n 'v-expansion-panel--active': this.isActive,\n 'v-expansion-panel--next-active': this.nextIsActive,\n 'v-expansion-panel--disabled': this.isDisabled,\n ...this.groupClasses,\n }\n },\n isDisabled (): boolean {\n return this.expansionPanels.disabled || this.disabled\n },\n isReadonly (): boolean {\n return this.expansionPanels.readonly || this.readonly\n },\n },\n\n methods: {\n registerContent (vm: VExpansionPanelContentInstance) {\n this.content = vm\n },\n unregisterContent () {\n this.content = null\n },\n registerHeader (vm: VExpansionPanelHeaderInstance) {\n this.header = vm\n vm.$on('click', this.onClick)\n },\n unregisterHeader () {\n this.header = null\n },\n onClick (e: MouseEvent) {\n if (e.detail) this.header!.$el.blur()\n\n this.$emit('click', e)\n\n this.isReadonly || this.isDisabled || this.toggle()\n },\n toggle () {\n /* istanbul ignore else */\n if (this.content) this.content.isBooted = true\n this.$nextTick(() => this.$emit('change'))\n },\n },\n\n render (h): VNode {\n return h('div', {\n staticClass: 'v-expansion-panel',\n class: this.classes,\n attrs: {\n 'aria-expanded': String(this.isActive),\n },\n }, getSlot(this))\n },\n})\n","import store from \"@/store\";\r\nimport { AxiosResponse } from \"axios\";\r\nimport { ApiGenericResponse } from \"../ApiGenericResponse\";\r\n\r\nexport class GetAvailableLanguagesResponse extends ApiGenericResponse {\r\n availableLanguages: string[];\r\n constructor(response: AxiosResponse) {\r\n super(response);\r\n this.availableLanguages = [];\r\n let blacklistedLanguages = store.state.application.startupData.blacklistedLanguages;\r\n if (response.data && response.data.Payload && response.data.Payload.length > 0) {\r\n response.data.Payload.forEach((e) => {\r\n if (!blacklistedLanguages || !blacklistedLanguages.includes(e)) this.availableLanguages.push(e);\r\n });\r\n }\r\n }\r\n}\r\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { GetAvailableLanguagesResponse } from \"./GetAvailableLanguagesResponse\";\r\n\r\nconst ENDPOINT = \"/misc/languages\";\r\n\r\nexport class GetAvailableLanguagesCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"get\";\r\n\r\n public async execute(): Promise {\r\n let res = await this.executeCommand();\r\n return new GetAvailableLanguagesResponse(res);\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DeviceTreeAppPage',{attrs:{\"pageTitle\":_vm.$t(_vm.menuEntry.name_i18n),\"icon\":_vm.menuEntry.icon,\"color\":_vm.menuEntry.color,\"selectionType\":'independent',\"organizations\":_vm.organizations,\"hideActions\":true,\"preselectRoot\":true},model:{value:(_vm.deviceTreeSelectedObjectItems),callback:function ($$v) {_vm.deviceTreeSelectedObjectItems=$$v},expression:\"deviceTreeSelectedObjectItems\"}},[(_vm.selectedFolder != null && _vm.organization != null)?_c('OrganizationCard',{staticClass:\"mt-3\",attrs:{\"organization\":_vm.organization},on:{\"getOrganizations\":function($event){return _vm.getOrganizations()}}}):(_vm.selectedFolder != null && _vm.organization == null)?_c('span',[_c('v-alert',{attrs:{\"type\":\"info\",\"text\":\"\"}},[_c('v-card-title',{staticClass:\"ma-0 py-0\",domProps:{\"textContent\":_vm._s(_vm.selectedFolder.name)}}),_c('v-card-subtitle',{staticClass:\"ma-0 py-0 pb-1\",domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.itsNotAnOrganization', [_vm.selectedFolder.name]))}}),_c('v-btn',{staticClass:\"ma-4\",attrs:{\"color\":\"success\"},on:{\"click\":function($event){_vm.showCreateOrganizationDialog = true}}},[_c('v-fa-icon',{staticClass:\"mr-3\",attrs:{\"icon\":\"users\"}}),_vm._v(\" \"+_vm._s(_vm.$t(\"organizationsManagement.convertToOrganization\"))+\" \")],1),_c('v-dialog',{attrs:{\"max-width\":\"800\"},model:{value:(_vm.showCreateOrganizationDialog),callback:function ($$v) {_vm.showCreateOrganizationDialog=$$v},expression:\"showCreateOrganizationDialog\"}},[_c('CreateOrganizationDialog',{attrs:{\"folderToConvert\":_vm.selectedFolder},on:{\"close\":function($event){return _vm.onClosingCreateOrganizationDialog()}}})],1)],1)],1):_c('v-alert',{attrs:{\"type\":\"info\",\"text\":\"\"}},[_c('v-card-title',{staticClass:\"ma-0 py-0\",domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.selectAFolderTitle'))}}),_c('v-card-text',{staticClass:\"ma-0 py-0 pb-1\",domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.selectAFolder'))}})],1)],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('v-card',{staticClass:\"pb-2 px-6\",attrs:{\"flat\":\"\",\"outlined\":\"\"}},[_c('v-card-title',{staticClass:\"px-0\",domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.convertFolderToOrganization', [_vm.folderToConvert.name]))}}),_c('v-divider',{staticClass:\"mb-2\"}),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('organizationsManagement.organizationName'),\"placeholder\":_vm.folderToConvert.name},model:{value:(_vm.organizationName),callback:function ($$v) {_vm.organizationName=$$v},expression:\"organizationName\"}})],1)],1),(_vm.showSuccessAlert)?_c('v-alert',{attrs:{\"text\":\"\",\"type\":\"success\",\"dense\":\"\"}},[_c('v-card-text',{staticClass:\"ma-0 pa-0\",domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.succefullyCreated'))}})],1):_vm._e(),(_vm.showErrorAlert)?_c('v-alert',{attrs:{\"text\":\"\",\"type\":\"error\",\"dense\":\"\"}},[_c('v-card-text',{staticClass:\"ma-0 pa-0\",domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.notSuccefullyCreated'))}})],1):_vm._e(),_c('v-card-actions',{staticClass:\"px-0\"},[_c('v-spacer'),(!_vm.showSuccessAlert)?_c('v-btn',{attrs:{\"text\":\"\"},domProps:{\"textContent\":_vm._s(_vm.$t('common.cancel'))},on:{\"click\":function($event){return _vm.$emit('close')}}}):_vm._e(),(!_vm.showSuccessAlert)?_c('v-btn',{attrs:{\"color\":\"success\",\"disabled\":!_vm.saveable},domProps:{\"textContent\":_vm._s(_vm.$t('common.save'))},on:{\"click\":function($event){return _vm.addOrganization()}}}):_vm._e(),(_vm.showSuccessAlert)?_c('v-btn',{attrs:{\"color\":\"success\"},domProps:{\"textContent\":_vm._s(_vm.$t('common.ok'))},on:{\"click\":function($event){return _vm.$emit('close')}}}):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Organization } from \"@/model/data/organizations/Organization\";\r\nimport { API_PREFIX, API_VERSION, Command, HttpVerbType } from \"../Command\";\r\nimport { GetOrganizationsResData } from \"./GetOrganizationsCommand\";\r\n\r\nconst ENDPOINT = \"/organizations\";\r\n\r\nexport class AddOrganizationCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"post\";\r\n params: Organization = null;\r\n\r\n constructor(organization: Organization) {\r\n super();\r\n this.params = organization;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand(this.params);\r\n return new GetOrganizationsResData(res);\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\n\r\n// Model\r\nimport { ApiResponseStatusEnum } from \"@/model/communication/ApiResponseStatusEnum\";\r\nimport { AddOrganizationCommand } from \"@/model/communication/organizations/AddOrganizationCommand\";\r\nimport { Organization } from \"@/model/data/organizations/Organization\";\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n creatingOrganization: false,\r\n showSuccessAlert: false,\r\n showErrorAlert: false,\r\n organizationName: null,\r\n availableProfiles: [],\r\n organizationProfile: null,\r\n createdOrganization: null,\r\n };\r\n },\r\n props: {\r\n folderToConvert: {\r\n type: Object,\r\n },\r\n },\r\n computed: {\r\n saveable() {\r\n return this.creatingOrganization || this.organizationName == null || this.organizationName.trim().length == 0 ? false : true;\r\n },\r\n },\r\n watch: {\r\n folderToConvert(value) {\r\n this.reset();\r\n },\r\n },\r\n methods: {\r\n async addOrganization() {\r\n try {\r\n if (!this.creatingOrganization) {\r\n this.creatingOrganization = true;\r\n\r\n var organization = new Organization();\r\n organization.name = this.organizationName;\r\n organization.folderId = this.folderToConvert.id;\r\n\r\n var res = await new AddOrganizationCommand(organization).execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success && res.responseString != \"GenericError\") {\r\n this.createdOrganization = res.organizations[0];\r\n this.showSuccessAlert = true;\r\n } else this.showErrorAlert = true;\r\n\r\n this.creatingOrganization = false;\r\n }\r\n } catch (error) {\r\n console.log(\"Something went wrong in addOrganization()\", error);\r\n this.creatingOrganization = false;\r\n }\r\n },\r\n\r\n reset() {\r\n this.creatingOrganization = false;\r\n this.showSuccessAlert = false;\r\n this.showErrorAlert = false;\r\n this.organizationName = this.folderToConvert.name;\r\n this.createdOrganization = null;\r\n },\r\n },\r\n mounted() {\r\n this.reset();\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreateOrganizationDialog.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreateOrganizationDialog.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CreateOrganizationDialog.vue?vue&type=template&id=5adbf530&\"\nimport script from \"./CreateOrganizationDialog.vue?vue&type=script&lang=ts&\"\nexport * from \"./CreateOrganizationDialog.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VAlert,VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VDivider,VRow,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"flat\":\"\"}},[_c('v-card-title',{staticClass:\"ma-0 py-0 text-h5\"},[_c('v-fa-icon',{staticClass:\"mr-3\",attrs:{\"icon\":\"users\",\"large\":\"\",\"color\":\"primary\"}}),_c('span',{domProps:{\"textContent\":_vm._s(_vm.organization.name)}}),_c('v-card-subtitle',{staticClass:\"ma-0 pa-0 mt-2 ml-3\",domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.organization'))}}),_c('v-spacer'),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.showEditOrganizationDialog = true}}},[_c('v-fa-icon',{attrs:{\"icon\":\"edit\"}})],1)],1),_c('v-divider',{staticClass:\"my-2\"}),(_vm.newLoginModes.some(function (l) { return l.enabled; }))?_c('v-card',{staticClass:\"mt-6 mx-6 px-6\",attrs:{\"outlined\":\"\"}},[_c('v-card-title',{staticClass:\"my-2 mt-4 pa-0\"},[_c('v-fa-icon',{staticClass:\"mr-3\",attrs:{\"icon\":\"key\",\"color\":\"primary\"}}),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.loginModes'))}})],1),_c('v-divider'),_c('v-expansion-panels',{staticClass:\"my-6\",attrs:{\"focusable\":\"\"}},_vm._l((_vm.newLoginModes.filter(function (l) { return l.enabled; })),function(newLoginMode){return _c('v-expansion-panel',{key:newLoginMode.value},[_c('v-expansion-panel-header',[_c('v-card-title',{staticClass:\"ma-0 pa-0 text-body-1\"},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t(_vm.loginModeTypeEnumLabel(newLoginMode.type)))}})])],1),_c('v-expansion-panel-content',{staticClass:\"pt-8 pb-4\"},[(newLoginMode.type == _vm.LoginModeType.ADLegacy)?_c('span',[_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.host'),\"readonly\":\"\"},model:{value:(_vm.newADLegacyParams.Host),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Host\", $$v)},expression:\"newADLegacyParams.Host\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.username'),\"readonly\":\"\"},model:{value:(_vm.newADLegacyParams.Username),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Username\", $$v)},expression:\"newADLegacyParams.Username\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.password'),\"readonly\":\"\"},model:{value:(_vm.newADLegacyParams.Password),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Password\", $$v)},expression:\"newADLegacyParams.Password\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.groups_container'),\"readonly\":\"\"},model:{value:(_vm.newADLegacyParams.Groups_container),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Groups_container\", $$v)},expression:\"newADLegacyParams.Groups_container\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.get_group_filter'),\"readonly\":\"\"},model:{value:(_vm.newADLegacyParams.Get_group_filter),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Get_group_filter\", $$v)},expression:\"newADLegacyParams.Get_group_filter\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.users_container'),\"readonly\":\"\"},model:{value:(_vm.newADLegacyParams.Users_container),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Users_container\", $$v)},expression:\"newADLegacyParams.Users_container\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.get_user_filter'),\"readonly\":\"\"},model:{value:(_vm.newADLegacyParams.Get_user_filter),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Get_user_filter\", $$v)},expression:\"newADLegacyParams.Get_user_filter\"}})],1):_vm._e(),(newLoginMode.type == _vm.LoginModeType.AzureAD)?_c('span',[_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.AzureADParams.clinkRedirectPage'),\"readonly\":\"\"},model:{value:(_vm.newAzureADParams.clinkRedirectPage),callback:function ($$v) {_vm.$set(_vm.newAzureADParams, \"clinkRedirectPage\", $$v)},expression:\"newAzureADParams.clinkRedirectPage\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.AzureADParams.msalConfig_auth_clientId'),\"readonly\":\"\"},model:{value:(_vm.newAzureADParams.msalConfig_auth_clientId),callback:function ($$v) {_vm.$set(_vm.newAzureADParams, \"msalConfig_auth_clientId\", $$v)},expression:\"newAzureADParams.msalConfig_auth_clientId\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.AzureADParams.msalConfig_auth_authority'),\"readonly\":\"\"},model:{value:(_vm.newAzureADParams.msalConfig_auth_authority),callback:function ($$v) {_vm.$set(_vm.newAzureADParams, \"msalConfig_auth_authority\", $$v)},expression:\"newAzureADParams.msalConfig_auth_authority\"}})],1):_vm._e()])],1)}),1)],1):_vm._e(),_c('ProfilesTable',{staticClass:\"mt-6 mx-6\",attrs:{\"organization\":_vm.organization},on:{\"filterUsersTable\":function($event){return _vm.filterUsersTable($event)},\"getOrganizations\":function($event){return _vm.$emit('getOrganizations')}}}),_c('UsersTable',{ref:\"usersTable\",staticClass:\"mt-6 mx-6\",attrs:{\"organization\":_vm.organization}}),_c('v-dialog',{attrs:{\"max-width\":\"800\"},model:{value:(_vm.showEditOrganizationDialog),callback:function ($$v) {_vm.showEditOrganizationDialog=$$v},expression:\"showEditOrganizationDialog\"}},[_c('EditOrganizationDialog',{attrs:{\"organization\":_vm.organization},on:{\"close\":function($event){return _vm.onClosingEditOrganizationDialog()},\"getOrganizations\":function($event){return _vm.$emit('getOrganizations')}}})],1)],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('v-card',{staticClass:\"pb-2 px-6\",attrs:{\"flat\":\"\",\"outlined\":\"\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-card-title',{staticClass:\"my-2 pa-0\"},[_c('v-fa-icon',{staticClass:\"mr-3\",attrs:{\"icon\":\"clipboard\"}}),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.generalInformations'))}})],1),_c('v-divider'),_c('v-text-field',{staticClass:\"my-6 px-6\",attrs:{\"label\":_vm.$t('organizationsManagement.organizationName')},model:{value:(_vm.organizationNewName),callback:function ($$v) {_vm.organizationNewName=$$v},expression:\"organizationNewName\"}}),_c('v-card-title',{staticClass:\"my-2 pa-0\"},[_c('v-fa-icon',{staticClass:\"mr-3\",attrs:{\"icon\":\"key\"}}),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.loginModes'))}})],1),_c('v-divider'),_c('v-expansion-panels',{staticClass:\"my-6 px-6\",attrs:{\"focusable\":\"\"}},_vm._l((_vm.newLoginModes),function(newLoginMode){return _c('v-expansion-panel',{key:newLoginMode.value},[_c('v-expansion-panel-header',[_c('v-card-title',{staticClass:\"ma-0 pa-0 text-body-1\"},[_c('v-switch',{staticClass:\"ma-0 pa-0\",attrs:{\"dense\":\"\",\"hide-details\":\"\"},nativeOn:{\"click\":function($event){$event.stopPropagation();}},model:{value:(newLoginMode.enabled),callback:function ($$v) {_vm.$set(newLoginMode, \"enabled\", $$v)},expression:\"newLoginMode.enabled\"}}),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t(_vm.loginModeTypeEnumLabel(newLoginMode.type)))}})],1)],1),_c('v-expansion-panel-content',{staticClass:\"pt-8 pb-4\"},[(newLoginMode.type == _vm.LoginModeType.ADLegacy)?_c('span',[_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.host')},model:{value:(_vm.newADLegacyParams.Host),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Host\", $$v)},expression:\"newADLegacyParams.Host\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.username')},model:{value:(_vm.newADLegacyParams.Username),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Username\", $$v)},expression:\"newADLegacyParams.Username\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.password')},model:{value:(_vm.newADLegacyParams.Password),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Password\", $$v)},expression:\"newADLegacyParams.Password\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.groups_container')},model:{value:(_vm.newADLegacyParams.Groups_container),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Groups_container\", $$v)},expression:\"newADLegacyParams.Groups_container\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.get_group_filter')},model:{value:(_vm.newADLegacyParams.Get_group_filter),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Get_group_filter\", $$v)},expression:\"newADLegacyParams.Get_group_filter\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.users_container')},model:{value:(_vm.newADLegacyParams.Users_container),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Users_container\", $$v)},expression:\"newADLegacyParams.Users_container\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.ADLegacyParams.get_user_filter')},model:{value:(_vm.newADLegacyParams.Get_user_filter),callback:function ($$v) {_vm.$set(_vm.newADLegacyParams, \"Get_user_filter\", $$v)},expression:\"newADLegacyParams.Get_user_filter\"}})],1):_vm._e(),(newLoginMode.type == _vm.LoginModeType.AzureAD)?_c('span',[_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.AzureADParams.clinkRedirectPage')},model:{value:(_vm.newAzureADParams.clinkRedirectPage),callback:function ($$v) {_vm.$set(_vm.newAzureADParams, \"clinkRedirectPage\", $$v)},expression:\"newAzureADParams.clinkRedirectPage\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.AzureADParams.msalConfig_auth_clientId')},model:{value:(_vm.newAzureADParams.msalConfig_auth_clientId),callback:function ($$v) {_vm.$set(_vm.newAzureADParams, \"msalConfig_auth_clientId\", $$v)},expression:\"newAzureADParams.msalConfig_auth_clientId\"}}),_c('v-text-field',{staticClass:\"ma-0 pa-0\",attrs:{\"label\":_vm.$t('organizationsManagement.AzureADParams.msalConfig_auth_authority')},model:{value:(_vm.newAzureADParams.msalConfig_auth_authority),callback:function ($$v) {_vm.$set(_vm.newAzureADParams, \"msalConfig_auth_authority\", $$v)},expression:\"newAzureADParams.msalConfig_auth_authority\"}})],1):_vm._e()])],1)}),1)],1)],1),(_vm.showSuccessAlert)?_c('v-alert',{attrs:{\"text\":\"\",\"type\":\"success\",\"dense\":\"\"}},[_c('v-card-text',{staticClass:\"ma-0 pa-0\",domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.succefullyEdited'))}})],1):_vm._e(),(_vm.showErrorAlert)?_c('v-alert',{attrs:{\"text\":\"\",\"type\":\"error\",\"dense\":\"\"}},[_c('v-card-text',{staticClass:\"ma-0 pa-0\",domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.notSuccefullyEdited'))}})],1):_vm._e(),_c('v-card-actions',{staticClass:\"px-0\"},[_c('v-btn',{attrs:{\"color\":\"error\"},on:{\"click\":function($event){_vm.showAreYouSureDialog = true}}},[_c('v-fa-icon',{staticClass:\"mx-3\",attrs:{\"icon\":\"trash\",\"small\":\"\"}}),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.delete'))}})],1),_c('v-spacer'),(!_vm.showSuccessAlert)?_c('v-btn',{attrs:{\"text\":\"\"},domProps:{\"textContent\":_vm._s(_vm.$t('common.cancel'))},on:{\"click\":function($event){return _vm.$emit('close')}}}):_vm._e(),(!_vm.showSuccessAlert)?_c('v-btn',{attrs:{\"color\":\"success\",\"disabled\":!_vm.saveable},domProps:{\"textContent\":_vm._s(_vm.$t('common.save'))},on:{\"click\":function($event){return _vm.addOrganization()}}}):_vm._e(),(_vm.showSuccessAlert)?_c('v-btn',{attrs:{\"color\":\"success\"},domProps:{\"textContent\":_vm._s(_vm.$t('common.ok'))},on:{\"click\":function($event){return _vm.$emit('close')}}}):_vm._e()],1),_c('v-dialog',{attrs:{\"max-width\":\"750\"},model:{value:(_vm.showAreYouSureDialog),callback:function ($$v) {_vm.showAreYouSureDialog=$$v},expression:\"showAreYouSureDialog\"}},[_c('v-card',{staticClass:\"pb-6\",attrs:{\"flat\":\"\"}},[_c('v-card-title',{domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.areYouSure'))}}),_c('v-divider',{staticClass:\"mx-6 mb-3\"}),_c('v-card-subtitle',{domProps:{\"textContent\":_vm._s(_vm.$t('organizationsManagement.areYouSureToDeleteTheOrganization'))}}),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{domProps:{\"textContent\":_vm._s(_vm.$t('common.no'))},on:{\"click\":function($event){_vm.showAreYouSureDialog = false}}}),_c('v-btn',{attrs:{\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteOrganization()}}},[_c('v-fa-icon',{staticClass:\"mx-2\",attrs:{\"icon\":\"trash\",\"small\":\"\"}}),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('common.yes'))}})],1),_c('v-spacer')],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\n\r\nconst ENDPOINT = \"/organizations\";\r\n\r\nexport class DeleteOrganizationCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"delete\";\r\n data: DeleteOrganizationReqData;\r\n\r\n constructor(data: DeleteOrganizationReqData) {\r\n super();\r\n this.data = data;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand(this.data);\r\n return new ServiceResponseData(res);\r\n }\r\n}\r\n\r\nexport class DeleteOrganizationReqData {\r\n folderId: number;\r\n\r\n constructor(folderId: number) {\r\n this.folderId = folderId;\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\n\r\n// Model\r\nimport { ApiResponseStatusEnum } from \"@/model/communication/ApiResponseStatusEnum\";\r\nimport { AddOrganizationCommand } from \"@/model/communication/organizations/AddOrganizationCommand\";\r\nimport { Organization } from \"@/model/data/organizations/Organization\";\r\nimport { DeleteOrganizationCommand, DeleteOrganizationReqData } from \"@/model/communication/organizations/DeleteOrganizationCommand\";\r\nimport { ADLegacyParams, AzureADParams, LoginMode, LoginModeType, loginModeTypeEnumLabel } from \"@/model/data/organizations/LoginMode\";\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n LoginModeType,\r\n saving: false,\r\n showSuccessAlert: false,\r\n showErrorAlert: false,\r\n organizationNewName: null,\r\n showAreYouSureDialog: false,\r\n newLoginModes: [],\r\n newADLegacyParams: null,\r\n newAzureADParams: null,\r\n };\r\n },\r\n props: {\r\n organization: { type: Object as () => Organization, required: true },\r\n },\r\n computed: {\r\n saveable() {\r\n return this.saving || this.organizationNewName == null || this.organizationNewName.trim().length == 0 ? false : true;\r\n },\r\n\r\n availableLoginModes() {\r\n var res = [];\r\n\r\n Object.keys(LoginModeType)\r\n .filter((v) => isNaN(Number(v)))\r\n .forEach((key) => {\r\n res.push({ value: key, text: this.$t(this.loginModeTypeEnumLabel(LoginModeType[key])) });\r\n });\r\n return res;\r\n },\r\n\r\n isADLegacyEnabled() {\r\n return this.newLoginModes.some((l) => l.type == LoginModeType.ADLegacy && l.enabled);\r\n },\r\n\r\n isAzureADEnabled() {\r\n return this.newLoginModes.some((l) => l.type == LoginModeType.AzureAD && l.enabled);\r\n },\r\n },\r\n watch: {\r\n organization(value) {\r\n this.reset();\r\n },\r\n\r\n isADLegacyEnabled(newValue) {\r\n if (newValue && this.newLoginModes.some((l) => l.type == LoginModeType.AzureAD)) this.newLoginModes.filter((l) => l.type == LoginModeType.AzureAD)[0].enabled = false;\r\n },\r\n\r\n isAzureADEnabled(newValue) {\r\n if (newValue && this.newLoginModes.some((l) => l.type == LoginModeType.ADLegacy)) this.newLoginModes.filter((l) => l.type == LoginModeType.ADLegacy)[0].enabled = false;\r\n },\r\n },\r\n methods: {\r\n loginModeTypeEnumLabel,\r\n\r\n async addOrganization() {\r\n try {\r\n if (!this.saving) {\r\n this.saving = true;\r\n\r\n var organization = new Organization();\r\n organization.name = this.organizationNewName;\r\n organization.folderId = this.organization.folderId;\r\n\r\n organization.loginModes = [];\r\n this.newLoginModes.forEach((newLoginMode: LoginMode) => {\r\n switch (newLoginMode.type) {\r\n case LoginModeType.ADLegacy:\r\n newLoginMode.params = JSON.stringify(this.newADLegacyParams);\r\n break;\r\n case LoginModeType.AzureAD:\r\n newLoginMode.params = JSON.stringify(this.newAzureADParams);\r\n break;\r\n default:\r\n break;\r\n }\r\n organization.loginModes.push(newLoginMode);\r\n });\r\n\r\n var res = await new AddOrganizationCommand(organization).execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success && res.responseString != \"GenericError\") {\r\n this.$emit(\"close\");\r\n } else this.showErrorAlert = true;\r\n\r\n this.saving = false;\r\n }\r\n } catch (error) {\r\n console.log(\"Something went wrong in editOrganization()\", error);\r\n this.saving = false;\r\n }\r\n },\r\n\r\n async deleteOrganization() {\r\n try {\r\n this.showDeleteProfileDialog = false;\r\n const res = await new DeleteOrganizationCommand(new DeleteOrganizationReqData(this.organization.folderId)).execute();\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) {\r\n this.$emit(\"getOrganizations\");\r\n } else this.showErrorAlert = true;\r\n } catch (error) {\r\n console.log(\"Something went wrong during DeleteClientProfileCommand execution: \", error);\r\n }\r\n },\r\n\r\n reset() {\r\n this.saving = false;\r\n this.showSuccessAlert = false;\r\n this.showErrorAlert = false;\r\n this.organizationNewName = this.organization.name;\r\n\r\n this.newLoginModes = [];\r\n Object.keys(LoginModeType)\r\n .filter((v) => isNaN(Number(v)))\r\n .forEach((element) => {\r\n var tempLoginMode = new LoginMode();\r\n tempLoginMode.type = LoginModeType[element];\r\n tempLoginMode.enabled = false;\r\n tempLoginMode.params = null;\r\n this.newLoginModes.push(tempLoginMode);\r\n });\r\n\r\n this.newADLegacyParams = new ADLegacyParams();\r\n this.newAzureADParams = new AzureADParams();\r\n\r\n if (this.organization.loginModes != null)\r\n this.organization.loginModes.forEach((loginMode: LoginMode) => {\r\n if (this.newLoginModes.some((l) => l.type == loginMode.type)) {\r\n this.newLoginModes.filter((l) => l.type == loginMode.type)[0].enabled = loginMode.enabled;\r\n if (loginMode.params != null) {\r\n try {\r\n switch (loginMode.type) {\r\n case LoginModeType.ADLegacy:\r\n this.newADLegacyParams = JSON.parse(loginMode.params);\r\n break;\r\n case LoginModeType.AzureAD:\r\n this.newAzureADParams = JSON.parse(loginMode.params);\r\n break;\r\n default:\r\n break;\r\n }\r\n } catch (error) {\r\n console.error(\"Error parsing these loginMode params: \", loginMode);\r\n }\r\n }\r\n }\r\n });\r\n\r\n this.showAreYouSureDialog = false;\r\n },\r\n },\r\n mounted() {\r\n this.reset();\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditOrganizationDialog.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditOrganizationDialog.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditOrganizationDialog.vue?vue&type=template&id=5023f89b&\"\nimport script from \"./EditOrganizationDialog.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditOrganizationDialog.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardSubtitle } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VExpansionPanel } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanelContent } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanelHeader } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanels } from 'vuetify/lib/components/VExpansionPanel';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VAlert,VBtn,VCard,VCardActions,VCardSubtitle,VCardText,VCardTitle,VCol,VDialog,VDivider,VExpansionPanel,VExpansionPanelContent,VExpansionPanelHeader,VExpansionPanels,VRow,VSpacer,VSwitch,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\n\r\n// Vue components\r\nimport EditOrganizationDialog from \"./EditOrganizationDialog.vue\";\r\nimport ProfilesTable from \"@/views/App/Tools/UserManagement/ProfilesTable.vue\";\r\nimport UsersTable from \"@/views/App/Tools/UserManagement/UsersTable.vue\";\r\n\r\n// Model\r\nimport { Organization } from \"@/model/data/organizations/Organization\";\r\nimport { ADLegacyParams, AzureADParams, LoginMode, LoginModeType, loginModeTypeEnumLabel } from \"@/model/data/organizations/LoginMode\";\r\n\r\nexport default Vue.extend({\r\n components: {\r\n EditOrganizationDialog,\r\n ProfilesTable,\r\n UsersTable,\r\n },\r\n data() {\r\n return {\r\n LoginModeType,\r\n showEditOrganizationDialog: false,\r\n newADLegacyParams: null,\r\n newAzureADParams: null,\r\n newLoginModes: [],\r\n };\r\n },\r\n props: {\r\n organization: { type: Object as () => Organization, required: true },\r\n },\r\n watch: {\r\n organization(newValue) {\r\n this.reset();\r\n },\r\n },\r\n methods: {\r\n loginModeTypeEnumLabel,\r\n\r\n reset() {\r\n this.showEditOrganizationDialog = false;\r\n\r\n this.newLoginModes = [];\r\n Object.keys(LoginModeType)\r\n .filter((v) => isNaN(Number(v)))\r\n .forEach((element) => {\r\n var tempLoginMode = new LoginMode();\r\n tempLoginMode.type = LoginModeType[element];\r\n tempLoginMode.enabled = false;\r\n tempLoginMode.params = null;\r\n this.newLoginModes.push(tempLoginMode);\r\n });\r\n\r\n this.newADLegacyParams = new ADLegacyParams();\r\n this.newAzureADParams = new AzureADParams();\r\n\r\n // console.log(\"this.organization.loginModes\", this.organization.loginModes);\r\n // console.log(\"this.newLoginModes\", this.newLoginModes);\r\n\r\n if (this.organization.loginModes != null)\r\n this.organization.loginModes.forEach((loginMode: LoginMode) => {\r\n if (this.newLoginModes.some((l) => l.type == loginMode.type)) {\r\n this.newLoginModes.filter((l) => l.type == loginMode.type)[0].enabled = loginMode.enabled;\r\n if (loginMode.params != null) {\r\n try {\r\n switch (loginMode.type) {\r\n case LoginModeType.ADLegacy:\r\n this.newADLegacyParams = JSON.parse(loginMode.params);\r\n break;\r\n case LoginModeType.AzureAD:\r\n this.newAzureADParams = JSON.parse(loginMode.params);\r\n break;\r\n default:\r\n break;\r\n }\r\n } catch (error) {\r\n console.error(\"Error parsing these loginMode params: \", loginMode);\r\n }\r\n }\r\n }\r\n });\r\n },\r\n\r\n onClosingEditOrganizationDialog() {\r\n this.showEditOrganizationDialog = false;\r\n this.$emit(\"getOrganizations\");\r\n },\r\n\r\n filterUsersTable(profileName: string) {\r\n this.$refs.usersTable.filterUsersTable(profileName);\r\n },\r\n },\r\n mounted() {\r\n this.reset();\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrganizationCard.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrganizationCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrganizationCard.vue?vue&type=template&id=28a6e914&\"\nimport script from \"./OrganizationCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrganizationCard.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardSubtitle } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VExpansionPanel } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanelContent } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanelHeader } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanels } from 'vuetify/lib/components/VExpansionPanel';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardSubtitle,VCardTitle,VDialog,VDivider,VExpansionPanel,VExpansionPanelContent,VExpansionPanelHeader,VExpansionPanels,VSpacer,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\n\r\n// Vue components\r\nimport DeviceTreeAppPage from \"@/components/DeviceTreeAppPage.vue\";\r\nimport CreateOrganizationDialog from \"./CreateOrganizationDialog.vue\";\r\nimport OrganizationCard from \"./OrganizationCard.vue\";\r\n\r\n// Model\r\nimport menu from \"@/store/modules/ApplicationModule/data/menu\";\r\nimport { ApiResponseStatusEnum } from \"@/model/communication/ApiResponseStatusEnum\";\r\nimport { DeviceTreeNodeTypeEnum } from \"@/model/data/deviceTree/DeviceTreeNodeTypeEnum\";\r\nimport { GetOrganizationsCommand } from \"@/model/communication/organizations/GetOrganizationsCommand\";\r\nimport { Organization } from \"@/model/data/organizations/Organization\";\r\nimport { FolderDeviceTreeNode } from \"@/model/data/deviceTree/DeviceTreeNode\";\r\n\r\nexport default Vue.extend({\r\n components: {\r\n DeviceTreeAppPage,\r\n CreateOrganizationDialog,\r\n OrganizationCard,\r\n },\r\n data() {\r\n return {\r\n loading: false,\r\n editing: false,\r\n deviceTreeSelectedObjectItems: [],\r\n organizations: [],\r\n showCreateOrganizationDialog: false,\r\n newOrganizationName: null,\r\n };\r\n },\r\n computed: {\r\n menuEntry() {\r\n return menu.find((m) => m.name == \"Tools\").children.find((c) => c.name == \"Organizations Management\");\r\n },\r\n\r\n selectedFolder() {\r\n if (this.deviceTreeSelectedObjectItems != null && this.deviceTreeSelectedObjectItems.length == 1 && this.deviceTreeSelectedObjectItems[0].type == DeviceTreeNodeTypeEnum.Folder) return this.deviceTreeSelectedObjectItems[0];\r\n else return null;\r\n },\r\n\r\n organization() {\r\n if (this.selectedFolder != null && this.organizations != null && this.organizations.length > 0)\r\n if (this.organizations.some((o: Organization) => o.folderId == (this.selectedFolder as FolderDeviceTreeNode).id)) return this.organizations.filter((o: Organization) => o.folderId == (this.selectedFolder as FolderDeviceTreeNode).id)[0];\r\n return null;\r\n },\r\n },\r\n methods: {\r\n async getOrganizations() {\r\n try {\r\n if (!this.loading) {\r\n this.loading = true;\r\n const res = await new GetOrganizationsCommand().execute();\r\n console.log(\"res\", res);\r\n if (res.responseStatus == ApiResponseStatusEnum.Success) this.organizations = res.organizations;\r\n this.loading = false;\r\n }\r\n } catch (e) {\r\n console.log(\"Something went wrong during GetOrganizationsCommand execution: \", e);\r\n this.loading = false;\r\n }\r\n },\r\n\r\n onClosingCreateOrganizationDialog() {\r\n this.showCreateOrganizationDialog = false;\r\n this.getOrganizations();\r\n },\r\n },\r\n mounted() {\r\n this.getOrganizations();\r\n },\r\n});\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=2e3edc96&\"\nimport script from \"./index.vue?vue&type=script&lang=ts&\"\nexport * from \"./index.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardSubtitle } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\ninstallComponents(component, {VAlert,VBtn,VCardSubtitle,VCardText,VCardTitle,VDialog})\n","import { Command, HttpVerbType, API_PREFIX, API_VERSION } from \"../Command\";\r\nimport { ServiceResponseData } from \"../ServiceResponseData\";\r\nimport { DeleteClientProfileReqData } from \"./DeleteClientProfileReqData\";\r\n\r\nconst ENDPOINT = \"/usermanagement/profiles\";\r\n\r\nexport class DeleteClientProfileCommand extends Command {\r\n endPoint: string = API_PREFIX + API_VERSION + ENDPOINT;\r\n httpVerb: HttpVerbType = \"delete\";\r\n data: DeleteClientProfileReqData;\r\n\r\n constructor(data: DeleteClientProfileReqData) {\r\n super();\r\n this.data = data;\r\n }\r\n\r\n public async execute(): Promise {\r\n var res = await this.executeCommand(this.data);\r\n return new ServiceResponseData(res);\r\n }\r\n}\r\n"],"sourceRoot":""}