@ieeesa-npm/groups 0.10.6 → 0.10.7

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 +11 -0
  2. package/esm2022/lib/components/add-user-roster/add-user-roster.component.mjs +34 -28
  3. package/esm2022/lib/components/create-group/create-group.component.mjs +192 -68
  4. package/esm2022/lib/components/edit-user-roles/edit-user-roles.component.mjs +3 -3
  5. package/esm2022/lib/components/tree-view/tree-view.component.mjs +16 -11
  6. package/esm2022/lib/components/view-roster/view-roster.component.mjs +5 -4
  7. package/esm2022/lib/groups.component.mjs +34 -19
  8. package/esm2022/lib/models/add-new-user.model.mjs +1 -1
  9. package/esm2022/lib/models/add-or-edit-user-group.model.mjs +1 -1
  10. package/esm2022/lib/models/group-function-type.model.mjs +2 -1
  11. package/esm2022/lib/models/group-info.model.mjs +1 -1
  12. package/esm2022/lib/models/parent-groups-info.model.mjs +2 -0
  13. package/esm2022/lib/models/permission-type.model.mjs +6 -2
  14. package/esm2022/lib/models/user-info.model.mjs +1 -1
  15. package/esm2022/lib/models/user.model.mjs +1 -1
  16. package/esm2022/lib/services/group-permissions-map-service.mjs +42 -6
  17. package/esm2022/lib/services/groups.service.mjs +48 -6
  18. package/esm2022/lib/services/user-permissions.service.mjs +3 -5
  19. package/esm2022/public-api.mjs +2 -1
  20. package/fesm2022/ieeesa-npm-groups.mjs +380 -139
  21. package/fesm2022/ieeesa-npm-groups.mjs.map +1 -1
  22. package/lib/components/add-user-roster/add-user-roster.component.d.ts +5 -0
  23. package/lib/components/create-group/create-group.component.d.ts +55 -4
  24. package/lib/groups.component.d.ts +3 -1
  25. package/lib/models/add-new-user.model.d.ts +1 -1
  26. package/lib/models/add-or-edit-user-group.model.d.ts +1 -1
  27. package/lib/models/group-function-type.model.d.ts +1 -0
  28. package/lib/models/group-info.model.d.ts +2 -0
  29. package/lib/models/parent-groups-info.model.d.ts +5 -0
  30. package/lib/models/permission-type.model.d.ts +6 -2
  31. package/lib/models/user-info.model.d.ts +1 -1
  32. package/lib/models/user.model.d.ts +5 -1
  33. package/lib/services/group-permissions-map-service.d.ts +13 -0
  34. package/lib/services/groups.service.d.ts +44 -15
  35. package/lib/services/user-permissions.service.d.ts +1 -1
  36. package/package.json +4 -4
  37. package/public-api.d.ts +1 -0
