@flusys/nestjs-iam 7.1.0 → 8.0.0

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 (175) hide show
  1. package/config/index.d.ts +3 -3
  2. package/config/message-keys.d.ts +2 -0
  3. package/controllers/action.controller.d.ts +4 -4
  4. package/controllers/company-action-permission.controller.d.ts +2 -2
  5. package/controllers/index.d.ts +6 -6
  6. package/controllers/my-permission.controller.d.ts +3 -3
  7. package/controllers/role-permission.controller.d.ts +5 -4
  8. package/controllers/role.controller.d.ts +2 -2
  9. package/controllers/user-action-permission.controller.d.ts +5 -4
  10. package/docs/iam-swagger.config.d.ts +2 -2
  11. package/docs/index.d.ts +1 -1
  12. package/dtos/action.dto.d.ts +2 -2
  13. package/dtos/index.d.ts +3 -3
  14. package/dtos/permission.dto.d.ts +16 -0
  15. package/entities/action.entity.d.ts +2 -2
  16. package/entities/index.d.ts +11 -11
  17. package/entities/permission-with-company.entity.d.ts +1 -1
  18. package/entities/role-with-company.entity.d.ts +1 -1
  19. package/entities/role.entity.d.ts +1 -1
  20. package/entities/user-iam-permission.entity.d.ts +1 -1
  21. package/enums/index.d.ts +4 -4
  22. package/fesm/284.js +1316 -0
  23. package/fesm/867.js +3801 -0
  24. package/fesm/chunks/364.js +86 -0
  25. package/fesm/config/index.js +135 -3
  26. package/fesm/controllers/index.js +18 -7
  27. package/fesm/docs/index.js +240 -1
  28. package/fesm/dtos/index.js +1168 -3
  29. package/fesm/entities/index.js +670 -31
  30. package/fesm/enums/index.js +97 -4
  31. package/fesm/helpers/index.js +125 -2
  32. package/fesm/index.js +818 -11
  33. package/fesm/interfaces/index.js +17 -3
  34. package/fesm/modules/index.js +259 -1
  35. package/fesm/runtime.js +134 -0
  36. package/fesm/services/index.js +43 -6
  37. package/fesm/types/index.js +15 -1
  38. package/helpers/company-access.helper.d.ts +2 -2
  39. package/helpers/index.d.ts +2 -2
  40. package/helpers/permission-mode.helper.d.ts +1 -1
  41. package/index.d.ts +11 -11
  42. package/interfaces/action.interface.d.ts +2 -2
  43. package/interfaces/iam-module-options.interface.d.ts +3 -3
  44. package/interfaces/index.d.ts +3 -3
  45. package/modules/iam.module.d.ts +2 -2
  46. package/modules/index.d.ts +1 -1
  47. package/package.json +30 -37
  48. package/services/action.service.d.ts +9 -9
  49. package/services/iam-config.service.d.ts +4 -4
  50. package/services/iam-datasource.service.d.ts +3 -3
  51. package/services/index.d.ts +6 -6
  52. package/services/permission-cache.service.d.ts +5 -5
  53. package/services/permission.service.d.ts +6 -4
  54. package/services/role.service.d.ts +8 -8
  55. package/types/index.d.ts +1 -1
  56. package/cjs/config/event-actions.js +0 -36
  57. package/cjs/config/iam.constants.js +0 -11
  58. package/cjs/config/index.js +0 -20
  59. package/cjs/config/message-keys.js +0 -71
  60. package/cjs/controllers/action.controller.js +0 -174
  61. package/cjs/controllers/action.controller.spec.js +0 -79
  62. package/cjs/controllers/company-action-permission.controller.js +0 -119
  63. package/cjs/controllers/company-action-permission.controller.spec.js +0 -65
  64. package/cjs/controllers/index.js +0 -23
  65. package/cjs/controllers/my-permission.controller.js +0 -147
  66. package/cjs/controllers/my-permission.controller.spec.js +0 -128
  67. package/cjs/controllers/role-permission.controller.js +0 -191
  68. package/cjs/controllers/role-permission.controller.spec.js +0 -140
  69. package/cjs/controllers/role.controller.js +0 -102
  70. package/cjs/controllers/role.controller.spec.js +0 -86
  71. package/cjs/controllers/user-action-permission.controller.js +0 -129
  72. package/cjs/controllers/user-action-permission.controller.spec.js +0 -68
  73. package/cjs/docs/iam-swagger.config.js +0 -209
  74. package/cjs/docs/iam-swagger.config.spec.js +0 -99
  75. package/cjs/docs/index.js +0 -18
  76. package/cjs/dtos/action.dto.js +0 -282
  77. package/cjs/dtos/index.js +0 -21
  78. package/cjs/dtos/permission.dto.js +0 -637
  79. package/cjs/dtos/role.dto.js +0 -155
  80. package/cjs/entities/action.entity.js +0 -138
  81. package/cjs/entities/index.js +0 -80
  82. package/cjs/entities/index.spec.js +0 -56
  83. package/cjs/entities/permission-base.entity.js +0 -107
  84. package/cjs/entities/permission-with-company.entity.js +0 -100
  85. package/cjs/entities/role-base.entity.js +0 -80
  86. package/cjs/entities/role-with-company.entity.js +0 -55
  87. package/cjs/entities/role.entity.js +0 -25
  88. package/cjs/entities/user-iam-permission.entity.js +0 -43
  89. package/cjs/enums/action-type.enum.js +0 -22
  90. package/cjs/enums/iam-entity-type.enum.js +0 -17
  91. package/cjs/enums/iam-permission-type.enum.js +0 -17
  92. package/cjs/enums/index.js +0 -21
  93. package/cjs/enums/permission-type.enum.js +0 -16
  94. package/cjs/helpers/company-access.helper.js +0 -23
  95. package/cjs/helpers/company-access.helper.spec.js +0 -68
  96. package/cjs/helpers/index.js +0 -19
  97. package/cjs/helpers/permission-mode.helper.js +0 -49
  98. package/cjs/helpers/permission-mode.helper.spec.js +0 -54
  99. package/cjs/index.js +0 -28
  100. package/cjs/interfaces/action.interface.js +0 -4
  101. package/cjs/interfaces/iam-module-options.interface.js +0 -4
  102. package/cjs/interfaces/index.js +0 -20
  103. package/cjs/interfaces/role.interface.js +0 -7
  104. package/cjs/modules/iam.module.js +0 -186
  105. package/cjs/modules/iam.module.spec.js +0 -282
  106. package/cjs/modules/index.js +0 -18
  107. package/cjs/services/action.service.js +0 -337
  108. package/cjs/services/action.service.spec.js +0 -351
  109. package/cjs/services/iam-config.service.js +0 -87
  110. package/cjs/services/iam-config.service.spec.js +0 -110
  111. package/cjs/services/iam-datasource.service.js +0 -129
  112. package/cjs/services/iam-datasource.service.spec.js +0 -110
  113. package/cjs/services/index.js +0 -23
  114. package/cjs/services/permission-cache.service.js +0 -544
  115. package/cjs/services/permission-cache.service.spec.js +0 -718
  116. package/cjs/services/permission.service.js +0 -914
  117. package/cjs/services/permission.service.spec.js +0 -918
  118. package/cjs/services/role.service.js +0 -224
  119. package/cjs/services/role.service.spec.js +0 -347
  120. package/cjs/types/index.js +0 -18
  121. package/cjs/types/logic-node.type.js +0 -30
  122. package/fesm/config/event-actions.js +0 -15
  123. package/fesm/config/iam.constants.js +0 -1
  124. package/fesm/config/message-keys.js +0 -35
  125. package/fesm/controllers/action.controller.js +0 -164
  126. package/fesm/controllers/action.controller.spec.js +0 -75
  127. package/fesm/controllers/company-action-permission.controller.js +0 -109
  128. package/fesm/controllers/company-action-permission.controller.spec.js +0 -61
  129. package/fesm/controllers/my-permission.controller.js +0 -137
  130. package/fesm/controllers/my-permission.controller.spec.js +0 -124
  131. package/fesm/controllers/role-permission.controller.js +0 -181
  132. package/fesm/controllers/role-permission.controller.spec.js +0 -136
  133. package/fesm/controllers/role.controller.js +0 -92
  134. package/fesm/controllers/role.controller.spec.js +0 -82
  135. package/fesm/controllers/user-action-permission.controller.js +0 -119
  136. package/fesm/controllers/user-action-permission.controller.spec.js +0 -64
  137. package/fesm/docs/iam-swagger.config.js +0 -199
  138. package/fesm/docs/iam-swagger.config.spec.js +0 -95
  139. package/fesm/dtos/action.dto.js +0 -252
  140. package/fesm/dtos/permission.dto.js +0 -571
  141. package/fesm/dtos/role.dto.js +0 -134
  142. package/fesm/entities/action.entity.js +0 -128
  143. package/fesm/entities/index.spec.js +0 -52
  144. package/fesm/entities/permission-base.entity.js +0 -100
  145. package/fesm/entities/permission-with-company.entity.js +0 -90
  146. package/fesm/entities/role-base.entity.js +0 -70
  147. package/fesm/entities/role-with-company.entity.js +0 -45
  148. package/fesm/entities/role.entity.js +0 -15
  149. package/fesm/entities/user-iam-permission.entity.js +0 -33
  150. package/fesm/enums/action-type.enum.js +0 -12
  151. package/fesm/enums/iam-entity-type.enum.js +0 -7
  152. package/fesm/enums/iam-permission-type.enum.js +0 -7
  153. package/fesm/enums/permission-type.enum.js +0 -6
  154. package/fesm/helpers/company-access.helper.js +0 -18
  155. package/fesm/helpers/company-access.helper.spec.js +0 -64
  156. package/fesm/helpers/permission-mode.helper.js +0 -49
  157. package/fesm/helpers/permission-mode.helper.spec.js +0 -50
  158. package/fesm/interfaces/action.interface.js +0 -3
  159. package/fesm/interfaces/iam-module-options.interface.js +0 -3
  160. package/fesm/interfaces/role.interface.js +0 -4
  161. package/fesm/modules/iam.module.js +0 -176
  162. package/fesm/modules/iam.module.spec.js +0 -278
  163. package/fesm/services/action.service.js +0 -327
  164. package/fesm/services/action.service.spec.js +0 -347
  165. package/fesm/services/iam-config.service.js +0 -77
  166. package/fesm/services/iam-config.service.spec.js +0 -106
  167. package/fesm/services/iam-datasource.service.js +0 -78
  168. package/fesm/services/iam-datasource.service.spec.js +0 -106
  169. package/fesm/services/permission-cache.service.js +0 -527
  170. package/fesm/services/permission-cache.service.spec.js +0 -714
  171. package/fesm/services/permission.service.js +0 -904
  172. package/fesm/services/permission.service.spec.js +0 -914
  173. package/fesm/services/role.service.js +0 -214
  174. package/fesm/services/role.service.spec.js +0 -343
  175. package/fesm/types/logic-node.type.js +0 -27
