@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
@@ -3,4 +3,6 @@ export declare const GroupsValidationPatterns: {
3
3
  shortName: RegExp;
4
4
  groupScope: RegExp;
5
5
  email: RegExp;
6
+ representingOrgNameMaxLength: number;
7
+ representingOrganization: RegExp;
6
8
  };
@@ -2,9 +2,11 @@ import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
2
2
  import { FormGroup } from '@angular/forms';
3
3
  import { Subject } from 'rxjs';
4
4
  import { AlertsService, GlobalErrorHandlerService } from '@ieeesa-npm/utility';
5
- import { FormGrid, FormModel, AlignType, CheckboxOption } from '@ieeesa-npm/presentation';
5
+ import { FormGrid, AlignType, CheckboxOption, SelectOption, FormModel, FieldConfig, DynamicFormComponent } from '@ieeesa-npm/presentation';
6
6
  import { GroupsService } from '../../services/groups.service';
7
+ import { AddOrEditUserIndividualRosterPayload, AddOrEditUserPayload } from '../../models/add-or-edit-user-group.model';
7
8
  import { UserInfo } from '../../models/user-info.model';
9
+ import { GroupRosterType } from '../../models/roster-type.model';
8
10
  import * as i0 from "@angular/core";
9
11
  /**
10
12
  * Component implements the view and functionalities to add group users to roster.
@@ -33,6 +35,12 @@ export declare class AddUserRosterComponent implements OnInit, OnDestroy {
33
35
  selectedUserRoles: string[];
34
36
  userInfo: UserInfo;
35
37
  isAddUserFormEmailSearch: boolean;
38
+ classifications: SelectOption[];
39
+ memberTypes: SelectOption[];
40
+ organizations: SelectOption[];
41
+ hasClassification: boolean;
42
+ groupRosterType: GroupRosterType;
43
+ dynamicFormComponent: DynamicFormComponent;
36
44
  submitFormResponse: EventEmitter<any>;
37
45
  formCancel: EventEmitter<any>;
38
46
  constructor(groupService: GroupsService, globalErrorHandlerService: GlobalErrorHandlerService, alertService: AlertsService);
@@ -63,6 +71,18 @@ export declare class AddUserRosterComponent implements OnInit, OnDestroy {
63
71
  * @memberof AddUserRosterComponent
64
72
  */
65
73
  validateUserExistence(): void;
74
+ /**
75
+ * Adds classification, Member Type and Representing Organization form controls while adding new user to an individual group roster.
76
+ * @memberof AddUserRosterComponent
77
+ */
78
+ updateAddUserFormGroup(): void;
79
+ /**
80
+ * Updates the add user form group controls by adding fieldConfig at required index.
81
+ * @param {number} indexPosition
82
+ * @param {FieldConfig} fieldConfig
83
+ * @memberof AddUserRosterComponent
84
+ */
85
+ updateAddUserFormControls(indexPosition: number, fieldConfig: FieldConfig): void;
66
86
  /**
67
87
  * Handles add user form email search
68
88
  * @param {string} email
@@ -92,12 +112,49 @@ export declare class AddUserRosterComponent implements OnInit, OnDestroy {
92
112
  * @memberof AddUserRosterComponent
93
113
  */
94
114
  onFormCancel(): void;
115
+ /**
116
+ * Gets the classifications from master data.
117
+ * @memberof AddUserRosterComponent
118
+ */
119
+ getClassifications(): void;
120
+ /**
121
+ * Gets the member types from master data.
122
+ * @memberof AddUserRosterComponent
123
+ */
124
+ getMemberTypes(): void;
125
+ /**
126
+ * Gets the representing Organizations.
127
+ * @param {string} orgName
128
+ * @memberof AddUserRosterComponent
129
+ */
130
+ getOrganizations(orgName: string): void;
131
+ /**
132
+ * Update the dropdown options of Classification, Member Type and Representing Organization form fields.
133
+ * @param {string} formControlName
134
+ * @param {string} formControlInputProperty
135
+ * @param {SelectOption[]} options
136
+ * @memberof AddUserRosterComponent
137
+ */
138
+ updateFormControlOptions(formControlName: string, formControlInputProperty: string, options: SelectOption[]): void;
95
139
  /**
96
140
  * Handles the custom errors while searching user by email, validating user existence and adding new user to roster.
97
141
  * @param {*} error
98
142
  * @memberof AddUserRosterComponent
99
143
  */
