@ieeesa-npm/groups 0.7.2 → 0.7.4

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 +275 -33
  5. package/esm2022/lib/components/view-roster/view-roster.component.mjs +442 -96
  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 +87 -14
  18. package/esm2022/public-api.mjs +7 -1
  19. package/fesm2022/ieeesa-npm-groups.mjs +1130 -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 -28
  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;
@@ -47,7 +48,11 @@ export declare class GroupsService {
47
48
  "1012": string;
48
49
  "1013": string;
49
50
  "1014": string;
50
- "1015": string;
51
+ "1015": string; /**
52
+ * Returns the selected group info.
53
+ * @return {(GroupInfo | undefined)} -group info.
54
+ * @memberof GroupsService
55
+ */
51
56
  "1016": string;
52
57
  "1017": string;
53
58
  "1018": string;
@@ -57,12 +62,7 @@ export declare class GroupsService {
57
62
  "1022": string;
58
63
  "1023": string;
59
64
  "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
- */
65
+ "1025": string;
66
66
  "1026": string;
67
67
  "1027": string;
68
68
  "1028": string;
@@ -73,13 +73,22 @@ export declare class GroupsService {
73
73
  "1033": string;
74
74
  "1034": string;
75
75
  "2001": string;
76
- "2002": string; /**
77
- * Returns the selected group info.
78
- * @return {(GroupInfo | undefined)} -group info.
79
- * @memberof GroupsService
80
- */
76
+ "2002": string;
81
77
  "2010": string;
82
78
  "2011": string;
79
+ "20l2": string;
80
+ "2013": string;
81
+ "2014": string;
82
+ "2015": string;
83
+ "2016": string;
84
+ "2017": string;
85
+ "2018": string;
86
+ "2019": string;
87
+ "2020": string;
88
+ "2021": string;
89
+ "2022": string;
90
+ "2023": string;
91
+ "3004": string;
83
92
  };
84
93
  apiBaseUrl: string;
85
94
  userPermission: any;
@@ -181,14 +190,14 @@ export declare class GroupsService {
181
190
  * @return {Observable<GetGroupUsersResponse>}
182
191
  * @memberof GroupsService
183
192
  */
184
- getGroupUsers(groupId: string): Observable<GetGroupUsersResponse>;
193
+ getGroupUsers(groupId: string, sortColumn: string, sortDirection: boolean): Observable<GetGroupUsersResponse>;
185
194
  /**
186
195
  * Gets the group users based on the filtered roles.
187
- * @param {FilterUsersByRolesPayload} payload
196
+ * @param {FilterUsersPayload} payload
188
197
  * @return {Observable<GetGroupUsersResponse>}
189
198
  * @memberof GroupsService
190
199
  */
191
- getGroupUsersByRoles(payload: FilterUsersByRolesPayload): Observable<GetGroupUsersResponse>;
200
+ getGroupUsersByRoles(payload: FilterUsersPayload): Observable<GetGroupUsersResponse>;
192
201
  /**
193
202
  * Gets the group users based on searched name or email
194
203
  * @param {SearchUsersPayload} payload
@@ -203,6 +212,18 @@ export declare class GroupsService {
203
212
  * @memberof GroupsService
204
213
  */
205
214
  getGroupTypeRoles(groupTypeId: string): Observable<CheckboxOption[]>;
215
+ /**
216
+ * Fetches the classifications master data from configuration and returns.
217
+ * @return {Observable<ClassificationResponse>}
218
+ * @memberof GroupsService
219
+ */
220
+ getClassifications(): Observable<ClassificationResponse>;
221
+ /**
222
+ * Fetches the member types master data from configuration and returns.
223
+ * @return {Observable<MemberTypeResponse>}
224
+ * @memberof GroupsService
225
+ */
226
+ getMemberTypes(): Observable<MemberTypeResponse>;
206
227
  /**
207
228
  * Concatenates the group users assigned roles name separated by comma as string and returns the group users in an array.
208
229
  * @param {GetGroupUsersResponse} response
@@ -233,11 +254,13 @@ export declare class GroupsService {
233
254
  getGroupUserDetails(payload: GetUserDetailsPayload): Observable<AddOrEditGroupUserDetailsResponse>;
234
255
  /**
235
256
  * Posts add new user form data to the API for the selected group and returns the success or failure response.
236
- * @param {AddOrEditUserPayload} AddOrEditUserPayload
257
+ * @param {(AddOrEditUserPayload
258
+ * | AddOrEditUserIndividualRosterPayload)} AddOrEditUserPayload
259
+ * @param {GroupRosterType} groupRosterType
237
260
  * @return {Observable<AddOrEditGroupUserDetailsResponse>}
238
261
  * @memberof GroupsService
239
262
  */
240
- addNewGroupUser(AddOrEditUserPayload: AddOrEditUserPayload): Observable<AddOrEditGroupUserDetailsResponse>;
263
+ addNewGroupUser(AddOrEditUserPayload: AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload, groupRosterType: GroupRosterType): Observable<AddOrEditGroupUserDetailsResponse>;
241
264
  /**
242
265
  * Sets the loaded group type user roles
243
266
  * @param {CheckboxOption[]} userRoles
@@ -263,12 +286,12 @@ export declare class GroupsService {
263
286
  */
264
287
  getSelectedUserInfo(): GroupUserInfo;
265
288
  /**
266
- * Updates group user roles to server using HttpService.
267
- * @param {AddOrEditUserPayload} payload
289
+ * Updates group user roles and other details to server using HttpService.
290
+ * @param {(AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload)} payload
268
291
  * @return {Observable<AddOrEditGroupUserDetailsResponse>}
269
292
  * @memberof GroupsService
270
293
  */
271
- editGroupsUserRole(payload: AddOrEditUserPayload): Observable<AddOrEditGroupUserDetailsResponse>;
294
+ editGroupsUserRole(payload: AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload): Observable<AddOrEditGroupUserDetailsResponse>;
272
295
  /**
273
296
  * Sets roster function type.
274
297
  * @param {RosterFunctionType} rosterFunctionType
@@ -319,12 +342,28 @@ export declare class GroupsService {
319
342
  * @memberof GroupsService
320
343
  */
321
344
  getLoadedGroupTypes(): GroupTypeConfiguration[];
345
+ /**
346
+ *
347
+ * @param {string} orgName
348
+ * @return {Observable<OrganizationResponse>}
349
+ * @memberof GroupsService
350
+ */
351
+ getOrganizations(orgName: string): Observable<OrganizationResponse>;
322
352
  /**
323
353
  * Returns the group type configuration Business rule for the selected group.
324
354
  * @return {(BusinessRule | undefined)}
325
355
  * @memberof GroupsService
326
356
  */
327
357
  getBusinessRuleOfSelectedGroup(): BusinessRule | undefined;
358
+ /**
359
+ * Enables or disables the form submit button based on passed parameters.
360
+ * @param {GroupRosterType} groupRosterType
361
+ * @param {FormControlStatus} formStatus
362
+ * @param {string[]} selectedUserRoles
363
+ * @return {boolean}
364
+ * @memberof GroupsService
365
+ */
366
+ isSubmitButtonDisabled(groupRosterType: GroupRosterType, formStatus: FormControlStatus, selectedUserRoles: string[]): boolean;
328
367
  static ɵfac: i0.ɵɵFactoryDeclaration<GroupsService, never>;
329
368
  static ɵprov: i0.ɵɵInjectableDeclaration<GroupsService>;
330
369
  }
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.4",
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';