@@ -1,571 +0,0 @@
1
- function _define_property(obj, key, value) {
2
- if (key in obj) {
3
- Object.defineProperty(obj, key, {
4
- value: value,
5
- enumerable: true,
6
- configurable: true,
7
- writable: true
8
- });
9
- } else {
10
- obj[key] = value;
11
- }
12
- return obj;
13
- }
14
- function _ts_decorate(decorators, target, key, desc) {
15
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17
- else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
18
- return c > 3 && r && Object.defineProperty(target, key, r), r;
19
- }
20
- function _ts_metadata(k, v) {
21
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
22
- }
23
- import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
24
- import { Type } from 'class-transformer';
25
- import { IsArray, IsEnum, IsOptional, IsString, IsUUID, ValidateNested } from 'class-validator';
26
- export var PermissionAction = /*#__PURE__*/ function(PermissionAction) {
27
- PermissionAction["ADD"] = "add";
28
- PermissionAction["REMOVE"] = "remove";
29
- return PermissionAction;
30
- }({});
31
- export class PermissionItemDto {
32
- constructor(){
33
- _define_property(this, "id", void 0);
34
- _define_property(this, "action", void 0);
35
- }
36
- }
37
- _ts_decorate([
38
- ApiProperty({
39
- description: 'ID of the target (action or role)'
40
- }),
41
- IsUUID(),
42
- _ts_metadata("design:type", String)
43
- ], PermissionItemDto.prototype, "id", void 0);
44
- _ts_decorate([
45
- ApiProperty({
46
- description: 'Action to perform',
47
- enum: PermissionAction,
48
- example: "add"
49
- }),
50
- IsEnum(PermissionAction),
51
- _ts_metadata("design:type", String)
52
- ], PermissionItemDto.prototype, "action", void 0);
53
- export class AssignUserActionsDto {
54
- constructor(){
55
- _define_property(this, "userId", void 0);
56
- _define_property(this, "companyId", void 0);
57
- _define_property(this, "branchId", void 0);
58
- _define_property(this, "items", void 0);
59
- }
60
- }
61
- _ts_decorate([
62
- ApiProperty({
63
- description: 'User ID'
64
- }),
65
- IsUUID(),
66
- _ts_metadata("design:type", String)
67
- ], AssignUserActionsDto.prototype, "userId", void 0);
68
- _ts_decorate([
69
- ApiPropertyOptional({
70
- description: 'Company ID (for company-wide or branch-specific assignments)'
71
- }),
72
- IsUUID(),
73
- IsOptional(),
74
- _ts_metadata("design:type", String)
75
- ], AssignUserActionsDto.prototype, "companyId", void 0);
76
- _ts_decorate([
77
- ApiPropertyOptional({
78
- description: 'Branch ID (null = company-wide, set = branch-specific)'
79
- }),
80
- IsUUID(),
81
- IsOptional(),
82
- _ts_metadata("design:type", String)
83
- ], AssignUserActionsDto.prototype, "branchId", void 0);
84
- _ts_decorate([
85
- ApiProperty({
86
- description: 'Array of actions to assign/remove',
87
- type: [
88
- PermissionItemDto
89
- ]
90
- }),
91
- IsArray(),
92
- ValidateNested({
93
- each: true
94
- }),
95
- Type(()=>PermissionItemDto),
96
- _ts_metadata("design:type", Array)
97
- ], AssignUserActionsDto.prototype, "items", void 0);
98
- export class AssignCompanyActionsDto {
99
- constructor(){
100
- _define_property(this, "companyId", void 0);
101
- _define_property(this, "items", void 0);
102
- }
103
- }
104
- _ts_decorate([
105
- ApiProperty({
106
- description: 'Company ID'
107
- }),
108
- IsUUID(),
109
- _ts_metadata("design:type", String)
110
- ], AssignCompanyActionsDto.prototype, "companyId", void 0);
111
- _ts_decorate([
112
- ApiProperty({
113
- description: 'Array of actions to assign/remove to company (whitelist)',
114
- type: [
115
- PermissionItemDto
116
- ]
117
- }),
118
- IsArray(),
119
- ValidateNested({
120
- each: true
121
- }),
122
- Type(()=>PermissionItemDto),
123
- _ts_metadata("design:type", Array)
124
- ], AssignCompanyActionsDto.prototype, "items", void 0);
125
- export class AssignRoleActionsDto {
126
- constructor(){
127
- _define_property(this, "roleId", void 0);
128
- _define_property(this, "items", void 0);
129
- }
130
- }
131
- _ts_decorate([
132
- ApiProperty({
133
- description: 'Role ID'
134
- }),
135
- IsUUID(),
136
- _ts_metadata("design:type", String)
137
- ], AssignRoleActionsDto.prototype, "roleId", void 0);
138
- _ts_decorate([
139
- ApiProperty({
140
- description: 'Array of actions to assign/remove',
141
- type: [
142
- PermissionItemDto
143
- ]
144
- }),
145
- IsArray(),
146
- ValidateNested({
147
- each: true
148
- }),
149
- Type(()=>PermissionItemDto),
150
- _ts_metadata("design:type", Array)
151
- ], AssignRoleActionsDto.prototype, "items", void 0);
152
- export class AssignUserRolesDto {
153
- constructor(){
154
- _define_property(this, "userId", void 0);
155
- _define_property(this, "companyId", void 0);
156
- _define_property(this, "branchId", void 0);
157
- _define_property(this, "items", void 0);
158
- }
159
- }
160
- _ts_decorate([
161
- ApiProperty({
162
- description: 'User ID'
163
- }),
164
- IsUUID(),
165
- _ts_metadata("design:type", String)
166
- ], AssignUserRolesDto.prototype, "userId", void 0);
167
- _ts_decorate([
168
- ApiPropertyOptional({
169
- description: 'Company ID (for company-wide or branch-specific assignments)'
170
- }),
171
- IsUUID(),
172
- IsOptional(),
173
- _ts_metadata("design:type", String)
174
- ], AssignUserRolesDto.prototype, "companyId", void 0);
175
- _ts_decorate([
176
- ApiPropertyOptional({
177
- description: 'Branch ID (null = company-wide, set = branch-specific)'
178
- }),
179
- IsUUID(),
180
- IsOptional(),
181
- _ts_metadata("design:type", String)
182
- ], AssignUserRolesDto.prototype, "branchId", void 0);
183
- _ts_decorate([
184
- ApiProperty({
185
- description: 'Array of roles to assign/remove',
186
- type: [
187
- PermissionItemDto
188
- ]
189
- }),
190
- IsArray(),
191
- ValidateNested({
192
- each: true
193
- }),
194
- Type(()=>PermissionItemDto),
195
- _ts_metadata("design:type", Array)
196
- ], AssignUserRolesDto.prototype, "items", void 0);
197
- export class GetUserActionsDto {
198
- constructor(){
199
- _define_property(this, "userId", void 0);
200
- _define_property(this, "companyId", void 0);
201
- _define_property(this, "branchId", void 0);
202
- }
203
- }
204
- _ts_decorate([
205
- ApiProperty({
206
- description: 'User ID to get actions for'
207
- }),
208
- IsUUID(),
209
- _ts_metadata("design:type", String)
210
- ], GetUserActionsDto.prototype, "userId", void 0);
211
- _ts_decorate([
212
- ApiPropertyOptional({
213
- description: 'Company ID (ignored when enableCompanyFeature is false)'
214
- }),
215
- IsUUID(),
216
- IsOptional(),
217
- _ts_metadata("design:type", String)
218
- ], GetUserActionsDto.prototype, "companyId", void 0);
219
- _ts_decorate([
220
- ApiPropertyOptional({
221
- description: 'Branch ID to filter by branch (ignored when enableCompanyFeature is false)'
222
- }),
223
- IsUUID(),
224
- IsOptional(),
225
- _ts_metadata("design:type", String)
226
- ], GetUserActionsDto.prototype, "branchId", void 0);
227
- export class GetRoleActionsDto {
228
- constructor(){
229
- _define_property(this, "roleId", void 0);
230
- }
231
- }
232
- _ts_decorate([
233
- ApiProperty({
234
- description: 'Role ID to get actions for'
235
- }),
236
- IsUUID(),
237
- _ts_metadata("design:type", String)
238
- ], GetRoleActionsDto.prototype, "roleId", void 0);
239
- export class GetCompanyActionsDto {
240
- constructor(){
241
- _define_property(this, "companyId", void 0);
242
- }
243
- }
244
- _ts_decorate([
245
- ApiProperty({
246
- description: 'Company ID to get actions for'
247
- }),
248
- IsUUID(),
249
- _ts_metadata("design:type", String)
250
- ], GetCompanyActionsDto.prototype, "companyId", void 0);
251
- export class GetUserRolesDto {
252
- constructor(){
253
- _define_property(this, "userId", void 0);
254
- _define_property(this, "companyId", void 0);
255
- _define_property(this, "branchId", void 0);
256
- }
257
- }
258
- _ts_decorate([
259
- ApiProperty({
260
- description: 'User ID to get roles for'
261
- }),
262
- IsUUID(),
263
- _ts_metadata("design:type", String)
264
- ], GetUserRolesDto.prototype, "userId", void 0);
265
- _ts_decorate([
266
- ApiPropertyOptional({
267
- description: 'Company ID (ignored when enableCompanyFeature is false)'
268
- }),
269
- IsUUID(),
270
- IsOptional(),
271
- _ts_metadata("design:type", String)
272
- ], GetUserRolesDto.prototype, "companyId", void 0);
273
- _ts_decorate([
274
- ApiPropertyOptional({
275
- description: 'Branch ID to filter by branch (ignored when enableCompanyFeature is false)'
276
- }),
277
- IsUUID(),
278
- IsOptional(),
279
- _ts_metadata("design:type", String)
280
- ], GetUserRolesDto.prototype, "branchId", void 0);
281
- export class UserActionResponseDto {
282
- constructor(){
283
- _define_property(this, "id", void 0);
284
- _define_property(this, "userId", void 0);
285
- _define_property(this, "actionId", void 0);
286
- _define_property(this, "actionCode", void 0);
287
- _define_property(this, "actionName", void 0);
288
- _define_property(this, "companyId", void 0);
289
- _define_property(this, "branchId", void 0);
290
- _define_property(this, "createdAt", void 0);
291
- }
292
- }
293
- _ts_decorate([
294
- ApiProperty({
295
- description: 'Permission ID'
296
- }),
297
- _ts_metadata("design:type", String)
298
- ], UserActionResponseDto.prototype, "id", void 0);
299
- _ts_decorate([
300
- ApiProperty({
301
- description: 'User ID'
302
- }),
303
- _ts_metadata("design:type", String)
304
- ], UserActionResponseDto.prototype, "userId", void 0);
305
- _ts_decorate([
306
- ApiProperty({
307
- description: 'Action ID'
308
- }),
309
- _ts_metadata("design:type", String)
310
- ], UserActionResponseDto.prototype, "actionId", void 0);
311
- _ts_decorate([
312
- ApiProperty({
313
- description: 'Action code'
314
- }),
315
- _ts_metadata("design:type", String)
316
- ], UserActionResponseDto.prototype, "actionCode", void 0);
317
- _ts_decorate([
318
- ApiProperty({
319
- description: 'Action name'
320
- }),
321
- _ts_metadata("design:type", String)
322
- ], UserActionResponseDto.prototype, "actionName", void 0);
323
- _ts_decorate([
324
- ApiPropertyOptional({
325
- description: 'Company ID (null = global)'
326
- }),
327
- _ts_metadata("design:type", Object)
328
- ], UserActionResponseDto.prototype, "companyId", void 0);
329
- _ts_decorate([
330
- ApiPropertyOptional({
331
- description: 'Branch ID (null = company-wide)'
332
- }),
333
- _ts_metadata("design:type", Object)
334
- ], UserActionResponseDto.prototype, "branchId", void 0);
335
- _ts_decorate([
336
- ApiProperty({
337
- description: 'When this permission was created'
338
- }),
339
- _ts_metadata("design:type", typeof Date === "undefined" ? Object : Date)
340
- ], UserActionResponseDto.prototype, "createdAt", void 0);
341
- export class RoleActionResponseDto {
342
- constructor(){
343
- _define_property(this, "id", void 0);
344
- _define_property(this, "roleId", void 0);
345
- _define_property(this, "actionId", void 0);
346
- _define_property(this, "actionCode", void 0);
347
- _define_property(this, "actionName", void 0);
348
- _define_property(this, "createdAt", void 0);
349
- }
350
- }
351
- _ts_decorate([
352
- ApiProperty({
353
- description: 'Permission ID'
354
- }),
355
- _ts_metadata("design:type", String)
356
- ], RoleActionResponseDto.prototype, "id", void 0);
357
- _ts_decorate([
358
- ApiProperty({
359
- description: 'Role ID'
360
- }),
361
- _ts_metadata("design:type", String)
362
- ], RoleActionResponseDto.prototype, "roleId", void 0);
363
- _ts_decorate([
364
- ApiProperty({
365
- description: 'Action ID'
366
- }),
367
- _ts_metadata("design:type", String)
368
- ], RoleActionResponseDto.prototype, "actionId", void 0);
369
- _ts_decorate([
370
- ApiProperty({
371
- description: 'Action code'
372
- }),
373
- _ts_metadata("design:type", String)
374
- ], RoleActionResponseDto.prototype, "actionCode", void 0);
375
- _ts_decorate([
376
- ApiProperty({
377
- description: 'Action name'
378
- }),
379
- _ts_metadata("design:type", String)
380
- ], RoleActionResponseDto.prototype, "actionName", void 0);
381
- _ts_decorate([
382
- ApiProperty({
383
- description: 'When this permission was created'
384
- }),
385
- _ts_metadata("design:type", typeof Date === "undefined" ? Object : Date)
386
- ], RoleActionResponseDto.prototype, "createdAt", void 0);
387
- export class CompanyActionResponseDto {
388
- constructor(){
389
- _define_property(this, "id", void 0);
390
- _define_property(this, "companyId", void 0);
391
- _define_property(this, "actionId", void 0);
392
- _define_property(this, "actionCode", void 0);
393
- _define_property(this, "actionName", void 0);
394
- _define_property(this, "createdAt", void 0);
395
- }
396
- }
397
- _ts_decorate([
398
- ApiProperty({
399
- description: 'Permission ID'
400
- }),
401
- _ts_metadata("design:type", String)
402
- ], CompanyActionResponseDto.prototype, "id", void 0);
403
- _ts_decorate([
404
- ApiProperty({
405
- description: 'Company ID'
406
- }),
407
- _ts_metadata("design:type", String)
408
- ], CompanyActionResponseDto.prototype, "companyId", void 0);
409
- _ts_decorate([
410
- ApiProperty({
411
- description: 'Action ID'
412
- }),
413
- _ts_metadata("design:type", String)
414
- ], CompanyActionResponseDto.prototype, "actionId", void 0);
415
- _ts_decorate([
416
- ApiProperty({
417
- description: 'Action Code'
418
- }),
419
- _ts_metadata("design:type", String)
420
- ], CompanyActionResponseDto.prototype, "actionCode", void 0);
421
- _ts_decorate([
422
- ApiProperty({
423
- description: 'Action Name'
424
- }),
425
- _ts_metadata("design:type", String)
426
- ], CompanyActionResponseDto.prototype, "actionName", void 0);
427
- _ts_decorate([
428
- ApiProperty({
429
- description: 'When this permission was created'
430
- }),
431
- _ts_metadata("design:type", typeof Date === "undefined" ? Object : Date)
432
- ], CompanyActionResponseDto.prototype, "createdAt", void 0);
433
- export class UserRoleResponseDto {
434
- constructor(){
435
- _define_property(this, "id", void 0);
436
- _define_property(this, "userId", void 0);
437
- _define_property(this, "roleId", void 0);
438
- _define_property(this, "roleName", void 0);
439
- _define_property(this, "branchId", void 0);
440
- _define_property(this, "createdAt", void 0);
441
- }
442
- }
443
- _ts_decorate([
444
- ApiProperty({
445
- description: 'Permission ID'
446
- }),
447
- _ts_metadata("design:type", String)
448
- ], UserRoleResponseDto.prototype, "id", void 0);
449
- _ts_decorate([
450
- ApiProperty({
451
- description: 'User ID'
452
- }),
453
- _ts_metadata("design:type", String)
454
- ], UserRoleResponseDto.prototype, "userId", void 0);
455
- _ts_decorate([
456
- ApiProperty({
457
- description: 'Role ID'
458
- }),
459
- _ts_metadata("design:type", String)
460
- ], UserRoleResponseDto.prototype, "roleId", void 0);
461
- _ts_decorate([
462
- ApiProperty({
463
- description: 'Role name'
464
- }),
465
- _ts_metadata("design:type", String)
466
- ], UserRoleResponseDto.prototype, "roleName", void 0);
467
- _ts_decorate([
468
- ApiPropertyOptional({
469
- description: 'Branch ID (null = company-wide)'
470
- }),
471
- _ts_metadata("design:type", Object)
472
- ], UserRoleResponseDto.prototype, "branchId", void 0);
473
- _ts_decorate([
474
- ApiProperty({
475
- description: 'When this permission was created'
476
- }),
477
- _ts_metadata("design:type", typeof Date === "undefined" ? Object : Date)
478
- ], UserRoleResponseDto.prototype, "createdAt", void 0);
479
- export class FrontendActionDto {
480
- constructor(){
481
- _define_property(this, "code", void 0);
482
- _define_property(this, "name", void 0);
483
- _define_property(this, "description", void 0);
484
- }
485
- }
486
- _ts_decorate([
487
- ApiProperty({
488
- description: 'Action code'
489
- }),
490
- _ts_metadata("design:type", String)
491
- ], FrontendActionDto.prototype, "code", void 0);
492
- _ts_decorate([
493
- ApiProperty({
494
- description: 'Action name'
495
- }),
496
- _ts_metadata("design:type", String)
497
- ], FrontendActionDto.prototype, "name", void 0);
498
- _ts_decorate([
499
- ApiPropertyOptional({
500
- description: 'Action description'
501
- }),
502
- _ts_metadata("design:type", Object)
503
- ], FrontendActionDto.prototype, "description", void 0);
504
- export class MyPermissionsQueryDto {
505
- constructor(){
506
- _define_property(this, "parentCodes", void 0);
507
- }
508
- }
509
- _ts_decorate([
510
- ApiPropertyOptional({
511
- description: 'Filter by parent action codes',
512
- example: [
513
- 'user',
514
- 'role'
515
- ],
516
- type: [
517
- String
518
- ]
519
- }),
520
- IsArray(),
521
- IsString({
522
- each: true
523
- }),
524
- IsOptional(),
525
- _ts_metadata("design:type", Array)
526
- ], MyPermissionsQueryDto.prototype, "parentCodes", void 0);
527
- export class MyPermissionsResponseDto {
528
- constructor(){
529
- _define_property(this, "frontendActions", void 0);
530
- _define_property(this, "cachedEndpoints", void 0);
531
- }
532
- }
533
- _ts_decorate([
534
- ApiProperty({
535
- type: [
536
- FrontendActionDto
537
- ]
538
- }),
539
- _ts_metadata("design:type", Array)
540
- ], MyPermissionsResponseDto.prototype, "frontendActions", void 0);
541
- _ts_decorate([
542
- ApiProperty({
543
- description: 'Number of endpoint actions cached for PermissionGuard'
544
- }),
545
- _ts_metadata("design:type", Number)
546
- ], MyPermissionsResponseDto.prototype, "cachedEndpoints", void 0);
547
- export class PermissionOperationResultDto {
548
- constructor(){
549
- _define_property(this, "added", void 0);
550
- _define_property(this, "removed", void 0);
551
- _define_property(this, "total", void 0);
552
- }
553
- }
554
- _ts_decorate([
555
- ApiProperty({
556
- description: 'Number of permissions added'
557
- }),
558
- _ts_metadata("design:type", Number)
559
- ], PermissionOperationResultDto.prototype, "added", void 0);
560
- _ts_decorate([
561
- ApiProperty({
562
- description: 'Number of permissions removed'
563
- }),
564
- _ts_metadata("design:type", Number)
565
- ], PermissionOperationResultDto.prototype, "removed", void 0);
566
- _ts_decorate([
567
- ApiProperty({
568
- description: 'Number of permissions requested'
569
- }),
570
- _ts_metadata("design:type", Number)
571
- ], PermissionOperationResultDto.prototype, "total", void 0);
@@ -1,134 +0,0 @@
1
- function _define_property(obj, key, value) {
2
- if (key in obj) {
3
- Object.defineProperty(obj, key, {
4
- value: value,
5
- enumerable: true,
6
- configurable: true,
7
- writable: true
8
- });
9
- } else {
10
- obj[key] = value;
11
- }
12
- return obj;
13
- }
14
- function _ts_decorate(decorators, target, key, desc) {
15
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17
- else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
18
- return c > 3 && r && Object.defineProperty(target, key, r), r;
19
- }
20
- function _ts_metadata(k, v) {
21
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
22
- }
23
- import { IdentityResponseDto } from '@flusys/nestjs-shared/dtos';
24
- import { ApiProperty, PartialType } from '@nestjs/swagger';
25
- import { Expose } from 'class-transformer';
26
- import { IsBoolean, IsInt, IsNotEmpty, IsOptional, IsString, IsUUID, MaxLength } from 'class-validator';
27
- export class CreateRoleDto {
28
- constructor(){
29
- _define_property(this, "name", void 0);
30
- _define_property(this, "description", void 0);
31
- _define_property(this, "companyId", void 0);
32
- _define_property(this, "isActive", void 0);
33
- _define_property(this, "serial", void 0);
34
- }
35
- }
36
- _ts_decorate([
37
- ApiProperty({
38
- description: 'Role name',
39
- example: 'Manager'
40
- }),
41
- IsString(),
42
- IsNotEmpty(),
43
- MaxLength(255),
44
- _ts_metadata("design:type", String)
45
- ], CreateRoleDto.prototype, "name", void 0);
46
- _ts_decorate([
47
- ApiProperty({
48
- description: 'Role description',
49
- example: 'Management level access',
50
- required: false
51
- }),
52
- IsString(),
53
- IsOptional(),
54
- MaxLength(500),
55
- _ts_metadata("design:type", String)
56
- ], CreateRoleDto.prototype, "description", void 0);
57
- _ts_decorate([
58
- ApiProperty({
59
- description: 'Company ID (scope role to specific company) - Only available when company feature is enabled',
60
- example: '123e4567-e89b-12d3-a456-426614174000',
61
- required: false
62
- }),
63
- IsUUID(),
64
- IsOptional(),
65
- _ts_metadata("design:type", String)
66
- ], CreateRoleDto.prototype, "companyId", void 0);
67
- _ts_decorate([
68
- ApiProperty({
69
- description: 'Active status',
70
- default: true,
71
- required: false
72
- }),
73
- IsBoolean(),
74
- IsOptional(),
75
- _ts_metadata("design:type", Boolean)
76
- ], CreateRoleDto.prototype, "isActive", void 0);
77
- _ts_decorate([
78
- ApiProperty({
79
- description: 'Display order',
80
- required: false
81
- }),
82
- IsInt(),
83
- IsOptional(),
84
- _ts_metadata("design:type", Number)
85
- ], CreateRoleDto.prototype, "serial", void 0);
86
- export class UpdateRoleDto extends PartialType(CreateRoleDto) {
87
- constructor(...args){
88
- super(...args), _define_property(this, "id", void 0);
89
- }
90
- }
91
- _ts_decorate([
92
- ApiProperty({
93
- description: 'Role ID',
94
- example: '123e4567-e89b-12d3-a456-426614174000'
95
- }),
96
- IsUUID(),
97
- IsNotEmpty(),
98
- _ts_metadata("design:type", String)
99
- ], UpdateRoleDto.prototype, "id", void 0);
100
- export class RoleResponseDto extends IdentityResponseDto {
101
- constructor(...args){
102
- super(...args), _define_property(this, "readOnly", void 0), _define_property(this, "name", void 0), _define_property(this, "description", void 0), _define_property(this, "companyId", void 0), _define_property(this, "isActive", void 0), _define_property(this, "serial", void 0);
103
- }
104
- }
105
- _ts_decorate([
106
- Expose(),
107
- ApiProperty(),
108
- _ts_metadata("design:type", Boolean)
109
- ], RoleResponseDto.prototype, "readOnly", void 0);
110
- _ts_decorate([
111
- Expose(),
112
- ApiProperty(),
113
- _ts_metadata("design:type", String)
114
- ], RoleResponseDto.prototype, "name", void 0);
115
- _ts_decorate([
116
- Expose(),
117
- ApiProperty(),
118
- _ts_metadata("design:type", Object)
119
- ], RoleResponseDto.prototype, "description", void 0);
120
- _ts_decorate([
121
- Expose(),
122
- ApiProperty(),
123
- _ts_metadata("design:type", Object)
124
- ], RoleResponseDto.prototype, "companyId", void 0);
125
- _ts_decorate([
126
- Expose(),
127
- ApiProperty(),
128
- _ts_metadata("design:type", Boolean)
129
- ], RoleResponseDto.prototype, "isActive", void 0);
130
- _ts_decorate([
131
- Expose(),
132
- ApiProperty(),
133
- _ts_metadata("design:type", Object)
134
- ], RoleResponseDto.prototype, "serial", void 0);