@cauca-911/management 2.0.3 → 11.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +4 -4
  3. package/assets/i18n/cauca/en-management.json +16 -16
  4. package/assets/i18n/cauca/fr-management.json +16 -16
  5. package/bundles/cauca-911-management.umd.js +88 -237
  6. package/bundles/cauca-911-management.umd.js.map +1 -1
  7. package/bundles/cauca-911-management.umd.min.js +1 -1
  8. package/bundles/cauca-911-management.umd.min.js.map +1 -1
  9. package/cauca-911-management.d.ts +1 -1
  10. package/cauca-911-management.metadata.json +1 -0
  11. package/esm2015/cauca-911-management.js +2 -1
  12. package/esm2015/lib/cauca-management-group/cauca-management-group.component.js +21 -111
  13. package/esm2015/lib/cauca-management-user/cauca-management-user.component.js +16 -69
  14. package/esm2015/lib/cauca-management.component.js +8 -22
  15. package/esm2015/lib/cauca-management.module.js +12 -31
  16. package/esm2015/lib/cauca-management.service.js +8 -10
  17. package/esm2015/lib/shared/models/group-model.js +1 -1
  18. package/esm2015/lib/shared/models/group-permission-model.js +1 -1
  19. package/esm2015/lib/shared/models/permission-model.js +1 -1
  20. package/esm2015/lib/shared/models/user-group-model.js +1 -1
  21. package/esm2015/lib/shared/models/user-model.js +2 -1
  22. package/esm2015/lib/shared/models/user-permission-model.js +1 -1
  23. package/esm2015/lib/shared/services/management-group.service.js +12 -8
  24. package/esm2015/lib/shared/services/management-permission.service.js +12 -8
  25. package/esm2015/lib/shared/services/management-user.service.js +12 -8
  26. package/esm2015/public-api.js +1 -1
  27. package/fesm2015/cauca-911-management.js +86 -247
  28. package/fesm2015/cauca-911-management.js.map +1 -1
  29. package/lib/cauca-management-group/cauca-management-group.component.d.ts +0 -3
  30. package/lib/cauca-management-user/cauca-management-user.component.d.ts +0 -3
  31. package/lib/cauca-management.component.d.ts +0 -3
  32. package/lib/cauca-management.module.d.ts +0 -10
  33. package/lib/cauca-management.service.d.ts +0 -3
  34. package/lib/shared/models/user-model.d.ts +1 -0
  35. package/lib/shared/services/management-group.service.d.ts +0 -3
  36. package/lib/shared/services/management-permission.service.d.ts +0 -3
  37. package/lib/shared/services/management-user.service.d.ts +0 -3
  38. package/package.json +10 -15
  39. package/esm5/cauca-911-management.js +0 -5
  40. package/esm5/lib/cauca-management-group/cauca-management-group.component.js +0 -309
  41. package/esm5/lib/cauca-management-user/cauca-management-user.component.js +0 -116
  42. package/esm5/lib/cauca-management.component.js +0 -30
  43. package/esm5/lib/cauca-management.module.js +0 -58
  44. package/esm5/lib/cauca-management.service.js +0 -17
  45. package/esm5/lib/shared/models/group-model.js +0 -10
  46. package/esm5/lib/shared/models/group-permission-model.js +0 -11
  47. package/esm5/lib/shared/models/permission-model.js +0 -10
  48. package/esm5/lib/shared/models/user-group-model.js +0 -10
  49. package/esm5/lib/shared/models/user-model.js +0 -13
  50. package/esm5/lib/shared/models/user-permission-model.js +0 -11
  51. package/esm5/lib/shared/services/management-group.service.js +0 -36
  52. package/esm5/lib/shared/services/management-permission.service.js +0 -33
  53. package/esm5/lib/shared/services/management-user.service.js +0 -51
  54. package/esm5/public-api.js +0 -16
  55. package/fesm5/cauca-911-management.js +0 -667
  56. package/fesm5/cauca-911-management.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"cauca-911-management.umd.js","sources":["ng://@cauca-911/management/lib/cauca-management.service.ts","ng://@cauca-911/management/lib/cauca-management.component.ts","ng://@cauca-911/management/lib/cauca-management.component.html","ng://@cauca-911/management/lib/shared/services/management-group.service.ts","ng://@cauca-911/management/lib/shared/services/management-user.service.ts","ng://@cauca-911/management/lib/shared/services/management-permission.service.ts","ng://@cauca-911/management/lib/cauca-management-group/cauca-management-group.component.html","ng://@cauca-911/management/lib/cauca-management-group/cauca-management-group.component.ts","ng://@cauca-911/management/lib/shared/models/user-model.ts","ng://@cauca-911/management/lib/cauca-management-user/cauca-management-user.component.ts","ng://@cauca-911/management/lib/cauca-management-user/cauca-management-user.component.html","ng://@cauca-911/management/lib/cauca-management.module.ts","ng://@cauca-911/management/lib/shared/models/user-group-model.ts","ng://@cauca-911/management/lib/shared/models/user-permission-model.ts","ng://@cauca-911/management/lib/shared/models/group-model.ts","ng://@cauca-911/management/lib/shared/models/group-permission-model.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CaucaManagementService {\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'cauca-management',\n templateUrl: './cauca-management.component.html',\n styles: []\n})\nexport class CaucaManagementComponent implements OnInit {\n\n constructor() { }\n\n public ngOnInit(): void {\n }\n\n}\n","<div>{{'core.noGenericComponentOnThisLibrary' | translate}}</div>","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\nimport { GroupModel } from '../models/group-model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ManagementGroupService {\n private config: Configuration;\n\n constructor(\n coreService: CaucaCoreService,\n private http: HttpClient,\n ) {\n this.config = coreService.getConfig();\n }\n\n public getAll(): Observable<GroupModel[]> {\n return this.http.get<GroupModel[]>(`${this.config.apiUrl}GroupManagement`);\n }\n\n public get(idGroup: string): Observable<GroupModel> {\n return this.http.get<GroupModel>(`${this.config.apiUrl}GroupManagement/${idGroup}`);\n }\n\n public save(group: GroupModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}GroupManagement`, group);\n }\n\n public delete(idGroup: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}GroupManagement/${idGroup}`);\n }\n\n public hasExistingGroupName(group: GroupModel): Observable<boolean> {\n return this.http.post<boolean>(`${this.config.apiUrl}GroupManagement/GroupNameAlreadyExist`, group);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\nimport { UserGroupModel } from '../models/user-group-model';\nimport { UserPermissionModel } from '../models/user-permission-model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ManagementUserService {\n private config: Configuration;\n\n constructor(\n coreService: CaucaCoreService,\n protected http: HttpClient,\n ) {\n this.config = coreService.getConfig();\n }\n\n public getAll<TUser>(): Observable<TUser[]> {\n return this.http.get<TUser[]>(`${this.config.apiUrl}UserManagement`);\n }\n\n public get<TUser>(idUser: string): Observable<TUser> {\n return this.http.get<TUser>(`${this.config.apiUrl}UserManagement/${idUser}`);\n }\n\n public getGroup(idUser: string): Observable<any> {\n return this.http.get(`${this.config.apiUrl}UserManagement/${idUser}/groups`);\n }\n\n public addGroup(userGroup: UserGroupModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement/group`, userGroup);\n }\n\n public deleteGroup(idUserGroup: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/groups/${idUserGroup}`);\n }\n\n public addPermission(userPermission: UserPermissionModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement/permission`, userPermission);\n }\n\n public deletePermission(idUserPermission: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/groups/${idUserPermission}`);\n }\n\n public save<TUser>(user: TUser): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement`, user);\n }\n\n public delete(idUser: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/${idUser}`);\n }\n\n public hasExistingUserName<TUser>(user: TUser): Observable<boolean> {\n return this.http.post<boolean>(`${this.config.apiUrl}UserManagement/UserNameAlreadyExist`, user);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\nimport { PermissionModel } from '../models/permission-model';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ManagementPermissionService {\n private config: Configuration;\n\n constructor(\n coreService: CaucaCoreService,\n private http: HttpClient,\n ) {\n this.config = coreService.getConfig();\n }\n\n public getAll(): Observable<PermissionModel[]> {\n return this.http.get<PermissionModel[]>(`${this.config.apiUrl}PermissionManagement`);\n }\n\n public get(idPermission: string): Observable<PermissionModel> {\n return this.http.get<PermissionModel>(`${this.config.apiUrl}PermissionManagement/${idPermission}`);\n }\n\n public save(permission: PermissionModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}PermissionManagement`, permission);\n }\n\n public delete(idPermission: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}PermissionManagement/${idPermission}`);\n }\n}\n","<cauca-dx-data-grid [allowPrint]=\"showPrintButton\" keyExpr=\"id\" [dataSource]=\"groups\"\n (onRowInserted)=\"onRowInserted($event)\" (onInitNewRow)=\"onInitNewRow()\" (onRowUpdated)=\"onRowUpdated($event)\"\n (onEditingStart)=\"onEditingStart($event)\" (onRowRemoved)=\"onRowRemoved($event)\">\n\n <dxi-column dataField=\"name\" [caption]=\"'management.name' | translate\">\n <dxi-validation-rule type=\"async\" [message]=\"'management.groupNameAlreadyUsed' | translate\"\n [validationCallback]=\"groupNameAlreadyUsedValidation\"></dxi-validation-rule>\n </dxi-column>\n <dxi-column dataField=\"users\" [caption]=\"'management.users' | translate\" editCellTemplate=\"usersEditTemplate\"\n [calculateCellValue]=\"calculateUsersCellValue\">\n </dxi-column>\n <dxi-column dataField=\"permissions\" [caption]=\"'management.permissions' | translate\" [visible]=\"false\"\n editCellTemplate=\"permissionsEditTemplate\">\n </dxi-column>\n <dxo-export [enabled]=\"false\"></dxo-export>\n <dxo-editing mode=\"popup\" [allowAdding]=\"true\" [allowUpdating]=\"true\" [allowDeleting]=\"true\" [useIcons]=\"true\">\n <dxo-popup [showTitle]=\"true\" [title]=\"'management.group' | translate\" [fullScreen]=\"!showColumn\"></dxo-popup>\n <dxo-form colCount=\"1\" [labelLocation]=\"showColumnXS ? 'left' : 'top'\">\n <dxi-item dataField=\"name\" [isRequired]=\"true\"></dxi-item>\n <dxi-item dataField=\"users\"></dxi-item>\n <dxi-item dataField=\"permissions\"></dxi-item>\n </dxo-form>\n </dxo-editing>\n\n <div *dxTemplate=\"let field of 'usersEditTemplate'\">\n <dx-tag-box valueExpr=\"id\" [displayExpr]=\"fullName\" [dataSource]=\"users\" [searchEnabled]=\"true\"\n [searchExpr]=\"fullName\" (onInitialized)=\"getGroupUser(field, $event)\"\n (onValueChanged)=\"setGroupUser(field, $event)\">\n </dx-tag-box>\n </div>\n <div *dxTemplate=\"let field of 'permissionsEditTemplate'\">\n <dx-list [dataSource]=\"permissions\" itemTemplate=\"rowTemplate\" [searchEnabled]=\"true\"\n [searchExpr]=\"['name', 'tag']\" [hoverStateEnabled]=\"hoverStatePermission\">\n <div *dxTemplate=\"let permission of 'rowTemplate'\">\n <dx-check-box [text]=\"permission.name\" (onInitialized)=\"getPermissionStatus(field, permission, $event)\"\n (onValueChanged)=\"checkBoxToggled(field, permission, $event)\">\n </dx-check-box>\n </div>\n </dx-list>\n </div>\n</cauca-dx-data-grid>","import { Component, Input, OnInit } from '@angular/core';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { map } from 'rxjs/operators';\nimport { UserModel } from '../shared/models/user-model';\nimport { UserGroupModel } from '../shared/models/user-group-model';\nimport { GroupModel } from '../shared/models/group-model';\nimport { GroupPermissionModel } from '../shared/models/group-permission-model';\nimport { ManagementGroupService } from '../shared/services/management-group.service';\nimport { ManagementUserService } from '../shared/services/management-user.service';\nimport { PermissionModel } from '../shared/models/permission-model';\nimport { ManagementPermissionService } from '../shared/services/management-permission.service';\n\n@Component({\n selector: 'cauca-management-group',\n templateUrl: './cauca-management-group.component.html',\n styleUrls: ['./cauca-management-group.component.scss']\n})\nexport class CaucaManagementGroupComponent implements OnInit {\n private groupUsers: any;\n\n @Input()\n public showPrintButton: boolean = true;\n @Input()\n public hoverStatePermission = true;\n public groups: GroupModel[] = [];\n public users: UserModel[] = [];\n public permissions: PermissionModel[] = [];\n public userFullName: any = {};\n public showColumn = true;\n public showColumnXS = true;\n public translations: any = [];\n\n constructor(\n private managementGroupService: ManagementGroupService,\n private managementUserService: ManagementUserService,\n private managementPermissionService: ManagementPermissionService,\n breakpointObserver: BreakpointObserver,\n ) {\n breakpointObserver.observe(['(max-width: 1000px)']).subscribe(result => {\n this.showColumn = !result.matches;\n });\n breakpointObserver.observe(['(max-width: 600px)']).subscribe(result => {\n this.showColumnXS = !result.matches;\n });\n }\n\n public ngOnInit(): void {\n this.managementUserService.getAll<UserModel>().subscribe(data => {\n this.users = data;\n this.users.forEach(user => {\n if (user.isActive) {\n if (user.firstName !== '' && user.lastName !== '') {\n this.userFullName[user.id] = `${user.firstName} ${user.lastName}`;\n }\n }\n });\n });\n this.managementPermissionService.getAll().subscribe(permissions => {\n const permissionIndex = permissions.findIndex(c => {\n return c.tag === 'CanAccessPermissions';\n });\n if (permissionIndex !== -1) {\n permissions.splice(permissionIndex, 1);\n }\n permissions.sort((a: PermissionModel, b: PermissionModel) => {\n if (a.name < b.name) { return -1; }\n if (a.name > b.name) { return 1; }\n return 0;\n });\n this.permissions = permissions;\n });\n this.getGroups();\n }\n\n public fullName(data): string {\n if (!data) {\n return '';\n }\n\n return `${data.firstName} ${data.lastName}`;\n }\n\n public getGroupUser(field, e): void {\n const users: string[] = [];\n if (this.groupUsers) {\n this.groupUsers.forEach( user => {\n users.push(user.idUser);\n });\n }\n e.component.option('value', users);\n }\n\n public setGroupUser(field, e): void {\n const groupUser: UserGroupModel[] = [];\n\n e.value.forEach(idUser => {\n const groupIndex = (field.data.users || []).findIndex(g => g.idUser === idUser);\n\n if (groupIndex === -1) {\n groupUser.push({ idUser, } as UserGroupModel);\n } else {\n groupUser.push(field.data.users[groupIndex]);\n }\n });\n\n field.setValue(JSON.parse(JSON.stringify(groupUser)));\n }\n\n public setGroupPermission(field, e): void {\n const groupUser: UserGroupModel[] = [];\n\n e.value.forEach(idUser => {\n groupUser.push({\n idUser,\n } as UserGroupModel);\n });\n\n field.setValue(JSON.parse(JSON.stringify(groupUser)));\n }\n\n public getPermissionStatus(field, permission, e): void {\n const groupPermission = (field.value || []).find(p => p.idModulePermission === permission.id);\n\n if (groupPermission) {\n e.component.option('value', groupPermission.isAllowed);\n } else {\n e.component.option('value', undefined);\n }\n }\n\n public checkBoxToggled(field, permission, e): void {\n if (e.component.skipOnValueChanged) {\n e.component.skipOnValueChanged = false;\n return;\n }\n if (e.component.setUndefinedNextTime) {\n e.component.setUndefinedNextTime = false;\n e.component.skipOnValueChanged = true;\n e.component.option('value', undefined);\n this.setPermissionStatus(field, permission, undefined);\n return;\n }\n if (e.value === false) {\n e.component.setUndefinedNextTime = true;\n }\n\n this.setPermissionStatus(field, permission, e.value);\n }\n\n public onRowInserted(e): void {\n this.saveGroup(e.data as GroupModel);\n }\n\n public onRowUpdated(e): void {\n this.saveGroup(e.data as GroupModel);\n }\n\n public onRowRemoved(e): void {\n const group = (e.data as GroupModel);\n this.managementGroupService.delete(group.id).subscribe(data => {\n this.getGroups();\n });\n }\n\n public calculateUsersCellValue = (e): string => {\n const users = (e.users ? e.users as UserGroupModel[] : []);\n let usersNames: any[] = [];\n users.forEach(user => {\n const userGroup = this.users.filter(u => u.id === user.idUser);\n if (userGroup && userGroup[0]) {\n usersNames.push(userGroup[0].firstName + ' ' + userGroup[0].lastName);\n }\n });\n usersNames = usersNames.sort((one, two) => (one < two ? -1 : 1));\n return usersNames.join(', ');\n }\n\n public onEditingStart(e: any): void {\n this.groupUsers = e.data.users;\n }\n\n public onInitNewRow(): void {\n this.groupUsers = [];\n }\n\n public groupNameAlreadyUsedValidation = (e): Promise<boolean> => {\n return this.managementGroupService.hasExistingGroupName(e.data).pipe(\n map((exist: boolean) => {\n return !exist;\n })\n ).toPromise();\n }\n\n private setPermissionStatus(field: any, permission, value): void {\n const groupPermissions = field.value || [];\n const groupIndex = groupPermissions.findIndex(p => p.idModulePermission === permission.id);\n\n if (groupIndex > -1) {\n groupPermissions[groupIndex].isAllowed = value;\n } else {\n groupPermissions.push({\n idModulePermission: permission.id,\n isAllowed: value,\n } as GroupPermissionModel);\n }\n\n field.setValue(JSON.parse(JSON.stringify(groupPermissions)));\n }\n\n private saveGroup(group: GroupModel): void {\n this.removePermissionUndefined(group);\n if (group.users) {\n group.users.forEach((userGroup: UserGroupModel) => {\n userGroup.idGroup = group.id;\n });\n }\n if (group.permissions) {\n group.permissions.forEach((groupPermission: GroupPermissionModel) => {\n groupPermission.idGroup = group.id;\n });\n }\n this.managementGroupService.save(group).subscribe(() => {\n this.getGroups();\n });\n this.groupUsers = [];\n }\n\n private removePermissionUndefined(group: GroupModel): void {\n group.permissions = group.permissions.filter((permission: GroupPermissionModel) => permission.isAllowed !== undefined);\n }\n\n private getGroups(): void {\n this.managementGroupService.getAll().subscribe(data => this.groups = data);\n }\n}\n","import {UserGroupModel} from './user-group-model';\nimport {UserPermissionModel} from './user-permission-model';\n\nexport class UserModel {\n id: string;\n userName = '';\n firstName = '';\n lastName = '';\n password = '';\n email = '';\n isActive = true;\n groups: UserGroupModel[];\n permissions: UserPermissionModel[];\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { UserModel } from '../shared/models/user-model';\nimport { ManagementUserService } from '../shared/services/management-user.service';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { map } from 'rxjs/operators';\n\n@Component({\n selector: 'cauca-management-user',\n templateUrl: './cauca-management-user.component.html',\n styleUrls: ['./cauca-management-user.component.scss']\n})\nexport class CaucaManagementUserComponent implements OnInit {\n public users: UserModel[] = [\n new UserModel()\n ];\n public showColumnXS = true;\n\n constructor(\n private managementUserService: ManagementUserService,\n breakpointObserver: BreakpointObserver,\n ) {\n breakpointObserver.observe(['(max-width: 600px)']).subscribe(result => {\n this.showColumnXS = !result.matches;\n });\n }\n\n public ngOnInit(): void {\n this.getUsers();\n }\n\n public onRowInserted(e): void {\n this.saveGroup(e.data as UserModel);\n }\n\n public onRowUpdated(e): void {\n this.saveGroup(e.key as UserModel);\n }\n\n public onRowRemoved(e): void {\n const user = (e.data as UserModel);\n this.managementUserService.delete(user.id).subscribe(data => {\n this.getUsers();\n });\n }\n\n public userNameAlreadyUsedValidation = (e): Promise<boolean> => {\n return this.managementUserService.hasExistingUserName(e.data).pipe(\n map((exist: boolean) => {\n return !exist;\n })\n ).toPromise();\n }\n\n private saveGroup(user: UserModel): void {\n this.managementUserService.save<UserModel>(user).subscribe(() => {\n this.getUsers();\n });\n }\n\n private getUsers(): void {\n this.managementUserService.getAll<UserModel>().subscribe(data => this.users = data);\n }\n}","<cauca-dx-data-grid\n keyExpr=\"id\"\n [dataSource]=\"users\"\n (onRowInserted)=\"onRowInserted($event)\"\n (onRowUpdated)=\"onRowUpdated($event)\"\n (onRowRemoved)=\"onRowRemoved($event)\">\n\n <dxi-column dataField=\"userName\" [caption]=\"'management.userName' | translate\">\n <dxi-validation-rule type=\"async\" [message]=\"'management.userNameAlreadyUsed' | translate\" [validationCallback]=\"userNameAlreadyUsedValidation\"></dxi-validation-rule>\n </dxi-column>\n <dxi-column dataField=\"isActive\" [caption]=\"'management.isActive' | translate\" [visible]=\"false\"></dxi-column>\n <dxi-column dataField=\"firstName\" [caption]=\"'management.firstName' | translate\"></dxi-column>\n <dxi-column dataField=\"lastName\" [caption]=\"'management.lastName' | translate\"></dxi-column>\n <dxi-column dataField=\"groups\" [caption]=\"'management.group' | translate\"></dxi-column>\n\n <dxo-editing mode=\"popup\" [allowAdding]=\"true\" [allowUpdating]=\"true\" [allowDeleting]=\"true\" [useIcons]=\"true\">\n <dxo-popup [showTitle]=\"true\" [title]=\"'management.group' | translate\"></dxo-popup>\n <dxo-form colCount=\"2\" [labelLocation]=\"showColumnXS ? 'left' : 'top'\">\n <dxi-item dataField=\"userName\" [isRequired]=\"true\"></dxi-item>\n <dxi-item dataField=\"isActive\"></dxi-item>\n <dxi-item dataField=\"firstName\"></dxi-item>\n <dxi-item dataField=\"lastName\"></dxi-item>\n <dxi-item dataField=\"group\"></dxi-item>\n </dxo-form>\n </dxo-editing>\n</cauca-dx-data-grid>\n","import { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { DxCheckBoxModule, DxListModule, DxTagBoxModule } from 'devextreme-angular';\nimport { CaucaCoreModule } from '@cauca-911/core';\nimport { CaucaDevextremeModule } from '@cauca-911/devextreme';\nimport { CaucaManagementComponent } from './cauca-management.component';\nimport { CaucaManagementGroupComponent } from './cauca-management-group/cauca-management-group.component';\nimport { CaucaManagementUserComponent } from './cauca-management-user/cauca-management-user.component';\n\n@NgModule({\n declarations: [\n CaucaManagementComponent,\n CaucaManagementGroupComponent,\n CaucaManagementUserComponent\n ],\n imports: [\n BrowserModule,\n DxCheckBoxModule,\n DxListModule,\n DxTagBoxModule,\n CaucaCoreModule,\n CaucaDevextremeModule,\n ],\n exports: [\n CaucaManagementComponent,\n CaucaManagementUserComponent,\n CaucaManagementGroupComponent,\n ]\n})\nexport class CaucaManagementModule { }\n","export class UserGroupModel {\n idUserGroup = '';\n idGroup = '';\n idUser = '';\n\n constructor() { }\n}\n","export class UserPermissionModel {\n idUserPermission = '';\n isAllowed = false;\n idUser = '';\n idModulePermission = '';\n\n constructor() { }\n}\n","import {GroupPermissionModel} from './group-permission-model';\nimport {UserGroupModel} from './user-group-model';\n\nexport class GroupModel {\n public id: string;\n public name = '';\n public users: UserGroupModel[] = [];\n public permissions: GroupPermissionModel[] = [];\n\n constructor() { }\n}\n","export class GroupPermissionModel {\n idGroupPermission = '';\n isAllowed = false;\n idGroup = '';\n idModulePermission = '';\n\n constructor() { }\n}\n"],"names":["Injectable","i0.ɵɵelementStart","i0.ɵɵtext","i0.ɵɵelementEnd","i0.ɵɵadvance","i0.ɵɵtextInterpolate","Component","i0.ɵɵlistener","i0.ɵɵproperty","i0.ɵɵtemplate","map","i0.ɵɵelement","Input","BrowserModule","DxCheckBoxModule","DxListModule","DxTagBoxModule","CaucaCoreModule","CaucaDevextremeModule","NgModule"],"mappings":"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"}
