@campxdev/server-shared 1.3.25 → 1.3.27

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 (163) hide show
  1. package/dist/common/decorators/batch-validation.decorator.d.ts +3 -0
  2. package/dist/common/decorators/batch-validation.decorator.d.ts.map +1 -0
  3. package/dist/common/decorators/batch-validation.decorator.js +27 -0
  4. package/dist/common/decorators/batch-validation.decorator.js.map +1 -0
  5. package/dist/common/filters/unhandled-exception.filter.js +2 -3
  6. package/dist/common/filters/unhandled-exception.filter.js.map +1 -1
  7. package/dist/common/guards/guard.d.ts +2 -0
  8. package/dist/common/guards/guard.d.ts.map +1 -1
  9. package/dist/common/guards/guard.js +6 -1
  10. package/dist/common/guards/guard.js.map +1 -1
  11. package/dist/common/index.d.ts +1 -1
  12. package/dist/common/index.d.ts.map +1 -1
  13. package/dist/common/index.js +1 -1
  14. package/dist/common/index.js.map +1 -1
  15. package/dist/common/interceptors/request.interceptor.d.ts +6 -1
  16. package/dist/common/interceptors/request.interceptor.d.ts.map +1 -1
  17. package/dist/common/interceptors/request.interceptor.js +53 -13
  18. package/dist/common/interceptors/request.interceptor.js.map +1 -1
  19. package/dist/common/interfaces/context.interface.d.ts +62 -32
  20. package/dist/common/interfaces/context.interface.d.ts.map +1 -1
  21. package/dist/common/store/request-store.d.ts +27 -7
  22. package/dist/common/store/request-store.d.ts.map +1 -1
  23. package/dist/common/store/request-store.js +96 -23
  24. package/dist/common/store/request-store.js.map +1 -1
  25. package/dist/common/store/store.interceptor.js +2 -3
  26. package/dist/common/store/store.interceptor.js.map +1 -1
  27. package/dist/domain/db-connection.module.js +2 -3
  28. package/dist/domain/db-connection.module.js.map +1 -1
  29. package/dist/domain/entities/evaluator.entity.js +2 -16
  30. package/dist/domain/entities/evaluator.entity.js.map +1 -1
  31. package/dist/domain/entities/leads.entity.js +2 -26
  32. package/dist/domain/entities/leads.entity.js.map +1 -1
  33. package/dist/domain/entities/profile-permission.entity.d.ts +2 -0
  34. package/dist/domain/entities/profile-permission.entity.d.ts.map +1 -1
  35. package/dist/domain/entities/profile-permission.entity.js +7 -12
  36. package/dist/domain/entities/profile-permission.entity.js.map +1 -1
  37. package/dist/domain/entities/profile.entity.d.ts +17 -1
  38. package/dist/domain/entities/profile.entity.d.ts.map +1 -1
  39. package/dist/domain/entities/profile.entity.js +45 -14
  40. package/dist/domain/entities/profile.entity.js.map +1 -1
  41. package/dist/domain/entities/student.entity.d.ts +11 -31
  42. package/dist/domain/entities/student.entity.d.ts.map +1 -1
  43. package/dist/domain/entities/student.entity.js +38 -170
  44. package/dist/domain/entities/student.entity.js.map +1 -1
  45. package/dist/domain/entities/user.entity.d.ts +0 -3
  46. package/dist/domain/entities/user.entity.d.ts.map +1 -1
  47. package/dist/domain/entities/user.entity.js +2 -29
  48. package/dist/domain/entities/user.entity.js.map +1 -1
  49. package/dist/domain/index.d.ts +8 -2
  50. package/dist/domain/index.d.ts.map +1 -1
  51. package/dist/domain/index.js +8 -2
  52. package/dist/domain/index.js.map +1 -1
  53. package/dist/domain/schemas/admission.schema.d.ts +257 -0
  54. package/dist/domain/schemas/admission.schema.d.ts.map +1 -0
  55. package/dist/domain/schemas/admission.schema.js +707 -0
  56. package/dist/domain/schemas/admission.schema.js.map +1 -0
  57. package/dist/domain/schemas/course.schema.d.ts +54 -0
  58. package/dist/domain/schemas/course.schema.d.ts.map +1 -0
  59. package/dist/domain/schemas/course.schema.js +89 -0
  60. package/dist/domain/schemas/course.schema.js.map +1 -0
  61. package/dist/domain/schemas/global-users.schema.d.ts +12 -3
  62. package/dist/domain/schemas/global-users.schema.d.ts.map +1 -1
  63. package/dist/domain/schemas/global-users.schema.js +46 -23
  64. package/dist/domain/schemas/global-users.schema.js.map +1 -1
  65. package/dist/domain/schemas/institution.schema.d.ts +53 -0
  66. package/dist/domain/schemas/institution.schema.d.ts.map +1 -0
  67. package/dist/domain/schemas/institution.schema.js +94 -0
  68. package/dist/domain/schemas/institution.schema.js.map +1 -0
  69. package/dist/domain/schemas/media-record.schema.d.ts +53 -0
  70. package/dist/domain/schemas/media-record.schema.d.ts.map +1 -0
  71. package/dist/domain/schemas/media-record.schema.js +86 -0
  72. package/dist/domain/schemas/media-record.schema.js.map +1 -0
  73. package/dist/domain/schemas/program.schema.d.ts +49 -0
  74. package/dist/domain/schemas/program.schema.d.ts.map +1 -0
  75. package/dist/domain/schemas/program.schema.js +81 -0
  76. package/dist/domain/schemas/program.schema.js.map +1 -0
  77. package/dist/domain/schemas/quota.schema.d.ts +47 -0
  78. package/dist/domain/schemas/quota.schema.d.ts.map +1 -0
  79. package/dist/domain/schemas/quota.schema.js +64 -0
  80. package/dist/domain/schemas/quota.schema.js.map +1 -0
  81. package/dist/domain/schemas/semester.schema.d.ts +50 -0
  82. package/dist/domain/schemas/semester.schema.d.ts.map +1 -0
  83. package/dist/domain/schemas/semester.schema.js +84 -0
  84. package/dist/domain/schemas/semester.schema.js.map +1 -0
  85. package/dist/domain/schemas/sub-schemas.schema.d.ts +276 -0
  86. package/dist/domain/schemas/sub-schemas.schema.d.ts.map +1 -0
  87. package/dist/domain/schemas/sub-schemas.schema.js +931 -0
  88. package/dist/domain/schemas/sub-schemas.schema.js.map +1 -0
  89. package/dist/domain/schemas/tenant.schema.d.ts +89 -35
  90. package/dist/domain/schemas/tenant.schema.d.ts.map +1 -1
  91. package/dist/domain/schemas/tenant.schema.js +274 -85
  92. package/dist/domain/schemas/tenant.schema.js.map +1 -1
  93. package/dist/domain/shared-domain.module.js +2 -3
  94. package/dist/domain/shared-domain.module.js.map +1 -1
  95. package/dist/permissions/app-permissions/commute-x-permissions.d.ts +119 -0
  96. package/dist/permissions/app-permissions/commute-x-permissions.d.ts.map +1 -0
  97. package/dist/permissions/app-permissions/commute-x-permissions.js +129 -0
  98. package/dist/permissions/app-permissions/commute-x-permissions.js.map +1 -0
  99. package/dist/permissions/app-permissions/enroll-x-permissions.d.ts +538 -0
  100. package/dist/permissions/app-permissions/enroll-x-permissions.d.ts.map +1 -0
  101. package/dist/permissions/app-permissions/enroll-x-permissions.js +876 -0
  102. package/dist/permissions/app-permissions/enroll-x-permissions.js.map +1 -0
  103. package/dist/permissions/app-permissions/exams-permissions.d.ts +912 -0
  104. package/dist/permissions/app-permissions/exams-permissions.d.ts.map +1 -0
  105. package/dist/permissions/app-permissions/exams-permissions.js +1702 -0
  106. package/dist/permissions/app-permissions/exams-permissions.js.map +1 -0
  107. package/dist/permissions/app-permissions/hostels-permissions.d.ts +452 -0
  108. package/dist/permissions/app-permissions/hostels-permissions.d.ts.map +1 -0
  109. package/dist/permissions/app-permissions/hostels-permissions.js +580 -0
  110. package/dist/permissions/app-permissions/hostels-permissions.js.map +1 -0
  111. package/dist/permissions/app-permissions/payments-permissions.d.ts +473 -0
  112. package/dist/permissions/app-permissions/payments-permissions.d.ts.map +1 -0
  113. package/dist/permissions/app-permissions/payments-permissions.js +794 -0
  114. package/dist/permissions/app-permissions/payments-permissions.js.map +1 -0
  115. package/dist/permissions/app-permissions/people-x-permissions.d.ts +434 -0
  116. package/dist/permissions/app-permissions/people-x-permissions.d.ts.map +1 -0
  117. package/dist/permissions/app-permissions/people-x-permissions.js +530 -0
  118. package/dist/permissions/app-permissions/people-x-permissions.js.map +1 -0
  119. package/dist/permissions/app-permissions/square-permissions.d.ts +1673 -0
  120. package/dist/permissions/app-permissions/square-permissions.d.ts.map +1 -0
  121. package/dist/permissions/app-permissions/square-permissions.js +3024 -0
  122. package/dist/permissions/app-permissions/square-permissions.js.map +1 -0
  123. package/dist/permissions/check-permission.guard.d.ts +5 -46
  124. package/dist/permissions/check-permission.guard.d.ts.map +1 -1
  125. package/dist/permissions/check-permission.guard.js +14 -8
  126. package/dist/permissions/check-permission.guard.js.map +1 -1
  127. package/dist/permissions/index.d.ts +7 -0
  128. package/dist/permissions/index.d.ts.map +1 -1
  129. package/dist/permissions/index.js +15 -0
  130. package/dist/permissions/index.js.map +1 -1
  131. package/dist/permissions/permissions.d.ts +8021 -762
  132. package/dist/permissions/permissions.d.ts.map +1 -1
  133. package/dist/permissions/permissions.js +94 -1916
  134. package/dist/permissions/permissions.js.map +1 -1
  135. package/dist/shared-module/shared.module.d.ts +1 -0
  136. package/dist/shared-module/shared.module.d.ts.map +1 -1
  137. package/dist/shared-module/shared.module.js +2 -3
  138. package/dist/shared-module/shared.module.js.map +1 -1
  139. package/dist/shared-module/shared.service.d.ts +11 -2
  140. package/dist/shared-module/shared.service.d.ts.map +1 -1
  141. package/dist/shared-module/shared.service.js +73 -20
  142. package/dist/shared-module/shared.service.js.map +1 -1
  143. package/dist/utils/constants.d.ts +19 -4
  144. package/dist/utils/constants.d.ts.map +1 -1
  145. package/dist/utils/constants.js +15 -5
  146. package/dist/utils/constants.js.map +1 -1
  147. package/dist/utils/utils.d.ts +29 -3
  148. package/dist/utils/utils.d.ts.map +1 -1
  149. package/dist/utils/utils.js +132 -12
  150. package/dist/utils/utils.js.map +1 -1
  151. package/package.json +1 -1
  152. package/dist/common/databases/mongoose.repository.d.ts +0 -41
  153. package/dist/common/databases/mongoose.repository.d.ts.map +0 -1
  154. package/dist/common/databases/mongoose.repository.js +0 -95
  155. package/dist/common/databases/mongoose.repository.js.map +0 -1
  156. package/dist/domain/entities/department.entity.d.ts +0 -10
  157. package/dist/domain/entities/department.entity.d.ts.map +0 -1
  158. package/dist/domain/entities/department.entity.js +0 -51
  159. package/dist/domain/entities/department.entity.js.map +0 -1
  160. package/dist/domain/entities/program.entity.d.ts +0 -14
  161. package/dist/domain/entities/program.entity.d.ts.map +0 -1
  162. package/dist/domain/entities/program.entity.js +0 -71
  163. package/dist/domain/entities/program.entity.js.map +0 -1