100
144
  handleErrors(error: any): void;
145
+ /**
146
+ * Handles add user form change event.
147
+ * @param {FormGroup[]} form
148
+ * @memberof AddUserRosterComponent
149
+ */
150
+ onAddUserFormChange(form: FormGroup[]): void;
151
+ /**
152
+ * Constructs add new user payload from the form data depends on the GroupRosterType and returns.
153
+ * @param {*} formData
154
+ * @return {(AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload)}
155
+ * @memberof AddUserRosterComponent
156
+ */
157
+ getAddNewUserPayload(formData: any): AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload;
101
158
  /**
102
159
  * NgOnDestroy performs necessary cleanup tasks, such as unsubscribing from subscription when the component is being destroyed.
103
160
  * @memberof AddUserRosterComponent
@@ -1,13 +1,16 @@
1
1
  import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
2
2
  import { GroupsService } from '../../services/groups.service';
3
- import { AlignType, CheckboxOption, FormGrid, FormModel } from '@ieeesa-npm/presentation';
3
+ import { AlignType, CheckboxOption, FieldConfig, FormGrid, FormModel, SelectOption, DynamicFormComponent } from '@ieeesa-npm/presentation';
4
4
  import { FormGroup } from '@angular/forms';
5
5
  import { GroupUserInfo } from '../../models/group-user-info.model';
6
6
  import { Subject } from 'rxjs';
7
7
  import { AlertsService, GlobalErrorHandlerService } from '@ieeesa-npm/utility';
8
+ import { AddOrEditUserIndividualRosterPayload, AddOrEditUserPayload } from '../../models/add-or-edit-user-group.model';
9
+ import { GroupTypeConfiguration } from '../../models/group-types.model';
10
+ import { GroupRosterType } from '../../models/roster-type.model';
8
11
  import * as i0 from "@angular/core";
9
12
  /**
10
- * Component implements the functionalities to edit user roles for system user.
13
+ * Component implements the view and functionalities to edit group users to roster.
11
14
  * @class EditUserRolesComponent
12
15
  * @implements {OnInit}
13
16
  * @implements {OnDestroy}
@@ -24,11 +27,18 @@ export declare class EditUserRolesComponent implements OnInit, OnDestroy {
24
27
  isSubmitButtonDisabled: boolean;
25
28
  colWidth: FormGrid;
26
29
  editUserRoleFormGroup: FormModel;
27
- form: FormGroup;
30
+ editUserRoleFormGroupRef: FormGroup;
28
31
  userRoles: CheckboxOption[];
29
32
  selectedUserRoleIds: string[];
30
33
  selectedUserInfo: GroupUserInfo;
31
34
  actionButtonAlign: AlignType;
35
+ classifications: SelectOption[];
36
+ memberTypes: SelectOption[];
37
+ organizations: SelectOption[];
38
+ groupTypes: GroupTypeConfiguration[];
39
+ hasClassification: boolean;
40
+ groupRosterType: GroupRosterType;
41
+ dynamicFormComponent: DynamicFormComponent;
32
42
  submitFormResponse: EventEmitter<any>;
33
43
  formCancel: EventEmitter<any>;
34
44
  constructor(groupsService: GroupsService, globalErrorHandlerService: GlobalErrorHandlerService, alertService: AlertsService);
@@ -39,28 +49,41 @@ export declare class EditUserRolesComponent implements OnInit, OnDestroy {
39
49
  */
40
50
  ngOnInit(): void;
41
51
  /**
42
- * Gets required information for the edit user role component.
43
- * @return -returns nothing
52
+ * Initialize the edit user role form group array.
44
53
  * @memberof EditUserRolesComponent
45
54
  */