@@ -73,6 +73,11 @@ export declare class AddUserRosterComponent implements OnInit, OnDestroy {
73
73
  * @memberof AddUserRosterComponent
74
74
  */
75
75
  validateUserExistence(): void;
76
+ /**
77
+ * Initialize form group based on email search
78
+ * @memberof AddUserRosterComponent
79
+ */
80
+ initializeAddUserFormGroup(): void;
76
81
  /**
77
82
  * Creates add user form group and updates it with prev form values.
78
83
  * @param {string} stringifiedAddUserFormPrevValues
@@ -1,15 +1,16 @@
1
1
  import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
2
2
  import { FormGroup } from '@angular/forms';
3
- import { FormGrid, FormModel, SelectOption, AlignType, FieldConfig } from '@ieeesa-npm/presentation';
3
+ import { FormGrid, FormModel, SelectOption, AlignType, DynamicFormComponent, FieldConfig, SlideToggleOption } from '@ieeesa-npm/presentation';
4
4
  import { AlertsService, AlertType, GlobalErrorHandlerService } from '@ieeesa-npm/utility';
5
5
  import { GroupsService } from '../../services/groups.service';
6
6
  import { HttpErrorResponse } from '@angular/common/http';
7
7
  import { Subject } from 'rxjs';
8
8
  import { GroupInfo } from '../../models/group-info.model';
9
9
  import { GroupFunctionType } from '../../models/group-function-type.model';
10
+ import { ParentGroupsInfo } from '../../models/parent-groups-info.model';
10
11
  import * as i0 from "@angular/core";
11
12
  /**
12
- * CreateGroupComponent uses DynamicFormComponent to build create new group form and implement the functionalities of submission of form and handling success and error scenarios.
13
+ * CreateGroupComponent uses DynamicFormComponent to build create new group form or edit group and implement the functionalities of submission of form and handling success and error scenarios.
13
14
  * @class CreateGroupComponent
14
15
  * @implements {OnInit}
15
16
  * @implements {OnDestroy}
@@ -33,6 +34,8 @@ export declare class CreateGroupComponent implements OnInit, OnDestroy {
33
34
  heading: string;
34
35
  label: {
35
36
  parentGroup: string;
37
+ changeParentGroup: string;
38
+ newParentGroup: string;
36
39
  groupType: string;
37
40
  groupName: string;
38
41
  shortName: string;
@@ -41,12 +44,17 @@ export declare class CreateGroupComponent implements OnInit, OnDestroy {
41
44
  leftButtonLabel: string;
42
45
  ariaLabel: {
43
46
  parentGroup: string;
47
+ changeParentGroup: string;
48
+ newParentGroup: string;
44
49
  groupType: string;
45
50
  groupName: string;
46
51
  shortName: string;
47
52
  groupScope: string;
48
53
  };
49
54
  ariaDescribedById: {
55
+ parentGroup: string;
56
+ changeParentGroup: string;
57
+ newParentGroup: string;
50
58
  groupType: string;
51
59
  groupName: string;
52
60
  shortName: string;
@@ -78,6 +86,7 @@ export declare class CreateGroupComponent implements OnInit, OnDestroy {
78
86
  };
79
87
  };
80
88
  supportText: {
89
+ newParentGroup: string;
81
90
  groupType: string;
82
91
  groupName: string;
83
92
  shortName: string;
@@ -97,6 +106,11 @@ export declare class CreateGroupComponent implements OnInit, OnDestroy {
97
106
  selectedGroupInfo: GroupInfo | undefined;
98
107
  groupFunctionType: GroupFunctionType;
99
108
  selectedGroupParentInfo: GroupInfo | undefined;
109
+ allowedParentGroups: ParentGroupsInfo[];
110
+ allowedParentGroupsOptions: SelectOption[];
111
+ isParentGroupChanged: boolean;
112
+ slideToggleOption: SlideToggleOption;
113
+ dynamicFormComponent: DynamicFormComponent;
100
114
  constructor(groupsService: GroupsService, globalErrorHandlerService: GlobalErrorHandlerService, alertService: AlertsService);
101
115
  /**
102
116
  * Initialize the create group form group array and component.
@@ -114,7 +128,7 @@ export declare class CreateGroupComponent implements OnInit, OnDestroy {
114
128
  * Initialize the create group form group array.
115
129
  * @memberof CreateGroupComponent
116
130
  */
117
- createFormGroup(): void;
131
+ createFormGroup(formValue?: any): void;
118
132
  /**
119
133
  * Update the create sub group form group array.
120
134
  * @param {GroupInfo} parentGroupInfo -Parent group info.
@@ -122,6 +136,14 @@ export declare class CreateGroupComponent implements OnInit, OnDestroy {
122
136
  * @memberof CreateGroupComponent
123
137
  */
124
138
  updateCreateFormGroup(parentGroupInfo: GroupInfo): void;
139
+ /**
140
+ * Updates the create or edit user form group controls by adding fieldConfig at required index.
141
+ * @param {number} indexPosition
142
+ * @param {FieldConfig} fieldConfig
143
+ * @return -returns nothing
144
+ * @memberof CreateGroupComponent
145
+ */
146
+ updateAddUserFormControls(indexPosition: number, fieldConfig: FieldConfig): void;
125
147
  /**
126
148
  * Handles client side validation and calls create group or edit group methods.
127
149
  * @param {FormGroup[]} form -Array of formGroup
@@ -138,7 +160,7 @@ export declare class CreateGroupComponent implements OnInit, OnDestroy {
138
160
  createGroup(formData: any): void;
139
161
  /**
140
162
  * Constructs edit group payload and calls edit group API and emits create group API response.
141
- * @param {*} formData
163
+ * @param formData
142
164
  * @return -returns nothing
143
165
  * @memberof CreateGroupComponent
144
166
  */
@@ -170,6 +192,35 @@ export declare class CreateGroupComponent implements OnInit, OnDestroy {
170
192
  * @memberof CreateGroupComponent
171
193
  */
172
194
  createGroupCancelled(): void;
195
+ /**
196
+ * Gets allowed parent groups for reassigning the parent.
197
+ * @param {string} groupId
198
+ * @return -returns nothing
199
+ * @memberof CreateGroupComponent
200
+ */
201
+ getParentGroups(groupId: string): void;
202
+ /**
203
+ * Update passed form field values.
204
+ * @param {string} formControlName
205
+ * @param {string} formControlInputProperty
206
+ * @param {*} value
207
+ * @memberof CreateGroupComponent
208
+ */
209
+ updateFormControlOptions(formControlName: string, formControlInputProperty: string, value: any): void;
210
+ /**
211
+ * Adds/removes new parent group selection options whenever Change Parent Group slider is toggled.
212
+ * @param {SlideToggleOption} toggle
213
+ * @return -returns nothing
214
+ * @memberof CreateGroupComponent
215
+ */
216
+ onFormSlideToggleChange(toggle: SlideToggleOption): void;
217
+ /**
218
+ * Handles create group form change event.
219
+ * @param {FormGroup[]} form
220
+ * @return -returns nothing
221
+ * @memberof CreateGroupComponent
222
+ */
223
+ onCreateGroupFormChange(form: FormGroup[]): void;
173
224
  /**
174
225
  * NgOnDestroy performs necessary cleanup tasks, such as unsubscribing from subscription when the component is being destroyed.
175
226
  * @memberof CreateGroupComponent
@@ -13,6 +13,7 @@ import { EditGroupAndParentInfo } from './models/edit-group.model';
13
13
  import { UserPermissionsService } from './services/user-permissions.service';
14
14
  import { GroupPermission, UserPermission } from './models/group-permissions.model';
15
15
  import { PermissionType } from './models/permission-type.model';
16
+ import { GroupPermissionsMapService } from './services/group-permissions-map-service';
16
17
  import * as i0 from "@angular/core";
17
18
  /**
18
19
  * Groups component is a wrapper or container component for groups management reusable component and in this component integrates all group management functionalities and this will be entry component for managing groups when it is consumed in other applications.
@@ -25,6 +26,7 @@ export declare class GroupsComponent implements OnInit, OnDestroy {
25
26
  private breakpointObserverService;
26
27
  globalErrorHandlerService: GlobalErrorHandlerService;
27
28
  private userPermissionsService;
29
+ private groupPermissionsService;
28
30
  destroy$: Subject<boolean>;
29
31
  dialogRef: any;
30
32
  constants: any;
@@ -67,7 +69,7 @@ export declare class GroupsComponent implements OnInit, OnDestroy {
67
69
  trimmedSearchTerm: string;
68
70
  userGroupPermissions: GroupPermission[];
69
71
  supportMessage: string;
70
- constructor(dialog: MatDialog, groupsService: GroupsService, alertService: AlertsService, breakpointObserverService: BreakpointObserverService, globalErrorHandlerService: GlobalErrorHandlerService, userPermissionsService: UserPermissionsService);
72
+ constructor(dialog: MatDialog, groupsService: GroupsService, alertService: AlertsService, breakpointObserverService: BreakpointObserverService, globalErrorHandlerService: GlobalErrorHandlerService, userPermissionsService: UserPermissionsService, groupPermissionsService: GroupPermissionsMapService);
71
73
  /**
72
74
  * Initialize the groups component.
73
75
  * @return -returns nothing
@@ -2,7 +2,7 @@ export interface SearchUserByEmailResponse {
2
2
  status: boolean;
3
3
  message: string;
4
4
  body: {
5
- userId: string;
5
+ userId: string | null;
6
6
  email: string;
7
7
  name: string;
8
8
  };
@@ -7,7 +7,7 @@ export interface AddOrEditGroupUserDetailsResponse {
7
7
  }
8
8
  export interface AddOrEditUserRolePayload {
9
9
  groupId: string;
10
- userId?: string;
10
+ userId?: string | null;
11
11
  roles: string[];
12
12
  email: string;
13
13
  firstName?: string;
@@ -5,6 +5,7 @@ export declare enum GroupFunctionType {
5
5
  FILTER = "FILTER",
6
6
  TOGGLE = "TOGGLE",
7
7
  SEARCH = "SEARCH",
8
+ REASSIGN_PARENT_GROUP = "REASSIGN_PARENT_GROUP",
8
9
  EDIT_ROSTER_USER_ROLE = "EDIT_ROSTER_USER_ROLE",
9
10
  ADD_USER_TO_ROSTER = "ADD_USER_TO_ROSTER"
10
11
  }
@@ -1,3 +1,4 @@
1
+ import { UserPermission } from './group-permissions.model';
1
2
  import { GroupType } from './group-types.model';
2
3
  export interface GroupInfo {
3
4
  groupId: string;
@@ -12,4 +13,5 @@ export interface GroupInfo {
12
13
  groupTypeInfo?: GroupType;
13
14
  children?: GroupInfo[];
14
15
  noOfChildren?: number;
16
+ permissions: UserPermission[] | null;
15
17
  }
@@ -0,0 +1,5 @@
1
+ export interface ParentGroupsInfo {
2
+ groupId: string;
3
+ groupName: string;
4
+ groupAcronym: string;
5
+ }
@@ -4,9 +4,13 @@ export declare enum PermissionType {
4
4
  CREATE_SUBGROUP = "CREATE_SUBGROUP",
5
5
  EDIT_GROUP = "EDIT_GROUP",
6
6
  DELETE_GROUP = "DELETE_GROUP",
7
- MANAGE_SYSTEM_USERS = "MANAGE_SYSTEM_USERS",
8
7
  VIEW_GROUP_OFFICERS = "VIEW_GROUP_OFFICERS",
9
8
  MANAGE_GROUP_OFFICERS = "MANAGE_GROUP_OFFICERS",
10
9
  VIEW_GROUP_MEMBERS = "VIEW_GROUP_MEMBERS",
11
- MANAGE_GROUP_MEMBERS = "MANAGE_GROUP_MEMBERS"
10
+ MANAGE_GROUP_MEMBERS = "MANAGE_GROUP_MEMBERS",
11
+ MANAGE_SYSTEM_USERS = "MANAGE_SYSTEM_USERS",
12
+ VIEW_ALL_GROUPS = "VIEW_ALL_GROUPS",
13
+ MANAGE_ALL_GROUPS = "MANAGE_ALL_GROUPS",
14
+ VIEW_ALL_ROSTERS = "VIEW_ALL_ROSTERS",
15
+ MANAGE_ALL_ROSTERS = "MANAGE_ALL_ROSTERS"
12
16
  }
@@ -1,5 +1,5 @@
1
1
  export interface UserInfo {
2
2
  email: string;
3
3
  name: string;
4
- userId: string;
4
+ userId: string | null;
5
5
  }
@@ -13,6 +13,10 @@ export interface User {
13
13
  employer: string | null;
14
14
  checked?: boolean;
15
15
  }
16
+ export interface Employer {
17
+ orgId: string | null;
18
+ orgName: string | null;
19
+ }
16
20
  export interface GetGroupUsersResponse {
17
21
  status: boolean;
18
22
  message: string;
@@ -24,7 +28,7 @@ export interface GetGroupUsersResponse {
24
28
  classification: Classification | null;
25
29
  memberStatus: MemberType | null;
26
30
  organization: Organization | null;
27
- employer: string | null;
31
+ employer: Employer | null;
28
32
  }[];
29
33
  }
30
34
  export interface FilterUsersPayload {
@@ -2,7 +2,20 @@ import { GroupPermission } from '../models/group-permissions.model';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class GroupPermissionsMapService {
4
4
  groupPermissions: GroupPermission[];
5
+ globalGroupPermissions: GroupPermission[];
6
+ /**
7
+ * Returns group-wise permission mappings.
8
+ * @return {GroupPermission[]}
9
+ * @memberof GroupPermissionsMapService
10
+ */
5
11
  getGroupPermissions(): GroupPermission[];
12
+ /**
13
+ * Returns global permissions mapping for groups.
14
+ * Global permissions are maintained separately as global permissions also include role based group wise permissions irrespective of the attached group.
15
+ * @return {GroupPermission[]}
16
+ * @memberof GroupPermissionsMapService
17
+ */
18
+ getGlobalGroupPermissions(): GroupPermission[];
6
19
  static ɵfac: i0.ɵɵFactoryDeclaration<GroupPermissionsMapService, never>;
7
20
  static ɵprov: i0.ɵɵInjectableDeclaration<GroupPermissionsMapService>;
8
21
  }
@@ -19,9 +19,11 @@ import { MemberTypeResponse } from '../models/member-type.model';
19
19
  import { ClassificationResponse } from '../models/classification.model';
20
20
  import { GroupRosterType } from '../models/roster-type.model';
21
21
  import { FormControlStatus } from '@angular/forms';
22
- import { GroupPermission } from '../models/group-permissions.model';
22
+ import { GroupPermission, UserPermission } from '../models/group-permissions.model';
23
23
  import { PermissionType } from '../models/permission-type.model';
24
24
  import { UserPermissionsService } from './user-permissions.service';
25
+ import { GroupPermissionsMapService } from './group-permissions-map-service';
26
+ import { ParentGroupsInfo } from '../models/parent-groups-info.model';
25
27
  import * as i0 from "@angular/core";
26
28
  /**
27
29
  * Groups service is an abstract layer and responsible for managing groups REST API calls.
@@ -30,6 +32,7 @@ import * as i0 from "@angular/core";
30
32
  export declare class GroupsService {
31
33
  private httpService;
32
34
  private userPermissionsService;
35
+ private groupPermissionsService;
33
36
  alertService: AlertsService;
34
37
  groupsText: {
35
38
  ER1000: string;
@@ -45,11 +48,7 @@ export declare class GroupsService {
45
48
  "1009": string;
46
49
  "1010": string;
47
50
  "1011": string;
48
- "1012": string; /**
49
- * Returns the selected group parent group info.
50
- * @return {(GroupInfo | undefined)} -group info.
51
- * @memberof GroupsService
52
- */
51
+ "1012": string;
53
52
  "1013": string;
54
53
  "1014": string;
55
54
  "1015": string;
@@ -70,18 +69,19 @@ export declare class GroupsService {
70
69
  "1030": string;
71
70
  "1031": string;
72
71
  "1032": string;
73
- "1033": string;
72
+ "1033": string; /**
73
+ * Gets the group users for the given group id.
74
+ * @param {string} groupId
75
+ * @return {Observable<GetGroupUsersResponse>}
76
+ * @memberof GroupsService
77
+ */
74
78
  "1034": string;
75
79
  "1035": string;
76
80
  "1036": string;
81
+ "1037": string;
82
+ "1038": string;
77
83
  "2001": string;
78
84
  "2002": string;
79
- /**
80
- * Gets the group users based on the filtered roles.
81
- * @param {FilterUsersPayload} payload
82
- * @return {Observable<GetGroupUsersResponse>}
83
- * @memberof GroupsService
84
- */
85
85
  "2010": string;
86
86
  "2011": string;
87
87
  "20l2": string;
@@ -96,6 +96,13 @@ export declare class GroupsService {
96
96
  "2021": string;
97
97
  "2022": string;
98
98
  "2023": string;
99
+ "2024": string;
100
+ /**
101
+ * Gets the group users based on searched name or email
102
+ * @param {SearchUsersPayload} payload
103
+ * @return {Observable<GetGroupUsersResponse>}
104
+ * @memberof GroupsService
105
+ */
99
106
  "3004": string;
100
107
  };
101
108
  apiBaseUrl: string;
@@ -110,7 +117,8 @@ export declare class GroupsService {
110
117
  rosterFunctionType: RosterFunctionType;
111
118
  userGroupPermissions: GroupPermission[];
112
119
  groupTypes: GroupTypeConfiguration[];
113
- constructor(httpService: HttpService, userPermissionsService: UserPermissionsService, alertService: AlertsService);
120
+ isParentGroupChanged: boolean;
121
+ constructor(httpService: HttpService, userPermissionsService: UserPermissionsService, groupPermissionsService: GroupPermissionsMapService, alertService: AlertsService);
114
122
  setAppConfig(apiBaseUrl: string, userPermission: any): void;
115
123
  /**
116
124
  * Gets application group types from API and returns it as an observable.
@@ -118,6 +126,13 @@ export declare class GroupsService {
118
126
  * @memberof GroupsService
119
127
  */
120
128
  getGroupTypes(): Observable<GroupTypeResponse>;
129
+ /**
130
+ * Get allowed parent groups from API and returns it as an observable.
131
+ * @param {string} groupId
132
+ * @return {Observable<GroupTypeResponse>}
133
+ * @memberof GroupsService
134
+ */
135
+ getAllowedParentGroups(groupId: string): Observable<ParentGroupsInfo[]>;
121
136
  /**
122
137
  * Returns all the groups based on passed group Id and group type.
123
138
  * @param {GetGroupsPayload} getGroupsPayload
@@ -333,11 +348,13 @@ export declare class GroupsService {
333
348
  getUserGroupPermissions(): GroupPermission[];
334
349
  /**
335
350
  * Validates permission based access for provided feature.
351
+ * Checks for group level permissions, and provides access based on individual group permissions.
352
+ * For global permissions provides access across the individual groups or System groups.
336
353
  * @param {PermissionType} permissionType
337
354
  * @return {boolean}
338
355
  * @memberof GroupsService
339
356
  */
340
- validateAccess(permissionType: PermissionType): boolean;
357
+ validateAccess(permissionType: PermissionType, permissions?: UserPermission[] | null): boolean;
341
358
  /**
342
359
  * Store the loaded group types.
343
360
  * @param {GroupTypeConfiguration[]} groupTypes
@@ -372,6 +389,18 @@ export declare class GroupsService {
372
389
  * @memberof GroupsService
373
390
  */
374
391
  isSubmitButtonDisabled(groupRosterType: GroupRosterType, formStatus: FormControlStatus, selectedUserRoles: string[]): boolean;
392
+ /**
393
+ * Sets isParentGroupChanged true or false.
394
+ * @param {boolean} isParentGroupChanged
395
+ * @memberof GroupsService
396
+ */
397
+ setParentGroupChangeStatus(isParentGroupChanged: boolean): void;
398
+ /**
399
+ * Returns isParentGroupChanged value.
400
+ * @return {boolean}
401
+ * @memberof GroupsService
402
+ */
403
+ getParentGroupChangeStatus(): boolean;
375
404
  static ɵfac: i0.ɵɵFactoryDeclaration<GroupsService, never>;
376
405
  static ɵprov: i0.ɵɵInjectableDeclaration<GroupsService>;
377
406
  }
@@ -19,7 +19,7 @@ export declare class UserPermissionsService {
19
19
  * @return {GroupPermissions[]}
20
20
  * @memberof UserPermissionsService
21
21
  */
22
- filterUserGroupPermissions(userPermissions: UserPermission[]): GroupPermission[];
22
+ filterUserGroupPermissions(userPermissions: UserPermission[], groupPermissions: GroupPermission[]): GroupPermission[];
23
23
  static ɵfac: i0.ɵɵFactoryDeclaration<UserPermissionsService, never>;
24
24
  static ɵprov: i0.ɵɵInjectableDeclaration<UserPermissionsService>;
25
25
  }
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@ieeesa-npm/groups",
3
- "version": "0.10.6",
3
+ "version": "0.10.7",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^16.1.0",
6
6
  "@angular/core": "^16.1.0",
7
- "@ieeesa-npm/presentation": "^0.11.1",
8
- "@ieeesa-npm/shared-styles": "^0.2.7",
9
- "@ieeesa-npm/utility": "^0.10.0"
7
+ "@ieeesa-npm/presentation": "^0.11.0",
8
+ "@ieeesa-npm/shared-styles": "^0.2.6",
9
+ "@ieeesa-npm/utility": "^0.9.9"
10
10
  },
11
11
  "dependencies": {
12
12
  "tslib": "^2.3.0"
package/public-api.d.ts CHANGED
@@ -20,6 +20,7 @@ export * from './lib/models/organization.model';
20
20
  export * from './lib/models/member-type.model';
21
21
  export * from './lib/models/roster-type.model';
22
22
  export * from './lib/models/table-column-schema-user-group.model';
23
+ export * from './lib/models/parent-groups-info.model';
23
24
  export * from './lib/services/groups.service';
24
25
  export * from './lib/assets/form-validations';
25
26
  export * from './lib/groups.module';