@@ -1,11 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.permission = exports.permissionGroupedBySlug = exports.permissionsArray = exports.permissionGroupsArray = void 0;
3
+ exports.addDefaultProfiles = exports.PermissionGroup = exports.APermission = exports.checkPermissions = exports.permissionGroupedBySlug = exports.permissionsArray = exports.permissionGroupsArray = void 0;
4
4
  const common_1 = require("@nestjs/common");
5
5
  const lodash_1 = require("lodash");
6
- function permissionGroupsArray() {
7
- return Object.keys(exports.permission).map((groupSlug) => {
8
- const group = exports.permission[groupSlug];
6
+ const typeorm_1 = require("typeorm");
7
+ const domain_1 = require("../domain");
8
+ const enroll_x_permissions_1 = require("./app-permissions/enroll-x-permissions");
9
+ const exams_permissions_1 = require("./app-permissions/exams-permissions");
10
+ const hostels_permissions_1 = require("./app-permissions/hostels-permissions");
11
+ const commute_x_permissions_1 = require("./app-permissions/commute-x-permissions");
12
+ const payments_permissions_1 = require("./app-permissions/payments-permissions");
13
+ const people_x_permissions_1 = require("./app-permissions/people-x-permissions");
14
+ const square_permissions_1 = require("./app-permissions/square-permissions");
15
+ function permissionGroupsArray(application) {
16
+ const permission = application ? exports.APermission[application] ?? {} : exports.PermissionGroup;
17
+ return Object.keys(permission).map((groupSlug) => {
18
+ const group = permission[groupSlug];
9
19
  return {
10
20
  ...group.GROUP,
11
21
  permissions: Object.keys(group.PERMISSIONS).map((permissionSlug) => {
@@ -14,6 +24,7 @@ function permissionGroupsArray() {
14
24
  ...permission,
15
25
  groupName: group.GROUP.name,
16
26
  groupSlug: group.GROUP.slug,
27
+ application: group.GROUP.application,
17
28
  permissions: Object.values(permission.permissions),
18
29
  permissionObj: undefined,
19
30
  };
@@ -22,1924 +33,91 @@ function permissionGroupsArray() {
22
33
  });
23
34
  }
24
35
  exports.permissionGroupsArray = permissionGroupsArray;
25
- function permissionsArray() {
36
+ function permissionsArray(application) {
37
+ const groups = permissionGroupsArray(application);
38
+ return groups.map((group) => group.permissions).flat();
39
+ }
40
+ exports.permissionsArray = permissionsArray;
41
+ function permissionGroupedBySlug(application) {
42
+ const groups = permissionsArray(application);
43
+ return (0, lodash_1.keyBy)(groups, (val) => val.slug);
44
+ }
45
+ exports.permissionGroupedBySlug = permissionGroupedBySlug;
46
+ function checkPermissions() {
47
+ const groupNames = Object.keys(exports.PermissionGroup);
48
+ const aGroupNames = Object.values(exports.APermission)
49
+ .map((val) => Object.keys(val))
50
+ .flat();
51
+ if (groupNames.length !== aGroupNames.length) {
52
+ throw new common_1.BadRequestException('Duplicate permission groups found');
53
+ }
26
54
  const groups = permissionGroupsArray();
27
55
  const permissions = groups.map((group) => group.permissions).flat();
28
56
  const uniqueBySlug = (0, lodash_1.uniqBy)(permissions, (val) => val.slug);
29
57
  if (uniqueBySlug.length !== permissions.length) {
30
58
  throw new common_1.BadRequestException('Duplicate permissions found');
31
59
  }
32
- return permissions;
33
60
  }
34
- exports.permissionsArray = permissionsArray;
35
- function permissionGroupedBySlug() {
36
- const groups = permissionsArray();
37
- return (0, lodash_1.keyBy)(groups, (val) => val.slug);
38
- }
39
- exports.permissionGroupedBySlug = permissionGroupedBySlug;
40
- exports.permission = {
41
- organisation: {
42
- GROUP: {
43
- name: 'Organisation',
44
- slug: 'organisation',
45
- },
46
- PERMISSIONS: {
47
- manage_roles_and_profiles: {
48
- name: 'Manage Roles and Profiles',
49
- slug: 'manage_roles_and_profiles',
50
- permissions: [],
51
- permissionObj: {},
52
- },
53
- manage_user_groups: {
54
- name: 'Manage User Groups',
55
- slug: 'manage_user_groups',
56
- permissions: [],
57
- permissionObj: {},
58
- },
59
- view_audit_logs: {
60
- name: 'View Audit Logs',
61
- slug: 'view_audit_logs',
62
- permissions: [],
63
- permissionObj: {},
64
- },
65
- manage_settings: {
66
- name: 'Manage Settings',
67
- slug: 'manage_settings',
68
- permissions: [],
69
- permissionObj: {},
70
- },
71
- },
72
- },
73
- users: {
74
- GROUP: {
75
- name: 'Users',
76
- slug: 'users',
77
- },
78
- PERMISSIONS: {
79
- users_view: {
80
- name: 'View',
81
- slug: 'users_view',
82
- permissions: ['School User', 'Department User', 'All Users'],
83
- permissionObj: {
84
- School_User: 'School User',
85
- Department_User: 'Department User',
86
- All_Users: 'All Users',
87
- },
88
- },
89
- users_add: {
90
- name: 'Add',
91
- slug: 'users_add',
92
- permissions: ['School User', 'Department User', 'All Users'],
93
- permissionObj: {
94
- School_User: 'School User',
95
- Department_User: 'Department User',
96
- All_Users: 'All Users',
97
- },
98
- },
99
- users_edit: {
100
- name: 'Edit',
101
- slug: 'users_edit',
102
- permissions: ['School User', 'Department User', 'All Users'],
103
- permissionObj: {
104
- School_User: 'School User',
105
- Department_User: 'Department User',
106
- All_Users: 'All Users',
107
- },
108
- },
109
- users_delete: {
110
- name: 'Delete',
111
- slug: 'users_delete',
112
- permissions: ['School User', 'Department User', 'All Users'],
113
- permissionObj: {
114
- School_User: 'School User',
115
- Department_User: 'Department User',
116
- All_Users: 'All Users',
117
- },
118
- },
119
- users_reorder: {
120
- name: 'Reorder',
121
- slug: 'users_reorder',
122
- permissions: ['School User', 'Department User', 'All Users'],
123
- permissionObj: {
124
- School_User: 'School User',
125
- Department_User: 'Department User',
126
- All_Users: 'All Users',
127
- },
128
- },
129
- user_upload_photos: {
130
- name: 'Upload Photos',
131
- slug: 'user_upload_photos',
132
- permissions: [],
133
- permissionObj: {},
134
- },
135
- users_export: {
136
- name: 'Export',
137
- slug: 'users_export',
138
- permissions: [],
139
- permissionObj: {},
140
- },
141
- },
142
- },
143
- admissions: {
144
- GROUP: {
145
- name: 'Admissions',
146
- slug: 'admissions',
147
- },
148
- PERMISSIONS: {
149
- admissions_view: {
150
- name: 'View',
151
- slug: 'admissions_view',
152
- permissions: ['Added', 'Counselled', 'All'],
153
- permissionObj: {
154
- Added: 'Added',
155
- Counselled: 'Counselled',
156
- All: 'All',
157
- },
158
- },
159
- admissions_add: {
160
- name: 'Add',
161
- slug: 'admissions_add',
162
- permissions: ['Added', 'Counselled', 'All'],
163
- permissionObj: {
164
- Added: 'Added',
165
- Counselled: 'Counselled',
166
- All: 'All',
167
- },
168
- },
169
- admissions_edit: {
170
- name: 'Edit',
171
- slug: 'admissions_edit',
172
- permissions: ['Added', 'Counselled', 'All'],
173
- permissionObj: {
174
- Added: 'Added',
175
- Counselled: 'Counselled',
176
- All: 'All',
177
- },
178
- },
179
- admissions_delete: {
180
- name: 'Delete',
181
- slug: 'admissions_delete',
182
- permissions: ['Added', 'Counselled', 'All'],
183
- permissionObj: {
184
- Added: 'Added',
185
- Counselled: 'Counselled',
186
- All: 'All',
187
- },
188
- },
189
- admissions_change_status: {
190
- name: 'Change Status',
191
- slug: 'admissions_change_status',
192
- permissions: ['Added', 'Counselled', 'All'],
193
- permissionObj: {
194
- Added: 'Added',
195
- Counselled: 'Counselled',
196
- All: 'All',
197
- },
198
- },
199
- admissions_import: {
200
- name: 'Import',
201
- slug: 'admissions_import',
202
- permissions: ['Added', 'Counselled', 'All'],
203
- permissionObj: {
204
- Added: 'Added',
205
- Counselled: 'Counselled',
206
- All: 'All',
207
- },
208
- },
209
- admissions_export: {
210
- name: 'Export',
211
- slug: 'admissions_export',
212
- permissions: ['Added', 'Counselled', 'All'],
213
- permissionObj: {
214
- Added: 'Added',
215
- Counselled: 'Counselled',
216
- All: 'All',
217
- },
218
- },
219
- admissions_confirm: {
220
- name: 'Confirm',
221
- slug: 'admissions_confirm',
222
- permissions: ['Added', 'Counselled', 'All'],
223
- permissionObj: {
224
- Added: 'Added',
225
- Counselled: 'Counselled',
226
- All: 'All',
227
- },
228
- },
229
- admission_dashboard_view: {
230
- name: 'Dashboard View',
231
- slug: 'admission_dashboard_view',
232
- permissions: [],
233
- permissionObj: {},
234
- },
235
- admissions_view_cet: {
236
- name: 'View CET',
237
- slug: 'admissions_view_cet',
238
- permissions: [],
239
- permissionObj: {},
240
- },
241
- admissions_download_cet: {
242
- name: 'Download CET',
243
- slug: 'admissions_download_cet',
244
- permissions: [],
245
- permissionObj: {},
246
- },
247
- admissions_view_phd_applications: {
248
- name: 'View PHD Applications',
249
- slug: 'admissions_view_phd_applications',
250
- permissions: [],
251
- permissionObj: {},
252
- },
253
- admissions_download_phd_applications: {
254
- name: 'Download PHD Applications',
255
- slug: 'admissions_download_phd_applications',
256
- permissions: [],
257
- permissionObj: {},
258
- },
259
- },
260
- },
261
- students: {
262
- GROUP: {
263
- name: 'Students',
264
- slug: 'students',
265
- },
266
- PERMISSIONS: {
267
- students_view: {
268
- name: 'View',
269
- slug: 'students_view',
270
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
271
- permissionObj: {
272
- School_User: 'School User',
273
- Department_User: 'Department User',
274
- All_Departments: 'All Departments',
275
- All: 'All',
276
- },
277
- },
278
- students_add: {
279
- name: 'Add',
280
- slug: 'students_add',
281
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
282
- permissionObj: {
283
- School_User: 'School User',
284
- Department_User: 'Department User',
285
- All_Departments: 'All Departments',
286
- All: 'All',
287
- },
288
- },
289
- students_edit: {
290
- name: 'Edit',
291
- slug: 'students_edit',
292
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
293
- permissionObj: {
294
- School_User: 'School User',
295
- Department_User: 'Department User',
296
- All_Departments: 'All Departments',
297
- All: 'All',
298
- },
299
- },
300
- students_delete: {
301
- name: 'Delete',
302
- slug: 'students_delete',
303
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
304
- permissionObj: {
305
- School_User: 'School User',
306
- Department_User: 'Department User',
307
- All_Departments: 'All Departments',
308
- All: 'All',
309
- },
310
- },
311
- students_detain: {
312
- name: 'Detain',
313
- slug: 'students_detain',
314
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
315
- permissionObj: {
316
- School_User: 'School User',
317
- Department_User: 'Department User',
318
- All_Departments: 'All Departments',
319
- All: 'All',
320
- },
321
- },
322
- students_import: {
323
- name: 'Import',
324
- slug: 'students_import',
325
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
326
- permissionObj: {
327
- School_User: 'School User',
328
- Department_User: 'Department User',
329
- All_Departments: 'All Departments',
330
- All: 'All',
331
- },
332
- },
333
- students_export: {
334
- name: 'Export',
335
- slug: 'students_export',
336
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
337
- permissionObj: {
338
- School_User: 'School User',
339
- Department_User: 'Department User',
340
- All_Departments: 'All Departments',
341
- All: 'All',
342
- },
343
- },
344
- students_results: {
345
- name: 'Results',
346
- slug: 'students_results',
347
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
348
- permissionObj: {
349
- School_User: 'School User',
350
- Department_User: 'Department User',
351
- All_Departments: 'All Departments',
352
- All: 'All',
353
- },
354
- },
355
- students_upload_photos: {
356
- name: 'Upload Photos',
357
- slug: 'students_upload_photos',
358
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
359
- permissionObj: {
360
- School_User: 'School User',
361
- Department_User: 'Department User',
362
- All_Departments: 'All Departments',
363
- All: 'All',
364
- },
365
- },
366
- students_transfer: {
367
- name: 'Student Transfer',
368
- slug: 'students_transfer',
369
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
370
- permissionObj: {
371
- School_User: 'School User',
372
- Department_User: 'Department User',
373
- All_Departments: 'All Departments',
374
- All: 'All',
375
- },
376
- },
377
- students_allotment: {
378
- name: 'Student Allotment',
379
- slug: 'students_allotment',
380
- permissions: ['School User', 'Department User', 'All Departments', 'All'],
381
- permissionObj: {
382
- School_User: 'School User',
383
- Department_User: 'Department User',
384
- All_Departments: 'All Departments',
385
- All: 'All',
386
- },
387
- },
388
- },
389
- },
390
- subjects: {
391
- GROUP: {
392
- name: 'Subjects',
393
- slug: 'subjects',
394
- },
395
- PERMISSIONS: {
396
- subjects_view: {
397
- name: 'View',
398
- slug: 'subjects_view',
399
- permissions: ['School User', 'All'],
400
- permissionObj: {
401
- School_User: 'School User',
402
- All: 'All',
403
- },
404
- },
405
- subjects_add: {
406
- name: 'Add',
407
- slug: 'subjects_add',
408
- permissions: ['School User', 'All'],
409
- permissionObj: {
410
- School_User: 'School User',
411
- All: 'All',
412
- },
413
- },
414
- subjects_edit: {
415
- name: 'Edit',
416
- slug: 'subjects_edit',
417
- permissions: ['School User', 'All'],
418
- permissionObj: {
419
- School_User: 'School User',
420
- All: 'All',
421
- },
422
- },
423
- subjects_delete: {
424
- name: 'Delete',
425
- slug: 'subjects_delete',
426
- permissions: ['School User', 'All'],
427
- permissionObj: {
428
- School_User: 'School User',
429
- All: 'All',
430
- },
431
- },
432
- subjects_edit_subject_info: {
433
- name: 'Edit Subject Info',
434
- slug: 'subjects_edit_subject_info',
435
- permissions: ['School User', 'All'],
436
- permissionObj: {
437
- School_User: 'School User',
438
- All: 'All',
439
- },
440
- },
441
- },
442
- },
443
- course_registration: {
444
- GROUP: {
445
- name: 'Course Registrations',
446
- slug: 'course_registration',
447
- },
448
- PERMISSIONS: {
449
- course_registration_view: {
450
- name: 'View',
451
- slug: 'course_registration_view',
452
- permissions: ['School Student', 'Department Student', 'All Students'],
453
- permissionObj: {
454
- School_Student: 'School Student',
455
- Department_Student: 'Department Student',
456
- All_Students: 'All Students',
457
- },
458
- },
459
- course_registration_add: {
460
- name: 'Add',
461
- slug: 'course_registration_add',
462
- permissions: ['School Student', 'Department Student', 'All Students'],
463
- permissionObj: {
464
- School_Student: 'School Student',
465
- Department_Student: 'Department Student',
466
- All_Students: 'All Students',
467
- },
468
- },
469
- course_registration_edit: {
470
- name: 'Edit',
471
- slug: 'course_registration_edit',
472
- permissions: ['School Student', 'Department Student', 'All Students'],
473
- permissionObj: {
474
- School_Student: 'School Student',
475
- Department_Student: 'Department Student',
476
- All_Students: 'All Students',
477
- },
478
- },
479
- course_registration_delete: {
480
- name: 'Delete',
481
- slug: 'course_registration_delete',
482
- permissions: ['School Student', 'Department Student', 'All Students'],
483
- permissionObj: {
484
- School_Student: 'School Student',
485
- Department_Student: 'Department Student',
486
- All_Students: 'All Students',
487
- },
488
- },
489
- },
490
- },
491
- end_semester_examinations: {
492
- GROUP: {
493
- name: 'End Semester Examinations',
494
- slug: 'end_semester_examinations',
495
- },
496
- PERMISSIONS: {
497
- end_semester_examinations_view: {
498
- name: 'View',
499
- slug: 'end_semester_examinations_view',
500
- permissions: ['Assigned', 'All'],
501
- permissionObj: {
502
- Assigned: 'Assigned',
503
- All: 'All',
504
- },
505
- },
506
- end_semester_examinations_add: {
507
- name: 'Add',
508
- slug: 'end_semester_examinations_add',
509
- permissions: ['Assigned', 'All'],
510
- permissionObj: {
511
- Assigned: 'Assigned',
512
- All: 'All',
513
- },
514
- },
515
- end_semester_examinations_edit: {
516
- name: 'Edit',
517
- slug: 'end_semester_examinations_edit',
518
- permissions: ['Assigned', 'All'],
519
- permissionObj: {
520
- Assigned: 'Assigned',
521
- All: 'All',
522
- },
523
- },
524
- end_semester_examinations_delete: {
525
- name: 'Delete',
526
- slug: 'end_semester_examinations_delete',
527
- permissions: ['Assigned', 'All'],
528
- permissionObj: {
529
- Assigned: 'Assigned',
530
- All: 'All',
531
- },
532
- },
533
- end_semester_examinations_manage_exam_fee: {
534
- name: 'Manage Exam Fee',
535
- slug: 'end_semester_examinations_manage_exam_fee',
536
- permissions: ['Assigned', 'All'],
537
- permissionObj: {
538
- Assigned: 'Assigned',
539
- All: 'All',
540
- },
541
- },
542
- exam_collaterals: {
543
- name: 'Exam Collaterals',
544
- slug: 'exam_collaterals',
545
- permissions: ['Assigned', 'All'],
546
- permissionObj: {
547
- Assigned: 'Assigned',
548
- All: 'All',
549
- },
550
- },
551
- revaluation: {
552
- name: 'Revaluation',
553
- slug: 'revaluation',
554
- permissions: [],
555
- permissionObj: {},
556
- },
557
- view_external_marks: {
558
- name: 'View External Marks',
559
- slug: 'view_external_marks',
560
- permissions: ['Assigned', 'All'],
561
- permissionObj: {
562
- Assigned: 'Assigned',
563
- All: 'All',
564
- },
565
- },
566
- },
567
- },
568
- internal_examinations: {
569
- GROUP: {
570
- name: 'Internal Examinations',
571
- slug: 'internal_examinations',
572
- },
573
- PERMISSIONS: {
574
- internal_examinations_view: {
575
- name: 'View',
576
- slug: 'internal_examinations_view',
577
- permissions: ['Assigned', 'All'],
578
- permissionObj: {
579
- Assigned: 'Assigned',
580
- All: 'All',
581
- },
582
- },
583
- internal_examinations_add: {
584
- name: 'Add',
585
- slug: 'internal_examinations_add',
586
- permissions: ['Assigned', 'All'],
587
- permissionObj: {
588
- Assigned: 'Assigned',
589
- All: 'All',
590
- },
591
- },
592
- internal_examinations_edit: {
593
- name: 'Edit',
594
- slug: 'internal_examinations_edit',
595
- permissions: ['Assigned', 'All'],
596
- permissionObj: {
597
- Assigned: 'Assigned',
598
- All: 'All',
599
- },
600
- },
601
- internal_examinations_delete: {
602
- name: 'Delete',
603
- slug: 'internal_examinations_delete',
604
- permissions: ['Assigned', 'All'],
605
- permissionObj: {
606
- Assigned: 'Assigned',
607
- All: 'All',
608
- },
609
- },
610
- internal_examinations_manage_exam_fee: {
611
- name: 'Manage Exam Fee',
612
- slug: 'internal_examinations_manage_exam_fee',
613
- permissions: ['Assigned', 'All'],
614
- permissionObj: {
615
- Assigned: 'Assigned',
616
- All: 'All',
617
- },
618
- },
619
- internal_examinations_manage_halltickets: {
620
- name: 'Manage Halltickets',
621
- slug: 'internal_examinations_manage_halltickets',
622
- permissions: ['Assigned', 'All'],
623
- permissionObj: {
624
- Assigned: 'Assigned',
625
- All: 'All',
626
- },
627
- },
628
- internal_examinations_seating_plan: {
629
- name: 'Seating Plan',
630
- slug: 'internal_examinations_seating_plan',
631
- permissions: ['Assigned', 'All'],
632
- permissionObj: {
633
- Assigned: 'Assigned',
634
- All: 'All',
635
- },
636
- },
637
- internal_examinations_invigilations: {
638
- name: 'Invigilations',
639
- slug: 'internal_examinations_invigilations',
640
- permissions: ['Assigned', 'All'],
641
- permissionObj: {
642
- Assigned: 'Assigned',
643
- All: 'All',
644
- },
645
- },
646
- edit_internal_marks: {
647
- name: 'Edit Internal Marks',
648
- slug: 'edit_internal_marks',
649
- permissions: [],
650
- permissionObj: {},
651
- },
652
- internal_examinations_view_internal_marks: {
653
- name: 'View internal marks',
654
- slug: 'internal_examinations_view_internal_marks',
655
- permissions: ['Assigned', 'All'],
656
- permissionObj: {
657
- Assigned: 'Assigned',
658
- All: 'All',
659
- },
660
- },
661
- },
662
- },
663
- extra_curricular_activities: {
664
- GROUP: {
665
- name: 'Extra Curricular Activities',
666
- slug: 'extra_curricular_activities',
667
- },
668
- PERMISSIONS: {
669
- extra_curricular_activities_news_feed: {
670
- name: 'News Feed',
671
- slug: 'extra_curricular_activities_news_feed',
672
- permissions: ['Assigned', 'All'],
673
- permissionObj: {
674
- Assigned: 'Assigned',
675
- All: 'All',
676
- },
677
- },
678
- extra_curricular_activities_clubs: {
679
- name: 'Clubs',
680
- slug: 'extra_curricular_activities_clubs',
681
- permissions: ['Assigned', 'All'],
682
- permissionObj: {
683
- Assigned: 'Assigned',
684
- All: 'All',
685
- },
686
- },
687
- extra_curricular_activities_events: {
688
- name: 'Events',
689
- slug: 'extra_curricular_activities_events',
690
- permissions: ['Assigned', 'All'],
691
- permissionObj: {
692
- Assigned: 'Assigned',
693
- All: 'All',
694
- },
695
- },
696
- },
697
- },
698
- bundling: {
699
- GROUP: {
700
- name: 'Bundling',
701
- slug: 'bundling',
702
- },
703
- PERMISSIONS: {
704
- view_answer_sheet_report: {
705
- name: 'View Answer Sheet Report',
706
- slug: 'view_answer_sheet_report',
707
- permissions: ['Assigned', 'All'],
708
- permissionObj: {
709
- Assigned: 'Assigned',
710
- All: 'All',
711
- },
712
- },
713
- edit_answer_sheet_marks: {
714
- name: 'Edit Answer Sheet Marks',
715
- slug: 'edit_answer_sheet_marks',
716
- permissions: ['Assigned', 'All'],
717
- permissionObj: {
718
- Assigned: 'Assigned',
719
- All: 'All',
720
- },
721
- },
722
- edit_external_marks: {
723
- name: 'Edit External Marks',
724
- slug: 'edit_external_marks',
725
- permissions: ['Assigned', 'All'],
726
- permissionObj: {
727
- Assigned: 'Assigned',
728
- All: 'All',
729
- },
730
- },
731
- bundling_view: {
732
- name: 'View',
733
- slug: 'bundling_view',
734
- permissions: ['Assigned', 'All'],
735
- permissionObj: {
736
- Assigned: 'Assigned',
737
- All: 'All',
738
- },
739
- },
740
- bundling_add: {
741
- name: 'Add',
742
- slug: 'bundling_add',
743
- permissions: [],
744
- permissionObj: {},
745
- },
746
- bundling_edit: {
747
- name: 'Edit',
748
- slug: 'bundling_edit',
749
- permissions: ['Assigned', 'All'],
750
- permissionObj: {
751
- Assigned: 'Assigned',
752
- All: 'All',
753
- },
754
- },
755
- bundling_delete: {
756
- name: 'Delete',
757
- slug: 'bundling_delete',
758
- permissions: [],
759
- permissionObj: {},
760
- },
761
- },
762
- },
763
- classroom: {
764
- GROUP: {
765
- name: 'Classrooms',
766
- slug: 'classroom',
767
- },
768
- PERMISSIONS: {
769
- classroom_view: {
770
- name: 'View',
771
- slug: 'classroom_view',
772
- permissions: ['Department User', 'Same Classroom', 'Assigned', 'All'],
773
- permissionObj: {
774
- Department_User: 'Department User',
775
- Same_Classroom: 'Same Classroom',
776
- Assigned: 'Assigned',
777
- All: 'All',
778
- },
779
- },
780
- classroom_add: {
781
- name: 'Add',
782
- slug: 'classroom_add',
783
- permissions: [],
784
- permissionObj: {},
785
- },
786
- classroom_edit: {
787
- name: 'Edit',
788
- slug: 'classroom_edit',
789
- permissions: ['Department User', 'Same Classroom', 'Assigned', 'All'],
790
- permissionObj: {
791
- Department_User: 'Department User',
792
- Same_Classroom: 'Same Classroom',
793
- Assigned: 'Assigned',
794
- All: 'All',
795
- },
796
- },
797
- classroom_delete: {
798
- name: 'Delete',
799
- slug: 'classroom_delete',
800
- permissions: [],
801
- permissionObj: {},
802
- },
803
- classroom_re_assign_faculty: {
804
- name: 'Re-Assign Faculty',
805
- slug: 'classroom_re_assign_faculty',
806
- permissions: ['Department User', 'Assigned', 'All'],
807
- permissionObj: {
808
- Department_User: 'Department User',
809
- Assigned: 'Assigned',
810
- All: 'All',
811
- },
812
- },
813
- classroom_reports: {
814
- name: 'Reports',
815
- slug: 'classroom_reports',
816
- permissions: ['Department User', 'Assigned', 'All'],
817
- permissionObj: {
818
- Department_User: 'Department User',
819
- Assigned: 'Assigned',
820
- All: 'All',
821
- },
822
- },
823
- classroom_revoke_marks: {
824
- name: 'Revoke Marks',
825
- slug: 'classroom_revoke_marks',
826
- permissions: [],
827
- permissionObj: {},
828
- },
829
- classroom_subjects_view: {
830
- name: 'Subjects View',
831
- slug: 'classroom_subjects_view',
832
- permissions: ['All', 'Department User', 'Assigned'],
833
- permissionObj: {
834
- All: 'All',
835
- Department_User: 'Department User',
836
- Assigned: 'Assigned',
837
- },
838
- },
839
- classroom_subject_attendance_edit: {
840
- name: 'Edit Subject Attendance',
841
- slug: 'classroom_subject_attendance_edit',
842
- permissions: ['All', 'Department User'],
843
- permissionObj: {
844
- All: 'All',
845
- Department_User: 'Department User',
846
- },
847
- },
848
- },
849
- },
850
- feed: {
851
- GROUP: {
852
- name: 'Feed',
853
- slug: 'feed',
854
- },
855
- PERMISSIONS: {
856
- feed_add: {
857
- name: 'Add',
858
- slug: 'feed_add',
859
- permissions: ['All', 'Same Department', 'Same Classroom'],
860
- permissionObj: {
861
- All: 'All',
862
- Same_Department: 'Same Department',
863
- Same_Classroom: 'Same Classroom',
864
- },
865
- },
866
- },
867
- },
868
- programs: {
869
- GROUP: {
870
- name: 'Programs',
871
- slug: 'programs',
872
- },
873
- PERMISSIONS: {
874
- programs_add: {
875
- name: 'Add',
876
- slug: 'programs_add',
877
- permissions: [],
878
- permissionObj: {},
879
- },
880
- programs_view: {
881
- name: 'View',
882
- slug: 'programs_view',
883
- permissions: [],
884
- permissionObj: {},
885
- },
886
- programs_edit: {
887
- name: 'Edit',
888
- slug: 'programs_edit',
889
- permissions: [],
890
- permissionObj: {},
891
- },
892
- programs_delete: {
893
- name: 'Delete',
894
- slug: 'programs_delete',
895
- permissions: [],
896
- permissionObj: {},
897
- },
898
- },
899
- },
900
- degrees: {
901
- GROUP: {
902
- name: 'Degrees',
903
- slug: 'degrees',
904
- },
905
- PERMISSIONS: {
906
- degrees_add: {
907
- name: 'Add',
908
- slug: 'degrees_add',
909
- permissions: [],
910
- permissionObj: {},
911
- },
912
- degrees_view: {
913
- name: 'View',
914
- slug: 'degrees_view',
915
- permissions: [],
916
- permissionObj: {},
917
- },
918
- degrees_edit: {
919
- name: 'Edit',
920
- slug: 'degrees_edit',
921
- permissions: [],
922
- permissionObj: {},
923
- },
924
- degrees_delete: {
925
- name: 'Delete',
926
- slug: 'degrees_delete',
927
- permissions: [],
928
- permissionObj: {},
929
- },
930
- },
931
- },
932
- semesters: {
933
- GROUP: {
934
- name: 'Semesters',
935
- slug: 'semesters',
936
- },
937
- PERMISSIONS: {
938
- semesters_view: {
939
- name: 'View',
940
- slug: 'semesters_view',
941
- permissions: [],
942
- permissionObj: {},
943
- },
944
- semesters_add: {
945
- name: 'Add',
946
- slug: 'semesters_add',
947
- permissions: [],
948
- permissionObj: {},
949
- },
950
- semesters_edit: {
951
- name: 'Edit',
952
- slug: 'semesters_edit',
953
- permissions: [],
954
- permissionObj: {},
955
- },
956
- semesters_delete: {
957
- name: 'Delete',
958
- slug: 'semesters_delete',
959
- permissions: [],
960
- permissionObj: {},
961
- },
962
- },
963
- },
964
- curriculums: {
965
- GROUP: {
966
- name: 'Curriculums',
967
- slug: 'curriculums',
968
- },
969
- PERMISSIONS: {
970
- curriculums_add: {
971
- name: 'Add',
972
- slug: 'curriculums_add',
973
- permissions: [],
974
- permissionObj: {},
975
- },
976
- curriculums_view: {
977
- name: 'View',
978
- slug: 'curriculums_view',
979
- permissions: [],
980
- permissionObj: {},
981
- },
982
- curriculums_edit: {
983
- name: 'Edit',
984
- slug: 'curriculums_edit',
985
- permissions: [],
986
- permissionObj: {},
987
- },
988
- curriculums_delete: {
989
- name: 'Delete',
990
- slug: 'curriculums_delete',
991
- permissions: [],
992
- permissionObj: {},
993
- },
994
- },
995
- },
996
- assessment_rules: {
997
- GROUP: {
998
- name: 'Assessment Rules',
999
- slug: 'assessment_rules',
1000
- },
1001
- PERMISSIONS: {
1002
- assessment_rules_view: {
1003
- name: 'View',
1004
- slug: 'assessment_rules_view',
1005
- permissions: [],
1006
- permissionObj: {},
1007
- },
1008
- assessment_rules_add: {
1009
- name: 'Add',
1010
- slug: 'assessment_rules_add',
1011
- permissions: [],
1012
- permissionObj: {},
1013
- },
1014
- assessment_rules_edit: {
1015
- name: 'Edit',
1016
- slug: 'assessment_rules_edit',
1017
- permissions: [],
1018
- permissionObj: {},
1019
- },
1020
- assessment_rules_delete: {
1021
- name: 'Delete',
1022
- slug: 'assessment_rules_delete',
1023
- permissions: [],
1024
- permissionObj: {},
1025
- },
1026
- },
1027
- },
1028
- examinations: {
1029
- GROUP: {
1030
- name: 'Examinations',
1031
- slug: 'examinations',
1032
- },
1033
- PERMISSIONS: {
1034
- examinations_seating_plan: {
1035
- name: 'Seating Plan',
1036
- slug: 'examinations_seating_plan',
1037
- permissions: [],
1038
- permissionObj: {},
1039
- },
1040
- examinations_invigilations: {
1041
- name: 'Invigilations',
1042
- slug: 'examinations_invigilations',
1043
- permissions: [],
1044
- permissionObj: {},
1045
- },
1046
- examinations_manage_marks_division: {
1047
- name: 'Manage Marks Division',
1048
- slug: 'examinations_manage_marks_division',
1049
- permissions: [],
1050
- permissionObj: {},
1051
- },
1052
- },
1053
- },
1054
- results_processing: {
1055
- GROUP: {
1056
- name: 'Results Processing',
1057
- slug: 'results_processing',
1058
- },
1059
- PERMISSIONS: {
1060
- results_processing_view: {
1061
- name: 'View',
1062
- slug: 'results_processing_view',
1063
- permissions: [],
1064
- permissionObj: {},
1065
- },
1066
- results_processing_publish_results: {
1067
- name: 'Publish Results',
1068
- slug: 'results_processing_publish_results',
1069
- permissions: [],
1070
- permissionObj: {},
1071
- },
1072
- results_processing_moderation_and_grafting: {
1073
- name: 'Moderation & Grafting',
1074
- slug: 'results_processing_moderation_and_grafting',
1075
- permissions: [],
1076
- permissionObj: {},
1077
- },
1078
- results_processing_generate_memos: {
1079
- name: "Generate Memo's",
1080
- slug: 'results_processing_generate_memos',
1081
- permissions: [],
1082
- permissionObj: {},
1083
- },
1084
- results_processing_update_internal_marks: {
1085
- name: 'Update Internal Marks',
1086
- slug: 'results_processing_update_internal_marks',
1087
- permissions: [],
1088
- permissionObj: {},
1089
- },
1090
- results_processing_view_reports: {
1091
- name: 'View Reports',
1092
- slug: 'results_processing_view_reports',
1093
- permissions: [],
1094
- permissionObj: {},
1095
- },
1096
- },
1097
- },
1098
- lead_status: {
1099
- GROUP: {
1100
- name: 'Lead Status',
1101
- slug: 'lead_status',
1102
- },
1103
- PERMISSIONS: {
1104
- lead_status_view: {
1105
- name: 'View',
1106
- slug: 'lead_status_view',
1107
- permissions: [],
1108
- permissionObj: {},
1109
- },
1110
- lead_status_add: {
1111
- name: 'Add',
1112
- slug: 'lead_status_add',
1113
- permissions: [],
1114
- permissionObj: {},
1115
- },
1116
- lead_status_edit: {
1117
- name: 'Edit',
1118
- slug: 'lead_status_edit',
1119
- permissions: [],
1120
- permissionObj: {},
1121
- },
1122
- lead_status_delete: {
1123
- name: 'Delete',
1124
- slug: 'lead_status_delete',
1125
- permissions: [],
1126
- permissionObj: {},
1127
- },
1128
- },
1129
- },
1130
- hosteler: {
1131
- GROUP: {
1132
- name: 'Hosteler',
1133
- slug: 'hosteler',
1134
- },
1135
- PERMISSIONS: {
1136
- hosteler_add: {
1137
- name: 'Add',
1138
- slug: 'hosteler_add',
1139
- permissions: ['All', 'Assigned'],
1140
- permissionObj: {
1141
- All: 'All',
1142
- Assigned: 'Assigned',
1143
- },
1144
- },
1145
- hosteler_edit: {
1146
- name: 'Edit',
1147
- slug: 'hosteler_edit',
1148
- permissions: ['All', 'Assigned'],
1149
- permissionObj: {
1150
- All: 'All',
1151
- Assigned: 'Assigned',
1152
- },
1153
- },
1154
- hosteler_view: {
1155
- name: 'View',
1156
- slug: 'hosteler_view',
1157
- permissions: ['All', 'Assigned'],
1158
- permissionObj: {
1159
- All: 'All',
1160
- Assigned: 'Assigned',
1161
- },
1162
- },
1163
- hosteler_change_status: {
1164
- name: 'Change Status',
1165
- slug: 'hosteler_change_status',
1166
- permissions: ['All', 'Assigned'],
1167
- permissionObj: {
1168
- All: 'All',
1169
- Assigned: 'Assigned',
1170
- },
1171
- },
1172
- hosteler_face_data_reset: {
1173
- name: 'Face Data Reset',
1174
- slug: 'hosteler_face_data_reset',
1175
- permissions: ['All', 'Assigned'],
1176
- permissionObj: {
1177
- All: 'All',
1178
- Assigned: 'Assigned',
1179
- },
1180
- },
1181
- hosteler_dashboard_view: {
1182
- name: 'Dashboard view',
1183
- slug: 'hosteler_dashboard_view',
1184
- permissions: ['All', 'Assigned'],
1185
- permissionObj: {
1186
- All: 'All',
1187
- Assigned: 'Assigned',
1188
- },
1189
- },
1190
- hosteler_fee_payments_view: {
1191
- name: 'Fee payments view',
1192
- slug: 'hosteler_fee_payments_view',
1193
- permissions: ['All', 'Assigned'],
1194
- permissionObj: {
1195
- All: 'All',
1196
- Assigned: 'Assigned',
1197
- },
1198
- },
1199
- hosteler_reports_view: {
1200
- name: 'Reports view',
1201
- slug: 'hosteler_reports_view',
1202
- permissions: ['All', 'Assigned'],
1203
- permissionObj: {
1204
- All: 'All',
1205
- Assigned: 'Assigned',
1206
- },
1207
- },
1208
- },
1209
- },
1210
- hosteler_settings: {
1211
- GROUP: {
1212
- name: 'Hosteler Settings',
1213
- slug: 'hosteler_settings',
1214
- },
1215
- PERMISSIONS: {
1216
- hosteler_settings_view_configuration: {
1217
- name: 'View Configuration',
1218
- slug: 'hosteler_settings_view_configuration',
1219
- permissions: [],
1220
- permissionObj: {},
1221
- },
1222
- hosteler_settings_edit_configuration: {
1223
- name: 'Edit Configuration',
1224
- slug: 'hosteler_settings_edit_configuration',
1225
- permissions: [],
1226
- permissionObj: {},
1227
- },
1228
- hosteler_settings_add_fee_types: {
1229
- name: 'Add Fee Types',
1230
- slug: 'hosteler_settings_add_fee_types',
1231
- permissions: [],
1232
- permissionObj: {},
1233
- },
1234
- hosteler_settings_view_fee_types: {
1235
- name: 'View Fee Types',
1236
- slug: 'hosteler_settings_view_fee_types',
1237
- permissions: [],
1238
- permissionObj: {},
1239
- },
1240
- hosteler_settings_edit_fee_types: {
1241
- name: 'Edit Fee Types',
1242
- slug: 'hosteler_settings_edit_fee_types',
1243
- permissions: [],
1244
- permissionObj: {},
1245
- },
1246
- hosteler_settings_delete_fee_types: {
1247
- name: 'Delete Fee Types',
1248
- slug: 'hosteler_settings_delete_fee_types',
1249
- permissions: [],
1250
- permissionObj: {},
1251
- },
1252
- hosteler_settings_blocks_view: {
1253
- name: 'Blocks View',
1254
- slug: 'hosteler_settings_blocks_view',
1255
- permissions: [],
1256
- permissionObj: {},
1257
- },
1258
- hosteler_settings_blocks_add: {
1259
- name: 'Blocks Add',
1260
- slug: 'hosteler_settings_blocks_add',
1261
- permissions: [],
1262
- permissionObj: {},
1263
- },
1264
- hosteler_settings_blocks_edit: {
1265
- name: 'Blocks Edit',
1266
- slug: 'hosteler_settings_blocks_edit',
1267
- permissions: [],
1268
- permissionObj: {},
1269
- },
1270
- hosteler_settings_blocks_delete: {
1271
- name: 'Blocks Delete',
1272
- slug: 'hosteler_settings_blocks_delete',
1273
- permissions: [],
1274
- permissionObj: {},
1275
- },
1276
- hosteler_settings_rooms_view: {
1277
- name: 'Rooms View',
1278
- slug: 'hosteler_settings_rooms_view',
1279
- permissions: [],
1280
- permissionObj: {},
1281
- },
1282
- hosteler_settings_rooms_add: {
1283
- name: 'Rooms Add',
1284
- slug: 'hosteler_settings_rooms_add',
1285
- permissions: [],
1286
- permissionObj: {},
1287
- },
1288
- hosteler_settings_rooms_edit: {
1289
- name: 'Rooms Edit',
1290
- slug: 'hosteler_settings_rooms_edit',
1291
- permissions: [],
1292
- permissionObj: {},
1293
- },
1294
- hosteler_settings_rooms_delete: {
1295
- name: 'Rooms Delete',
1296
- slug: 'hosteler_settings_rooms_delete',
1297
- permissions: [],
1298
- permissionObj: {},
1299
- },
1300
- hosteler_settings_amenities_view: {
1301
- name: 'Amenities View',
1302
- slug: 'hosteler_settings_amenities_view',
1303
- permissions: [],
1304
- permissionObj: {},
1305
- },
1306
- hosteler_settings_amenities_add: {
1307
- name: 'Amenities Add',
1308
- slug: 'hosteler_settings_amenities_add',
1309
- permissions: [],
1310
- permissionObj: {},
1311
- },
1312
- hosteler_settings_amenities_edit: {
1313
- name: 'Amenities Edit',
1314
- slug: 'hosteler_settings_amenities_edit',
1315
- permissions: [],
1316
- permissionObj: {},
1317
- },
1318
- hosteler_settings_amenities_delete: {
1319
- name: 'Amenities Delete',
1320
- slug: 'hosteler_settings_amenities_delete',
1321
- permissions: [],
1322
- permissionObj: {},
1323
- },
1324
- hosteler_settings_import_hostel_rooms: {
1325
- name: 'Import Hostel Rooms',
1326
- slug: 'hosteler_settings_import_hostel_rooms',
1327
- permissions: [],
1328
- permissionObj: {},
1329
- },
1330
- },
1331
- },
1332
- schools: {
1333
- GROUP: {
1334
- name: 'Schools',
1335
- slug: 'schools',
1336
- },
1337
- PERMISSIONS: {
1338
- schools_view: {
1339
- name: 'View',
1340
- slug: 'schools_view',
1341
- permissions: [],
1342
- permissionObj: {},
1343
- },
1344
- schools_add: {
1345
- name: 'Add',
1346
- slug: 'schools_add',
1347
- permissions: [],
1348
- permissionObj: {},
1349
- },
1350
- schools_edit: {
1351
- name: 'Edit',
1352
- slug: 'schools_edit',
1353
- permissions: [],
1354
- permissionObj: {},
1355
- },
1356
- schools_delete: {
1357
- name: 'Delete',
1358
- slug: 'schools_delete',
1359
- permissions: [],
1360
- permissionObj: {},
1361
- },
1362
- },
1363
- },
1364
- subject_types: {
1365
- GROUP: {
1366
- name: 'Subject Types',
1367
- slug: 'subject_types',
1368
- },
1369
- PERMISSIONS: {
1370
- subject_types_view: {
1371
- name: 'View',
1372
- slug: 'subject_types_view',
1373
- permissions: [],
1374
- permissionObj: {},
1375
- },
1376
- subject_types_add: {
1377
- name: 'Add',
1378
- slug: 'subject_types_add',
1379
- permissions: [],
1380
- permissionObj: {},
1381
- },
1382
- subject_types_edit: {
1383
- name: 'Edit',
1384
- slug: 'subject_types_edit',
1385
- permissions: [],
1386
- permissionObj: {},
1387
- },
1388
- subject_types_delete: {
1389
- name: 'Delete',
1390
- slug: 'subject_types_delete',
1391
- permissions: [],
1392
- permissionObj: {},
1393
- },
1394
- },
1395
- },
1396
- assessment_types: {
1397
- GROUP: {
1398
- name: 'Assessment Types',
1399
- slug: 'assessment_types',
1400
- },
1401
- PERMISSIONS: {
1402
- assessment_types_view: {
1403
- name: 'View',
1404
- slug: 'assessment_types_view',
1405
- permissions: [],
1406
- permissionObj: {},
1407
- },
1408
- assessment_types_add: {
1409
- name: 'Add',
1410
- slug: 'assessment_types_add',
1411
- permissions: [],
1412
- permissionObj: {},
1413
- },
1414
- assessment_types_edit: {
1415
- name: 'Edit',
1416
- slug: 'assessment_types_edit',
1417
- permissions: [],
1418
- permissionObj: {},
1419
- },
1420
- assessment_types_delete: {
1421
- name: 'Delete',
1422
- slug: 'assessment_types_delete',
1423
- permissions: [],
1424
- permissionObj: {},
1425
- },
1426
- },
1427
- },
1428
- master_subject: {
1429
- GROUP: {
1430
- name: 'Master Subject',
1431
- slug: 'master_subject',
1432
- },
1433
- PERMISSIONS: {
1434
- master_subject_view: {
1435
- name: 'View',
1436
- slug: 'master_subject_view',
1437
- permissions: [],
1438
- permissionObj: {},
1439
- },
1440
- master_subject_add: {
1441
- name: 'Add',
1442
- slug: 'master_subject_add',
1443
- permissions: [],
1444
- permissionObj: {},
1445
- },
1446
- master_subject_edit: {
1447
- name: 'Edit',
1448
- slug: 'master_subject_edit',
1449
- permissions: [],
1450
- permissionObj: {},
1451
- },
1452
- master_subject_delete: {
1453
- name: 'Delete',
1454
- slug: 'master_subject_delete',
1455
- permissions: [],
1456
- permissionObj: {},
1457
- },
1458
- },
1459
- },
1460
- academic_calendar: {
1461
- GROUP: {
1462
- name: 'Academic Calendar',
1463
- slug: 'academic_calendar',
1464
- },
1465
- PERMISSIONS: {
1466
- academic_calendar_view: {
1467
- name: 'View',
1468
- slug: 'academic_calendar_view',
1469
- permissions: [],
1470
- permissionObj: {},
1471
- },
1472
- academic_calendar_event_add: {
1473
- name: 'Add Events',
1474
- slug: 'academic_calendar_event_add',
1475
- permissions: [],
1476
- permissionObj: {},
1477
- },
1478
- academic_calendar_event_edit: {
1479
- name: 'Edit Events',
1480
- slug: 'academic_calendar_event_edit',
1481
- permissions: [],
1482
- permissionObj: {},
1483
- },
1484
- academic_calendar_event_delete: {
1485
- name: 'Delete Events',
1486
- slug: 'academic_calendar_event_delete',
1487
- permissions: [],
1488
- permissionObj: {},
1489
- },
1490
- },
1491
- },
1492
- designations: {
1493
- GROUP: {
1494
- name: 'Designations',
1495
- slug: 'designations',
1496
- },
1497
- PERMISSIONS: {
1498
- designations_add: {
1499
- name: 'Add',
1500
- slug: 'designations_add',
1501
- permissions: [],
1502
- permissionObj: {},
1503
- },
1504
- designations_edit: {
1505
- name: 'Edit',
1506
- slug: 'designations_edit',
1507
- permissions: [],
1508
- permissionObj: {},
1509
- },
1510
- designations_view: {
1511
- name: 'View',
1512
- slug: 'designations_view',
1513
- permissions: [],
1514
- permissionObj: {},
1515
- },
1516
- designations_delete: {
1517
- name: 'Delete',
1518
- slug: 'designations_delete',
1519
- permissions: [],
1520
- permissionObj: {},
1521
- },
1522
- },
1523
- },
1524
- tasks: {
1525
- GROUP: {
1526
- name: 'Tasks',
1527
- slug: 'tasks',
1528
- },
1529
- PERMISSIONS: {
1530
- tasks_add: {
1531
- name: 'Add',
1532
- slug: 'tasks_add',
1533
- permissions: [],
1534
- permissionObj: {},
1535
- },
1536
- tasks_edit: {
1537
- name: 'Edit',
1538
- slug: 'tasks_edit',
1539
- permissions: ['All', 'Member'],
1540
- permissionObj: {
1541
- All: 'All',
1542
- Member: 'Member',
1543
- },
1544
- },
1545
- tasks_change_status: {
1546
- name: 'Change Status',
1547
- slug: 'tasks_change_status',
1548
- permissions: ['All', 'Member'],
1549
- permissionObj: {
1550
- All: 'All',
1551
- Member: 'Member',
1552
- },
1553
- },
1554
- tasks_view: {
1555
- name: 'View',
1556
- slug: 'tasks_view',
1557
- permissions: ['All', 'Member'],
1558
- permissionObj: {
1559
- All: 'All',
1560
- Member: 'Member',
1561
- },
1562
- },
1563
- tasks_delete: {
1564
- name: 'Delete',
1565
- slug: 'tasks_delete',
1566
- permissions: ['All', 'Member'],
1567
- permissionObj: {
1568
- All: 'All',
1569
- Member: 'Member',
1570
- },
1571
- },
1572
- },
1573
- },
1574
- fee_counters: {
1575
- GROUP: {
1576
- name: 'Fee Counters',
1577
- slug: 'fee_counters',
1578
- },
1579
- PERMISSIONS: {
1580
- fee_counter_academic_fee: {
1581
- name: 'Academic Fee',
1582
- slug: 'fee_counter_academic_fee',
1583
- permissions: [],
1584
- permissionObj: {},
1585
- },
1586
- fee_counter_exam_fee: {
1587
- name: 'Exam Fee',
1588
- slug: 'fee_counter_exam_fee',
1589
- permissions: [],
1590
- permissionObj: {},
1591
- },
1592
- },
1593
- },
1594
- evaluators: {
1595
- GROUP: {
1596
- name: 'Evaluators',
1597
- slug: 'evaluators',
1598
- },
1599
- PERMISSIONS: {
1600
- evaluators_view: {
1601
- name: 'View',
1602
- slug: 'evaluators_view',
1603
- permissions: [],
1604
- permissionObj: {},
1605
- },
1606
- evaluators_add: {
1607
- name: 'Add',
1608
- slug: 'evaluators_add',
1609
- permissions: [],
1610
- permissionObj: {},
1611
- },
1612
- evaluators_edit: {
1613
- name: 'Edit',
1614
- slug: 'evaluators_edit',
1615
- permissions: [],
1616
- permissionObj: {},
1617
- },
1618
- evaluators_delete: {
1619
- name: 'Delete',
1620
- slug: 'evaluators_delete',
1621
- permissions: [],
1622
- permissionObj: {},
1623
- },
1624
- },
1625
- },
1626
- exam_registrations: {
1627
- GROUP: {
1628
- name: 'Exam Registrations',
1629
- slug: 'exam_registrations',
1630
- },
1631
- PERMISSIONS: {
1632
- exam_registrations_view: {
1633
- name: 'View',
1634
- slug: 'exam_registrations_view',
1635
- permissions: [],
1636
- permissionObj: {},
1637
- },
1638
- exam_registrations_add: {
1639
- name: 'Add',
1640
- slug: 'exam_registrations_add',
1641
- permissions: [],
1642
- permissionObj: {},
1643
- },
1644
- },
1645
- },
1646
- hall_tickets: {
1647
- GROUP: {
1648
- name: 'Hall Tickets',
1649
- slug: 'hall_tickets',
1650
- },
1651
- PERMISSIONS: {
1652
- hall_tickets_view: {
1653
- name: 'View',
1654
- slug: 'hall_tickets_view',
1655
- permissions: [],
1656
- permissionObj: {},
1657
- },
1658
- },
1659
- },
1660
- omrs: {
1661
- GROUP: {
1662
- name: 'Omrs',
1663
- slug: 'omrs',
1664
- },
1665
- PERMISSIONS: {
1666
- omrs_view: {
1667
- name: 'View',
1668
- slug: 'omrs_view',
1669
- permissions: [],
1670
- permissionObj: {},
1671
- },
1672
- omrs_update: {
1673
- name: 'Update',
1674
- slug: 'omrs_update',
1675
- permissions: [],
1676
- permissionObj: {},
1677
- },
1678
- },
1679
- },
1680
- paper_configuration: {
1681
- GROUP: {
1682
- name: 'Paper Configuration',
1683
- slug: 'paper_configuration',
1684
- },
1685
- PERMISSIONS: {
1686
- paper_configuration_view: {
1687
- name: 'View',
1688
- slug: 'paper_configuration_view',
1689
- permissions: [],
1690
- permissionObj: {},
1691
- },
1692
- paper_configuration_add: {
1693
- name: 'Add',
1694
- slug: 'paper_configuration_add',
1695
- permissions: [],
1696
- permissionObj: {},
1697
- },
1698
- paper_configuration_edit: {
1699
- name: 'Edit',
1700
- slug: 'paper_configuration_edit',
1701
- permissions: [],
1702
- permissionObj: {},
1703
- },
1704
- paper_configuration_delete: {
1705
- name: 'Delete',
1706
- slug: 'paper_configuration_delete',
1707
- permissions: [],
1708
- permissionObj: {},
1709
- },
1710
- },
1711
- },
1712
- internal_marks: {
1713
- GROUP: {
1714
- name: 'Internal Marks',
1715
- slug: 'internal_marks',
1716
- },
1717
- PERMISSIONS: {
1718
- internal_marks_view: {
1719
- name: 'View',
1720
- slug: 'internal_marks_view',
1721
- permissions: [],
1722
- permissionObj: {},
1723
- },
1724
- internal_marks_add: {
1725
- name: 'Add',
1726
- slug: 'internal_marks_add',
1727
- permissions: [],
1728
- permissionObj: {},
1729
- },
1730
- internal_marks_edit: {
1731
- name: 'Edit',
1732
- slug: 'internal_marks_edit',
1733
- permissions: [],
1734
- permissionObj: {},
1735
- },
1736
- },
1737
- },
1738
- external_marks: {
1739
- GROUP: {
1740
- name: 'External Marks',
1741
- slug: 'external_marks',
1742
- },
1743
- PERMISSIONS: {
1744
- external_marks_view: {
1745
- name: 'View',
1746
- slug: 'external_marks_view',
1747
- permissions: [],
1748
- permissionObj: {},
1749
- },
1750
- external_marks_add: {
1751
- name: 'Add',
1752
- slug: 'external_marks_add',
1753
- permissions: [],
1754
- permissionObj: {},
1755
- },
1756
- external_marks_edit: {
1757
- name: 'Edit',
1758
- slug: 'external_marks_edit',
1759
- permissions: [],
1760
- permissionObj: {},
1761
- },
1762
- },
1763
- },
1764
- d_forms: {
1765
- GROUP: {
1766
- name: 'D-forms',
1767
- slug: 'd_forms',
1768
- },
1769
- PERMISSIONS: {
1770
- d_forms_view: {
1771
- name: 'View',
1772
- slug: 'd_forms_view',
1773
- permissions: [],
1774
- permissionObj: {},
1775
- },
1776
- d_forms_add: {
1777
- name: 'Add',
1778
- slug: 'd_forms_add',
1779
- permissions: [],
1780
- permissionObj: {},
1781
- },
1782
- },
1783
- },
1784
- exam_rooms: {
1785
- GROUP: {
1786
- name: 'Exam Rooms',
1787
- slug: 'exam_rooms',
1788
- },
1789
- PERMISSIONS: {
1790
- exam_rooms_view: {
1791
- name: 'View',
1792
- slug: 'exam_rooms_view',
1793
- permissions: [],
1794
- permissionObj: {},
1795
- },
1796
- exam_rooms_add: {
1797
- name: 'Add',
1798
- slug: 'exam_rooms_add',
1799
- permissions: [],
1800
- permissionObj: {},
1801
- },
1802
- exam_rooms_edit: {
1803
- name: 'Edit',
1804
- slug: 'exam_rooms_edit',
1805
- permissions: [],
1806
- permissionObj: {},
1807
- },
1808
- exam_rooms_delete: {
1809
- name: 'Delete',
1810
- slug: 'exam_rooms_delete',
1811
- permissions: [],
1812
- permissionObj: {},
1813
- },
1814
- },
1815
- },
1816
- exam_timetable: {
1817
- GROUP: {
1818
- name: 'Exam Timetable',
1819
- slug: 'exam_timetable',
1820
- },
1821
- PERMISSIONS: {
1822
- exam_timetable_view: {
1823
- name: 'View',
1824
- slug: 'exam_timetable_view',
1825
- permissions: [],
1826
- permissionObj: {},
1827
- },
1828
- exam_timetable_add: {
1829
- name: 'Add',
1830
- slug: 'exam_timetable_add',
1831
- permissions: [],
1832
- permissionObj: {},
1833
- },
1834
- exam_timetable_edit: {
1835
- name: 'Edit',
1836
- slug: 'exam_timetable_edit',
1837
- permissions: [],
1838
- permissionObj: {},
1839
- },
1840
- exam_timetable_delete: {
1841
- name: 'Delete',
1842
- slug: 'exam_timetable_delete',
1843
- permissions: [],
1844
- permissionObj: {},
1845
- },
1846
- },
1847
- },
1848
- time_slots: {
1849
- GROUP: {
1850
- name: 'Time Slots',
1851
- slug: 'time_slots',
1852
- },
1853
- PERMISSIONS: {
1854
- time_slots_view: {
1855
- name: 'View',
1856
- slug: 'time_slots_view',
1857
- permissions: [],
1858
- permissionObj: {},
1859
- },
1860
- time_slots_add: {
1861
- name: 'Add',
1862
- slug: 'time_slots_add',
1863
- permissions: [],
1864
- permissionObj: {},
1865
- },
1866
- time_slots_edit: {
1867
- name: 'Edit',
1868
- slug: 'time_slots_edit',
1869
- permissions: [],
1870
- permissionObj: {},
1871
- },
1872
- time_slots_delete: {
1873
- name: 'Delete',
1874
- slug: 'time_slots_delete',
1875
- permissions: [],
1876
- permissionObj: {},
1877
- },
1878
- },
1879
- },
1880
- quotas: {
1881
- GROUP: {
1882
- name: 'Quotas',
1883
- slug: 'quotas',
1884
- },
1885
- PERMISSIONS: {
1886
- quotas_view: {
1887
- name: 'View',
1888
- slug: 'quotas_view',
1889
- permissions: [],
1890
- permissionObj: {},
1891
- },
1892
- quotas_add: {
1893
- name: 'Add',
1894
- slug: 'quotas_add',
1895
- permissions: [],
1896
- permissionObj: {},
1897
- },
1898
- quotas_edit: {
1899
- name: 'Edit',
1900
- slug: 'quotas_edit',
1901
- permissions: [],
1902
- permissionObj: {},
1903
- },
1904
- quotas_delete: {
1905
- name: 'Delete',
1906
- slug: 'quotas_delete',
1907
- permissions: [],
1908
- permissionObj: {},
1909
- },
1910
- },
1911
- },
1912
- grades: {
1913
- GROUP: {
1914
- name: 'Grades',
1915
- slug: 'grades',
1916
- },
1917
- PERMISSIONS: {
1918
- grades_view: {
1919
- name: 'View',
1920
- slug: 'grades_view',
1921
- permissions: [],
1922
- permissionObj: {},
1923
- },
1924
- grades_add: {
1925
- name: 'Add',
1926
- slug: 'grades_add',
1927
- permissions: [],
1928
- permissionObj: {},
1929
- },
1930
- grades_edit: {
1931
- name: 'Edit',
1932
- slug: 'grades_edit',
1933
- permissions: [],
1934
- permissionObj: {},
1935
- },
1936
- grades_delete: {
1937
- name: 'Delete',
1938
- slug: 'grades_delete',
1939
- permissions: [],
1940
- permissionObj: {},
1941
- },
1942
- },
1943
- },
61
+ exports.checkPermissions = checkPermissions;
62
+ exports.APermission = {
63
+ square: square_permissions_1.SquarePermission,
64
+ payments: payments_permissions_1.PaymentsPermission,
65
+ enroll_x: enroll_x_permissions_1.EnrollXPermission,
66
+ exams: exams_permissions_1.ExamsPermission,
67
+ hostels: hostels_permissions_1.HostelsPermission,
68
+ hrms: people_x_permissions_1.PeopleXPermissions,
69
+ commute_x: commute_x_permissions_1.CommuteXPermissions,
1944
70
  };
71
+ exports.PermissionGroup = {
72
+ ...square_permissions_1.SquarePermission,
73
+ ...payments_permissions_1.PaymentsPermission,
74
+ ...enroll_x_permissions_1.EnrollXPermission,
75
+ ...exams_permissions_1.ExamsPermission,
76
+ ...hostels_permissions_1.HostelsPermission,
77
+ ...people_x_permissions_1.PeopleXPermissions,
78
+ ...commute_x_permissions_1.CommuteXPermissions,
79
+ };
80
+ async function addDefaultProfiles(manager, profiles) {
81
+ profiles = (0, lodash_1.uniqBy)(profiles, (val) => `${val.application}-${val.name}`);
82
+ for (const data of profiles) {
83
+ const currPermissionsMap = (0, lodash_1.keyBy)(data.permissions, (val) => val.permissionSlug);
84
+ // create or update profile
85
+ let profile = await manager.findOne(domain_1.Profile, {
86
+ where: { name: data.name, application: data.application },
87
+ });
88
+ if (!profile) {
89
+ profile = new domain_1.Profile();
90
+ }
91
+ profile.name = data.name;
92
+ profile.application = data.application;
93
+ profile.isAdmin = data.isAdmin;
94
+ profile.description = data.description;
95
+ profile.isDefault = true;
96
+ await manager.save(profile);
97
+ const existingPermissions = await manager.find(domain_1.ProfilePermission, {
98
+ where: { profileId: profile.id },
99
+ });
100
+ const existingPermissionsMap = (0, lodash_1.keyBy)(existingPermissions, (val) => val.permissionSlug);
101
+ for (const currP of data.permissions) {
102
+ const permission = new domain_1.ProfilePermission();
103
+ permission.profileId = profile.id;
104
+ permission.groupSlug = currP.groupSlug;
105
+ permission.permissionSlug = currP.permissionSlug;
106
+ permission.hasPermission = true;
107
+ permission.permissions = currP.permissions;
108
+ const existingPermission = existingPermissionsMap[currP.permissionSlug];
109
+ if (existingPermission) {
110
+ await manager.update(domain_1.ProfilePermission, existingPermission.id, permission);
111
+ }
112
+ else {
113
+ await manager.insert(domain_1.ProfilePermission, permission);
114
+ }
115
+ }
116
+ const deletedPermissions = existingPermissions.filter((v) => !currPermissionsMap[v.permissionSlug]);
117
+ if (deletedPermissions.length) {
118
+ await manager.delete(domain_1.ProfilePermission, { id: (0, typeorm_1.In)(deletedPermissions.map((v) => v.id)) });
119
+ }
120
+ }
121
+ }
122
+ exports.addDefaultProfiles = addDefaultProfiles;
1945
123
  //# sourceMappingURL=permissions.js.map