{"version":3,"sources":["webpack:///./src/components/Config/DataTable.vue?2102","webpack:///./src/components/Config/DataTable.vue?02d3","webpack:///./src/components/Config/DataTable.vue?f49f","webpack:///./src/components/Config/DataTable.vue","webpack:///./src/components/Controls/Map.vue?d873","webpack:///./src/components/Controls/Map.vue?7191","webpack:///./src/components/Controls/Map.vue?3aa0","webpack:///./src/components/Controls/Map.vue","webpack:///./src/components/Controls/Tabs/ScrollTab.vue?bf77","webpack:///./src/views/Users.vue?d8ed","webpack:///./src/components/Config/Users/UserList.vue?3261","webpack:///./src/components/Controls/Tabs/ScrollTabs.vue?cf46","webpack:///./src/components/Controls/Tabs/TabButton.vue?8c9a","webpack:///./src/components/Controls/Tabs/TabButton.vue?79e1","webpack:///./src/components/Controls/Tabs/TabButton.vue?41d0","webpack:///./src/components/Controls/Tabs/TabButton.vue","webpack:///./src/components/Controls/Tabs/ScrollTabs.vue?72f8","webpack:///./src/components/Controls/Tabs/ScrollTabs.vue?c7b2","webpack:///./src/components/Controls/Tabs/ScrollTabs.vue","webpack:///./src/components/Controls/Tabs/TabButton.vue?ab37","webpack:///./src/components/Controls/Map.vue?e242","webpack:///./src/components/Controls/Tabs/ScrollTabs.vue?0f5f","webpack:///./src/components/Controls/Tabs/ScrollTab.vue?ae20","webpack:///./src/components/Controls/Tabs/ScrollTab.vue?2cf2","webpack:///./src/components/Controls/Tabs/ScrollTab.vue?8c6a","webpack:///./src/components/Controls/Tabs/ScrollTab.vue","webpack:///./src/components/Config/DataModal.vue?5b9f","webpack:///./src/components/Config/DataModal.vue?60a7","webpack:///./src/components/Config/DataModal.vue?1fd0","webpack:///./src/components/Config/DataModal.vue","webpack:///./src/views/Users.vue?5523","webpack:///./src/components/Config/Users/UserList.vue?6786","webpack:///./src/components/Config/Users/UserList.vue?3b87","webpack:///./src/components/Config/Users/UserList.vue?ba8b","webpack:///./src/components/Config/Users/UserList.vue","webpack:///./src/views/Users.vue?da9a","webpack:///./src/views/Users.vue?9550","webpack:///./src/views/Users.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","directives","name","rawName","value","hide","expression","staticClass","class","staticStyle","_t","_v","_s","headerTitle","attrs","helpText","_e","dataCyType","on","createNew","dataTypeHeader","dataType","model","callback","$$v","filter","$event","items","rowClick","allowRowClick","tableColumns","isBusy","noLocalSorting","rowClass","sortChanged","scopedSlots","_u","_l","boolColumn","key","columnTemplateName","fn","data","column","item","ref","columns","modalSize","deleteDetails","canDeleteItem","canConfirmDelete","saveItem","deleteItem","slotProps","details","staticRenderFns","DataTable","undefined","onlyEmitOnRowClick","$emit","loadItem","cloneDeep","itemClone","$refs","dataModal","open","c","inTable","hasTemplate","values","newItem","createNewItem","context","type","replace","toLowerCase","Vue","__decorate","Prop","String","default","Boolean","Emit","Component","components","HelpIcon","vSelect","VuePerfectScrollbar","DataModal","component","drawArgs","markerText","drawType","markerDrawType","Path","finishDrawing","MapDisplay","mapKey","process","enhancedMapping","map","currentDrawing","MarkerDrawType","lat","lng","getEnhancedMapping","mapStyle","getMapStyle","darkMode","mapProvider","createMap","mappingContainer","location","registerEvent","mapClick","nextTick","then","setMapping","mapElement","boundsSet","navigator","geolocation","getCurrentPosition","pos","center","coords","latitude","longitude","zoom","startDraw","clearMarkers","off","remove","setCursor","clickLocation","Point","set","addPoint","states","first","imageUrl","colorName","opacity","line","color","linePath","last","Region","markerType","MarkerType","MultiMarker","clickedMarker","index","lineMarkers","marker","position","Inject","State","tab","id","modifiers","setTab","show","tabActive","title","makeActive","Contents","TabButton","active","$scopedSlots","titleSlot","ScrollTabs","tabsControl","currentTabUid","tabs","currentTab","t","scrollable","length","activeId","push","toString","tabIndex","indexOf","splice","newTab","ProvideReactive","ScrollTab","registerTab","unregisterTab","InjectReactive","ok","canDelete","deleting","canEdit","isDeleteButtonDisabled","deleteConfirm","isSaveButtonDisabled","save","deleteDetailsItem","label","deleteConfirmText","displayColumns","valid","MapProvider","deleteConfirmButtonDisabled","saveButtonDisabled","itemOverrideColumns","confirmDelete","editModal","allowMap","some","Provide","FieldPermissions","DataForm","slot","isSuiteEnabled","stopPropagation","createNewTeam","team","filteredTeams","editTeam","preventEdit","deleteTeam","loading","users","loadUserDetails","startEdit","proxy","subscription","casesUsers","disabled","teams","join","userField","userFieldSlotName","getDisplayLabel","me","isAdmin","account","mfaEnabled","resetMfa","itam","setup","namespace","UserList","allUsers","editUser","adEnabled","errorEmailValue","emailStatus","userDefinition","reloadData","getADEnabled","enabled","casesUserLimit","hasSubscription","defaultColumns","inModal","sortable","readonly","errors","email","regx","test","toLocaleLowerCase","api","emailExists","exists","status","errorValue","valueColumn","options","tooltip","allColumns","userFields","fieldColumns","field","labelKeyPath","dataSourceId","includeInTable","concat","fields","usersGet","Promise","all","loadUsers","loadSubscription","loadUserDefinition","$bvToast","toast","variant","solid","autoHideDelay","userSpecialDefinition","ut","accountDetails","userTeams","find","user","canCreateUser","teamDetails","f","userSave","userDelete","dataItem","fieldValues","labeledValue","displayLabel","formatFieldsMixin","methods","getDisplayLabelFromLabeledValue","Getter","Action","SkeletonLoader","UserImage","UserSetup","currentTeamDashboards","extendedPermissions","extendedPermissionsGet","permissions","loadTeams","extendedPermissionColumns","permission","description","lowerFilter","teamSave","dashboardApi","dashboardGetListForTeam","teamDelete","PageWrapper"],"mappings":"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","file":"js/chunk-2ff484c3.b593e928.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.hide),expression:\"!hide\"}],staticClass:\"flex-column\",class:{'d-flex': !_vm.hide},staticStyle:{\"overflow\":\"hidden\"}},[_c('div',{staticClass:\"d-flex flex-row align-items-center m-b-10 m-t-5\"},[_c('h4',{staticClass:\"flex-grow-1 m-b-0 m-l-10\"},[_vm._t('header',[_vm._v(\" \"+_vm._s(_vm.headerTitle)+\" \"),(_vm.helpText)?_c('help-icon',{attrs:{\"help-title\":_vm.headerTitle}},[_vm._v(_vm._s(_vm.helpText))]):_vm._e()])],2),_vm._t(\"header-buttons\"),(_vm.canCreateItem)?_c('b-button',{staticClass:\"m-l-10\",attrs:{\"data-cy\":(\"data-table-btn-new-\" + _vm.dataCyType),\"variant\":\"primary\"},on:{\"click\":_vm.createNew}},[_vm._v(\" Create new \"+_vm._s(_vm.dataTypeHeader ? _vm.dataTypeHeader : _vm.dataType)+\" \")]):_vm._e()],2),_vm._t(\"description\"),_c('div',{staticClass:\"d-flex flex-row align-items-end m-l-10 m-r-10 m-b-10\"},[_c('b-form-group',{staticClass:\"mb-0 flex-grow-1\",attrs:{\"label\":\"Filter\",\"label-for\":\"filterInput\"}},[_c('b-input-group',[_c('b-form-input',{attrs:{\"type\":\"search\",\"data-cy\":(\"data-table-txt-search-\" + _vm.dataCyType),\"id\":\"filterInput\",\"placeholder\":\"Type to search\"},model:{value:(_vm.filter),callback:function ($$v) {_vm.filter=$$v},expression:\"filter\"}}),_c('b-input-group-append',[_c('b-button',{attrs:{\"disabled\":!_vm.filter,\"data-cy\":(\"data-table-btn-clear-filter-\" + _vm.dataCyType)},on:{\"click\":function($event){_vm.filter = ''}}},[_vm._v(\" Clear \")])],1)],1)],1)],1),(_vm.overrideView)?[_vm._t(\"overrideView\",null,{\"items\":_vm.items,\"createNew\":_vm.createNew,\"editItem\":_vm.rowClick,\"filter\":_vm.filter})]:[_c('scrollbar',{staticClass:\"flex-grow-1 \"},[_c('b-table',{staticClass:\"m-l-10 m-r-10\",staticStyle:{\"width\":\"calc(100% - 20px)\"},attrs:{\"hover\":_vm.allowRowClick,\"fields\":_vm.tableColumns,\"items\":_vm.items,\"busy\":_vm.isBusy,\"filter\":_vm.filter,\"no-local-sorting\":_vm.noLocalSorting,\"tbody-tr-class\":_vm.rowClass},on:{\"sort-changed\":_vm.sortChanged,\"row-clicked\":_vm.rowClick},scopedSlots:_vm._u([_vm._l((_vm.boolColumns),function(boolColumn){return {key:_vm.columnTemplateName(boolColumn),fn:function(data){return [(data.value)?_c('i',{key:boolColumn.key,staticClass:\"fas fa-check-circle\"}):_vm._e()]}}}),_vm._l((_vm.columnsWithTemplate),function(column){return {key:_vm.columnTemplateName(column),fn:function(data){return [_vm._t('column.' + column.key,null,{\"item\":data.item})]}}})],null,true)})],1)],_c('data-modal',{ref:\"dataModal\",attrs:{\"title\":_vm.dataTypeHeader ? _vm.dataTypeHeader : _vm.dataType,\"columns\":_vm.columns,\"canEdit\":true,\"allowMap\":\"\",\"modalSize\":_vm.modalSize,\"deleteDetails\":_vm.deleteDetails,\"canDeleteItem\":_vm.canDeleteItem,\"canConfirmDelete\":_vm.canConfirmDelete},on:{\"save\":_vm.saveItem,\"delete\":_vm.deleteItem},scopedSlots:_vm._u([{key:\"header\",fn:function(slotProps){return [_vm._t(\"modal-header\",null,{\"item\":slotProps.item})]}},{key:\"additional\",fn:function(slotProps){return [_vm._t(\"additional\",null,{\"item\":slotProps.item})]}},{key:\"flex-additional\",fn:function(slotProps){return [_vm._t(\"flex-additional\",null,{\"item\":slotProps.item})]}},{key:\"deleteConfirm\",fn:function(slotProps){return [_vm._t(\"deleteConfirm\",null,{\"item\":slotProps.item,\"details\":slotProps.details})]}},{key:\"deleteConfirmAdditional\",fn:function(slotProps){return [_vm._t(\"deleteConfirmAdditional\",null,{\"item\":slotProps.item,\"details\":slotProps.details})]}},{key:\"additional-footer\",fn:function(slotProps){return [_vm._t(\"additional-footer\",null,{\"item\":slotProps.item})]}},{key:\"footer\",fn:function(slotProps){return [_vm._t(\"footer\",null,{\"item\":slotProps.item,\"details\":slotProps.details})]}},{key:\"okButtonContent\",fn:function(slotProps){return [_vm._t(\"modalOkButtonContent\",null,{\"item\":slotProps.item,\"details\":slotProps.details})]}}],null,true)})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\nimport { Component, Vue, Prop, Emit } from \"vue-property-decorator\"\r\n\r\nimport cloneDeep from \"lodash/cloneDeep\"\r\n\r\nimport VuePerfectScrollbar from \"vue-perfect-scrollbar\"\r\nimport { BModal } from \"bootstrap-vue\"\r\nimport vSelect from \"vue-select\"\r\n\r\nimport DataModal from \"./DataModal.vue\"\r\nimport HelpIcon from \"@/components/New/Page/PageComponents/HelpIcon.vue\"\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\t\"help-icon\": HelpIcon,\r\n\t\t\"v-select\": vSelect,\r\n\t\t\"scrollbar\": VuePerfectScrollbar,\r\n\t\t\"data-modal\": DataModal\r\n\t}\r\n})\r\nexport default class DataTable extends Vue {\r\n\t$refs!: {\r\n\t\tdataModal: BModal\r\n\t}\r\n\t@Prop()\r\n\tpublic dataType!: string;\r\n\r\n\t@Prop({ type: String }) helpText!: string;\r\n\r\n\t@Prop()\r\n\tpublic dataTypeHeader!: string;\r\n\r\n\t@Prop()\r\n\tpublic columns!: any[];\r\n\r\n\t@Prop()\r\n\tpublic items!: any[];\r\n\r\n\t@Prop({ type: String, default: \"xl\" })\r\n\tpublic modalSize!: string;\r\n\r\n\t@Prop({ type: Boolean })\r\n\tpublic isBusy!: boolean;\r\n\r\n\t@Prop({ type: Boolean, default: false })\r\n\tpublic overrideView!: boolean\r\n\r\n\t@Prop()\r\n\tpublic createNewItem!: (values: any) => any;\r\n\r\n\t@Prop()\r\n\tpublic deleteDetails!: (item: any) => any;\r\n\r\n\t@Prop({ default: true })\r\n\tpublic canCreateItem!: boolean;\r\n\r\n\t@Prop()\r\n\tpublic canDeleteItem!: (item: any) => boolean;\r\n\r\n\t@Prop()\r\n\tpublic canConfirmDelete!: (item: any) => boolean;\r\n\r\n\t@Prop()\r\n\tpublic loadItem!: (item: any) => any;\r\n\r\n\t@Prop({ default: false })\r\n\tpublic hide!: boolean\r\n\r\n\t@Prop({ default: true })\r\n\tpublic allowRowClick!: boolean\r\n\r\n\t@Prop({ default: false })\r\n\tpublic noLocalSorting!: boolean\r\n\r\n\t@Prop({ default: () => { return (item: any, type: any) => \"\" } })\r\n\tpublic rowClass!: (item: any, type: any) => string;\r\n\r\n\tpublic filter: string = \"\";\r\n\r\n\tpublic async rowClick (item: any) {\r\n\t\tif (!this.allowRowClick) {\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\tif (item.allowRowClick !== undefined && !item.allowRowClick) {\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\tif (item.onlyEmitOnRowClick !== undefined && item.onlyEmitOnRowClick) {\r\n\t\t\tthis.$emit(\"row-opened\", item)\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\tconst itemClone = this.loadItem\r\n\t\t\t? await this.loadItem(item)\r\n\t\t\t: cloneDeep(item)\r\n\r\n\t\tthis.$refs.dataModal.open(itemClone)\r\n\r\n\t\tthis.$emit(\"row-opened\", item)\r\n\t}\r\n\r\n\tpublic get tableColumns () {\r\n\t\tif (!this.columns) {\r\n\t\t\treturn []\r\n\t\t}\r\n\r\n\t\treturn this.columns.filter(c => c.inTable !== false)\r\n\t}\r\n\r\n\tprivate get columnsWithTemplate (): any[] {\r\n\t\tif (!this.columns) { return [] }\r\n\r\n\t\treturn this.columns.filter(c => c.hasTemplate)\r\n\t}\r\n\r\n\tprivate get boolColumns (): any[] {\r\n\t\tif (!this.columns) { return [] }\r\n\r\n\t\treturn this.columns.filter(c => c.dataType === \"checkbox\" && !c.hasTemplate)\r\n\t}\r\n\r\n\tpublic createNew (values: any) {\r\n\t\tlet newItem = this.createNewItem\r\n\t\t\t? this.createNewItem(values)\r\n\t\t\t: {}\r\n\r\n\t\tthis.$refs.dataModal.open(newItem)\r\n\t}\r\n\r\n\t@Emit(\"save\")\r\n\tpublic saveItem (item: any) {\r\n\t\treturn item\r\n\t}\r\n\r\n\t@Emit(\"delete\")\r\n\tpublic deleteItem (item: any) {\r\n\t\treturn item\r\n\t}\r\n\r\n\tcolumnTemplateName (column: any) {\r\n\t\treturn \"cell(\" + column.key + \")\"\r\n\t}\r\n\r\n\t@Emit(\"sortChanged\")\r\n\tpublic sortChanged (context: any) {\r\n\t\treturn context\r\n\t}\r\n\r\n\t/**\r\n\t * Gets the data type in the correct format for data-cy tags i.e.\r\n\t * - Has all spaces replaced with '-'\r\n\t * - Is all lowercase\r\n\t * @private\r\n\t */\r\n\tprivate get dataCyType () {\r\n\t\tlet type = (this.dataTypeHeader ? this.dataTypeHeader : this.dataType)\r\n\t\ttype = type.replace(/ /g, \"-\")\r\n\t\treturn type.toLowerCase()\r\n\t}\r\n\r\n\tprivate get headerTitle () {\r\n\t\treturn this.dataTypeHeader ? this.dataTypeHeader : this.dataType + \"s\"\r\n\t}\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DataTable.vue?vue&type=template&id=2d78c8d0&\"\nimport script from \"./DataTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./DataTable.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"enhanced-map-wrapper ps__child--consume\"},[_c('div',{ref:\"mappingContainer\",staticClass:\"h-100\",attrs:{\"id\":\"divMappingContainer\"}}),(_vm.drawArgs)?_c('div',{staticClass:\"draw-text alert alert-secondary\"},[_vm._v(\" Drawing \"+_vm._s(_vm.drawArgs.markerText)+\" \"),(_vm.drawArgs.drawType === _vm.markerDrawType.Path)?_c('a',{staticClass:\"btn btn-primary m-l-20\",on:{\"click\":_vm.finishDrawing}},[_vm._v(\"Done\")]):_vm._e()]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Prop, Watch, InjectReactive, Inject } from \"vue-property-decorator\"\r\nimport { State } from \"vuex-class\"\r\n\r\nimport { get, set } from \"lodash\"\r\n\r\n// @ts-ignore\r\nimport { Datetime } from \"vue-datetime\"\r\nimport vSelect from \"vue-select\"\r\n\r\nimport { getMapStyle } from \"@/scripts/mapStyle\"\r\n\r\nimport {\r\n\tgetEnhancedMapping,\r\n\tIEnhancedMapping,\r\n\tIMap,\r\n\tIMarker,\r\n\tILatLng,\r\n\tILatLngBounds,\r\n\tMultiMarker,\r\n\tMarkerType\r\n} from \"@sureview/v2-mapping\"\r\n\r\nimport { MapProvider, DrawArguments, MarkerDrawType } from \"@/services/mapProvider\"\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t}\r\n})\r\nexport default class MapDisplay extends Vue {\r\n\t$refs!: {\r\n\t\tmappingContainer: HTMLElement,\r\n\t}\r\n\r\n\t@Inject(\"mapProvider\") mapProvider!: MapProvider;\r\n\r\n\t@State darkMode!: boolean;\r\n\r\n\tpublic mapKey: string = process.env.VUE_APP_GOOGLE_MAPS_API_KEY || \"\";\r\n\r\n\tpublic enhancedMapping: IEnhancedMapping | null = null;\r\n\tpublic map: IMap | null = null;\r\n\r\n\tprivate drawArgs: DrawArguments | null = null;\r\n\tprivate currentDrawing: MultiMarker | null = null;\r\n\r\n\tprivate markerDrawType = MarkerDrawType;\r\n\r\n\tget location () {\r\n\t\treturn { lat: 0, lng: 0 }\r\n\t}\r\n\r\n\tasync mounted () {\r\n\t\tthis.enhancedMapping = await getEnhancedMapping(\"google\", this.mapKey)\r\n\r\n\t\tconst mapStyle = getMapStyle(this.darkMode, \"roadmap\", false)\r\n\r\n\t\tif (this.mapProvider) {\r\n\t\t\tthis.mapProvider.mapStyle = mapStyle\r\n\t\t}\r\n\r\n\t\tthis.map = this.enhancedMapping.createMap(\r\n\t\t\tthis.$refs.mappingContainer,\r\n\t\t\tthis.location,\r\n\t\t\t2,\r\n\t\t\tfalse,\r\n\t\t\t\"roadmap\",\r\n\t\t\tmapStyle\r\n\t\t)\r\n\r\n\t\tthis.map!.registerEvent(\"onClick\", this.mapClick)\r\n\r\n\t\tif (this.mapProvider) {\r\n\t\t\tVue.nextTick().then(() => {\r\n\t\t\t\tthis.mapProvider.setMapping(this.enhancedMapping!, this.map!)\r\n\t\t\t\tthis.mapProvider.mapElement = this.$refs.mappingContainer\r\n\r\n\t\t\t\tif (!this.mapProvider.boundsSet) {\r\n\t\t\t\t\tnavigator.geolocation.getCurrentPosition((pos: any) => {\r\n\t\t\t\t\t\tthis.map!.center = {\r\n\t\t\t\t\t\t\tlat: pos.coords.latitude,\r\n\t\t\t\t\t\t\tlng: pos.coords.longitude\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.map!.zoom = 16\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t})\r\n\r\n\t\t\tthis.mapProvider.on(\"startDraw\", this.startDraw)\r\n\t\t}\r\n\t}\r\n\r\n\tbeforeDestroy () {\r\n\t\tif (this.mapProvider) {\r\n\t\t\tthis.mapProvider.clearMarkers()\r\n\t\t\tthis.mapProvider.off(\"startDraw\", this.startDraw)\r\n\t\t}\r\n\r\n\t\tif (this.currentDrawing) {\r\n\t\t\tthis.currentDrawing.remove()\r\n\t\t\tthis.currentDrawing = null\r\n\t\t}\r\n\t}\r\n\r\n\tstartDraw (drawArgs: DrawArguments) {\r\n\t\tthis.map!.setCursor(\"crosshair\")\r\n\t\tthis.drawArgs = drawArgs\r\n\t}\r\n\r\n\tmapClick (clickLocation: { lat: number, lng: number }) {\r\n\t\tif (this.drawArgs) {\r\n\t\t\tif (this.drawArgs.drawType === MarkerDrawType.Point) {\r\n\t\t\t\tthis.drawArgs.set({ ...clickLocation, zoom: this.map!.zoom })\r\n\t\t\t\tthis.drawArgs = null\r\n\t\t\t\tthis.map!.setCursor(\"grab\")\r\n\t\t\t} else {\r\n\t\t\t\tif (!this.currentDrawing) {\r\n\t\t\t\t\tconst states = (this.drawArgs!.drawType === MarkerDrawType.Path)\r\n\t\t\t\t\t\t? {\r\n\t\t\t\t\t\t\tfirst: {\r\n\t\t\t\t\t\t\t\timageUrl: `./images/map/${this.drawArgs.colorName}_small.svg`,\r\n\t\t\t\t\t\t\t\topacity: 1,\r\n\t\t\t\t\t\t\t\tline: {\r\n\t\t\t\t\t\t\t\t\tcolor: this.drawArgs.color,\r\n\t\t\t\t\t\t\t\t\tlinePath: \"solid\"\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tlast: {\r\n\t\t\t\t\t\t\t\timageUrl: `./images/map/${this.drawArgs.colorName}_small.svg`,\r\n\t\t\t\t\t\t\t\topacity: 1,\r\n\t\t\t\t\t\t\t\tline: {\r\n\t\t\t\t\t\t\t\t\tcolor: this.drawArgs.color,\r\n\t\t\t\t\t\t\t\t\tlinePath: \"solid\"\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t: (this.drawArgs!.drawType === MarkerDrawType.Region)\r\n\t\t\t\t\t\t\t? {\r\n\t\t\t\t\t\t\t\tfirst: {\r\n\t\t\t\t\t\t\t\t\timageUrl: `./images/map/${this.drawArgs.colorName}_small.svg`,\r\n\t\t\t\t\t\t\t\t\topacity: 1,\r\n\t\t\t\t\t\t\t\t\tline: {\r\n\t\t\t\t\t\t\t\t\t\tcolor: this.drawArgs.color,\r\n\t\t\t\t\t\t\t\t\t\tlinePath: \"solid\"\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t: {}\r\n\r\n\t\t\t\t\tconst markerType = new MarkerType({\r\n\t\t\t\t\t\timageUrl: `./images/map/${this.drawArgs.colorName}_small.svg`,\r\n\t\t\t\t\t\topacity: 0,\r\n\t\t\t\t\t\tline: {\r\n\t\t\t\t\t\t\tcolor: this.drawArgs.color,\r\n\t\t\t\t\t\t\tlinePath: \"solid\"\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, states)\r\n\r\n\t\t\t\t\tthis.currentDrawing = new MultiMarker(this.enhancedMapping!,\r\n\t\t\t\t\t\tthis.map!,\r\n\t\t\t\t\t\t\"\",\r\n\t\t\t\t\t\tmarkerType,\r\n\t\t\t\t\t\t[clickLocation],\r\n\t\t\t\t\t\t(clickedMarker: IMarker, index: number) => {\r\n\t\t\t\t\t\t\tif (this.drawArgs! && (index === 0 || this.drawArgs!.drawType === MarkerDrawType.Path)) {\r\n\t\t\t\t\t\t\t\tthis.finishDrawing()\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.currentDrawing.addPoint(clickLocation)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.map!.setCursor(\"grab\")\r\n\t\t}\r\n\t}\r\n\r\n\tfinishDrawing () {\r\n\t\tif (this.currentDrawing) {\r\n\t\t\tthis.drawArgs!.set(\r\n\t\t\t\tthis.currentDrawing.lineMarkers.map((marker: IMarker) => marker.position)\r\n\t\t\t)\r\n\r\n\t\t\tthis.currentDrawing.remove()\r\n\t\t\tthis.currentDrawing = null\r\n\t\t}\r\n\r\n\t\tthis.drawArgs = null\r\n\t\tthis.map!.setCursor(\"grab\")\r\n\t}\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Map.vue?vue&type=template&id=bbe8e3a6&scoped=true&\"\nimport script from \"./Map.vue?vue&type=script&lang=ts&\"\nexport * from \"./Map.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Map.vue?vue&type=style&index=0&id=bbe8e3a6&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"bbe8e3a6\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScrollTab.vue?vue&type=style&index=0&id=1eadd35d&prod&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Users.vue?vue&type=style&index=0&id=071dd9a4&prod&lang=scss&scoped=true&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=style&index=0&id=3cf75aec&prod&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tabs vertical\"},[_c('div',{staticClass:\"col-auto\"},[_c('div',{staticClass:\"d-flex flex-column h-100\",staticStyle:{\"overflow\":\"hidden\"}},[_c('scrollbar',{staticClass:\"flex-grow-0 flex-shrink-0 card-header main-content page-sidebar\",staticStyle:{\"max-height\":\"calc(100% - 200px)\"}},[_c('ul',{staticClass:\"nav nav-pills flex-column border-bottom-0 rounded-0\",attrs:{\"role\":\"tablist\"}},_vm._l((_vm.nonScrollTabs),function(tab){return _c('li',{key:tab.id,staticClass:\"nav-item\",attrs:{\"role\":\"presentation\"}},[_c('tab-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.right\",value:(tab.tooltip),expression:\"tab.tooltip\",modifiers:{\"right\":true}}],attrs:{\"tab\":tab},on:{\"setTab\":function($event){return _vm.setTab(tab)}}})],1)}),0)]),_c('ul',{staticClass:\"nav nav-pills flex-column flex-grow-0 card-header page-sidebar border-bottom-0 rounded-0 p-t-0\",attrs:{\"role\":\"tablist\"}},[_vm._t(\"prescroll-content\")],2),_c('scrollbar',{staticClass:\"flex-grow-1 flex-shrink-1 card-header page-sidebar p-r-0 p-t-0\",staticStyle:{\"overflow\":\"hidden\",\"min-height\":\"50px\"}},[_c('ul',{staticClass:\"nav nav-pills flex-column border-bottom-0 rounded-0 \",attrs:{\"role\":\"tablist\"}},_vm._l((_vm.scrollTabs),function(tab){return _c('li',{key:tab.id,staticClass:\"nav-item\",attrs:{\"role\":\"presentation\"}},[_c('tab-button',{attrs:{\"tab\":tab},on:{\"setTab\":function($event){return _vm.setTab(tab)}}})],1)}),0)])],1)]),_c('div',{staticClass:\"tab-content col\"},[_c('div',{staticClass:\"tab-pane card-body active\"},[_vm._t(\"default\")],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('a',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.tab && _vm.tab.show),expression:\"tab && tab.show\"}],staticClass:\"nav-link\",class:{'active': _vm.tabActive},attrs:{\"role\":\"tab\",\"aria-selected\":_vm.tabActive ? 'true' : 'false',\"tabindex\":\"0\",\"data-cy\":_vm.tab.title.replace(' ', '-').toLowerCase() + '-tab'},on:{\"click\":_vm.makeActive}},[_vm._v(\" \"+_vm._s(_vm.Contents)+\" \")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Watch, Prop, Inject } from \"vue-property-decorator\"\r\n\r\n// @ts-ignore\r\nimport VuePerfectScrollbar from \"vue-perfect-scrollbar\"\r\n\r\nimport ScrollTab from \"./ScrollTab.vue\"\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\t\"scrollbar\": VuePerfectScrollbar\r\n\t}\r\n})\r\nexport default class TabButton extends Vue {\r\n\t@Prop()\r\n\ttab!: ScrollTab | null;\r\n\r\n\tget tabActive () {\r\n\t\tif (!this.tab) {\r\n\t\t\treturn false\r\n\t\t}\r\n\r\n\t\treturn this.tab.active\r\n\t}\r\n\r\n\tget Contents () {\r\n\t\tif (!this.tab) {\r\n\t\t\treturn null\r\n\t\t}\r\n\r\n\t\tif (this.tab.$scopedSlots[\"title\"]) {\r\n\t\t\tconst titleSlot = this.tab.$scopedSlots[\"title\"]\r\n\t\t\tif (titleSlot) return titleSlot({})\r\n\t\t}\r\n\r\n\t\treturn this.tab.title\r\n\t}\r\n\r\n\tmakeActive () {\r\n\t\tif (!this.tabActive) {\r\n\t\t\tthis.$emit(\"setTab\", this.tab)\r\n\t\t}\r\n\t}\r\n}\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabButton.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabButton.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TabButton.vue?vue&type=template&id=3343efa0&scoped=true&\"\nimport script from \"./TabButton.vue?vue&type=script&lang=ts&\"\nexport * from \"./TabButton.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TabButton.vue?vue&type=style&index=0&id=3343efa0&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3343efa0\",\n null\n \n)\n\nexport default component.exports","\r\nimport { Component, Vue, Watch, Prop, Provide, ProvideReactive } from \"vue-property-decorator\"\r\n\r\n// @ts-ignore\r\nimport VuePerfectScrollbar from \"vue-perfect-scrollbar\"\r\n\r\nimport TabButton from \"./TabButton.vue\"\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\t\"scrollbar\": VuePerfectScrollbar,\r\n\t\t\"tab-button\": TabButton\r\n\t}\r\n})\r\nexport default class ScrollTabs extends Vue {\r\n\t@ProvideReactive(\"tabControl\") private tabsControl = this;\r\n\t@ProvideReactive(\"activeId\") private currentTabUid: string | null = null;\r\n\r\n\ttabs: any[] = [];\r\n\r\n\tpublic currentTab: any = null;\r\n\r\n\tpublic get activeTab () {\r\n\t\treturn this.currentTab ? this.currentTab : this.tabs[0]\r\n\t}\r\n\tpublic get activeId () {\r\n\t\treturn this.currentTabUid\r\n\t}\r\n\tpublic set activeId (value: string | null) {\r\n\t\tthis.currentTabUid = value\r\n\t}\r\n\r\n\tpublic get nonScrollTabs () {\r\n\t\treturn this.tabs.filter(t => !t.scrollable)\r\n\t}\r\n\tpublic get scrollTabs () {\r\n\t\treturn this.tabs.filter(t => t.scrollable)\r\n\t}\r\n\r\n\tcreated () {\r\n\t\tif (!this.tabs) {\r\n\t\t\tthis.tabs = []\r\n\t\t}\r\n\r\n\t\tthis.currentTab = null\r\n\t\tif (this.tabs.length > 0) {\r\n\t\t\tthis.currentTab = this.tabs[0]\r\n\t\t\tthis.activeId = this.tabs[0].id\r\n\t\t}\r\n\t}\r\n\r\n\tbeforeDestroy () {\r\n\t\tthis.activeId = null\r\n\t}\r\n\r\n\tpublic registerTab (tab: any): string {\r\n\t\tthis.tabs.push(tab)\r\n\r\n\t\tif (!this.currentTab) {\r\n\t\t\tthis.currentTab = tab\r\n\t\t\tthis.activeId = this.tabs.length.toString()\r\n\t\t}\r\n\t\treturn this.tabs.length.toString()\r\n\t}\r\n\r\n\tpublic unregisterTab (tab: any) {\r\n\t\tconst tabIndex = this.tabs.indexOf(tab)\r\n\t\tif (tabIndex > -1) {\r\n\t\t\tthis.tabs.splice(tabIndex, 1)\r\n\t\t\tif (tab.id === this.activeId) {\r\n\t\t\t\tthis.activeId = this.tabs.length > 0 ? this.tabs[0].id : null\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprivate setTab (newTab: any) {\r\n\t\tthis.currentTab = newTab\r\n\t\tthis.activeId = newTab.id\r\n\t}\r\n}\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScrollTabs.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScrollTabs.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ScrollTabs.vue?vue&type=template&id=05c79e3d&\"\nimport script from \"./ScrollTabs.vue?vue&type=script&lang=ts&\"\nexport * from \"./ScrollTabs.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ScrollTabs.vue?vue&type=style&index=0&id=05c79e3d&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabButton.vue?vue&type=style&index=0&id=3343efa0&prod&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=style&index=0&id=bbe8e3a6&prod&lang=scss&scoped=true&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScrollTabs.vue?vue&type=style&index=0&id=05c79e3d&prod&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.active)?_c('div',{staticClass:\"tab-contents\"},[_vm._t(\"default\")],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { Component, Vue, Watch, Prop, Inject, InjectReactive } from \"vue-property-decorator\"\r\n\r\n// @ts-ignore\r\nimport VuePerfectScrollbar from \"vue-perfect-scrollbar\"\r\n\r\nimport ScrollTabs from \"./ScrollTabs.vue\"\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\t\"scrollbar\": VuePerfectScrollbar\r\n\t}\r\n})\r\nexport default class ScrollTab extends Vue {\r\n\t@InjectReactive(\"tabControl\") private tabsControl!: ScrollTabs;\r\n\t@InjectReactive(\"activeId\") private activeId!: string | null;\r\n\r\n\t@Prop()\r\n\tpublic title!: string;\r\n\r\n\t@Prop({ type: Boolean })\r\n\tscrollable!: boolean;\r\n\r\n\t@Prop({ type: Boolean, default: true })\r\n\tshow!: boolean\r\n\r\n\t@Prop({ type: String, default: null })\r\n\tpublic tooltip!: boolean\r\n\r\n\tid: string | null = null;\r\n\r\n\tpublic get active () {\r\n\t\treturn this.activeId !== null && this.activeId === this.id\r\n\t}\r\n\r\n\tmounted () {\r\n\t\tif (this.tabsControl) {\r\n\t\t\tthis.id = this.tabsControl.registerTab(this)\r\n\t\t}\r\n\t}\r\n\r\n\tbeforeDestroy () {\r\n\t\tif (this.tabsControl) {\r\n\t\t\tthis.tabsControl.unregisterTab(this)\r\n\t\t\tthis.id = null\r\n\t\t}\r\n\t}\r\n}\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScrollTab.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScrollTab.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ScrollTab.vue?vue&type=template&id=1eadd35d&scoped=true&\"\nimport script from \"./ScrollTab.vue?vue&type=script&lang=ts&\"\nexport * from \"./ScrollTab.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ScrollTab.vue?vue&type=style&index=0&id=1eadd35d&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1eadd35d\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-modal',{ref:\"editModal\",attrs:{\"data-cy\":\"data-modal\",\"content-class\":\"fill-modal\",\"title\":_vm.title,\"size\":_vm.modalSize,\"no-close-on-backdrop\":true},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(ref){\nvar ok = ref.ok;\nreturn [_c('div',{staticClass:\"d-flex w-100\"},[_vm._t(\"additional-footer\",null,{\"item\":_vm.item}),_c('div',{staticClass:\"flex-grow-1\"},[(_vm.canDelete && !_vm.deleting && _vm.item.id)?_c('b-button',{attrs:{\"data-cy\":\"delete-button\",\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.deleteItem()}}},[_vm._v(\" Delete \")]):_vm._e()],1),(!_vm.canEdit)?_c('div',{attrs:{\"data-cy\":\"ok-footer-container\"}},[_c('b-button',{attrs:{\"data-cy\":\"cancel-button\",\"variant\":\"secondary\"},on:{\"click\":function($event){return ok()}}},[_vm._v(\" OK \")])],1):(!_vm.deleting)?_c('div',{attrs:{\"data-cy\":\"sc-footer-container\"}},[_c('b-button',{staticClass:\"m-r-5\",class:{'disabled': _vm.isSaveButtonDisabled()},attrs:{\"data-cy\":\"save-button\",\"variant\":\"primary\",\"disabled\":_vm.isSaveButtonDisabled()},on:{\"click\":function($event){return _vm.save()}}},[_vm._t(\"okButtonContent\",[_vm._v(\" Save \")])],2),_c('b-button',{attrs:{\"data-cy\":\"cancel-button\",\"variant\":\"secondary\"},on:{\"click\":function($event){return ok()}}},[_vm._v(\" Cancel \")])],1):_c('div',{attrs:{\"data-cy\":\"dc-footer-container\"}},[_c('b-button',{staticClass:\"m-r-5\",attrs:{\"data-cy\":\"delete-confirm-button\",\"variant\":\"danger\",\"disabled\":_vm.isDeleteButtonDisabled},on:{\"click\":function($event){return _vm.deleteConfirm()}}},[_vm._v(\" Delete \")]),_c('b-button',{attrs:{\"data-cy\":\"cancel-button\",\"variant\":\"secondary\"},on:{\"click\":function($event){return ok()}}},[_vm._v(\" Cancel \")])],1)],2)]}}],null,true)},[(_vm.displayColumns)?_c('div',{staticClass:\"modal-contents mh-100\",attrs:{\"data-cy\":\"columns-container\"}},[(!_vm.deleting)?[_vm._t(\"header\",null,{\"item\":_vm.item}),(_vm.showMap)?_c('map-display',{attrs:{\"data-cy\":\"map-display\"}}):_vm._e(),_c('data-form',{attrs:{\"canEdit\":_vm.canEdit,\"columns\":_vm.displayColumns,\"item\":_vm.item},on:{\"valid\":function($event){_vm.valid = true},\"invalid\":function($event){_vm.valid = false}}}),_vm._t(\"additional\",null,{\"item\":_vm.item})]:[_vm._t(\"deleteConfirm\",null,{\"item\":_vm.item,\"details\":_vm.deleteDetailsItem}),(_vm.confirmDelete)?_c('b-form-group',{attrs:{\"label\":'Are you sure you wish to delete ' + (_vm.item.name ? _vm.item.name : _vm.item.title ? _vm.item.title : _vm.item.label) + '?',\"label-for\":'input-delete'}},[(_vm.item.title || _vm.item.name)?_c('div',[_c('span',[_vm._v(\"To confirm deletion, enter \\\"\"+_vm._s(_vm.item.name ? _vm.item.name : _vm.item.title ? _vm.item.title : _vm.item.label)+\"\\\" \")]),_c('b-form-input',{attrs:{\"data-cy\":\"confirm-delete-text\",\"type\":\"text\",\"autocomplete\":\"off\",\"id\":'input-delete'},model:{value:(_vm.deleteConfirmText),callback:function ($$v) {_vm.deleteConfirmText=$$v},expression:\"deleteConfirmText\"}})],1):_vm._e()]):_vm._e(),_vm._t(\"deleteConfirmAdditional\",null,{\"item\":_vm.item,\"details\":_vm.deleteDetailsItem}),_vm._t(\"footer\",null,{\"item\":_vm.item,\"details\":_vm.deleteDetailsItem})],(!_vm.deleting)?_vm._t(\"flex-additional\",null,{\"item\":_vm.item}):_vm._e()],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\nimport { Component, Vue, Prop, Inject, Provide } from \"vue-property-decorator\"\r\n\r\nimport vSelect from \"vue-select\"\r\nimport { BModal } from \"bootstrap-vue\"\r\n\r\nimport DataForm from \"./DataForm.vue\"\r\nimport FieldPermissions from \"./Permissions/FieldPermissions.vue\"\r\nimport MapDisplay from \"@/components/Controls/Map.vue\"\r\n\r\nimport { MapProvider } from \"@/services/mapProvider\"\r\nimport ConfigurationColumn from \"@/types/configurationColumn\"\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\t\"v-select\": vSelect,\r\n\t\t\"field-permissions\": FieldPermissions,\r\n\t\t\"data-form\": DataForm,\r\n\t\t\"map-display\": MapDisplay\r\n\t}\r\n})\r\nexport default class DataModal extends Vue {\r\n\t$refs!: {\r\n\t\teditModal: BModal;\r\n\t\tscrollbar: any;\r\n\t}\r\n\r\n\t@Inject(\"mapProvider\") parentMapProvider!: MapProvider;\r\n\t@Provide(\"mapProvider\") mapProvider: MapProvider = new MapProvider();\r\n\r\n\t@Prop()\r\n\ttitle!: string;\r\n\r\n\t@Prop()\r\n\tcolumns!: ConfigurationColumn[];\r\n\r\n\t@Prop()\r\n\tcanEdit!: boolean;\r\n\r\n\t@Prop({ type: Boolean, default: false })\r\n\tallowMap!: boolean;\r\n\r\n\t@Prop({ type: String, default: \"xl\" })\r\n\tpublic modalSize!: string;\r\n\r\n\t@Prop()\r\n\tpublic deleteDetails!: (item: any) => any;\r\n\r\n\t@Prop()\r\n\tpublic canDeleteItem!: (item: any) => boolean;\r\n\r\n\t@Prop()\r\n\tpublic canConfirmDelete!: (item: any) => boolean;\r\n\r\n\tpublic deleteConfirmButtonDisabled: boolean = false;\r\n\tpublic saveButtonDisabled: boolean = false;\r\n\r\n\titemOverrideColumns: any[] | null = null;\r\n\titem: any = null;\r\n\r\n\tcanDelete: boolean = false;\r\n\tconfirmDelete: boolean = true;\r\n\tdeleteConfirmText: string = \"\";\r\n\tdeleteDetailsItem: any = null;\r\n\tdeleting: boolean = false;\r\n\r\n\tpublic valid: boolean = false;\r\n\r\n\tpublic async open (item: any, itemOverrideColumns: any[] | null = null) {\r\n\t\tthis.canDelete = this.canDeleteItem ? await this.canDeleteItem(item) : true\r\n\t\tthis.confirmDelete = this.canConfirmDelete ? await this.canConfirmDelete(item) : true\r\n\r\n\t\tthis.deleting = false\r\n\t\tthis.deleteConfirmText = \"\"\r\n\r\n\t\tthis.itemOverrideColumns = itemOverrideColumns\r\n\t\tthis.item = item\r\n\t\tthis.$refs.editModal.show()\r\n\t}\r\n\r\n\tpublic get displayColumns () {\r\n\t\tif (this.itemOverrideColumns) {\r\n\t\t\treturn this.itemOverrideColumns\r\n\t\t}\r\n\r\n\t\treturn this.columns\r\n\t}\r\n\r\n\tpublic get showMap () {\r\n\t\treturn this.allowMap && this.columns.some(\r\n\t\t\tc => c.dataType === \"map-marker\" ||\r\n\t\t\tc.dataType === \"map-path\" ||\r\n\t\t\tc.dataType === \"map-region\"\r\n\t\t)\r\n\t}\r\n\r\n\tpublic get isDeleteButtonDisabled () : boolean {\r\n\t\treturn this.item && (this.deleteConfirmButtonDisabled || (\r\n\t\t\tthis.item.name\r\n\t\t\t\t? this.deleteConfirmText !== this.item.name\r\n\t\t\t\t: this.item.title ? this.deleteConfirmText !== this.item.title : false)\r\n\t\t)\r\n\t}\r\n\r\n\tpublic save () {\r\n\t\tthis.$emit(\"save\", this.item)\r\n\t\tthis.hide()\r\n\t}\r\n\r\n\tpublic async deleteItem () {\r\n\t\tif (this.deleteDetails) {\r\n\t\t\tthis.deleteDetailsItem = await this.deleteDetails(this.item)\r\n\t\t}\r\n\r\n\t\tthis.deleting = true\r\n\t}\r\n\r\n\tpublic async deleteConfirm () {\r\n\t\tif (!this.isDeleteButtonDisabled) {\r\n\t\t\tthis.$emit(\"delete\", this.item)\r\n\t\t\tthis.hide()\r\n\t\t}\r\n\t}\r\n\r\n\tpublic isSaveButtonDisabled () : boolean {\r\n\t\treturn this.saveButtonDisabled || !this.valid\r\n\t}\r\n\r\n\tprivate hide () {\r\n\t\tthis.$refs.editModal.hide()\r\n\t}\r\n}\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DataModal.vue?vue&type=template&id=72a4c2cc&\"\nimport script from \"./DataModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./DataModal.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('page',[_c('scroll-tabs',{staticClass:\"h-100 no-gutters row\"},[_c('scroll-tab',{attrs:{\"title\":\"All Users\"}},[_c('user-list')],1),_c('template',{slot:\"prescroll-content\"},[_c('b-dropdown-divider'),(!_vm.isSuiteEnabled)?_c('a',{staticClass:\"btn btn-sm btn-primary m-r-10 m-t-10 m-b-5\",on:{\"click\":function($event){$event.stopPropagation();return _vm.createNewTeam($event)}}},[_c('i',{staticClass:\"fas fa-plus m-r-5\"}),_vm._v(\" Create team \")]):_vm._e(),_c('b-form-group',{staticClass:\"mb-0 flex-grow-1\"},[_c('b-form-input',{staticClass:\"header-input\",attrs:{\"type\":\"search\",\"id\":\"filterInput\",\"placeholder\":\"Filter teams\"},model:{value:(_vm.filter),callback:function ($$v) {_vm.filter=$$v},expression:\"filter\"}})],1)],1),_vm._l((_vm.teams),function(team){return _c('scroll-tab',{key:team.id,attrs:{\"scrollable\":\"\",\"title\":team.title,\"show\":_vm.filteredTeams.indexOf(team) > -1}},[_c('user-list',{attrs:{\"team\":team},on:{\"editTeam\":function($event){return _vm.editTeam(team)}}})],1)})],2),_c('data-modal',{ref:\"dataModal\",attrs:{\"title\":\"List\",\"modalSize\":\"xl\",\"columns\":_vm.columns,\"canEdit\":true,\"canDeleteItem\":function (team) { return !team.preventEdit && !_vm.isSuiteEnabled; }},on:{\"save\":_vm.save,\"delete\":_vm.deleteTeam},scopedSlots:_vm._u([{key:\"header\",fn:function(slotProps){return [_vm._t(\"header\",null,{\"item\":slotProps.item})]}},{key:\"additional\",fn:function(slotProps){return [_vm._t(\"additional\",null,{\"item\":slotProps.item})]}},{key:\"deleteConfirm\",fn:function(slotProps){return [_vm._t(\"deleteConfirm\",null,{\"item\":slotProps.item,\"details\":slotProps.details})]}}],null,true)})],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('skeleton',{staticClass:\"d-flex flex-column h-100\",attrs:{\"loading\":_vm.loading}},[_c('data-table',{staticClass:\"h-100\",attrs:{\"dataType\":\"User\",\"columns\":_vm.columns,\"items\":_vm.users,\"createNewItem\":_vm.createNewItem,\"loadItem\":_vm.loadUserDetails,\"canCreateItem\":!_vm.isSuiteEnabled,\"canDeleteItem\":function () { return !_vm.isSuiteEnabled; }},on:{\"save\":_vm.saveItem,\"delete\":_vm.deleteItem},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.team ? _vm.team.title : \"Users\")+\" \"),(_vm.team)?_c('a',{staticClass:\"btn btn-link\",on:{\"click\":function($event){return _vm.startEdit()}}},[_c('i',{staticClass:\"fas fa-edit\"})]):_vm._e()]},proxy:true},{key:\"description\",fn:function(){return [_c('b-alert',{attrs:{\"variant\":\"secondary\",\"show\":\"\",\"dismissible\":\"\"}},[_vm._v(\" Users management \")])]},proxy:true},(_vm.canDisplayCreateWarning)?{key:\"additional\",fn:function(){return [_c('b-alert',{attrs:{\"variant\":\"warning\",\"fade\":\"\",\"show\":\"\"}},[_c('span',[_vm._v(\" This action will change Users subscription usage from \"+_vm._s(_vm.subscription.casesUsers)+\" to \"+_vm._s(_vm.subscription.casesUsers + 1)+\" \")])])]},proxy:true}:null,{key:\"column.image\",fn:function(data){return [_c('div',{class:{'muted-image': data.item.disabled}},[_c('user-image',{attrs:{\"user\":data.item,\"size\":\"lg\"}})],1)]}},{key:\"column.teams\",fn:function(data){return [(data.item.teams)?_c('div',[_vm._v(\" \"+_vm._s(data.item.teams.map(function (t) { return t.title; }).join(\", \"))+\" \")]):_vm._e()]}},_vm._l((_vm.userFields),function(userField){return {key:_vm.userFieldSlotName(userField),fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.getDisplayLabel(data.item, userField))+\" \")]}}}),{key:\"column.disabled\",fn:function(data){return [_c('span',[_vm._v(_vm._s(data.item.disabled ? \"Account Disabled\" : \"\"))])]}},(_vm.canDisplayDeleteWarning)?{key:\"deleteConfirmAdditional\",fn:function(){return [_c('b-alert',{attrs:{\"variant\":\"warning\",\"fade\":\"\",\"show\":\"\"}},[_c('span',[_vm._v(\" This action will change Users subscription usage from \"+_vm._s(_vm.subscription.casesUsers)+\" to \"+_vm._s(_vm.subscription.casesUsers - 1)+\" \")])])]},proxy:true}:null,{key:\"additional-footer\",fn:function(data){return [(_vm.me && _vm.me.isAdmin && data.item && data.item.account && data.item.account.mfaEnabled)?_c('b-btn',{staticClass:\"m-r-10\",attrs:{\"variant\":\"secondary\"},on:{\"click\":function($event){return _vm.resetMfa(data.itam.id)}}},[_vm._v(\" Reset Two Factor Auth \")]):_vm._e()]}}],null,true)})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\nimport { Component, Vue, Prop } from \"vue-property-decorator\"\r\nimport { namespace, Getter, Action } from \"vuex-class\"\r\n\r\n// @ts-ignore\r\nimport cloneDeep from \"lodash/cloneDeep\"\r\n\r\nimport { Team, FieldInstance, DataDefinitionWithFields } from \"@/types\"\r\nimport User, { CurrentUser, UserWithFields } from \"@/types/user\"\r\nimport { Subscription } from \"@/types/subscription\"\r\n\r\nimport api from \"@/services/api\"\r\n\r\n// @ts-ignore\r\nimport VuePerfectScrollbar from \"vue-perfect-scrollbar\"\r\n\r\nimport SkeletonLoader from \"@/components/SkeletonLoader.vue\"\r\nimport DataTable from \"@/components/Config/DataTable.vue\"\r\nimport UserImage from \"@/components/UserImage.vue\"\r\nimport { formatDateMixin } from \"@/mixins/formatDateMixin\"\r\nimport { formatFieldsMixin } from \"@/mixins/formatFieldsMixin\"\r\n\r\nconst setup = namespace(\"setup\")\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\t\"skeleton\": SkeletonLoader,\r\n\t\t\"scrollbar\": VuePerfectScrollbar,\r\n\t\t\"data-table\": DataTable,\r\n\t\t\"user-image\": UserImage\r\n\t}\r\n})\r\nexport default class UserList extends Vue {\r\n\t@Prop() public team!: Team | null;\r\n\r\n\t@Getter(\"getMe\") public me!: CurrentUser;\r\n\r\n\t@Getter(\"getSubscription\") subscription?: Subscription\r\n\t@Getter(\"hasSubscription\") hasSubscription!: boolean\r\n\t@Action(\"loadSubscription\") loadSubscription!: () => Promise\r\n\t@Getter(\"getIsSuiteEnabled\") isSuiteEnabled! : boolean;\r\n\r\n\t@setup.Getter(\"getTeams\") public teams!: Team[];\r\n\r\n\t@setup.Action public getADEnabled!: () => Promise\r\n\r\n\tpublic filter: string = \"\";\r\n\r\n\tpublic users: UserWithFields[] = [];\r\n\tpublic allUsers: UserWithFields[] = [];\r\n\r\n\tprivate editUser: UserWithFields | null = null;\r\n\r\n\tpublic loading: boolean = true;\r\n\tpublic adEnabled: boolean = false;\r\n\r\n\tprivate errorEmailValue: string | null = null;\r\n\tprivate emailStatus: { [key: string]: boolean } = {};\r\n\r\n\tprivate userDefinition: DataDefinitionWithFields | null = null;\r\n\r\n\t/**\r\n\t * On mount, get users page.\r\n\t */\r\n\tprivate async mounted (): Promise {\r\n\t\tthis.loading = true\r\n\r\n\t\tawait this.reloadData()\r\n\t\tthis.getADEnabled().then(enabled => this.adEnabled = enabled)\r\n\r\n\t\tthis.loading = false\r\n\t}\r\n\r\n\t/**\r\n\t * Checks for exceeding the maximum limit of users in subscription.\r\n\t */\r\n\tpublic get canCreateUser (): boolean {\r\n\t\treturn !!(this.subscription && this.subscription.casesUsers < this.subscription.casesUserLimit)\r\n\t}\r\n\r\n\t/**\r\n\t * Checks if is possible to display a warning about changing a user's\r\n\t * account subscription limit when creating a new user.\r\n\t */\r\n\tpublic get canDisplayCreateWarning (): boolean {\r\n\t\treturn !!(this.hasSubscription && !this.editUser)\r\n\t}\r\n\r\n\t/**\r\n\t * Checks if is possible to display a warning about changing a user's\r\n\t * account subscription limit when deleting a user.\r\n\t */\r\n\tpublic get canDisplayDeleteWarning (): boolean {\r\n\t\treturn !!(this.hasSubscription && this.editUser)\r\n\t}\r\n\r\n\t/**\r\n\t * List of columns for a table\r\n\t */\r\n\tpublic get columns () {\r\n\t\tconst defaultColumns = [\r\n\t\t\t{\r\n\t\t\t\tkey: \"image\",\r\n\t\t\t\thasTemplate: true,\r\n\t\t\t\tinModal: () => false\r\n\t\t\t},\r\n\r\n\t\t\t{\r\n\t\t\t\tkey: \"name\",\r\n\t\t\t\tlabel: \"Name\",\r\n\t\t\t\tsortable: true,\r\n\t\t\t\treadonly: this.isSuiteEnabled,\r\n\t\t\t\terrors: (item: any) => item.name ? null : \"Please enter a name\"\r\n\t\t\t},\r\n\r\n\t\t\t{\r\n\t\t\t\tkey: \"email\",\r\n\t\t\t\tlabel: \"Email\",\r\n\t\t\t\tsortable: true,\r\n\t\t\t\treadonly: (this.editUser && this.editUser.id) || this.isSuiteEnabled,\r\n\t\t\t\terrors: (item: any) => {\r\n\t\t\t\t\tif (this.editUser &&\r\n\t\t\t\t\t\tthis.editUser.id &&\r\n\t\t\t\t\t\tthis.editUser.email === item.email\r\n\t\t\t\t\t) {\r\n\t\t\t\t\t\treturn null\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (!item.email) return \"Please enter an email address\"\r\n\r\n\t\t\t\t\tconst regx = /\\S+@\\S+\\.\\S+/\r\n\t\t\t\t\tif (!regx.test(String(item.email).toLocaleLowerCase())) {\r\n\t\t\t\t\t\treturn \"Please enter a valid email address\"\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (this.emailStatus[item.email]) {\r\n\t\t\t\t\t\treturn \"This email address is already in use\"\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tapi.emailExists(item.email).then(exists => {\r\n\t\t\t\t\t\tthis.emailStatus[item.email] = exists\r\n\t\t\t\t\t\tif (exists) this.errorEmailValue = item.email\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\treturn null\r\n\t\t\t\t},\r\n\t\t\t\tstatus: this.emailStatus,\r\n\t\t\t\terrorValue: this.errorEmailValue\r\n\t\t\t},\r\n\r\n\t\t\t{\r\n\t\t\t\tkey: \"teams\",\r\n\t\t\t\thasTemplate: true,\r\n\t\t\t\tlabel: \"Teams\",\r\n\t\t\t\tdataType: \"list-multiple\",\r\n\t\t\t\tvalueColumn: \"userTeams\",\r\n\t\t\t\toptions: this.teams,\r\n\t\t\t\treadonly: this.isSuiteEnabled\r\n\t\t\t},\r\n\r\n\t\t\t{\r\n\t\t\t\tkey: \"pictureUrl\",\r\n\t\t\t\tlabel: \"Picture\",\r\n\t\t\t\tinTable: false,\r\n\t\t\t\ttooltip: \"Provide a URL to a location where the image is stored for this user.\"\r\n\t\t\t},\r\n\r\n\t\t\t{\r\n\t\t\t\tkey: \"disabled\",\r\n\t\t\t\tlabel: \"Account Disabled\",\r\n\t\t\t\tdataType: \"checkbox\",\r\n\t\t\t\tinTable: true,\r\n\t\t\t\thasTemplate: true,\r\n\t\t\t\tinModal: (item: User) => item.id !== this.me.id,\r\n\t\t\t\ttooltip: \"Deactivate this account. This user will no longer be able to log in to Cases, and will no longer be able to be added to a record.\",\r\n\t\t\t\treadonly: this.isSuiteEnabled\r\n\t\t\t},\r\n\r\n\t\t\t{\r\n\t\t\t\tkey: \"adAccount\",\r\n\t\t\t\tlabel: \"Active Directory Account\",\r\n\t\t\t\tinTable: false,\r\n\t\t\t\tinModal: (item: any) => this.adEnabled,\r\n\t\t\t\treadonly: this.editUser && this.editUser.id\r\n\t\t\t}\r\n\t\t]\r\n\r\n\t\tlet allColumns = defaultColumns\r\n\r\n\t\tif (this.userFields.length > 0) {\r\n\t\t\tconst fieldColumns : any[] = this.userFields.map(c => {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tkey: \"fieldValues.\" + c.field.id! + \".value\",\r\n\t\t\t\t\tlabelKeyPath: \"fieldValues.\" + c.field.id! + \".label\",\r\n\t\t\t\t\tlabel: c.field.title,\r\n\t\t\t\t\tdataType: c.field.dataType,\r\n\t\t\t\t\thasTemplate: true,\r\n\t\t\t\t\tdataSourceId: c.field.dataSourceId,\r\n\t\t\t\t\tinTable: c.includeInTable,\r\n\t\t\t\t\tsortable: true,\r\n\t\t\t\t\tfield: c.field,\r\n\t\t\t\t\tinModal: (item: any) => true\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\tallColumns = allColumns.concat(fieldColumns)\r\n\t\t}\r\n\r\n\t\treturn allColumns\r\n\t}\r\n\r\n\tpublic get userFields () : FieldInstance[] {\r\n\t\tif (this.userDefinition && this.userDefinition.fields) {\r\n\t\t\treturn this.userDefinition.fields\r\n\t\t}\r\n\t\treturn []\r\n\t}\r\n\r\n\t/**\r\n\t * Loads a list of users for further display in a table\r\n\t */\r\n\tprivate async loadUsers (): Promise {\r\n\t\tthis.allUsers = await api.usersGet(null)\r\n\t\tthis.users = await api.usersGet(this.team ? this.team.id : null)\r\n\t}\r\n\r\n\t/**\r\n\t * Reloads data for users as well as subscription\r\n\t * after creating or deleting a user\r\n\t */\r\n\tprivate async reloadData (): Promise {\r\n\t\ttry {\r\n\t\t\tawait Promise.all([\r\n\t\t\t\tthis.loadUsers(),\r\n\t\t\t\tthis.loadSubscription(),\r\n\t\t\t\tthis.loadUserDefinition()\r\n\t\t\t])\r\n\t\t} catch (err) {\r\n\t\t\tthis.$bvToast.toast(err, {\r\n\t\t\t\ttitle: \"Error reload data\",\r\n\t\t\t\tvariant: \"danger\",\r\n\t\t\t\tsolid: true,\r\n\t\t\t\tautoHideDelay: 10000\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async loadUserDefinition () {\r\n\t\tthis.userDefinition = await api.userSpecialDefinition()\r\n\t}\r\n\r\n\t/**\r\n\t * Loads full information about the selected user for further editing\r\n\t */\r\n\tpublic async loadUserDetails (item: UserWithFields): Promise {\r\n\t\tconst itemClone = cloneDeep(item)\r\n\t\tVue.set(\r\n\t\t\titemClone,\r\n\t\t\t\"userTeams\",\r\n\t\t\tthis.teams.filter(t => item.teams.some(ut => ut.id === t.id))\r\n\t\t)\r\n\r\n\t\tif (this.me && this.me.isAdmin) {\r\n\t\t\tconst accountDetails = await api.accountDetails(itemClone.id)\r\n\t\t\tVue.set(\r\n\t\t\t\titemClone,\r\n\t\t\t\t\"account\",\r\n\t\t\t\taccountDetails\r\n\t\t\t)\r\n\t\t}\r\n\r\n\t\tthis.editUser = itemClone\r\n\t\tthis.emailStatus = {}\r\n\r\n\t\treturn itemClone\r\n\t}\r\n\r\n\t/**\r\n\t * Creates an empty model for creating a new user via a modal\r\n\t */\r\n\tpublic createNewItem (): { teams: never[]; userTeams: (Team | undefined)[] } {\r\n\t\tthis.emailStatus = {}\r\n\t\tthis.editUser = null\r\n\r\n\t\treturn {\r\n\t\t\tteams: [],\r\n\t\t\tuserTeams: this.team ? [this.teams.find(t => t.id === this.team!.id)] : []\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Create and update a user\r\n\t */\r\n\tpublic async saveItem (user: UserWithFields): Promise {\r\n\t\t// Only for new users, if there is a subscription, and the subscription has no more space\r\n\t\tif (!user.id && this.hasSubscription && !this.canCreateUser) {\r\n\t\t\tthis.$bvToast.toast(\r\n\t\t\t\t\"Subscription limit has been exceeded. User cannot be created.\", {\r\n\t\t\t\t\ttitle: \"Error\",\r\n\t\t\t\t\tvariant: \"danger\",\r\n\t\t\t\t\tsolid: true,\r\n\t\t\t\t\tautoHideDelay: 10000\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\tuser.teams = user.userTeams ? user.userTeams.map((team: any) => {\r\n\t\t\tif (team.id) {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tid: team.id,\r\n\t\t\t\t\ttitle: team.title\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tconst teamDetails = this.teams.find(f => f.id === team)\r\n\t\t\t\tif (teamDetails) {\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tid: teamDetails.id,\r\n\t\t\t\t\t\ttitle: teamDetails.title\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn null\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}).filter((team: any) => team) : []\r\n\r\n\t\ttry {\r\n\t\t\tawait api.userSave(user)\r\n\t\t} catch (err) {\r\n\t\t\tthis.$bvToast.toast(err, {\r\n\t\t\t\ttitle: `Error saving user: ${user.name}`,\r\n\t\t\t\tvariant: \"danger\",\r\n\t\t\t\tsolid: true,\r\n\t\t\t\tautoHideDelay: 10000\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tthis.editUser = null\r\n\r\n\t\tawait this.reloadData()\r\n\t}\r\n\r\n\t/**\r\n\t * Remove a user\r\n\t */\r\n\tpublic async deleteItem (field: User): Promise {\r\n\t\ttry {\r\n\t\t\tawait api.userDelete(field.id)\r\n\t\t} catch (err) {\r\n\t\t\tthis.$bvToast.toast(err, {\r\n\t\t\t\ttitle: `Error deleting user: ${field.name}`,\r\n\t\t\t\tvariant: \"danger\",\r\n\t\t\t\tsolid: true,\r\n\t\t\t\tautoHideDelay: 10000\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tthis.editUser = null\r\n\t\tthis.emailStatus = {}\r\n\r\n\t\tawait this.reloadData()\r\n\t}\r\n\r\n\t/**\r\n\t * Enters to editing mode\r\n\t */\r\n\tpublic startEdit (): void {\r\n\t\tthis.$emit(\"editTeam\")\r\n\t}\r\n\r\n\tprivate userFieldSlotName (userField: FieldInstance) : string {\r\n\t\treturn \"column.fieldValues.\" + userField.field.id! + \".value\"\r\n\t}\r\n\r\n\tprivate getDisplayLabel (dataItem: any, userField: FieldInstance) {\r\n\t\tif (!dataItem.fieldValues || !dataItem.fieldValues[userField.field.id!]) {\r\n\t\t\treturn \"\"\r\n\t\t}\r\n\r\n\t\tconst labeledValue = dataItem.fieldValues[userField.field.id!]\r\n\r\n\t\tconst dataType = userField.field.dataType!\r\n\r\n\t\tconst displayLabel = formatFieldsMixin.methods.getDisplayLabelFromLabeledValue(labeledValue, dataType)\r\n\t\treturn displayLabel\r\n\t}\r\n}\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserList.vue?vue&type=template&id=3cf75aec&scoped=true&\"\nimport script from \"./UserList.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UserList.vue?vue&type=style&index=0&id=3cf75aec&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3cf75aec\",\n null\n \n)\n\nexport default component.exports","\r\n\r\nimport { Component, Vue } from \"vue-property-decorator\"\r\nimport { namespace, Getter } from \"vuex-class\"\r\n\r\nimport cloneDeep from \"lodash/cloneDeep\"\r\n\r\nimport { Team, DashboardSummary } from \"@/types\"\r\n\r\nimport api from \"@/services/api\"\r\nimport dashboardApi from \"@/services/api.dashboard\"\r\n\r\nimport { BModal } from \"bootstrap-vue\"\r\nimport vSelect from \"vue-select\"\r\n// @ts-ignore\r\nimport VuePerfectScrollbar from \"vue-perfect-scrollbar\"\r\n\r\nimport UserList from \"@/components/Config/Users/UserList.vue\"\r\nimport DataModal from \"@/components/Config/DataModal.vue\"\r\nimport ScrollTabs from \"@/components/Controls/Tabs/ScrollTabs.vue\"\r\nimport ScrollTab from \"@/components/Controls/Tabs/ScrollTab.vue\"\r\nimport { ExtendedPermission } from \"@/types/user\"\r\nimport PageWrapper from \"@/components/New/Page/PageWrapper.vue\"\r\n\r\nconst setup = namespace(\"setup\")\r\n\r\n@Component({\r\n\tcomponents: {\r\n\t\t\"page\": PageWrapper,\r\n\t\t\"v-select\": vSelect,\r\n\t\t\"scrollbar\": VuePerfectScrollbar,\r\n\t\t\"data-modal\": DataModal,\r\n\t\t\"user-list\": UserList,\r\n\t\t\"scroll-tab\": ScrollTab,\r\n\t\t\"scroll-tabs\": ScrollTabs\r\n\t}\r\n})\r\nexport default class UserSetup extends Vue {\r\n\t$refs!: { dataModal: BModal }\r\n\r\n\t@setup.Action\r\n\tpublic loadTeams!: () => Promise;\r\n\r\n\t@setup.Getter(\"getTeams\")\r\n\tpublic teams!: Team[];\r\n\r\n\t@setup.Action\r\n\tpublic getADEnabled!: () => Promise\r\n\r\n\t@Getter(\"getIsSuiteEnabled\") isSuiteEnabled! : boolean;\r\n\r\n\tcurrentTeamDashboards: DashboardSummary[] = []\r\n\textendedPermissions: ExtendedPermission[] = []\r\n\r\n\tpublic filter: string = \"\";\r\n\tpublic adEnabled: boolean = false;\r\n\r\n\tpublic async mounted (): Promise {\r\n\t\tapi.extendedPermissionsGet().then(permissions => this.extendedPermissions = (permissions || []))\r\n\t\tawait this.loadTeams()\r\n\r\n\t\tthis.getADEnabled().then(enabled => this.adEnabled = enabled)\r\n\t}\r\n\r\n\tpublic get columns (): any[] {\r\n\t\treturn [\r\n\t\t\t{\r\n\t\t\t\tkey: \"title\",\r\n\t\t\t\tlabel: \"Title\",\r\n\t\t\t\tsortable: true,\r\n\t\t\t\terrors: (item: any) => item.title ? null : \"Please enter a title\",\r\n\t\t\t\treadonly: (item: any) => item.preventEdit || this.isSuiteEnabled\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tkey: \"defaultDashboardId\",\r\n\t\t\t\tlabel: \"Default Dashboard\",\r\n\t\t\t\tvalueColumn: \"defaultDashboardId\",\r\n\t\t\t\tsortable: true,\r\n\t\t\t\tdataType: \"list\",\r\n\t\t\t\toptions: this.currentTeamDashboards,\r\n\t\t\t\tinTable: false\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tkey: \"editData\",\r\n\t\t\t\tlabel: \"Edit Data\",\r\n\t\t\t\tsortable: true,\r\n\t\t\t\tdataType: \"checkbox\",\r\n\t\t\t\tinModal: (item: any) => !item.preventEdit\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tkey: \"editUsers\",\r\n\t\t\t\tlabel: \"Edit Users\",\r\n\t\t\t\tsortable: true,\r\n\t\t\t\tdataType: \"checkbox\",\r\n\t\t\t\tinModal: (item: any) => !item.preventEdit\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tkey: \"editInsights\",\r\n\t\t\t\tlabel: \"Edit Insights\",\r\n\t\t\t\tsortable: true,\r\n\t\t\t\tdataType: \"checkbox\",\r\n\t\t\t\tinModal: (item: any) => !item.preventEdit\r\n\t\t\t},\r\n\t\t\t...this.extendedPermissionColumns,\r\n\t\t\t{\r\n\t\t\t\tkey: \"adGroup\",\r\n\t\t\t\tlabel: \"Active Directory Group\",\r\n\t\t\t\tinTable: false,\r\n\t\t\t\tinModal: (item: any) => this.adEnabled\r\n\t\t\t}\r\n\t\t]\r\n\t}\r\n\r\n\tpublic get extendedPermissionColumns () {\r\n\t\treturn this.extendedPermissions\r\n\t\t\t? this.extendedPermissions.map(permission => {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tkey: \"extendedPermissions.\" + permission.key,\r\n\t\t\t\t\tlabel: permission.title,\r\n\t\t\t\t\tdescription: permission.description,\r\n\t\t\t\t\tdataType: \"checkbox\",\r\n\t\t\t\t\tinModal: (item: any) => !item.preventEdit\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t: []\r\n\t}\r\n\r\n\tpublic get filteredTeams () {\r\n\t\tif (this.filter === \"\") {\r\n\t\t\treturn this.teams\r\n\t\t}\r\n\r\n\t\tconst lowerFilter = this.filter.toLowerCase()\r\n\t\treturn this.teams.filter(team => team.title.toLowerCase().indexOf(lowerFilter) > -1)\r\n\t}\r\n\r\n\tpublic async save (team: Team): Promise {\r\n\t\ttry {\r\n\t\t\tawait api.teamSave(team)\r\n\t\t} catch (err) {\r\n\t\t\tthis.$bvToast.toast(err, {\r\n\t\t\t\ttitle: `Error saving team: ${team.title}`,\r\n\t\t\t\tvariant: \"danger\",\r\n\t\t\t\tsolid: true,\r\n\t\t\t\tautoHideDelay: 10000\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tawait this.loadTeams()\r\n\t}\r\n\r\n\tpublic async createNewTeam (): Promise {\r\n\t\tthis.currentTeamDashboards = await dashboardApi.dashboardGetListForTeam(\"\")\r\n\t\tthis.$refs.dataModal.open({\r\n\t\t})\r\n\t}\r\n\r\n\tpublic async editTeam (team: Team): Promise {\r\n\t\tthis.currentTeamDashboards = await dashboardApi.dashboardGetListForTeam(team.id)\r\n\t\tthis.$refs.dataModal.open(cloneDeep(team))\r\n\t}\r\n\r\n\tpublic async deleteTeam (team: any): Promise {\r\n\t\ttry {\r\n\t\t\tawait api.teamDelete(team.id)\r\n\t\t} catch (err) {\r\n\t\t\tthis.$bvToast.toast(err, {\r\n\t\t\t\ttitle: `Error deleting team: ${team.title}`,\r\n\t\t\t\tvariant: \"danger\",\r\n\t\t\t\tsolid: true,\r\n\t\t\t\tautoHideDelay: 10000\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tawait this.loadTeams()\r\n\t}\r\n}\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Users.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Users.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Users.vue?vue&type=template&id=071dd9a4&scoped=true&\"\nimport script from \"./Users.vue?vue&type=script&lang=ts&\"\nexport * from \"./Users.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Users.vue?vue&type=style&index=0&id=071dd9a4&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"071dd9a4\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}