@ieeesa-npm/groups 0.7.2 → 0.7.3

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 (37) hide show
  1. package/esm2022/lib/assets/constants.json +51 -10
  2. package/esm2022/lib/assets/form-validations.mjs +4 -1
  3. package/esm2022/lib/components/add-user-roster/add-user-roster.component.mjs +259 -22
  4. package/esm2022/lib/components/edit-user-roles/edit-user-roles.component.mjs +267 -33
  5. package/esm2022/lib/components/view-roster/view-roster.component.mjs +441 -95
  6. package/esm2022/lib/groups.component.mjs +3 -3
  7. package/esm2022/lib/models/add-or-edit-user-group.model.mjs +1 -1
  8. package/esm2022/lib/models/classification.model.mjs +2 -0
  9. package/esm2022/lib/models/filter-type.model.mjs +8 -0
  10. package/esm2022/lib/models/group-types.model.mjs +1 -1
  11. package/esm2022/lib/models/group-user-info.model.mjs +1 -1
  12. package/esm2022/lib/models/member-type.model.mjs +2 -0
  13. package/esm2022/lib/models/organization.model.mjs +2 -0
  14. package/esm2022/lib/models/roster-type.model.mjs +7 -0
  15. package/esm2022/lib/models/table-column-schema-user-group.model.mjs +12 -0
  16. package/esm2022/lib/models/user.model.mjs +1 -1
  17. package/esm2022/lib/services/groups.service.mjs +83 -14
  18. package/esm2022/public-api.mjs +7 -1
  19. package/fesm2022/ieeesa-npm-groups.mjs +1118 -169
  20. package/fesm2022/ieeesa-npm-groups.mjs.map +1 -1
  21. package/lib/assets/form-validations.d.ts +2 -0
  22. package/lib/components/add-user-roster/add-user-roster.component.d.ts +58 -1
  23. package/lib/components/edit-user-roles/edit-user-roles.component.d.ts +64 -11
  24. package/lib/components/view-roster/view-roster.component.d.ts +61 -8
  25. package/lib/models/add-or-edit-user-group.model.d.ts +24 -8
  26. package/lib/models/classification.model.d.ts +10 -0
  27. package/lib/models/filter-type.model.d.ts +5 -0
  28. package/lib/models/group-types.model.d.ts +1 -0
  29. package/lib/models/group-user-info.model.d.ts +3 -0
  30. package/lib/models/member-type.model.d.ts +10 -0
  31. package/lib/models/organization.model.d.ts +9 -0
  32. package/lib/models/roster-type.model.d.ts +4 -0
  33. package/lib/models/table-column-schema-user-group.model.d.ts +9 -0
  34. package/lib/models/user.model.d.ts +20 -5
  35. package/lib/services/groups.service.d.ts +67 -27
  36. package/package.json +3 -3
  37. package/public-api.d.ts +6 -0
@@ -5,15 +5,20 @@ import { AlertsService, HttpService } from '@ieeesa-npm/utility';
5
5
  import { GetGroupResponse, GetGroupsPayload } from '../models/view-group.model';
6
6
  import { DeleteGroupPayload } from '../models/delete-group.model';
7
7
  import { GroupInfo } from '../models/group-info.model';
8
- import { SearchUsersPayload, FilterUsersByRolesPayload, GetGroupUsersResponse, User } from '../models/user.model';
8
+ import { SearchUsersPayload, FilterUsersPayload, GetGroupUsersResponse, User } from '../models/user.model';
9
9
  import { CheckboxOption } from '@ieeesa-npm/presentation';
10
10
  import { EditGroupPayload } from '../models/edit-group.model';
11
11
  import { GroupFunctionType } from '../models/group-function-type.model';
12
12
  import { RosterFunctionType } from '../models/roster-function-type.model';
13
13
  import { GroupUserInfo } from '../models/group-user-info.model';
14
- import { AddOrEditUserPayload, AddOrEditGroupUserDetailsResponse } from '../models/add-or-edit-user-group.model';
14
+ import { AddOrEditUserPayload, AddOrEditGroupUserDetailsResponse, AddOrEditUserIndividualRosterPayload } from '../models/add-or-edit-user-group.model';
15
15
  import { DeleteUserGroupPayload } from '../models/delete-user-group.model';
16
16
  import { GetUserDetailsPayload, SearchUserByEmailResponse } from '../models/add-new-user.model';
17
+ import { OrganizationResponse } from '../models/organization.model';
18
+ import { MemberTypeResponse } from '../models/member-type.model';
19
+ import { ClassificationResponse } from '../models/classification.model';
20
+ import { GroupRosterType } from '../models/roster-type.model';
21
+ import { FormControlStatus } from '@angular/forms';
17
22
  import { GroupPermission } from '../models/group-permissions.model';
18
23
  import { PermissionType } from '../models/permission-type.model';
