@neohm/nestend 5.0.2 → 6.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.
- package/README.md +34 -18
- package/dist/admin/controllers/admin.api.key.controller.d.ts +5 -0
- package/dist/admin/controllers/admin.api.key.controller.d.ts.map +1 -1
- package/dist/admin/controllers/admin.api.key.controller.js +22 -2
- package/dist/admin/controllers/admin.api.key.controller.js.map +1 -1
- package/dist/admin/controllers/admin.permission.controller.d.ts +17 -0
- package/dist/admin/controllers/admin.permission.controller.d.ts.map +1 -0
- package/dist/admin/controllers/admin.permission.controller.js +125 -0
- package/dist/admin/controllers/admin.permission.controller.js.map +1 -0
- package/dist/admin/controllers/admin.scope.controller.d.ts.map +1 -1
- package/dist/admin/controllers/admin.scope.controller.js +1 -1
- package/dist/admin/controllers/admin.scope.controller.js.map +1 -1
- package/dist/admin/controllers/system.role.controller.d.ts +17 -1
- package/dist/admin/controllers/system.role.controller.d.ts.map +1 -1
- package/dist/admin/controllers/system.role.controller.js +13 -4
- package/dist/admin/controllers/system.role.controller.js.map +1 -1
- package/dist/admin/dtos/add.api.key.dto.d.ts +1 -0
- package/dist/admin/dtos/add.api.key.dto.d.ts.map +1 -1
- package/dist/admin/dtos/add.api.key.dto.js +12 -0
- package/dist/admin/dtos/add.api.key.dto.js.map +1 -1
- package/dist/admin/dtos/add.permission.dto.d.ts +8 -0
- package/dist/admin/dtos/add.permission.dto.d.ts.map +1 -0
- package/dist/admin/dtos/add.permission.dto.js +53 -0
- package/dist/admin/dtos/add.permission.dto.js.map +1 -0
- package/dist/admin/dtos/add.system.role.dto.d.ts +3 -0
- package/dist/admin/dtos/add.system.role.dto.d.ts.map +1 -1
- package/dist/admin/dtos/add.system.role.dto.js +38 -1
- package/dist/admin/dtos/add.system.role.dto.js.map +1 -1
- package/dist/admin/dtos/api.key.roles.dto.d.ts +4 -0
- package/dist/admin/dtos/api.key.roles.dto.d.ts.map +1 -0
- package/dist/admin/dtos/api.key.roles.dto.js +30 -0
- package/dist/admin/dtos/api.key.roles.dto.js.map +1 -0
- package/dist/admin/dtos/permission.list.dto.d.ts +4 -0
- package/dist/admin/dtos/permission.list.dto.d.ts.map +1 -0
- package/dist/admin/dtos/permission.list.dto.js +8 -0
- package/dist/admin/dtos/permission.list.dto.js.map +1 -0
- package/dist/admin/es6.classes.d.ts +9 -4
- package/dist/admin/es6.classes.d.ts.map +1 -1
- package/dist/admin/es6.classes.js +14 -0
- package/dist/admin/es6.classes.js.map +1 -1
- package/dist/admin/libraries/api.key.data.processor.d.ts +1 -0
- package/dist/admin/libraries/api.key.data.processor.d.ts.map +1 -1
- package/dist/admin/libraries/api.key.data.processor.js +23 -1
- package/dist/admin/libraries/api.key.data.processor.js.map +1 -1
- package/dist/admin/libraries/api.key.list.processor.d.ts.map +1 -1
- package/dist/admin/libraries/api.key.list.processor.js +18 -1
- package/dist/admin/libraries/api.key.list.processor.js.map +1 -1
- package/dist/admin/libraries/api.key.roles.data.processor.d.ts +15 -0
- package/dist/admin/libraries/api.key.roles.data.processor.d.ts.map +1 -0
- package/dist/admin/libraries/api.key.roles.data.processor.js +49 -0
- package/dist/admin/libraries/api.key.roles.data.processor.js.map +1 -0
- package/dist/admin/libraries/client.membership.data.processor.d.ts.map +1 -1
- package/dist/admin/libraries/client.membership.data.processor.js +4 -1
- package/dist/admin/libraries/client.membership.data.processor.js.map +1 -1
- package/dist/admin/libraries/client.user.data.processor.d.ts.map +1 -1
- package/dist/admin/libraries/client.user.data.processor.js +5 -2
- package/dist/admin/libraries/client.user.data.processor.js.map +1 -1
- package/dist/admin/libraries/permission.data.processor.d.ts +16 -0
- package/dist/admin/libraries/permission.data.processor.d.ts.map +1 -0
- package/dist/admin/libraries/permission.data.processor.js +68 -0
- package/dist/admin/libraries/permission.data.processor.js.map +1 -0
- package/dist/admin/libraries/permission.list.processor.d.ts +11 -0
- package/dist/admin/libraries/permission.list.processor.d.ts.map +1 -0
- package/dist/admin/libraries/permission.list.processor.js +42 -0
- package/dist/admin/libraries/permission.list.processor.js.map +1 -0
- package/dist/admin/libraries/role.list.processor.d.ts.map +1 -1
- package/dist/admin/libraries/role.list.processor.js +14 -1
- package/dist/admin/libraries/role.list.processor.js.map +1 -1
- package/dist/admin/libraries/system.role.data.processor.d.ts +4 -0
- package/dist/admin/libraries/system.role.data.processor.d.ts.map +1 -1
- package/dist/admin/libraries/system.role.data.processor.js +68 -5
- package/dist/admin/libraries/system.role.data.processor.js.map +1 -1
- package/dist/admin/utilities/api.key.role.policy.d.ts +4 -0
- package/dist/admin/utilities/api.key.role.policy.d.ts.map +1 -0
- package/dist/admin/utilities/api.key.role.policy.js +30 -0
- package/dist/admin/utilities/api.key.role.policy.js.map +1 -0
- package/dist/admin/utilities/scope.grants.d.ts.map +1 -1
- package/dist/admin/utilities/scope.grants.js +6 -1
- package/dist/admin/utilities/scope.grants.js.map +1 -1
- package/dist/admin/utilities/tenant.role.policy.d.ts +4 -5
- package/dist/admin/utilities/tenant.role.policy.d.ts.map +1 -1
- package/dist/admin/utilities/tenant.role.policy.js +7 -6
- package/dist/admin/utilities/tenant.role.policy.js.map +1 -1
- package/dist/auth/controllers/auth.controller.d.ts.map +1 -1
- package/dist/auth/controllers/auth.controller.js +5 -2
- package/dist/auth/controllers/auth.controller.js.map +1 -1
- package/dist/auth/controllers/tenant.invitation.controller.d.ts.map +1 -1
- package/dist/auth/controllers/tenant.invitation.controller.js +15 -16
- package/dist/auth/controllers/tenant.invitation.controller.js.map +1 -1
- package/dist/auth/controllers/tenant.member.controller.d.ts.map +1 -1
- package/dist/auth/controllers/tenant.member.controller.js +5 -5
- package/dist/auth/controllers/tenant.member.controller.js.map +1 -1
- package/dist/auth/decorators/api.key.scopes.decorator.d.ts +4 -0
- package/dist/auth/decorators/api.key.scopes.decorator.d.ts.map +1 -1
- package/dist/auth/decorators/api.key.scopes.decorator.js +7 -1
- package/dist/auth/decorators/api.key.scopes.decorator.js.map +1 -1
- package/dist/auth/entities/api.key.role.entity.d.ts +13 -0
- package/dist/auth/entities/api.key.role.entity.d.ts.map +1 -0
- package/dist/auth/entities/api.key.role.entity.js +51 -0
- package/dist/auth/entities/api.key.role.entity.js.map +1 -0
- package/dist/auth/entities/permission.entity.d.ts +10 -0
- package/dist/auth/entities/permission.entity.d.ts.map +1 -0
- package/dist/auth/entities/permission.entity.js +43 -0
- package/dist/auth/entities/permission.entity.js.map +1 -0
- package/dist/auth/entities/role.permission.entity.d.ts +10 -0
- package/dist/auth/entities/role.permission.entity.d.ts.map +1 -0
- package/dist/auth/entities/role.permission.entity.js +41 -0
- package/dist/auth/entities/role.permission.entity.js.map +1 -0
- package/dist/auth/entities/system.role.entity.d.ts +6 -0
- package/dist/auth/entities/system.role.entity.d.ts.map +1 -1
- package/dist/auth/entities/system.role.entity.js +20 -0
- package/dist/auth/entities/system.role.entity.js.map +1 -1
- package/dist/auth/enums/role.default.enum.d.ts +8 -0
- package/dist/auth/enums/role.default.enum.d.ts.map +1 -0
- package/dist/auth/enums/role.default.enum.js +13 -0
- package/dist/auth/enums/role.default.enum.js.map +1 -0
- package/dist/auth/enums/tenant.role.enum.d.ts.map +1 -1
- package/dist/auth/enums/tenant.role.enum.js.map +1 -1
- package/dist/auth/guards/api.key.guard.d.ts.map +1 -1
- package/dist/auth/guards/api.key.guard.js +24 -8
- package/dist/auth/guards/api.key.guard.js.map +1 -1
- package/dist/auth/middlewares/api.key.middleware.d.ts.map +1 -1
- package/dist/auth/middlewares/api.key.middleware.js +1 -1
- package/dist/auth/middlewares/api.key.middleware.js.map +1 -1
- package/dist/auth/processors/tenant.invitation.data.processor.d.ts +3 -1
- package/dist/auth/processors/tenant.invitation.data.processor.d.ts.map +1 -1
- package/dist/auth/processors/tenant.invitation.data.processor.js +6 -2
- package/dist/auth/processors/tenant.invitation.data.processor.js.map +1 -1
- package/dist/auth/processors/tenant.invitation.list.processor.d.ts +2 -1
- package/dist/auth/processors/tenant.invitation.list.processor.d.ts.map +1 -1
- package/dist/auth/processors/tenant.invitation.list.processor.js +4 -1
- package/dist/auth/processors/tenant.invitation.list.processor.js.map +1 -1
- package/dist/auth/services/api.key.service.d.ts +10 -2
- package/dist/auth/services/api.key.service.d.ts.map +1 -1
- package/dist/auth/services/api.key.service.js +84 -7
- package/dist/auth/services/api.key.service.js.map +1 -1
- package/dist/auth/services/auth.service.d.ts +10 -5
- package/dist/auth/services/auth.service.d.ts.map +1 -1
- package/dist/auth/services/auth.service.js +63 -49
- package/dist/auth/services/auth.service.js.map +1 -1
- package/dist/auth/services/role.service.d.ts +3 -1
- package/dist/auth/services/role.service.d.ts.map +1 -1
- package/dist/auth/services/role.service.js +37 -0
- package/dist/auth/services/role.service.js.map +1 -1
- package/dist/auth/services/scope.service.d.ts +1 -0
- package/dist/auth/services/scope.service.d.ts.map +1 -1
- package/dist/auth/services/scope.service.js +32 -0
- package/dist/auth/services/scope.service.js.map +1 -1
- package/dist/auth/services/tenant.invitation.service.d.ts +6 -4
- package/dist/auth/services/tenant.invitation.service.d.ts.map +1 -1
- package/dist/auth/services/tenant.invitation.service.js +30 -6
- package/dist/auth/services/tenant.invitation.service.js.map +1 -1
- package/dist/auth/services/tenant.membership.service.d.ts +3 -1
- package/dist/auth/services/tenant.membership.service.d.ts.map +1 -1
- package/dist/auth/services/tenant.membership.service.js +22 -3
- package/dist/auth/services/tenant.membership.service.js.map +1 -1
- package/dist/auth/types/api.key.types.d.ts +6 -0
- package/dist/auth/types/api.key.types.d.ts.map +1 -1
- package/dist/auth/types/auth.types.d.ts +2 -0
- package/dist/auth/types/auth.types.d.ts.map +1 -1
- package/dist/auth/types/rbac.types.d.ts +35 -0
- package/dist/auth/types/rbac.types.d.ts.map +1 -0
- package/dist/auth/types/rbac.types.js +3 -0
- package/dist/auth/types/rbac.types.js.map +1 -0
- package/dist/auth/utilities/grant.authority.d.ts +14 -0
- package/dist/auth/utilities/grant.authority.d.ts.map +1 -0
- package/dist/auth/utilities/grant.authority.js +38 -0
- package/dist/auth/utilities/grant.authority.js.map +1 -0
- package/dist/auth/utilities/role.catalogue.d.ts +10 -0
- package/dist/auth/utilities/role.catalogue.d.ts.map +1 -0
- package/dist/auth/utilities/role.catalogue.js +81 -0
- package/dist/auth/utilities/role.catalogue.js.map +1 -0
- package/dist/auth/utilities/role.hierarchy.d.ts +31 -0
- package/dist/auth/utilities/role.hierarchy.d.ts.map +1 -0
- package/dist/auth/utilities/role.hierarchy.js +149 -0
- package/dist/auth/utilities/role.hierarchy.js.map +1 -0
- package/dist/auth/utilities/scope.cascade.d.ts +2 -0
- package/dist/auth/utilities/scope.cascade.d.ts.map +1 -1
- package/dist/auth/utilities/scope.cascade.js +44 -2
- package/dist/auth/utilities/scope.cascade.js.map +1 -1
- package/dist/auth/utilities/tenant.access.d.ts.map +1 -1
- package/dist/auth/utilities/tenant.access.js +10 -3
- package/dist/auth/utilities/tenant.access.js.map +1 -1
- package/dist/constants/entity.constants.d.ts +3 -0
- package/dist/constants/entity.constants.d.ts.map +1 -1
- package/dist/constants/entity.constants.js +3 -0
- package/dist/constants/entity.constants.js.map +1 -1
- package/dist/constants/entity.maps.d.ts +6 -0
- package/dist/constants/entity.maps.d.ts.map +1 -1
- package/dist/constants/entity.maps.js +6 -0
- package/dist/constants/entity.maps.js.map +1 -1
- package/dist/index.d.ts +9 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -9
- package/dist/index.js.map +1 -1
- package/dist/migrations/1749600000004.CreateSysRolesTable.d.ts.map +1 -1
- package/dist/migrations/1749600000004.CreateSysRolesTable.js +7 -0
- package/dist/migrations/1749600000004.CreateSysRolesTable.js.map +1 -1
- package/dist/migrations/1749600000025.CreateSysScopesTable.d.ts +3 -0
- package/dist/migrations/1749600000025.CreateSysScopesTable.d.ts.map +1 -1
- package/dist/migrations/1749600000025.CreateSysScopesTable.js +16 -0
- package/dist/migrations/1749600000025.CreateSysScopesTable.js.map +1 -1
- package/dist/migrations/1749600000033.CreateSysPermissionsTable.d.ts +6 -0
- package/dist/migrations/1749600000033.CreateSysPermissionsTable.d.ts.map +1 -0
- package/dist/migrations/1749600000033.CreateSysPermissionsTable.js +29 -0
- package/dist/migrations/1749600000033.CreateSysPermissionsTable.js.map +1 -0
- package/dist/migrations/1749600000034.CreateSysRolePermissionsTable.d.ts +6 -0
- package/dist/migrations/1749600000034.CreateSysRolePermissionsTable.d.ts.map +1 -0
- package/dist/migrations/1749600000034.CreateSysRolePermissionsTable.js +32 -0
- package/dist/migrations/1749600000034.CreateSysRolePermissionsTable.js.map +1 -0
- package/dist/migrations/1749600000035.CreateSysApiKeyRolesTable.d.ts +6 -0
- package/dist/migrations/1749600000035.CreateSysApiKeyRolesTable.d.ts.map +1 -0
- package/dist/migrations/1749600000035.CreateSysApiKeyRolesTable.js +38 -0
- package/dist/migrations/1749600000035.CreateSysApiKeyRolesTable.js.map +1 -0
- package/dist/migrations/1749600000036.SeedGlobalAdminRole.d.ts +6 -0
- package/dist/migrations/1749600000036.SeedGlobalAdminRole.d.ts.map +1 -0
- package/dist/migrations/1749600000036.SeedGlobalAdminRole.js +25 -0
- package/dist/migrations/1749600000036.SeedGlobalAdminRole.js.map +1 -0
- package/package.json +1 -1
- package/dist/auth/enums/role.tier.enum.d.ts +0 -6
- package/dist/auth/enums/role.tier.enum.d.ts.map +0 -1
- package/dist/auth/enums/role.tier.enum.js +0 -10
- package/dist/auth/enums/role.tier.enum.js.map +0 -1
|
@@ -3,6 +3,9 @@ export declare class AddSystemRoleDto extends CommonDataDto {
|
|
|
3
3
|
identifier: string;
|
|
4
4
|
name: string;
|
|
5
5
|
description?: string;
|
|
6
|
+
scope_id?: string;
|
|
7
|
+
priority?: number;
|
|
8
|
+
permission_ids?: string[];
|
|
6
9
|
is_active?: boolean;
|
|
7
10
|
}
|
|
8
11
|
//# sourceMappingURL=add.system.role.dto.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.system.role.dto.d.ts","sourceRoot":"","sources":["../../../src/admin/dtos/add.system.role.dto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"add.system.role.dto.d.ts","sourceRoot":"","sources":["../../../src/admin/dtos/add.system.role.dto.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAUlE,qBAAa,gBAAiB,SAAQ,aAAa;IAajD,UAAU,EAAE,MAAM,CAAC;IAMnB,IAAI,EAAE,MAAM,CAAC;IAQb,WAAW,CAAC,EAAE,MAAM,CAAC;IAUrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAalB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAYlB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAS1B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
|
|
@@ -13,6 +13,8 @@ exports.AddSystemRoleDto = void 0;
|
|
|
13
13
|
const class_validator_1 = require("class-validator");
|
|
14
14
|
const swagger_1 = require("@nestjs/swagger");
|
|
15
15
|
const common_data_dto_1 = require("../../common/dtos/common.data.dto");
|
|
16
|
+
const admin_default_enum_1 = require("../enums/admin.default.enum");
|
|
17
|
+
const role_default_enum_1 = require("../../auth/enums/role.default.enum");
|
|
16
18
|
const admin_patterns_1 = require("../validators/admin.patterns");
|
|
17
19
|
class AddSystemRoleDto extends common_data_dto_1.CommonDataDto {
|
|
18
20
|
}
|
|
@@ -20,7 +22,7 @@ exports.AddSystemRoleDto = AddSystemRoleDto;
|
|
|
20
22
|
__decorate([
|
|
21
23
|
(0, swagger_1.ApiProperty)({
|
|
22
24
|
example: 'org.owner',
|
|
23
|
-
description: 'Machine-readable key application code checks.
|
|
25
|
+
description: 'Machine-readable key application code checks. Unique, and fixed once created.',
|
|
24
26
|
}),
|
|
25
27
|
(0, class_validator_1.IsString)(),
|
|
26
28
|
(0, class_validator_1.IsNotEmpty)(),
|
|
@@ -46,6 +48,41 @@ __decorate([
|
|
|
46
48
|
(0, class_validator_1.MaxLength)(1000),
|
|
47
49
|
__metadata("design:type", String)
|
|
48
50
|
], AddSystemRoleDto.prototype, "description", void 0);
|
|
51
|
+
__decorate([
|
|
52
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
53
|
+
format: 'uuid',
|
|
54
|
+
nullable: true,
|
|
55
|
+
description: 'The scope this role ranks within (sys_scopes). Fixed once created. Omit for an unscoped role, which only `global.admin` can grant and which covers nothing but itself.',
|
|
56
|
+
}),
|
|
57
|
+
(0, class_validator_1.IsOptional)(),
|
|
58
|
+
(0, class_validator_1.IsUUID)(),
|
|
59
|
+
__metadata("design:type", String)
|
|
60
|
+
], AddSystemRoleDto.prototype, "scope_id", void 0);
|
|
61
|
+
__decorate([
|
|
62
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
63
|
+
default: role_default_enum_1.RoleDefault.PRIORITY,
|
|
64
|
+
minimum: 1,
|
|
65
|
+
maximum: role_default_enum_1.RoleDefault.MAX_PRIORITY,
|
|
66
|
+
description: "Seniority within the scope: 1 is the most senior. A role covers the roles of its scope (and of its child scopes) with an equal or larger number; the smallest number in a scope marks its scope admins, who grant that scope's roles. Changing it on an existing role, or creating a role more senior than the scope's current top, requires the global super admin role.",
|
|
67
|
+
}),
|
|
68
|
+
(0, class_validator_1.IsOptional)(),
|
|
69
|
+
(0, class_validator_1.IsInt)(),
|
|
70
|
+
(0, class_validator_1.Min)(1),
|
|
71
|
+
(0, class_validator_1.Max)(role_default_enum_1.RoleDefault.MAX_PRIORITY),
|
|
72
|
+
__metadata("design:type", Number)
|
|
73
|
+
], AddSystemRoleDto.prototype, "priority", void 0);
|
|
74
|
+
__decorate([
|
|
75
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
76
|
+
type: [String],
|
|
77
|
+
format: 'uuid',
|
|
78
|
+
description: "sys_permissions uuids the role carries itself; replaces the current set. Each must belong to the role's scope or one of its children. Omit to keep them.",
|
|
79
|
+
}),
|
|
80
|
+
(0, class_validator_1.IsOptional)(),
|
|
81
|
+
(0, class_validator_1.IsArray)(),
|
|
82
|
+
(0, class_validator_1.ArrayMaxSize)(admin_default_enum_1.AdminLimit.MAX_ID_ARRAY),
|
|
83
|
+
(0, class_validator_1.IsUUID)('all', { each: true }),
|
|
84
|
+
__metadata("design:type", Array)
|
|
85
|
+
], AddSystemRoleDto.prototype, "permission_ids", void 0);
|
|
49
86
|
__decorate([
|
|
50
87
|
(0, swagger_1.ApiPropertyOptional)({
|
|
51
88
|
default: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.system.role.dto.js","sourceRoot":"","sources":["../../../src/admin/dtos/add.system.role.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"add.system.role.dto.js","sourceRoot":"","sources":["../../../src/admin/dtos/add.system.role.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAayB;AACzB,6CAAmE;AACnE,uEAAkE;AAClE,oEAAyD;AACzD,0EAAiE;AACjE,iEAA4E;AAO5E,MAAa,gBAAiB,SAAQ,+BAAa;CAwElD;AAxED,4CAwEC;AA3DC;IAZC,IAAA,qBAAW,EAAC;QACX,OAAO,EAAE,WAAW;QACpB,WAAW,EACT,+EAA+E;KAClF,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,EAAC,GAAG,CAAC;IACd,IAAA,yBAAO,EAAC,6CAA4B,EAAE;QACrC,OAAO,EACL,iHAAiH;KACpH,CAAC;;oDACiB;AAMnB;IAJC,IAAA,qBAAW,EAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC;IAC9C,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,EAAC,GAAG,CAAC;;8CACF;AAQb;IANC,IAAA,6BAAmB,EAAC;QACnB,OAAO,EAAE,sDAAsD;KAChE,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,2BAAS,EAAC,IAAI,CAAC;;qDACK;AAUrB;IARC,IAAA,6BAAmB,EAAC;QACnB,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,IAAI;QACd,WAAW,EACT,wKAAwK;KAC3K,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;;kDACS;AAalB;IAXC,IAAA,6BAAmB,EAAC;QACnB,OAAO,EAAE,+BAAW,CAAC,QAAQ;QAC7B,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,+BAAW,CAAC,YAAY;QACjC,WAAW,EACT,2WAA2W;KAC9W,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,GAAE;IACP,IAAA,qBAAG,EAAC,CAAC,CAAC;IACN,IAAA,qBAAG,EAAC,+BAAW,CAAC,YAAY,CAAC;;kDACZ;AAYlB;IAVC,IAAA,6BAAmB,EAAC;QACnB,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,MAAM,EAAE,MAAM;QACd,WAAW,EACT,0JAA0J;KAC7J,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;IACT,IAAA,8BAAY,EAAC,+BAAU,CAAC,YAAY,CAAC;IACrC,IAAA,wBAAM,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;wDACJ;AAS1B;IAPC,IAAA,6BAAmB,EAAC;QACnB,OAAO,EAAE,IAAI;QACb,WAAW,EACT,0JAA0J;KAC7J,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;mDACQ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.key.roles.dto.d.ts","sourceRoot":"","sources":["../../../src/admin/dtos/api.key.roles.dto.ts"],"names":[],"mappings":"AAKA,qBAAa,cAAc;IAUzB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
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;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ApiKeyRolesDto = void 0;
|
|
13
|
+
const class_validator_1 = require("class-validator");
|
|
14
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
15
|
+
const admin_default_enum_1 = require("../enums/admin.default.enum");
|
|
16
|
+
class ApiKeyRolesDto {
|
|
17
|
+
}
|
|
18
|
+
exports.ApiKeyRolesDto = ApiKeyRolesDto;
|
|
19
|
+
__decorate([
|
|
20
|
+
(0, swagger_1.ApiProperty)({
|
|
21
|
+
type: [String],
|
|
22
|
+
format: 'uuid',
|
|
23
|
+
description: 'sys_roles uuids; replaces the current set. Each must be an active scoped role inside a scope the key holds.',
|
|
24
|
+
}),
|
|
25
|
+
(0, class_validator_1.IsArray)(),
|
|
26
|
+
(0, class_validator_1.ArrayMaxSize)(admin_default_enum_1.AdminLimit.MAX_ID_ARRAY),
|
|
27
|
+
(0, class_validator_1.IsUUID)('all', { each: true }),
|
|
28
|
+
__metadata("design:type", Array)
|
|
29
|
+
], ApiKeyRolesDto.prototype, "role_ids", void 0);
|
|
30
|
+
//# sourceMappingURL=api.key.roles.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.key.roles.dto.js","sourceRoot":"","sources":["../../../src/admin/dtos/api.key.roles.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAgE;AAChE,6CAA8C;AAC9C,oEAAyD;AAGzD,MAAa,cAAc;CAW1B;AAXD,wCAWC;AADC;IATC,IAAA,qBAAW,EAAC;QACX,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,MAAM,EAAE,MAAM;QACd,WAAW,EACT,6GAA6G;KAChH,CAAC;IACD,IAAA,yBAAO,GAAE;IACT,IAAA,8BAAY,EAAC,+BAAU,CAAC,YAAY,CAAC;IACrC,IAAA,wBAAM,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;gDACX"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"permission.list.dto.d.ts","sourceRoot":"","sources":["../../../src/admin/dtos/permission.list.dto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAG/E,qBAAa,iBAAkB,SAAQ,mBAAmB;CAAG"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PermissionListDto = void 0;
|
|
4
|
+
const common_list_filter_dto_1 = require("../../common/dtos/common.list.filter.dto");
|
|
5
|
+
class PermissionListDto extends common_list_filter_dto_1.CommonListFilterDto {
|
|
6
|
+
}
|
|
7
|
+
exports.PermissionListDto = PermissionListDto;
|
|
8
|
+
//# sourceMappingURL=permission.list.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"permission.list.dto.js","sourceRoot":"","sources":["../../../src/admin/dtos/permission.list.dto.ts"],"names":[],"mappings":";;;AAAA,qFAA+E;AAG/E,MAAa,iBAAkB,SAAQ,4CAAmB;CAAG;AAA7D,8CAA6D"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AdminApiKeyController } from './controllers/admin.api.key.controller';
|
|
2
2
|
import { AdminEmailTemplateController } from './controllers/admin.email.template.controller';
|
|
3
3
|
import { AdminPdfTemplateController } from './controllers/admin.pdf.template.controller';
|
|
4
|
+
import { AdminPermissionController } from './controllers/admin.permission.controller';
|
|
4
5
|
import { AdminRoleController } from './controllers/admin.role.controller';
|
|
5
6
|
import { AdminScheduledTaskController } from './controllers/admin.scheduled.task.controller';
|
|
6
7
|
import { AdminScopeController } from './controllers/admin.scope.controller';
|
|
@@ -18,6 +19,7 @@ import { AdminRoleListProcessor } from './libraries/admin.role.list.processor';
|
|
|
18
19
|
import { AdminUserListProcessor } from './libraries/admin.user.list.processor';
|
|
19
20
|
import { ApiKeyDataProcessor } from './libraries/api.key.data.processor';
|
|
20
21
|
import { ApiKeyListProcessor } from './libraries/api.key.list.processor';
|
|
22
|
+
import { ApiKeyRolesDataProcessor } from './libraries/api.key.roles.data.processor';
|
|
21
23
|
import { BulkUserDataProcessor } from './libraries/bulk.user.data.processor';
|
|
22
24
|
import { ClientMembershipDataProcessor } from './libraries/client.membership.data.processor';
|
|
23
25
|
import { ClientUserDataProcessor } from './libraries/client.user.data.processor';
|
|
@@ -27,6 +29,8 @@ import { EmailTemplateDataProcessor } from './libraries/email.template.data.proc
|
|
|
27
29
|
import { EmailTemplateListProcessor } from './libraries/email.template.list.processor';
|
|
28
30
|
import { PdfTemplateDataProcessor } from './libraries/pdf.template.data.processor';
|
|
29
31
|
import { PdfTemplateListProcessor } from './libraries/pdf.template.list.processor';
|
|
32
|
+
import { PermissionDataProcessor } from './libraries/permission.data.processor';
|
|
33
|
+
import { PermissionListProcessor } from './libraries/permission.list.processor';
|
|
30
34
|
import { RoleListProcessor } from './libraries/role.list.processor';
|
|
31
35
|
import { ScheduledTaskDataProcessor } from './libraries/scheduled.task.data.processor';
|
|
32
36
|
import { ScheduledTaskDeleteProcessor } from './libraries/scheduled.task.delete.processor';
|
|
@@ -39,21 +43,22 @@ import { SystemUserListProcessor } from './libraries/system.user.list.processor'
|
|
|
39
43
|
import { TenantDataProcessor } from './libraries/tenant.data.processor';
|
|
40
44
|
import { TenantDeleteProcessor } from './libraries/tenant.delete.processor';
|
|
41
45
|
import { TenantListProcessor } from './libraries/tenant.list.processor';
|
|
42
|
-
import { AddAdminUserDto } from './dtos/add.admin.user.dto';
|
|
43
46
|
import { AddApiKeyDto } from './dtos/add.api.key.dto';
|
|
44
47
|
import { AddClientMembershipDto } from './dtos/add.client.membership.dto';
|
|
45
48
|
import { AddPdfTemplateDto } from './dtos/add.pdf.template.dto';
|
|
49
|
+
import { AddPermissionDto } from './dtos/add.permission.dto';
|
|
46
50
|
import { ScheduleDto } from './dtos/add.scheduled.task.dto';
|
|
47
51
|
import { AddScopeDto } from './dtos/add.scope.dto';
|
|
48
52
|
import { AddSystemRoleDto } from './dtos/add.system.role.dto';
|
|
49
53
|
import { AddTenantDto } from './dtos/add.tenant.dto';
|
|
50
54
|
import { ApiKeyListDto } from './dtos/api.key.list.dto';
|
|
55
|
+
import { ApiKeyRolesDto } from './dtos/api.key.roles.dto';
|
|
51
56
|
import { BaseUserDto } from './dtos/base.user.dto';
|
|
52
57
|
export declare const es6Classes: {
|
|
53
|
-
controllers: (typeof AdminApiKeyController | typeof AdminEmailTemplateController | typeof AdminPdfTemplateController | typeof AdminRoleController | typeof AdminScheduledTaskController | typeof AdminScopeController | typeof AdminTenantController | typeof AdminSystemUserController | typeof AdminTenantUserController | typeof AdminUserController | typeof SystemRoleController)[];
|
|
58
|
+
controllers: (typeof AdminApiKeyController | typeof AdminEmailTemplateController | typeof AdminPdfTemplateController | typeof AdminPermissionController | typeof AdminRoleController | typeof AdminScheduledTaskController | typeof AdminScopeController | typeof AdminTenantController | typeof AdminSystemUserController | typeof AdminTenantUserController | typeof AdminUserController | typeof SystemRoleController)[];
|
|
54
59
|
services: readonly [typeof AdminAccessService, typeof SystemUserService, typeof TemplateService];
|
|
55
|
-
libraries: (typeof ApiKeyDataProcessor | typeof ApiKeyListProcessor | typeof EmailTemplateDataProcessor | typeof EmailTemplateListProcessor | typeof PdfTemplateDataProcessor | typeof PdfTemplateListProcessor | typeof AdminRoleListProcessor | typeof RoleListProcessor | typeof ScheduledTaskDataProcessor | typeof ScheduledTaskDeleteProcessor | typeof ScheduledTaskListProcessor | typeof ScopeDataProcessor | typeof ScopeListProcessor | typeof TenantDataProcessor | typeof TenantDeleteProcessor | typeof TenantListProcessor | typeof SystemUserDataProcessor | typeof SystemUserListProcessor | typeof BulkUserDataProcessor | typeof ClientUserDataProcessor | typeof ClientUserDeleteProcessor | typeof ClientUserListProcessor | typeof ClientMembershipDataProcessor | typeof AdminUserDataProcessor | typeof AdminUserDeleteProcessor | typeof AdminUserListProcessor | typeof SystemRoleDataProcessor)[];
|
|
56
|
-
dtos: (typeof AddApiKeyDto | typeof ApiKeyListDto | typeof AddPdfTemplateDto | typeof ScheduleDto | typeof AddScopeDto | typeof AddTenantDto | typeof BaseUserDto | typeof AddClientMembershipDto | typeof
|
|
60
|
+
libraries: (typeof ApiKeyDataProcessor | typeof ApiKeyListProcessor | typeof ApiKeyRolesDataProcessor | typeof EmailTemplateDataProcessor | typeof EmailTemplateListProcessor | typeof PdfTemplateDataProcessor | typeof PdfTemplateListProcessor | typeof PermissionDataProcessor | typeof PermissionListProcessor | typeof AdminRoleListProcessor | typeof RoleListProcessor | typeof ScheduledTaskDataProcessor | typeof ScheduledTaskDeleteProcessor | typeof ScheduledTaskListProcessor | typeof ScopeDataProcessor | typeof ScopeListProcessor | typeof TenantDataProcessor | typeof TenantDeleteProcessor | typeof TenantListProcessor | typeof SystemUserDataProcessor | typeof SystemUserListProcessor | typeof BulkUserDataProcessor | typeof ClientUserDataProcessor | typeof ClientUserDeleteProcessor | typeof ClientUserListProcessor | typeof ClientMembershipDataProcessor | typeof AdminUserDataProcessor | typeof AdminUserDeleteProcessor | typeof AdminUserListProcessor | typeof SystemRoleDataProcessor)[];
|
|
61
|
+
dtos: (typeof AddApiKeyDto | typeof ApiKeyListDto | typeof ApiKeyRolesDto | typeof AddPdfTemplateDto | typeof AddPermissionDto | typeof ScheduleDto | typeof AddScopeDto | typeof AddTenantDto | typeof BaseUserDto | typeof AddClientMembershipDto | typeof AddSystemRoleDto)[];
|
|
57
62
|
jobs: any[];
|
|
58
63
|
subscribers: any[];
|
|
59
64
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"es6.classes.d.ts","sourceRoot":"","sources":["../../src/admin/es6.classes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,EAAE,yBAAyB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"es6.classes.d.ts","sourceRoot":"","sources":["../../src/admin/es6.classes.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ exports.es6Classes = void 0;
|
|
|
4
4
|
const admin_api_key_controller_1 = require("./controllers/admin.api.key.controller");
|
|
5
5
|
const admin_email_template_controller_1 = require("./controllers/admin.email.template.controller");
|
|
6
6
|
const admin_pdf_template_controller_1 = require("./controllers/admin.pdf.template.controller");
|
|
7
|
+
const admin_permission_controller_1 = require("./controllers/admin.permission.controller");
|
|
7
8
|
const admin_role_controller_1 = require("./controllers/admin.role.controller");
|
|
8
9
|
const admin_scheduled_task_controller_1 = require("./controllers/admin.scheduled.task.controller");
|
|
9
10
|
const admin_scope_controller_1 = require("./controllers/admin.scope.controller");
|
|
@@ -21,6 +22,7 @@ const admin_role_list_processor_1 = require("./libraries/admin.role.list.process
|
|
|
21
22
|
const admin_user_list_processor_1 = require("./libraries/admin.user.list.processor");
|
|
22
23
|
const api_key_data_processor_1 = require("./libraries/api.key.data.processor");
|
|
23
24
|
const api_key_list_processor_1 = require("./libraries/api.key.list.processor");
|
|
25
|
+
const api_key_roles_data_processor_1 = require("./libraries/api.key.roles.data.processor");
|
|
24
26
|
const bulk_user_data_processor_1 = require("./libraries/bulk.user.data.processor");
|
|
25
27
|
const client_membership_data_processor_1 = require("./libraries/client.membership.data.processor");
|
|
26
28
|
const client_user_data_processor_1 = require("./libraries/client.user.data.processor");
|
|
@@ -30,6 +32,8 @@ const email_template_data_processor_1 = require("./libraries/email.template.data
|
|
|
30
32
|
const email_template_list_processor_1 = require("./libraries/email.template.list.processor");
|
|
31
33
|
const pdf_template_data_processor_1 = require("./libraries/pdf.template.data.processor");
|
|
32
34
|
const pdf_template_list_processor_1 = require("./libraries/pdf.template.list.processor");
|
|
35
|
+
const permission_data_processor_1 = require("./libraries/permission.data.processor");
|
|
36
|
+
const permission_list_processor_1 = require("./libraries/permission.list.processor");
|
|
33
37
|
const role_list_processor_1 = require("./libraries/role.list.processor");
|
|
34
38
|
const scheduled_task_data_processor_1 = require("./libraries/scheduled.task.data.processor");
|
|
35
39
|
const scheduled_task_delete_processor_1 = require("./libraries/scheduled.task.delete.processor");
|
|
@@ -49,6 +53,8 @@ const add_client_membership_dto_1 = require("./dtos/add.client.membership.dto");
|
|
|
49
53
|
const add_client_user_dto_1 = require("./dtos/add.client.user.dto");
|
|
50
54
|
const add_email_template_dto_1 = require("./dtos/add.email.template.dto");
|
|
51
55
|
const add_pdf_template_dto_1 = require("./dtos/add.pdf.template.dto");
|
|
56
|
+
const add_permission_dto_1 = require("./dtos/add.permission.dto");
|
|
57
|
+
const permission_list_dto_1 = require("./dtos/permission.list.dto");
|
|
52
58
|
const add_scheduled_task_dto_1 = require("./dtos/add.scheduled.task.dto");
|
|
53
59
|
const add_scope_dto_1 = require("./dtos/add.scope.dto");
|
|
54
60
|
const add_system_role_dto_1 = require("./dtos/add.system.role.dto");
|
|
@@ -56,6 +62,7 @@ const add_system_user_dto_1 = require("./dtos/add.system.user.dto");
|
|
|
56
62
|
const add_tenant_dto_1 = require("./dtos/add.tenant.dto");
|
|
57
63
|
const admin_user_list_dto_1 = require("./dtos/admin.user.list.dto");
|
|
58
64
|
const api_key_list_dto_1 = require("./dtos/api.key.list.dto");
|
|
65
|
+
const api_key_roles_dto_1 = require("./dtos/api.key.roles.dto");
|
|
59
66
|
const client_user_list_dto_1 = require("./dtos/client.user.list.dto");
|
|
60
67
|
const email_template_list_dto_1 = require("./dtos/email.template.list.dto");
|
|
61
68
|
const pdf_template_list_dto_1 = require("./dtos/pdf.template.list.dto");
|
|
@@ -70,6 +77,7 @@ exports.es6Classes = {
|
|
|
70
77
|
admin_api_key_controller_1.AdminApiKeyController,
|
|
71
78
|
admin_email_template_controller_1.AdminEmailTemplateController,
|
|
72
79
|
admin_pdf_template_controller_1.AdminPdfTemplateController,
|
|
80
|
+
admin_permission_controller_1.AdminPermissionController,
|
|
73
81
|
admin_role_controller_1.AdminRoleController,
|
|
74
82
|
admin_scheduled_task_controller_1.AdminScheduledTaskController,
|
|
75
83
|
admin_scope_controller_1.AdminScopeController,
|
|
@@ -87,6 +95,7 @@ exports.es6Classes = {
|
|
|
87
95
|
admin_role_list_processor_1.AdminRoleListProcessor,
|
|
88
96
|
api_key_data_processor_1.ApiKeyDataProcessor,
|
|
89
97
|
api_key_list_processor_1.ApiKeyListProcessor,
|
|
98
|
+
api_key_roles_data_processor_1.ApiKeyRolesDataProcessor,
|
|
90
99
|
bulk_user_data_processor_1.BulkUserDataProcessor,
|
|
91
100
|
client_membership_data_processor_1.ClientMembershipDataProcessor,
|
|
92
101
|
client_user_data_processor_1.ClientUserDataProcessor,
|
|
@@ -96,6 +105,8 @@ exports.es6Classes = {
|
|
|
96
105
|
email_template_list_processor_1.EmailTemplateListProcessor,
|
|
97
106
|
pdf_template_data_processor_1.PdfTemplateDataProcessor,
|
|
98
107
|
pdf_template_list_processor_1.PdfTemplateListProcessor,
|
|
108
|
+
permission_data_processor_1.PermissionDataProcessor,
|
|
109
|
+
permission_list_processor_1.PermissionListProcessor,
|
|
99
110
|
role_list_processor_1.RoleListProcessor,
|
|
100
111
|
scheduled_task_data_processor_1.ScheduledTaskDataProcessor,
|
|
101
112
|
scheduled_task_delete_processor_1.ScheduledTaskDeleteProcessor,
|
|
@@ -117,6 +128,8 @@ exports.es6Classes = {
|
|
|
117
128
|
add_client_user_dto_1.AddClientUserDto,
|
|
118
129
|
add_email_template_dto_1.AddEmailTemplateDto,
|
|
119
130
|
add_pdf_template_dto_1.AddPdfTemplateDto,
|
|
131
|
+
add_permission_dto_1.AddPermissionDto,
|
|
132
|
+
permission_list_dto_1.PermissionListDto,
|
|
120
133
|
add_scheduled_task_dto_1.ScheduleDto,
|
|
121
134
|
add_scope_dto_1.AddScopeDto,
|
|
122
135
|
add_system_role_dto_1.AddSystemRoleDto,
|
|
@@ -124,6 +137,7 @@ exports.es6Classes = {
|
|
|
124
137
|
add_tenant_dto_1.AddTenantDto,
|
|
125
138
|
admin_user_list_dto_1.AdminUserListDto,
|
|
126
139
|
api_key_list_dto_1.ApiKeyListDto,
|
|
140
|
+
api_key_roles_dto_1.ApiKeyRolesDto,
|
|
127
141
|
base_user_dto_1.BaseUserDto,
|
|
128
142
|
client_user_list_dto_1.ClientUserListDto,
|
|
129
143
|
email_template_list_dto_1.EmailTemplateListDto,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"es6.classes.js","sourceRoot":"","sources":["../../src/admin/es6.classes.ts"],"names":[],"mappings":";;;AAAA,qFAA+E;AAC/E,mGAA6F;AAC7F,+FAAyF;AACzF,+EAA0E;AAC1E,mGAA6F;AAC7F,iFAA4E;AAC5E,mFAA8E;AAC9E,6FAAuF;AACvF,6FAAuF;AACvF,+EAA0E;AAC1E,iFAA4E;AAC5E,0EAAqE;AACrE,wEAAmE;AACnE,kEAA8D;AAC9D,qFAA+E;AAC/E,yFAAmF;AACnF,qFAA+E;AAC/E,qFAA+E;AAC/E,+EAAyE;AACzE,+EAAyE;AACzE,mFAA6E;AAC7E,mGAA6F;AAC7F,uFAAiF;AACjF,2FAAqF;AACrF,uFAAiF;AACjF,6FAAuF;AACvF,6FAAuF;AACvF,yFAAmF;AACnF,yFAAmF;AACnF,yEAAoE;AACpE,6FAAuF;AACvF,iGAA2F;AAC3F,6FAAuF;AACvF,2EAAsE;AACtE,2EAAsE;AACtE,uFAAiF;AACjF,uFAAiF;AACjF,uFAAiF;AACjF,6EAAwE;AACxE,iFAA4E;AAC5E,6EAAwE;AACxE,kEAA4D;AAC5D,4DAAsD;AACtD,kEAA4D;AAC5D,gFAA0E;AAC1E,oEAA8D;AAC9D,0EAAoE;AACpE,sEAAgE;AAChE,0EAA4D;AAC5D,wDAAmD;AACnD,oEAA8D;AAC9D,oEAA8D;AAC9D,0DAAqD;AACrD,oEAA8D;AAC9D,8DAAwD;AACxD,sEAAgE;AAChE,4EAAsE;AACtE,wEAAkE;AAClE,wDAAmD;AACnD,wDAAmD;AACnD,4EAAsE;AACtE,0DAAqD;AACrD,sEAAgE;AAChE,4DAAuD;AAE1C,QAAA,UAAU,GAAG;IACxB,WAAW,EAAE;QACX,gDAAqB;QACrB,8DAA4B;QAC5B,0DAA0B;QAC1B,2CAAmB;QACnB,8DAA4B;QAC5B,6CAAoB;QACpB,+CAAqB;QACrB,2CAAmB;QACnB,wDAAyB;QACzB,wDAAyB;QACzB,6CAAoB;KACrB;IACD,QAAQ,EAAE,CAAC,yCAAkB,EAAE,uCAAiB,EAAE,kCAAe,CAAU;IAC3E,SAAS,EAAE;QACT,kDAAsB;QACtB,sDAAwB;QACxB,kDAAsB;QACtB,kDAAsB;QACtB,4CAAmB;QACnB,4CAAmB;QACnB,gDAAqB;QACrB,gEAA6B;QAC7B,oDAAuB;QACvB,wDAAyB;QACzB,oDAAuB;QACvB,0DAA0B;QAC1B,0DAA0B;QAC1B,sDAAwB;QACxB,sDAAwB;QACxB,uCAAiB;QACjB,0DAA0B;QAC1B,8DAA4B;QAC5B,0DAA0B;QAC1B,yCAAkB;QAClB,yCAAkB;QAClB,oDAAuB;QACvB,oDAAuB;QACvB,oDAAuB;QACvB,2CAAmB;QACnB,+CAAqB;QACrB,2CAAmB;KACpB;IACD,IAAI,EAAE;QACJ,oCAAe;QACf,8BAAY;QACZ,oCAAe;QACf,kDAAsB;QACtB,sCAAgB;QAChB,4CAAmB;QACnB,wCAAiB;QACjB,oCAAW;QACX,2BAAW;QACX,sCAAgB;QAChB,sCAAgB;QAChB,6BAAY;QACZ,sCAAgB;QAChB,gCAAa;QACb,2BAAW;QACX,wCAAiB;QACjB,8CAAoB;QACpB,0CAAkB;QAClB,2BAAW;QACX,8CAAoB;QACpB,6BAAY;QACZ,wCAAiB;QACjB,+BAAa;KACd;IACD,IAAI,EAAE,EAAE;IACR,WAAW,EAAE,EAAE;CAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"es6.classes.js","sourceRoot":"","sources":["../../src/admin/es6.classes.ts"],"names":[],"mappings":";;;AAAA,qFAA+E;AAC/E,mGAA6F;AAC7F,+FAAyF;AACzF,2FAAsF;AACtF,+EAA0E;AAC1E,mGAA6F;AAC7F,iFAA4E;AAC5E,mFAA8E;AAC9E,6FAAuF;AACvF,6FAAuF;AACvF,+EAA0E;AAC1E,iFAA4E;AAC5E,0EAAqE;AACrE,wEAAmE;AACnE,kEAA8D;AAC9D,qFAA+E;AAC/E,yFAAmF;AACnF,qFAA+E;AAC/E,qFAA+E;AAC/E,+EAAyE;AACzE,+EAAyE;AACzE,2FAAoF;AACpF,mFAA6E;AAC7E,mGAA6F;AAC7F,uFAAiF;AACjF,2FAAqF;AACrF,uFAAiF;AACjF,6FAAuF;AACvF,6FAAuF;AACvF,yFAAmF;AACnF,yFAAmF;AACnF,qFAAgF;AAChF,qFAAgF;AAChF,yEAAoE;AACpE,6FAAuF;AACvF,iGAA2F;AAC3F,6FAAuF;AACvF,2EAAsE;AACtE,2EAAsE;AACtE,uFAAiF;AACjF,uFAAiF;AACjF,uFAAiF;AACjF,6EAAwE;AACxE,iFAA4E;AAC5E,6EAAwE;AACxE,kEAA4D;AAC5D,4DAAsD;AACtD,kEAA4D;AAC5D,gFAA0E;AAC1E,oEAA8D;AAC9D,0EAAoE;AACpE,sEAAgE;AAChE,kEAA6D;AAC7D,oEAA+D;AAC/D,0EAA4D;AAC5D,wDAAmD;AACnD,oEAA8D;AAC9D,oEAA8D;AAC9D,0DAAqD;AACrD,oEAA8D;AAC9D,8DAAwD;AACxD,gEAA0D;AAC1D,sEAAgE;AAChE,4EAAsE;AACtE,wEAAkE;AAClE,wDAAmD;AACnD,wDAAmD;AACnD,4EAAsE;AACtE,0DAAqD;AACrD,sEAAgE;AAChE,4DAAuD;AAE1C,QAAA,UAAU,GAAG;IACxB,WAAW,EAAE;QACX,gDAAqB;QACrB,8DAA4B;QAC5B,0DAA0B;QAC1B,uDAAyB;QACzB,2CAAmB;QACnB,8DAA4B;QAC5B,6CAAoB;QACpB,+CAAqB;QACrB,2CAAmB;QACnB,wDAAyB;QACzB,wDAAyB;QACzB,6CAAoB;KACrB;IACD,QAAQ,EAAE,CAAC,yCAAkB,EAAE,uCAAiB,EAAE,kCAAe,CAAU;IAC3E,SAAS,EAAE;QACT,kDAAsB;QACtB,sDAAwB;QACxB,kDAAsB;QACtB,kDAAsB;QACtB,4CAAmB;QACnB,4CAAmB;QACnB,uDAAwB;QACxB,gDAAqB;QACrB,gEAA6B;QAC7B,oDAAuB;QACvB,wDAAyB;QACzB,oDAAuB;QACvB,0DAA0B;QAC1B,0DAA0B;QAC1B,sDAAwB;QACxB,sDAAwB;QACxB,mDAAuB;QACvB,mDAAuB;QACvB,uCAAiB;QACjB,0DAA0B;QAC1B,8DAA4B;QAC5B,0DAA0B;QAC1B,yCAAkB;QAClB,yCAAkB;QAClB,oDAAuB;QACvB,oDAAuB;QACvB,oDAAuB;QACvB,2CAAmB;QACnB,+CAAqB;QACrB,2CAAmB;KACpB;IACD,IAAI,EAAE;QACJ,oCAAe;QACf,8BAAY;QACZ,oCAAe;QACf,kDAAsB;QACtB,sCAAgB;QAChB,4CAAmB;QACnB,wCAAiB;QACjB,qCAAgB;QAChB,uCAAiB;QACjB,oCAAW;QACX,2BAAW;QACX,sCAAgB;QAChB,sCAAgB;QAChB,6BAAY;QACZ,sCAAgB;QAChB,gCAAa;QACb,kCAAc;QACd,2BAAW;QACX,wCAAiB;QACjB,8CAAoB;QACpB,0CAAkB;QAClB,2BAAW;QACX,8CAAoB;QACpB,6BAAY;QACZ,wCAAiB;QACjB,+BAAa;KACd;IACD,IAAI,EAAE,EAAE;IACR,WAAW,EAAE,EAAE;CAChB,CAAC"}
|
|
@@ -14,6 +14,7 @@ export declare class ApiKeyDataProcessor extends CommonDataProcessor {
|
|
|
14
14
|
process(payload: AddApiKeyDto): Promise<IssuedApiKey>;
|
|
15
15
|
private validate;
|
|
16
16
|
private validateScopes;
|
|
17
|
+
private validateRoles;
|
|
17
18
|
private set;
|
|
18
19
|
}
|
|
19
20
|
//# sourceMappingURL=api.key.data.processor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.key.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/api.key.data.processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAGxE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAIjE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"api.key.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/api.key.data.processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAGxE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAIjE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAWpD,qBAAa,mBAAoB,SAAQ,mBAAmB;IAKxD,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAN/B,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC;IAChC,OAAO,CAAC,SAAS,CAAO;gBAGL,KAAK,EAAE,eAAe,EACtB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY;IAKvC,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;YAM7C,QAAQ;YAiBR,cAAc;YAyBd,aAAa;YAwBb,GAAG;CA+BlB"}
|
|
@@ -10,6 +10,8 @@ const entity_constants_1 = require("../../constants/entity.constants");
|
|
|
10
10
|
const tenant_entity_1 = require("../../tenant/entities/tenant.entity");
|
|
11
11
|
const admin_audit_1 = require("../utilities/admin.audit");
|
|
12
12
|
const admin_policy_1 = require("../utilities/admin.policy");
|
|
13
|
+
const api_key_role_policy_1 = require("../utilities/api.key.role.policy");
|
|
14
|
+
const api_key_default_enum_1 = require("../../auth/enums/api.key.default.enum");
|
|
13
15
|
class ApiKeyDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
14
16
|
constructor(actor, apiKeyService, scopeService) {
|
|
15
17
|
super();
|
|
@@ -31,8 +33,10 @@ class ApiKeyDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
|
31
33
|
this.expiresAt = expiry.expiresAt;
|
|
32
34
|
if (!(await tenant_entity_1.TenantEntity.existsBy({ id: body.tenant_id, is_active: true })))
|
|
33
35
|
this.setColumnError('tenant_id', 'Tenant not found or inactive');
|
|
34
|
-
else
|
|
36
|
+
else {
|
|
35
37
|
await this.validateScopes();
|
|
38
|
+
await this.validateRoles();
|
|
39
|
+
}
|
|
36
40
|
this.raiseExceptionOnValidationFailure();
|
|
37
41
|
}
|
|
38
42
|
async validateScopes() {
|
|
@@ -51,11 +55,28 @@ class ApiKeyDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
|
51
55
|
this.setColumnError('scope_ids', `Scope '${scopes.find((scope) => scope.id === scopeId)?.identifier ?? scopeId}' is not enabled for this tenant`);
|
|
52
56
|
}
|
|
53
57
|
}
|
|
58
|
+
async validateRoles() {
|
|
59
|
+
const roleIds = this.payload.role_ids ?? [];
|
|
60
|
+
if (!roleIds.length)
|
|
61
|
+
return;
|
|
62
|
+
const granted = await scope_entity_1.ScopeEntity.find({
|
|
63
|
+
where: { id: (0, typeorm_1.In)([...new Set(this.payload.scope_ids ?? [])]) },
|
|
64
|
+
});
|
|
65
|
+
const tenantScopeIds = await this.scopeService.tenantScopeIds(this.payload.tenant_id);
|
|
66
|
+
const reach = granted.some((scope) => scope.identifier === String(api_key_default_enum_1.ApiKeyDefault.WILDCARD_SCOPE))
|
|
67
|
+
? tenantScopeIds
|
|
68
|
+
: new Set((await this.scopeService.effectiveScopes(granted))
|
|
69
|
+
.map((scope) => scope.id)
|
|
70
|
+
.filter((scopeId) => tenantScopeIds.has(scopeId)));
|
|
71
|
+
for (const error of await api_key_role_policy_1.ApiKeyRolePolicy.errors(roleIds, reach))
|
|
72
|
+
this.setColumnError('role_ids', error);
|
|
73
|
+
}
|
|
54
74
|
async set() {
|
|
55
75
|
const body = this.payload;
|
|
56
76
|
const { rawKey, apiKey } = await this.apiKeyService.generateApiKey(body.name, {
|
|
57
77
|
tenantId: body.tenant_id,
|
|
58
78
|
scopeIds: body.scope_ids,
|
|
79
|
+
roleIds: body.role_ids,
|
|
59
80
|
createdBy: this.actor.id,
|
|
60
81
|
expiresAt: this.expiresAt,
|
|
61
82
|
});
|
|
@@ -69,6 +90,7 @@ class ApiKeyDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
|
69
90
|
key_prefix: apiKey.key_prefix,
|
|
70
91
|
tenant_id: body.tenant_id,
|
|
71
92
|
scope_ids: body.scope_ids ?? [],
|
|
93
|
+
role_ids: body.role_ids ?? [],
|
|
72
94
|
expires_at: this.expiresAt.toISOString(),
|
|
73
95
|
},
|
|
74
96
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.key.data.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/api.key.data.processor.ts"],"names":[],"mappings":";;;AAAA,qCAA6B;AAC7B,wFAAmF;AAEnF,uEAAkE;AAClE,mEAA+D;AAG/D,4EAAmE;AACnE,uEAAuE;AACvE,uEAAmE;AAGnE,0DAAsD;AACtD,4DAAwD;
|
|
1
|
+
{"version":3,"file":"api.key.data.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/api.key.data.processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.key.list.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/api.key.list.processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAWzD,qBAAa,mBAAoB,SAAQ,mBAAmB;
|
|
1
|
+
{"version":3,"file":"api.key.list.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/api.key.list.processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAWzD,qBAAa,mBAAoB,SAAQ,mBAAmB;IA8E9C,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB;IA7EnE,SAAS,CAAC,MAAM,EAAE,sBAAsB,CA2EtC;gBAE6B,iBAAiB,EAAE,iBAAiB;IAI7D,OAAO,CAAC,OAAO,EAAE,aAAa;CAIrC"}
|
|
@@ -22,7 +22,19 @@ class ApiKeyListProcessor extends common_list_processor_1.CommonListProcessor {
|
|
|
22
22
|
from sys_api_scopes aks
|
|
23
23
|
join sys_scopes s on s.id = aks.scope_id and s.deleted_at is null
|
|
24
24
|
where aks.api_key_id = k.id and aks.deleted_at is null
|
|
25
|
-
) sc on true
|
|
25
|
+
) sc on true
|
|
26
|
+
left join lateral (
|
|
27
|
+
select coalesce(
|
|
28
|
+
json_agg(
|
|
29
|
+
json_build_object('id', r.id, 'identifier', r.identifier, 'name', r.name)
|
|
30
|
+
order by r.identifier
|
|
31
|
+
),
|
|
32
|
+
'[]'::json
|
|
33
|
+
) granted
|
|
34
|
+
from sys_api_key_roles akr
|
|
35
|
+
join sys_roles r on r.id = akr.role_id and r.deleted_at is null
|
|
36
|
+
where akr.api_key_id = k.id and akr.deleted_at is null
|
|
37
|
+
) rl on true`,
|
|
26
38
|
columns: [
|
|
27
39
|
{ key: 'k.id', identifier: 'id', type: filter_value_type_enum_1.FilterValueTypeEnum.UUID },
|
|
28
40
|
{ key: 'k.name', identifier: 'name', searchable: true },
|
|
@@ -43,6 +55,11 @@ class ApiKeyListProcessor extends common_list_processor_1.CommonListProcessor {
|
|
|
43
55
|
identifier: 'scopes',
|
|
44
56
|
type: filter_value_type_enum_1.FilterValueTypeEnum.JSON,
|
|
45
57
|
},
|
|
58
|
+
{
|
|
59
|
+
key: 'rl.granted',
|
|
60
|
+
identifier: 'roles',
|
|
61
|
+
type: filter_value_type_enum_1.FilterValueTypeEnum.JSON,
|
|
62
|
+
},
|
|
46
63
|
{
|
|
47
64
|
key: 'k.expires_at',
|
|
48
65
|
identifier: 'expires_at',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.key.list.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/api.key.list.processor.ts"],"names":[],"mappings":";;;AAAA,gFAAuE;AACvE,sFAAgF;AAChF,wFAAmF;AAcnF,MAAa,mBAAoB,SAAQ,2CAAmB;
|
|
1
|
+
{"version":3,"file":"api.key.list.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/api.key.list.processor.ts"],"names":[],"mappings":";;;AAAA,gFAAuE;AACvE,sFAAgF;AAChF,wFAAmF;AAcnF,MAAa,mBAAoB,SAAQ,2CAAmB;IA8E1D,YAA+B,iBAAoC;QACjE,KAAK,EAAE,CAAC;QADqB,sBAAiB,GAAjB,iBAAiB,CAAmB;QA7EzD,WAAM,GAA2B;YACzC,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;mBAyBQ;YACf,OAAO,EAAE;gBACP,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,4CAAmB,CAAC,IAAI,EAAE;gBACjE,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE;gBACvD,EAAE,GAAG,EAAE,cAAc,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE;gBACnE;oBACE,GAAG,EAAE,aAAa;oBAClB,UAAU,EAAE,WAAW;oBACvB,IAAI,EAAE,4CAAmB,CAAC,OAAO;iBAClC;gBACD;oBACE,GAAG,EAAE,aAAa;oBAClB,UAAU,EAAE,WAAW;oBACvB,IAAI,EAAE,4CAAmB,CAAC,IAAI;iBAC/B;gBACD,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE;gBAC9D;oBACE,GAAG,EAAE,YAAY;oBACjB,UAAU,EAAE,QAAQ;oBACpB,IAAI,EAAE,4CAAmB,CAAC,IAAI;iBAC/B;gBACD;oBACE,GAAG,EAAE,YAAY;oBACjB,UAAU,EAAE,OAAO;oBACnB,IAAI,EAAE,4CAAmB,CAAC,IAAI;iBAC/B;gBACD;oBACE,GAAG,EAAE,cAAc;oBACnB,UAAU,EAAE,YAAY;oBACxB,IAAI,EAAE,4CAAmB,CAAC,QAAQ;iBACnC;gBACD;oBACE,GAAG,EAAE,cAAc;oBACnB,UAAU,EAAE,YAAY;oBACxB,IAAI,EAAE,4CAAmB,CAAC,QAAQ;iBACnC;gBACD;oBACE,GAAG,EAAE,gBAAgB;oBACrB,UAAU,EAAE,cAAc;oBAC1B,IAAI,EAAE,4CAAmB,CAAC,QAAQ;iBACnC;gBACD;oBACE,GAAG,EAAE,cAAc;oBACnB,UAAU,EAAE,YAAY;oBACxB,IAAI,EAAE,4CAAmB,CAAC,QAAQ;iBACnC;aACF;YACD,UAAU,EAAE,CAAC,sBAAsB,CAAC;YACpC,WAAW,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,mCAAa,CAAC,IAAI,EAAE;SACpE,CAAC;IAIF,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAsB;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;CACF;AAtFD,kDAsFC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { AdminUserEntity } from '../../auth/entities/admin.user.entity';
|
|
2
|
+
import { ApiKeyService } from '../../auth/services/api.key.service';
|
|
3
|
+
import { CommonDataProcessor } from '../../common/libraries/common.data.processor';
|
|
4
|
+
import { ApiKeyRolesDto } from '../dtos/api.key.roles.dto';
|
|
5
|
+
export declare class ApiKeyRolesDataProcessor extends CommonDataProcessor {
|
|
6
|
+
private readonly actor;
|
|
7
|
+
private readonly apiKeyService;
|
|
8
|
+
protected payload: ApiKeyRolesDto;
|
|
9
|
+
private apiKey;
|
|
10
|
+
constructor(actor: AdminUserEntity, apiKeyService: ApiKeyService);
|
|
11
|
+
process(apiKeyId: string, payload: ApiKeyRolesDto): Promise<string[]>;
|
|
12
|
+
private validate;
|
|
13
|
+
private set;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=api.key.roles.data.processor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.key.roles.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/api.key.roles.data.processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAGpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAGnF,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAK3D,qBAAa,wBAAyB,SAAQ,mBAAmB;IAK7D,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IALhC,SAAS,CAAC,OAAO,EAAE,cAAc,CAAC;IAClC,OAAO,CAAC,MAAM,CAAe;gBAGV,KAAK,EAAE,eAAe,EACtB,aAAa,EAAE,aAAa;IAKzC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAM7D,QAAQ;YAcR,GAAG;CAkBlB"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiKeyRolesDataProcessor = void 0;
|
|
4
|
+
const api_key_entity_1 = require("../../auth/entities/api.key.entity");
|
|
5
|
+
const role_catalogue_1 = require("../../auth/utilities/role.catalogue");
|
|
6
|
+
const audit_action_enum_1 = require("../../common/enums/audit.action.enum");
|
|
7
|
+
const common_data_processor_1 = require("../../common/libraries/common.data.processor");
|
|
8
|
+
const entity_constants_1 = require("../../constants/entity.constants");
|
|
9
|
+
const not_found_exception_1 = require("../../global/exceptions/not.found.exception");
|
|
10
|
+
const admin_audit_1 = require("../utilities/admin.audit");
|
|
11
|
+
const api_key_role_policy_1 = require("../utilities/api.key.role.policy");
|
|
12
|
+
class ApiKeyRolesDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
13
|
+
constructor(actor, apiKeyService) {
|
|
14
|
+
super();
|
|
15
|
+
this.actor = actor;
|
|
16
|
+
this.apiKeyService = apiKeyService;
|
|
17
|
+
}
|
|
18
|
+
async process(apiKeyId, payload) {
|
|
19
|
+
this.payload = payload;
|
|
20
|
+
await this.validate(apiKeyId);
|
|
21
|
+
return this.set();
|
|
22
|
+
}
|
|
23
|
+
async validate(apiKeyId) {
|
|
24
|
+
const apiKey = await api_key_entity_1.ApiKeyEntity.findOne({ where: { id: apiKeyId } });
|
|
25
|
+
if (!apiKey)
|
|
26
|
+
throw new not_found_exception_1.NotFoundException('No API key exists for this id');
|
|
27
|
+
this.apiKey = apiKey;
|
|
28
|
+
const reach = await this.apiKeyService.scopeReach(apiKey);
|
|
29
|
+
for (const error of await api_key_role_policy_1.ApiKeyRolePolicy.errors(this.payload.role_ids, reach))
|
|
30
|
+
this.setColumnError('role_ids', error);
|
|
31
|
+
this.raiseExceptionOnValidationFailure();
|
|
32
|
+
}
|
|
33
|
+
async set() {
|
|
34
|
+
const manager = api_key_entity_1.ApiKeyEntity.getRepository().manager;
|
|
35
|
+
const before = await role_catalogue_1.RoleCatalogue.keyRoleIds(manager, this.apiKey.id);
|
|
36
|
+
const roleIds = await this.apiKeyService.setRoles(this.apiKey.id, this.payload.role_ids, this.actor.id);
|
|
37
|
+
await admin_audit_1.AdminAudit.record(manager, {
|
|
38
|
+
actor: this.actor,
|
|
39
|
+
sourceType: entity_constants_1.baseEntityConstants.apiKey,
|
|
40
|
+
sourceId: this.apiKey.id,
|
|
41
|
+
action: audit_action_enum_1.AuditAction.UPDATE,
|
|
42
|
+
oldValue: { role_ids: before.sort() },
|
|
43
|
+
newValue: { role_ids: [...roleIds].sort() },
|
|
44
|
+
});
|
|
45
|
+
return roleIds;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.ApiKeyRolesDataProcessor = ApiKeyRolesDataProcessor;
|
|
49
|
+
//# sourceMappingURL=api.key.roles.data.processor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.key.roles.data.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/api.key.roles.data.processor.ts"],"names":[],"mappings":";;;AAAA,uEAAkE;AAGlE,wEAAoE;AACpE,4EAAmE;AACnE,wFAAmF;AACnF,uEAAuE;AACvE,qFAAgF;AAEhF,0DAAsD;AACtD,0EAAoE;AAGpE,MAAa,wBAAyB,SAAQ,2CAAmB;IAI/D,YACmB,KAAsB,EACtB,aAA4B;QAE7C,KAAK,EAAE,CAAC;QAHS,UAAK,GAAL,KAAK,CAAiB;QACtB,kBAAa,GAAb,aAAa,CAAe;IAG/C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,OAAuB;QACrD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,QAAgB;QACrC,MAAM,MAAM,GAAG,MAAM,6BAAY,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,uCAAiB,CAAC,+BAA+B,CAAC,CAAC;QAC1E,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC1D,KAAK,MAAM,KAAK,IAAI,MAAM,sCAAgB,CAAC,MAAM,CAC/C,IAAI,CAAC,OAAO,CAAC,QAAQ,EACrB,KAAK,CACN;YACC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC3C,CAAC;IAEO,KAAK,CAAC,GAAG;QACf,MAAM,OAAO,GAAG,6BAAY,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC;QACrD,MAAM,MAAM,GAAG,MAAM,8BAAa,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,EACd,IAAI,CAAC,OAAO,CAAC,QAAQ,EACrB,IAAI,CAAC,KAAK,CAAC,EAAE,CACd,CAAC;QACF,MAAM,wBAAU,CAAC,MAAM,CAAC,OAAO,EAAE;YAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,sCAAmB,CAAC,MAAM;YACtC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,MAAM,EAAE,+BAAW,CAAC,MAAM;YAC1B,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE;YACrC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;SAC5C,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAjDD,4DAiDC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.membership.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/client.membership.data.processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAEnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"client.membership.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/client.membership.data.processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAEnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAK1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAGvE,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAU3E,qBAAa,6BAA8B,SAAQ,mBAAmB;IAKlE,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa;IALhC,SAAS,CAAC,OAAO,EAAE,sBAAsB,CAAC;IAC1C,OAAO,CAAC,KAAK,CAA0B;gBAGpB,MAAM,EAAE,wBAAwB,EAChC,aAAa,EAAE,aAAa;IAKzC,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YAM3D,QAAQ;YAiCR,aAAa;YAiBb,MAAM;CAsBrB"}
|
|
@@ -8,6 +8,7 @@ const tenant_user_entity_1 = require("../../auth/entities/tenant.user.entity");
|
|
|
8
8
|
const user_entity_1 = require("../../auth/entities/user.entity");
|
|
9
9
|
const user_type_enum_1 = require("../../auth/enums/user.type.enum");
|
|
10
10
|
const tenant_access_1 = require("../../auth/utilities/tenant.access");
|
|
11
|
+
const role_catalogue_1 = require("../../auth/utilities/role.catalogue");
|
|
11
12
|
const audit_action_enum_1 = require("../../common/enums/audit.action.enum");
|
|
12
13
|
const entity_constants_1 = require("../../constants/entity.constants");
|
|
13
14
|
const admin_access_service_1 = require("../services/admin.access.service");
|
|
@@ -38,8 +39,10 @@ class ClientMembershipDataProcessor extends common_data_processor_1.CommonDataPr
|
|
|
38
39
|
this.setColumnError('tenant_id', 'Already a member of this tenant');
|
|
39
40
|
await this.validateRoles();
|
|
40
41
|
this.raiseExceptionOnValidationFailure();
|
|
42
|
+
const hierarchy = await role_catalogue_1.RoleCatalogue.load(tenant_user_entity_1.TenantUserEntity.getRepository().manager);
|
|
41
43
|
admin_access_service_1.AdminAccessService.assertHolds(this.access, tenant_role_policy_1.TenantRolePolicy.tenantUserSaveRole({
|
|
42
|
-
grantsPrivileged: tenant_role_policy_1.TenantRolePolicy.newPrivilegedGrants(this.roles).length >
|
|
44
|
+
grantsPrivileged: tenant_role_policy_1.TenantRolePolicy.newPrivilegedGrants(this.roles, hierarchy).length >
|
|
45
|
+
0,
|
|
43
46
|
emailChanged: false,
|
|
44
47
|
holdsPrivileged: false,
|
|
45
48
|
}), 'Granting a privileged tenant role');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.membership.data.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/client.membership.data.processor.ts"],"names":[],"mappings":";;;AAAA,qCAA6B;AAC7B,wFAAmF;AACnF,+EAA0E;AAC1E,+EAA0E;AAC1E,iEAA6D;AAC7D,oEAA2D;AAC3D,sEAAkE;
|
|
1
|
+
{"version":3,"file":"client.membership.data.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/client.membership.data.processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.user.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/client.user.data.processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG7D,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wDAAwD,CAAC;
|
|
1
|
+
{"version":3,"file":"client.user.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/client.user.data.processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG7D,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wDAAwD,CAAC;AAOpG,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAwBvE,qBAAa,uBAAwB,SAAQ,iBAAiB;IAQ1D,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,0BAA0B;IAT7C,SAAS,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4C;IAEnE,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,QAAQ,CAA2B;gBAGxB,MAAM,EAAE,wBAAwB,EAChC,aAAa,EAAE,aAAa,EAC5B,0BAA0B,EAAE,0BAA0B;IAKnE,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;YAM/C,QAAQ;YA6BR,cAAc;YAQd,kBAAkB;YAYlB,YAAY;YAmBZ,SAAS;YAiCT,IAAI;YAKJ,MAAM;YAmCN,MAAM;YAuCN,WAAW;IAQzB,OAAO,CAAC,KAAK;YAuBC,UAAU;CAiBzB"}
|