46
- getSelectedUserDetails(): void;
55
+ editUserRolesFormGroup(): void;
47
56
  /**
48
- * Initialize the edit user role form group array.
57
+ * Adds classification, Member Type and Representing Organization form controls while editing new user to an individual group roster.
58
+ * @memberof AddUserRosterComponent
59
+ */
60
+ updateEditUserRoleFormGroup(): void;
61
+ /**
62
+ * Updates the edit user form group controls by adding fieldConfig at required index.
63
+ * @param {number} indexPosition
64
+ * @param {FieldConfig} fieldConfig
49
65
  * @memberof EditUserRolesComponent
50
66
  */
51
- editUserRolesFormGroup(): void;
67
+ updateEditUserRoleFormControls(indexPosition: number, fieldConfig: FieldConfig): void;
52
68
  /**
53
- * Handles user role selection in edit user roles form.
69
+ * Handles user role selection and save button enable disable in edit user roles form.
54
70
  * @param {CheckboxOption} event
55
71
  * @memberof EditUserRolesComponent
56
72
  */
57
73
  onUserRoleSelection(event: CheckboxOption): void;
58
74
  /**
59
- * Update roles of user on form submission.
75
+ * Update roles and details of user on form submission.
60
76
  * @param {FormGroup[]} form
61
77
  * @memberof EditUserRolesComponent
62
78
  */
63
79
  onEditUserRoleFormSubmit(form: FormGroup[]): void;
80
+ /**
81
+ * Constructs edit user payload from the form data depends on the GroupRosterType and returns.
82
+ * @param {*} formData
83
+ * @return {(AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload)}
84
+ * @memberof EditUserRolesComponent
85
+ */
86
+ getEditUserRolePayload(formData: any): AddOrEditUserPayload | AddOrEditUserIndividualRosterPayload;
64
87
  /**
65
88
  * Emits form cancel event.
66
89
  * @memberof EditUserRolesComponent
@@ -72,6 +95,36 @@ export declare class EditUserRolesComponent implements OnInit, OnDestroy {
72
95
  * @memberof EditUserRolesComponent
73
96
  */
74
97
  getFormGroupReference(form: FormGroup[]): void;
98
+ /**
99
+ * Handles edit user role form change event.
100
+ * @param {FormGroup[]} form
101
+ * @memberof editUserRoleFormGroupRef
102
+ */
103
+ onEditUserRoleFormChange(form: FormGroup[]): void;
104
+ /**
105
+ * Gets the classifications from master data.
106
+ * @memberof EditUserRolesComponent
107
+ */
108
+ getClassifications(): void;
109
+ /**
110
+ * Gets the member types from master data.
111
+ * @memberof EditUserRolesComponent
112
+ */
113
+ getMemberTypes(): void;
114
+ /**
115
+ * Gets the representing Organizations.
116
+ * @param {string} orgName
117
+ * @memberof AddUserRosterComponent
118
+ */
119
+ getOrganizations(orgName: string): void;
120
+ /**
121
+ * Update the dropdown options of Classification, Member Type and Representing Organization form fields.
122
+ * @param {string} formControlName
123
+ * @param {string} formControlInputProperty
124
+ * @param {SelectOption[]} options
125
+ * @memberof EditUserRolesComponent
126
+ */
127
+ updateFormControlOptions(formControlName: string, formControlInputProperty: string, options: SelectOption[], selectedOption?: string): void;
75
128
  /**
76
129
  * Captures the server side errors and handles it based on the custom or Http errors.
77
130
  * @param {HttpErrorResponse} error
@@ -81,7 +134,7 @@ export declare class EditUserRolesComponent implements OnInit, OnDestroy {
81
134
  handleErrors(error: any): void;
82
135
  /**
83
136
  * NgOnDestroy performs necessary cleanup tasks, such as unsubscribing from subscription when the component is being destroyed.
84
- * @memberof CreateGroupComponent
137
+ * @memberof EditUserRolesComponent
85
138
  */
86
139
  ngOnDestroy(): void;
87
140
  static ɵfac: i0.ɵɵFactoryDeclaration<EditUserRolesComponent, never>;