19
24
  import { UserPermissionsService } from './user-permissions.service';
@@ -28,17 +33,13 @@ export declare class GroupsService {
28
33
  alertService: AlertsService;
29
34
  groupsText: {
30
35
  ER1000: string;
36
+ ER1001: string;
31
37
  "1001": string;
32
38
  "1002": string;
33
39
  "1003": string;
34
40
  "1004": string;
35
41
  "1005": string;
36
- "1006": string; /**
37
- * Updates group form data to server using HttpService.
38
- * @param {EditGroupPayload} editGroupPayload -edit group form data which includes group name, short name, scope.
39
- * @return {Observable<EditGroupPayload>} -returns edit group API response (success or error) as an observable.
40
- * @memberof GroupsService
41
- */
42
+ "1006": string;
42
43
  "1007": string;
43
44
  "1008": string;
44
45
  "1009": string;
@@ -48,6 +49,11 @@ export declare class GroupsService {
48
49
  "1013": string;
49
50
  "1014": string;
50
51
  "1015": string;
52
+ /**
53
+ * Returns the selected group info.
54
+ * @return {(GroupInfo | undefined)} -group info.
55
+ * @memberof GroupsService
56
+ */
51
57
  "1016": string;
52
58
  "1017": string;
53
59
  "1018": string;
@@ -57,12 +63,7 @@ export declare class GroupsService {
57
63
  "1022": string;
58
64
  "1023": string;
59
65
  "1024": string;
60
- "1025": string; /**
61
- * Sets selected group info.
62
- * @param {(GroupInfo | undefined)} selectedGroupInfo -selected group info.
63
- * @param {(GroupInfo | undefined)} [selectedGroupParentInfo] -selected parent group info.
64
- * @memberof GroupsService
65
- */
66
+ "1025": string;
66
67
  "1026": string;
67
68
  "1027": string;
68
69
  "1028": string;
@@ -73,13 +74,22 @@ export declare class GroupsService {
73
74
  "1033": string;
74
75
  "1034": string;
75
76
  "2001": string;
76
- "2002": string; /**
77
- * Returns the selected group info.
78
- * @return {(GroupInfo | undefined)} -group info.
79
- * @memberof GroupsService
80
- */
77
+ "2002": string;
81
78
  "2010": string;
82
79
  "2011": string;
80
+ "20l2": string;
81
+ "2013": string;
82
+ "2014": string;
83
+ "2015": string;
84
+ "2016": string;
85
+ "2017": string;
86
+ "2018": string;
87
+ "2019": string;
88
+ "2020": string;
89
+ "2021": string;
90
+ "2022": string;
91
+ "2023": string;
92
+ "3004": string;
83
93
  };
84
94
  apiBaseUrl: string;
85
95
  userPermission: any;
@@ -181,14 +191,14 @@ export declare class GroupsService {
181
191
  * @return {Observable<GetGroupUsersResponse>}
182
192
  * @memberof GroupsService
183
193
  */
184
- getGroupUsers(groupId: string): Observable<GetGroupUsersResponse>;
194
+ getGroupUsers(groupId: string, sortColumn: string, sortDirection: boolean): Observable<GetGroupUsersResponse>;
185
195
  /**
186
196
  * Gets the group users based on the filtered roles.
187
- * @param {FilterUsersByRolesPayload} payload
197
+ * @param {FilterUsersPayload} payload
188
198
  * @return {Observable<GetGroupUsersResponse>}
189
199
  * @memberof GroupsService
190
200
  */
191
- getGroupUsersByRoles(payload: FilterUsersByRolesPayload): Observable<GetGroupUsersResponse>;
201
+ getGroupUsersByRoles(payload: FilterUsersPayload): Observable<GetGroupUsersResponse>;
192
202
  /**
193
203
  * Gets the group users based on searched name or email
194
204
  * @param {SearchUsersPayload} payload
@@ -203,6 +213,18 @@ export declare class GroupsService {
203
213
  * @memberof GroupsService
204
214
  */
205
215
  getGroupTypeRoles(groupTypeId: string): Observable<CheckboxOption[]>;
216
+ /**
217
+ * Fetches the classifications master data from configuration and returns.
218
+ * @return {Observable<ClassificationResponse>}
219
+ * @memberof GroupsService
220
+ */
221
+ getClassifications(): Observable<ClassificationResponse>;
222
+ /**
223
+ * Fetches the member types master data from configuration and returns.
224
+ * @return {Observable<MemberTypeResponse>}
225
+ * @memberof GroupsService
226
+ */
227
+ getMemberTypes(): Observable<MemberTypeResponse>;
206
228
  /**
207
229
  * Concatenates the group users assigned roles name separated by comma as string and returns the group users in an array.
208
230
  * @param {GetGroupUsersResponse} response
@@ -233,11 +255,13 @@ export declare class GroupsService {
233
255
  getGroupUserDetails(payload: GetUserDetailsPayload): Observable<AddOrEditGroupUserDetailsResponse>;
234
256
  /**
235
257
  * Posts add new user form data to the API for the selected group and returns the success or failure response.
236
- * @param {AddOrEditUserPayload} AddOrEditUserPayload
258
+ * @param {(AddOrEditUserPayload
259
+ * | AddOrEditUserIndividualRosterPayload)} AddOrEditUserPayload
260
+ * @param {GroupRosterType} groupRosterType
237
261
  * @return {Observable<AddOrEditGroupUserDetailsResponse>}
238
262
  * @memberof GroupsService
239
263
  */
240
- addNewGroupUser(AddOrEditUserPayload: AddOrEditUserPayload): Observable<AddOrEditGroupUserDetailsResponse>;
264
+ addNewGroupUser(AddOrEditUserPayload: AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload, groupRosterType: GroupRosterType): Observable<AddOrEditGroupUserDetailsResponse>;
241
265
  /**
242
266
  * Sets the loaded group type user roles
243
267
  * @param {CheckboxOption[]} userRoles
@@ -263,12 +287,12 @@ export declare class GroupsService {
263
287
  */
264
288
  getSelectedUserInfo(): GroupUserInfo;
265
289
  /**
266
- * Updates group user roles to server using HttpService.
267
- * @param {AddOrEditUserPayload} payload
290
+ * Updates group user roles and other details to server using HttpService.
291
+ * @param {(AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload)} payload
268
292
  * @return {Observable<AddOrEditGroupUserDetailsResponse>}
269
293
  * @memberof GroupsService
270
294
  */
271
- editGroupsUserRole(payload: AddOrEditUserPayload): Observable<AddOrEditGroupUserDetailsResponse>;
295
+ editGroupsUserRole(payload: AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload): Observable<AddOrEditGroupUserDetailsResponse>;
272
296
  /**
273
297
  * Sets roster function type.
274
298
  * @param {RosterFunctionType} rosterFunctionType
@@ -319,12 +343,28 @@ export declare class GroupsService {
319
343
  * @memberof GroupsService
320
344
  */
321
345
  getLoadedGroupTypes(): GroupTypeConfiguration[];
346
+ /**
347
+ *
348
+ * @param {string} orgName
349
+ * @return {Observable<OrganizationResponse>}
350
+ * @memberof GroupsService
351
+ */
352
+ getOrganizations(orgName: string): Observable<OrganizationResponse>;
322
353
  /**
323
354
  * Returns the group type configuration Business rule for the selected group.
324
355
  * @return {(BusinessRule | undefined)}
325
356
  * @memberof GroupsService
326
357
  */
327
358
  getBusinessRuleOfSelectedGroup(): BusinessRule | undefined;
359
+ /**
360
+ * Enables or disables the form submit button based on passed parameters.
361
+ * @param {GroupRosterType} groupRosterType
362
+ * @param {FormControlStatus} formStatus
363
+ * @param {string[]} selectedUserRoles
364
+ * @return {boolean}
365
+ * @memberof GroupsService
366
+ */
367
+ isSubmitButtonDisabled(groupRosterType: GroupRosterType, formStatus: FormControlStatus, selectedUserRoles: string[]): boolean;
328
368
  static ɵfac: i0.ɵɵFactoryDeclaration<GroupsService, never>;
329
369
  static ɵprov: i0.ɵɵInjectableDeclaration<GroupsService>;
330
370
  }
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@ieeesa-npm/groups",
3
- "version": "0.7.2",
3
+ "version": "0.7.3",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^16.1.0",
6
6
  "@angular/core": "^16.1.0",
7
- "@ieeesa-npm/presentation": "^0.8.7",
7
+ "@ieeesa-npm/presentation": "^0.8.8",
8
8
  "@ieeesa-npm/shared-styles": "^0.2.1",
9
- "@ieeesa-npm/utility": "^0.7.9"
9
+ "@ieeesa-npm/utility": "^0.8.0"
10
10
  },
11
11
  "dependencies": {
12
12
  "tslib": "^2.3.0"
package/public-api.d.ts CHANGED
@@ -14,6 +14,12 @@ export * from './lib/models/delete-group.model';
14
14
  export * from './lib/models/group-user-info.model';
15
15
  export * from './lib/models/add-or-edit-user-group.model';
16
16
  export * from './lib/models/roster-function-type.model';
17
+ export * from './lib/models/classification.model';
18
+ export * from './lib/models/filter-type.model';
19
+ export * from './lib/models/organization.model';
20
+ export * from './lib/models/member-type.model';
21
+ export * from './lib/models/roster-type.model';
22
+ export * from './lib/models/table-column-schema-user-group.model';
17
23
  export * from './lib/services/groups.service';
18
24
  export * from './lib/assets/form-validations';
19
25
  export * from './lib/groups.module';