@neohm/nestend 4.0.1 → 4.0.2
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 +24 -9
- package/dist/admin/controllers/admin.api.key.controller.d.ts +3 -1
- package/dist/admin/controllers/admin.api.key.controller.d.ts.map +1 -1
- package/dist/admin/controllers/admin.api.key.controller.js +6 -3
- package/dist/admin/controllers/admin.api.key.controller.js.map +1 -1
- package/dist/admin/controllers/admin.scope.controller.d.ts +2 -0
- package/dist/admin/controllers/admin.scope.controller.d.ts.map +1 -1
- package/dist/admin/controllers/admin.scope.controller.js +45 -5
- package/dist/admin/controllers/admin.scope.controller.js.map +1 -1
- package/dist/admin/dtos/add.scope.dto.d.ts +1 -0
- package/dist/admin/dtos/add.scope.dto.d.ts.map +1 -1
- package/dist/admin/dtos/add.scope.dto.js +9 -0
- package/dist/admin/dtos/add.scope.dto.js.map +1 -1
- package/dist/admin/dtos/scope.list.dto.d.ts +1 -0
- package/dist/admin/dtos/scope.list.dto.d.ts.map +1 -1
- package/dist/admin/dtos/scope.list.dto.js +22 -0
- package/dist/admin/dtos/scope.list.dto.js.map +1 -1
- package/dist/admin/es6.classes.d.ts +2 -1
- package/dist/admin/es6.classes.d.ts.map +1 -1
- package/dist/admin/libraries/api.key.data.processor.d.ts +3 -1
- package/dist/admin/libraries/api.key.data.processor.d.ts.map +1 -1
- package/dist/admin/libraries/api.key.data.processor.js +3 -6
- package/dist/admin/libraries/api.key.data.processor.js.map +1 -1
- package/dist/admin/libraries/scope.data.processor.d.ts +1 -0
- package/dist/admin/libraries/scope.data.processor.d.ts.map +1 -1
- package/dist/admin/libraries/scope.data.processor.js +20 -0
- package/dist/admin/libraries/scope.data.processor.js.map +1 -1
- package/dist/admin/libraries/scope.list.processor.d.ts +2 -0
- package/dist/admin/libraries/scope.list.processor.d.ts.map +1 -1
- package/dist/admin/libraries/scope.list.processor.js +23 -1
- package/dist/admin/libraries/scope.list.processor.js.map +1 -1
- package/dist/auth/auth.module.d.ts.map +1 -1
- package/dist/auth/auth.module.js +6 -2
- package/dist/auth/auth.module.js.map +1 -1
- package/dist/auth/entities/scope.entity.d.ts +2 -0
- package/dist/auth/entities/scope.entity.d.ts.map +1 -1
- package/dist/auth/entities/scope.entity.js +9 -0
- package/dist/auth/entities/scope.entity.js.map +1 -1
- package/dist/auth/services/api.key.service.d.ts +3 -1
- package/dist/auth/services/api.key.service.d.ts.map +1 -1
- package/dist/auth/services/api.key.service.js +6 -3
- package/dist/auth/services/api.key.service.js.map +1 -1
- package/dist/auth/services/auth.service.d.ts.map +1 -1
- package/dist/auth/services/auth.service.js.map +1 -1
- package/dist/auth/services/scope.service.d.ts +6 -0
- package/dist/auth/services/scope.service.d.ts.map +1 -1
- package/dist/auth/services/scope.service.js +40 -9
- package/dist/auth/services/scope.service.js.map +1 -1
- package/dist/migrations/1749600000025.CreateSysScopesTable.d.ts.map +1 -1
- package/dist/migrations/1749600000025.CreateSysScopesTable.js +7 -0
- package/dist/migrations/1749600000025.CreateSysScopesTable.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -110,7 +110,7 @@ these are free to change without a breaking release.
|
|
|
110
110
|
| Auth | `AuthModule`, `AuthService.validateRole()`, `RoleTier`, `TenantRole`, `Auth`, `JwtMiddleware` | imperative auth (open by default); `<module>.<tier>` role hierarchy (manager > writer > viewer), with `global.admin` overriding every role check; JwtMiddleware resolves the user into `Auth`'s AsyncLocalStorage context per request; access + rotating refresh tokens; session-based logout invalidation (`sys_auth_sessions`); Google SSO via ID token at `POST /auth/google`; impersonation — a tenantless `has_global_access` user signs into one organization at `POST /auth/impersonation/login` |
|
|
111
111
|
| Admin auth | `AdminAuthService.validateRole()`, `AdminAuth`, `AdminJwtMiddleware` (endpoints at `/admin/auth`) | fully separate stack for back-office admins — own users table (`sys_admin_users`), own roles (`sys_admin_roles`/`sys_auser_roles`), own sessions/refresh tokens (shared tables, `is_admin` flag) |
|
|
112
112
|
| API keys | `ApiKeyService`, `ApiKeyGuard` / `ApiKeyMiddleware`, `@ApiKeyScopes()`, `ApiKeyContext` | hashed keys in `sys_api_keys` (admin-owned), one tenant per key, expiry/revocation, `x-api-key` header; `validateAccess(scope)` returns the tenant the key acts for |
|
|
113
|
-
| Scopes | `ScopeService`, `AuthService.validateAccess()`, `ScopeEntity`, `TenantScopeEntity`, `ApiScopeEntity` | one feature named once in `sys_scopes`, then granted per organization (`sys_tenant_scopes`) or per API key (`sys_api_scopes`) — never an array on the principal |
|
|
113
|
+
| Scopes | `ScopeService`, `AuthService.validateAccess()`, `ScopeEntity`, `TenantScopeEntity`, `ApiScopeEntity` | one feature named once in `sys_scopes`, optionally with child scopes under it, then granted per organization (`sys_tenant_scopes`) or per API key (`sys_api_scopes`) — never an array on the principal |
|
|
114
114
|
| Multi-tenancy | `TenantModule`, `TenantEntity`, `CommonTenantEntity`, `TenantContextService`, `TenantContextMiddleware` | AsyncLocalStorage tenant context; resolve by header, slug, or domain; tenants are onboarded by admins (`TenantEntity.creator` → `AdminUserEntity`) |
|
|
115
115
|
| Admin | `AdminModule` (its controllers, DTOs and processors are internal — import the module and hit the endpoints), `GlobalAdminRoles` | back-office APIs: tenant onboarding, client/admin/system user registration (single + bulk), the `has_global_access` grant that enables impersonation, tenant + scheduled-task listing, the email/PDF template catalogues (read at content-reader, written at content-manager, deleted at global admin); 4-tier `GlobalAdminRoles` gate over `sys_admin_roles`; Swagger at `/docs` (hidden in production) |
|
|
116
116
|
| Notifications | `NotificationModule`, `NotificationService`, `FcmPushNotificationService` | in-app rows + FCM push (optional `firebase-admin`); device token registry |
|
|
@@ -207,6 +207,12 @@ caller's tenant holds that scope (`sys_tenant_scopes` against the `sys_scopes`
|
|
|
207
207
|
catalogue), then delegates to `validateRole()`. One call answers "is this feature
|
|
208
208
|
sold to them?" and "is this person allowed to use it?" in that order.
|
|
209
209
|
|
|
210
|
+
A scope can be a parent of others (`parent_id` on `sys_scopes`), which is how part
|
|
211
|
+
of a feature is sold on its own. Granting the parent grants every child under it, so
|
|
212
|
+
a tenant enabled for `billing.invoices` clears `billing.invoices.refund` too;
|
|
213
|
+
granting children grants only those, and never the parent. The catalogue stops at two
|
|
214
|
+
levels — a child holds no children — so a grant expands in exactly one hop.
|
|
215
|
+
|
|
210
216
|
```ts
|
|
211
217
|
const { user } = await this.authService.validateAccess('billing.invoices');
|
|
212
218
|
const { user } = await this.authService.validateAccess(
|
|
@@ -655,7 +661,8 @@ content reader.
|
|
|
655
661
|
|
|
656
662
|
A key belongs to one tenant and holds its scopes as `sys_api_scopes` rows against
|
|
657
663
|
the `sys_scopes` catalogue — there is no scopes array on the key, and a key grants
|
|
658
|
-
nothing it was not given (a granted `*` is the only blanket
|
|
664
|
+
nothing it was not given (a granted `*` is the only blanket, and a granted parent
|
|
665
|
+
scope carries its children). `ApiKeyMiddleware`
|
|
659
666
|
resolves the key, its tenant and its scope identifiers once per request into
|
|
660
667
|
`ApiKeyContext`; enforce from there:
|
|
661
668
|
|
|
@@ -1088,8 +1095,10 @@ pass the actor to a processor.
|
|
|
1088
1095
|
| `DELETE /admin/pdf-templates/:id` | **admin** | `TemplateService.deletePdfTemplate` |
|
|
1089
1096
|
| `POST /admin/scopes` | content manager | `ScopeDataProcessor` (upsert — send `id` to update) |
|
|
1090
1097
|
| `POST /admin/scopes/list` | content reader | `ScopeListProcessor` |
|
|
1098
|
+
| `POST /admin/scopes/:id/children` | content manager | `ScopeDataProcessor` (upsert — parent taken from the path) |
|
|
1099
|
+
| `POST /admin/scopes/:id/children/list` | content reader | `ScopeListProcessor` (`parent_id` taken from the path) |
|
|
1091
1100
|
| `GET /admin/scopes/:id` | content reader | the row |
|
|
1092
|
-
| `DELETE /admin/scopes/:id` | content manager | `ScopeService.deleteScope` (cascades to every grant)
|
|
1101
|
+
| `DELETE /admin/scopes/:id` | content manager, **admin** for a child | `ScopeService.deleteScope` (cascades to children and every grant) |
|
|
1093
1102
|
| `POST /admin/api-keys` | admin | `ApiKeyDataProcessor` — returns `{ raw_key, api_key }` |
|
|
1094
1103
|
| `POST /admin/api-keys/list` | content reader | `ApiKeyListProcessor` |
|
|
1095
1104
|
| `GET /admin/api-keys/:id` | content reader | the row, its `scopes`, and `key` from admin up |
|
|
@@ -1117,12 +1126,18 @@ remote template, every mail already sent and every document already generated ar
|
|
|
1117
1126
|
exactly as they are.
|
|
1118
1127
|
|
|
1119
1128
|
**Scopes and grants.** A scope is defined once in `sys_scopes` (content manager),
|
|
1120
|
-
then granted to the principals that hold it. `
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1129
|
+
then granted to the principals that hold it. A scope sent with a `parent_id` — or
|
|
1130
|
+
posted to `/admin/scopes/:id/children` — is a child of that scope, and granting the
|
|
1131
|
+
parent grants it. `ScopeDataProcessor` keeps the catalogue two levels deep: a child
|
|
1132
|
+
never takes children, and a scope that already has children can never be turned into
|
|
1133
|
+
one. `AddTenantDto.scope_ids` carries the tenant's whole scope set — `setScopes()`
|
|
1134
|
+
grants what is new and soft-removes what is gone, so an omitted list revokes them all
|
|
1135
|
+
(a picker has no other way to clear its last selection); every other optional field on
|
|
1136
|
+
that DTO still keeps its stored value. An API key can only be granted scopes its
|
|
1137
|
+
tenant already holds — children of a held parent included — so a key never out-ranks
|
|
1138
|
+
the organization it acts for. Deleting a scope takes its children with it, which is
|
|
1139
|
+
why removing a child sits at the admin bar rather than the content-manager one: it
|
|
1140
|
+
narrows access tenants already have. The key comes back in the issue response as
|
|
1126
1141
|
`raw_key`, and afterwards from `GET /admin/api-keys/:id` as `key` — for a global
|
|
1127
1142
|
admin only.
|
|
1128
1143
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ListFilterService } from '../../common/services/list.filter.service';
|
|
2
2
|
import { ApiKeyService } from '../../auth/services/api.key.service';
|
|
3
|
+
import { ScopeService } from '../../auth/services/scope.service';
|
|
3
4
|
import { AdminAccessService } from '../services/admin.access.service';
|
|
4
5
|
import { CommonParamsDto } from '../../common/dtos/common.params.dto';
|
|
5
6
|
import { AddApiKeyDto } from '../dtos/add.api.key.dto';
|
|
@@ -7,8 +8,9 @@ import { ApiKeyListDto } from '../dtos/api.key.list.dto';
|
|
|
7
8
|
export declare class AdminApiKeyController {
|
|
8
9
|
private readonly adminAccessService;
|
|
9
10
|
private readonly apiKeyService;
|
|
11
|
+
private readonly scopeService;
|
|
10
12
|
private readonly listFilterService;
|
|
11
|
-
constructor(adminAccessService: AdminAccessService, apiKeyService: ApiKeyService, listFilterService: ListFilterService);
|
|
13
|
+
constructor(adminAccessService: AdminAccessService, apiKeyService: ApiKeyService, scopeService: ScopeService, listFilterService: ListFilterService);
|
|
12
14
|
issue(dto: AddApiKeyDto): Promise<import("../types/admin.types").IssuedApiKey>;
|
|
13
15
|
list(dto: ApiKeyListDto): Promise<import("../..").CommonListResult>;
|
|
14
16
|
detail({ id }: CommonParamsDto): Promise<import("../..").ApiKeyDetail>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.api.key.controller.d.ts","sourceRoot":"","sources":["../../../src/admin/controllers/admin.api.key.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"admin.api.key.controller.d.ts","sourceRoot":"","sources":["../../../src/admin/controllers/admin.api.key.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAGtE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAOzD,qBAGa,qBAAqB;IAE9B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBAHjB,kBAAkB,EAAE,kBAAkB,EACtC,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB;IASjD,KAAK,CAAS,GAAG,EAAE,YAAY;IAe/B,IAAI,CAAS,GAAG,EAAE,aAAa;IAW/B,MAAM,CAAU,EAAE,EAAE,EAAE,EAAE,eAAe;IAgBvC,OAAO,CAAU,EAAE,EAAE,EAAE,EAAE,eAAe;IAWxC,MAAM,CAAU,EAAE,EAAE,EAAE,EAAE,eAAe;CAI9C"}
|
|
@@ -17,6 +17,7 @@ const common_1 = require("@nestjs/common");
|
|
|
17
17
|
const swagger_1 = require("@nestjs/swagger");
|
|
18
18
|
const list_filter_service_1 = require("../../common/services/list.filter.service");
|
|
19
19
|
const api_key_service_1 = require("../../auth/services/api.key.service");
|
|
20
|
+
const scope_service_1 = require("../../auth/services/scope.service");
|
|
20
21
|
const global_admin_roles_enum_1 = require("../../auth/enums/global.admin.roles.enum");
|
|
21
22
|
const admin_access_service_1 = require("../services/admin.access.service");
|
|
22
23
|
const common_params_dto_1 = require("../../common/dtos/common.params.dto");
|
|
@@ -25,14 +26,15 @@ const api_key_list_processor_1 = require("../libraries/api.key.list.processor");
|
|
|
25
26
|
const add_api_key_dto_1 = require("../dtos/add.api.key.dto");
|
|
26
27
|
const api_key_list_dto_1 = require("../dtos/api.key.list.dto");
|
|
27
28
|
let AdminApiKeyController = class AdminApiKeyController {
|
|
28
|
-
constructor(adminAccessService, apiKeyService, listFilterService) {
|
|
29
|
+
constructor(adminAccessService, apiKeyService, scopeService, listFilterService) {
|
|
29
30
|
this.adminAccessService = adminAccessService;
|
|
30
31
|
this.apiKeyService = apiKeyService;
|
|
32
|
+
this.scopeService = scopeService;
|
|
31
33
|
this.listFilterService = listFilterService;
|
|
32
34
|
}
|
|
33
35
|
async issue(dto) {
|
|
34
36
|
const { user } = await this.adminAccessService.validateAdmin();
|
|
35
|
-
return new api_key_data_processor_1.ApiKeyDataProcessor(user, this.apiKeyService).process(dto);
|
|
37
|
+
return new api_key_data_processor_1.ApiKeyDataProcessor(user, this.apiKeyService, this.scopeService).process(dto);
|
|
36
38
|
}
|
|
37
39
|
async list(dto) {
|
|
38
40
|
await this.adminAccessService.validateContentReader();
|
|
@@ -57,7 +59,7 @@ __decorate([
|
|
|
57
59
|
(0, common_1.Post)(),
|
|
58
60
|
(0, swagger_1.ApiOperation)({
|
|
59
61
|
summary: 'Issue an API key for a tenant.',
|
|
60
|
-
description: 'Create-only — `raw_key` is the full key and is returned exactly once, since only its hash is stored. A key can only be granted scopes its tenant already holds. Requires at least the global admin role.',
|
|
62
|
+
description: 'Create-only — `raw_key` is the full key and is returned exactly once, since only its hash is stored. A key can only be granted scopes its tenant already holds, which includes the children of any parent scope the tenant is enabled for. Requires at least the global admin role.',
|
|
61
63
|
}),
|
|
62
64
|
__param(0, (0, common_1.Body)()),
|
|
63
65
|
__metadata("design:type", Function),
|
|
@@ -114,6 +116,7 @@ exports.AdminApiKeyController = AdminApiKeyController = __decorate([
|
|
|
114
116
|
(0, common_1.Controller)('api/admin/api-keys'),
|
|
115
117
|
__metadata("design:paramtypes", [admin_access_service_1.AdminAccessService,
|
|
116
118
|
api_key_service_1.ApiKeyService,
|
|
119
|
+
scope_service_1.ScopeService,
|
|
117
120
|
list_filter_service_1.ListFilterService])
|
|
118
121
|
], AdminApiKeyController);
|
|
119
122
|
//# sourceMappingURL=admin.api.key.controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.api.key.controller.js","sourceRoot":"","sources":["../../../src/admin/controllers/admin.api.key.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4E;AAC5E,6CAAuE;AACvE,mFAA8E;AAC9E,yEAAoE;AACpE,sFAA4E;AAC5E,2EAAsE;AACtE,2EAAsE;AACtE,gFAA0E;AAC1E,gFAA0E;AAC1E,6DAAuD;AACvD,+DAAyD;AAUlD,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAChC,YACmB,kBAAsC,EACtC,aAA4B,EAC5B,iBAAoC;
|
|
1
|
+
{"version":3,"file":"admin.api.key.controller.js","sourceRoot":"","sources":["../../../src/admin/controllers/admin.api.key.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,8 @@ export declare class AdminScopeController {
|
|
|
12
12
|
constructor(adminAccessService: AdminAccessService, scopeService: ScopeService, listFilterService: ListFilterService);
|
|
13
13
|
save(dto: AddScopeDto): Promise<ScopeEntity>;
|
|
14
14
|
list(dto: ScopeListDto): Promise<import("../..").CommonListResult>;
|
|
15
|
+
saveChild({ id }: CommonParamsDto, dto: AddScopeDto): Promise<ScopeEntity>;
|
|
16
|
+
children({ id }: CommonParamsDto, dto: ScopeListDto): Promise<import("../..").CommonListResult>;
|
|
15
17
|
detail({ id }: CommonParamsDto): Promise<ScopeEntity>;
|
|
16
18
|
remove({ id }: CommonParamsDto): Promise<import("../..").DeleteResult>;
|
|
17
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.scope.controller.d.ts","sourceRoot":"","sources":["../../../src/admin/controllers/admin.scope.controller.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"admin.scope.controller.d.ts","sourceRoot":"","sources":["../../../src/admin/controllers/admin.scope.controller.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAGtE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAGjE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAQ/D,qBAGa,oBAAoB;IAE7B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBAFjB,kBAAkB,EAAE,kBAAkB,EACtC,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB;IASjD,IAAI,CAAS,GAAG,EAAE,WAAW;IAW7B,IAAI,CAAS,GAAG,EAAE,YAAY;IAW9B,SAAS,CAAU,EAAE,EAAE,EAAE,EAAE,eAAe,EAAU,GAAG,EAAE,WAAW;IAWpE,QAAQ,CAAU,EAAE,EAAE,EAAE,EAAE,eAAe,EAAU,GAAG,EAAE,YAAY;IAapE,MAAM,CAAU,EAAE,EAAE,EAAE,EAAE,eAAe;IAevC,MAAM,CAAU,EAAE,EAAE,EAAE,EAAE,eAAe;CAgB9C"}
|
|
@@ -18,6 +18,8 @@ const swagger_1 = require("@nestjs/swagger");
|
|
|
18
18
|
const list_filter_service_1 = require("../../common/services/list.filter.service");
|
|
19
19
|
const admin_access_service_1 = require("../services/admin.access.service");
|
|
20
20
|
const common_params_dto_1 = require("../../common/dtos/common.params.dto");
|
|
21
|
+
const global_admin_roles_enum_1 = require("../../auth/enums/global.admin.roles.enum");
|
|
22
|
+
const access_exception_1 = require("../../global/exceptions/access.exception");
|
|
21
23
|
const scope_service_1 = require("../../auth/services/scope.service");
|
|
22
24
|
const scope_data_processor_1 = require("../libraries/scope.data.processor");
|
|
23
25
|
const scope_list_processor_1 = require("../libraries/scope.list.processor");
|
|
@@ -38,6 +40,17 @@ let AdminScopeController = class AdminScopeController {
|
|
|
38
40
|
await this.adminAccessService.validateContentReader();
|
|
39
41
|
return new scope_list_processor_1.ScopeListProcessor(this.listFilterService).process(dto);
|
|
40
42
|
}
|
|
43
|
+
async saveChild({ id }, dto) {
|
|
44
|
+
const { user } = await this.adminAccessService.validateContentManager();
|
|
45
|
+
return new scope_data_processor_1.ScopeDataProcessor(user).process({ ...dto, parent_id: id });
|
|
46
|
+
}
|
|
47
|
+
async children({ id }, dto) {
|
|
48
|
+
await this.adminAccessService.validateContentReader();
|
|
49
|
+
return new scope_list_processor_1.ScopeListProcessor(this.listFilterService).process({
|
|
50
|
+
...dto,
|
|
51
|
+
parent_id: id,
|
|
52
|
+
});
|
|
53
|
+
}
|
|
41
54
|
async detail({ id }) {
|
|
42
55
|
await this.adminAccessService.validateContentReader();
|
|
43
56
|
const scope = await scope_entity_1.ScopeEntity.findOne({ where: { id } });
|
|
@@ -46,8 +59,11 @@ let AdminScopeController = class AdminScopeController {
|
|
|
46
59
|
return scope;
|
|
47
60
|
}
|
|
48
61
|
async remove({ id }) {
|
|
49
|
-
const
|
|
50
|
-
|
|
62
|
+
const access = await this.adminAccessService.validateContentManager();
|
|
63
|
+
if ((await this.scopeService.isChildScope(id)) &&
|
|
64
|
+
!this.adminAccessService.holdsAtLeast(access, global_admin_roles_enum_1.GlobalAdminRoles.GLOBAL_ADMIN))
|
|
65
|
+
throw new access_exception_1.AccessException(`Deleting a child scope requires at least the "${global_admin_roles_enum_1.GlobalAdminRoles.GLOBAL_ADMIN}" role.`);
|
|
66
|
+
return this.scopeService.deleteScope(id, access.user.id);
|
|
51
67
|
}
|
|
52
68
|
};
|
|
53
69
|
exports.AdminScopeController = AdminScopeController;
|
|
@@ -55,7 +71,7 @@ __decorate([
|
|
|
55
71
|
(0, common_1.Post)(),
|
|
56
72
|
(0, swagger_1.ApiOperation)({
|
|
57
73
|
summary: 'Define a scope, or update an existing one.',
|
|
58
|
-
description: 'Send an `id` to edit that scope; omit it to define a new one. `identifier` is what code checks and is unique across the catalogue. Requires at least the global content manager role.',
|
|
74
|
+
description: 'Send an `id` to edit that scope; omit it to define a new one. `identifier` is what code checks and is unique across the catalogue. `parent_id` files the scope under another one — a scope that already has children of its own cannot be given a parent. Requires at least the global content manager role.',
|
|
59
75
|
}),
|
|
60
76
|
__param(0, (0, common_1.Body)()),
|
|
61
77
|
__metadata("design:type", Function),
|
|
@@ -66,13 +82,37 @@ __decorate([
|
|
|
66
82
|
(0, common_1.Post)('list'),
|
|
67
83
|
(0, swagger_1.ApiOperation)({
|
|
68
84
|
summary: 'List, search and filter scopes.',
|
|
69
|
-
description: 'Requires at least the global content reader role.',
|
|
85
|
+
description: 'Rows carry `parent_id`, the parent labels `parent_identifier` and `parent_name`, and `child_count` — so a parent and a child are told apart without a second read. Requires at least the global content reader role.',
|
|
70
86
|
}),
|
|
71
87
|
__param(0, (0, common_1.Body)()),
|
|
72
88
|
__metadata("design:type", Function),
|
|
73
89
|
__metadata("design:paramtypes", [scope_list_dto_1.ScopeListDto]),
|
|
74
90
|
__metadata("design:returntype", Promise)
|
|
75
91
|
], AdminScopeController.prototype, "list", null);
|
|
92
|
+
__decorate([
|
|
93
|
+
(0, common_1.Post)(':id/children'),
|
|
94
|
+
(0, swagger_1.ApiOperation)({
|
|
95
|
+
summary: 'Add a child scope under this one, or update an existing child.',
|
|
96
|
+
description: 'The parent comes from the path, so the body is an ordinary scope — send an `id` to edit a child, omit it to define one. The parent has to be a parent itself: a child scope never holds children. Requires at least the global content manager role.',
|
|
97
|
+
}),
|
|
98
|
+
__param(0, (0, common_1.Param)()),
|
|
99
|
+
__param(1, (0, common_1.Body)()),
|
|
100
|
+
__metadata("design:type", Function),
|
|
101
|
+
__metadata("design:paramtypes", [common_params_dto_1.CommonParamsDto, add_scope_dto_1.AddScopeDto]),
|
|
102
|
+
__metadata("design:returntype", Promise)
|
|
103
|
+
], AdminScopeController.prototype, "saveChild", null);
|
|
104
|
+
__decorate([
|
|
105
|
+
(0, common_1.Post)(':id/children/list'),
|
|
106
|
+
(0, swagger_1.ApiOperation)({
|
|
107
|
+
summary: 'List, search and filter the children of one scope.',
|
|
108
|
+
description: 'The same listing as `POST /list`, with `parent_id` taken from the path — so a body that names a different parent cannot widen it. Requires at least the global content reader role.',
|
|
109
|
+
}),
|
|
110
|
+
__param(0, (0, common_1.Param)()),
|
|
111
|
+
__param(1, (0, common_1.Body)()),
|
|
112
|
+
__metadata("design:type", Function),
|
|
113
|
+
__metadata("design:paramtypes", [common_params_dto_1.CommonParamsDto, scope_list_dto_1.ScopeListDto]),
|
|
114
|
+
__metadata("design:returntype", Promise)
|
|
115
|
+
], AdminScopeController.prototype, "children", null);
|
|
76
116
|
__decorate([
|
|
77
117
|
(0, common_1.Get)(':id'),
|
|
78
118
|
(0, swagger_1.ApiOperation)({
|
|
@@ -88,7 +128,7 @@ __decorate([
|
|
|
88
128
|
(0, common_1.Delete)(':id'),
|
|
89
129
|
(0, swagger_1.ApiOperation)({
|
|
90
130
|
summary: 'Delete a scope.',
|
|
91
|
-
description: 'Soft delete: the row keeps its data with `deleted_at` set and drops out of every listing.
|
|
131
|
+
description: 'Soft delete: the row keeps its data with `deleted_at` set and drops out of every listing. Its children go with it, and so does every grant of any of them — the tenant rows in `sys_tenant_scopes` and the API-key rows in `sys_api_scopes` — so no principal keeps a feature the catalogue no longer defines. Requires at least the global content manager role, and the global admin role to delete a child scope: a child is a slice of a feature tenants already hold, and removing it narrows their access rather than retiring the feature.',
|
|
92
132
|
}),
|
|
93
133
|
__param(0, (0, common_1.Param)()),
|
|
94
134
|
__metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.scope.controller.js","sourceRoot":"","sources":["../../../src/admin/controllers/admin.scope.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAQwB;AACxB,6CAAuE;AACvE,mFAA8E;AAC9E,2EAAsE;AACtE,2EAAsE;AACtE,qEAAiE;AACjE,4EAAuE;AACvE,4EAAuE;AACvE,yDAAoD;AACpD,2DAAsD;AACtD,mEAA+D;AAWxD,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC/B,YACmB,kBAAsC,EACtC,YAA0B,EAC1B,iBAAoC;QAFpC,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,sBAAiB,GAAjB,iBAAiB,CAAmB;IACpD,CAAC;IAQE,AAAN,KAAK,CAAC,IAAI,CAAS,GAAgB;QACjC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC;QACxE,OAAO,IAAI,yCAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnD,CAAC;
|
|
1
|
+
{"version":3,"file":"admin.scope.controller.js","sourceRoot":"","sources":["../../../src/admin/controllers/admin.scope.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.scope.dto.d.ts","sourceRoot":"","sources":["../../../src/admin/dtos/add.scope.dto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"add.scope.dto.d.ts","sourceRoot":"","sources":["../../../src/admin/dtos/add.scope.dto.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AASlE,qBAAa,WAAY,SAAQ,aAAa;IAa5C,UAAU,EAAE,MAAM,CAAC;IAMnB,IAAI,EAAE,MAAM,CAAC;IAOb,WAAW,CAAC,EAAE,MAAM,CAAC;IASrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -44,4 +44,13 @@ __decorate([
|
|
|
44
44
|
(0, class_validator_1.IsString)(),
|
|
45
45
|
__metadata("design:type", String)
|
|
46
46
|
], AddScopeDto.prototype, "description", void 0);
|
|
47
|
+
__decorate([
|
|
48
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
49
|
+
format: 'uuid',
|
|
50
|
+
description: 'The parent scope this one belongs to. Granting the parent grants this child with it. Omit for a parent scope; a scope that already has children cannot be given one.',
|
|
51
|
+
}),
|
|
52
|
+
(0, class_validator_1.IsOptional)(),
|
|
53
|
+
(0, class_validator_1.IsUUID)(),
|
|
54
|
+
__metadata("design:type", String)
|
|
55
|
+
], AddScopeDto.prototype, "parent_id", void 0);
|
|
47
56
|
//# sourceMappingURL=add.scope.dto.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.scope.dto.js","sourceRoot":"","sources":["../../../src/admin/dtos/add.scope.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"add.scope.dto.js","sourceRoot":"","sources":["../../../src/admin/dtos/add.scope.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAOyB;AACzB,6CAAmE;AACnE,uEAAkE;AASlE,MAAa,WAAY,SAAQ,+BAAa;CAoC7C;AApCD,kCAoCC;AAvBC;IAZC,IAAA,qBAAW,EAAC;QACX,OAAO,EAAE,kBAAkB;QAC3B,WAAW,EACT,iHAAiH;KACpH,CAAC;IACD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,EAAC,GAAG,CAAC;IACd,IAAA,yBAAO,EAAC,kBAAkB,EAAE;QAC3B,OAAO,EACL,iGAAiG;KACpG,CAAC;;+CACiB;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;;yCACF;AAOb;IALC,IAAA,6BAAmB,EAAC;QACnB,OAAO,EAAE,+CAA+C;KACzD,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;gDACU;AASrB;IAPC,IAAA,6BAAmB,EAAC;QACnB,MAAM,EAAE,MAAM;QACd,WAAW,EACT,sKAAsK;KACzK,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;;8CACU"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.list.dto.d.ts","sourceRoot":"","sources":["../../../src/admin/dtos/scope.list.dto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scope.list.dto.d.ts","sourceRoot":"","sources":["../../../src/admin/dtos/scope.list.dto.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAW/E,qBAAa,YAAa,SAAQ,mBAAmB;IAQnD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -1,8 +1,30 @@
|
|
|
1
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
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.ScopeListDto = void 0;
|
|
13
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
+
const class_transformer_1 = require("class-transformer");
|
|
15
|
+
const class_validator_1 = require("class-validator");
|
|
4
16
|
const common_list_filter_dto_1 = require("../../common/dtos/common.list.filter.dto");
|
|
5
17
|
class ScopeListDto extends common_list_filter_dto_1.CommonListFilterDto {
|
|
6
18
|
}
|
|
7
19
|
exports.ScopeListDto = ScopeListDto;
|
|
20
|
+
__decorate([
|
|
21
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
22
|
+
format: 'uuid',
|
|
23
|
+
description: 'Return only the children of this scope.',
|
|
24
|
+
}),
|
|
25
|
+
(0, class_transformer_1.Expose)(),
|
|
26
|
+
(0, class_validator_1.IsUUID)(),
|
|
27
|
+
(0, class_validator_1.IsOptional)(),
|
|
28
|
+
__metadata("design:type", String)
|
|
29
|
+
], ScopeListDto.prototype, "parent_id", void 0);
|
|
8
30
|
//# sourceMappingURL=scope.list.dto.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.list.dto.js","sourceRoot":"","sources":["../../../src/admin/dtos/scope.list.dto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scope.list.dto.js","sourceRoot":"","sources":["../../../src/admin/dtos/scope.list.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAsD;AACtD,yDAA2C;AAC3C,qDAAqD;AACrD,qFAA+E;AAW/E,MAAa,YAAa,SAAQ,4CAAmB;CASpD;AATD,oCASC;AADC;IAPC,IAAA,6BAAmB,EAAC;QACnB,MAAM,EAAE,MAAM;QACd,WAAW,EAAE,yCAAyC;KACvD,CAAC;IACD,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAM,GAAE;IACR,IAAA,4BAAU,GAAE;;+CACM"}
|
|
@@ -43,6 +43,7 @@ import { AddApiKeyDto } from './dtos/add.api.key.dto';
|
|
|
43
43
|
import { AddPdfTemplateDto } from './dtos/add.pdf.template.dto';
|
|
44
44
|
import { ScheduleDto } from './dtos/add.scheduled.task.dto';
|
|
45
45
|
import { AddScopeDto } from './dtos/add.scope.dto';
|
|
46
|
+
import { AddSystemRoleDto } from './dtos/add.system.role.dto';
|
|
46
47
|
import { AddTenantDto } from './dtos/add.tenant.dto';
|
|
47
48
|
import { ApiKeyListDto } from './dtos/api.key.list.dto';
|
|
48
49
|
import { BaseUserDto } from './dtos/base.user.dto';
|
|
@@ -50,7 +51,7 @@ export declare const es6Classes: {
|
|
|
50
51
|
controllers: (typeof AdminApiKeyController | typeof AdminEmailTemplateController | typeof AdminPdfTemplateController | typeof AdminRoleController | typeof AdminScheduledTaskController | typeof AdminScopeController | typeof AdminTenantController | typeof AdminSystemUserController | typeof AdminTenantUserController | typeof AdminUserController | typeof SystemRoleController)[];
|
|
51
52
|
services: readonly [typeof AdminAccessService, typeof SystemUserService, typeof TemplateService];
|
|
52
53
|
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 AdminUserDataProcessor | typeof AdminUserDeleteProcessor | typeof AdminUserListProcessor | typeof SystemRoleDataProcessor)[];
|
|
53
|
-
dtos: (typeof AddApiKeyDto | typeof ApiKeyListDto | typeof AddPdfTemplateDto | typeof ScheduleDto | typeof AddScopeDto | typeof AddTenantDto | typeof BaseUserDto | typeof AddAdminUserDto)[];
|
|
54
|
+
dtos: (typeof AddApiKeyDto | typeof ApiKeyListDto | typeof AddPdfTemplateDto | typeof ScheduleDto | typeof AddScopeDto | typeof AddTenantDto | typeof BaseUserDto | typeof AddAdminUserDto | typeof AddSystemRoleDto)[];
|
|
54
55
|
jobs: any[];
|
|
55
56
|
subscribers: any[];
|
|
56
57
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"es6.classes.d.ts","sourceRoot":"","sources":["../../src/admin/es6.classes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"es6.classes.d.ts","sourceRoot":"","sources":["../../src/admin/es6.classes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { CommonDataProcessor } from '../../common/libraries/common.data.processor';
|
|
2
2
|
import { AdminUserEntity } from '../../auth/entities/admin.user.entity';
|
|
3
3
|
import { ApiKeyService } from '../../auth/services/api.key.service';
|
|
4
|
+
import { ScopeService } from '../../auth/services/scope.service';
|
|
4
5
|
import { AddApiKeyDto } from '../dtos/add.api.key.dto';
|
|
5
6
|
import { IssuedApiKey } from '../types/admin.types';
|
|
6
7
|
export declare class ApiKeyDataProcessor extends CommonDataProcessor {
|
|
7
8
|
private readonly actor;
|
|
8
9
|
private readonly apiKeyService;
|
|
10
|
+
private readonly scopeService;
|
|
9
11
|
protected payload: AddApiKeyDto;
|
|
10
|
-
constructor(actor: AdminUserEntity, apiKeyService: ApiKeyService);
|
|
12
|
+
constructor(actor: AdminUserEntity, apiKeyService: ApiKeyService, scopeService: ScopeService);
|
|
11
13
|
process(payload: AddApiKeyDto): Promise<IssuedApiKey>;
|
|
12
14
|
private validate;
|
|
13
15
|
private validateScopes;
|
|
@@ -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;
|
|
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;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAYpD,qBAAa,mBAAoB,SAAQ,mBAAmB;IAIxD,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAL/B,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC;gBAGb,KAAK,EAAE,eAAe,EACtB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY;IAKvC,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;YAM7C,QAAQ;YAUR,cAAc;YAwBd,GAAG;CAelB"}
|
|
@@ -4,13 +4,13 @@ exports.ApiKeyDataProcessor = void 0;
|
|
|
4
4
|
const typeorm_1 = require("typeorm");
|
|
5
5
|
const common_data_processor_1 = require("../../common/libraries/common.data.processor");
|
|
6
6
|
const scope_entity_1 = require("../../auth/entities/scope.entity");
|
|
7
|
-
const tenant_scope_entity_1 = require("../../auth/entities/tenant.scope.entity");
|
|
8
7
|
const tenant_entity_1 = require("../../tenant/entities/tenant.entity");
|
|
9
8
|
class ApiKeyDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
10
|
-
constructor(actor, apiKeyService) {
|
|
9
|
+
constructor(actor, apiKeyService, scopeService) {
|
|
11
10
|
super();
|
|
12
11
|
this.actor = actor;
|
|
13
12
|
this.apiKeyService = apiKeyService;
|
|
13
|
+
this.scopeService = scopeService;
|
|
14
14
|
}
|
|
15
15
|
async process(payload) {
|
|
16
16
|
this.payload = payload;
|
|
@@ -31,10 +31,7 @@ class ApiKeyDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
|
31
31
|
return;
|
|
32
32
|
const scopes = await scope_entity_1.ScopeEntity.find({ where: { id: (0, typeorm_1.In)(scopeIds) } });
|
|
33
33
|
const found = new Set(scopes.map((scope) => scope.id));
|
|
34
|
-
const
|
|
35
|
-
where: { tenant_id: this.payload.tenant_id, scope_id: (0, typeorm_1.In)(scopeIds) },
|
|
36
|
-
});
|
|
37
|
-
const granted = new Set(enabled.map((tenantScope) => tenantScope.scope_id));
|
|
34
|
+
const granted = await this.scopeService.tenantScopeIds(this.payload.tenant_id);
|
|
38
35
|
for (const scopeId of scopeIds) {
|
|
39
36
|
if (!found.has(scopeId)) {
|
|
40
37
|
this.setColumnError('scope_ids', `Scope '${scopeId}' not found`);
|
|
@@ -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,mEAA+D;
|
|
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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"}
|
|
@@ -8,6 +8,7 @@ export declare class ScopeDataProcessor extends CommonDataProcessor {
|
|
|
8
8
|
constructor(actor: AdminUserEntity);
|
|
9
9
|
process(payload: AddScopeDto): Promise<ScopeEntity>;
|
|
10
10
|
private validate;
|
|
11
|
+
private validateParent;
|
|
11
12
|
private set;
|
|
12
13
|
}
|
|
13
14
|
//# sourceMappingURL=scope.data.processor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/scope.data.processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"scope.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/scope.data.processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAUpD,qBAAa,kBAAmB,SAAQ,mBAAmB;IAG7C,OAAO,CAAC,QAAQ,CAAC,KAAK;IAFlC,SAAS,CAAC,OAAO,EAAE,WAAW,CAAC;gBAEF,KAAK,EAAE,eAAe;IAI7C,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YAM3C,QAAQ;YAsBR,cAAc;YA6Bd,GAAG;CAsBlB"}
|
|
@@ -22,8 +22,27 @@ class ScopeDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
|
22
22
|
});
|
|
23
23
|
if (owner && owner.id !== body.id)
|
|
24
24
|
this.setColumnError('identifier', 'A scope with this identifier already exists');
|
|
25
|
+
await this.validateParent();
|
|
25
26
|
this.raiseExceptionOnValidationFailure();
|
|
26
27
|
}
|
|
28
|
+
async validateParent() {
|
|
29
|
+
const body = this.payload;
|
|
30
|
+
if (!body.parent_id)
|
|
31
|
+
return;
|
|
32
|
+
if (body.parent_id === body.id) {
|
|
33
|
+
this.setColumnError('parent_id', 'A scope cannot be its own parent');
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
const parent = await scope_entity_1.ScopeEntity.findOne({ where: { id: body.parent_id } });
|
|
37
|
+
if (!parent) {
|
|
38
|
+
this.setColumnError('parent_id', 'No scope exists for this parent id');
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
if (parent.parent_id)
|
|
42
|
+
this.setColumnError('parent_id', 'That scope is itself a child — a child scope cannot hold children');
|
|
43
|
+
if (body.id && (await scope_entity_1.ScopeEntity.existsBy({ parent_id: body.id })))
|
|
44
|
+
this.setColumnError('parent_id', 'This scope has children of its own and cannot become a child');
|
|
45
|
+
}
|
|
27
46
|
async set() {
|
|
28
47
|
const body = this.payload;
|
|
29
48
|
let scope = scope_entity_1.ScopeEntity.create({ created_by: this.actor.id });
|
|
@@ -37,6 +56,7 @@ class ScopeDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
|
37
56
|
scope.identifier = body.identifier;
|
|
38
57
|
scope.name = body.name;
|
|
39
58
|
scope.description = body.description;
|
|
59
|
+
scope.parent_id = body.parent_id ?? null;
|
|
40
60
|
await scope.save();
|
|
41
61
|
return scope;
|
|
42
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.data.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/scope.data.processor.ts"],"names":[],"mappings":";;;AAAA,wFAAmF;AAEnF,mEAA+D;
|
|
1
|
+
{"version":3,"file":"scope.data.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/scope.data.processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,10 @@ import { ListFilterService } from '../../common/services/list.filter.service';
|
|
|
4
4
|
import { ScopeListDto } from '../dtos/scope.list.dto';
|
|
5
5
|
export declare class ScopeListProcessor extends CommonListProcessor {
|
|
6
6
|
protected readonly listFilterService: ListFilterService;
|
|
7
|
+
protected payload: ScopeListDto;
|
|
7
8
|
protected config: CommonListFilterConfig;
|
|
8
9
|
constructor(listFilterService: ListFilterService);
|
|
9
10
|
process(payload: ScopeListDto): Promise<import("../../common/types/list.types").CommonListResult>;
|
|
11
|
+
protected applyCustomPredicates(): void;
|
|
10
12
|
}
|
|
11
13
|
//# sourceMappingURL=scope.list.processor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.list.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/scope.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,YAAY,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"scope.list.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/scope.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,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAWtD,qBAAa,kBAAmB,SAAQ,mBAAmB;IAsC7C,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB;IArCnE,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC;IAEhC,SAAS,CAAC,MAAM,EAAE,sBAAsB,CAiCtC;gBAE6B,iBAAiB,EAAE,iBAAiB;IAI7D,OAAO,CAAC,OAAO,EAAE,YAAY;IAKnC,SAAS,CAAC,qBAAqB;CAIhC"}
|
|
@@ -9,12 +9,30 @@ class ScopeListProcessor extends common_list_processor_1.CommonListProcessor {
|
|
|
9
9
|
super();
|
|
10
10
|
this.listFilterService = listFilterService;
|
|
11
11
|
this.config = {
|
|
12
|
-
query:
|
|
12
|
+
query: `sys_scopes s
|
|
13
|
+
left join sys_scopes p on p.id = s.parent_id and p.deleted_at is null
|
|
14
|
+
left join lateral (
|
|
15
|
+
select count(*) total
|
|
16
|
+
from sys_scopes c
|
|
17
|
+
where c.parent_id = s.id and c.deleted_at is null
|
|
18
|
+
) ch on true`,
|
|
13
19
|
columns: [
|
|
14
20
|
{ key: 's.id', identifier: 'id', type: filter_value_type_enum_1.FilterValueTypeEnum.UUID },
|
|
15
21
|
{ key: 's.identifier', identifier: 'identifier', searchable: true },
|
|
16
22
|
{ key: 's.name', identifier: 'name', searchable: true },
|
|
17
23
|
{ key: 's.description', identifier: 'description', searchable: true },
|
|
24
|
+
{
|
|
25
|
+
key: 's.parent_id',
|
|
26
|
+
identifier: 'parent_id',
|
|
27
|
+
type: filter_value_type_enum_1.FilterValueTypeEnum.UUID,
|
|
28
|
+
},
|
|
29
|
+
{ key: 'p.identifier', identifier: 'parent_identifier' },
|
|
30
|
+
{ key: 'p.name', identifier: 'parent_name' },
|
|
31
|
+
{
|
|
32
|
+
key: 'ch.total',
|
|
33
|
+
identifier: 'child_count',
|
|
34
|
+
type: filter_value_type_enum_1.FilterValueTypeEnum.NUMBER,
|
|
35
|
+
},
|
|
18
36
|
{
|
|
19
37
|
key: 's.created_at',
|
|
20
38
|
identifier: 'created_at',
|
|
@@ -29,6 +47,10 @@ class ScopeListProcessor extends common_list_processor_1.CommonListProcessor {
|
|
|
29
47
|
this.payload = payload;
|
|
30
48
|
return this.handle();
|
|
31
49
|
}
|
|
50
|
+
applyCustomPredicates() {
|
|
51
|
+
if (this.payload.parent_id)
|
|
52
|
+
this.predicates.add('s.parent_id = :value', this.payload.parent_id);
|
|
53
|
+
}
|
|
32
54
|
}
|
|
33
55
|
exports.ScopeListProcessor = ScopeListProcessor;
|
|
34
56
|
//# sourceMappingURL=scope.list.processor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.list.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/scope.list.processor.ts"],"names":[],"mappings":";;;AAAA,gFAAuE;AACvE,sFAAgF;AAChF,wFAAmF;
|
|
1
|
+
{"version":3,"file":"scope.list.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/scope.list.processor.ts"],"names":[],"mappings":";;;AAAA,gFAAuE;AACvE,sFAAgF;AAChF,wFAAmF;AAcnF,MAAa,kBAAmB,SAAQ,2CAAmB;IAsCzD,YAA+B,iBAAoC;QACjE,KAAK,EAAE,CAAC;QADqB,sBAAiB,GAAjB,iBAAiB,CAAmB;QAnCzD,WAAM,GAA2B;YACzC,KAAK,EAAE;;;;;;mBAMQ;YACf,OAAO,EAAE;gBACP,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,4CAAmB,CAAC,IAAI,EAAE;gBACjE,EAAE,GAAG,EAAE,cAAc,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE;gBACnE,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE;gBACvD,EAAE,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE;gBACrE;oBACE,GAAG,EAAE,aAAa;oBAClB,UAAU,EAAE,WAAW;oBACvB,IAAI,EAAE,4CAAmB,CAAC,IAAI;iBAC/B;gBACD,EAAE,GAAG,EAAE,cAAc,EAAE,UAAU,EAAE,mBAAmB,EAAE;gBACxD,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE;gBAC5C;oBACE,GAAG,EAAE,UAAU;oBACf,UAAU,EAAE,aAAa;oBACzB,IAAI,EAAE,4CAAmB,CAAC,MAAM;iBACjC;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,MAAM,EAAE,SAAS,EAAE,mCAAa,CAAC,GAAG,EAAE;SAC7D,CAAC;IAIF,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAqB;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;IAES,qBAAqB;QAC7B,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS;YACxB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxE,CAAC;CACF;AAnDD,gDAmDC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.module.d.ts","sourceRoot":"","sources":["../../src/auth/auth.module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAId,MAAM,gBAAgB,CAAC;AAkBxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.module.d.ts","sourceRoot":"","sources":["../../src/auth/auth.module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAId,MAAM,gBAAgB,CAAC;AAkBxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AA0H5D,qBAMa,UAAU;IACrB,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAE,iBAAsB,GAAG,aAAa;CAShE"}
|
package/dist/auth/auth.module.js
CHANGED
|
@@ -60,8 +60,12 @@ function createAuthProviders(options = {}) {
|
|
|
60
60
|
},
|
|
61
61
|
{
|
|
62
62
|
provide: ApiKeyService,
|
|
63
|
-
useFactory: (dataSource, encryptionService) => new ApiKeyService(dataSource, encryptionService),
|
|
64
|
-
inject: [
|
|
63
|
+
useFactory: (dataSource, encryptionService, scopeService) => new ApiKeyService(dataSource, encryptionService, scopeService),
|
|
64
|
+
inject: [
|
|
65
|
+
(0, typeorm_1.getDataSourceToken)(options.dataSourceName),
|
|
66
|
+
encryption_service_1.EncryptionService,
|
|
67
|
+
ScopeService,
|
|
68
|
+
],
|
|
65
69
|
},
|
|
66
70
|
{
|
|
67
71
|
provide: ScopeService,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.module.js","sourceRoot":"","sources":["../../src/auth/auth.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAKwB;AACxB,qCAAoE;AACpE,+CAAkD;AAClD,6CAAqD;AAErD,2DAAuD;AACvD,oEAAgE;AAChE,oEAAgE;AAChE,8EAA0E;AAC1E,0DAAqD;AACrD,4DAAuD;AACvD,kEAA6D;AAC7D,0EAAqE;AACrE,0DAAsD;AACtD,iEAA6D;AAC7D,6EAAwE;AACxE,yEAAoE;AACpE,+CAA2C;AAI3C,MAAM,CACJ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,oBAAoB,EACrB,GAAG,wBAAU,CAAC,QAAQ,CAAC;AAExB,SAAS,iBAAiB;IACxB,OAAO;QACL,4BAAY;QACZ,yBAAc,CAAC,QAAQ,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QAEnD,eAAS,CAAC,aAAa,CAAC;YACtB,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;gBACjB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;gBACvC,WAAW,EAAE;oBACX,SAAS,EAAE,OAAO,CAAC,GAAG;yBACnB,mBAAkD;iBACtD;aACF,CAAC;SACH,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,UAA6B,EAAE;IAC1D,OAAO;QACL;YACE,OAAO,EAAE,WAAW;YACpB,UAAU,EAAE,CACV,UAAsB,EACtB,YAA0B,EAC1B,UAAsB,EACtB,YAA+C,EAC/C,EAAE,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,CAAC;YACxE,MAAM,EAAE;gBACN,gBAAU;gBACV,4BAAY;gBACZ,IAAA,4BAAkB,EAAC,OAAO,CAAC,cAAc,CAAC;gBAC1C,YAAY;aACb;SACF;QACD;YACE,OAAO,EAAE,gBAAgB;YACzB,UAAU,EAAE,CAAC,UAAsB,EAAE,UAAsB,EAAE,EAAE,CAC7D,IAAI,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC;YAC9C,MAAM,EAAE,CAAC,gBAAU,EAAE,IAAA,4BAAkB,EAAC,OAAO,CAAC,cAAc,CAAC,CAAC;SACjE;QACD;YACE,OAAO,EAAE,aAAa;YACtB,UAAU,EAAE,CACV,UAAsB,EACtB,iBAAoC,EACpC,EAAE,CAAC,IAAI,aAAa,CAAC,UAAU,EAAE,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.module.js","sourceRoot":"","sources":["../../src/auth/auth.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.entity.d.ts","sourceRoot":"","sources":["../../../src/auth/entities/scope.entity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"scope.entity.d.ts","sourceRoot":"","sources":["../../../src/auth/entities/scope.entity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAS9E,qBACa,WAAY,SAAQ,iBAAiB;IAEhD,UAAU,EAAE,MAAM,CAAC;IAGnB,IAAI,EAAE,MAAM,CAAC;IAGb,WAAW,EAAE,MAAM,CAAC;IAGpB,SAAS,EAAE,MAAM,CAAC;IAIlB,MAAM,EAAE,WAAW,CAAC;CACrB"}
|
|
@@ -27,6 +27,15 @@ __decorate([
|
|
|
27
27
|
(0, typeorm_1.Column)({ type: 'text' }),
|
|
28
28
|
__metadata("design:type", String)
|
|
29
29
|
], ScopeEntity.prototype, "description", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
|
|
32
|
+
__metadata("design:type", String)
|
|
33
|
+
], ScopeEntity.prototype, "parent_id", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, typeorm_1.ManyToOne)(() => ScopeEntity),
|
|
36
|
+
(0, typeorm_1.JoinColumn)({ name: 'parent_id' }),
|
|
37
|
+
__metadata("design:type", ScopeEntity)
|
|
38
|
+
], ScopeEntity.prototype, "parent", void 0);
|
|
30
39
|
exports.ScopeEntity = ScopeEntity = __decorate([
|
|
31
40
|
(0, typeorm_1.Entity)({ name: 'sys_scopes' })
|
|
32
41
|
], ScopeEntity);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.entity.js","sourceRoot":"","sources":["../../../src/auth/entities/scope.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"scope.entity.js","sourceRoot":"","sources":["../../../src/auth/entities/scope.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAgE;AAChE,mFAA8E;AAUvE,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,uCAAiB;CAgBjD,CAAA;AAhBY,kCAAW;AAEtB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;+CACT;AAGnB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;yCACf;AAGb;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;gDACL;AAGpB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACvB;AAIlB;IAFC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,WAAW,CAAC;IAC5B,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;8BAC1B,WAAW;2CAAC;sBAfT,WAAW;IADvB,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;GAClB,WAAW,CAgBvB"}
|
|
@@ -2,14 +2,16 @@ import { Logger } from '@nestjs/common';
|
|
|
2
2
|
import { DataSource } from 'typeorm';
|
|
3
3
|
import { DeleteResult, DisableResult } from '../../common/types/common.response.types';
|
|
4
4
|
import { EncryptionService } from '../../common/services/encryption.service';
|
|
5
|
+
import { ScopeService } from './scope.service';
|
|
5
6
|
import { ApiKeyEntity } from '../entities/api.key.entity';
|
|
6
7
|
import { ApiScopeEntity } from '../entities/api.scope.entity';
|
|
7
8
|
import { ApiKeyAccess, ApiKeyDetail, GenerateApiKeyOptions, GeneratedApiKey } from '../types/api.key.types';
|
|
8
9
|
export declare class ApiKeyService {
|
|
9
10
|
private readonly dataSource;
|
|
10
11
|
private readonly encryptionService;
|
|
12
|
+
private readonly scopeService;
|
|
11
13
|
protected readonly logger: Logger;
|
|
12
|
-
constructor(dataSource: DataSource, encryptionService: EncryptionService);
|
|
14
|
+
constructor(dataSource: DataSource, encryptionService: EncryptionService, scopeService: ScopeService);
|
|
13
15
|
generateApiKey(name: string, options?: GenerateApiKeyOptions): Promise<GeneratedApiKey>;
|
|
14
16
|
revealApiKey(apiKeyUuid: string): Promise<string>;
|
|
15
17
|
grantScopes(apiKeyUuid: string, scopeIds?: string[], grantedBy?: string): Promise<ApiScopeEntity[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.key.service.d.ts","sourceRoot":"","sources":["../../../src/auth/services/api.key.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAc,MAAM,SAAS,CAAC;AAGjD,OAAO,EACL,YAAY,EACZ,aAAa,EACd,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"api.key.service.d.ts","sourceRoot":"","sources":["../../../src/auth/services/api.key.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAc,MAAM,SAAS,CAAC;AAGjD,OAAO,EACL,YAAY,EACZ,aAAa,EACd,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAI9D,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAahC,qBACa,aAAa;IAItB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAL/B,SAAS,CAAC,QAAQ,CAAC,MAAM,SAAkC;gBAGxC,UAAU,EAAE,UAAU,EACtB,iBAAiB,EAAE,iBAAiB,EACpC,YAAY,EAAE,YAAY;IAGvC,cAAc,CAClB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,eAAe,CAAC;IAgCrB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBjD,WAAW,CACf,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,cAAc,EAAE,CAAC;IAetB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAqB5D,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAgBpD,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,MAAM,UAAQ,GACb,OAAO,CAAC,YAAY,CAAC;IAsBlB,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWrE,cAAc,CAAC,eAAe,EAAE,MAAM,GAAG,YAAY;IAkB/C,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBjE,aAAa,CACjB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,aAAa,CAAC;IAmBnB,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,YAAY,CAAC;IAiBlB,WAAW,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YAK9B,mBAAmB;IAajC,OAAO,CAAC,MAAM;YAMA,aAAa;IAO3B,OAAO,KAAK,gBAAgB,GAE3B;IAED,OAAO,KAAK,kBAAkB,GAE7B;CACF"}
|
|
@@ -17,15 +17,17 @@ const typeorm_1 = require("typeorm");
|
|
|
17
17
|
const access_exception_1 = require("../../global/exceptions/access.exception");
|
|
18
18
|
const not_found_exception_1 = require("../../global/exceptions/not.found.exception");
|
|
19
19
|
const encryption_service_1 = require("../../common/services/encryption.service");
|
|
20
|
+
const scope_service_1 = require("./scope.service");
|
|
20
21
|
const hash_util_1 = require("../../global/utilities/hash.util");
|
|
21
22
|
const api_key_entity_1 = require("../entities/api.key.entity");
|
|
22
23
|
const api_scope_entity_1 = require("../entities/api.scope.entity");
|
|
23
24
|
const api_key_default_enum_1 = require("../enums/api.key.default.enum");
|
|
24
25
|
const api_key_context_1 = require("../helpers/api.key.context");
|
|
25
26
|
let ApiKeyService = ApiKeyService_1 = class ApiKeyService {
|
|
26
|
-
constructor(dataSource, encryptionService) {
|
|
27
|
+
constructor(dataSource, encryptionService, scopeService) {
|
|
27
28
|
this.dataSource = dataSource;
|
|
28
29
|
this.encryptionService = encryptionService;
|
|
30
|
+
this.scopeService = scopeService;
|
|
29
31
|
this.logger = new common_1.Logger(ApiKeyService_1.name);
|
|
30
32
|
}
|
|
31
33
|
async generateApiKey(name, options) {
|
|
@@ -80,7 +82,7 @@ let ApiKeyService = ApiKeyService_1 = class ApiKeyService {
|
|
|
80
82
|
return apiKey;
|
|
81
83
|
}
|
|
82
84
|
async grantedScopes(apiKeyUuid) {
|
|
83
|
-
const scopes = await this.grantedScopeRecords(apiKeyUuid);
|
|
85
|
+
const scopes = await this.scopeService.effectiveScopes(await this.grantedScopeRecords(apiKeyUuid));
|
|
84
86
|
return scopes.map((scope) => scope.identifier);
|
|
85
87
|
}
|
|
86
88
|
async apiKeyDetail(apiKeyUuid, reveal = false) {
|
|
@@ -175,6 +177,7 @@ exports.ApiKeyService = ApiKeyService;
|
|
|
175
177
|
exports.ApiKeyService = ApiKeyService = ApiKeyService_1 = __decorate([
|
|
176
178
|
(0, common_1.Injectable)(),
|
|
177
179
|
__metadata("design:paramtypes", [typeorm_1.DataSource,
|
|
178
|
-
encryption_service_1.EncryptionService
|
|
180
|
+
encryption_service_1.EncryptionService,
|
|
181
|
+
scope_service_1.ScopeService])
|
|
179
182
|
], ApiKeyService);
|
|
180
183
|
//# sourceMappingURL=api.key.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.key.service.js","sourceRoot":"","sources":["../../../src/auth/services/api.key.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAoD;AACpD,mCAAqC;AACrC,qCAAiD;AACjD,+EAA2E;AAC3E,qFAAgF;AAKhF,iFAA6E;AAC7E,gEAAwD;AACxD,+DAA0D;AAC1D,mEAA8D;AAE9D,wEAA8D;AAC9D,gEAA2D;
|
|
1
|
+
{"version":3,"file":"api.key.service.js","sourceRoot":"","sources":["../../../src/auth/services/api.key.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../src/auth/services/auth.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAkB,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,UAAU,EAAsB,MAAM,SAAS,CAAC;AAIzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAMrD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAI7B,qBACa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAHZ,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY;IAavC,YAAY,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAwCzE,OAAO,CAAC,aAAa;IAqBrB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,MAAM;IAad,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,MAAM;IASd,OAAO,CAAC,uBAAuB;IAQ/B,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../src/auth/services/auth.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAkB,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,UAAU,EAAsB,MAAM,SAAS,CAAC;AAIzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAMrD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAI7B,qBACa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAHZ,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY;IAavC,YAAY,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAwCzE,OAAO,CAAC,aAAa;IAqBrB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,MAAM;IAad,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,MAAM;IASd,OAAO,CAAC,uBAAuB;IAQ/B,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAqBnC,cAAc,CAClB,eAAe,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,mBAAmB,CAAC;IA4BzB,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,UAAU,CAAC;IAwBhB,WAAW,CACf,IAAI,EAAE,eAAe,EACrB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,aAAa,CAAC;IAgEnB,OAAO,CACX,eAAe,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,aAAa,CAAC;IAwCnB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjD,SAAS,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjD,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjE,MAAM,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYpD,OAAO,CAAC,SAAS;IAIjB,OAAO,KAAK,gBAAgB,GAE3B;IAED,OAAO,KAAK,WAAW,GAEtB;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../src/auth/services/auth.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../src/auth/services/auth.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import { DataSource } from 'typeorm';
|
|
2
2
|
import { DeleteResult } from '../../common/types/common.response.types';
|
|
3
|
+
import { ScopeEntity } from '../entities/scope.entity';
|
|
3
4
|
export declare class ScopeService {
|
|
4
5
|
private readonly dataSource;
|
|
5
6
|
constructor(dataSource: DataSource);
|
|
6
7
|
tenantScopes(tenantUuid: string): Promise<string[]>;
|
|
8
|
+
tenantScopeIds(tenantUuid: string): Promise<Set<string>>;
|
|
9
|
+
effectiveScopes(granted: ScopeEntity[]): Promise<ScopeEntity[]>;
|
|
10
|
+
childScopes(parentIds: string[]): Promise<ScopeEntity[]>;
|
|
11
|
+
isChildScope(scopeUuid: string): Promise<boolean>;
|
|
7
12
|
deleteScope(scopeUuid: string, actorId: string): Promise<DeleteResult>;
|
|
13
|
+
private grantedTenantScopes;
|
|
8
14
|
private get scopeRepository();
|
|
9
15
|
}
|
|
10
16
|
//# sourceMappingURL=scope.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.service.d.ts","sourceRoot":"","sources":["../../../src/auth/services/scope.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"scope.service.d.ts","sourceRoot":"","sources":["../../../src/auth/services/scope.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAA+B,MAAM,SAAS,CAAC;AAElE,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AAExE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAUvD,qBACa,YAAY;IACX,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,UAAU;IAG7C,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAYnD,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAaxD,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAgB/D,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAOxD,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAcjD,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;YAiB9D,mBAAmB;IAYjC,OAAO,KAAK,eAAe,GAE1B;CACF"}
|
|
@@ -21,23 +21,54 @@ let ScopeService = class ScopeService {
|
|
|
21
21
|
this.dataSource = dataSource;
|
|
22
22
|
}
|
|
23
23
|
async tenantScopes(tenantUuid) {
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
24
|
+
const scopes = await this.effectiveScopes(await this.grantedTenantScopes(tenantUuid));
|
|
25
|
+
return scopes.map((scope) => scope.identifier);
|
|
26
|
+
}
|
|
27
|
+
async tenantScopeIds(tenantUuid) {
|
|
28
|
+
const scopes = await this.effectiveScopes(await this.grantedTenantScopes(tenantUuid));
|
|
29
|
+
return new Set(scopes.map((scope) => scope.id));
|
|
30
|
+
}
|
|
31
|
+
async effectiveScopes(granted) {
|
|
32
|
+
if (!granted.length)
|
|
33
|
+
return [];
|
|
34
|
+
const parentIds = granted
|
|
35
|
+
.filter((scope) => !scope.parent_id)
|
|
36
|
+
.map((scope) => scope.id);
|
|
37
|
+
const children = await this.childScopes(parentIds);
|
|
38
|
+
const byId = new Map([...granted, ...children].map((scope) => [scope.id, scope]));
|
|
39
|
+
return [...byId.values()];
|
|
40
|
+
}
|
|
41
|
+
async childScopes(parentIds) {
|
|
42
|
+
if (!parentIds.length)
|
|
43
|
+
return [];
|
|
44
|
+
return this.scopeRepository.find({ where: { parent_id: (0, typeorm_1.In)(parentIds) } });
|
|
45
|
+
}
|
|
46
|
+
async isChildScope(scopeUuid) {
|
|
47
|
+
return this.scopeRepository.existsBy({
|
|
48
|
+
id: scopeUuid,
|
|
49
|
+
parent_id: (0, typeorm_1.Not)((0, typeorm_1.IsNull)()),
|
|
50
|
+
});
|
|
30
51
|
}
|
|
31
52
|
async deleteScope(scopeUuid, actorId) {
|
|
32
53
|
if (!(await this.scopeRepository.existsBy({ id: scopeUuid })))
|
|
33
54
|
throw new not_found_exception_1.NotFoundException('No scope exists for this id');
|
|
55
|
+
const children = await this.childScopes([scopeUuid]);
|
|
56
|
+
const scopeIds = [scopeUuid, ...children.map((child) => child.id)];
|
|
34
57
|
await this.dataSource.transaction(async (trx) => {
|
|
35
|
-
await trx.softDelete(tenant_scope_entity_1.TenantScopeEntity, { scope_id:
|
|
36
|
-
await trx.softDelete(api_scope_entity_1.ApiScopeEntity, { scope_id:
|
|
37
|
-
await trx.softDelete(scope_entity_1.ScopeEntity, { id:
|
|
58
|
+
await trx.softDelete(tenant_scope_entity_1.TenantScopeEntity, { scope_id: (0, typeorm_1.In)(scopeIds) });
|
|
59
|
+
await trx.softDelete(api_scope_entity_1.ApiScopeEntity, { scope_id: (0, typeorm_1.In)(scopeIds) });
|
|
60
|
+
await trx.softDelete(scope_entity_1.ScopeEntity, { id: (0, typeorm_1.In)(scopeIds) });
|
|
38
61
|
});
|
|
39
62
|
return { id: scopeUuid, deleted: true, deleted_by: actorId };
|
|
40
63
|
}
|
|
64
|
+
async grantedTenantScopes(tenantUuid) {
|
|
65
|
+
const grants = await this.dataSource
|
|
66
|
+
.getRepository(tenant_scope_entity_1.TenantScopeEntity)
|
|
67
|
+
.find({ where: { tenant_id: tenantUuid }, relations: { scope: true } });
|
|
68
|
+
return grants
|
|
69
|
+
.map((grant) => grant.scope)
|
|
70
|
+
.filter((scope) => !!scope);
|
|
71
|
+
}
|
|
41
72
|
get scopeRepository() {
|
|
42
73
|
return this.dataSource.getRepository(scope_entity_1.ScopeEntity);
|
|
43
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.service.js","sourceRoot":"","sources":["../../../src/auth/services/scope.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"scope.service.js","sourceRoot":"","sources":["../../../src/auth/services/scope.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"1749600000025.CreateSysScopesTable.d.ts","sourceRoot":"","sources":["../../src/migrations/1749600000025.CreateSysScopesTable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAEzE,qBAAa,iCAAkC,SAAQ,gBAAgB;;IAMrE,OAAO;
|
|
1
|
+
{"version":3,"file":"1749600000025.CreateSysScopesTable.d.ts","sourceRoot":"","sources":["../../src/migrations/1749600000025.CreateSysScopesTable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAEzE,qBAAa,iCAAkC,SAAQ,gBAAgB;;IAMrE,OAAO;CA8BR"}
|
|
@@ -12,6 +12,12 @@ class CreateSysScopesTable1749600000025 extends migration_utility_1.MigrationUti
|
|
|
12
12
|
this.string('identifier', { length: 100 });
|
|
13
13
|
this.string('name', { length: 150 });
|
|
14
14
|
this.text('description');
|
|
15
|
+
this.foreign({
|
|
16
|
+
name: 'parent_id',
|
|
17
|
+
foreignTable: 'sys_scopes',
|
|
18
|
+
onDelete: 'CASCADE',
|
|
19
|
+
nullable: true,
|
|
20
|
+
});
|
|
15
21
|
this.timestamps();
|
|
16
22
|
this.foreign({
|
|
17
23
|
name: 'created_by',
|
|
@@ -24,6 +30,7 @@ class CreateSysScopesTable1749600000025 extends migration_utility_1.MigrationUti
|
|
|
24
30
|
nullable: true,
|
|
25
31
|
});
|
|
26
32
|
this.index('identifier');
|
|
33
|
+
this.index('parent_id');
|
|
27
34
|
this.index('created_by');
|
|
28
35
|
this.index('updated_by');
|
|
29
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"1749600000025.CreateSysScopesTable.js","sourceRoot":"","sources":["../../src/migrations/1749600000025.CreateSysScopesTable.ts"],"names":[],"mappings":";;;AAAA,6EAAyE;AAEzE,MAAa,iCAAkC,SAAQ,oCAAgB;IACrE;QACE,KAAK,CAAC,YAAY,CAAC,CAAC;QACpB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"1749600000025.CreateSysScopesTable.js","sourceRoot":"","sources":["../../src/migrations/1749600000025.CreateSysScopesTable.ts"],"names":[],"mappings":";;;AAAA,6EAAyE;AAEzE,MAAa,iCAAkC,SAAQ,oCAAgB;IACrE;QACE,KAAK,CAAC,YAAY,CAAC,CAAC;QACpB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAGzB,IAAI,CAAC,OAAO,CAAC;YACX,IAAI,EAAE,WAAW;YACjB,YAAY,EAAE,YAAY;YAC1B,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC;YACX,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,iBAAiB;YAC/B,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC;YACX,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,iBAAiB;YAC/B,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC3B,CAAC;CACF;AApCD,8EAoCC"}
|