1
+ {"version":3,"file":"cauca-911-management.umd.js","sources":["../../projects/cauca-management/src/lib/cauca-management.service.ts","../../projects/cauca-management/src/lib/cauca-management.component.ts","../esm2015/projects/cauca-management/src/lib/shared/services/management-group.service.ts","../esm2015/projects/cauca-management/src/lib/shared/services/management-user.service.ts","../esm2015/projects/cauca-management/src/lib/shared/services/management-permission.service.ts","../projects/cauca-management/src/lib/cauca-management-group/cauca-management-group.component.ts","../esm2015/projects/cauca-management/src/lib/shared/models/user-model.ts","../projects/cauca-management/src/lib/cauca-management-user/cauca-management-user.component.ts","../../projects/cauca-management/src/lib/cauca-management.module.ts","../esm2015/projects/cauca-management/src/lib/shared/models/user-group-model.ts","../esm2015/projects/cauca-management/src/lib/shared/models/user-permission-model.ts","../esm2015/projects/cauca-management/src/lib/shared/models/group-model.ts","../esm2015/projects/cauca-management/src/lib/shared/models/group-permission-model.ts","../../../projects/cauca-management/src/public-api.ts","../../../projects/cauca-management/src/cauca-911-management.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CaucaManagementService {\r\n\r\n constructor() { }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cauca-management',\r\n templateUrl: './cauca-management.component.html',\r\n styles: []\r\n})\r\nexport class CaucaManagementComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n public ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\r\nimport { GroupModel } from '../models/group-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ManagementGroupService {\r\n private config: Configuration;\r\n\r\n constructor(\r\n coreService: CaucaCoreService,\r\n private http: HttpClient,\r\n ) {\r\n this.config = coreService.getConfig();\r\n }\r\n\r\n public getAll(): Observable<GroupModel[]> {\r\n return this.http.get<GroupModel[]>(`${this.config.apiUrl}GroupManagement`);\r\n }\r\n\r\n public get(idGroup: string): Observable<GroupModel> {\r\n return this.http.get<GroupModel>(`${this.config.apiUrl}GroupManagement/${idGroup}`);\r\n }\r\n\r\n public save(group: GroupModel): Observable<any> {\r\n return this.http.post(`${this.config.apiUrl}GroupManagement`, group);\r\n }\r\n\r\n public delete(idGroup: string): Observable<any> {\r\n return this.http.delete(`${this.config.apiUrl}GroupManagement/${idGroup}`);\r\n }\r\n\r\n public hasExistingGroupName(group: GroupModel): Observable<boolean> {\r\n return this.http.post<boolean>(`${this.config.apiUrl}GroupManagement/GroupNameAlreadyExist`, group);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\nimport { UserGroupModel } from '../models/user-group-model';\nimport { UserPermissionModel } from '../models/user-permission-model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ManagementUserService {\n private config: Configuration;\n\n constructor(\n coreService: CaucaCoreService,\n protected http: HttpClient,\n ) {\n this.config = coreService.getConfig();\n }\n\n public getAll<TUser>(): Observable<TUser[]> {\n return this.http.get<TUser[]>(`${this.config.apiUrl}UserManagement`);\n }\n\n public get<TUser>(idUser: string): Observable<TUser> {\n return this.http.get<TUser>(`${this.config.apiUrl}UserManagement/${idUser}`);\n }\n\n public getGroup(idUser: string): Observable<any> {\n return this.http.get(`${this.config.apiUrl}UserManagement/${idUser}/groups`);\n }\n\n public addGroup(userGroup: UserGroupModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement/group`, userGroup);\n }\n\n public deleteGroup(idUserGroup: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/groups/${idUserGroup}`);\n }\n\n public addPermission(userPermission: UserPermissionModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement/permission`, userPermission);\n }\n\n public deletePermission(idUserPermission: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/groups/${idUserPermission}`);\n }\n\n public save<TUser>(user: TUser): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement`, user);\n }\n\n public delete(idUser: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/${idUser}`);\n }\n\n public hasExistingUserName<TUser>(user: TUser): Observable<boolean> {\n return this.http.post<boolean>(`${this.config.apiUrl}UserManagement/UserNameAlreadyExist`, user);\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\r\nimport { PermissionModel } from '../models/permission-model';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ManagementPermissionService {\r\n private config: Configuration;\r\n\r\n constructor(\r\n coreService: CaucaCoreService,\r\n private http: HttpClient,\r\n ) {\r\n this.config = coreService.getConfig();\r\n }\r\n\r\n public getAll(): Observable<PermissionModel[]> {\r\n return this.http.get<PermissionModel[]>(`${this.config.apiUrl}PermissionManagement`);\r\n }\r\n\r\n public get(idPermission: string): Observable<PermissionModel> {\r\n return this.http.get<PermissionModel>(`${this.config.apiUrl}PermissionManagement/${idPermission}`);\r\n }\r\n\r\n public save(permission: PermissionModel): Observable<any> {\r\n return this.http.post(`${this.config.apiUrl}PermissionManagement`, permission);\r\n }\r\n\r\n public delete(idPermission: string): Observable<any> {\r\n return this.http.delete(`${this.config.apiUrl}PermissionManagement/${idPermission}`);\r\n }\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { BreakpointObserver } from '@angular/cdk/layout';\r\nimport { map } from 'rxjs/operators';\r\nimport { UserModel } from '../shared/models/user-model';\r\nimport { UserGroupModel } from '../shared/models/user-group-model';\r\nimport { GroupModel } from '../shared/models/group-model';\r\nimport { GroupPermissionModel } from '../shared/models/group-permission-model';\r\nimport { ManagementGroupService } from '../shared/services/management-group.service';\r\nimport { ManagementUserService } from '../shared/services/management-user.service';\r\nimport { PermissionModel } from '../shared/models/permission-model';\r\nimport { ManagementPermissionService } from '../shared/services/management-permission.service';\r\n\r\n@Component({\r\n selector: 'cauca-management-group',\r\n templateUrl: './cauca-management-group.component.html',\r\n styleUrls: ['./cauca-management-group.component.scss']\r\n})\r\nexport class CaucaManagementGroupComponent implements OnInit {\r\n private groupUsers: any;\r\n\r\n @Input()\r\n public showPrintButton: boolean = true;\r\n @Input()\r\n public hoverStatePermission = true;\r\n public groups: GroupModel[] = [];\r\n public users: UserModel[] = [];\r\n public permissions: PermissionModel[] = [];\r\n public userFullName: any = {};\r\n public showColumn = true;\r\n public showColumnXS = true;\r\n public translations: any = [];\r\n\r\n constructor(\r\n private managementGroupService: ManagementGroupService,\r\n private managementUserService: ManagementUserService,\r\n private managementPermissionService: ManagementPermissionService,\r\n breakpointObserver: BreakpointObserver,\r\n ) {\r\n breakpointObserver.observe(['(max-width: 1000px)']).subscribe(result => {\r\n this.showColumn = !result.matches;\r\n });\r\n breakpointObserver.observe(['(max-width: 600px)']).subscribe(result => {\r\n this.showColumnXS = !result.matches;\r\n });\r\n }\r\n\r\n public ngOnInit(): void {\r\n this.managementUserService.getAll<UserModel>().subscribe(data => {\r\n this.users = data;\r\n this.users.forEach(user => {\r\n if (user.isActive) {\r\n if (user.firstName !== '' && user.lastName !== '') {\r\n this.userFullName[user.id] = `${user.firstName} ${user.lastName}`;\r\n }\r\n }\r\n });\r\n });\r\n this.managementPermissionService.getAll().subscribe(permissions => {\r\n const permissionIndex = permissions.findIndex(c => {\r\n return c.tag === 'CanAccessPermissions';\r\n });\r\n if (permissionIndex !== -1) {\r\n permissions.splice(permissionIndex, 1);\r\n }\r\n permissions.sort((a: PermissionModel, b: PermissionModel) => {\r\n if (a.name < b.name) { return -1; }\r\n if (a.name > b.name) { return 1; }\r\n return 0;\r\n });\r\n this.permissions = permissions;\r\n });\r\n this.getGroups();\r\n }\r\n\r\n public fullName(data): string {\r\n if (!data) {\r\n return '';\r\n }\r\n\r\n return `${data.firstName} ${data.lastName}`;\r\n }\r\n\r\n public getGroupUser(field, e): void {\r\n const users: string[] = [];\r\n if (this.groupUsers) {\r\n this.groupUsers.forEach( user => {\r\n users.push(user.idUser);\r\n });\r\n }\r\n e.component.option('value', users);\r\n }\r\n\r\n public setGroupUser(field, e): void {\r\n const groupUser: UserGroupModel[] = [];\r\n\r\n e.value.forEach(idUser => {\r\n const groupIndex = (field.data.users || []).findIndex(g => g.idUser === idUser);\r\n\r\n if (groupIndex === -1) {\r\n groupUser.push({ idUser, } as UserGroupModel);\r\n } else {\r\n groupUser.push(field.data.users[groupIndex]);\r\n }\r\n });\r\n\r\n field.setValue(JSON.parse(JSON.stringify(groupUser)));\r\n }\r\n\r\n public setGroupPermission(field, e): void {\r\n const groupUser: UserGroupModel[] = [];\r\n\r\n e.value.forEach(idUser => {\r\n groupUser.push({\r\n idUser,\r\n } as UserGroupModel);\r\n });\r\n\r\n field.setValue(JSON.parse(JSON.stringify(groupUser)));\r\n }\r\n\r\n public getPermissionStatus(field, permission, e): void {\r\n const groupPermission = (field.value || []).find(p => p.idModulePermission === permission.id);\r\n\r\n if (groupPermission) {\r\n e.component.option('value', groupPermission.isAllowed);\r\n } else {\r\n e.component.option('value', undefined);\r\n }\r\n }\r\n\r\n public checkBoxToggled(field, permission, e): void {\r\n if (e.component.skipOnValueChanged) {\r\n e.component.skipOnValueChanged = false;\r\n return;\r\n }\r\n if (e.component.setUndefinedNextTime) {\r\n e.component.setUndefinedNextTime = false;\r\n e.component.skipOnValueChanged = true;\r\n e.component.option('value', undefined);\r\n this.setPermissionStatus(field, permission, undefined);\r\n return;\r\n }\r\n if (e.value === false) {\r\n e.component.setUndefinedNextTime = true;\r\n }\r\n\r\n this.setPermissionStatus(field, permission, e.value);\r\n }\r\n\r\n public onRowInserted(e): void {\r\n this.saveGroup(e.data as GroupModel);\r\n }\r\n\r\n public onRowUpdated(e): void {\r\n this.saveGroup(e.data as GroupModel);\r\n }\r\n\r\n public onRowRemoved(e): void {\r\n const group = (e.data as GroupModel);\r\n this.managementGroupService.delete(group.id).subscribe(data => {\r\n this.getGroups();\r\n });\r\n }\r\n\r\n public calculateUsersCellValue = (e): string => {\r\n const users = (e.users ? e.users as UserGroupModel[] : []);\r\n let usersNames: any[] = [];\r\n users.forEach(user => {\r\n const userGroup = this.users.filter(u => u.id === user.idUser);\r\n if (userGroup && userGroup[0]) {\r\n usersNames.push(userGroup[0].firstName + ' ' + userGroup[0].lastName);\r\n }\r\n });\r\n usersNames = usersNames.sort((one, two) => (one < two ? -1 : 1));\r\n return usersNames.join(', ');\r\n }\r\n\r\n public onEditingStart(e: any): void {\r\n this.groupUsers = e.data.users;\r\n }\r\n\r\n public onInitNewRow(): void {\r\n this.groupUsers = [];\r\n }\r\n\r\n public groupNameAlreadyUsedValidation = (e): Promise<boolean> => {\r\n return this.managementGroupService.hasExistingGroupName(e.data).pipe(\r\n map((exist: boolean) => {\r\n return !exist;\r\n })\r\n ).toPromise();\r\n }\r\n\r\n private setPermissionStatus(field: any, permission, value): void {\r\n const groupPermissions = field.value || [];\r\n const groupIndex = groupPermissions.findIndex(p => p.idModulePermission === permission.id);\r\n\r\n if (groupIndex > -1) {\r\n groupPermissions[groupIndex].isAllowed = value;\r\n } else {\r\n groupPermissions.push({\r\n idModulePermission: permission.id,\r\n isAllowed: value,\r\n } as GroupPermissionModel);\r\n }\r\n\r\n field.setValue(JSON.parse(JSON.stringify(groupPermissions)));\r\n }\r\n\r\n private saveGroup(group: GroupModel): void {\r\n this.removePermissionUndefined(group);\r\n if (group.users) {\r\n group.users.forEach((userGroup: UserGroupModel) => {\r\n userGroup.idGroup = group.id;\r\n });\r\n }\r\n if (group.permissions) {\r\n group.permissions.forEach((groupPermission: GroupPermissionModel) => {\r\n groupPermission.idGroup = group.id;\r\n });\r\n }\r\n this.managementGroupService.save(group).subscribe(() => {\r\n this.getGroups();\r\n });\r\n this.groupUsers = [];\r\n }\r\n\r\n private removePermissionUndefined(group: GroupModel): void {\r\n group.permissions = group.permissions.filter((permission: GroupPermissionModel) => permission.isAllowed !== undefined);\r\n }\r\n\r\n private getGroups(): void {\r\n this.managementGroupService.getAll().subscribe(data => this.groups = data);\r\n }\r\n}\r\n","import { UserGroupModel } from './user-group-model';\r\nimport { UserPermissionModel } from './user-permission-model';\r\n\r\nexport class UserModel {\r\n public id: string;\r\n public userName = '';\r\n public firstName = '';\r\n public lastName = '';\r\n public password = '';\r\n public email = '';\r\n public isActive = true;\r\n public groups: UserGroupModel[];\r\n public permissions: UserPermissionModel[];\r\n public twoFactorAuthenticatorEnabled = false;\r\n\r\n constructor() { }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { UserModel } from '../shared/models/user-model';\r\nimport { ManagementUserService } from '../shared/services/management-user.service';\r\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'cauca-management-user',\r\n templateUrl: './cauca-management-user.component.html',\r\n styleUrls: ['./cauca-management-user.component.scss']\r\n})\r\nexport class CaucaManagementUserComponent implements OnInit {\r\n public users: UserModel[] = [\r\n new UserModel()\r\n ];\r\n public showColumnXS = true;\r\n\r\n constructor(\r\n private managementUserService: ManagementUserService,\r\n breakpointObserver: BreakpointObserver,\r\n ) {\r\n breakpointObserver.observe(['(max-width: 600px)']).subscribe((result: BreakpointState) => {\r\n this.showColumnXS = !result.matches;\r\n });\r\n }\r\n\r\n public ngOnInit(): void {\r\n this.getUsers();\r\n }\r\n\r\n public onRowInserted(e: any): void {\r\n this.saveGroup(e.data as UserModel);\r\n }\r\n\r\n public onRowUpdated(e: any): void {\r\n this.saveGroup(e.key as UserModel);\r\n }\r\n\r\n public onRowRemoved(e: any): void {\r\n const user = (e.data as UserModel);\r\n this.managementUserService.delete(user.id).subscribe((data: any) => {\r\n this.getUsers();\r\n });\r\n }\r\n\r\n public userNameAlreadyUsedValidation = (e): Promise<boolean> => {\r\n return this.managementUserService.hasExistingUserName(e.data).pipe(\r\n map((exist: boolean) => {\r\n return !exist;\r\n })\r\n ).toPromise();\r\n }\r\n\r\n private saveGroup(user: UserModel): void {\r\n this.managementUserService.save<UserModel>(user).subscribe(() => {\r\n this.getUsers();\r\n });\r\n }\r\n\r\n private getUsers(): void {\r\n this.managementUserService.getAll<UserModel>().subscribe((data: any) => this.users = data);\r\n }\r\n}","import { NgModule } from '@angular/core';\r\nimport { DxCheckBoxModule } from 'devextreme-angular/ui/check-box';\r\nimport { DxListModule } from 'devextreme-angular/ui/list';\r\nimport { DxTagBoxModule } from 'devextreme-angular/ui/tag-box';\r\nimport { CaucaCoreForChildModule } from '@cauca-911/core';\r\nimport { CaucaDevextremeModule } from '@cauca-911/devextreme';\r\nimport { CaucaManagementComponent } from './cauca-management.component';\r\nimport { CaucaManagementGroupComponent } from './cauca-management-group/cauca-management-group.component';\r\nimport { CaucaManagementUserComponent } from './cauca-management-user/cauca-management-user.component';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n declarations: [\r\n CaucaManagementComponent,\r\n CaucaManagementGroupComponent,\r\n CaucaManagementUserComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n DxCheckBoxModule,\r\n DxListModule,\r\n DxTagBoxModule,\r\n CaucaCoreForChildModule,\r\n CaucaDevextremeModule,\r\n ],\r\n exports: [\r\n CaucaManagementComponent,\r\n CaucaManagementUserComponent,\r\n CaucaManagementGroupComponent,\r\n ]\r\n})\r\nexport class CaucaManagementModule { }\r\n","export class UserGroupModel {\r\n public idUserGroup = '';\r\n public idGroup = '';\r\n public idUser = '';\r\n\r\n constructor() { }\r\n}\r\n","export class UserPermissionModel {\r\n public idUserPermission = '';\r\n public isAllowed = false;\r\n public idUser = '';\r\n public idModulePermission = '';\r\n\r\n constructor() { }\r\n}\r\n","import {GroupPermissionModel} from './group-permission-model';\r\nimport {UserGroupModel} from './user-group-model';\r\n\r\nexport class GroupModel {\r\n public id: string;\r\n public name = '';\r\n public users: UserGroupModel[] = [];\r\n public permissions: GroupPermissionModel[] = [];\r\n\r\n constructor() { }\r\n}\r\n","export class GroupPermissionModel {\r\n public idGroupPermission = '';\r\n public isAllowed = false;\r\n public idGroup = '';\r\n public idModulePermission = '';\r\n\r\n constructor() { }\r\n}\r\n","/*\r\n * Public API Surface of cauca-management\r\n */\r\n\r\nexport * from './lib/cauca-management.service';\r\nexport * from './lib/cauca-management.component';\r\nexport * from './lib/cauca-management.module';\r\nexport * from './lib/cauca-management-group/cauca-management-group.component';\r\nexport * from './lib/cauca-management-user/cauca-management-user.component';\r\n\r\nexport { ManagementUserService } from './lib/shared/services/management-user.service';\r\nexport { ManagementGroupService } from './lib/shared/services/management-group.service';\r\nexport { UserModel } from './lib/shared/models/user-model';\r\nexport { UserGroupModel } from './lib/shared/models/user-group-model';\r\nexport { UserPermissionModel } from './lib/shared/models/user-permission-model';\r\nexport { GroupModel } from './lib/shared/models/group-model';\r\nexport { GroupPermissionModel } from './lib/shared/models/group-permission-model';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {ManagementPermissionService as ɵa} from './lib/shared/services/management-permission.service';"],"names":["Injectable","Component","CaucaCoreService","HttpClient","map","BreakpointObserver","Input","NgModule","CommonModule","DxCheckBoxModule","DxListModule","DxTagBoxModule","CaucaCoreForChildModule","CaucaDevextremeModule"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@ngx-translate/core"),require("@angular/platform-browser"),require("devextreme-angular"),require("@cauca-911/core"),require("@cauca-911/devextreme"),require("rxjs/operators"),require("@angular/common/http"),require("@angular/cdk/layout"),require("devextreme-angular/ui/nested"),require("devextreme-angular/core")):"function"==typeof define&&define.amd?define("@cauca-911/management",["exports","@angular/core","@ngx-translate/core","@angular/platform-browser","devextreme-angular","@cauca-911/core","@cauca-911/devextreme","rxjs/operators","@angular/common/http","@angular/cdk/layout","devextreme-angular/ui/nested","devextreme-angular/core"],t):t(((e=e||self)["cauca-911"]=e["cauca-911"]||{},e["cauca-911"].management={}),e.ng.core,e.core$1,e.ng.platformBrowser,e.devextremeAngular,e.core$2,e.devextreme,e.rxjs.operators,e.ng.common.http,e.ng.cdk.layout,e.nested,e.core$3)}(this,(function(e,t,n,i,o,r,a,s,p,u,l,c){"use strict";var d=function(){function e(){}return e.ɵfac=function(t){return new(t||e)},e.ɵprov=t["ɵɵdefineInjectable"]({token:e,factory:e.ɵfac,providedIn:"root"}),e}(),m=function(){function e(){}return e.prototype.ngOnInit=function(){},e.ɵfac=function(t){return new(t||e)},e.ɵcmp=t["ɵɵdefineComponent"]({type:e,selectors:[["cauca-management"]],decls:3,vars:3,template:function(e,n){1&e&&(t["ɵɵelementStart"](0,"div"),t["ɵɵtext"](1),t["ɵɵpipe"](2,"translate"),t["ɵɵelementEnd"]()),2&e&&(t["ɵɵadvance"](1),t["ɵɵtextInterpolate"](t["ɵɵpipeBind1"](2,1,"core.noGenericComponentOnThisLibrary")))},pipes:[n.TranslatePipe],encapsulation:2}),e}(),f=function(){function e(e,t){this.http=t,this.config=e.getConfig()}return e.prototype.getAll=function(){return this.http.get(this.config.apiUrl+"GroupManagement")},e.prototype.get=function(e){return this.http.get(this.config.apiUrl+"GroupManagement/"+e)},e.prototype.save=function(e){return this.http.post(this.config.apiUrl+"GroupManagement",e)},e.prototype.delete=function(e){return this.http.delete(this.config.apiUrl+"GroupManagement/"+e)},e.prototype.hasExistingGroupName=function(e){return this.http.post(this.config.apiUrl+"GroupManagement/GroupNameAlreadyExist",e)},e.ɵfac=function(n){return new(n||e)(t["ɵɵinject"](r.CaucaCoreService),t["ɵɵinject"](p.HttpClient))},e.ɵprov=t["ɵɵdefineInjectable"]({token:e,factory:e.ɵfac,providedIn:"root"}),e}(),g=function(){function e(e,t){this.http=t,this.config=e.getConfig()}return e.prototype.getAll=function(){return this.http.get(this.config.apiUrl+"UserManagement")},e.prototype.get=function(e){return this.http.get(this.config.apiUrl+"UserManagement/"+e)},e.prototype.getGroup=function(e){return this.http.get(this.config.apiUrl+"UserManagement/"+e+"/groups")},e.prototype.addGroup=function(e){return this.http.post(this.config.apiUrl+"UserManagement/group",e)},e.prototype.deleteGroup=function(e){return this.http.delete(this.config.apiUrl+"UserManagement/groups/"+e)},e.prototype.addPermission=function(e){return this.http.post(this.config.apiUrl+"UserManagement/permission",e)},e.prototype.deletePermission=function(e){return this.http.delete(this.config.apiUrl+"UserManagement/groups/"+e)},e.prototype.save=function(e){return this.http.post(this.config.apiUrl+"UserManagement",e)},e.prototype.delete=function(e){return this.http.delete(this.config.apiUrl+"UserManagement/"+e)},e.prototype.hasExistingUserName=function(e){return this.http.post(this.config.apiUrl+"UserManagement/UserNameAlreadyExist",e)},e.ɵfac=function(n){return new(n||e)(t["ɵɵinject"](r.CaucaCoreService),t["ɵɵinject"](p.HttpClient))},e.ɵprov=t["ɵɵdefineInjectable"]({token:e,factory:e.ɵfac,providedIn:"root"}),e}(),h=function(){function e(e,t){this.http=t,this.config=e.getConfig()}return e.prototype.getAll=function(){return this.http.get(this.config.apiUrl+"PermissionManagement")},e.prototype.get=function(e){return this.http.get(this.config.apiUrl+"PermissionManagement/"+e)},e.prototype.save=function(e){return this.http.post(this.config.apiUrl+"PermissionManagement",e)},e.prototype.delete=function(e){return this.http.delete(this.config.apiUrl+"PermissionManagement/"+e)},e.ɵfac=function(n){return new(n||e)(t["ɵɵinject"](r.CaucaCoreService),t["ɵɵinject"](p.HttpClient))},e.ɵprov=t["ɵɵdefineInjectable"]({token:e,factory:e.ɵfac,providedIn:"root"}),e}();function v(e,n){if(1&e){var i=t["ɵɵgetCurrentView"]();t["ɵɵelementStart"](0,"div"),t["ɵɵelementStart"](1,"dx-tag-box",13),t["ɵɵlistener"]("onInitialized",(function(e){t["ɵɵrestoreView"](i);var o=n.$implicit;return t["ɵɵnextContext"]().getGroupUser(o,e)}))("onValueChanged",(function(e){t["ɵɵrestoreView"](i);var o=n.$implicit;return t["ɵɵnextContext"]().setGroupUser(o,e)})),t["ɵɵelementEnd"](),t["ɵɵelementEnd"]()}if(2&e){var o=t["ɵɵnextContext"]();t["ɵɵadvance"](1),t["ɵɵproperty"]("displayExpr",o.fullName)("dataSource",o.users)("searchEnabled",!0)("searchExpr",o.fullName)}}function x(e,n){if(1&e){var i=t["ɵɵgetCurrentView"]();t["ɵɵelementStart"](0,"div"),t["ɵɵelementStart"](1,"dx-check-box",15),t["ɵɵlistener"]("onInitialized",(function(e){t["ɵɵrestoreView"](i);var o=n.$implicit,r=t["ɵɵnextContext"]().$implicit;return t["ɵɵnextContext"]().getPermissionStatus(r,o,e)}))("onValueChanged",(function(e){t["ɵɵrestoreView"](i);var o=n.$implicit,r=t["ɵɵnextContext"]().$implicit;return t["ɵɵnextContext"]().checkBoxToggled(r,o,e)})),t["ɵɵelementEnd"](),t["ɵɵelementEnd"]()}if(2&e){var o=n.$implicit;t["ɵɵadvance"](1),t["ɵɵproperty"]("text",o.name)}}var y=function(){return["name","tag"]};function w(e,n){if(1&e&&(t["ɵɵelementStart"](0,"div"),t["ɵɵelementStart"](1,"dx-list",14),t["ɵɵtemplate"](2,x,2,1,"div",12),t["ɵɵelementEnd"](),t["ɵɵelementEnd"]()),2&e){var i=t["ɵɵnextContext"]();t["ɵɵadvance"](1),t["ɵɵproperty"]("dataSource",i.permissions)("searchEnabled",!0)("searchExpr",t["ɵɵpureFunction0"](5,y))("hoverStateEnabled",i.hoverStatePermission),t["ɵɵadvance"](1),t["ɵɵproperty"]("dxTemplateOf","rowTemplate")}}var C=function(){function e(e,t,n,i){var o=this;this.managementGroupService=e,this.managementUserService=t,this.managementPermissionService=n,this.showPrintButton=!0,this.hoverStatePermission=!0,this.groups=[],this.users=[],this.permissions=[],this.userFullName={},this.showColumn=!0,this.showColumnXS=!0,this.translations=[],this.calculateUsersCellValue=function(e){var t=e.users?e.users:[],n=[];return t.forEach((function(e){var t=o.users.filter((function(t){return t.id===e.idUser}));t&&t[0]&&n.push(t[0].firstName+" "+t[0].lastName)})),(n=n.sort((function(e,t){return e<t?-1:1}))).join(", ")},this.groupNameAlreadyUsedValidation=function(e){return o.managementGroupService.hasExistingGroupName(e.data).pipe(s.map((function(e){return!e}))).toPromise()},i.observe(["(max-width: 1000px)"]).subscribe((function(e){o.showColumn=!e.matches})),i.observe(["(max-width: 600px)"]).subscribe((function(e){o.showColumnXS=!e.matches}))}return e.prototype.ngOnInit=function(){var e=this;this.managementUserService.getAll().subscribe((function(t){e.users=t,e.users.forEach((function(t){t.isActive&&""!==t.firstName&&""!==t.lastName&&(e.userFullName[t.id]=t.firstName+" "+t.lastName)}))})),this.managementPermissionService.getAll().subscribe((function(t){var n=t.findIndex((function(e){return"CanAccessPermissions"===e.tag}));-1!==n&&t.splice(n,1),t.sort((function(e,t){return e.name<t.name?-1:e.name>t.name?1:0})),e.permissions=t})),this.getGroups()},e.prototype.fullName=function(e){return e?e.firstName+" "+e.lastName:""},e.prototype.getGroupUser=function(e,t){var n=[];this.groupUsers&&this.groupUsers.forEach((function(e){n.push(e.idUser)})),t.component.option("value",n)},e.prototype.setGroupUser=function(e,t){var n=[];t.value.forEach((function(t){var i=(e.data.users||[]).findIndex((function(e){return e.idUser===t}));-1===i?n.push({idUser:t}):n.push(e.data.users[i])})),e.setValue(JSON.parse(JSON.stringify(n)))},e.prototype.setGroupPermission=function(e,t){var n=[];t.value.forEach((function(e){n.push({idUser:e})})),e.setValue(JSON.parse(JSON.stringify(n)))},e.prototype.getPermissionStatus=function(e,t,n){var i=(e.value||[]).find((function(e){return e.idModulePermission===t.id}));i?n.component.option("value",i.isAllowed):n.component.option("value",void 0)},e.prototype.checkBoxToggled=function(e,t,n){if(n.component.skipOnValueChanged)n.component.skipOnValueChanged=!1;else{if(n.component.setUndefinedNextTime)return n.component.setUndefinedNextTime=!1,n.component.skipOnValueChanged=!0,n.component.option("value",void 0),void this.setPermissionStatus(e,t,void 0);!1===n.value&&(n.component.setUndefinedNextTime=!0),this.setPermissionStatus(e,t,n.value)}},e.prototype.onRowInserted=function(e){this.saveGroup(e.data)},e.prototype.onRowUpdated=function(e){this.saveGroup(e.data)},e.prototype.onRowRemoved=function(e){var t=this,n=e.data;this.managementGroupService.delete(n.id).subscribe((function(e){t.getGroups()}))},e.prototype.onEditingStart=function(e){this.groupUsers=e.data.users},e.prototype.onInitNewRow=function(){this.groupUsers=[]},e.prototype.setPermissionStatus=function(e,t,n){var i=e.value||[],o=i.findIndex((function(e){return e.idModulePermission===t.id}));o>-1?i[o].isAllowed=n:i.push({idModulePermission:t.id,isAllowed:n}),e.setValue(JSON.parse(JSON.stringify(i)))},e.prototype.saveGroup=function(e){var t=this;this.removePermissionUndefined(e),e.users&&e.users.forEach((function(t){t.idGroup=e.id})),e.permissions&&e.permissions.forEach((function(t){t.idGroup=e.id})),this.managementGroupService.save(e).subscribe((function(){t.getGroups()})),this.groupUsers=[]},e.prototype.removePermissionUndefined=function(e){e.permissions=e.permissions.filter((function(e){return void 0!==e.isAllowed}))},e.prototype.getGroups=function(){var e=this;this.managementGroupService.getAll().subscribe((function(t){return e.groups=t}))},e.ɵfac=function(n){return new(n||e)(t["ɵɵdirectiveInject"](f),t["ɵɵdirectiveInject"](g),t["ɵɵdirectiveInject"](h),t["ɵɵdirectiveInject"](u.BreakpointObserver))},e.ɵcmp=t["ɵɵdefineComponent"]({type:e,selectors:[["cauca-management-group"]],inputs:{showPrintButton:"showPrintButton",hoverStatePermission:"hoverStatePermission"},decls:19,vars:31,consts:[["keyExpr","id",3,"allowPrint","dataSource","onRowInserted","onInitNewRow","onRowUpdated","onEditingStart","onRowRemoved"],["dataField","name",3,"caption"],["type","async",3,"message","validationCallback"],["dataField","users","editCellTemplate","usersEditTemplate",3,"caption","calculateCellValue"],["dataField","permissions","editCellTemplate","permissionsEditTemplate",3,"caption","visible"],[3,"enabled"],["mode","popup",3,"allowAdding","allowUpdating","allowDeleting","useIcons"],[3,"showTitle","title","fullScreen"],["colCount","1",3,"labelLocation"],["dataField","name",3,"isRequired"],["dataField","users"],["dataField","permissions"],[4,"dxTemplate","dxTemplateOf"],["valueExpr","id",3,"displayExpr","dataSource","searchEnabled","searchExpr","onInitialized","onValueChanged"],["itemTemplate","rowTemplate",3,"dataSource","searchEnabled","searchExpr","hoverStateEnabled"],[3,"text","onInitialized","onValueChanged"]],template:function(e,n){1&e&&(t["ɵɵelementStart"](0,"cauca-dx-data-grid",0),t["ɵɵlistener"]("onRowInserted",(function(e){return n.onRowInserted(e)}))("onInitNewRow",(function(){return n.onInitNewRow()}))("onRowUpdated",(function(e){return n.onRowUpdated(e)}))("onEditingStart",(function(e){return n.onEditingStart(e)}))("onRowRemoved",(function(e){return n.onRowRemoved(e)})),t["ɵɵelementStart"](1,"dxi-column",1),t["ɵɵpipe"](2,"translate"),t["ɵɵelement"](3,"dxi-validation-rule",2),t["ɵɵpipe"](4,"translate"),t["ɵɵelementEnd"](),t["ɵɵelement"](5,"dxi-column",3),t["ɵɵpipe"](6,"translate"),t["ɵɵelement"](7,"dxi-column",4),t["ɵɵpipe"](8,"translate"),t["ɵɵelement"](9,"dxo-export",5),t["ɵɵelementStart"](10,"dxo-editing",6),t["ɵɵelement"](11,"dxo-popup",7),t["ɵɵpipe"](12,"translate"),t["ɵɵelementStart"](13,"dxo-form",8),t["ɵɵelement"](14,"dxi-item",9),t["ɵɵelement"](15,"dxi-item",10),t["ɵɵelement"](16,"dxi-item",11),t["ɵɵelementEnd"](),t["ɵɵelementEnd"](),t["ɵɵtemplate"](17,v,2,4,"div",12),t["ɵɵtemplate"](18,w,3,6,"div",12),t["ɵɵelementEnd"]()),2&e&&(t["ɵɵproperty"]("allowPrint",n.showPrintButton)("dataSource",n.groups),t["ɵɵadvance"](1),t["ɵɵproperty"]("caption",t["ɵɵpipeBind1"](2,21,"management.name")),t["ɵɵadvance"](2),t["ɵɵproperty"]("message",t["ɵɵpipeBind1"](4,23,"management.groupNameAlreadyUsed"))("validationCallback",n.groupNameAlreadyUsedValidation),t["ɵɵadvance"](2),t["ɵɵproperty"]("caption",t["ɵɵpipeBind1"](6,25,"management.users"))("calculateCellValue",n.calculateUsersCellValue),t["ɵɵadvance"](2),t["ɵɵproperty"]("caption",t["ɵɵpipeBind1"](8,27,"management.permissions"))("visible",!1),t["ɵɵadvance"](2),t["ɵɵproperty"]("enabled",!1),t["ɵɵadvance"](1),t["ɵɵproperty"]("allowAdding",!0)("allowUpdating",!0)("allowDeleting",!0)("useIcons",!0),t["ɵɵadvance"](1),t["ɵɵproperty"]("showTitle",!0)("title",t["ɵɵpipeBind1"](12,29,"management.group"))("fullScreen",!n.showColumn),t["ɵɵadvance"](2),t["ɵɵproperty"]("labelLocation",n.showColumnXS?"left":"top"),t["ɵɵadvance"](1),t["ɵɵproperty"]("isRequired",!0),t["ɵɵadvance"](3),t["ɵɵproperty"]("dxTemplateOf","usersEditTemplate"),t["ɵɵadvance"](1),t["ɵɵproperty"]("dxTemplateOf","permissionsEditTemplate"))},directives:[a.CaucaDataGridComponent,l.DxiColumnComponent,l.DxiValidationRuleComponent,l.DxoExportComponent,l.DxoEditingComponent,l.DxoPopupComponent,l.DxoFormComponent,l.DxiItemComponent,c.DxTemplateDirective,o.DxTagBoxComponent,o.DxListComponent,o.DxCheckBoxComponent],pipes:[n.TranslatePipe],styles:[""]}),e}(),U=function(){this.userName="",this.firstName="",this.lastName="",this.password="",this.email="",this.isActive=!0},S=function(){function e(e,t){var n=this;this.managementUserService=e,this.users=[new U],this.showColumnXS=!0,this.userNameAlreadyUsedValidation=function(e){return n.managementUserService.hasExistingUserName(e.data).pipe(s.map((function(e){return!e}))).toPromise()},t.observe(["(max-width: 600px)"]).subscribe((function(e){n.showColumnXS=!e.matches}))}return e.prototype.ngOnInit=function(){this.getUsers()},e.prototype.onRowInserted=function(e){this.saveGroup(e.data)},e.prototype.onRowUpdated=function(e){this.saveGroup(e.key)},e.prototype.onRowRemoved=function(e){var t=this,n=e.data;this.managementUserService.delete(n.id).subscribe((function(e){t.getUsers()}))},e.prototype.saveGroup=function(e){var t=this;this.managementUserService.save(e).subscribe((function(){t.getUsers()}))},e.prototype.getUsers=function(){var e=this;this.managementUserService.getAll().subscribe((function(t){return e.users=t}))},e.ɵfac=function(n){return new(n||e)(t["ɵɵdirectiveInject"](g),t["ɵɵdirectiveInject"](u.BreakpointObserver))},e.ɵcmp=t["ɵɵdefineComponent"]({type:e,selectors:[["cauca-management-user"]],decls:22,vars:31,consts:[["keyExpr","id",3,"dataSource","onRowInserted","onRowUpdated","onRowRemoved"],["dataField","userName",3,"caption"],["type","async",3,"message","validationCallback"],["dataField","isActive",3,"caption","visible"],["dataField","firstName",3,"caption"],["dataField","lastName",3,"caption"],["dataField","groups",3,"caption"],["mode","popup",3,"allowAdding","allowUpdating","allowDeleting","useIcons"],[3,"showTitle","title"],["colCount","2",3,"labelLocation"],["dataField","userName",3,"isRequired"],["dataField","isActive"],["dataField","firstName"],["dataField","lastName"],["dataField","group"]],template:function(e,n){1&e&&(t["ɵɵelementStart"](0,"cauca-dx-data-grid",0),t["ɵɵlistener"]("onRowInserted",(function(e){return n.onRowInserted(e)}))("onRowUpdated",(function(e){return n.onRowUpdated(e)}))("onRowRemoved",(function(e){return n.onRowRemoved(e)})),t["ɵɵelementStart"](1,"dxi-column",1),t["ɵɵpipe"](2,"translate"),t["ɵɵelement"](3,"dxi-validation-rule",2),t["ɵɵpipe"](4,"translate"),t["ɵɵelementEnd"](),t["ɵɵelement"](5,"dxi-column",3),t["ɵɵpipe"](6,"translate"),t["ɵɵelement"](7,"dxi-column",4),t["ɵɵpipe"](8,"translate"),t["ɵɵelement"](9,"dxi-column",5),t["ɵɵpipe"](10,"translate"),t["ɵɵelement"](11,"dxi-column",6),t["ɵɵpipe"](12,"translate"),t["ɵɵelementStart"](13,"dxo-editing",7),t["ɵɵelement"](14,"dxo-popup",8),t["ɵɵpipe"](15,"translate"),t["ɵɵelementStart"](16,"dxo-form",9),t["ɵɵelement"](17,"dxi-item",10),t["ɵɵelement"](18,"dxi-item",11),t["ɵɵelement"](19,"dxi-item",12),t["ɵɵelement"](20,"dxi-item",13),t["ɵɵelement"](21,"dxi-item",14),t["ɵɵelementEnd"](),t["ɵɵelementEnd"](),t["ɵɵelementEnd"]()),2&e&&(t["ɵɵproperty"]("dataSource",n.users),t["ɵɵadvance"](1),t["ɵɵproperty"]("caption",t["ɵɵpipeBind1"](2,17,"management.userName")),t["ɵɵadvance"](2),t["ɵɵproperty"]("message",t["ɵɵpipeBind1"](4,19,"management.userNameAlreadyUsed"))("validationCallback",n.userNameAlreadyUsedValidation),t["ɵɵadvance"](2),t["ɵɵproperty"]("caption",t["ɵɵpipeBind1"](6,21,"management.isActive"))("visible",!1),t["ɵɵadvance"](2),t["ɵɵproperty"]("caption",t["ɵɵpipeBind1"](8,23,"management.firstName")),t["ɵɵadvance"](2),t["ɵɵproperty"]("caption",t["ɵɵpipeBind1"](10,25,"management.lastName")),t["ɵɵadvance"](2),t["ɵɵproperty"]("caption",t["ɵɵpipeBind1"](12,27,"management.group")),t["ɵɵadvance"](2),t["ɵɵproperty"]("allowAdding",!0)("allowUpdating",!0)("allowDeleting",!0)("useIcons",!0),t["ɵɵadvance"](1),t["ɵɵproperty"]("showTitle",!0)("title",t["ɵɵpipeBind1"](15,29,"management.group")),t["ɵɵadvance"](2),t["ɵɵproperty"]("labelLocation",n.showColumnXS?"left":"top"),t["ɵɵadvance"](1),t["ɵɵproperty"]("isRequired",!0))},directives:[a.CaucaDataGridComponent,l.DxiColumnComponent,l.DxiValidationRuleComponent,l.DxoEditingComponent,l.DxoPopupComponent,l.DxoFormComponent,l.DxiItemComponent],pipes:[n.TranslatePipe],styles:[""]}),e}(),b=function(){function e(){}return e.ɵmod=t["ɵɵdefineNgModule"]({type:e}),e.ɵinj=t["ɵɵdefineInjector"]({factory:function(t){return new(t||e)},imports:[[i.BrowserModule,o.DxCheckBoxModule,o.DxListModule,o.DxTagBoxModule,r.CaucaCoreModule,a.CaucaDevextremeModule]]}),e}();("undefined"==typeof ngJitMode||ngJitMode)&&t["ɵɵsetNgModuleScope"](b,{declarations:[m,C,S],imports:[i.BrowserModule,o.DxCheckBoxModule,o.DxListModule,o.DxTagBoxModule,r.CaucaCoreModule,a.CaucaDevextremeModule],exports:[m,S,C]});var E=function(){this.idUserGroup="",this.idGroup="",this.idUser=""},M=function(){this.idUserPermission="",this.isAllowed=!1,this.idUser="",this.idModulePermission=""},N=function(){this.name="",this.users=[],this.permissions=[]},G=function(){this.idGroupPermission="",this.isAllowed=!1,this.idGroup="",this.idModulePermission=""};e.CaucaManagementComponent=m,e.CaucaManagementGroupComponent=C,e.CaucaManagementModule=b,e.CaucaManagementService=d,e.CaucaManagementUserComponent=S,e.GroupModel=N,e.GroupPermissionModel=G,e.ManagementGroupService=f,e.ManagementUserService=g,e.UserGroupModel=E,e.UserModel=U,e.UserPermissionModel=M,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("devextreme-angular/ui/check-box"),require("devextreme-angular/ui/list"),require("devextreme-angular/ui/tag-box"),require("@cauca-911/core"),require("@cauca-911/devextreme"),require("@angular/cdk/layout"),require("rxjs/operators"),require("@angular/common/http"),require("@angular/common")):"function"==typeof define&&define.amd?define("@cauca-911/management",["exports","@angular/core","devextreme-angular/ui/check-box","devextreme-angular/ui/list","devextreme-angular/ui/tag-box","@cauca-911/core","@cauca-911/devextreme","@angular/cdk/layout","rxjs/operators","@angular/common/http","@angular/common"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["cauca-911"]=e["cauca-911"]||{},e["cauca-911"].management={}),e.ng.core,e["devextreme-angular/ui/check-box"],e["devextreme-angular/ui/list"],e["devextreme-angular/ui/tag-box"],e["@cauca-911/core"],e["@cauca-911/devextreme"],e.ng.cdk.layout,e.rxjs.operators,e.ng.common.http,e.ng.common)}(this,(function(e,t,n,r,i,o,a,s,u,p,d){"use strict";var c=function(){};c.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new c},token:c,providedIn:"root"}),c.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],c.ctorParameters=function(){return[]};var l=function(){function e(){}return e.prototype.ngOnInit=function(){},e}();l.decorators=[{type:t.Component,args:[{selector:"cauca-management",template:"<div>{{'core.noGenericComponentOnThisLibrary' | translate}}</div>"}]}],l.ctorParameters=function(){return[]};var m=function(){function e(e,t){this.http=t,this.config=e.getConfig()}return e.prototype.getAll=function(){return this.http.get(this.config.apiUrl+"GroupManagement")},e.prototype.get=function(e){return this.http.get(this.config.apiUrl+"GroupManagement/"+e)},e.prototype.save=function(e){return this.http.post(this.config.apiUrl+"GroupManagement",e)},e.prototype.delete=function(e){return this.http.delete(this.config.apiUrl+"GroupManagement/"+e)},e.prototype.hasExistingGroupName=function(e){return this.http.post(this.config.apiUrl+"GroupManagement/GroupNameAlreadyExist",e)},e}();m.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new m(t.ɵɵinject(o.CaucaCoreService),t.ɵɵinject(p.HttpClient))},token:m,providedIn:"root"}),m.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],m.ctorParameters=function(){return[{type:o.CaucaCoreService},{type:p.HttpClient}]};var g=function(){function e(e,t){this.http=t,this.config=e.getConfig()}return e.prototype.getAll=function(){return this.http.get(this.config.apiUrl+"UserManagement")},e.prototype.get=function(e){return this.http.get(this.config.apiUrl+"UserManagement/"+e)},e.prototype.getGroup=function(e){return this.http.get(this.config.apiUrl+"UserManagement/"+e+"/groups")},e.prototype.addGroup=function(e){return this.http.post(this.config.apiUrl+"UserManagement/group",e)},e.prototype.deleteGroup=function(e){return this.http.delete(this.config.apiUrl+"UserManagement/groups/"+e)},e.prototype.addPermission=function(e){return this.http.post(this.config.apiUrl+"UserManagement/permission",e)},e.prototype.deletePermission=function(e){return this.http.delete(this.config.apiUrl+"UserManagement/groups/"+e)},e.prototype.save=function(e){return this.http.post(this.config.apiUrl+"UserManagement",e)},e.prototype.delete=function(e){return this.http.delete(this.config.apiUrl+"UserManagement/"+e)},e.prototype.hasExistingUserName=function(e){return this.http.post(this.config.apiUrl+"UserManagement/UserNameAlreadyExist",e)},e}();g.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new g(t.ɵɵinject(o.CaucaCoreService),t.ɵɵinject(p.HttpClient))},token:g,providedIn:"root"}),g.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],g.ctorParameters=function(){return[{type:o.CaucaCoreService},{type:p.HttpClient}]};var f=function(){function e(e,t){this.http=t,this.config=e.getConfig()}return e.prototype.getAll=function(){return this.http.get(this.config.apiUrl+"PermissionManagement")},e.prototype.get=function(e){return this.http.get(this.config.apiUrl+"PermissionManagement/"+e)},e.prototype.save=function(e){return this.http.post(this.config.apiUrl+"PermissionManagement",e)},e.prototype.delete=function(e){return this.http.delete(this.config.apiUrl+"PermissionManagement/"+e)},e}();f.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new f(t.ɵɵinject(o.CaucaCoreService),t.ɵɵinject(p.HttpClient))},token:f,providedIn:"root"}),f.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],f.ctorParameters=function(){return[{type:o.CaucaCoreService},{type:p.HttpClient}]};var h=function(){function e(e,t,n,r){var i=this;this.managementGroupService=e,this.managementUserService=t,this.managementPermissionService=n,this.showPrintButton=!0,this.hoverStatePermission=!0,this.groups=[],this.users=[],this.permissions=[],this.userFullName={},this.showColumn=!0,this.showColumnXS=!0,this.translations=[],this.calculateUsersCellValue=function(e){var t=e.users?e.users:[],n=[];return t.forEach((function(e){var t=i.users.filter((function(t){return t.id===e.idUser}));t&&t[0]&&n.push(t[0].firstName+" "+t[0].lastName)})),(n=n.sort((function(e,t){return e<t?-1:1}))).join(", ")},this.groupNameAlreadyUsedValidation=function(e){return i.managementGroupService.hasExistingGroupName(e.data).pipe(u.map((function(e){return!e}))).toPromise()},r.observe(["(max-width: 1000px)"]).subscribe((function(e){i.showColumn=!e.matches})),r.observe(["(max-width: 600px)"]).subscribe((function(e){i.showColumnXS=!e.matches}))}return e.prototype.ngOnInit=function(){var e=this;this.managementUserService.getAll().subscribe((function(t){e.users=t,e.users.forEach((function(t){t.isActive&&""!==t.firstName&&""!==t.lastName&&(e.userFullName[t.id]=t.firstName+" "+t.lastName)}))})),this.managementPermissionService.getAll().subscribe((function(t){var n=t.findIndex((function(e){return"CanAccessPermissions"===e.tag}));-1!==n&&t.splice(n,1),t.sort((function(e,t){return e.name<t.name?-1:e.name>t.name?1:0})),e.permissions=t})),this.getGroups()},e.prototype.fullName=function(e){return e?e.firstName+" "+e.lastName:""},e.prototype.getGroupUser=function(e,t){var n=[];this.groupUsers&&this.groupUsers.forEach((function(e){n.push(e.idUser)})),t.component.option("value",n)},e.prototype.setGroupUser=function(e,t){var n=[];t.value.forEach((function(t){var r=(e.data.users||[]).findIndex((function(e){return e.idUser===t}));-1===r?n.push({idUser:t}):n.push(e.data.users[r])})),e.setValue(JSON.parse(JSON.stringify(n)))},e.prototype.setGroupPermission=function(e,t){var n=[];t.value.forEach((function(e){n.push({idUser:e})})),e.setValue(JSON.parse(JSON.stringify(n)))},e.prototype.getPermissionStatus=function(e,t,n){var r=(e.value||[]).find((function(e){return e.idModulePermission===t.id}));r?n.component.option("value",r.isAllowed):n.component.option("value",void 0)},e.prototype.checkBoxToggled=function(e,t,n){if(n.component.skipOnValueChanged)n.component.skipOnValueChanged=!1;else{if(n.component.setUndefinedNextTime)return n.component.setUndefinedNextTime=!1,n.component.skipOnValueChanged=!0,n.component.option("value",void 0),void this.setPermissionStatus(e,t,void 0);!1===n.value&&(n.component.setUndefinedNextTime=!0),this.setPermissionStatus(e,t,n.value)}},e.prototype.onRowInserted=function(e){this.saveGroup(e.data)},e.prototype.onRowUpdated=function(e){this.saveGroup(e.data)},e.prototype.onRowRemoved=function(e){var t=this,n=e.data;this.managementGroupService.delete(n.id).subscribe((function(e){t.getGroups()}))},e.prototype.onEditingStart=function(e){this.groupUsers=e.data.users},e.prototype.onInitNewRow=function(){this.groupUsers=[]},e.prototype.setPermissionStatus=function(e,t,n){var r=e.value||[],i=r.findIndex((function(e){return e.idModulePermission===t.id}));i>-1?r[i].isAllowed=n:r.push({idModulePermission:t.id,isAllowed:n}),e.setValue(JSON.parse(JSON.stringify(r)))},e.prototype.saveGroup=function(e){var t=this;this.removePermissionUndefined(e),e.users&&e.users.forEach((function(t){t.idGroup=e.id})),e.permissions&&e.permissions.forEach((function(t){t.idGroup=e.id})),this.managementGroupService.save(e).subscribe((function(){t.getGroups()})),this.groupUsers=[]},e.prototype.removePermissionUndefined=function(e){e.permissions=e.permissions.filter((function(e){return void 0!==e.isAllowed}))},e.prototype.getGroups=function(){var e=this;this.managementGroupService.getAll().subscribe((function(t){return e.groups=t}))},e}();h.decorators=[{type:t.Component,args:[{selector:"cauca-management-group",template:'<cauca-dx-data-grid [allowPrint]="showPrintButton" keyExpr="id" [dataSource]="groups"\r\n (onRowInserted)="onRowInserted($event)" (onInitNewRow)="onInitNewRow()" (onRowUpdated)="onRowUpdated($event)"\r\n (onEditingStart)="onEditingStart($event)" (onRowRemoved)="onRowRemoved($event)">\r\n\r\n <dxi-column dataField="name" [caption]="\'management.name\' | translate">\r\n <dxi-validation-rule type="async" [message]="\'management.groupNameAlreadyUsed\' | translate"\r\n [validationCallback]="groupNameAlreadyUsedValidation"></dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField="users" [caption]="\'management.users\' | translate" editCellTemplate="usersEditTemplate"\r\n [calculateCellValue]="calculateUsersCellValue">\r\n </dxi-column>\r\n <dxi-column dataField="permissions" [caption]="\'management.permissions\' | translate" [visible]="false"\r\n editCellTemplate="permissionsEditTemplate">\r\n </dxi-column>\r\n <dxo-export [enabled]="false"></dxo-export>\r\n <dxo-editing mode="popup" [allowAdding]="true" [allowUpdating]="true" [allowDeleting]="true" [useIcons]="true">\r\n <dxo-popup [showTitle]="true" [title]="\'management.group\' | translate" [fullScreen]="!showColumn"></dxo-popup>\r\n <dxo-form colCount="1" [labelLocation]="showColumnXS ? \'left\' : \'top\'">\r\n <dxi-item dataField="name" [isRequired]="true"></dxi-item>\r\n <dxi-item dataField="users"></dxi-item>\r\n <dxi-item dataField="permissions"></dxi-item>\r\n </dxo-form>\r\n </dxo-editing>\r\n\r\n <div *dxTemplate="let field of \'usersEditTemplate\'">\r\n <dx-tag-box valueExpr="id" [displayExpr]="fullName" [dataSource]="users" [searchEnabled]="true"\r\n [searchExpr]="fullName" (onInitialized)="getGroupUser(field, $event)"\r\n (onValueChanged)="setGroupUser(field, $event)">\r\n </dx-tag-box>\r\n </div>\r\n <div *dxTemplate="let field of \'permissionsEditTemplate\'">\r\n <dx-list [dataSource]="permissions" itemTemplate="rowTemplate" [searchEnabled]="true"\r\n [searchExpr]="[\'name\', \'tag\']" [hoverStateEnabled]="hoverStatePermission">\r\n <div *dxTemplate="let permission of \'rowTemplate\'">\r\n <dx-check-box [text]="permission.name" (onInitialized)="getPermissionStatus(field, permission, $event)"\r\n (onValueChanged)="checkBoxToggled(field, permission, $event)">\r\n </dx-check-box>\r\n </div>\r\n </dx-list>\r\n </div>\r\n</cauca-dx-data-grid>',styles:[""]}]}],h.ctorParameters=function(){return[{type:m},{type:g},{type:f},{type:s.BreakpointObserver}]},h.propDecorators={showPrintButton:[{type:t.Input}],hoverStatePermission:[{type:t.Input}]};var v=function(){this.userName="",this.firstName="",this.lastName="",this.password="",this.email="",this.isActive=!0,this.twoFactorAuthenticatorEnabled=!1},x=function(){function e(e,t){var n=this;this.managementUserService=e,this.users=[new v],this.showColumnXS=!0,this.userNameAlreadyUsedValidation=function(e){return n.managementUserService.hasExistingUserName(e.data).pipe(u.map((function(e){return!e}))).toPromise()},t.observe(["(max-width: 600px)"]).subscribe((function(e){n.showColumnXS=!e.matches}))}return e.prototype.ngOnInit=function(){this.getUsers()},e.prototype.onRowInserted=function(e){this.saveGroup(e.data)},e.prototype.onRowUpdated=function(e){this.saveGroup(e.key)},e.prototype.onRowRemoved=function(e){var t=this,n=e.data;this.managementUserService.delete(n.id).subscribe((function(e){t.getUsers()}))},e.prototype.saveGroup=function(e){var t=this;this.managementUserService.save(e).subscribe((function(){t.getUsers()}))},e.prototype.getUsers=function(){var e=this;this.managementUserService.getAll().subscribe((function(t){return e.users=t}))},e}();x.decorators=[{type:t.Component,args:[{selector:"cauca-management-user",template:'<cauca-dx-data-grid\r\n keyExpr="id"\r\n [dataSource]="users"\r\n (onRowInserted)="onRowInserted($event)"\r\n (onRowUpdated)="onRowUpdated($event)"\r\n (onRowRemoved)="onRowRemoved($event)">\r\n\r\n <dxi-column dataField="userName" [caption]="\'management.userName\' | translate">\r\n <dxi-validation-rule type="async" [message]="\'management.userNameAlreadyUsed\' | translate" [validationCallback]="userNameAlreadyUsedValidation"></dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField="isActive" [caption]="\'management.isActive\' | translate" [visible]="false"></dxi-column>\r\n <dxi-column dataField="firstName" [caption]="\'management.firstName\' | translate"></dxi-column>\r\n <dxi-column dataField="lastName" [caption]="\'management.lastName\' | translate"></dxi-column>\r\n <dxi-column dataField="groups" [caption]="\'management.group\' | translate"></dxi-column>\r\n\r\n <dxo-editing mode="popup" [allowAdding]="true" [allowUpdating]="true" [allowDeleting]="true" [useIcons]="true">\r\n <dxo-popup [showTitle]="true" [title]="\'management.group\' | translate"></dxo-popup>\r\n <dxo-form colCount="2" [labelLocation]="showColumnXS ? \'left\' : \'top\'">\r\n <dxi-item dataField="userName" [isRequired]="true"></dxi-item>\r\n <dxi-item dataField="isActive"></dxi-item>\r\n <dxi-item dataField="firstName"></dxi-item>\r\n <dxi-item dataField="lastName"></dxi-item>\r\n <dxi-item dataField="group"></dxi-item>\r\n </dxo-form>\r\n </dxo-editing>\r\n</cauca-dx-data-grid>\r\n',styles:[""]}]}],x.ctorParameters=function(){return[{type:g},{type:s.BreakpointObserver}]};var y=function(){};y.decorators=[{type:t.NgModule,args:[{declarations:[l,h,x],imports:[d.CommonModule,n.DxCheckBoxModule,r.DxListModule,i.DxTagBoxModule,o.CaucaCoreForChildModule,a.CaucaDevextremeModule],exports:[l,x,h]}]}];var U=function(){this.idUserGroup="",this.idGroup="",this.idUser=""},w=function(){this.idUserPermission="",this.isAllowed=!1,this.idUser="",this.idModulePermission=""},C=function(){this.name="",this.users=[],this.permissions=[]},b=function(){this.idGroupPermission="",this.isAllowed=!1,this.idGroup="",this.idModulePermission=""};e.CaucaManagementComponent=l,e.CaucaManagementGroupComponent=h,e.CaucaManagementModule=y,e.CaucaManagementService=c,e.CaucaManagementUserComponent=x,e.GroupModel=C,e.GroupPermissionModel=b,e.ManagementGroupService=m,e.ManagementUserService=g,e.UserGroupModel=U,e.UserModel=v,e.UserPermissionModel=w,e.ɵa=f,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=cauca-911-management.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["ng://@cauca-911/management/lib/cauca-management.service.ts","ng://@cauca-911/management/lib/cauca-management.component.ts","ng://@cauca-911/management/lib/cauca-management.component.html","ng://@cauca-911/management/lib/shared/services/management-group.service.ts","ng://@cauca-911/management/lib/shared/services/management-user.service.ts","ng://@cauca-911/management/lib/shared/services/management-permission.service.ts","ng://@cauca-911/management/lib/cauca-management-group/cauca-management-group.component.html","ng://@cauca-911/management/lib/cauca-management-group/cauca-management-group.component.ts","ng://@cauca-911/management/lib/shared/models/user-model.ts","ng://@cauca-911/management/lib/cauca-management-user/cauca-management-user.component.ts","ng://@cauca-911/management/lib/cauca-management-user/cauca-management-user.component.html","ng://@cauca-911/management/lib/cauca-management.module.ts","ng://@cauca-911/management/lib/shared/models/user-group-model.ts","ng://@cauca-911/management/lib/shared/models/user-permission-model.ts","ng://@cauca-911/management/lib/shared/models/group-model.ts","ng://@cauca-911/management/lib/shared/models/group-permission-model.ts"],"names":["CaucaManagementService","factory","ɵfac","providedIn","CaucaManagementComponent","prototype","ngOnInit","selectors","decls","vars","template","rf","ctx","i0.ɵɵelementStart","i0.ɵɵtext","i0.ɵɵelementEnd","i0.ɵɵadvance","i0.ɵɵtextInterpolate","ManagementGroupService","coreService","http","this","config","getConfig","getAll","get","apiUrl","idGroup","save","group","post","delete","hasExistingGroupName","core","core$2","CaucaCoreService","HttpClient","ManagementUserService","idUser","getGroup","addGroup","userGroup","deleteGroup","idUserGroup","addPermission","userPermission","deletePermission","idUserPermission","user","hasExistingUserName","ManagementPermissionService","idPermission","permission","i0.ɵɵlistener","$event","_r18","field_r16","$implicit","setGroupUser","i0.ɵɵproperty","ctx_r14","users","fullName","_r25","permission_r22","field_r20","checkBoxToggled","i0.ɵɵtemplate","_c0","ctx_r15","hoverStatePermission","CaucaManagementGroupComponent","managementGroupService","managementUserService","managementPermissionService","breakpointObserver","_this","showPrintButton","groups","permissions","userFullName","showColumn","showColumnXS","translations","calculateUsersCellValue","e","usersNames","forEach","filter","u","id","push","firstName","lastName","sort","one","two","join","groupNameAlreadyUsedValidation","data","pipe","map","exist","toPromise","observe","subscribe","result","matches","isActive","permissionIndex","findIndex","c","tag","splice","a","b","name","getGroups","getGroupUser","field","groupUsers","component","option","groupUser","value","groupIndex","g","setValue","JSON","parse","stringify","setGroupPermission","getPermissionStatus","groupPermission","find","p","idModulePermission","isAllowed","undefined","skipOnValueChanged","setUndefinedNextTime","setPermissionStatus","onRowInserted","saveGroup","onRowUpdated","onRowRemoved","onEditingStart","onInitNewRow","groupPermissions","removePermissionUndefined","layout","BreakpointObserver","inputs","consts","i0.ɵɵelement","userName","password","email","CaucaManagementUserComponent","UserModel","userNameAlreadyUsedValidation","getUsers","key","CaucaManagementModule","imports","BrowserModule","DxCheckBoxModule","DxListModule","DxTagBoxModule","CaucaCoreModule","CaucaDevextremeModule","declarations","exports","idGroupPermission"],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CaucaManagementService {\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'cauca-management',\n templateUrl: './cauca-management.component.html',\n styles: []\n})\nexport class CaucaManagementComponent implements OnInit {\n\n constructor() { }\n\n public ngOnInit(): void {\n }\n\n}\n","<div>{{'core.noGenericComponentOnThisLibrary' | translate}}</div>","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\nimport { GroupModel } from '../models/group-model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ManagementGroupService {\n private config: Configuration;\n\n constructor(\n coreService: CaucaCoreService,\n private http: HttpClient,\n ) {\n this.config = coreService.getConfig();\n }\n\n public getAll(): Observable<GroupModel[]> {\n return this.http.get<GroupModel[]>(`${this.config.apiUrl}GroupManagement`);\n }\n\n public get(idGroup: string): Observable<GroupModel> {\n return this.http.get<GroupModel>(`${this.config.apiUrl}GroupManagement/${idGroup}`);\n }\n\n public save(group: GroupModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}GroupManagement`, group);\n }\n\n public delete(idGroup: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}GroupManagement/${idGroup}`);\n }\n\n public hasExistingGroupName(group: GroupModel): Observable<boolean> {\n return this.http.post<boolean>(`${this.config.apiUrl}GroupManagement/GroupNameAlreadyExist`, group);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\nimport { UserGroupModel } from '../models/user-group-model';\nimport { UserPermissionModel } from '../models/user-permission-model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ManagementUserService {\n private config: Configuration;\n\n constructor(\n coreService: CaucaCoreService,\n protected http: HttpClient,\n ) {\n this.config = coreService.getConfig();\n }\n\n public getAll<TUser>(): Observable<TUser[]> {\n return this.http.get<TUser[]>(`${this.config.apiUrl}UserManagement`);\n }\n\n public get<TUser>(idUser: string): Observable<TUser> {\n return this.http.get<TUser>(`${this.config.apiUrl}UserManagement/${idUser}`);\n }\n\n public getGroup(idUser: string): Observable<any> {\n return this.http.get(`${this.config.apiUrl}UserManagement/${idUser}/groups`);\n }\n\n public addGroup(userGroup: UserGroupModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement/group`, userGroup);\n }\n\n public deleteGroup(idUserGroup: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/groups/${idUserGroup}`);\n }\n\n public addPermission(userPermission: UserPermissionModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement/permission`, userPermission);\n }\n\n public deletePermission(idUserPermission: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/groups/${idUserPermission}`);\n }\n\n public save<TUser>(user: TUser): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement`, user);\n }\n\n public delete(idUser: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/${idUser}`);\n }\n\n public hasExistingUserName<TUser>(user: TUser): Observable<boolean> {\n return this.http.post<boolean>(`${this.config.apiUrl}UserManagement/UserNameAlreadyExist`, user);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\nimport { PermissionModel } from '../models/permission-model';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ManagementPermissionService {\n private config: Configuration;\n\n constructor(\n coreService: CaucaCoreService,\n private http: HttpClient,\n ) {\n this.config = coreService.getConfig();\n }\n\n public getAll(): Observable<PermissionModel[]> {\n return this.http.get<PermissionModel[]>(`${this.config.apiUrl}PermissionManagement`);\n }\n\n public get(idPermission: string): Observable<PermissionModel> {\n return this.http.get<PermissionModel>(`${this.config.apiUrl}PermissionManagement/${idPermission}`);\n }\n\n public save(permission: PermissionModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}PermissionManagement`, permission);\n }\n\n public delete(idPermission: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}PermissionManagement/${idPermission}`);\n }\n}\n","<cauca-dx-data-grid [allowPrint]=\"showPrintButton\" keyExpr=\"id\" [dataSource]=\"groups\"\n (onRowInserted)=\"onRowInserted($event)\" (onInitNewRow)=\"onInitNewRow()\" (onRowUpdated)=\"onRowUpdated($event)\"\n (onEditingStart)=\"onEditingStart($event)\" (onRowRemoved)=\"onRowRemoved($event)\">\n\n <dxi-column dataField=\"name\" [caption]=\"'management.name' | translate\">\n <dxi-validation-rule type=\"async\" [message]=\"'management.groupNameAlreadyUsed' | translate\"\n [validationCallback]=\"groupNameAlreadyUsedValidation\"></dxi-validation-rule>\n </dxi-column>\n <dxi-column dataField=\"users\" [caption]=\"'management.users' | translate\" editCellTemplate=\"usersEditTemplate\"\n [calculateCellValue]=\"calculateUsersCellValue\">\n </dxi-column>\n <dxi-column dataField=\"permissions\" [caption]=\"'management.permissions' | translate\" [visible]=\"false\"\n editCellTemplate=\"permissionsEditTemplate\">\n </dxi-column>\n <dxo-export [enabled]=\"false\"></dxo-export>\n <dxo-editing mode=\"popup\" [allowAdding]=\"true\" [allowUpdating]=\"true\" [allowDeleting]=\"true\" [useIcons]=\"true\">\n <dxo-popup [showTitle]=\"true\" [title]=\"'management.group' | translate\" [fullScreen]=\"!showColumn\"></dxo-popup>\n <dxo-form colCount=\"1\" [labelLocation]=\"showColumnXS ? 'left' : 'top'\">\n <dxi-item dataField=\"name\" [isRequired]=\"true\"></dxi-item>\n <dxi-item dataField=\"users\"></dxi-item>\n <dxi-item dataField=\"permissions\"></dxi-item>\n </dxo-form>\n </dxo-editing>\n\n <div *dxTemplate=\"let field of 'usersEditTemplate'\">\n <dx-tag-box valueExpr=\"id\" [displayExpr]=\"fullName\" [dataSource]=\"users\" [searchEnabled]=\"true\"\n [searchExpr]=\"fullName\" (onInitialized)=\"getGroupUser(field, $event)\"\n (onValueChanged)=\"setGroupUser(field, $event)\">\n </dx-tag-box>\n </div>\n <div *dxTemplate=\"let field of 'permissionsEditTemplate'\">\n <dx-list [dataSource]=\"permissions\" itemTemplate=\"rowTemplate\" [searchEnabled]=\"true\"\n [searchExpr]=\"['name', 'tag']\" [hoverStateEnabled]=\"hoverStatePermission\">\n <div *dxTemplate=\"let permission of 'rowTemplate'\">\n <dx-check-box [text]=\"permission.name\" (onInitialized)=\"getPermissionStatus(field, permission, $event)\"\n (onValueChanged)=\"checkBoxToggled(field, permission, $event)\">\n </dx-check-box>\n </div>\n </dx-list>\n </div>\n</cauca-dx-data-grid>","import { Component, Input, OnInit } from '@angular/core';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { map } from 'rxjs/operators';\nimport { UserModel } from '../shared/models/user-model';\nimport { UserGroupModel } from '../shared/models/user-group-model';\nimport { GroupModel } from '../shared/models/group-model';\nimport { GroupPermissionModel } from '../shared/models/group-permission-model';\nimport { ManagementGroupService } from '../shared/services/management-group.service';\nimport { ManagementUserService } from '../shared/services/management-user.service';\nimport { PermissionModel } from '../shared/models/permission-model';\nimport { ManagementPermissionService } from '../shared/services/management-permission.service';\n\n@Component({\n selector: 'cauca-management-group',\n templateUrl: './cauca-management-group.component.html',\n styleUrls: ['./cauca-management-group.component.scss']\n})\nexport class CaucaManagementGroupComponent implements OnInit {\n private groupUsers: any;\n\n @Input()\n public showPrintButton: boolean = true;\n @Input()\n public hoverStatePermission = true;\n public groups: GroupModel[] = [];\n public users: UserModel[] = [];\n public permissions: PermissionModel[] = [];\n public userFullName: any = {};\n public showColumn = true;\n public showColumnXS = true;\n public translations: any = [];\n\n constructor(\n private managementGroupService: ManagementGroupService,\n private managementUserService: ManagementUserService,\n private managementPermissionService: ManagementPermissionService,\n breakpointObserver: BreakpointObserver,\n ) {\n breakpointObserver.observe(['(max-width: 1000px)']).subscribe(result => {\n this.showColumn = !result.matches;\n });\n breakpointObserver.observe(['(max-width: 600px)']).subscribe(result => {\n this.showColumnXS = !result.matches;\n });\n }\n\n public ngOnInit(): void {\n this.managementUserService.getAll<UserModel>().subscribe(data => {\n this.users = data;\n this.users.forEach(user => {\n if (user.isActive) {\n if (user.firstName !== '' && user.lastName !== '') {\n this.userFullName[user.id] = `${user.firstName} ${user.lastName}`;\n }\n }\n });\n });\n this.managementPermissionService.getAll().subscribe(permissions => {\n const permissionIndex = permissions.findIndex(c => {\n return c.tag === 'CanAccessPermissions';\n });\n if (permissionIndex !== -1) {\n permissions.splice(permissionIndex, 1);\n }\n permissions.sort((a: PermissionModel, b: PermissionModel) => {\n if (a.name < b.name) { return -1; }\n if (a.name > b.name) { return 1; }\n return 0;\n });\n this.permissions = permissions;\n });\n this.getGroups();\n }\n\n public fullName(data): string {\n if (!data) {\n return '';\n }\n\n return `${data.firstName} ${data.lastName}`;\n }\n\n public getGroupUser(field, e): void {\n const users: string[] = [];\n if (this.groupUsers) {\n this.groupUsers.forEach( user => {\n users.push(user.idUser);\n });\n }\n e.component.option('value', users);\n }\n\n public setGroupUser(field, e): void {\n const groupUser: UserGroupModel[] = [];\n\n e.value.forEach(idUser => {\n const groupIndex = (field.data.users || []).findIndex(g => g.idUser === idUser);\n\n if (groupIndex === -1) {\n groupUser.push({ idUser, } as UserGroupModel);\n } else {\n groupUser.push(field.data.users[groupIndex]);\n }\n });\n\n field.setValue(JSON.parse(JSON.stringify(groupUser)));\n }\n\n public setGroupPermission(field, e): void {\n const groupUser: UserGroupModel[] = [];\n\n e.value.forEach(idUser => {\n groupUser.push({\n idUser,\n } as UserGroupModel);\n });\n\n field.setValue(JSON.parse(JSON.stringify(groupUser)));\n }\n\n public getPermissionStatus(field, permission, e): void {\n const groupPermission = (field.value || []).find(p => p.idModulePermission === permission.id);\n\n if (groupPermission) {\n e.component.option('value', groupPermission.isAllowed);\n } else {\n e.component.option('value', undefined);\n }\n }\n\n public checkBoxToggled(field, permission, e): void {\n if (e.component.skipOnValueChanged) {\n e.component.skipOnValueChanged = false;\n return;\n }\n if (e.component.setUndefinedNextTime) {\n e.component.setUndefinedNextTime = false;\n e.component.skipOnValueChanged = true;\n e.component.option('value', undefined);\n this.setPermissionStatus(field, permission, undefined);\n return;\n }\n if (e.value === false) {\n e.component.setUndefinedNextTime = true;\n }\n\n this.setPermissionStatus(field, permission, e.value);\n }\n\n public onRowInserted(e): void {\n this.saveGroup(e.data as GroupModel);\n }\n\n public onRowUpdated(e): void {\n this.saveGroup(e.data as GroupModel);\n }\n\n public onRowRemoved(e): void {\n const group = (e.data as GroupModel);\n this.managementGroupService.delete(group.id).subscribe(data => {\n this.getGroups();\n });\n }\n\n public calculateUsersCellValue = (e): string => {\n const users = (e.users ? e.users as UserGroupModel[] : []);\n let usersNames: any[] = [];\n users.forEach(user => {\n const userGroup = this.users.filter(u => u.id === user.idUser);\n if (userGroup && userGroup[0]) {\n usersNames.push(userGroup[0].firstName + ' ' + userGroup[0].lastName);\n }\n });\n usersNames = usersNames.sort((one, two) => (one < two ? -1 : 1));\n return usersNames.join(', ');\n }\n\n public onEditingStart(e: any): void {\n this.groupUsers = e.data.users;\n }\n\n public onInitNewRow(): void {\n this.groupUsers = [];\n }\n\n public groupNameAlreadyUsedValidation = (e): Promise<boolean> => {\n return this.managementGroupService.hasExistingGroupName(e.data).pipe(\n map((exist: boolean) => {\n return !exist;\n })\n ).toPromise();\n }\n\n private setPermissionStatus(field: any, permission, value): void {\n const groupPermissions = field.value || [];\n const groupIndex = groupPermissions.findIndex(p => p.idModulePermission === permission.id);\n\n if (groupIndex > -1) {\n groupPermissions[groupIndex].isAllowed = value;\n } else {\n groupPermissions.push({\n idModulePermission: permission.id,\n isAllowed: value,\n } as GroupPermissionModel);\n }\n\n field.setValue(JSON.parse(JSON.stringify(groupPermissions)));\n }\n\n private saveGroup(group: GroupModel): void {\n this.removePermissionUndefined(group);\n if (group.users) {\n group.users.forEach((userGroup: UserGroupModel) => {\n userGroup.idGroup = group.id;\n });\n }\n if (group.permissions) {\n group.permissions.forEach((groupPermission: GroupPermissionModel) => {\n groupPermission.idGroup = group.id;\n });\n }\n this.managementGroupService.save(group).subscribe(() => {\n this.getGroups();\n });\n this.groupUsers = [];\n }\n\n private removePermissionUndefined(group: GroupModel): void {\n group.permissions = group.permissions.filter((permission: GroupPermissionModel) => permission.isAllowed !== undefined);\n }\n\n private getGroups(): void {\n this.managementGroupService.getAll().subscribe(data => this.groups = data);\n }\n}\n","import {UserGroupModel} from './user-group-model';\nimport {UserPermissionModel} from './user-permission-model';\n\nexport class UserModel {\n id: string;\n userName = '';\n firstName = '';\n lastName = '';\n password = '';\n email = '';\n isActive = true;\n groups: UserGroupModel[];\n permissions: UserPermissionModel[];\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { UserModel } from '../shared/models/user-model';\nimport { ManagementUserService } from '../shared/services/management-user.service';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { map } from 'rxjs/operators';\n\n@Component({\n selector: 'cauca-management-user',\n templateUrl: './cauca-management-user.component.html',\n styleUrls: ['./cauca-management-user.component.scss']\n})\nexport class CaucaManagementUserComponent implements OnInit {\n public users: UserModel[] = [\n new UserModel()\n ];\n public showColumnXS = true;\n\n constructor(\n private managementUserService: ManagementUserService,\n breakpointObserver: BreakpointObserver,\n ) {\n breakpointObserver.observe(['(max-width: 600px)']).subscribe(result => {\n this.showColumnXS = !result.matches;\n });\n }\n\n public ngOnInit(): void {\n this.getUsers();\n }\n\n public onRowInserted(e): void {\n this.saveGroup(e.data as UserModel);\n }\n\n public onRowUpdated(e): void {\n this.saveGroup(e.key as UserModel);\n }\n\n public onRowRemoved(e): void {\n const user = (e.data as UserModel);\n this.managementUserService.delete(user.id).subscribe(data => {\n this.getUsers();\n });\n }\n\n public userNameAlreadyUsedValidation = (e): Promise<boolean> => {\n return this.managementUserService.hasExistingUserName(e.data).pipe(\n map((exist: boolean) => {\n return !exist;\n })\n ).toPromise();\n }\n\n private saveGroup(user: UserModel): void {\n this.managementUserService.save<UserModel>(user).subscribe(() => {\n this.getUsers();\n });\n }\n\n private getUsers(): void {\n this.managementUserService.getAll<UserModel>().subscribe(data => this.users = data);\n }\n}","<cauca-dx-data-grid\n keyExpr=\"id\"\n [dataSource]=\"users\"\n (onRowInserted)=\"onRowInserted($event)\"\n (onRowUpdated)=\"onRowUpdated($event)\"\n (onRowRemoved)=\"onRowRemoved($event)\">\n\n <dxi-column dataField=\"userName\" [caption]=\"'management.userName' | translate\">\n <dxi-validation-rule type=\"async\" [message]=\"'management.userNameAlreadyUsed' | translate\" [validationCallback]=\"userNameAlreadyUsedValidation\"></dxi-validation-rule>\n </dxi-column>\n <dxi-column dataField=\"isActive\" [caption]=\"'management.isActive' | translate\" [visible]=\"false\"></dxi-column>\n <dxi-column dataField=\"firstName\" [caption]=\"'management.firstName' | translate\"></dxi-column>\n <dxi-column dataField=\"lastName\" [caption]=\"'management.lastName' | translate\"></dxi-column>\n <dxi-column dataField=\"groups\" [caption]=\"'management.group' | translate\"></dxi-column>\n\n <dxo-editing mode=\"popup\" [allowAdding]=\"true\" [allowUpdating]=\"true\" [allowDeleting]=\"true\" [useIcons]=\"true\">\n <dxo-popup [showTitle]=\"true\" [title]=\"'management.group' | translate\"></dxo-popup>\n <dxo-form colCount=\"2\" [labelLocation]=\"showColumnXS ? 'left' : 'top'\">\n <dxi-item dataField=\"userName\" [isRequired]=\"true\"></dxi-item>\n <dxi-item dataField=\"isActive\"></dxi-item>\n <dxi-item dataField=\"firstName\"></dxi-item>\n <dxi-item dataField=\"lastName\"></dxi-item>\n <dxi-item dataField=\"group\"></dxi-item>\n </dxo-form>\n </dxo-editing>\n</cauca-dx-data-grid>\n","import { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { DxCheckBoxModule, DxListModule, DxTagBoxModule } from 'devextreme-angular';\nimport { CaucaCoreModule } from '@cauca-911/core';\nimport { CaucaDevextremeModule } from '@cauca-911/devextreme';\nimport { CaucaManagementComponent } from './cauca-management.component';\nimport { CaucaManagementGroupComponent } from './cauca-management-group/cauca-management-group.component';\nimport { CaucaManagementUserComponent } from './cauca-management-user/cauca-management-user.component';\n\n@NgModule({\n declarations: [\n CaucaManagementComponent,\n CaucaManagementGroupComponent,\n CaucaManagementUserComponent\n ],\n imports: [\n BrowserModule,\n DxCheckBoxModule,\n DxListModule,\n DxTagBoxModule,\n CaucaCoreModule,\n CaucaDevextremeModule,\n ],\n exports: [\n CaucaManagementComponent,\n CaucaManagementUserComponent,\n CaucaManagementGroupComponent,\n ]\n})\nexport class CaucaManagementModule { }\n","export class UserGroupModel {\n idUserGroup = '';\n idGroup = '';\n idUser = '';\n\n constructor() { }\n}\n","export class UserPermissionModel {\n idUserPermission = '';\n isAllowed = false;\n idUser = '';\n idModulePermission = '';\n\n constructor() { }\n}\n","import {GroupPermissionModel} from './group-permission-model';\nimport {UserGroupModel} from './user-group-model';\n\nexport class GroupModel {\n public id: string;\n public name = '';\n public users: UserGroupModel[] = [];\n public permissions: GroupPermissionModel[] = [];\n\n constructor() { }\n}\n","export class GroupPermissionModel {\n idGroupPermission = '';\n isAllowed = false;\n idGroup = '';\n idModulePermission = '';\n\n constructor() { }\n}\n"]}
1
+ {"version":3,"sources":["../../projects/cauca-management/src/lib/cauca-management.service.ts","../../projects/cauca-management/src/lib/cauca-management.component.ts","../esm2015/projects/cauca-management/src/lib/shared/services/management-group.service.ts","../esm2015/projects/cauca-management/src/lib/shared/services/management-user.service.ts","../esm2015/projects/cauca-management/src/lib/shared/services/management-permission.service.ts","../projects/cauca-management/src/lib/cauca-management-group/cauca-management-group.component.ts","../esm2015/projects/cauca-management/src/lib/shared/models/user-model.ts","../projects/cauca-management/src/lib/cauca-management-user/cauca-management-user.component.ts","../../projects/cauca-management/src/lib/cauca-management.module.ts","../esm2015/projects/cauca-management/src/lib/shared/models/user-group-model.ts","../esm2015/projects/cauca-management/src/lib/shared/models/user-permission-model.ts","../esm2015/projects/cauca-management/src/lib/shared/models/group-model.ts","../esm2015/projects/cauca-management/src/lib/shared/models/group-permission-model.ts"],"names":["Injectable","args","providedIn","CaucaManagementComponent","prototype","ngOnInit","Component","selector","template","ManagementGroupService","coreService","http","this","config","getConfig","getAll","get","apiUrl","idGroup","save","group","post","delete","hasExistingGroupName","CaucaCoreService","HttpClient","ManagementUserService","idUser","getGroup","addGroup","userGroup","deleteGroup","idUserGroup","addPermission","userPermission","deletePermission","idUserPermission","user","hasExistingUserName","ManagementPermissionService","idPermission","permission","CaucaManagementGroupComponent","managementGroupService","managementUserService","managementPermissionService","breakpointObserver","_this","showPrintButton","hoverStatePermission","groups","users","permissions","userFullName","showColumn","showColumnXS","translations","calculateUsersCellValue","e","usersNames","forEach","filter","u","id","push","firstName","lastName","sort","one","two","join","groupNameAlreadyUsedValidation","data","pipe","map","exist","toPromise","observe","subscribe","result","matches","isActive","permissionIndex","findIndex","c","tag","splice","a","b","name","getGroups","fullName","getGroupUser","field","groupUsers","component","option","setGroupUser","groupUser","value","groupIndex","g","setValue","JSON","parse","stringify","setGroupPermission","getPermissionStatus","groupPermission","find","p","idModulePermission","isAllowed","undefined","checkBoxToggled","skipOnValueChanged","setUndefinedNextTime","setPermissionStatus","onRowInserted","saveGroup","onRowUpdated","onRowRemoved","onEditingStart","onInitNewRow","groupPermissions","removePermissionUndefined","BreakpointObserver","Input","userName","password","email","twoFactorAuthenticatorEnabled","CaucaManagementUserComponent","UserModel","userNameAlreadyUsedValidation","getUsers","key","NgModule","declarations","imports","CommonModule","DxCheckBoxModule","DxListModule","DxTagBoxModule","CaucaCoreForChildModule","CaucaDevextremeModule","exports","idGroupPermission"],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CaucaManagementService {\r\n\r\n constructor() { }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cauca-management',\r\n templateUrl: './cauca-management.component.html',\r\n styles: []\r\n})\r\nexport class CaucaManagementComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n public ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\r\nimport { GroupModel } from '../models/group-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ManagementGroupService {\r\n private config: Configuration;\r\n\r\n constructor(\r\n coreService: CaucaCoreService,\r\n private http: HttpClient,\r\n ) {\r\n this.config = coreService.getConfig();\r\n }\r\n\r\n public getAll(): Observable<GroupModel[]> {\r\n return this.http.get<GroupModel[]>(`${this.config.apiUrl}GroupManagement`);\r\n }\r\n\r\n public get(idGroup: string): Observable<GroupModel> {\r\n return this.http.get<GroupModel>(`${this.config.apiUrl}GroupManagement/${idGroup}`);\r\n }\r\n\r\n public save(group: GroupModel): Observable<any> {\r\n return this.http.post(`${this.config.apiUrl}GroupManagement`, group);\r\n }\r\n\r\n public delete(idGroup: string): Observable<any> {\r\n return this.http.delete(`${this.config.apiUrl}GroupManagement/${idGroup}`);\r\n }\r\n\r\n public hasExistingGroupName(group: GroupModel): Observable<boolean> {\r\n return this.http.post<boolean>(`${this.config.apiUrl}GroupManagement/GroupNameAlreadyExist`, group);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\nimport { UserGroupModel } from '../models/user-group-model';\nimport { UserPermissionModel } from '../models/user-permission-model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ManagementUserService {\n private config: Configuration;\n\n constructor(\n coreService: CaucaCoreService,\n protected http: HttpClient,\n ) {\n this.config = coreService.getConfig();\n }\n\n public getAll<TUser>(): Observable<TUser[]> {\n return this.http.get<TUser[]>(`${this.config.apiUrl}UserManagement`);\n }\n\n public get<TUser>(idUser: string): Observable<TUser> {\n return this.http.get<TUser>(`${this.config.apiUrl}UserManagement/${idUser}`);\n }\n\n public getGroup(idUser: string): Observable<any> {\n return this.http.get(`${this.config.apiUrl}UserManagement/${idUser}/groups`);\n }\n\n public addGroup(userGroup: UserGroupModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement/group`, userGroup);\n }\n\n public deleteGroup(idUserGroup: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/groups/${idUserGroup}`);\n }\n\n public addPermission(userPermission: UserPermissionModel): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement/permission`, userPermission);\n }\n\n public deletePermission(idUserPermission: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/groups/${idUserPermission}`);\n }\n\n public save<TUser>(user: TUser): Observable<any> {\n return this.http.post(`${this.config.apiUrl}UserManagement`, user);\n }\n\n public delete(idUser: string): Observable<any> {\n return this.http.delete(`${this.config.apiUrl}UserManagement/${idUser}`);\n }\n\n public hasExistingUserName<TUser>(user: TUser): Observable<boolean> {\n return this.http.post<boolean>(`${this.config.apiUrl}UserManagement/UserNameAlreadyExist`, user);\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { Configuration, CaucaCoreService } from '@cauca-911/core';\r\nimport { PermissionModel } from '../models/permission-model';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ManagementPermissionService {\r\n private config: Configuration;\r\n\r\n constructor(\r\n coreService: CaucaCoreService,\r\n private http: HttpClient,\r\n ) {\r\n this.config = coreService.getConfig();\r\n }\r\n\r\n public getAll(): Observable<PermissionModel[]> {\r\n return this.http.get<PermissionModel[]>(`${this.config.apiUrl}PermissionManagement`);\r\n }\r\n\r\n public get(idPermission: string): Observable<PermissionModel> {\r\n return this.http.get<PermissionModel>(`${this.config.apiUrl}PermissionManagement/${idPermission}`);\r\n }\r\n\r\n public save(permission: PermissionModel): Observable<any> {\r\n return this.http.post(`${this.config.apiUrl}PermissionManagement`, permission);\r\n }\r\n\r\n public delete(idPermission: string): Observable<any> {\r\n return this.http.delete(`${this.config.apiUrl}PermissionManagement/${idPermission}`);\r\n }\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { BreakpointObserver } from '@angular/cdk/layout';\r\nimport { map } from 'rxjs/operators';\r\nimport { UserModel } from '../shared/models/user-model';\r\nimport { UserGroupModel } from '../shared/models/user-group-model';\r\nimport { GroupModel } from '../shared/models/group-model';\r\nimport { GroupPermissionModel } from '../shared/models/group-permission-model';\r\nimport { ManagementGroupService } from '../shared/services/management-group.service';\r\nimport { ManagementUserService } from '../shared/services/management-user.service';\r\nimport { PermissionModel } from '../shared/models/permission-model';\r\nimport { ManagementPermissionService } from '../shared/services/management-permission.service';\r\n\r\n@Component({\r\n selector: 'cauca-management-group',\r\n templateUrl: './cauca-management-group.component.html',\r\n styleUrls: ['./cauca-management-group.component.scss']\r\n})\r\nexport class CaucaManagementGroupComponent implements OnInit {\r\n private groupUsers: any;\r\n\r\n @Input()\r\n public showPrintButton: boolean = true;\r\n @Input()\r\n public hoverStatePermission = true;\r\n public groups: GroupModel[] = [];\r\n public users: UserModel[] = [];\r\n public permissions: PermissionModel[] = [];\r\n public userFullName: any = {};\r\n public showColumn = true;\r\n public showColumnXS = true;\r\n public translations: any = [];\r\n\r\n constructor(\r\n private managementGroupService: ManagementGroupService,\r\n private managementUserService: ManagementUserService,\r\n private managementPermissionService: ManagementPermissionService,\r\n breakpointObserver: BreakpointObserver,\r\n ) {\r\n breakpointObserver.observe(['(max-width: 1000px)']).subscribe(result => {\r\n this.showColumn = !result.matches;\r\n });\r\n breakpointObserver.observe(['(max-width: 600px)']).subscribe(result => {\r\n this.showColumnXS = !result.matches;\r\n });\r\n }\r\n\r\n public ngOnInit(): void {\r\n this.managementUserService.getAll<UserModel>().subscribe(data => {\r\n this.users = data;\r\n this.users.forEach(user => {\r\n if (user.isActive) {\r\n if (user.firstName !== '' && user.lastName !== '') {\r\n this.userFullName[user.id] = `${user.firstName} ${user.lastName}`;\r\n }\r\n }\r\n });\r\n });\r\n this.managementPermissionService.getAll().subscribe(permissions => {\r\n const permissionIndex = permissions.findIndex(c => {\r\n return c.tag === 'CanAccessPermissions';\r\n });\r\n if (permissionIndex !== -1) {\r\n permissions.splice(permissionIndex, 1);\r\n }\r\n permissions.sort((a: PermissionModel, b: PermissionModel) => {\r\n if (a.name < b.name) { return -1; }\r\n if (a.name > b.name) { return 1; }\r\n return 0;\r\n });\r\n this.permissions = permissions;\r\n });\r\n this.getGroups();\r\n }\r\n\r\n public fullName(data): string {\r\n if (!data) {\r\n return '';\r\n }\r\n\r\n return `${data.firstName} ${data.lastName}`;\r\n }\r\n\r\n public getGroupUser(field, e): void {\r\n const users: string[] = [];\r\n if (this.groupUsers) {\r\n this.groupUsers.forEach( user => {\r\n users.push(user.idUser);\r\n });\r\n }\r\n e.component.option('value', users);\r\n }\r\n\r\n public setGroupUser(field, e): void {\r\n const groupUser: UserGroupModel[] = [];\r\n\r\n e.value.forEach(idUser => {\r\n const groupIndex = (field.data.users || []).findIndex(g => g.idUser === idUser);\r\n\r\n if (groupIndex === -1) {\r\n groupUser.push({ idUser, } as UserGroupModel);\r\n } else {\r\n groupUser.push(field.data.users[groupIndex]);\r\n }\r\n });\r\n\r\n field.setValue(JSON.parse(JSON.stringify(groupUser)));\r\n }\r\n\r\n public setGroupPermission(field, e): void {\r\n const groupUser: UserGroupModel[] = [];\r\n\r\n e.value.forEach(idUser => {\r\n groupUser.push({\r\n idUser,\r\n } as UserGroupModel);\r\n });\r\n\r\n field.setValue(JSON.parse(JSON.stringify(groupUser)));\r\n }\r\n\r\n public getPermissionStatus(field, permission, e): void {\r\n const groupPermission = (field.value || []).find(p => p.idModulePermission === permission.id);\r\n\r\n if (groupPermission) {\r\n e.component.option('value', groupPermission.isAllowed);\r\n } else {\r\n e.component.option('value', undefined);\r\n }\r\n }\r\n\r\n public checkBoxToggled(field, permission, e): void {\r\n if (e.component.skipOnValueChanged) {\r\n e.component.skipOnValueChanged = false;\r\n return;\r\n }\r\n if (e.component.setUndefinedNextTime) {\r\n e.component.setUndefinedNextTime = false;\r\n e.component.skipOnValueChanged = true;\r\n e.component.option('value', undefined);\r\n this.setPermissionStatus(field, permission, undefined);\r\n return;\r\n }\r\n if (e.value === false) {\r\n e.component.setUndefinedNextTime = true;\r\n }\r\n\r\n this.setPermissionStatus(field, permission, e.value);\r\n }\r\n\r\n public onRowInserted(e): void {\r\n this.saveGroup(e.data as GroupModel);\r\n }\r\n\r\n public onRowUpdated(e): void {\r\n this.saveGroup(e.data as GroupModel);\r\n }\r\n\r\n public onRowRemoved(e): void {\r\n const group = (e.data as GroupModel);\r\n this.managementGroupService.delete(group.id).subscribe(data => {\r\n this.getGroups();\r\n });\r\n }\r\n\r\n public calculateUsersCellValue = (e): string => {\r\n const users = (e.users ? e.users as UserGroupModel[] : []);\r\n let usersNames: any[] = [];\r\n users.forEach(user => {\r\n const userGroup = this.users.filter(u => u.id === user.idUser);\r\n if (userGroup && userGroup[0]) {\r\n usersNames.push(userGroup[0].firstName + ' ' + userGroup[0].lastName);\r\n }\r\n });\r\n usersNames = usersNames.sort((one, two) => (one < two ? -1 : 1));\r\n return usersNames.join(', ');\r\n }\r\n\r\n public onEditingStart(e: any): void {\r\n this.groupUsers = e.data.users;\r\n }\r\n\r\n public onInitNewRow(): void {\r\n this.groupUsers = [];\r\n }\r\n\r\n public groupNameAlreadyUsedValidation = (e): Promise<boolean> => {\r\n return this.managementGroupService.hasExistingGroupName(e.data).pipe(\r\n map((exist: boolean) => {\r\n return !exist;\r\n })\r\n ).toPromise();\r\n }\r\n\r\n private setPermissionStatus(field: any, permission, value): void {\r\n const groupPermissions = field.value || [];\r\n const groupIndex = groupPermissions.findIndex(p => p.idModulePermission === permission.id);\r\n\r\n if (groupIndex > -1) {\r\n groupPermissions[groupIndex].isAllowed = value;\r\n } else {\r\n groupPermissions.push({\r\n idModulePermission: permission.id,\r\n isAllowed: value,\r\n } as GroupPermissionModel);\r\n }\r\n\r\n field.setValue(JSON.parse(JSON.stringify(groupPermissions)));\r\n }\r\n\r\n private saveGroup(group: GroupModel): void {\r\n this.removePermissionUndefined(group);\r\n if (group.users) {\r\n group.users.forEach((userGroup: UserGroupModel) => {\r\n userGroup.idGroup = group.id;\r\n });\r\n }\r\n if (group.permissions) {\r\n group.permissions.forEach((groupPermission: GroupPermissionModel) => {\r\n groupPermission.idGroup = group.id;\r\n });\r\n }\r\n this.managementGroupService.save(group).subscribe(() => {\r\n this.getGroups();\r\n });\r\n this.groupUsers = [];\r\n }\r\n\r\n private removePermissionUndefined(group: GroupModel): void {\r\n group.permissions = group.permissions.filter((permission: GroupPermissionModel) => permission.isAllowed !== undefined);\r\n }\r\n\r\n private getGroups(): void {\r\n this.managementGroupService.getAll().subscribe(data => this.groups = data);\r\n }\r\n}\r\n","import { UserGroupModel } from './user-group-model';\r\nimport { UserPermissionModel } from './user-permission-model';\r\n\r\nexport class UserModel {\r\n public id: string;\r\n public userName = '';\r\n public firstName = '';\r\n public lastName = '';\r\n public password = '';\r\n public email = '';\r\n public isActive = true;\r\n public groups: UserGroupModel[];\r\n public permissions: UserPermissionModel[];\r\n public twoFactorAuthenticatorEnabled = false;\r\n\r\n constructor() { }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { UserModel } from '../shared/models/user-model';\r\nimport { ManagementUserService } from '../shared/services/management-user.service';\r\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'cauca-management-user',\r\n templateUrl: './cauca-management-user.component.html',\r\n styleUrls: ['./cauca-management-user.component.scss']\r\n})\r\nexport class CaucaManagementUserComponent implements OnInit {\r\n public users: UserModel[] = [\r\n new UserModel()\r\n ];\r\n public showColumnXS = true;\r\n\r\n constructor(\r\n private managementUserService: ManagementUserService,\r\n breakpointObserver: BreakpointObserver,\r\n ) {\r\n breakpointObserver.observe(['(max-width: 600px)']).subscribe((result: BreakpointState) => {\r\n this.showColumnXS = !result.matches;\r\n });\r\n }\r\n\r\n public ngOnInit(): void {\r\n this.getUsers();\r\n }\r\n\r\n public onRowInserted(e: any): void {\r\n this.saveGroup(e.data as UserModel);\r\n }\r\n\r\n public onRowUpdated(e: any): void {\r\n this.saveGroup(e.key as UserModel);\r\n }\r\n\r\n public onRowRemoved(e: any): void {\r\n const user = (e.data as UserModel);\r\n this.managementUserService.delete(user.id).subscribe((data: any) => {\r\n this.getUsers();\r\n });\r\n }\r\n\r\n public userNameAlreadyUsedValidation = (e): Promise<boolean> => {\r\n return this.managementUserService.hasExistingUserName(e.data).pipe(\r\n map((exist: boolean) => {\r\n return !exist;\r\n })\r\n ).toPromise();\r\n }\r\n\r\n private saveGroup(user: UserModel): void {\r\n this.managementUserService.save<UserModel>(user).subscribe(() => {\r\n this.getUsers();\r\n });\r\n }\r\n\r\n private getUsers(): void {\r\n this.managementUserService.getAll<UserModel>().subscribe((data: any) => this.users = data);\r\n }\r\n}","import { NgModule } from '@angular/core';\r\nimport { DxCheckBoxModule } from 'devextreme-angular/ui/check-box';\r\nimport { DxListModule } from 'devextreme-angular/ui/list';\r\nimport { DxTagBoxModule } from 'devextreme-angular/ui/tag-box';\r\nimport { CaucaCoreForChildModule } from '@cauca-911/core';\r\nimport { CaucaDevextremeModule } from '@cauca-911/devextreme';\r\nimport { CaucaManagementComponent } from './cauca-management.component';\r\nimport { CaucaManagementGroupComponent } from './cauca-management-group/cauca-management-group.component';\r\nimport { CaucaManagementUserComponent } from './cauca-management-user/cauca-management-user.component';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n declarations: [\r\n CaucaManagementComponent,\r\n CaucaManagementGroupComponent,\r\n CaucaManagementUserComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n DxCheckBoxModule,\r\n DxListModule,\r\n DxTagBoxModule,\r\n CaucaCoreForChildModule,\r\n CaucaDevextremeModule,\r\n ],\r\n exports: [\r\n CaucaManagementComponent,\r\n CaucaManagementUserComponent,\r\n CaucaManagementGroupComponent,\r\n ]\r\n})\r\nexport class CaucaManagementModule { }\r\n","export class UserGroupModel {\r\n public idUserGroup = '';\r\n public idGroup = '';\r\n public idUser = '';\r\n\r\n constructor() { }\r\n}\r\n","export class UserPermissionModel {\r\n public idUserPermission = '';\r\n public isAllowed = false;\r\n public idUser = '';\r\n public idModulePermission = '';\r\n\r\n constructor() { }\r\n}\r\n","import {GroupPermissionModel} from './group-permission-model';\r\nimport {UserGroupModel} from './user-group-model';\r\n\r\nexport class GroupModel {\r\n public id: string;\r\n public name = '';\r\n public users: UserGroupModel[] = [];\r\n public permissions: GroupPermissionModel[] = [];\r\n\r\n constructor() { }\r\n}\r\n","export class GroupPermissionModel {\r\n public idGroupPermission = '';\r\n public isAllowed = false;\r\n public idGroup = '';\r\n public idModulePermission = '';\r\n\r\n constructor() { }\r\n}\r\n"]}
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
- /// <amd-module name="@cauca-911/management" />
5
4
  export * from './public-api';
5
+ export { ManagementPermissionService as ɵa } from './lib/shared/services/management-permission.service';
@@ -0,0 +1 @@
1
+ {"__symbolic":"module","version":4,"metadata":{"CaucaManagementService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"ɵprov":{}}},"CaucaManagementComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"cauca-management","styles":[],"template":"<div>{{'core.noGenericComponentOnThisLibrary' | translate}}</div>"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"CaucaManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":11,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"CaucaManagementComponent"},{"__symbolic":"reference","name":"CaucaManagementGroupComponent"},{"__symbolic":"reference","name":"CaucaManagementUserComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":18,"character":4},{"__symbolic":"reference","module":"devextreme-angular/ui/check-box","name":"DxCheckBoxModule","line":19,"character":4},{"__symbolic":"reference","module":"devextreme-angular/ui/list","name":"DxListModule","line":20,"character":4},{"__symbolic":"reference","module":"devextreme-angular/ui/tag-box","name":"DxTagBoxModule","line":21,"character":4},{"__symbolic":"reference","module":"@cauca-911/core","name":"CaucaCoreForChildModule","line":22,"character":4},{"__symbolic":"reference","module":"@cauca-911/devextreme","name":"CaucaDevextremeModule","line":23,"character":4}],"exports":[{"__symbolic":"reference","name":"CaucaManagementComponent"},{"__symbolic":"reference","name":"CaucaManagementUserComponent"},{"__symbolic":"reference","name":"CaucaManagementGroupComponent"}]}]}],"members":{}},"CaucaManagementGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":12,"character":1},"arguments":[{"selector":"cauca-management-group","template":"<cauca-dx-data-grid [allowPrint]=\"showPrintButton\" keyExpr=\"id\" [dataSource]=\"groups\"\r\n (onRowInserted)=\"onRowInserted($event)\" (onInitNewRow)=\"onInitNewRow()\" (onRowUpdated)=\"onRowUpdated($event)\"\r\n (onEditingStart)=\"onEditingStart($event)\" (onRowRemoved)=\"onRowRemoved($event)\">\r\n\r\n <dxi-column dataField=\"name\" [caption]=\"'management.name' | translate\">\r\n <dxi-validation-rule type=\"async\" [message]=\"'management.groupNameAlreadyUsed' | translate\"\r\n [validationCallback]=\"groupNameAlreadyUsedValidation\"></dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"users\" [caption]=\"'management.users' | translate\" editCellTemplate=\"usersEditTemplate\"\r\n [calculateCellValue]=\"calculateUsersCellValue\">\r\n </dxi-column>\r\n <dxi-column dataField=\"permissions\" [caption]=\"'management.permissions' | translate\" [visible]=\"false\"\r\n editCellTemplate=\"permissionsEditTemplate\">\r\n </dxi-column>\r\n <dxo-export [enabled]=\"false\"></dxo-export>\r\n <dxo-editing mode=\"popup\" [allowAdding]=\"true\" [allowUpdating]=\"true\" [allowDeleting]=\"true\" [useIcons]=\"true\">\r\n <dxo-popup [showTitle]=\"true\" [title]=\"'management.group' | translate\" [fullScreen]=\"!showColumn\"></dxo-popup>\r\n <dxo-form colCount=\"1\" [labelLocation]=\"showColumnXS ? 'left' : 'top'\">\r\n <dxi-item dataField=\"name\" [isRequired]=\"true\"></dxi-item>\r\n <dxi-item dataField=\"users\"></dxi-item>\r\n <dxi-item dataField=\"permissions\"></dxi-item>\r\n </dxo-form>\r\n </dxo-editing>\r\n\r\n <div *dxTemplate=\"let field of 'usersEditTemplate'\">\r\n <dx-tag-box valueExpr=\"id\" [displayExpr]=\"fullName\" [dataSource]=\"users\" [searchEnabled]=\"true\"\r\n [searchExpr]=\"fullName\" (onInitialized)=\"getGroupUser(field, $event)\"\r\n (onValueChanged)=\"setGroupUser(field, $event)\">\r\n </dx-tag-box>\r\n </div>\r\n <div *dxTemplate=\"let field of 'permissionsEditTemplate'\">\r\n <dx-list [dataSource]=\"permissions\" itemTemplate=\"rowTemplate\" [searchEnabled]=\"true\"\r\n [searchExpr]=\"['name', 'tag']\" [hoverStateEnabled]=\"hoverStatePermission\">\r\n <div *dxTemplate=\"let permission of 'rowTemplate'\">\r\n <dx-check-box [text]=\"permission.name\" (onInitialized)=\"getPermissionStatus(field, permission, $event)\"\r\n (onValueChanged)=\"checkBoxToggled(field, permission, $event)\">\r\n </dx-check-box>\r\n </div>\r\n </dx-list>\r\n </div>\r\n</cauca-dx-data-grid>","styles":[""]}]}],"members":{"showPrintButton":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":5}}]}],"hoverStatePermission":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ManagementGroupService"},{"__symbolic":"reference","name":"ManagementUserService"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","module":"@angular/cdk/layout","name":"BreakpointObserver","line":36,"character":28}]}],"ngOnInit":[{"__symbolic":"method"}],"fullName":[{"__symbolic":"method"}],"getGroupUser":[{"__symbolic":"method"}],"setGroupUser":[{"__symbolic":"method"}],"setGroupPermission":[{"__symbolic":"method"}],"getPermissionStatus":[{"__symbolic":"method"}],"checkBoxToggled":[{"__symbolic":"method"}],"onRowInserted":[{"__symbolic":"method"}],"onRowUpdated":[{"__symbolic":"method"}],"onRowRemoved":[{"__symbolic":"method"}],"onEditingStart":[{"__symbolic":"method"}],"onInitNewRow":[{"__symbolic":"method"}],"setPermissionStatus":[{"__symbolic":"method"}],"saveGroup":[{"__symbolic":"method"}],"removePermissionUndefined":[{"__symbolic":"method"}],"getGroups":[{"__symbolic":"method"}]}},"CaucaManagementUserComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"cauca-management-user","template":"<cauca-dx-data-grid\r\n keyExpr=\"id\"\r\n [dataSource]=\"users\"\r\n (onRowInserted)=\"onRowInserted($event)\"\r\n (onRowUpdated)=\"onRowUpdated($event)\"\r\n (onRowRemoved)=\"onRowRemoved($event)\">\r\n\r\n <dxi-column dataField=\"userName\" [caption]=\"'management.userName' | translate\">\r\n <dxi-validation-rule type=\"async\" [message]=\"'management.userNameAlreadyUsed' | translate\" [validationCallback]=\"userNameAlreadyUsedValidation\"></dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"isActive\" [caption]=\"'management.isActive' | translate\" [visible]=\"false\"></dxi-column>\r\n <dxi-column dataField=\"firstName\" [caption]=\"'management.firstName' | translate\"></dxi-column>\r\n <dxi-column dataField=\"lastName\" [caption]=\"'management.lastName' | translate\"></dxi-column>\r\n <dxi-column dataField=\"groups\" [caption]=\"'management.group' | translate\"></dxi-column>\r\n\r\n <dxo-editing mode=\"popup\" [allowAdding]=\"true\" [allowUpdating]=\"true\" [allowDeleting]=\"true\" [useIcons]=\"true\">\r\n <dxo-popup [showTitle]=\"true\" [title]=\"'management.group' | translate\"></dxo-popup>\r\n <dxo-form colCount=\"2\" [labelLocation]=\"showColumnXS ? 'left' : 'top'\">\r\n <dxi-item dataField=\"userName\" [isRequired]=\"true\"></dxi-item>\r\n <dxi-item dataField=\"isActive\"></dxi-item>\r\n <dxi-item dataField=\"firstName\"></dxi-item>\r\n <dxi-item dataField=\"lastName\"></dxi-item>\r\n <dxi-item dataField=\"group\"></dxi-item>\r\n </dxo-form>\r\n </dxo-editing>\r\n</cauca-dx-data-grid>\r\n","styles":[""]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ManagementUserService"},{"__symbolic":"reference","module":"@angular/cdk/layout","name":"BreakpointObserver","line":19,"character":28}]}],"ngOnInit":[{"__symbolic":"method"}],"onRowInserted":[{"__symbolic":"method"}],"onRowUpdated":[{"__symbolic":"method"}],"onRowRemoved":[{"__symbolic":"method"}],"saveGroup":[{"__symbolic":"method"}],"getUsers":[{"__symbolic":"method"}]}},"ManagementUserService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@cauca-911/core","name":"CaucaCoreService","line":14,"character":21},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":15,"character":24}]}],"getAll":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"getGroup":[{"__symbolic":"method"}],"addGroup":[{"__symbolic":"method"}],"deleteGroup":[{"__symbolic":"method"}],"addPermission":[{"__symbolic":"method"}],"deletePermission":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}],"hasExistingUserName":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ManagementGroupService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@cauca-911/core","name":"CaucaCoreService","line":13,"character":21},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":14,"character":22}]}],"getAll":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}],"hasExistingGroupName":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"UserModel":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}]}},"UserGroupModel":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}]}},"UserPermissionModel":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}]}},"GroupModel":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}]}},"GroupPermissionModel":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}]}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@cauca-911/core","name":"CaucaCoreService","line":14,"character":21},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":15,"character":22}]}],"getAll":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}}},"origins":{"CaucaManagementService":"./lib/cauca-management.service","CaucaManagementComponent":"./lib/cauca-management.component","CaucaManagementModule":"./lib/cauca-management.module","CaucaManagementGroupComponent":"./lib/cauca-management-group/cauca-management-group.component","CaucaManagementUserComponent":"./lib/cauca-management-user/cauca-management-user.component","ManagementUserService":"./lib/shared/services/management-user.service","ManagementGroupService":"./lib/shared/services/management-group.service","UserModel":"./lib/shared/models/user-model","UserGroupModel":"./lib/shared/models/user-group-model","UserPermissionModel":"./lib/shared/models/user-permission-model","GroupModel":"./lib/shared/models/group-model","GroupPermissionModel":"./lib/shared/models/group-permission-model","ɵa":"./lib/shared/services/management-permission.service"},"importAs":"@cauca-911/management"}
@@ -2,4 +2,5 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F1Y2EtOTExLW1hbmFnZW1lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY2F1Y2EtOTExL21hbmFnZW1lbnQvIiwic291cmNlcyI6WyJjYXVjYS05MTEtbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
5
+ export { ManagementPermissionService as ɵa } from './lib/shared/services/management-permission.service';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F1Y2EtOTExLW1hbmFnZW1lbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvY2F1Y2EtbWFuYWdlbWVudC9zcmMvIiwic291cmNlcyI6WyJjYXVjYS05MTEtbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQywyQkFBMkIsSUFBSSxFQUFFLEVBQUMsTUFBTSxxREFBcUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtNYW5hZ2VtZW50UGVybWlzc2lvblNlcnZpY2UgYXMgybVhfSBmcm9tICcuL2xpYi9zaGFyZWQvc2VydmljZXMvbWFuYWdlbWVudC1wZXJtaXNzaW9uLnNlcnZpY2UnOyJdfQ==