@@ -1,12 +1,14 @@
1
- import { AfterViewInit, ChangeDetectorRef, OnDestroy } from '@angular/core';
1
+ import { AfterViewInit, ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core';
2
2
  import { Subject } from 'rxjs';
3
- import { SortDirection } from '@angular/material/sort';
3
+ import { Sort } from '@angular/material/sort';
4
4
  import { MatDialog } from '@angular/material/dialog';
5
- import { TableColumnSchema, TableActions, CheckboxOption, AlignType, ChipOption } from '@ieeesa-npm/presentation';
5
+ import { TableColumnSchema, TableActions, AlignType, ChipOption, CheckboxOption, FiltersAndOptions } from '@ieeesa-npm/presentation';
6
6
  import { AlertType, AlertsService, GlobalErrorHandlerService } from '@ieeesa-npm/utility';
7
7
  import { GroupsService } from '../../services/groups.service';
8
8
  import { User } from '../../models/user.model';
9
9
  import { GroupUserInfo } from '../../models/group-user-info.model';
10
+ import { GroupRosterType } from '../../models/roster-type.model';
11
+ import { FilterType } from '../../models/filter-type.model';
10
12
  import * as i0 from "@angular/core";
11
13
  /**
12
14
  * ViewRosterComponent implements the functionalities to add, edit, delete user to group roster, assign and modify roles(s) to the group users, and search user from roster.
@@ -14,7 +16,7 @@ import * as i0 from "@angular/core";
14
16
  * @class ViewRosterComponent
15
17
  * @implements {OnDestroy}
16
18
  */
17
- export declare class ViewRosterComponent implements AfterViewInit, OnDestroy {
19
+ export declare class ViewRosterComponent implements AfterViewInit, OnDestroy, OnInit {
18
20
  dialog: MatDialog;
19
21
  private groupService;
20
22
  private alertService;
@@ -29,13 +31,28 @@ export declare class ViewRosterComponent implements AfterViewInit, OnDestroy {
29
31
  columnSchema: TableColumnSchema[];
30
32
  tableData: User[];
31
33
  selectedRoleIds: string[];
32
- selectedRoles: ChipOption[] | CheckboxOption[];
34
+ selectedMemberTypeIds: string[];
35
+ selectedClassificationIds: string[];
36
+ searchPlaceholderText: string;
37
+ selectedRoles: FiltersAndOptions;
38
+ selectedMemberTypes: FiltersAndOptions;
39
+ selectedClassifications: FiltersAndOptions;
33
40
  roles: CheckboxOption[];
41
+ filterOptions: CheckboxOption[];
42
+ memberTypes: CheckboxOption[];
43
+ classifications: CheckboxOption[];
34
44
  rosterActions: TableActions;
35
45
  defaultSortedColumn: string;
36
- defaultColumnSortDirection: SortDirection;
46
+ dataTableClassName: string;
47
+ hasClassification: boolean;
37
48
  searchTerm: string;
49
+ groupRosterType: GroupRosterType;
50
+ defaultColumnSortDirection: boolean;
51
+ tableColumnsForIndividual: any;
52
+ tableColumnsForSystemUsers: any;
53
+ emptyFieldValueReplacedBy: any;
38
54
  constructor(dialog: MatDialog, groupService: GroupsService, alertService: AlertsService, cdr: ChangeDetectorRef, globalErrorHandlerService: GlobalErrorHandlerService);
55
+ ngOnInit(): void;
39
56
  /**
40
57
  * Show add new user success message when canShowMessage is set true
41
58
  * @memberof ViewRosterComponent
@@ -47,28 +64,64 @@ export declare class ViewRosterComponent implements AfterViewInit, OnDestroy {
47
64
  * @memberof ViewRosterComponent
48
65
  */
49
66
  getManageRosterActionsPermission(): boolean;
67
+ /**
68
+ * Configure Table information based on group roster type
69
+ * @memberof ViewRosterComponent
70
+ */
71
+ configureTableInfo(): void;
50
72
  /**
51
73
  * Gets the group users by calling getGroupUsers() from groupService and sets tableData to display the users in a grid.
52
74
  * @memberof ViewRosterComponent
53
75
  */
54
- getGroupUsersAndInitializeTableView(): void;
76
+ getGroupUsersAndInitializeTableView(sortColumn: string, sortDirection: boolean): void;
77
+ /**
78
+ * Gets the groups based on the column name and sort direction.
79
+ * @param {Sort} sort
80
+ * @memberof ViewRosterComponent
81
+ */
82
+ onSortGroupUsers(sort: Sort): void;
55
83
  /**
56
84
  * Gets the selected group type roles by calling getGroupTypeRoles() from groupService and sets assign roles.
57
85
  * @memberof ViewRosterComponent
58
86
  */
59
87
  getRoles(): void;
88
+ /**
89
+ * Gets the classification by calling getClassifications() from groupService and sets classifications.
90
+ * @memberof ViewUserRosterComponent
91
+ */
92
+ getClassifications(): void;
93
+ /**
94
+ * Gets the member types by calling getMemberTypes() from groupService and sets member types.
95
+ * @memberof ViewUserRosterComponent
96
+ */
97
+ getMemberTypes(): void;
98
+ /**
99
+ * Sets the selected filter options for Member Type or Classification filter depends on the selection.
100
+ * @param {ChipOption} option
101
+ * @memberof ViewRosterComponent
102
+ */
103
+ setSelectedFilterOptions(option: ChipOption): void;
60
104
  /**
61
105
  * Gets the group users by calling searchGroupUsers() from groupService and sets tableData to display the users in a grid.
62
106
  * @param {string} searchTerm -searchTerm can be user name or email and user is searched based on the email or name.
63
107
  * @memberof ViewRosterComponent
64
108
  */
65
109
  onSearchGroupUsers(searchTerm: string): void;
110
+ /**
111
+ * Sets the selected options of filters and returns id of selected options
112
+ * @param {FiltersAndOptions[]} selectedOptions
113
+ * @param {FilterType} filterType
114
+ * @param {FiltersAndOptions} selectedFilterOptions
115
+ * @return {*}
116
+ * @memberof ViewRosterComponent
117
+ */
118
+ getSelectedFilterOptionsAndIds(selectedOptions: FiltersAndOptions[], filterType: FilterType, selectedFilterOptions: FiltersAndOptions, selectedFilterIds: string[]): void;
66
119
  /**
67
120
  * Gets the group users by calling getGroupUsersByRoles() from groupService and sets tableData to display the users in a grid.
68
121
  * @param {ChipOption[] | | CheckboxOption[]} roles
69
122
  * @memberof ViewRosterComponent
70
123
  */
71
- onFilterUsersByRoles(roles: ChipOption[] | CheckboxOption[]): void;
124
+ onFilterGroupUsers(selectedOptions: FiltersAndOptions[]): void;
72
125
  /**
73
126
  * Handles the custom errors while retrieving groups users, roles, search users, filter user by roles.
74
127
  * @param {*} error
@@ -1,11 +1,3 @@
1
- export interface AddOrEditUserPayload {
2
- payload: {
3
- groupId: string;
4
- userId: string;
5
- roles: string[];
6
- email: string;
7
- };
8
- }
9
1
  export interface AddOrEditGroupUserDetailsResponse {
10
2
  status: boolean;
11
3
  message: string;
@@ -13,3 +5,27 @@ export interface AddOrEditGroupUserDetailsResponse {
13
5
  errorCodes: string[];
14
6
  };
15
7
  }
8
+ export interface AddOrEditUserRolePayload {
9
+ groupId: string;
10
+ userId: string;
11
+ roles: string[];
12
+ email: string;
13
+ }
14
+ export interface AddOrEditIndividualRosterPayload extends AddOrEditUserRolePayload {
15
+ classification?: {
16
+ classificationId: string;
17
+ };
18
+ organization: {
19
+ orgId: string;
20
+ orgName: string;
21
+ };
22
+ memberStatus: {
23
+ memberStatusId: string;
24
+ };
25
+ }
26
+ export interface AddOrEditUserPayload {
27
+ payload: AddOrEditUserRolePayload;
28
+ }
29
+ export interface AddOrEditUserIndividualRosterPayload {
30
+ payload: AddOrEditIndividualRosterPayload;
31
+ }
@@ -0,0 +1,10 @@
1
+ export interface Classification {
2
+ classificationId: string;
3
+ classificationName: string;
4
+ classificationDesc: string;
5
+ }
6
+ export interface ClassificationResponse {
7
+ status: boolean;
8
+ message: string;
9
+ body: Classification[];
10
+ }
@@ -0,0 +1,5 @@
1
+ export declare enum FilterType {
2
+ ROLE = "Role",
3
+ MEMBER_TYPE = "Member Type",
4
+ CLASSIFICATION = "Classification"
5
+ }
@@ -5,6 +5,7 @@ export interface BusinessRule {
5
5
  allowAlternateVoting: boolean;
6
6
  manageRosterInApp: boolean;
7
7
  allowedGroupType: string[];
8
+ hasClassification?: boolean;
8
9
  isAdmin?: boolean;
9
10
  }
10
11
  export interface GroupType {
@@ -3,4 +3,7 @@ export interface GroupUserInfo {
3
3
  name: string;
4
4
  role: string;
5
5
  userId: string;
6
+ classification?: string;
7
+ organization?: string;
8
+ memberStatus?: string;
6
9
  }
@@ -0,0 +1,10 @@
1
+ export interface MemberType {
2
+ memberStatusId: string;
3
+ memberStatusName: string;
4
+ memberStatusDesc: string;
5
+ }
6
+ export interface MemberTypeResponse {
7
+ status: boolean;
8
+ message: string;
9
+ body: MemberType[];
10
+ }
@@ -0,0 +1,9 @@
1
+ export interface Organization {
2
+ orgId: string;
3
+ orgName: string;
4
+ }
5
+ export interface OrganizationResponse {
6
+ status: boolean;
7
+ message: string;
8
+ body: Organization[];
9
+ }
@@ -0,0 +1,4 @@
1
+ export declare enum GroupRosterType {
2
+ INDIVIDUAL = "Individual",
3
+ SYSTEM_USER = "User"
4
+ }
@@ -0,0 +1,9 @@
1
+ export declare enum TableColumnSchemaUserGroup {
2
+ NAME = "name",
3
+ EMAIL = "email",
4
+ ROLE = "role",
5
+ EMPLOYER = "employer",
6
+ CLASSIFICATION = "classification",
7
+ ORGANIZATION = "org_name",
8
+ MEMBER_TYPE = "memberType"
9
+ }
@@ -1,9 +1,16 @@
1
+ import { Classification } from './classification.model';
2
+ import { MemberType } from './member-type.model';
3
+ import { Organization } from './organization.model';
1
4
  import { Role } from './role.model';
2
5
  export interface User {
3
6
  userId: string;
4
7
  name: string;
5
8
  email: string;
6
- role: string;
9
+ role: string | null;
10
+ classification: string | null;
11
+ memberStatus: string | null;
12
+ organization: string | null;
13
+ employer: string | null;
7
14
  checked?: boolean;
8
15
  }
9
16
  export interface GetGroupUsersResponse {
@@ -14,18 +21,26 @@ export interface GetGroupUsersResponse {
14
21
  name: string;
15
22
  email: string;
16
23
  rolesList: Role[];
24
+ classification: Classification | null;
25
+ memberStatus: MemberType | null;
26
+ organization: Organization | null;
27
+ employer: string | null;
17
28
  }[];
18
29
  }
19
- export interface FilterUsersByRolesPayload {
30
+ export interface FilterUsersPayload {
20
31
  payload: {
21
32
  groupId: string;
22
- roles: string[];
33
+ filterByRoleClassificationMemberStatusIds: string[];
34
+ sortColumn: string;
35
+ ascendingOrder: boolean;
23
36
  };
24
37
  }
25
38
  export interface SearchUsersPayload {
26
39
  payload: {
27
40
  groupId: string;
28
- searchByNameOrEmail: string;
29
- roles: string[];
41
+ searchByNameOrEmailOrRepOrg: string;
42
+ filterByRoleClassificationMemberStatusIds: string[];
43
+ sortColumn: string;
44
+ ascendingOrder: boolean;
30
45
  };
31
46
  }