@cauca-911/management 20.2.0 → 20.2.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.
@@ -49,23 +49,23 @@ class CaucaManagementComponent {
49
49
  class ManagementGroupService {
50
50
  constructor() {
51
51
  this.http = inject(HttpClient);
52
- const coreService = inject(CaucaCoreService);
53
- this.config = coreService.getConfig();
52
+ this.baseUrl = inject(CaucaCoreService).getConfig().apiUrl;
53
+ this.baseUrlToUse = this.baseUrl.endsWith('api/') ? this.baseUrl : this.baseUrl + 'api/';
54
54
  }
55
55
  getAll() {
56
- return this.http.get(`${this.config.apiUrl}GroupManagement`);
56
+ return this.http.get(`${this.baseUrlToUse}GroupManagement`);
57
57
  }
58
58
  get(idGroup) {
59
- return this.http.get(`${this.config.apiUrl}GroupManagement/${idGroup}`);
59
+ return this.http.get(`${this.baseUrlToUse}GroupManagement/${idGroup}`);
60
60
  }
61
61
  save(group) {
62
- return this.http.post(`${this.config.apiUrl}GroupManagement`, group);
62
+ return this.http.post(`${this.baseUrlToUse}GroupManagement`, group);
63
63
  }
64
64
  delete(idGroup) {
65
- return this.http.delete(`${this.config.apiUrl}GroupManagement/${idGroup}`);
65
+ return this.http.delete(`${this.baseUrlToUse}GroupManagement/${idGroup}`);
66
66
  }
67
67
  hasExistingGroupName(group) {
68
- return this.http.post(`${this.config.apiUrl}GroupManagement/GroupNameAlreadyExist`, group);
68
+ return this.http.post(`${this.baseUrlToUse}GroupManagement/GroupNameAlreadyExist`, group);
69
69
  }
70
70
  static { this.ɵfac = function ManagementGroupService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ManagementGroupService)(); }; }
71
71
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ManagementGroupService, factory: ManagementGroupService.ɵfac, providedIn: 'root' }); }
@@ -75,43 +75,43 @@ class ManagementGroupService {
75
75
  args: [{
76
76
  providedIn: 'root'
77
77
  }]
78
- }], () => [], null); })();
78
+ }], null, null); })();
79
79
 
80
80
  class ManagementUserService {
81
81
  constructor() {
82
82
  this.http = inject(HttpClient);
83
- const coreService = inject(CaucaCoreService);
84
- this.config = coreService.getConfig();
83
+ this.baseUrl = inject(CaucaCoreService).getConfig().apiUrl;
84
+ this.baseUrlToUse = this.baseUrl.endsWith('api/') ? this.baseUrl : this.baseUrl + 'api/';
85
85
  }
86
86
  getAll() {
87
- return this.http.get(`${this.config.apiUrl}UserManagement`);
87
+ return this.http.get(`${this.baseUrlToUse}UserManagement`);
88
88
  }
89
89
  get(idUser) {
90
- return this.http.get(`${this.config.apiUrl}UserManagement/${idUser}`);
90
+ return this.http.get(`${this.baseUrlToUse}UserManagement/${idUser}`);
91
91
  }
92
92
  getGroup(idUser) {
93
- return this.http.get(`${this.config.apiUrl}UserManagement/${idUser}/groups`);
93
+ return this.http.get(`${this.baseUrlToUse}UserManagement/${idUser}/groups`);
94
94
  }
95
95
  addGroup(userGroup) {
96
- return this.http.post(`${this.config.apiUrl}UserManagement/group`, userGroup);
96
+ return this.http.post(`${this.baseUrlToUse}UserManagement/group`, userGroup);
97
97
  }
98
98
  deleteGroup(idUserGroup) {
99
- return this.http.delete(`${this.config.apiUrl}UserManagement/groups/${idUserGroup}`);
99
+ return this.http.delete(`${this.baseUrlToUse}UserManagement/groups/${idUserGroup}`);
100
100
  }
101
101
  addPermission(userPermission) {
102
- return this.http.post(`${this.config.apiUrl}UserManagement/permission`, userPermission);
102
+ return this.http.post(`${this.baseUrlToUse}UserManagement/permission`, userPermission);
103
103
  }
104
104
  deletePermission(idUserPermission) {
105
- return this.http.delete(`${this.config.apiUrl}UserManagement/groups/${idUserPermission}`);
105
+ return this.http.delete(`${this.baseUrlToUse}UserManagement/groups/${idUserPermission}`);
106
106
  }
107
107
  save(user) {
108
- return this.http.post(`${this.config.apiUrl}UserManagement`, user);
108
+ return this.http.post(`${this.baseUrlToUse}UserManagement`, user);
109
109
  }
110
110
  delete(idUser) {
111
- return this.http.delete(`${this.config.apiUrl}UserManagement/${idUser}`);
111
+ return this.http.delete(`${this.baseUrlToUse}UserManagement/${idUser}`);
112
112
  }
113
113
  hasExistingUserName(user) {
114
- return this.http.post(`${this.config.apiUrl}UserManagement/UserNameAlreadyExist`, user);
114
+ return this.http.post(`${this.baseUrlToUse}UserManagement/UserNameAlreadyExist`, user);
115
115
  }
116
116
  static { this.ɵfac = function ManagementUserService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ManagementUserService)(); }; }
