@flusys/nestjs-iam 7.0.2 → 8.0.0-beta.1
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.
- package/config/index.d.ts +3 -3
- package/controllers/action.controller.d.ts +4 -4
- package/controllers/company-action-permission.controller.d.ts +2 -2
- package/controllers/index.d.ts +6 -6
- package/controllers/my-permission.controller.d.ts +3 -3
- package/controllers/role-permission.controller.d.ts +4 -4
- package/controllers/role.controller.d.ts +2 -2
- package/controllers/user-action-permission.controller.d.ts +4 -4
- package/docs/iam-swagger.config.d.ts +2 -2
- package/docs/index.d.ts +1 -1
- package/dtos/action.dto.d.ts +2 -2
- package/dtos/index.d.ts +3 -3
- package/entities/action.entity.d.ts +2 -2
- package/entities/index.d.ts +11 -11
- package/entities/permission-with-company.entity.d.ts +1 -1
- package/entities/role-with-company.entity.d.ts +1 -1
- package/entities/role.entity.d.ts +1 -1
- package/entities/user-iam-permission.entity.d.ts +1 -1
- package/enums/index.d.ts +4 -4
- package/fesm/284.js +1262 -0
- package/fesm/867.js +3699 -0
- package/fesm/chunks/364.js +86 -0
- package/fesm/config/index.js +133 -3
- package/fesm/controllers/index.js +18 -7
- package/fesm/docs/index.js +240 -1
- package/fesm/dtos/index.js +1090 -3
- package/fesm/entities/index.js +670 -31
- package/fesm/enums/index.js +97 -4
- package/fesm/helpers/index.js +125 -2
- package/fesm/index.js +806 -11
- package/fesm/interfaces/index.js +17 -3
- package/fesm/modules/index.js +259 -1
- package/fesm/runtime.js +134 -0
- package/fesm/services/index.js +43 -6
- package/fesm/types/index.js +15 -1
- package/helpers/company-access.helper.d.ts +2 -2
- package/helpers/index.d.ts +2 -2
- package/helpers/permission-mode.helper.d.ts +1 -1
- package/index.d.ts +11 -11
- package/interfaces/action.interface.d.ts +2 -2
- package/interfaces/iam-module-options.interface.d.ts +3 -3
- package/interfaces/index.d.ts +3 -3
- package/modules/iam.module.d.ts +2 -2
- package/modules/index.d.ts +1 -1
- package/package.json +30 -37
- package/services/action.service.d.ts +9 -9
- package/services/iam-config.service.d.ts +4 -4
- package/services/iam-datasource.service.d.ts +3 -3
- package/services/index.d.ts +6 -6
- package/services/permission-cache.service.d.ts +5 -5
- package/services/permission.service.d.ts +4 -4
- package/services/role.service.d.ts +8 -8
- package/types/index.d.ts +1 -1
- package/cjs/config/event-actions.js +0 -36
- package/cjs/config/iam.constants.js +0 -11
- package/cjs/config/index.js +0 -20
- package/cjs/config/message-keys.js +0 -71
- package/cjs/controllers/action.controller.js +0 -174
- package/cjs/controllers/action.controller.spec.js +0 -79
- package/cjs/controllers/company-action-permission.controller.js +0 -119
- package/cjs/controllers/company-action-permission.controller.spec.js +0 -65
- package/cjs/controllers/index.js +0 -23
- package/cjs/controllers/my-permission.controller.js +0 -147
- package/cjs/controllers/my-permission.controller.spec.js +0 -128
- package/cjs/controllers/role-permission.controller.js +0 -191
- package/cjs/controllers/role-permission.controller.spec.js +0 -140
- package/cjs/controllers/role.controller.js +0 -102
- package/cjs/controllers/role.controller.spec.js +0 -86
- package/cjs/controllers/user-action-permission.controller.js +0 -129
- package/cjs/controllers/user-action-permission.controller.spec.js +0 -68
- package/cjs/docs/iam-swagger.config.js +0 -209
- package/cjs/docs/iam-swagger.config.spec.js +0 -99
- package/cjs/docs/index.js +0 -18
- package/cjs/dtos/action.dto.js +0 -282
- package/cjs/dtos/index.js +0 -21
- package/cjs/dtos/permission.dto.js +0 -637
- package/cjs/dtos/role.dto.js +0 -155
- package/cjs/entities/action.entity.js +0 -138
- package/cjs/entities/index.js +0 -80
- package/cjs/entities/index.spec.js +0 -56
- package/cjs/entities/permission-base.entity.js +0 -107
- package/cjs/entities/permission-with-company.entity.js +0 -100
- package/cjs/entities/role-base.entity.js +0 -80
- package/cjs/entities/role-with-company.entity.js +0 -55
- package/cjs/entities/role.entity.js +0 -25
- package/cjs/entities/user-iam-permission.entity.js +0 -43
- package/cjs/enums/action-type.enum.js +0 -22
- package/cjs/enums/iam-entity-type.enum.js +0 -17
- package/cjs/enums/iam-permission-type.enum.js +0 -17
- package/cjs/enums/index.js +0 -21
- package/cjs/enums/permission-type.enum.js +0 -16
- package/cjs/helpers/company-access.helper.js +0 -23
- package/cjs/helpers/company-access.helper.spec.js +0 -68
- package/cjs/helpers/index.js +0 -19
- package/cjs/helpers/permission-mode.helper.js +0 -49
- package/cjs/helpers/permission-mode.helper.spec.js +0 -54
- package/cjs/index.js +0 -28
- package/cjs/interfaces/action.interface.js +0 -4
- package/cjs/interfaces/iam-module-options.interface.js +0 -4
- package/cjs/interfaces/index.js +0 -20
- package/cjs/interfaces/role.interface.js +0 -7
- package/cjs/modules/iam.module.js +0 -186
- package/cjs/modules/iam.module.spec.js +0 -282
- package/cjs/modules/index.js +0 -18
- package/cjs/services/action.service.js +0 -337
- package/cjs/services/action.service.spec.js +0 -351
- package/cjs/services/iam-config.service.js +0 -87
- package/cjs/services/iam-config.service.spec.js +0 -110
- package/cjs/services/iam-datasource.service.js +0 -129
- package/cjs/services/iam-datasource.service.spec.js +0 -110
- package/cjs/services/index.js +0 -23
- package/cjs/services/permission-cache.service.js +0 -544
- package/cjs/services/permission-cache.service.spec.js +0 -718
- package/cjs/services/permission.service.js +0 -914
- package/cjs/services/permission.service.spec.js +0 -918
- package/cjs/services/role.service.js +0 -224
- package/cjs/services/role.service.spec.js +0 -347
- package/cjs/types/index.js +0 -18
- package/cjs/types/logic-node.type.js +0 -30
- package/fesm/config/event-actions.js +0 -15
- package/fesm/config/iam.constants.js +0 -1
- package/fesm/config/message-keys.js +0 -35
- package/fesm/controllers/action.controller.js +0 -164
- package/fesm/controllers/action.controller.spec.js +0 -75
- package/fesm/controllers/company-action-permission.controller.js +0 -109
- package/fesm/controllers/company-action-permission.controller.spec.js +0 -61
- package/fesm/controllers/my-permission.controller.js +0 -137
- package/fesm/controllers/my-permission.controller.spec.js +0 -124
- package/fesm/controllers/role-permission.controller.js +0 -181
- package/fesm/controllers/role-permission.controller.spec.js +0 -136
- package/fesm/controllers/role.controller.js +0 -92
- package/fesm/controllers/role.controller.spec.js +0 -82
- package/fesm/controllers/user-action-permission.controller.js +0 -119
- package/fesm/controllers/user-action-permission.controller.spec.js +0 -64
- package/fesm/docs/iam-swagger.config.js +0 -199
- package/fesm/docs/iam-swagger.config.spec.js +0 -95
- package/fesm/dtos/action.dto.js +0 -252
- package/fesm/dtos/permission.dto.js +0 -571
- package/fesm/dtos/role.dto.js +0 -134
- package/fesm/entities/action.entity.js +0 -128
- package/fesm/entities/index.spec.js +0 -52
- package/fesm/entities/permission-base.entity.js +0 -100
- package/fesm/entities/permission-with-company.entity.js +0 -90
- package/fesm/entities/role-base.entity.js +0 -70
- package/fesm/entities/role-with-company.entity.js +0 -45
- package/fesm/entities/role.entity.js +0 -15
- package/fesm/entities/user-iam-permission.entity.js +0 -33
- package/fesm/enums/action-type.enum.js +0 -12
- package/fesm/enums/iam-entity-type.enum.js +0 -7
- package/fesm/enums/iam-permission-type.enum.js +0 -7
- package/fesm/enums/permission-type.enum.js +0 -6
- package/fesm/helpers/company-access.helper.js +0 -18
- package/fesm/helpers/company-access.helper.spec.js +0 -64
- package/fesm/helpers/permission-mode.helper.js +0 -49
- package/fesm/helpers/permission-mode.helper.spec.js +0 -50
- package/fesm/interfaces/action.interface.js +0 -3
- package/fesm/interfaces/iam-module-options.interface.js +0 -3
- package/fesm/interfaces/role.interface.js +0 -4
- package/fesm/modules/iam.module.js +0 -176
- package/fesm/modules/iam.module.spec.js +0 -278
- package/fesm/services/action.service.js +0 -327
- package/fesm/services/action.service.spec.js +0 -347
- package/fesm/services/iam-config.service.js +0 -77
- package/fesm/services/iam-config.service.spec.js +0 -106
- package/fesm/services/iam-datasource.service.js +0 -78
- package/fesm/services/iam-datasource.service.spec.js +0 -106
- package/fesm/services/permission-cache.service.js +0 -527
- package/fesm/services/permission-cache.service.spec.js +0 -714
- package/fesm/services/permission.service.js +0 -904
- package/fesm/services/permission.service.spec.js +0 -914
- package/fesm/services/role.service.js +0 -214
- package/fesm/services/role.service.spec.js +0 -343
- package/fesm/types/logic-node.type.js +0 -27
package/fesm/284.js
ADDED
|
@@ -0,0 +1,1262 @@
|
|
|
1
|
+
import { JwtAuthGuard } from "@flusys/nestjs-shared/guards";
|
|
2
|
+
import * as __rspack_external__flusys_nestjs_shared_dtos_c4585026 from "@flusys/nestjs-shared/dtos";
|
|
3
|
+
export const __rspack_esm_id = 284;
|
|
4
|
+
export const __rspack_esm_ids = [284];
|
|
5
|
+
export const __webpack_modules__ = {
|
|
6
|
+
575(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
7
|
+
|
|
8
|
+
// EXPORTS
|
|
9
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
10
|
+
ZX: () => (/* reexport */ ActionController),
|
|
11
|
+
jj: () => (/* reexport */ CompanyActionPermissionController),
|
|
12
|
+
ig: () => (/* reexport */ MyPermissionController),
|
|
13
|
+
lk: () => (/* reexport */ RoleController),
|
|
14
|
+
uv: () => (/* reexport */ RolePermissionController),
|
|
15
|
+
NF: () => (/* reexport */ UserActionPermissionController)
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
// EXTERNAL MODULE: external "@flusys/nestjs-shared"
|
|
19
|
+
var nestjs_shared_ = __webpack_require__(422);
|
|
20
|
+
;// CONCATENATED MODULE: external "@flusys/nestjs-shared/guards"
|
|
21
|
+
|
|
22
|
+
// EXTERNAL MODULE: external "@nestjs/common"
|
|
23
|
+
var common_ = __webpack_require__(157);
|
|
24
|
+
// EXTERNAL MODULE: external "@nestjs/swagger"
|
|
25
|
+
var swagger_ = __webpack_require__(176);
|
|
26
|
+
// EXTERNAL MODULE: ./projects/nestjs-iam/src/config/message-keys.ts
|
|
27
|
+
var message_keys = __webpack_require__(490);
|
|
28
|
+
// EXTERNAL MODULE: ./projects/nestjs-iam/src/dtos/action.dto.ts
|
|
29
|
+
var action_dto = __webpack_require__(741);
|
|
30
|
+
// EXTERNAL MODULE: ./projects/nestjs-iam/src/services/action.service.ts
|
|
31
|
+
var action_service = __webpack_require__(713);
|
|
32
|
+
// EXTERNAL MODULE: ./projects/nestjs-iam/src/services/iam-config.service.ts
|
|
33
|
+
var iam_config_service = __webpack_require__(645);
|
|
34
|
+
;// CONCATENATED MODULE: ./projects/nestjs-iam/src/controllers/action.controller.ts
|
|
35
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
36
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
37
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
38
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
39
|
+
} else {
|
|
40
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
41
|
+
if (d = decorators[i]) {
|
|
42
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
47
|
+
}
|
|
48
|
+
function _ts_metadata(metadataKey, metadataValue) {
|
|
49
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
50
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
function _ts_param(paramIndex, decorator) {
|
|
54
|
+
return function(target, key) {
|
|
55
|
+
decorator(target, key, paramIndex);
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
class ActionController extends (0,nestjs_shared_.createApiController)(action_dto/* .CreateActionDto */.Sk, action_dto/* .UpdateActionDto */.H, action_dto/* .ActionResponseDto */.Vw, {
|
|
67
|
+
entityName: 'action',
|
|
68
|
+
security: {
|
|
69
|
+
insert: {
|
|
70
|
+
level: 'permission',
|
|
71
|
+
permissions: [
|
|
72
|
+
nestjs_shared_.ACTION_PERMISSIONS.CREATE
|
|
73
|
+
]
|
|
74
|
+
},
|
|
75
|
+
insertMany: {
|
|
76
|
+
level: 'permission',
|
|
77
|
+
permissions: [
|
|
78
|
+
nestjs_shared_.ACTION_PERMISSIONS.CREATE
|
|
79
|
+
]
|
|
80
|
+
},
|
|
81
|
+
getById: {
|
|
82
|
+
level: 'permission',
|
|
83
|
+
permissions: [
|
|
84
|
+
nestjs_shared_.ACTION_PERMISSIONS.READ
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
getAll: {
|
|
88
|
+
level: 'permission',
|
|
89
|
+
permissions: [
|
|
90
|
+
nestjs_shared_.ACTION_PERMISSIONS.READ
|
|
91
|
+
]
|
|
92
|
+
},
|
|
93
|
+
update: {
|
|
94
|
+
level: 'permission',
|
|
95
|
+
permissions: [
|
|
96
|
+
nestjs_shared_.ACTION_PERMISSIONS.UPDATE
|
|
97
|
+
]
|
|
98
|
+
},
|
|
99
|
+
updateMany: {
|
|
100
|
+
level: 'permission',
|
|
101
|
+
permissions: [
|
|
102
|
+
nestjs_shared_.ACTION_PERMISSIONS.UPDATE
|
|
103
|
+
]
|
|
104
|
+
},
|
|
105
|
+
delete: {
|
|
106
|
+
level: 'permission',
|
|
107
|
+
permissions: [
|
|
108
|
+
nestjs_shared_.ACTION_PERMISSIONS.DELETE
|
|
109
|
+
]
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}) {
|
|
113
|
+
actionService;
|
|
114
|
+
iamConfigService;
|
|
115
|
+
constructor(actionService, iamConfigService){
|
|
116
|
+
super(actionService), this.actionService = actionService, this.iamConfigService = iamConfigService;
|
|
117
|
+
}
|
|
118
|
+
async getActionsForPermission(dto, user) {
|
|
119
|
+
const actions = await this.actionService.getActionsForPermission(user, dto?.companyId);
|
|
120
|
+
return {
|
|
121
|
+
success: true,
|
|
122
|
+
message: 'Actions retrieved successfully',
|
|
123
|
+
messageKey: message_keys/* .ACTION_MESSAGES.GET_ALL_SUCCESS */.Q$.GET_ALL_SUCCESS,
|
|
124
|
+
data: actions
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
async getActionTree(query, user) {
|
|
128
|
+
const tree = await this.actionService.getActionTree(user, query.search, query.isActive, query.withDeleted);
|
|
129
|
+
return {
|
|
130
|
+
success: true,
|
|
131
|
+
message: 'Action tree retrieved successfully',
|
|
132
|
+
messageKey: message_keys/* .ACTION_MESSAGES.GET_ALL_SUCCESS */.Q$.GET_ALL_SUCCESS,
|
|
133
|
+
data: tree
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
_ts_decorate([
|
|
138
|
+
(0,common_.Post)('tree-for-permission'),
|
|
139
|
+
(0,common_.UseGuards)(JwtAuthGuard),
|
|
140
|
+
(0,swagger_.ApiBearerAuth)(),
|
|
141
|
+
(0,swagger_.ApiOperation)({
|
|
142
|
+
summary: 'Get actions for permission assignment',
|
|
143
|
+
description: "Returns actions available for permission assignment, filtered by company whitelist when company feature is enabled. Optional companyId scopes the whitelist to a specific company (must match the caller's own company); defaults to the caller's session company when omitted."
|
|
144
|
+
}),
|
|
145
|
+
(0,swagger_.ApiResponse)({
|
|
146
|
+
status: 200,
|
|
147
|
+
type: nestjs_shared_.SingleResponseDto
|
|
148
|
+
}),
|
|
149
|
+
(0,swagger_.ApiBody)({
|
|
150
|
+
type: action_dto/* .ActionTreeForPermissionDto */.y9
|
|
151
|
+
}),
|
|
152
|
+
_ts_param(0, (0,common_.Body)()),
|
|
153
|
+
_ts_param(1, (0,nestjs_shared_.CurrentUser)()),
|
|
154
|
+
_ts_metadata("design:type", Function),
|
|
155
|
+
_ts_metadata("design:paramtypes", [
|
|
156
|
+
typeof action_dto/* .ActionTreeForPermissionDto */.y9 === "undefined" ? Object : action_dto/* .ActionTreeForPermissionDto */.y9,
|
|
157
|
+
typeof ILoggedUserInfo === "undefined" ? Object : ILoggedUserInfo
|
|
158
|
+
]),
|
|
159
|
+
_ts_metadata("design:returntype", Promise)
|
|
160
|
+
], ActionController.prototype, "getActionsForPermission", null);
|
|
161
|
+
_ts_decorate([
|
|
162
|
+
(0,common_.Post)('tree'),
|
|
163
|
+
(0,common_.UseGuards)(JwtAuthGuard),
|
|
164
|
+
(0,swagger_.ApiBearerAuth)(),
|
|
165
|
+
(0,swagger_.ApiOperation)({
|
|
166
|
+
summary: 'Get actions in hierarchical tree structure',
|
|
167
|
+
description: 'Returns all actions organized in a parent-child tree structure. Supports optional search and filtering.'
|
|
168
|
+
}),
|
|
169
|
+
(0,swagger_.ApiResponse)({
|
|
170
|
+
status: 200,
|
|
171
|
+
description: 'Actions tree retrieved successfully',
|
|
172
|
+
type: nestjs_shared_.SingleResponseDto
|
|
173
|
+
}),
|
|
174
|
+
(0,swagger_.ApiBody)({
|
|
175
|
+
type: action_dto/* .ActionTreeQueryDto */.AU
|
|
176
|
+
}),
|
|
177
|
+
_ts_param(0, (0,common_.Body)()),
|
|
178
|
+
_ts_param(1, (0,nestjs_shared_.CurrentUser)()),
|
|
179
|
+
_ts_metadata("design:type", Function),
|
|
180
|
+
_ts_metadata("design:paramtypes", [
|
|
181
|
+
typeof action_dto/* .ActionTreeQueryDto */.AU === "undefined" ? Object : action_dto/* .ActionTreeQueryDto */.AU,
|
|
182
|
+
typeof ILoggedUserInfo === "undefined" ? Object : ILoggedUserInfo
|
|
183
|
+
]),
|
|
184
|
+
_ts_metadata("design:returntype", Promise)
|
|
185
|
+
], ActionController.prototype, "getActionTree", null);
|
|
186
|
+
ActionController = _ts_decorate([
|
|
187
|
+
(0,swagger_.ApiTags)('IAM - Actions'),
|
|
188
|
+
(0,common_.Controller)('iam/actions'),
|
|
189
|
+
_ts_param(0, (0,common_.Inject)(action_service/* .ActionService */.u)),
|
|
190
|
+
_ts_param(1, (0,common_.Inject)(iam_config_service/* .IAMConfigService */.N)),
|
|
191
|
+
_ts_metadata("design:type", Function),
|
|
192
|
+
_ts_metadata("design:paramtypes", [
|
|
193
|
+
typeof action_service/* .ActionService */.u === "undefined" ? Object : action_service/* .ActionService */.u,
|
|
194
|
+
typeof iam_config_service/* .IAMConfigService */.N === "undefined" ? Object : iam_config_service/* .IAMConfigService */.N
|
|
195
|
+
])
|
|
196
|
+
], ActionController);
|
|
197
|
+
|
|
198
|
+
// EXTERNAL MODULE: ./projects/nestjs-iam/src/dtos/role.dto.ts
|
|
199
|
+
var role_dto = __webpack_require__(967);
|
|
200
|
+
// EXTERNAL MODULE: ./projects/nestjs-iam/src/services/role.service.ts + 1 modules
|
|
201
|
+
var role_service = __webpack_require__(446);
|
|
202
|
+
;// CONCATENATED MODULE: ./projects/nestjs-iam/src/controllers/role.controller.ts
|
|
203
|
+
function role_controller_ts_decorate(decorators, target, key, desc) {
|
|
204
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
205
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
206
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
207
|
+
} else {
|
|
208
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
209
|
+
if (d = decorators[i]) {
|
|
210
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
215
|
+
}
|
|
216
|
+
function role_controller_ts_metadata(metadataKey, metadataValue) {
|
|
217
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
218
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
function role_controller_ts_param(paramIndex, decorator) {
|
|
222
|
+
return function(target, key) {
|
|
223
|
+
decorator(target, key, paramIndex);
|
|
224
|
+
};
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
class RoleController extends (0,nestjs_shared_.createApiController)(role_dto/* .CreateRoleDto */.St, role_dto/* .UpdateRoleDto */.$v, role_dto/* .RoleResponseDto */.Tm, {
|
|
232
|
+
entityName: 'role',
|
|
233
|
+
security: {
|
|
234
|
+
insert: {
|
|
235
|
+
level: 'permission',
|
|
236
|
+
permissions: [
|
|
237
|
+
nestjs_shared_.ROLE_PERMISSIONS.CREATE
|
|
238
|
+
]
|
|
239
|
+
},
|
|
240
|
+
insertMany: {
|
|
241
|
+
level: 'permission',
|
|
242
|
+
permissions: [
|
|
243
|
+
nestjs_shared_.ROLE_PERMISSIONS.CREATE
|
|
244
|
+
]
|
|
245
|
+
},
|
|
246
|
+
getById: {
|
|
247
|
+
level: 'permission',
|
|
248
|
+
permissions: [
|
|
249
|
+
nestjs_shared_.ROLE_PERMISSIONS.READ
|
|
250
|
+
]
|
|
251
|
+
},
|
|
252
|
+
getAll: {
|
|
253
|
+
level: 'permission',
|
|
254
|
+
permissions: [
|
|
255
|
+
nestjs_shared_.ROLE_PERMISSIONS.READ
|
|
256
|
+
]
|
|
257
|
+
},
|
|
258
|
+
update: {
|
|
259
|
+
level: 'permission',
|
|
260
|
+
permissions: [
|
|
261
|
+
nestjs_shared_.ROLE_PERMISSIONS.UPDATE
|
|
262
|
+
]
|
|
263
|
+
},
|
|
264
|
+
updateMany: {
|
|
265
|
+
level: 'permission',
|
|
266
|
+
permissions: [
|
|
267
|
+
nestjs_shared_.ROLE_PERMISSIONS.UPDATE
|
|
268
|
+
]
|
|
269
|
+
},
|
|
270
|
+
delete: {
|
|
271
|
+
level: 'permission',
|
|
272
|
+
permissions: [
|
|
273
|
+
nestjs_shared_.ROLE_PERMISSIONS.DELETE
|
|
274
|
+
]
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
}) {
|
|
278
|
+
roleService;
|
|
279
|
+
constructor(roleService){
|
|
280
|
+
super(roleService), this.roleService = roleService;
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
RoleController = role_controller_ts_decorate([
|
|
284
|
+
(0,swagger_.ApiTags)('IAM - Roles'),
|
|
285
|
+
(0,common_.Controller)('iam/roles'),
|
|
286
|
+
role_controller_ts_param(0, (0,common_.Inject)(role_service/* .RoleService */.W)),
|
|
287
|
+
role_controller_ts_metadata("design:type", Function),
|
|
288
|
+
role_controller_ts_metadata("design:paramtypes", [
|
|
289
|
+
typeof role_service/* .RoleService */.W === "undefined" ? Object : role_service/* .RoleService */.W
|
|
290
|
+
])
|
|
291
|
+
], RoleController);
|
|
292
|
+
|
|
293
|
+
// EXTERNAL MODULE: ./projects/nestjs-iam/src/dtos/permission.dto.ts
|
|
294
|
+
var permission_dto = __webpack_require__(296);
|
|
295
|
+
// EXTERNAL MODULE: ./projects/nestjs-iam/src/services/permission.service.ts
|
|
296
|
+
var permission_service = __webpack_require__(472);
|
|
297
|
+
;// CONCATENATED MODULE: ./projects/nestjs-iam/src/controllers/company-action-permission.controller.ts
|
|
298
|
+
function company_action_permission_controller_ts_decorate(decorators, target, key, desc) {
|
|
299
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
300
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
301
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
302
|
+
} else {
|
|
303
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
304
|
+
if (d = decorators[i]) {
|
|
305
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
310
|
+
}
|
|
311
|
+
function company_action_permission_controller_ts_metadata(metadataKey, metadataValue) {
|
|
312
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
313
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
function company_action_permission_controller_ts_param(paramIndex, decorator) {
|
|
317
|
+
return function(target, key) {
|
|
318
|
+
decorator(target, key, paramIndex);
|
|
319
|
+
};
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
|
|
327
|
+
class CompanyActionPermissionController {
|
|
328
|
+
permissionService;
|
|
329
|
+
constructor(permissionService){
|
|
330
|
+
this.permissionService = permissionService;
|
|
331
|
+
}
|
|
332
|
+
async assignCompanyActions(dto) {
|
|
333
|
+
const result = await this.permissionService.assignCompanyActions(dto);
|
|
334
|
+
return {
|
|
335
|
+
success: true,
|
|
336
|
+
message: 'Company actions updated successfully',
|
|
337
|
+
messageKey: message_keys/* .PERMISSION_OPERATION_MESSAGES.PROCESS_SUCCESS */.P3.PROCESS_SUCCESS,
|
|
338
|
+
messageVariables: {
|
|
339
|
+
added: result.added,
|
|
340
|
+
removed: result.removed,
|
|
341
|
+
total: result.total
|
|
342
|
+
},
|
|
343
|
+
data: result
|
|
344
|
+
};
|
|
345
|
+
}
|
|
346
|
+
async getCompanyActions(dto) {
|
|
347
|
+
const actions = await this.permissionService.getCompanyActions(dto.companyId, false);
|
|
348
|
+
return {
|
|
349
|
+
success: true,
|
|
350
|
+
message: 'Company actions retrieved successfully',
|
|
351
|
+
messageKey: message_keys/* .COMPANY_ACTION_PERMISSION_MESSAGES.GET_SUCCESS */.GG.GET_SUCCESS,
|
|
352
|
+
data: actions
|
|
353
|
+
};
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
company_action_permission_controller_ts_decorate([
|
|
357
|
+
(0,common_.Post)('company-actions/assign'),
|
|
358
|
+
(0,nestjs_shared_.RequirePermission)(nestjs_shared_.COMPANY_ACTION_PERMISSIONS.ASSIGN),
|
|
359
|
+
(0,swagger_.ApiOperation)({
|
|
360
|
+
summary: 'Whitelist actions for company',
|
|
361
|
+
description: 'Controls which actions are available to company users/roles.'
|
|
362
|
+
}),
|
|
363
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .PermissionOperationResultDto */.xJ),
|
|
364
|
+
(0,swagger_.ApiBody)({
|
|
365
|
+
type: permission_dto/* .AssignCompanyActionsDto */.Nx
|
|
366
|
+
}),
|
|
367
|
+
company_action_permission_controller_ts_param(0, (0,common_.Body)()),
|
|
368
|
+
company_action_permission_controller_ts_metadata("design:type", Function),
|
|
369
|
+
company_action_permission_controller_ts_metadata("design:paramtypes", [
|
|
370
|
+
typeof permission_dto/* .AssignCompanyActionsDto */.Nx === "undefined" ? Object : permission_dto/* .AssignCompanyActionsDto */.Nx
|
|
371
|
+
]),
|
|
372
|
+
company_action_permission_controller_ts_metadata("design:returntype", Promise)
|
|
373
|
+
], CompanyActionPermissionController.prototype, "assignCompanyActions", null);
|
|
374
|
+
company_action_permission_controller_ts_decorate([
|
|
375
|
+
(0,common_.Post)('get-company-actions'),
|
|
376
|
+
(0,nestjs_shared_.RequirePermission)(nestjs_shared_.COMPANY_ACTION_PERMISSIONS.READ),
|
|
377
|
+
(0,swagger_.ApiOperation)({
|
|
378
|
+
summary: 'Get company whitelisted actions',
|
|
379
|
+
description: 'Returns actions available to company.'
|
|
380
|
+
}),
|
|
381
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .CompanyActionResponseDto */.E4, true, 'single'),
|
|
382
|
+
(0,swagger_.ApiBody)({
|
|
383
|
+
type: permission_dto/* .GetCompanyActionsDto */.c8
|
|
384
|
+
}),
|
|
385
|
+
company_action_permission_controller_ts_param(0, (0,common_.Body)()),
|
|
386
|
+
company_action_permission_controller_ts_metadata("design:type", Function),
|
|
387
|
+
company_action_permission_controller_ts_metadata("design:paramtypes", [
|
|
388
|
+
typeof permission_dto/* .GetCompanyActionsDto */.c8 === "undefined" ? Object : permission_dto/* .GetCompanyActionsDto */.c8
|
|
389
|
+
]),
|
|
390
|
+
company_action_permission_controller_ts_metadata("design:returntype", Promise)
|
|
391
|
+
], CompanyActionPermissionController.prototype, "getCompanyActions", null);
|
|
392
|
+
CompanyActionPermissionController = company_action_permission_controller_ts_decorate([
|
|
393
|
+
(0,swagger_.ApiTags)('IAM - Company Action Permissions'),
|
|
394
|
+
(0,common_.Controller)('iam/permissions'),
|
|
395
|
+
(0,common_.UseGuards)(nestjs_shared_.JwtAuthGuard, nestjs_shared_.PermissionGuard),
|
|
396
|
+
(0,swagger_.ApiBearerAuth)(),
|
|
397
|
+
company_action_permission_controller_ts_param(0, (0,common_.Inject)(permission_service/* .PermissionService */.n)),
|
|
398
|
+
company_action_permission_controller_ts_metadata("design:type", Function),
|
|
399
|
+
company_action_permission_controller_ts_metadata("design:paramtypes", [
|
|
400
|
+
typeof permission_service/* .PermissionService */.n === "undefined" ? Object : permission_service/* .PermissionService */.n
|
|
401
|
+
])
|
|
402
|
+
], CompanyActionPermissionController);
|
|
403
|
+
|
|
404
|
+
;// CONCATENATED MODULE: ./projects/nestjs-iam/src/controllers/my-permission.controller.ts
|
|
405
|
+
function my_permission_controller_ts_decorate(decorators, target, key, desc) {
|
|
406
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
407
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
408
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
409
|
+
} else {
|
|
410
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
411
|
+
if (d = decorators[i]) {
|
|
412
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
417
|
+
}
|
|
418
|
+
function my_permission_controller_ts_metadata(metadataKey, metadataValue) {
|
|
419
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
420
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
function my_permission_controller_ts_param(paramIndex, decorator) {
|
|
424
|
+
return function(target, key) {
|
|
425
|
+
decorator(target, key, paramIndex);
|
|
426
|
+
};
|
|
427
|
+
}
|
|
428
|
+
|
|
429
|
+
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
|
|
434
|
+
class MyPermissionController {
|
|
435
|
+
permissionService;
|
|
436
|
+
// NOTE: @Inject() required for bundled code - type metadata may be lost during esbuild
|
|
437
|
+
constructor(permissionService){
|
|
438
|
+
this.permissionService = permissionService;
|
|
439
|
+
}
|
|
440
|
+
async getMyPermissions(query, user) {
|
|
441
|
+
const data = await this.permissionService.getMyPermissions(user.id, user.branchId ?? null, user.companyId ?? null, query.parentCodes);
|
|
442
|
+
return {
|
|
443
|
+
success: true,
|
|
444
|
+
message: 'Permissions loaded successfully',
|
|
445
|
+
messageKey: message_keys/* .MY_PERMISSION_MESSAGES.GET_SUCCESS */.sb.GET_SUCCESS,
|
|
446
|
+
data
|
|
447
|
+
};
|
|
448
|
+
}
|
|
449
|
+
async getMyRoles(user) {
|
|
450
|
+
const data = await this.permissionService.getUserEffectiveRoles(user.id, user.companyId ?? null, user.branchId ?? null);
|
|
451
|
+
return {
|
|
452
|
+
success: true,
|
|
453
|
+
message: 'Roles loaded successfully',
|
|
454
|
+
messageKey: message_keys/* .MY_PERMISSION_MESSAGES.MY_ROLES_SUCCESS */.sb.MY_ROLES_SUCCESS,
|
|
455
|
+
data
|
|
456
|
+
};
|
|
457
|
+
}
|
|
458
|
+
async getMyActions(user) {
|
|
459
|
+
const data = await this.permissionService.getUserEffectiveActions(user.id, user.companyId ?? null, user.branchId ?? null);
|
|
460
|
+
return {
|
|
461
|
+
success: true,
|
|
462
|
+
message: 'Actions loaded successfully',
|
|
463
|
+
messageKey: message_keys/* .MY_PERMISSION_MESSAGES.MY_ACTIONS_SUCCESS */.sb.MY_ACTIONS_SUCCESS,
|
|
464
|
+
data
|
|
465
|
+
};
|
|
466
|
+
}
|
|
467
|
+
}
|
|
468
|
+
my_permission_controller_ts_decorate([
|
|
469
|
+
(0,common_.Post)('my-permissions'),
|
|
470
|
+
(0,swagger_.ApiOperation)({
|
|
471
|
+
summary: 'Get current user permissions',
|
|
472
|
+
description: 'Returns complete permissions for authenticated user. Includes menus, frontend actions, and caches endpoint permissions. Optionally filter by parent codes.'
|
|
473
|
+
}),
|
|
474
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .MyPermissionsResponseDto */.ji),
|
|
475
|
+
(0,swagger_.ApiResponse)({
|
|
476
|
+
status: 401,
|
|
477
|
+
description: 'Unauthorized'
|
|
478
|
+
}),
|
|
479
|
+
(0,swagger_.ApiBody)({
|
|
480
|
+
type: permission_dto/* .MyPermissionsQueryDto */.O_
|
|
481
|
+
}),
|
|
482
|
+
my_permission_controller_ts_param(0, (0,common_.Body)()),
|
|
483
|
+
my_permission_controller_ts_param(1, (0,nestjs_shared_.CurrentUser)()),
|
|
484
|
+
my_permission_controller_ts_metadata("design:type", Function),
|
|
485
|
+
my_permission_controller_ts_metadata("design:paramtypes", [
|
|
486
|
+
typeof permission_dto/* .MyPermissionsQueryDto */.O_ === "undefined" ? Object : permission_dto/* .MyPermissionsQueryDto */.O_,
|
|
487
|
+
typeof ILoggedUserInfo === "undefined" ? Object : ILoggedUserInfo
|
|
488
|
+
]),
|
|
489
|
+
my_permission_controller_ts_metadata("design:returntype", Promise)
|
|
490
|
+
], MyPermissionController.prototype, "getMyPermissions", null);
|
|
491
|
+
my_permission_controller_ts_decorate([
|
|
492
|
+
(0,common_.Post)('my-roles'),
|
|
493
|
+
(0,swagger_.ApiOperation)({
|
|
494
|
+
summary: 'Get current user roles',
|
|
495
|
+
description: 'Returns effective roles for the authenticated user, merging company-wide (branch-independent) and login-branch-specific role assignments.'
|
|
496
|
+
}),
|
|
497
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .UserRoleResponseDto */.LK, true, 'single'),
|
|
498
|
+
(0,swagger_.ApiResponse)({
|
|
499
|
+
status: 401,
|
|
500
|
+
description: 'Unauthorized'
|
|
501
|
+
}),
|
|
502
|
+
my_permission_controller_ts_param(0, (0,nestjs_shared_.CurrentUser)()),
|
|
503
|
+
my_permission_controller_ts_metadata("design:type", Function),
|
|
504
|
+
my_permission_controller_ts_metadata("design:paramtypes", [
|
|
505
|
+
typeof ILoggedUserInfo === "undefined" ? Object : ILoggedUserInfo
|
|
506
|
+
]),
|
|
507
|
+
my_permission_controller_ts_metadata("design:returntype", Promise)
|
|
508
|
+
], MyPermissionController.prototype, "getMyRoles", null);
|
|
509
|
+
my_permission_controller_ts_decorate([
|
|
510
|
+
(0,common_.Post)('my-actions'),
|
|
511
|
+
(0,swagger_.ApiOperation)({
|
|
512
|
+
summary: 'Get current user direct actions',
|
|
513
|
+
description: 'Returns effective direct action assignments for the authenticated user, merging company-wide (branch-independent) and login-branch-specific assignments.'
|
|
514
|
+
}),
|
|
515
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .UserActionResponseDto */.gF, true, 'single'),
|
|
516
|
+
(0,swagger_.ApiResponse)({
|
|
517
|
+
status: 401,
|
|
518
|
+
description: 'Unauthorized'
|
|
519
|
+
}),
|
|
520
|
+
my_permission_controller_ts_param(0, (0,nestjs_shared_.CurrentUser)()),
|
|
521
|
+
my_permission_controller_ts_metadata("design:type", Function),
|
|
522
|
+
my_permission_controller_ts_metadata("design:paramtypes", [
|
|
523
|
+
typeof ILoggedUserInfo === "undefined" ? Object : ILoggedUserInfo
|
|
524
|
+
]),
|
|
525
|
+
my_permission_controller_ts_metadata("design:returntype", Promise)
|
|
526
|
+
], MyPermissionController.prototype, "getMyActions", null);
|
|
527
|
+
MyPermissionController = my_permission_controller_ts_decorate([
|
|
528
|
+
(0,swagger_.ApiTags)('IAM - My Permissions'),
|
|
529
|
+
(0,common_.Controller)('iam/permissions'),
|
|
530
|
+
(0,common_.UseGuards)(nestjs_shared_.JwtAuthGuard),
|
|
531
|
+
(0,swagger_.ApiBearerAuth)(),
|
|
532
|
+
my_permission_controller_ts_param(0, (0,common_.Inject)(permission_service/* .PermissionService */.n)),
|
|
533
|
+
my_permission_controller_ts_metadata("design:type", Function),
|
|
534
|
+
my_permission_controller_ts_metadata("design:paramtypes", [
|
|
535
|
+
typeof permission_service/* .PermissionService */.n === "undefined" ? Object : permission_service/* .PermissionService */.n
|
|
536
|
+
])
|
|
537
|
+
], MyPermissionController);
|
|
538
|
+
|
|
539
|
+
// EXTERNAL MODULE: ./projects/nestjs-iam/src/helpers/index.ts + 3 modules
|
|
540
|
+
var helpers = __webpack_require__(674);
|
|
541
|
+
;// CONCATENATED MODULE: ./projects/nestjs-iam/src/controllers/role-permission.controller.ts
|
|
542
|
+
function role_permission_controller_ts_decorate(decorators, target, key, desc) {
|
|
543
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
544
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
545
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
546
|
+
} else {
|
|
547
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
548
|
+
if (d = decorators[i]) {
|
|
549
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
550
|
+
}
|
|
551
|
+
}
|
|
552
|
+
}
|
|
553
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
554
|
+
}
|
|
555
|
+
function role_permission_controller_ts_metadata(metadataKey, metadataValue) {
|
|
556
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
557
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
function role_permission_controller_ts_param(paramIndex, decorator) {
|
|
561
|
+
return function(target, key) {
|
|
562
|
+
decorator(target, key, paramIndex);
|
|
563
|
+
};
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
|
|
567
|
+
|
|
568
|
+
|
|
569
|
+
|
|
570
|
+
|
|
571
|
+
|
|
572
|
+
|
|
573
|
+
class RolePermissionController {
|
|
574
|
+
permissionService;
|
|
575
|
+
config;
|
|
576
|
+
// NOTE: @Inject() required for bundled code - type metadata may be lost during esbuild
|
|
577
|
+
constructor(permissionService, config){
|
|
578
|
+
this.permissionService = permissionService;
|
|
579
|
+
this.config = config;
|
|
580
|
+
}
|
|
581
|
+
async assignRoleActions(dto) {
|
|
582
|
+
const result = await this.permissionService.assignRoleActions(dto);
|
|
583
|
+
return {
|
|
584
|
+
success: true,
|
|
585
|
+
message: 'Role actions updated successfully',
|
|
586
|
+
messageKey: message_keys/* .PERMISSION_OPERATION_MESSAGES.PROCESS_SUCCESS */.P3.PROCESS_SUCCESS,
|
|
587
|
+
messageVariables: {
|
|
588
|
+
added: result.added,
|
|
589
|
+
removed: result.removed,
|
|
590
|
+
total: result.total
|
|
591
|
+
},
|
|
592
|
+
data: result
|
|
593
|
+
};
|
|
594
|
+
}
|
|
595
|
+
async getRoleActions(dto) {
|
|
596
|
+
const actions = await this.permissionService.getRoleActions(dto.roleId);
|
|
597
|
+
return {
|
|
598
|
+
success: true,
|
|
599
|
+
message: 'Role actions retrieved successfully',
|
|
600
|
+
messageKey: message_keys/* .ROLE_PERMISSION_MESSAGES.ACTIONS_SUCCESS */.eh.ACTIONS_SUCCESS,
|
|
601
|
+
data: actions
|
|
602
|
+
};
|
|
603
|
+
}
|
|
604
|
+
async assignUserRoles(dto, user) {
|
|
605
|
+
(0,helpers/* .validateCompanyAccess */.u)(this.config, dto.companyId, user);
|
|
606
|
+
const result = await this.permissionService.assignUserRoles(dto);
|
|
607
|
+
return {
|
|
608
|
+
success: true,
|
|
609
|
+
message: 'User roles updated successfully',
|
|
610
|
+
messageKey: message_keys/* .PERMISSION_OPERATION_MESSAGES.PROCESS_SUCCESS */.P3.PROCESS_SUCCESS,
|
|
611
|
+
messageVariables: {
|
|
612
|
+
added: result.added,
|
|
613
|
+
removed: result.removed,
|
|
614
|
+
total: result.total
|
|
615
|
+
},
|
|
616
|
+
data: result
|
|
617
|
+
};
|
|
618
|
+
}
|
|
619
|
+
async getUserRoles(dto, user) {
|
|
620
|
+
(0,helpers/* .validateCompanyAccess */.u)(this.config, dto.companyId, user);
|
|
621
|
+
const roles = await this.permissionService.getUserRoles(dto.userId, dto.branchId, dto.companyId);
|
|
622
|
+
return {
|
|
623
|
+
success: true,
|
|
624
|
+
message: 'User roles retrieved successfully',
|
|
625
|
+
messageKey: message_keys/* .ROLE_PERMISSION_MESSAGES.USER_ROLES_SUCCESS */.eh.USER_ROLES_SUCCESS,
|
|
626
|
+
data: roles
|
|
627
|
+
};
|
|
628
|
+
}
|
|
629
|
+
}
|
|
630
|
+
role_permission_controller_ts_decorate([
|
|
631
|
+
(0,common_.Post)('role-actions/assign'),
|
|
632
|
+
(0,nestjs_shared_.RequirePermission)(nestjs_shared_.ROLE_ACTION_PERMISSIONS.ASSIGN),
|
|
633
|
+
(0,swagger_.ApiOperation)({
|
|
634
|
+
summary: 'Assign/remove actions to/from role',
|
|
635
|
+
description: 'RBAC mode. No branch scoping.'
|
|
636
|
+
}),
|
|
637
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .PermissionOperationResultDto */.xJ),
|
|
638
|
+
(0,swagger_.ApiBody)({
|
|
639
|
+
type: permission_dto/* .AssignRoleActionsDto */.cv
|
|
640
|
+
}),
|
|
641
|
+
role_permission_controller_ts_param(0, (0,common_.Body)()),
|
|
642
|
+
role_permission_controller_ts_metadata("design:type", Function),
|
|
643
|
+
role_permission_controller_ts_metadata("design:paramtypes", [
|
|
644
|
+
typeof permission_dto/* .AssignRoleActionsDto */.cv === "undefined" ? Object : permission_dto/* .AssignRoleActionsDto */.cv
|
|
645
|
+
]),
|
|
646
|
+
role_permission_controller_ts_metadata("design:returntype", Promise)
|
|
647
|
+
], RolePermissionController.prototype, "assignRoleActions", null);
|
|
648
|
+
role_permission_controller_ts_decorate([
|
|
649
|
+
(0,common_.Post)('get-role-actions'),
|
|
650
|
+
(0,nestjs_shared_.RequirePermission)(nestjs_shared_.ROLE_ACTION_PERMISSIONS.READ),
|
|
651
|
+
(0,swagger_.ApiOperation)({
|
|
652
|
+
summary: 'Get role actions',
|
|
653
|
+
description: 'Returns actions assigned to role.'
|
|
654
|
+
}),
|
|
655
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .RoleActionResponseDto */.$l, true, 'single'),
|
|
656
|
+
(0,swagger_.ApiBody)({
|
|
657
|
+
type: permission_dto/* .GetRoleActionsDto */.Zn
|
|
658
|
+
}),
|
|
659
|
+
role_permission_controller_ts_param(0, (0,common_.Body)()),
|
|
660
|
+
role_permission_controller_ts_metadata("design:type", Function),
|
|
661
|
+
role_permission_controller_ts_metadata("design:paramtypes", [
|
|
662
|
+
typeof permission_dto/* .GetRoleActionsDto */.Zn === "undefined" ? Object : permission_dto/* .GetRoleActionsDto */.Zn
|
|
663
|
+
]),
|
|
664
|
+
role_permission_controller_ts_metadata("design:returntype", Promise)
|
|
665
|
+
], RolePermissionController.prototype, "getRoleActions", null);
|
|
666
|
+
role_permission_controller_ts_decorate([
|
|
667
|
+
(0,common_.Post)('user-roles/assign'),
|
|
668
|
+
(0,nestjs_shared_.RequirePermission)(nestjs_shared_.USER_ROLE_PERMISSIONS.ASSIGN),
|
|
669
|
+
(0,swagger_.ApiOperation)({
|
|
670
|
+
summary: 'Assign/remove roles to/from user',
|
|
671
|
+
description: 'RBAC mode. If company feature enabled, branchId is required.'
|
|
672
|
+
}),
|
|
673
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .PermissionOperationResultDto */.xJ),
|
|
674
|
+
(0,swagger_.ApiBody)({
|
|
675
|
+
type: permission_dto/* .AssignUserRolesDto */.Xz
|
|
676
|
+
}),
|
|
677
|
+
role_permission_controller_ts_param(0, (0,common_.Body)()),
|
|
678
|
+
role_permission_controller_ts_param(1, (0,nestjs_shared_.CurrentUser)()),
|
|
679
|
+
role_permission_controller_ts_metadata("design:type", Function),
|
|
680
|
+
role_permission_controller_ts_metadata("design:paramtypes", [
|
|
681
|
+
typeof permission_dto/* .AssignUserRolesDto */.Xz === "undefined" ? Object : permission_dto/* .AssignUserRolesDto */.Xz,
|
|
682
|
+
typeof ILoggedUserInfo === "undefined" ? Object : ILoggedUserInfo
|
|
683
|
+
]),
|
|
684
|
+
role_permission_controller_ts_metadata("design:returntype", Promise)
|
|
685
|
+
], RolePermissionController.prototype, "assignUserRoles", null);
|
|
686
|
+
role_permission_controller_ts_decorate([
|
|
687
|
+
(0,common_.Post)('get-user-roles'),
|
|
688
|
+
(0,nestjs_shared_.RequirePermission)(nestjs_shared_.USER_ROLE_PERMISSIONS.READ),
|
|
689
|
+
(0,swagger_.ApiOperation)({
|
|
690
|
+
summary: 'Get user roles',
|
|
691
|
+
description: 'Returns roles assigned to user. Filter by companyId and branchId.'
|
|
692
|
+
}),
|
|
693
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .UserRoleResponseDto */.LK, true, 'single'),
|
|
694
|
+
(0,swagger_.ApiBody)({
|
|
695
|
+
type: permission_dto/* .GetUserRolesDto */.Q0
|
|
696
|
+
}),
|
|
697
|
+
role_permission_controller_ts_param(0, (0,common_.Body)()),
|
|
698
|
+
role_permission_controller_ts_param(1, (0,nestjs_shared_.CurrentUser)()),
|
|
699
|
+
role_permission_controller_ts_metadata("design:type", Function),
|
|
700
|
+
role_permission_controller_ts_metadata("design:paramtypes", [
|
|
701
|
+
typeof permission_dto/* .GetUserRolesDto */.Q0 === "undefined" ? Object : permission_dto/* .GetUserRolesDto */.Q0,
|
|
702
|
+
typeof ILoggedUserInfo === "undefined" ? Object : ILoggedUserInfo
|
|
703
|
+
]),
|
|
704
|
+
role_permission_controller_ts_metadata("design:returntype", Promise)
|
|
705
|
+
], RolePermissionController.prototype, "getUserRoles", null);
|
|
706
|
+
RolePermissionController = role_permission_controller_ts_decorate([
|
|
707
|
+
(0,swagger_.ApiTags)('IAM - Role Permissions'),
|
|
708
|
+
(0,common_.Controller)('iam/permissions'),
|
|
709
|
+
(0,common_.UseGuards)(nestjs_shared_.JwtAuthGuard, nestjs_shared_.PermissionGuard),
|
|
710
|
+
(0,swagger_.ApiBearerAuth)(),
|
|
711
|
+
role_permission_controller_ts_param(0, (0,common_.Inject)(permission_service/* .PermissionService */.n)),
|
|
712
|
+
role_permission_controller_ts_param(1, (0,common_.Inject)(iam_config_service/* .IAMConfigService */.N)),
|
|
713
|
+
role_permission_controller_ts_metadata("design:type", Function),
|
|
714
|
+
role_permission_controller_ts_metadata("design:paramtypes", [
|
|
715
|
+
typeof permission_service/* .PermissionService */.n === "undefined" ? Object : permission_service/* .PermissionService */.n,
|
|
716
|
+
typeof iam_config_service/* .IAMConfigService */.N === "undefined" ? Object : iam_config_service/* .IAMConfigService */.N
|
|
717
|
+
])
|
|
718
|
+
], RolePermissionController);
|
|
719
|
+
|
|
720
|
+
;// CONCATENATED MODULE: ./projects/nestjs-iam/src/controllers/user-action-permission.controller.ts
|
|
721
|
+
function user_action_permission_controller_ts_decorate(decorators, target, key, desc) {
|
|
722
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
723
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
724
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
725
|
+
} else {
|
|
726
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
727
|
+
if (d = decorators[i]) {
|
|
728
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
729
|
+
}
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
733
|
+
}
|
|
734
|
+
function user_action_permission_controller_ts_metadata(metadataKey, metadataValue) {
|
|
735
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
736
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
737
|
+
}
|
|
738
|
+
}
|
|
739
|
+
function user_action_permission_controller_ts_param(paramIndex, decorator) {
|
|
740
|
+
return function(target, key) {
|
|
741
|
+
decorator(target, key, paramIndex);
|
|
742
|
+
};
|
|
743
|
+
}
|
|
744
|
+
|
|
745
|
+
|
|
746
|
+
|
|
747
|
+
|
|
748
|
+
|
|
749
|
+
|
|
750
|
+
|
|
751
|
+
|
|
752
|
+
class UserActionPermissionController {
|
|
753
|
+
permissionService;
|
|
754
|
+
config;
|
|
755
|
+
// NOTE: @Inject() required for bundled code - type metadata may be lost during esbuild
|
|
756
|
+
constructor(permissionService, config){
|
|
757
|
+
this.permissionService = permissionService;
|
|
758
|
+
this.config = config;
|
|
759
|
+
}
|
|
760
|
+
async assignUserActions(dto, user) {
|
|
761
|
+
(0,helpers/* .validateCompanyAccess */.u)(this.config, dto.companyId, user);
|
|
762
|
+
const result = await this.permissionService.assignUserActions(dto);
|
|
763
|
+
return {
|
|
764
|
+
success: true,
|
|
765
|
+
message: 'User actions updated successfully',
|
|
766
|
+
messageKey: message_keys/* .PERMISSION_OPERATION_MESSAGES.PROCESS_SUCCESS */.P3.PROCESS_SUCCESS,
|
|
767
|
+
messageVariables: {
|
|
768
|
+
added: result.added,
|
|
769
|
+
removed: result.removed,
|
|
770
|
+
total: result.total
|
|
771
|
+
},
|
|
772
|
+
data: result
|
|
773
|
+
};
|
|
774
|
+
}
|
|
775
|
+
async getUserActions(dto, user) {
|
|
776
|
+
(0,helpers/* .validateCompanyAccess */.u)(this.config, dto.companyId, user);
|
|
777
|
+
const actions = await this.permissionService.getUserActions(dto.userId, dto.companyId, dto.branchId);
|
|
778
|
+
return {
|
|
779
|
+
success: true,
|
|
780
|
+
message: 'User actions retrieved successfully',
|
|
781
|
+
messageKey: message_keys/* .USER_ACTION_PERMISSION_MESSAGES.GET_SUCCESS */.k.GET_SUCCESS,
|
|
782
|
+
data: actions
|
|
783
|
+
};
|
|
784
|
+
}
|
|
785
|
+
}
|
|
786
|
+
user_action_permission_controller_ts_decorate([
|
|
787
|
+
(0,common_.Post)('user-actions/assign'),
|
|
788
|
+
(0,nestjs_shared_.RequirePermission)(nestjs_shared_.USER_ACTION_PERMISSIONS.ASSIGN),
|
|
789
|
+
(0,swagger_.ApiOperation)({
|
|
790
|
+
summary: 'Assign/remove actions to/from user',
|
|
791
|
+
description: 'Direct permissions. If company feature enabled, branchId is required.'
|
|
792
|
+
}),
|
|
793
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .PermissionOperationResultDto */.xJ),
|
|
794
|
+
(0,swagger_.ApiBody)({
|
|
795
|
+
type: permission_dto/* .AssignUserActionsDto */.zs
|
|
796
|
+
}),
|
|
797
|
+
user_action_permission_controller_ts_param(0, (0,common_.Body)()),
|
|
798
|
+
user_action_permission_controller_ts_param(1, (0,nestjs_shared_.CurrentUser)()),
|
|
799
|
+
user_action_permission_controller_ts_metadata("design:type", Function),
|
|
800
|
+
user_action_permission_controller_ts_metadata("design:paramtypes", [
|
|
801
|
+
typeof permission_dto/* .AssignUserActionsDto */.zs === "undefined" ? Object : permission_dto/* .AssignUserActionsDto */.zs,
|
|
802
|
+
typeof ILoggedUserInfo === "undefined" ? Object : ILoggedUserInfo
|
|
803
|
+
]),
|
|
804
|
+
user_action_permission_controller_ts_metadata("design:returntype", Promise)
|
|
805
|
+
], UserActionPermissionController.prototype, "assignUserActions", null);
|
|
806
|
+
user_action_permission_controller_ts_decorate([
|
|
807
|
+
(0,common_.Post)('get-user-actions'),
|
|
808
|
+
(0,nestjs_shared_.RequirePermission)(nestjs_shared_.USER_ACTION_PERMISSIONS.READ),
|
|
809
|
+
(0,swagger_.ApiOperation)({
|
|
810
|
+
summary: 'Get user direct actions',
|
|
811
|
+
description: 'Returns direct action permissions for user. Filter by companyId and branchId.'
|
|
812
|
+
}),
|
|
813
|
+
(0,nestjs_shared_.ApiResponseDto)(permission_dto/* .UserActionResponseDto */.gF, true, 'single'),
|
|
814
|
+
(0,swagger_.ApiBody)({
|
|
815
|
+
type: permission_dto/* .GetUserActionsDto */.CM
|
|
816
|
+
}),
|
|
817
|
+
user_action_permission_controller_ts_param(0, (0,common_.Body)()),
|
|
818
|
+
user_action_permission_controller_ts_param(1, (0,nestjs_shared_.CurrentUser)()),
|
|
819
|
+
user_action_permission_controller_ts_metadata("design:type", Function),
|
|
820
|
+
user_action_permission_controller_ts_metadata("design:paramtypes", [
|
|
821
|
+
typeof permission_dto/* .GetUserActionsDto */.CM === "undefined" ? Object : permission_dto/* .GetUserActionsDto */.CM,
|
|
822
|
+
typeof ILoggedUserInfo === "undefined" ? Object : ILoggedUserInfo
|
|
823
|
+
]),
|
|
824
|
+
user_action_permission_controller_ts_metadata("design:returntype", Promise)
|
|
825
|
+
], UserActionPermissionController.prototype, "getUserActions", null);
|
|
826
|
+
UserActionPermissionController = user_action_permission_controller_ts_decorate([
|
|
827
|
+
(0,swagger_.ApiTags)('IAM - User Action Permissions'),
|
|
828
|
+
(0,common_.Controller)('iam/permissions'),
|
|
829
|
+
(0,common_.UseGuards)(nestjs_shared_.JwtAuthGuard, nestjs_shared_.PermissionGuard),
|
|
830
|
+
(0,swagger_.ApiBearerAuth)(),
|
|
831
|
+
user_action_permission_controller_ts_param(0, (0,common_.Inject)(permission_service/* .PermissionService */.n)),
|
|
832
|
+
user_action_permission_controller_ts_param(1, (0,common_.Inject)(iam_config_service/* .IAMConfigService */.N)),
|
|
833
|
+
user_action_permission_controller_ts_metadata("design:type", Function),
|
|
834
|
+
user_action_permission_controller_ts_metadata("design:paramtypes", [
|
|
835
|
+
typeof permission_service/* .PermissionService */.n === "undefined" ? Object : permission_service/* .PermissionService */.n,
|
|
836
|
+
typeof iam_config_service/* .IAMConfigService */.N === "undefined" ? Object : iam_config_service/* .IAMConfigService */.N
|
|
837
|
+
])
|
|
838
|
+
], UserActionPermissionController);
|
|
839
|
+
|
|
840
|
+
;// CONCATENATED MODULE: ./projects/nestjs-iam/src/controllers/index.ts
|
|
841
|
+
|
|
842
|
+
|
|
843
|
+
// Permission controllers (conditionally registered based on permission mode)
|
|
844
|
+
|
|
845
|
+
|
|
846
|
+
|
|
847
|
+
|
|
848
|
+
|
|
849
|
+
|
|
850
|
+
},
|
|
851
|
+
741(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
852
|
+
/* import */ var _flusys_nestjs_shared_dtos__rspack_import_0 = __webpack_require__(873);
|
|
853
|
+
/* import */ var _nestjs_swagger__rspack_import_1 = __webpack_require__(176);
|
|
854
|
+
/* import */ var class_transformer__rspack_import_2 = __webpack_require__(812);
|
|
855
|
+
/* import */ var class_validator__rspack_import_3 = __webpack_require__(421);
|
|
856
|
+
/* import */ var _enums_index_js__rspack_import_4 = __webpack_require__(560);
|
|
857
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
858
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
859
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
860
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
861
|
+
} else {
|
|
862
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
863
|
+
if (d = decorators[i]) {
|
|
864
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
865
|
+
}
|
|
866
|
+
}
|
|
867
|
+
}
|
|
868
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
869
|
+
}
|
|
870
|
+
function _ts_metadata(metadataKey, metadataValue) {
|
|
871
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
872
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
873
|
+
}
|
|
874
|
+
}
|
|
875
|
+
|
|
876
|
+
|
|
877
|
+
|
|
878
|
+
|
|
879
|
+
|
|
880
|
+
class CreateActionDto {
|
|
881
|
+
name;
|
|
882
|
+
description;
|
|
883
|
+
code;
|
|
884
|
+
actionType;
|
|
885
|
+
permissionLogic;
|
|
886
|
+
parentId;
|
|
887
|
+
serial;
|
|
888
|
+
isActive;
|
|
889
|
+
}
|
|
890
|
+
_ts_decorate([
|
|
891
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
892
|
+
description: 'Action name',
|
|
893
|
+
example: 'View Users'
|
|
894
|
+
}),
|
|
895
|
+
(0,class_validator__rspack_import_3.IsString)(),
|
|
896
|
+
(0,class_validator__rspack_import_3.IsNotEmpty)(),
|
|
897
|
+
(0,class_validator__rspack_import_3.MaxLength)(255),
|
|
898
|
+
_ts_metadata("design:type", String)
|
|
899
|
+
], CreateActionDto.prototype, "name", void 0);
|
|
900
|
+
_ts_decorate([
|
|
901
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
902
|
+
description: 'Action description',
|
|
903
|
+
example: 'Permission to view user list',
|
|
904
|
+
required: false
|
|
905
|
+
}),
|
|
906
|
+
(0,class_validator__rspack_import_3.IsString)(),
|
|
907
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
908
|
+
(0,class_validator__rspack_import_3.MaxLength)(500),
|
|
909
|
+
_ts_metadata("design:type", String)
|
|
910
|
+
], CreateActionDto.prototype, "description", void 0);
|
|
911
|
+
_ts_decorate([
|
|
912
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
913
|
+
description: 'Unique code for programmatic reference',
|
|
914
|
+
example: 'user.view',
|
|
915
|
+
required: false
|
|
916
|
+
}),
|
|
917
|
+
(0,class_validator__rspack_import_3.IsString)(),
|
|
918
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
919
|
+
(0,class_validator__rspack_import_3.MaxLength)(255),
|
|
920
|
+
_ts_metadata("design:type", String)
|
|
921
|
+
], CreateActionDto.prototype, "code", void 0);
|
|
922
|
+
_ts_decorate([
|
|
923
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
924
|
+
description: 'Action type (backend for API endpoints, frontend for UI features)',
|
|
925
|
+
enum: _enums_index_js__rspack_import_4/* .ActionType */.X,
|
|
926
|
+
example: _enums_index_js__rspack_import_4/* .ActionType.BACKEND */.X.BACKEND,
|
|
927
|
+
default: _enums_index_js__rspack_import_4/* .ActionType.BACKEND */.X.BACKEND,
|
|
928
|
+
required: false
|
|
929
|
+
}),
|
|
930
|
+
(0,class_validator__rspack_import_3.IsEnum)(_enums_index_js__rspack_import_4/* .ActionType */.X),
|
|
931
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
932
|
+
_ts_metadata("design:type", typeof _enums_index_js__rspack_import_4/* .ActionType */.X === "undefined" ? Object : _enums_index_js__rspack_import_4/* .ActionType */.X)
|
|
933
|
+
], CreateActionDto.prototype, "actionType", void 0);
|
|
934
|
+
_ts_decorate([
|
|
935
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
936
|
+
description: 'Permission logic (AND/OR rules)',
|
|
937
|
+
required: false
|
|
938
|
+
}),
|
|
939
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
940
|
+
_ts_metadata("design:type", typeof LogicNode === "undefined" ? Object : LogicNode)
|
|
941
|
+
], CreateActionDto.prototype, "permissionLogic", void 0);
|
|
942
|
+
_ts_decorate([
|
|
943
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
944
|
+
description: 'Parent action ID for hierarchy',
|
|
945
|
+
example: '123e4567-e89b-12d3-a456-426614174000',
|
|
946
|
+
required: false
|
|
947
|
+
}),
|
|
948
|
+
(0,class_validator__rspack_import_3.IsUUID)(),
|
|
949
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
950
|
+
_ts_metadata("design:type", String)
|
|
951
|
+
], CreateActionDto.prototype, "parentId", void 0);
|
|
952
|
+
_ts_decorate([
|
|
953
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
954
|
+
description: 'Display order',
|
|
955
|
+
required: false
|
|
956
|
+
}),
|
|
957
|
+
(0,class_validator__rspack_import_3.IsInt)(),
|
|
958
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
959
|
+
_ts_metadata("design:type", Number)
|
|
960
|
+
], CreateActionDto.prototype, "serial", void 0);
|
|
961
|
+
_ts_decorate([
|
|
962
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
963
|
+
description: 'Active status',
|
|
964
|
+
default: true,
|
|
965
|
+
required: false
|
|
966
|
+
}),
|
|
967
|
+
(0,class_validator__rspack_import_3.IsBoolean)(),
|
|
968
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
969
|
+
_ts_metadata("design:type", Boolean)
|
|
970
|
+
], CreateActionDto.prototype, "isActive", void 0);
|
|
971
|
+
class UpdateActionDto extends (0,_nestjs_swagger__rspack_import_1.PartialType)(CreateActionDto) {
|
|
972
|
+
id;
|
|
973
|
+
}
|
|
974
|
+
_ts_decorate([
|
|
975
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
976
|
+
description: 'Action ID',
|
|
977
|
+
example: '123e4567-e89b-12d3-a456-426614174000'
|
|
978
|
+
}),
|
|
979
|
+
(0,class_validator__rspack_import_3.IsUUID)(),
|
|
980
|
+
(0,class_validator__rspack_import_3.IsNotEmpty)(),
|
|
981
|
+
_ts_metadata("design:type", String)
|
|
982
|
+
], UpdateActionDto.prototype, "id", void 0);
|
|
983
|
+
class ActionResponseDto extends _flusys_nestjs_shared_dtos__rspack_import_0.IdentityResponseDto {
|
|
984
|
+
readOnly;
|
|
985
|
+
name;
|
|
986
|
+
description;
|
|
987
|
+
code;
|
|
988
|
+
actionType;
|
|
989
|
+
permissionLogic;
|
|
990
|
+
parentId;
|
|
991
|
+
serial;
|
|
992
|
+
isActive;
|
|
993
|
+
}
|
|
994
|
+
_ts_decorate([
|
|
995
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
996
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
997
|
+
_ts_metadata("design:type", Boolean)
|
|
998
|
+
], ActionResponseDto.prototype, "readOnly", void 0);
|
|
999
|
+
_ts_decorate([
|
|
1000
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1001
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1002
|
+
_ts_metadata("design:type", String)
|
|
1003
|
+
], ActionResponseDto.prototype, "name", void 0);
|
|
1004
|
+
_ts_decorate([
|
|
1005
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1006
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1007
|
+
_ts_metadata("design:type", Object)
|
|
1008
|
+
], ActionResponseDto.prototype, "description", void 0);
|
|
1009
|
+
_ts_decorate([
|
|
1010
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1011
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1012
|
+
_ts_metadata("design:type", Object)
|
|
1013
|
+
], ActionResponseDto.prototype, "code", void 0);
|
|
1014
|
+
_ts_decorate([
|
|
1015
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1016
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1017
|
+
enum: _enums_index_js__rspack_import_4/* .ActionType */.X
|
|
1018
|
+
}),
|
|
1019
|
+
_ts_metadata("design:type", typeof _enums_index_js__rspack_import_4/* .ActionType */.X === "undefined" ? Object : _enums_index_js__rspack_import_4/* .ActionType */.X)
|
|
1020
|
+
], ActionResponseDto.prototype, "actionType", void 0);
|
|
1021
|
+
_ts_decorate([
|
|
1022
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1023
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1024
|
+
_ts_metadata("design:type", Object)
|
|
1025
|
+
], ActionResponseDto.prototype, "permissionLogic", void 0);
|
|
1026
|
+
_ts_decorate([
|
|
1027
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1028
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1029
|
+
_ts_metadata("design:type", Object)
|
|
1030
|
+
], ActionResponseDto.prototype, "parentId", void 0);
|
|
1031
|
+
_ts_decorate([
|
|
1032
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1033
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1034
|
+
_ts_metadata("design:type", Object)
|
|
1035
|
+
], ActionResponseDto.prototype, "serial", void 0);
|
|
1036
|
+
_ts_decorate([
|
|
1037
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1038
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1039
|
+
_ts_metadata("design:type", Boolean)
|
|
1040
|
+
], ActionResponseDto.prototype, "isActive", void 0);
|
|
1041
|
+
class ActionTreeDto extends ActionResponseDto {
|
|
1042
|
+
children;
|
|
1043
|
+
}
|
|
1044
|
+
_ts_decorate([
|
|
1045
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1046
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1047
|
+
type: ()=>[
|
|
1048
|
+
ActionTreeDto
|
|
1049
|
+
]
|
|
1050
|
+
}),
|
|
1051
|
+
_ts_metadata("design:type", Array)
|
|
1052
|
+
], ActionTreeDto.prototype, "children", void 0);
|
|
1053
|
+
class ActionTreeForPermissionDto {
|
|
1054
|
+
companyId;
|
|
1055
|
+
}
|
|
1056
|
+
_ts_decorate([
|
|
1057
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1058
|
+
description: 'Company to scope the action whitelist to. Defaults to the current user session company when omitted.',
|
|
1059
|
+
required: false
|
|
1060
|
+
}),
|
|
1061
|
+
(0,class_validator__rspack_import_3.IsUUID)(),
|
|
1062
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
1063
|
+
_ts_metadata("design:type", String)
|
|
1064
|
+
], ActionTreeForPermissionDto.prototype, "companyId", void 0);
|
|
1065
|
+
class ActionTreeQueryDto {
|
|
1066
|
+
search;
|
|
1067
|
+
isActive;
|
|
1068
|
+
withDeleted;
|
|
1069
|
+
}
|
|
1070
|
+
_ts_decorate([
|
|
1071
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1072
|
+
description: 'Search by name or code',
|
|
1073
|
+
example: 'user',
|
|
1074
|
+
required: false
|
|
1075
|
+
}),
|
|
1076
|
+
(0,class_validator__rspack_import_3.IsString)(),
|
|
1077
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
1078
|
+
_ts_metadata("design:type", String)
|
|
1079
|
+
], ActionTreeQueryDto.prototype, "search", void 0);
|
|
1080
|
+
_ts_decorate([
|
|
1081
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1082
|
+
description: 'Filter by active status',
|
|
1083
|
+
example: true,
|
|
1084
|
+
required: false
|
|
1085
|
+
}),
|
|
1086
|
+
(0,class_validator__rspack_import_3.IsBoolean)(),
|
|
1087
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
1088
|
+
_ts_metadata("design:type", Boolean)
|
|
1089
|
+
], ActionTreeQueryDto.prototype, "isActive", void 0);
|
|
1090
|
+
_ts_decorate([
|
|
1091
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1092
|
+
description: 'Include deleted actions',
|
|
1093
|
+
default: false,
|
|
1094
|
+
required: false
|
|
1095
|
+
}),
|
|
1096
|
+
(0,class_validator__rspack_import_3.IsBoolean)(),
|
|
1097
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
1098
|
+
_ts_metadata("design:type", Boolean)
|
|
1099
|
+
], ActionTreeQueryDto.prototype, "withDeleted", void 0);
|
|
1100
|
+
|
|
1101
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
1102
|
+
AU: () => (ActionTreeQueryDto),
|
|
1103
|
+
H: () => (UpdateActionDto),
|
|
1104
|
+
Sk: () => (CreateActionDto),
|
|
1105
|
+
Vw: () => (ActionResponseDto),
|
|
1106
|
+
gb: () => (ActionTreeDto),
|
|
1107
|
+
y9: () => (ActionTreeForPermissionDto)
|
|
1108
|
+
});
|
|
1109
|
+
|
|
1110
|
+
|
|
1111
|
+
},
|
|
1112
|
+
967(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
1113
|
+
/* import */ var _flusys_nestjs_shared_dtos__rspack_import_0 = __webpack_require__(873);
|
|
1114
|
+
/* import */ var _nestjs_swagger__rspack_import_1 = __webpack_require__(176);
|
|
1115
|
+
/* import */ var class_transformer__rspack_import_2 = __webpack_require__(812);
|
|
1116
|
+
/* import */ var class_validator__rspack_import_3 = __webpack_require__(421);
|
|
1117
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
1118
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1119
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
1120
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
1121
|
+
} else {
|
|
1122
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
1123
|
+
if (d = decorators[i]) {
|
|
1124
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1125
|
+
}
|
|
1126
|
+
}
|
|
1127
|
+
}
|
|
1128
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1129
|
+
}
|
|
1130
|
+
function _ts_metadata(metadataKey, metadataValue) {
|
|
1131
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
1132
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
1133
|
+
}
|
|
1134
|
+
}
|
|
1135
|
+
|
|
1136
|
+
|
|
1137
|
+
|
|
1138
|
+
|
|
1139
|
+
class CreateRoleDto {
|
|
1140
|
+
name;
|
|
1141
|
+
description;
|
|
1142
|
+
companyId;
|
|
1143
|
+
isActive;
|
|
1144
|
+
serial;
|
|
1145
|
+
}
|
|
1146
|
+
_ts_decorate([
|
|
1147
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1148
|
+
description: 'Role name',
|
|
1149
|
+
example: 'Manager'
|
|
1150
|
+
}),
|
|
1151
|
+
(0,class_validator__rspack_import_3.IsString)(),
|
|
1152
|
+
(0,class_validator__rspack_import_3.IsNotEmpty)(),
|
|
1153
|
+
(0,class_validator__rspack_import_3.MaxLength)(255),
|
|
1154
|
+
_ts_metadata("design:type", String)
|
|
1155
|
+
], CreateRoleDto.prototype, "name", void 0);
|
|
1156
|
+
_ts_decorate([
|
|
1157
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1158
|
+
description: 'Role description',
|
|
1159
|
+
example: 'Management level access',
|
|
1160
|
+
required: false
|
|
1161
|
+
}),
|
|
1162
|
+
(0,class_validator__rspack_import_3.IsString)(),
|
|
1163
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
1164
|
+
(0,class_validator__rspack_import_3.MaxLength)(500),
|
|
1165
|
+
_ts_metadata("design:type", String)
|
|
1166
|
+
], CreateRoleDto.prototype, "description", void 0);
|
|
1167
|
+
_ts_decorate([
|
|
1168
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1169
|
+
description: 'Company ID (scope role to specific company) - Only available when company feature is enabled',
|
|
1170
|
+
example: '123e4567-e89b-12d3-a456-426614174000',
|
|
1171
|
+
required: false
|
|
1172
|
+
}),
|
|
1173
|
+
(0,class_validator__rspack_import_3.IsUUID)(),
|
|
1174
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
1175
|
+
_ts_metadata("design:type", String)
|
|
1176
|
+
], CreateRoleDto.prototype, "companyId", void 0);
|
|
1177
|
+
_ts_decorate([
|
|
1178
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1179
|
+
description: 'Active status',
|
|
1180
|
+
default: true,
|
|
1181
|
+
required: false
|
|
1182
|
+
}),
|
|
1183
|
+
(0,class_validator__rspack_import_3.IsBoolean)(),
|
|
1184
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
1185
|
+
_ts_metadata("design:type", Boolean)
|
|
1186
|
+
], CreateRoleDto.prototype, "isActive", void 0);
|
|
1187
|
+
_ts_decorate([
|
|
1188
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1189
|
+
description: 'Display order',
|
|
1190
|
+
required: false
|
|
1191
|
+
}),
|
|
1192
|
+
(0,class_validator__rspack_import_3.IsInt)(),
|
|
1193
|
+
(0,class_validator__rspack_import_3.IsOptional)(),
|
|
1194
|
+
_ts_metadata("design:type", Number)
|
|
1195
|
+
], CreateRoleDto.prototype, "serial", void 0);
|
|
1196
|
+
class UpdateRoleDto extends (0,_nestjs_swagger__rspack_import_1.PartialType)(CreateRoleDto) {
|
|
1197
|
+
id;
|
|
1198
|
+
}
|
|
1199
|
+
_ts_decorate([
|
|
1200
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)({
|
|
1201
|
+
description: 'Role ID',
|
|
1202
|
+
example: '123e4567-e89b-12d3-a456-426614174000'
|
|
1203
|
+
}),
|
|
1204
|
+
(0,class_validator__rspack_import_3.IsUUID)(),
|
|
1205
|
+
(0,class_validator__rspack_import_3.IsNotEmpty)(),
|
|
1206
|
+
_ts_metadata("design:type", String)
|
|
1207
|
+
], UpdateRoleDto.prototype, "id", void 0);
|
|
1208
|
+
class RoleResponseDto extends _flusys_nestjs_shared_dtos__rspack_import_0.IdentityResponseDto {
|
|
1209
|
+
readOnly;
|
|
1210
|
+
name;
|
|
1211
|
+
description;
|
|
1212
|
+
companyId;
|
|
1213
|
+
isActive;
|
|
1214
|
+
serial;
|
|
1215
|
+
}
|
|
1216
|
+
_ts_decorate([
|
|
1217
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1218
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1219
|
+
_ts_metadata("design:type", Boolean)
|
|
1220
|
+
], RoleResponseDto.prototype, "readOnly", void 0);
|
|
1221
|
+
_ts_decorate([
|
|
1222
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1223
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1224
|
+
_ts_metadata("design:type", String)
|
|
1225
|
+
], RoleResponseDto.prototype, "name", void 0);
|
|
1226
|
+
_ts_decorate([
|
|
1227
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1228
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1229
|
+
_ts_metadata("design:type", Object)
|
|
1230
|
+
], RoleResponseDto.prototype, "description", void 0);
|
|
1231
|
+
_ts_decorate([
|
|
1232
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1233
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1234
|
+
_ts_metadata("design:type", Object)
|
|
1235
|
+
], RoleResponseDto.prototype, "companyId", void 0);
|
|
1236
|
+
_ts_decorate([
|
|
1237
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1238
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1239
|
+
_ts_metadata("design:type", Boolean)
|
|
1240
|
+
], RoleResponseDto.prototype, "isActive", void 0);
|
|
1241
|
+
_ts_decorate([
|
|
1242
|
+
(0,class_transformer__rspack_import_2.Expose)(),
|
|
1243
|
+
(0,_nestjs_swagger__rspack_import_1.ApiProperty)(),
|
|
1244
|
+
_ts_metadata("design:type", Object)
|
|
1245
|
+
], RoleResponseDto.prototype, "serial", void 0);
|
|
1246
|
+
|
|
1247
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
1248
|
+
$v: () => (UpdateRoleDto),
|
|
1249
|
+
St: () => (CreateRoleDto),
|
|
1250
|
+
Tm: () => (RoleResponseDto)
|
|
1251
|
+
});
|
|
1252
|
+
|
|
1253
|
+
|
|
1254
|
+
},
|
|
1255
|
+
873(module) {
|
|
1256
|
+
|
|
1257
|
+
module.exports = __rspack_external__flusys_nestjs_shared_dtos_c4585026;
|
|
1258
|
+
|
|
1259
|
+
|
|
1260
|
+
},
|
|
1261
|
+
|
|
1262
|
+
};
|