117
117
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ManagementUserService, factory: ManagementUserService.ɵfac, providedIn: 'root' }); }
@@ -121,25 +121,25 @@ class ManagementUserService {
121
121
  args: [{
122
122
  providedIn: 'root'
123
123
  }]
124
- }], () => [], null); })();
124
+ }], null, null); })();
125
125
 
126
126
  class ManagementPermissionService {
127
127
  constructor() {
128
128
  this.http = inject(HttpClient);
129
- const coreService = inject(CaucaCoreService);
130
- this.config = coreService.getConfig();
129
+ this.baseUrl = inject(CaucaCoreService).getConfig().apiUrl;
130
+ this.baseUrlToUse = this.baseUrl.endsWith('api/') ? this.baseUrl : this.baseUrl + 'api/';
131
131
  }
132
132
  getAll() {
133
- return this.http.get(`${this.config.apiUrl}PermissionManagement`);
133
+ return this.http.get(`${this.baseUrlToUse}PermissionManagement`);
134
134
  }
135
135
  get(idPermission) {
136
- return this.http.get(`${this.config.apiUrl}PermissionManagement/${idPermission}`);
136
+ return this.http.get(`${this.baseUrlToUse}PermissionManagement/${idPermission}`);
137
137
  }
138
138
  save(permission) {
139
- return this.http.post(`${this.config.apiUrl}PermissionManagement`, permission);
139
+ return this.http.post(`${this.baseUrlToUse}PermissionManagement`, permission);
140
140
  }
141
141
  delete(idPermission) {
142
- return this.http.delete(`${this.config.apiUrl}PermissionManagement/${idPermission}`);
142
+ return this.http.delete(`${this.baseUrlToUse}PermissionManagement/${idPermission}`);
143
143
  }
144
144
  static { this.ɵfac = function ManagementPermissionService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ManagementPermissionService)(); }; }
145
145
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ManagementPermissionService, factory: ManagementPermissionService.ɵfac, providedIn: 'root' }); }
@@ -149,7 +149,7 @@ class ManagementPermissionService {
149
149
  args: [{
150
150
  providedIn: 'root'
151
151
  }]
152
- }], () => [], null); })();
152
+ }], null, null); })();
153
153
 
154
154
  const _c0 = () => ["name", "tag"];
155
155
  function CaucaManagementGroupComponent_div_20_Template(rf, ctx) { if (rf & 1) {
@@ -1 +1 @@
1
- {"version":3,"file":"cauca-911-management.mjs","sources":["../../../projects/cauca-management/src/lib/cauca-management.service.ts","../../../projects/cauca-management/src/lib/cauca-management.component.ts","../../../projects/cauca-management/src/lib/cauca-management.component.html","../../../projects/cauca-management/src/lib/shared/services/management-group.service.ts","../../../projects/cauca-management/src/lib/shared/services/management-user.service.ts","../../../projects/cauca-management/src/lib/shared/services/management-permission.service.ts","../../../projects/cauca-management/src/lib/cauca-management-group/cauca-management-group.component.html","../../../projects/cauca-management/src/lib/cauca-management-group/cauca-management-group.component.ts","../../../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-user/cauca-management-user.component.html","../../../projects/cauca-management/src/lib/cauca-management.module.ts","../../../projects/cauca-management/src/lib/shared/models/user-group-model.ts","../../../projects/cauca-management/src/lib/shared/models/user-permission-model.ts","../../../projects/cauca-management/src/lib/shared/models/group-model.ts","../../../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';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CaucaManagementService {\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'cauca-management',\n templateUrl: './cauca-management.component.html',\n styles: [],\n standalone: false\n})\nexport class CaucaManagementComponent {\n\n}\n","<div>{{'core.noGenericComponentOnThisLibrary' | translate}}</div>","import { Injectable, inject } 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 http = inject(HttpClient);\n\n private config: Configuration;\n\n public constructor() {\n const coreService = inject(CaucaCoreService);\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, inject } 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 protected http = inject(HttpClient);\n\n private config: Configuration;\n\n public constructor() {\n const coreService = inject(CaucaCoreService);\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, inject } 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 http = inject(HttpClient);\n\n private config: Configuration;\n\n public constructor() {\n const coreService = inject(CaucaCoreService);\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=\"assignableByAllUsers\" [caption]=\"'management.assignableByAllUsers' | translate\"\n dataType=\"boolean\" [visible]=\"showAssignableByAllUsers\">\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 <dxi-item dataField=\"assignableByAllUsers\" [visible]=\"showAssignableByAllUsers\"></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, inject } 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 standalone: false\n})\nexport class CaucaManagementGroupComponent implements OnInit {\n\n @Input()\n public showPrintButton: boolean = true;\n @Input()\n public hoverStatePermission = true;\n @Input()\n public showAssignableByAllUsers = true;\n\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 private groupUsers: any;\n private readonly managementGroupService = inject(ManagementGroupService);\n private readonly managementUserService = inject(ManagementUserService);\n private readonly managementPermissionService = inject(ManagementPermissionService);\n\n public constructor() {\n const breakpointObserver = inject(BreakpointObserver);\n\n breakpointObserver.observe(['(max-width: 1000px)']).subscribe((result: any) => {\n this.showColumn = !result.matches;\n });\n breakpointObserver.observe(['(max-width: 600px)']).subscribe((result: any) => {\n this.showColumnXS = !result.matches;\n });\n }\n\n public ngOnInit(): void {\n this.managementUserService.getAll<UserModel>().subscribe((data: UserModel[]) => {\n this.users = data;\n this.users.forEach((user: UserModel) => {\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: PermissionModel[]) => {\n const permissionIndex = permissions.findIndex((c: PermissionModel) => c.tag === 'CanAccessPermissions');\n if (permissionIndex !== -1) {\n permissions.splice(permissionIndex, 1);\n }\n permissions.sort((a: PermissionModel, b: PermissionModel) => {\n if (a.name < b.name) {\n return -1;\n }\n if (a.name > b.name) {\n return 1;\n }\n return 0;\n });\n this.permissions = permissions;\n });\n this.getGroups();\n }\n\n public fullName(data: any): string {\n if (!data) {\n return '';\n }\n\n return `${data.firstName} ${data.lastName}`;\n }\n\n public getGroupUser(field: any, e: any): void {\n const users: string[] = [];\n if (this.groupUsers) {\n this.groupUsers.forEach((user: any) => {\n users.push(user.idUser);\n });\n }\n e.component.option('value', users);\n }\n\n public setGroupUser(field: any, e: any): void {\n const groupUser: UserGroupModel[] = [];\n\n e.value.forEach((idUser: string) => {\n const groupIndex = (field.data.users || []).findIndex((g: any) => 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: any, e: any): void {\n const groupUser: UserGroupModel[] = [];\n\n e.value.forEach((idUser: string) => {\n groupUser.push({\n idUser,\n } as UserGroupModel);\n });\n\n field.setValue(JSON.parse(JSON.stringify(groupUser)));\n }\n\n public getPermissionStatus(field: any, permission: any, e: any): void {\n const groupPermission = (field.value || []).find((p: any) => 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: any, permission: any, e: any): 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: any): void {\n this.saveGroup(e.data as GroupModel);\n }\n\n public onRowUpdated(e: any): void {\n this.saveGroup(e.data as GroupModel);\n }\n\n public onRowRemoved(e: any): void {\n const group = (e.data as GroupModel);\n this.managementGroupService.delete(group.id).subscribe(() => {\n this.getGroups();\n });\n }\n\n public calculateUsersCellValue = (e: any): string => {\n const users = (e.users ? e.users as UserGroupModel[] : []);\n let usersNames: any[] = [];\n users.forEach((user: UserGroupModel) => {\n const userGroup = this.users.filter((u: UserModel) => 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: string, two: string) => (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: any): Promise<boolean> => this.managementGroupService.hasExistingGroupName(e.data).pipe(\n map((exist: boolean) => !exist)\n ).toPromise();\n\n private setPermissionStatus(field: any, permission: any, value: any): void {\n const groupPermissions = field.value || [];\n const groupIndex = groupPermissions.findIndex((p: GroupPermissionModel) => 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: any) => this.groups = data);\n }\n}\n","import { UserGroupModel } from './user-group-model';\nimport { UserPermissionModel } from './user-permission-model';\n\nexport class UserModel {\n public id: string;\n public userName = '';\n public firstName = '';\n public lastName = '';\n public password = '';\n public email = '';\n public isActive = true;\n public groups: UserGroupModel[];\n public permissions: UserPermissionModel[];\n public twoFactorAuthenticatorEnabled = false;\n}\n","import { Component, OnInit, inject } from '@angular/core';\nimport { UserModel } from '../shared/models/user-model';\nimport { ManagementUserService } from '../shared/services/management-user.service';\nimport { BreakpointObserver, BreakpointState } 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 standalone: false\n})\nexport class CaucaManagementUserComponent implements OnInit {\n\n public users: UserModel[] = [\n new UserModel()\n ];\n public showColumnXS = true;\n private readonly managementUserService = inject(ManagementUserService);\n\n public constructor() {\n const breakpointObserver = inject(BreakpointObserver);\n\n breakpointObserver.observe(['(max-width: 600px)']).subscribe((result: BreakpointState) => {\n this.showColumnXS = !result.matches;\n });\n }\n\n public ngOnInit(): void {\n this.getUsers();\n }\n\n public onRowInserted(e: any): void {\n this.saveGroup(e.data as UserModel);\n }\n\n public onRowUpdated(e: any): void {\n this.saveGroup(e.key as UserModel);\n }\n\n public onRowRemoved(e: any): void {\n const user = (e.data as UserModel);\n this.managementUserService.delete(user.id).subscribe((_data: any) => {\n this.getUsers();\n });\n }\n\n public userNameAlreadyUsedValidation = (e): Promise<boolean> => this.managementUserService.hasExistingUserName(e.data).pipe(\n map((exist: boolean) => !exist)\n ).toPromise();\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: any) => this.users = data);\n }\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 { DxCheckBoxModule } from 'devextreme-angular/ui/check-box';\nimport { DxListModule } from 'devextreme-angular/ui/list';\nimport { DxTagBoxModule } from 'devextreme-angular/ui/tag-box';\nimport { CaucaCoreForChildModule } 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';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [\n CaucaManagementComponent,\n CaucaManagementGroupComponent,\n CaucaManagementUserComponent\n ],\n imports: [\n CommonModule,\n DxCheckBoxModule,\n DxListModule,\n DxTagBoxModule,\n CaucaCoreForChildModule,\n CaucaDevextremeModule,\n ],\n exports: [\n CaucaManagementComponent,\n CaucaManagementUserComponent,\n CaucaManagementGroupComponent,\n ]\n})\nexport class CaucaManagementModule { }\n","export class UserGroupModel {\n public idUserGroup = '';\n public idGroup = '';\n public idUser = '';\n}\n","export class UserPermissionModel {\n public idUserPermission = '';\n public isAllowed = false;\n public idUser = '';\n public idModulePermission = '';\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 public assignableByAllUsers: boolean;\n}\n","export class GroupPermissionModel {\n public idGroupPermission = '';\n public isAllowed = false;\n public idGroup = '';\n public idModulePermission = '';\n}\n","/*\n * Public API Surface of cauca-management\n */\n\nexport * from './lib/cauca-management.service';\nexport * from './lib/cauca-management.component';\nexport * from './lib/cauca-management.module';\nexport * from './lib/cauca-management-group/cauca-management-group.component';\nexport * from './lib/cauca-management-user/cauca-management-user.component';\n\nexport { ManagementUserService } from './lib/shared/services/management-user.service';\nexport { ManagementGroupService } from './lib/shared/services/management-group.service';\nexport { UserModel } from './lib/shared/models/user-model';\nexport { UserGroupModel } from './lib/shared/models/user-group-model';\nexport { UserPermissionModel } from './lib/shared/models/user-permission-model';\nexport { GroupModel } from './lib/shared/models/group-model';\nexport { GroupPermissionModel } from './lib/shared/models/group-permission-model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cauca-911-management.mjs","sources":["../../../projects/cauca-management/src/lib/cauca-management.service.ts","../../../projects/cauca-management/src/lib/cauca-management.component.ts","../../../projects/cauca-management/src/lib/cauca-management.component.html","../../../projects/cauca-management/src/lib/shared/services/management-group.service.ts","../../../projects/cauca-management/src/lib/shared/services/management-user.service.ts","../../../projects/cauca-management/src/lib/shared/services/management-permission.service.ts","../../../projects/cauca-management/src/lib/cauca-management-group/cauca-management-group.component.html","../../../projects/cauca-management/src/lib/cauca-management-group/cauca-management-group.component.ts","../../../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-user/cauca-management-user.component.html","../../../projects/cauca-management/src/lib/cauca-management.module.ts","../../../projects/cauca-management/src/lib/shared/models/user-group-model.ts","../../../projects/cauca-management/src/lib/shared/models/user-permission-model.ts","../../../projects/cauca-management/src/lib/shared/models/group-model.ts","../../../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';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CaucaManagementService {\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'cauca-management',\n templateUrl: './cauca-management.component.html',\n styles: [],\n standalone: false\n})\nexport class CaucaManagementComponent {\n\n}\n","<div>{{'core.noGenericComponentOnThisLibrary' | translate}}</div>","import { Injectable, inject } 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 readonly http = inject(HttpClient);\n private readonly baseUrl = inject(CaucaCoreService).getConfig().apiUrl;\n private readonly baseUrlToUse = this.baseUrl.endsWith('api/') ? this.baseUrl : this.baseUrl + 'api/';\n\n public getAll(): Observable<GroupModel[]> {\n return this.http.get<GroupModel[]>(`${this.baseUrlToUse}GroupManagement`);\n }\n\n public get(idGroup: string): Observable<GroupModel> {\n return this.http.get<GroupModel>(`${this.baseUrlToUse}GroupManagement/${idGroup}`);\n }\n\n public save(group: GroupModel): Observable<any> {\n return this.http.post(`${this.baseUrlToUse}GroupManagement`, group);\n }\n\n public delete(idGroup: string): Observable<any> {\n return this.http.delete(`${this.baseUrlToUse}GroupManagement/${idGroup}`);\n }\n\n public hasExistingGroupName(group: GroupModel): Observable<boolean> {\n return this.http.post<boolean>(`${this.baseUrlToUse}GroupManagement/GroupNameAlreadyExist`, group);\n }\n}\n","import { Injectable, inject } 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 protected readonly http = inject(HttpClient);\n private readonly baseUrl = inject(CaucaCoreService).getConfig().apiUrl;\n private readonly baseUrlToUse = this.baseUrl.endsWith('api/') ? this.baseUrl : this.baseUrl + 'api/';\n\n public getAll<TUser>(): Observable<TUser[]> {\n return this.http.get<TUser[]>(`${this.baseUrlToUse}UserManagement`);\n }\n\n public get<TUser>(idUser: string): Observable<TUser> {\n return this.http.get<TUser>(`${this.baseUrlToUse}UserManagement/${idUser}`);\n }\n\n public getGroup(idUser: string): Observable<any> {\n return this.http.get(`${this.baseUrlToUse}UserManagement/${idUser}/groups`);\n }\n\n public addGroup(userGroup: UserGroupModel): Observable<any> {\n return this.http.post(`${this.baseUrlToUse}UserManagement/group`, userGroup);\n }\n\n public deleteGroup(idUserGroup: string): Observable<any> {\n return this.http.delete(`${this.baseUrlToUse}UserManagement/groups/${idUserGroup}`);\n }\n\n public addPermission(userPermission: UserPermissionModel): Observable<any> {\n return this.http.post(`${this.baseUrlToUse}UserManagement/permission`, userPermission);\n }\n\n public deletePermission(idUserPermission: string): Observable<any> {\n return this.http.delete(`${this.baseUrlToUse}UserManagement/groups/${idUserPermission}`);\n }\n\n public save<TUser>(user: TUser): Observable<any> {\n return this.http.post(`${this.baseUrlToUse}UserManagement`, user);\n }\n\n public delete(idUser: string): Observable<any> {\n return this.http.delete(`${this.baseUrlToUse}UserManagement/${idUser}`);\n }\n\n public hasExistingUserName<TUser>(user: TUser): Observable<boolean> {\n return this.http.post<boolean>(`${this.baseUrlToUse}UserManagement/UserNameAlreadyExist`, user);\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { CaucaCoreService } from '@cauca-911/core';\nimport { PermissionModel } from '../models/permission-model';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ManagementPermissionService {\n private readonly http = inject(HttpClient);\n private readonly baseUrl = inject(CaucaCoreService).getConfig().apiUrl;\n private readonly baseUrlToUse = this.baseUrl.endsWith('api/') ? this.baseUrl : this.baseUrl + 'api/';\n\n public getAll(): Observable<PermissionModel[]> {\n return this.http.get<PermissionModel[]>(`${this.baseUrlToUse}PermissionManagement`);\n }\n\n public get(idPermission: string): Observable<PermissionModel> {\n return this.http.get<PermissionModel>(`${this.baseUrlToUse}PermissionManagement/${idPermission}`);\n }\n\n public save(permission: PermissionModel): Observable<any> {\n return this.http.post(`${this.baseUrlToUse}PermissionManagement`, permission);\n }\n\n public delete(idPermission: string): Observable<any> {\n return this.http.delete(`${this.baseUrlToUse}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=\"assignableByAllUsers\" [caption]=\"'management.assignableByAllUsers' | translate\"\n dataType=\"boolean\" [visible]=\"showAssignableByAllUsers\">\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 <dxi-item dataField=\"assignableByAllUsers\" [visible]=\"showAssignableByAllUsers\"></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, inject } 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 standalone: false\n})\nexport class CaucaManagementGroupComponent implements OnInit {\n\n @Input()\n public showPrintButton: boolean = true;\n @Input()\n public hoverStatePermission = true;\n @Input()\n public showAssignableByAllUsers = true;\n\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 private groupUsers: any;\n private readonly managementGroupService = inject(ManagementGroupService);\n private readonly managementUserService = inject(ManagementUserService);\n private readonly managementPermissionService = inject(ManagementPermissionService);\n\n public constructor() {\n const breakpointObserver = inject(BreakpointObserver);\n\n breakpointObserver.observe(['(max-width: 1000px)']).subscribe((result: any) => {\n this.showColumn = !result.matches;\n });\n breakpointObserver.observe(['(max-width: 600px)']).subscribe((result: any) => {\n this.showColumnXS = !result.matches;\n });\n }\n\n public ngOnInit(): void {\n this.managementUserService.getAll<UserModel>().subscribe((data: UserModel[]) => {\n this.users = data;\n this.users.forEach((user: UserModel) => {\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: PermissionModel[]) => {\n const permissionIndex = permissions.findIndex((c: PermissionModel) => c.tag === 'CanAccessPermissions');\n if (permissionIndex !== -1) {\n permissions.splice(permissionIndex, 1);\n }\n permissions.sort((a: PermissionModel, b: PermissionModel) => {\n if (a.name < b.name) {\n return -1;\n }\n if (a.name > b.name) {\n return 1;\n }\n return 0;\n });\n this.permissions = permissions;\n });\n this.getGroups();\n }\n\n public fullName(data: any): string {\n if (!data) {\n return '';\n }\n\n return `${data.firstName} ${data.lastName}`;\n }\n\n public getGroupUser(field: any, e: any): void {\n const users: string[] = [];\n if (this.groupUsers) {\n this.groupUsers.forEach((user: any) => {\n users.push(user.idUser);\n });\n }\n e.component.option('value', users);\n }\n\n public setGroupUser(field: any, e: any): void {\n const groupUser: UserGroupModel[] = [];\n\n e.value.forEach((idUser: string) => {\n const groupIndex = (field.data.users || []).findIndex((g: any) => 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: any, e: any): void {\n const groupUser: UserGroupModel[] = [];\n\n e.value.forEach((idUser: string) => {\n groupUser.push({\n idUser,\n } as UserGroupModel);\n });\n\n field.setValue(JSON.parse(JSON.stringify(groupUser)));\n }\n\n public getPermissionStatus(field: any, permission: any, e: any): void {\n const groupPermission = (field.value || []).find((p: any) => 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: any, permission: any, e: any): 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: any): void {\n this.saveGroup(e.data as GroupModel);\n }\n\n public onRowUpdated(e: any): void {\n this.saveGroup(e.data as GroupModel);\n }\n\n public onRowRemoved(e: any): void {\n const group = (e.data as GroupModel);\n this.managementGroupService.delete(group.id).subscribe(() => {\n this.getGroups();\n });\n }\n\n public calculateUsersCellValue = (e: any): string => {\n const users = (e.users ? e.users as UserGroupModel[] : []);\n let usersNames: any[] = [];\n users.forEach((user: UserGroupModel) => {\n const userGroup = this.users.filter((u: UserModel) => 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: string, two: string) => (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: any): Promise<boolean> => this.managementGroupService.hasExistingGroupName(e.data).pipe(\n map((exist: boolean) => !exist)\n ).toPromise();\n\n private setPermissionStatus(field: any, permission: any, value: any): void {\n const groupPermissions = field.value || [];\n const groupIndex = groupPermissions.findIndex((p: GroupPermissionModel) => 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: any) => this.groups = data);\n }\n}\n","import { UserGroupModel } from './user-group-model';\nimport { UserPermissionModel } from './user-permission-model';\n\nexport class UserModel {\n public id: string;\n public userName = '';\n public firstName = '';\n public lastName = '';\n public password = '';\n public email = '';\n public isActive = true;\n public groups: UserGroupModel[];\n public permissions: UserPermissionModel[];\n public twoFactorAuthenticatorEnabled = false;\n}\n","import { Component, OnInit, inject } from '@angular/core';\nimport { UserModel } from '../shared/models/user-model';\nimport { ManagementUserService } from '../shared/services/management-user.service';\nimport { BreakpointObserver, BreakpointState } 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 standalone: false\n})\nexport class CaucaManagementUserComponent implements OnInit {\n\n public users: UserModel[] = [\n new UserModel()\n ];\n public showColumnXS = true;\n private readonly managementUserService = inject(ManagementUserService);\n\n public constructor() {\n const breakpointObserver = inject(BreakpointObserver);\n\n breakpointObserver.observe(['(max-width: 600px)']).subscribe((result: BreakpointState) => {\n this.showColumnXS = !result.matches;\n });\n }\n\n public ngOnInit(): void {\n this.getUsers();\n }\n\n public onRowInserted(e: any): void {\n this.saveGroup(e.data as UserModel);\n }\n\n public onRowUpdated(e: any): void {\n this.saveGroup(e.key as UserModel);\n }\n\n public onRowRemoved(e: any): void {\n const user = (e.data as UserModel);\n this.managementUserService.delete(user.id).subscribe((_data: any) => {\n this.getUsers();\n });\n }\n\n public userNameAlreadyUsedValidation = (e): Promise<boolean> => this.managementUserService.hasExistingUserName(e.data).pipe(\n map((exist: boolean) => !exist)\n ).toPromise();\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: any) => this.users = data);\n }\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 { DxCheckBoxModule } from 'devextreme-angular/ui/check-box';\nimport { DxListModule } from 'devextreme-angular/ui/list';\nimport { DxTagBoxModule } from 'devextreme-angular/ui/tag-box';\nimport { CaucaCoreForChildModule } 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';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [\n CaucaManagementComponent,\n CaucaManagementGroupComponent,\n CaucaManagementUserComponent\n ],\n imports: [\n CommonModule,\n DxCheckBoxModule,\n DxListModule,\n DxTagBoxModule,\n CaucaCoreForChildModule,\n CaucaDevextremeModule,\n ],\n exports: [\n CaucaManagementComponent,\n CaucaManagementUserComponent,\n CaucaManagementGroupComponent,\n ]\n})\nexport class CaucaManagementModule { }\n","export class UserGroupModel {\n public idUserGroup = '';\n public idGroup = '';\n public idUser = '';\n}\n","export class UserPermissionModel {\n public idUserPermission = '';\n public isAllowed = false;\n public idUser = '';\n public idModulePermission = '';\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 public assignableByAllUsers: boolean;\n}\n","export class GroupPermissionModel {\n public idGroupPermission = '';\n public isAllowed = false;\n public idGroup = '';\n public idModulePermission = '';\n}\n","/*\n * Public API Surface of cauca-management\n */\n\nexport * from './lib/cauca-management.service';\nexport * from './lib/cauca-management.component';\nexport * from './lib/cauca-management.module';\nexport * from './lib/cauca-management-group/cauca-management-group.component';\nexport * from './lib/cauca-management-user/cauca-management-user.component';\n\nexport { ManagementUserService } from './lib/shared/services/management-user.service';\nexport { ManagementGroupService } from './lib/shared/services/management-group.service';\nexport { UserModel } from './lib/shared/models/user-model';\nexport { UserGroupModel } from './lib/shared/models/user-group-model';\nexport { UserPermissionModel } from './lib/shared/models/user-permission-model';\nexport { GroupModel } from './lib/shared/models/group-model';\nexport { GroupPermissionModel } from './lib/shared/models/group-permission-model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -128,9 +128,9 @@ declare class CaucaManagementModule {
128
128
  }
129
129
 
130
130
  declare class ManagementUserService {
131
- protected http: HttpClient;
132
- private config;
133
- constructor();
131
+ protected readonly http: HttpClient;
132
+ private readonly baseUrl;
133
+ private readonly baseUrlToUse;
134
134
  getAll<TUser>(): Observable<TUser[]>;
135
135
  get<TUser>(idUser: string): Observable<TUser>;
136
136
  getGroup(idUser: string): Observable<any>;
@@ -146,9 +146,9 @@ declare class ManagementUserService {
146
146
  }
147
147
 
148
148
  declare class ManagementGroupService {
149
- private http;
150
- private config;
151
- constructor();
149
+ private readonly http;
150
+ private readonly baseUrl;
151
+ private readonly baseUrlToUse;
152
152
  getAll(): Observable<GroupModel[]>;
153
153
  get(idGroup: string): Observable<GroupModel>;
154
154
  save(group: GroupModel): Observable<any>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cauca-911/management",
3
- "version": "20.2.0",
3
+ "version": "20.2.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=20.2.1",
6
6
  "@angular/core": ">=20.2.1",