@neohm/nestend 3.3.5 → 3.3.6
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 +20 -9
- package/dist/admin/controllers/admin.tenant.controller.js +1 -1
- package/dist/admin/controllers/admin.tenant.controller.js.map +1 -1
- package/dist/admin/libraries/admin.user.data.processor.js +1 -1
- package/dist/admin/libraries/client.user.data.processor.js +1 -1
- package/dist/admin/libraries/scope.data.processor.d.ts.map +1 -1
- package/dist/admin/libraries/scope.data.processor.js +3 -1
- package/dist/admin/libraries/scope.data.processor.js.map +1 -1
- package/dist/admin/libraries/tenant.data.processor.d.ts.map +1 -1
- package/dist/admin/libraries/tenant.data.processor.js +3 -1
- package/dist/admin/libraries/tenant.data.processor.js.map +1 -1
- package/dist/auth/enums/role.tier.enum.d.ts +6 -0
- package/dist/auth/enums/role.tier.enum.d.ts.map +1 -0
- package/dist/auth/enums/role.tier.enum.js +10 -0
- package/dist/auth/enums/role.tier.enum.js.map +1 -0
- package/dist/auth/services/api.key.service.d.ts +3 -3
- package/dist/auth/services/api.key.service.d.ts.map +1 -1
- package/dist/auth/services/api.key.service.js +9 -6
- package/dist/auth/services/api.key.service.js.map +1 -1
- package/dist/auth/services/auth.service.d.ts +4 -0
- package/dist/auth/services/auth.service.d.ts.map +1 -1
- package/dist/auth/services/auth.service.js +35 -3
- package/dist/auth/services/auth.service.js.map +1 -1
- package/dist/auth/services/role.service.d.ts +1 -1
- package/dist/auth/services/role.service.d.ts.map +1 -1
- package/dist/auth/services/role.service.js +2 -2
- package/dist/auth/services/role.service.js.map +1 -1
- package/dist/auth/services/scope.service.d.ts +1 -1
- package/dist/auth/services/scope.service.d.ts.map +1 -1
- package/dist/auth/services/scope.service.js +2 -2
- package/dist/auth/services/scope.service.js.map +1 -1
- package/dist/common/entities/common.admin.entity.d.ts +2 -0
- package/dist/common/entities/common.admin.entity.d.ts.map +1 -1
- package/dist/common/entities/common.admin.entity.js +9 -0
- package/dist/common/entities/common.admin.entity.js.map +1 -1
- package/dist/common/entities/common.entity.d.ts +2 -0
- package/dist/common/entities/common.entity.d.ts.map +1 -1
- package/dist/common/entities/common.entity.js +9 -0
- package/dist/common/entities/common.entity.js.map +1 -1
- package/dist/common/entities/root.entity.d.ts +1 -1
- package/dist/common/entities/root.entity.d.ts.map +1 -1
- package/dist/common/entities/root.entity.js +8 -4
- package/dist/common/entities/root.entity.js.map +1 -1
- package/dist/common/enums/actor.column.enum.d.ts +5 -0
- package/dist/common/enums/actor.column.enum.d.ts.map +1 -0
- package/dist/common/enums/actor.column.enum.js +9 -0
- package/dist/common/enums/actor.column.enum.js.map +1 -0
- package/dist/common/es6.classes.d.ts +1 -2
- package/dist/common/es6.classes.d.ts.map +1 -1
- package/dist/common/es6.classes.js +0 -2
- package/dist/common/es6.classes.js.map +1 -1
- package/dist/common/jobs/system.scheduled.task.job.d.ts.map +1 -1
- package/dist/common/jobs/system.scheduled.task.job.js +1 -1
- package/dist/common/jobs/system.scheduled.task.job.js.map +1 -1
- package/dist/common/services/system.property.service.d.ts.map +1 -1
- package/dist/common/services/system.property.service.js +6 -1
- package/dist/common/services/system.property.service.js.map +1 -1
- package/dist/common/subscribers/common.subscriber.d.ts +6 -3
- package/dist/common/subscribers/common.subscriber.d.ts.map +1 -1
- package/dist/common/subscribers/common.subscriber.js +40 -12
- package/dist/common/subscribers/common.subscriber.js.map +1 -1
- package/dist/common/system.property.module.d.ts.map +1 -1
- package/dist/common/system.property.module.js +2 -8
- package/dist/common/system.property.module.js.map +1 -1
- package/dist/global/utilities/migration.utility.d.ts.map +1 -1
- package/dist/global/utilities/migration.utility.js +5 -0
- package/dist/global/utilities/migration.utility.js.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/migrations/1749600000002.CreateSysTenantsTable.d.ts.map +1 -1
- package/dist/migrations/1749600000002.CreateSysTenantsTable.js +6 -0
- package/dist/migrations/1749600000002.CreateSysTenantsTable.js.map +1 -1
- package/dist/migrations/1749600000006.CreateSysUserRolesJoinTable.d.ts.map +1 -1
- package/dist/migrations/1749600000006.CreateSysUserRolesJoinTable.js +1 -0
- package/dist/migrations/1749600000006.CreateSysUserRolesJoinTable.js.map +1 -1
- package/dist/migrations/1749600000007.CreateSysConstantTypesTable.d.ts.map +1 -1
- package/dist/migrations/1749600000007.CreateSysConstantTypesTable.js +1 -0
- package/dist/migrations/1749600000007.CreateSysConstantTypesTable.js.map +1 -1
- package/dist/migrations/1749600000008.CreateSysConstantsTable.d.ts.map +1 -1
- package/dist/migrations/1749600000008.CreateSysConstantsTable.js +1 -0
- package/dist/migrations/1749600000008.CreateSysConstantsTable.js.map +1 -1
- package/dist/migrations/1749600000009.CreateSysFailedJobsTable.d.ts.map +1 -1
- package/dist/migrations/1749600000009.CreateSysFailedJobsTable.js +1 -0
- package/dist/migrations/1749600000009.CreateSysFailedJobsTable.js.map +1 -1
- package/dist/migrations/1749600000010.CreateSysPropertiesTable.d.ts.map +1 -1
- package/dist/migrations/1749600000010.CreateSysPropertiesTable.js +1 -0
- package/dist/migrations/1749600000010.CreateSysPropertiesTable.js.map +1 -1
- package/dist/migrations/1749600000011.CreateSysNotificationsTable.d.ts.map +1 -1
- package/dist/migrations/1749600000011.CreateSysNotificationsTable.js +1 -0
- package/dist/migrations/1749600000011.CreateSysNotificationsTable.js.map +1 -1
- package/dist/migrations/1749600000012.CreateSysAuditLogsTable.d.ts.map +1 -1
- package/dist/migrations/1749600000012.CreateSysAuditLogsTable.js +1 -0
- package/dist/migrations/1749600000012.CreateSysAuditLogsTable.js.map +1 -1
- package/dist/migrations/1749600000013.CreateSysDocumentDetailsTable.d.ts.map +1 -1
- package/dist/migrations/1749600000013.CreateSysDocumentDetailsTable.js +1 -0
- package/dist/migrations/1749600000013.CreateSysDocumentDetailsTable.js.map +1 -1
- package/dist/migrations/1749600000014.CreateSysRefreshTokensTable.d.ts.map +1 -1
- package/dist/migrations/1749600000014.CreateSysRefreshTokensTable.js +1 -0
- package/dist/migrations/1749600000014.CreateSysRefreshTokensTable.js.map +1 -1
- package/dist/migrations/1749600000015.CreateSysActivityLogsTable.d.ts.map +1 -1
- package/dist/migrations/1749600000015.CreateSysActivityLogsTable.js +1 -0
- package/dist/migrations/1749600000015.CreateSysActivityLogsTable.js.map +1 -1
- package/dist/migrations/1749600000016.CreateSysUserDeviceTokensTable.d.ts.map +1 -1
- package/dist/migrations/1749600000016.CreateSysUserDeviceTokensTable.js +1 -0
- package/dist/migrations/1749600000016.CreateSysUserDeviceTokensTable.js.map +1 -1
- package/dist/migrations/1749600000017.CreateSysApiKeysTable.d.ts.map +1 -1
- package/dist/migrations/1749600000017.CreateSysApiKeysTable.js +6 -0
- package/dist/migrations/1749600000017.CreateSysApiKeysTable.js.map +1 -1
- package/dist/migrations/1749600000020.CreateSysEmailTemplatesTable.d.ts.map +1 -1
- package/dist/migrations/1749600000020.CreateSysEmailTemplatesTable.js +1 -0
- package/dist/migrations/1749600000020.CreateSysEmailTemplatesTable.js.map +1 -1
- package/dist/migrations/1749600000021.CreateSysEmailNotificationLogsTable.d.ts.map +1 -1
- package/dist/migrations/1749600000021.CreateSysEmailNotificationLogsTable.js +1 -0
- package/dist/migrations/1749600000021.CreateSysEmailNotificationLogsTable.js.map +1 -1
- package/dist/migrations/1749600000023.CreateSysAdminUserRolesJoinTable.d.ts.map +1 -1
- package/dist/migrations/1749600000023.CreateSysAdminUserRolesJoinTable.js +6 -0
- package/dist/migrations/1749600000023.CreateSysAdminUserRolesJoinTable.js.map +1 -1
- package/dist/migrations/1749600000025.CreateSysScopesTable.d.ts.map +1 -1
- package/dist/migrations/1749600000025.CreateSysScopesTable.js +6 -0
- package/dist/migrations/1749600000025.CreateSysScopesTable.js.map +1 -1
- package/dist/migrations/1749600000026.CreateSysApiScopesTable.d.ts.map +1 -1
- package/dist/migrations/1749600000026.CreateSysApiScopesTable.js +6 -0
- package/dist/migrations/1749600000026.CreateSysApiScopesTable.js.map +1 -1
- package/dist/migrations/1749600000027.CreateSysTenantScopesTable.d.ts.map +1 -1
- package/dist/migrations/1749600000027.CreateSysTenantScopesTable.js +6 -0
- package/dist/migrations/1749600000027.CreateSysTenantScopesTable.js.map +1 -1
- package/package.json +1 -1
- package/dist/common/enums/feature.flag.default.enum.d.ts +0 -4
- package/dist/common/enums/feature.flag.default.enum.d.ts.map +0 -1
- package/dist/common/enums/feature.flag.default.enum.js +0 -8
- package/dist/common/enums/feature.flag.default.enum.js.map +0 -1
- package/dist/common/enums/feature.flag.truthy.value.enum.d.ts +0 -7
- package/dist/common/enums/feature.flag.truthy.value.enum.d.ts.map +0 -1
- package/dist/common/enums/feature.flag.truthy.value.enum.js +0 -11
- package/dist/common/enums/feature.flag.truthy.value.enum.js.map +0 -1
- package/dist/common/services/feature.flag.service.d.ts +0 -24
- package/dist/common/services/feature.flag.service.d.ts.map +0 -1
- package/dist/common/services/feature.flag.service.js +0 -106
- package/dist/common/services/feature.flag.service.js.map +0 -1
- package/dist/common/types/feature.flag.types.d.ts +0 -9
- package/dist/common/types/feature.flag.types.d.ts.map +0 -1
- package/dist/common/types/feature.flag.types.js +0 -3
- package/dist/common/types/feature.flag.types.js.map +0 -1
package/README.md
CHANGED
|
@@ -52,7 +52,7 @@ import {
|
|
|
52
52
|
/* your datasource */
|
|
53
53
|
}),
|
|
54
54
|
CommonModule, // global: encryption, cache, monitoring, audit
|
|
55
|
-
SystemPropertyModule, // sys_properties get/set
|
|
55
|
+
SystemPropertyModule, // sys_properties get/set
|
|
56
56
|
QueueModule, // BullMQ queue + worker (BULL_* env vars)
|
|
57
57
|
// ...or own the Redis connection in your own config, keeping one instance:
|
|
58
58
|
// QueueModule.withConnection(queueConnection),
|
|
@@ -103,11 +103,11 @@ these are free to change without a breaking release.
|
|
|
103
103
|
|
|
104
104
|
| Area | Key exports | Notes |
|
|
105
105
|
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
106
|
-
| Entities | `RootEntity`, `CommonEntity`, `CommonAdminEntity`, `UserEntity`, `AdminUserEntity`, `SystemRoleEntity`, `SystemAdminRoleEntity`, ... | uuid PK, soft deletes, `created_by
|
|
106
|
+
| Entities | `RootEntity`, `CommonEntity`, `CommonAdminEntity`, `UserEntity`, `AdminUserEntity`, `SystemRoleEntity`, `SystemAdminRoleEntity`, ... | uuid PK, soft deletes, `created_by`/`updated_by` (+ `creator`/`updater` relations), jsonb `attributes`; entity-level `findOneOrNew`, `hardDelete`, `restore`, `paginate` statics plus a row-wise `softDelete()` |
|
|
107
107
|
| Migrations | `MigrationUtility`, `SeederUtility` (the 26 table migrations ship in `dist/migrations` — glob them, they are not barrel exports) | fluent `this.string()`, `this.numeric()`, `addRecord()` seeding |
|
|
108
108
|
| Queue | `QueueModule`, `QueueModule.withConnection()`, `QueueService`, `CommonJob` | BullMQ `@Processor`/`WorkerHost` consumer; auto-discovered jobs, duplicate prevention, recurring schedulers, 1-day TTL, retries, failures persisted to `sys_failed_jobs`; connection from `BULL_REDIS_*` or supplied by the app — never register `BullModule.forRoot()` yourself, two roots race over the worker's connection |
|
|
109
109
|
| Scheduled events | `SystemScheduledTaskEntity`, `ScheduledEventEntity`, `ScheduleKind`, `ScheduleSpec`, `IsCronExpression` | schedule definitions in `sys_scheduled_tasks` → events in `sys_scheduled_events`; interval / cron / once specs with timezones, drift-free slots, horizon materialisation, catch-up + overlap policies, fire-once dispatch with backoff, cadence via `SCHEDULED_EVENT_MIN` |
|
|
110
|
-
| Auth | `AuthModule`, `AuthService.validateRole()`, `Auth`, `JwtMiddleware`
|
|
110
|
+
| Auth | `AuthModule`, `AuthService.validateRole()`, `RoleTier`, `Auth`, `JwtMiddleware` | imperative auth (open by default); `<module>.<tier>` role hierarchy (manager > writer > viewer); 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
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 |
|
|
@@ -116,7 +116,6 @@ these are free to change without a breaking release.
|
|
|
116
116
|
| Notifications | `NotificationModule`, `NotificationService`, `FcmPushNotificationService` | in-app rows + FCM push (optional `firebase-admin`); device token registry |
|
|
117
117
|
| Email (SES) | `EmailNotificationService`, `ProcessEmailNotification`, `EmailTemplateEntity`, `EmailNotificationLogEntity` | templates in `sys_email_templates` rendered by a remote service, dispatched via SES per recipient (to/cc/bcc); logged to `sys_email_notification_logs` outside production; dispatch skipped when `AWS_SES_FROM_ADDRESS` unset |
|
|
118
118
|
| Audit | `AuditService` | `saveAuditLog(old, new)` with changed-value diffing into `sys_audit_logs` |
|
|
119
|
-
| Feature flags | `FeatureFlagService` | on/off, percentage rollouts, allow lists — stored as `feature.*` system properties |
|
|
120
119
|
| Cache | `CacheService` | Redis, TTL objects (`{days, hours, min}`), transparent encryption |
|
|
121
120
|
| Encryption | `EncryptionService` | AES-256-GCM, scrypt-derived keys |
|
|
122
121
|
| System properties | `SystemPropertyModule`, `SystemPropertyService` | cached + optionally encrypted key/value settings in `sys_properties` |
|
|
@@ -127,7 +126,7 @@ these are free to change without a breaking release.
|
|
|
127
126
|
| List endpoints | `CommonListProcessor`, `CommonListFilterDto`, `FilterDto`, `CommonListFilterConfig` | allowlisted columns, parameterised operators (`eq`…`isNull`), typed value casting (`str`/`num`/`date`/`bool`/`null`), multi-sort + paginated on the read replica |
|
|
128
127
|
| Outbound HTTP | `RemoteRequestService`, `ApiRequestTypeEnum`, `ApiContentTypeEnum` | injectable `fetch` wrapper (global via `CommonModule`); `getApiResponse<T>()` parses JSON/text and throws `OperationException` on non-2xx, `getApiRawResponse()` returns the raw `Response`; JSON + form-urlencoded body serialisation |
|
|
129
128
|
| Observability | `LoggingInterceptor`, `MonitoringInterceptor`, `MonitoringService` | Sentry auto-registers when `@sentry/node` + `SENTRY_DSN` present; pluggable `MonitoringAdapter` |
|
|
130
|
-
| Jobs/Events | `CommonJob`, `CommonSubscriber`, `CommonDataProcessor` | dispatch/handle separation, discovery-based registration, worker-event lifecycle, column-change detection, field error collection |
|
|
129
|
+
| Jobs/Events | `CommonJob`, `CommonSubscriber`, `CommonDataProcessor` | dispatch/handle separation, discovery-based registration, worker-event lifecycle, column-change detection, `created_by`/`updated_by` stamped from the `Auth` context in `beforeInsert`/`beforeUpdate`, field error collection |
|
|
131
130
|
| Constants & maps | `baseEntityConstants`, `baseJobConstants`, `baseEntityMaps`, `baseJobMaps` | centralised dotted identifiers (`as const`) plus identifier → class maps of every concrete entity and job (abstract bases excluded); map keys are computed from the constants, so renames propagate at compile time |
|
|
132
131
|
|
|
133
132
|
## Environment Variables
|
|
@@ -184,9 +183,21 @@ handler with `AuthService.validateRole()`. It reads the current user from
|
|
|
184
183
|
(`sys_auth_sessions`) hasn't been invalidated (logout) or expired — and returns
|
|
185
184
|
the user row with its roles, throwing `AccessException` (403) when there's no
|
|
186
185
|
active session. Pass a role identifier to gate on a specific role:
|
|
187
|
-
`validateRole('
|
|
186
|
+
`validateRole('invoice.viewer')`. This keeps authorization next to your business
|
|
188
187
|
logic, so layering tenant/plan/role checks is just more code.
|
|
189
188
|
|
|
189
|
+
Role checks understand seniority. Identifiers named `<module>.<tier>` — where the
|
|
190
|
+
tier is one of `RoleTier`: **manager** > **writer** > **viewer** — are satisfied by
|
|
191
|
+
any equal or more senior tier of the same module, so gating a read endpoint at
|
|
192
|
+
`invoice.viewer` also admits `invoice.writer` and `invoice.manager` without
|
|
193
|
+
listing them. The module half must match exactly (`payroll.manager` never clears
|
|
194
|
+
`invoice.viewer`), and an identifier that isn't tiered — `tenant.editor`, or a
|
|
195
|
+
bare `manager` — still matches by exact string, so roles outside the convention
|
|
196
|
+
behave as before. Rank comes from the declaration order of `RoleTier`, the same
|
|
197
|
+
derivation `AdminAccessService` uses for `GlobalAdminRoles`; adding a tier is an
|
|
198
|
+
enum edit. Nothing changes in the schema — a `sys_roles` row named to the
|
|
199
|
+
convention gets the hierarchy for free.
|
|
200
|
+
|
|
190
201
|
For a feature that a whole organization is either enabled for or not, use
|
|
191
202
|
`validateAccess(scopeIdentifier, roleIdentifier?)`: it first checks that the
|
|
192
203
|
caller's tenant holds that scope (`sys_tenant_scopes` against the `sys_scopes`
|
|
@@ -195,7 +206,7 @@ sold to them?" and "is this person allowed to use it?" in that order.
|
|
|
195
206
|
|
|
196
207
|
```ts
|
|
197
208
|
const { user } = await this.authService.validateAccess('billing.invoices');
|
|
198
|
-
const { user } = await this.authService.validateAccess('billing.invoices', '
|
|
209
|
+
const { user } = await this.authService.validateAccess('billing.invoices', 'invoice.writer');
|
|
199
210
|
```
|
|
200
211
|
|
|
201
212
|
`AuthController` (mounted at `/auth`) exposes the ready-made flows: `POST
|
|
@@ -219,7 +230,7 @@ organization is stored on the session row (and its refresh-token row, so a
|
|
|
219
230
|
rotation keeps it) and stamped onto the context user's `tenant_id` by
|
|
220
231
|
`JwtMiddleware`, so `validateAccess()` and every processor reading
|
|
221
232
|
`user.tenant_id` work unchanged. Because the token belongs to the real actor,
|
|
222
|
-
`created_by`
|
|
233
|
+
`created_by`/`updated_by` record who actually did the work. Role assertions yield to the
|
|
223
234
|
grant — the account holds no roles inside the tenant — but scope checks never
|
|
224
235
|
do, so impersonation cannot reach a feature the organization was not sold.
|
|
225
236
|
`GET /auth/impersonation/tenants` lists the organizations available (also from an
|
|
@@ -983,7 +994,7 @@ constraints, so resaving a record must not collide with itself.
|
|
|
983
994
|
|
|
984
995
|
| Processor | Update | Notes |
|
|
985
996
|
| --------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
986
|
-
| `TenantDataProcessor` | yes | Never re-runs onboarding: `onboarded_at`, `created_by` and the welcome email belong to first registration
|
|
997
|
+
| `TenantDataProcessor` | yes | Never re-runs onboarding: `onboarded_at`, `created_by` and the welcome email belong to first registration; an edit stamps `updated_by` instead |
|
|
987
998
|
| `ScheduledTaskDataProcessor` | yes | Changing `schedule`/`timezone`/`start_from` also re-seats the cursor and drops not-yet-due occurrences |
|
|
988
999
|
| `ClientUserDataProcessor`, `AdminUserDataProcessor` | not yet | Their DTOs carry `id`, but the processors are still create-only. Password and role changes are intended to get their own endpoints rather than riding on an upsert |
|
|
989
1000
|
| `BulkUserDataProcessor` | n/a | `AddBulkUsersDto` is a batch wrapper, not a record; each `BulkUserItemDto` carries an `id` |
|
|
@@ -65,7 +65,7 @@ __decorate([
|
|
|
65
65
|
(0, common_1.Post)(),
|
|
66
66
|
(0, swagger_1.ApiOperation)({
|
|
67
67
|
summary: 'Onboard a new client tenant, or update an existing one.',
|
|
68
|
-
description: "Send an `id` to edit that tenant; omit it to onboard a new one. Omitted optional fields keep their stored value, except `scope_ids` — that list replaces the tenant's scope grants, so an omitted one revokes them all. An edit never re-runs onboarding — `onboarded_at`, `created_by` and the welcome email belong to first registration
|
|
68
|
+
description: "Send an `id` to edit that tenant; omit it to onboard a new one. Omitted optional fields keep their stored value, except `scope_ids` — that list replaces the tenant's scope grants, so an omitted one revokes them all. An edit never re-runs onboarding — `onboarded_at`, `created_by` and the welcome email belong to first registration, and an edit records the acting admin as `updated_by`. Requires the global super admin role.",
|
|
69
69
|
}),
|
|
70
70
|
__param(0, (0, common_1.Body)()),
|
|
71
71
|
__metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.tenant.controller.js","sourceRoot":"","sources":["../../../src/admin/controllers/admin.tenant.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAOwB;AACxB,6CAAuE;AACvE,mEAA+D;AAC/D,2EAAsE;AACtE,2EAAsE;AACtE,8EAAyE;AACzE,kFAA6E;AAC7E,8EAAyE;AACzE,2DAAsD;AACtD,6DAAwD;AACxD,iGAA2F;AAC3F,uEAAmE;AACnE,iFAA4E;AAMrE,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAChC,YACmB,kBAAsC,EACtC,UAAsB,EACtB,sBAA8C;QAF9C,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,eAAU,GAAV,UAAU,CAAY;QACtB,2BAAsB,GAAtB,sBAAsB,CAAwB;IAC9D,CAAC;IAQE,AAAN,KAAK,CAAC,OAAO,CAAS,GAAiB;QACrC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC;QAEpE,OAAO,IAAI,2CAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC,OAAO,CACvE,GAAG,CACJ,CAAC;IACJ,CAAC;IAOK,AAAN,KAAK,CAAC,IAAI,CAAS,GAAkB;QACnC,MAAM,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,EAAE,CAAC;QACtD,OAAO,IAAI,2CAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;IAQK,AAAN,KAAK,CAAC,MAAM,CAAU,EAAE,EAAE,EAAmB;QAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,EAAE,CAAC;QAEtD,MAAM,MAAM,GAAG,MAAM,4BAAY,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,0BAAiB,CAAC,8BAA8B,CAAC,CAAC;QAKzE,MAAM,YAAY,GAAG,MAAM,uCAAiB,CAAC,IAAI,CAAC;YAChD,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;YACxB,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;SAC3B,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;YAC3B,MAAM,EAAE,YAAY;iBACjB,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC;iBACvC,MAAM,CAAC,CAAC,KAAK,EAAsC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;SAClE,CAAC,CAAC;IACL,CAAC;IAQK,AAAN,KAAK,CAAC,MAAM,CAAU,EAAE,EAAE,EAAmB;QAC3C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC;QACpE,OAAO,IAAI,+CAAqB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC;CACF,CAAA;AApEY,sDAAqB;AAa1B;IANL,IAAA,aAAI,GAAE;IACN,IAAA,sBAAY,EAAC;QACZ,OAAO,EAAE,yDAAyD;QAClE,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"admin.tenant.controller.js","sourceRoot":"","sources":["../../../src/admin/controllers/admin.tenant.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,7 +93,7 @@ class AdminUserDataProcessor extends common_data_processor_1.CommonDataProcessor
|
|
|
93
93
|
const existingRoleIds = new Set(existingRoles.map((role) => role.role_id));
|
|
94
94
|
for (const existingRole of existingRoles) {
|
|
95
95
|
if (!roleIds.includes(existingRole.role_id)) {
|
|
96
|
-
await existingRole.
|
|
96
|
+
await existingRole.softDelete();
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
99
|
for (const roleId of roleIds) {
|
|
@@ -111,7 +111,7 @@ class ClientUserDataProcessor extends user_data_processor_1.UserDataProcessor {
|
|
|
111
111
|
const roleIds = new Set((this.payload?.role_ids ?? []).map((role_id) => role_id));
|
|
112
112
|
for (const existingRole of existingRoles)
|
|
113
113
|
if (!roleIds.has(existingRole.role_id))
|
|
114
|
-
await existingRole.
|
|
114
|
+
await existingRole.softDelete();
|
|
115
115
|
for (const roleId of roleIds)
|
|
116
116
|
if (!existingRoleIds.has(roleId))
|
|
117
117
|
await user_role_entity_1.UserRoleEntity.create({
|
|
@@ -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;AAOpD,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;YAoBR,GAAG;
|
|
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;AAOpD,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;YAoBR,GAAG;CAmBlB"}
|
|
@@ -29,8 +29,10 @@ class ScopeDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
|
29
29
|
let scope = scope_entity_1.ScopeEntity.create({ created_by: this.actor.id });
|
|
30
30
|
if (body.id) {
|
|
31
31
|
const exists = await scope_entity_1.ScopeEntity.findOne({ where: { id: body.id } });
|
|
32
|
-
if (exists)
|
|
32
|
+
if (exists) {
|
|
33
33
|
scope = exists;
|
|
34
|
+
scope.updated_by = this.actor.id;
|
|
35
|
+
}
|
|
34
36
|
}
|
|
35
37
|
scope.identifier = body.identifier;
|
|
36
38
|
scope.name = body.name;
|
|
@@ -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;AAQ/D,MAAa,kBAAmB,SAAQ,2CAAmB;IAGzD,YAA6B,KAAsB;QACjD,KAAK,EAAE,CAAC;QADmB,UAAK,GAAL,KAAK,CAAiB;IAEnD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAoB;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;QAE1B,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,0BAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC;QAI3D,MAAM,KAAK,GAAG,MAAM,0BAAW,CAAC,OAAO,CAAC;YACtC,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;SACvC,CAAC,CAAC;QACH,IAAI,KAAK,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE;YAC/B,IAAI,CAAC,cAAc,CACjB,YAAY,EACZ,6CAA6C,CAC9C,CAAC;QAEJ,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,GAAG;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;QAC1B,IAAI,KAAK,GAAG,0BAAW,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QAE9D,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,MAAM,0BAAW,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACrE,IAAI,MAAM;
|
|
1
|
+
{"version":3,"file":"scope.data.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/scope.data.processor.ts"],"names":[],"mappings":";;;AAAA,wFAAmF;AAEnF,mEAA+D;AAQ/D,MAAa,kBAAmB,SAAQ,2CAAmB;IAGzD,YAA6B,KAAsB;QACjD,KAAK,EAAE,CAAC;QADmB,UAAK,GAAL,KAAK,CAAiB;IAEnD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAoB;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;QAE1B,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,0BAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC;QAI3D,MAAM,KAAK,GAAG,MAAM,0BAAW,CAAC,OAAO,CAAC;YACtC,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;SACvC,CAAC,CAAC;QACH,IAAI,KAAK,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE;YAC/B,IAAI,CAAC,cAAc,CACjB,YAAY,EACZ,6CAA6C,CAC9C,CAAC;QAEJ,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,GAAG;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;QAC1B,IAAI,KAAK,GAAG,0BAAW,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QAE9D,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,MAAM,0BAAW,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACrE,IAAI,MAAM,EAAE,CAAC;gBACX,KAAK,GAAG,MAAM,CAAC;gBACf,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,CAAC;QACH,CAAC;QAED,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAErC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AApDD,gDAoDC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/tenant.data.processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAGxE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;
|
|
1
|
+
{"version":3,"file":"tenant.data.processor.d.ts","sourceRoot":"","sources":["../../../src/admin/libraries/tenant.data.processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAGxE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAS3F,qBAAa,mBAAoB,SAAQ,mBAAmB;IAKxD,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IALzC,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwC;gBAG5C,KAAK,EAAE,eAAe,EACtB,sBAAsB,EAAE,sBAAsB;IAK3D,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;YAM7C,QAAQ;YAmBR,cAAc;YAYd,GAAG;YAmDH,SAAS;YA6BT,YAAY;CAiB3B"}
|
|
@@ -72,6 +72,8 @@ class TenantDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
|
72
72
|
tenant.contract_expires_at = body.contract_expires_at
|
|
73
73
|
? new Date(body.contract_expires_at)
|
|
74
74
|
: undefined;
|
|
75
|
+
if (!isNew)
|
|
76
|
+
tenant.updated_by = this.actor.id;
|
|
75
77
|
await tenant.save();
|
|
76
78
|
await this.setScopes(tenant);
|
|
77
79
|
if (isNew)
|
|
@@ -86,7 +88,7 @@ class TenantDataProcessor extends common_data_processor_1.CommonDataProcessor {
|
|
|
86
88
|
const existingScopeIds = new Set(existing.map((tenantScope) => tenantScope.scope_id));
|
|
87
89
|
for (const tenantScope of existing)
|
|
88
90
|
if (!scopeIds.has(tenantScope.scope_id))
|
|
89
|
-
await tenantScope.
|
|
91
|
+
await tenantScope.softDelete();
|
|
90
92
|
for (const scopeId of scopeIds)
|
|
91
93
|
if (!existingScopeIds.has(scopeId))
|
|
92
94
|
await tenant_scope_entity_1.TenantScopeEntity.create({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant.data.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/tenant.data.processor.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,qCAA6B;AAC7B,wFAAmF;AAEnF,mEAA+D;AAC/D,iFAA4E;AAC5E,uEAAmE;
|
|
1
|
+
{"version":3,"file":"tenant.data.processor.js","sourceRoot":"","sources":["../../../src/admin/libraries/tenant.data.processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"role.tier.enum.d.ts","sourceRoot":"","sources":["../../../src/auth/enums/role.tier.enum.ts"],"names":[],"mappings":"AASA,oBAAY,QAAQ;IAElB,OAAO,YAAY;IAEnB,MAAM,WAAW;IAEjB,MAAM,WAAW;CAClB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RoleTier = void 0;
|
|
4
|
+
var RoleTier;
|
|
5
|
+
(function (RoleTier) {
|
|
6
|
+
RoleTier["MANAGER"] = "manager";
|
|
7
|
+
RoleTier["WRITER"] = "writer";
|
|
8
|
+
RoleTier["VIEWER"] = "viewer";
|
|
9
|
+
})(RoleTier || (exports.RoleTier = RoleTier = {}));
|
|
10
|
+
//# sourceMappingURL=role.tier.enum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"role.tier.enum.js","sourceRoot":"","sources":["../../../src/auth/enums/role.tier.enum.ts"],"names":[],"mappings":";;;AASA,IAAY,QAOX;AAPD,WAAY,QAAQ;IAElB,+BAAmB,CAAA;IAEnB,6BAAiB,CAAA;IAEjB,6BAAiB,CAAA;AACnB,CAAC,EAPW,QAAQ,wBAAR,QAAQ,QAOnB"}
|
|
@@ -18,9 +18,9 @@ export declare class ApiKeyService {
|
|
|
18
18
|
apiKeyDetail(apiKeyUuid: string, reveal?: boolean): Promise<ApiKeyDetail>;
|
|
19
19
|
hasScope(apiKey: ApiKeyEntity, scope: string): Promise<boolean>;
|
|
20
20
|
validateAccess(scopeIdentifier: string): ApiKeyAccess;
|
|
21
|
-
revokeApiKey(apiKeyUuid: string): Promise<void>;
|
|
22
|
-
disableApiKey(apiKeyUuid: string,
|
|
23
|
-
deleteApiKey(apiKeyUuid: string,
|
|
21
|
+
revokeApiKey(apiKeyUuid: string, actorId?: string): Promise<void>;
|
|
22
|
+
disableApiKey(apiKeyUuid: string, actorId: string): Promise<DisableResult>;
|
|
23
|
+
deleteApiKey(apiKeyUuid: string, actorId: string): Promise<DeleteResult>;
|
|
24
24
|
listApiKeys(): Promise<ApiKeyEntity[]>;
|
|
25
25
|
private grantedScopeRecords;
|
|
26
26
|
private grants;
|
|
@@ -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;AAE7E,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;AAYhC,qBACa,aAAa;IAItB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAJpC,SAAS,CAAC,QAAQ,CAAC,MAAM,SAAkC;gBAGxC,UAAU,EAAE,UAAU,EACtB,iBAAiB,EAAE,iBAAiB;IAGjD,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;IAiB5D,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAapD,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,GAAG,OAAO,CAAC,IAAI,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;AAE7E,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;AAYhC,qBACa,aAAa;IAItB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAJpC,SAAS,CAAC,QAAQ,CAAC,MAAM,SAAkC;gBAGxC,UAAU,EAAE,UAAU,EACtB,iBAAiB,EAAE,iBAAiB;IAGjD,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;IAiB5D,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAapD,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"}
|
|
@@ -113,7 +113,7 @@ let ApiKeyService = ApiKeyService_1 = class ApiKeyService {
|
|
|
113
113
|
throw new access_exception_1.AccessException('This Api key is not bound to an organization.');
|
|
114
114
|
return { tenant: granted.tenant };
|
|
115
115
|
}
|
|
116
|
-
async revokeApiKey(apiKeyUuid) {
|
|
116
|
+
async revokeApiKey(apiKeyUuid, actorId) {
|
|
117
117
|
const apiKey = await this.apiKeyRepository.findOne({
|
|
118
118
|
where: { id: apiKeyUuid },
|
|
119
119
|
});
|
|
@@ -121,27 +121,30 @@ let ApiKeyService = ApiKeyService_1 = class ApiKeyService {
|
|
|
121
121
|
throw new not_found_exception_1.NotFoundException(`API key "${apiKeyUuid}" was not found.`);
|
|
122
122
|
apiKey.revoked_at = new Date();
|
|
123
123
|
apiKey.is_active = false;
|
|
124
|
+
if (actorId)
|
|
125
|
+
apiKey.updated_by = actorId;
|
|
124
126
|
await this.apiKeyRepository.save(apiKey);
|
|
125
127
|
}
|
|
126
|
-
async disableApiKey(apiKeyUuid,
|
|
128
|
+
async disableApiKey(apiKeyUuid, actorId) {
|
|
127
129
|
const apiKey = await this.apiKeyRepository.findOne({
|
|
128
130
|
where: { id: apiKeyUuid },
|
|
129
131
|
});
|
|
130
132
|
if (!apiKey)
|
|
131
133
|
throw new not_found_exception_1.NotFoundException('No API key exists for this id');
|
|
132
134
|
apiKey.is_active = false;
|
|
135
|
+
apiKey.updated_by = actorId;
|
|
133
136
|
await this.apiKeyRepository.save(apiKey);
|
|
134
|
-
return { id: apiKeyUuid, disabled: true, disabled_by:
|
|
137
|
+
return { id: apiKeyUuid, disabled: true, disabled_by: actorId };
|
|
135
138
|
}
|
|
136
|
-
async deleteApiKey(apiKeyUuid,
|
|
139
|
+
async deleteApiKey(apiKeyUuid, actorId) {
|
|
137
140
|
if (!(await this.apiKeyRepository.existsBy({ id: apiKeyUuid })))
|
|
138
141
|
throw new not_found_exception_1.NotFoundException('No API key exists for this id');
|
|
139
142
|
await this.dataSource.transaction(async (trx) => {
|
|
140
|
-
await trx.update(api_key_entity_1.ApiKeyEntity, { id: apiKeyUuid }, { is_active: false, revoked_at: new Date() });
|
|
143
|
+
await trx.update(api_key_entity_1.ApiKeyEntity, { id: apiKeyUuid }, { is_active: false, revoked_at: new Date(), updated_by: actorId });
|
|
141
144
|
await trx.softDelete(api_scope_entity_1.ApiScopeEntity, { api_key_id: apiKeyUuid });
|
|
142
145
|
await trx.softDelete(api_key_entity_1.ApiKeyEntity, { id: apiKeyUuid });
|
|
143
146
|
});
|
|
144
|
-
return { id: apiKeyUuid, deleted: true, deleted_by:
|
|
147
|
+
return { id: apiKeyUuid, deleted: true, deleted_by: actorId };
|
|
145
148
|
}
|
|
146
149
|
async listApiKeys() {
|
|
147
150
|
return this.apiKeyRepository.find({ order: { created_at: 'DESC' } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.key.service.js","sourceRoot":"","sources":["../../../src/auth/services/api.key.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"api.key.service.js","sourceRoot":"","sources":["../../../src/auth/services/api.key.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,10 @@ export declare class AuthService {
|
|
|
11
11
|
private readonly scopeService;
|
|
12
12
|
constructor(jwtService: JwtService, cacheService: CacheService, dataSource: DataSource, scopeService: ScopeService);
|
|
13
13
|
validateRole(roleIdentifier?: string): Promise<AuthenticatedAccess>;
|
|
14
|
+
private satisfiesRole;
|
|
15
|
+
private tierOf;
|
|
16
|
+
private moduleOf;
|
|
17
|
+
private rankOf;
|
|
14
18
|
private impersonationYieldsRole;
|
|
15
19
|
assertTenantLogin(user: UserEntity): void;
|
|
16
20
|
validateAccess(scopeIdentifier: string, roleIdentifier?: string): Promise<AuthenticatedAccess>;
|
|
@@ -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;
|
|
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;AAKrD,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;IAoCzE,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,MAAM;IAad,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,MAAM;IASd,OAAO,CAAC,uBAAuB;IAQ/B,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAiBnC,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"}
|
|
@@ -18,6 +18,7 @@ const system_refresh_token_entity_1 = require("../entities/system.refresh.token.
|
|
|
18
18
|
const system_auth_session_entity_1 = require("../entities/system.auth.session.entity");
|
|
19
19
|
const user_entity_1 = require("../entities/user.entity");
|
|
20
20
|
const user_role_entity_1 = require("../entities/user.role.entity");
|
|
21
|
+
const role_tier_enum_1 = require("../enums/role.tier.enum");
|
|
21
22
|
const user_type_enum_1 = require("../enums/user.type.enum");
|
|
22
23
|
const cache_service_1 = require("../../common/services/cache.service");
|
|
23
24
|
const scope_service_1 = require("./scope.service");
|
|
@@ -42,13 +43,44 @@ let AuthService = class AuthService {
|
|
|
42
43
|
const roles = userRoles
|
|
43
44
|
.map((userRole) => userRole.role)
|
|
44
45
|
.filter((role) => !!role);
|
|
45
|
-
const holdsRole = !roleIdentifier ||
|
|
46
|
-
roles.some((role) => role.identifier === roleIdentifier);
|
|
46
|
+
const holdsRole = !roleIdentifier || this.satisfiesRole(roleIdentifier, roles);
|
|
47
47
|
if (!holdsRole && !this.impersonationYieldsRole(user)) {
|
|
48
|
-
|
|
48
|
+
const requirement = this.tierOf(roleIdentifier)
|
|
49
|
+
? `at least the "${roleIdentifier}"`
|
|
50
|
+
: `the "${roleIdentifier}"`;
|
|
51
|
+
throw new access_exception_1.AccessException(`This action requires ${requirement} role.`);
|
|
49
52
|
}
|
|
50
53
|
return { user, roles };
|
|
51
54
|
}
|
|
55
|
+
satisfiesRole(required, roles) {
|
|
56
|
+
const requiredTier = this.tierOf(required);
|
|
57
|
+
if (!requiredTier)
|
|
58
|
+
return roles.some((role) => role.identifier === required);
|
|
59
|
+
const requiredModule = this.moduleOf(required);
|
|
60
|
+
const requiredRank = this.rankOf(requiredTier);
|
|
61
|
+
return roles.some((role) => {
|
|
62
|
+
const heldTier = this.tierOf(role.identifier);
|
|
63
|
+
return (!!heldTier &&
|
|
64
|
+
this.moduleOf(role.identifier) === requiredModule &&
|
|
65
|
+
this.rankOf(heldTier) >= requiredRank);
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
tierOf(roleIdentifier) {
|
|
69
|
+
const separator = roleIdentifier.lastIndexOf('.');
|
|
70
|
+
if (separator < 1)
|
|
71
|
+
return null;
|
|
72
|
+
const tier = roleIdentifier.slice(separator + 1);
|
|
73
|
+
return Object.values(role_tier_enum_1.RoleTier).includes(tier)
|
|
74
|
+
? tier
|
|
75
|
+
: null;
|
|
76
|
+
}
|
|
77
|
+
moduleOf(roleIdentifier) {
|
|
78
|
+
return roleIdentifier.slice(0, roleIdentifier.lastIndexOf('.'));
|
|
79
|
+
}
|
|
80
|
+
rankOf(tier) {
|
|
81
|
+
const seniority = Object.values(role_tier_enum_1.RoleTier);
|
|
82
|
+
return seniority.length - seniority.indexOf(tier);
|
|
83
|
+
}
|
|
52
84
|
impersonationYieldsRole(user) {
|
|
53
85
|
return auth_1.Auth.isImpersonating() && !!user.has_global_access;
|
|
54
86
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../src/auth/services/auth.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAmE;AACnE,qCAAyD;AACzD,qCAAyD;AACzD,mCAAgD;AAChD,yFAAmF;AACnF,uFAAiF;AACjF,yDAAqD;AACrD,mEAA8D;
|
|
1
|
+
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../src/auth/services/auth.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAmE;AACnE,qCAAyD;AACzD,qCAAyD;AACzD,mCAAgD;AAChD,yFAAmF;AACnF,uFAAiF;AACjF,yDAAqD;AACrD,mEAA8D;AAE9D,4DAAmD;AACnD,4DAAmD;AACnD,uEAAmE;AACnE,mDAA+C;AAC/C,+EAA2E;AAO3E,0CAAuC;AACvC,gEAA0D;AAGnD,IAAM,WAAW,GAAjB,MAAM,WAAW;IACtB,YACmB,UAAsB,EACtB,YAA0B,EAC1B,UAAsB,EACtB,YAA0B;QAH1B,eAAU,GAAV,UAAU,CAAY;QACtB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,eAAU,GAAV,UAAU,CAAY;QACtB,iBAAY,GAAZ,YAAY,CAAc;IAC1C,CAAC;IAYJ,KAAK,CAAC,YAAY,CAAC,cAAuB;QACxC,MAAM,IAAI,GAAG,WAAI,CAAC,IAAI,EAA4B,CAAC;QACnD,IAAI,CAAC,IAAI;YACP,MAAM,IAAI,kCAAe,CAAC,6CAA6C,CAAC,CAAC;QAE3E,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,iCAAc,CAAC,CAAC,IAAI,CAAC;YACzE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE;YAC3B,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SAC1B,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,SAAS;aACpB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;aAChC,MAAM,CAAC,CAAC,IAAI,EAAoC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAE9D,MAAM,SAAS,GACb,CAAC,cAAc,IAAI,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QAE/D,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;YACtD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;gBAC7C,CAAC,CAAC,iBAAiB,cAAc,GAAG;gBACpC,CAAC,CAAC,QAAQ,cAAc,GAAG,CAAC;YAC9B,MAAM,IAAI,kCAAe,CAAC,wBAAwB,WAAW,QAAQ,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC;IAYO,aAAa,CAAC,QAAgB,EAAE,KAAyB;QAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,CAAC,YAAY;YACf,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC;QAE5D,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAE/C,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9C,OAAO,CACL,CAAC,CAAC,QAAQ;gBACV,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,cAAc;gBACjD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,YAAY,CACtC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAGO,MAAM,CAAC,cAAsB;QACnC,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAGlD,IAAI,SAAS,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAE/B,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACjD,OAAO,MAAM,CAAC,MAAM,CAAC,yBAAQ,CAAC,CAAC,QAAQ,CAAC,IAAgB,CAAC;YACvD,CAAC,CAAE,IAAiB;YACpB,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAGO,QAAQ,CAAC,cAAsB;QACrC,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAClE,CAAC;IAOO,MAAM,CAAC,IAAc;QAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,yBAAQ,CAAC,CAAC;QAC1C,OAAO,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAMO,uBAAuB,CAAC,IAAgB;QAC9C,OAAO,WAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;IAC5D,CAAC;IAMD,iBAAiB,CAAC,IAAgB;QAChC,IAAI,IAAI,CAAC,SAAS,KAAK,yBAAQ,CAAC,WAAW,EAAE,CAAC;YAC5C,MAAM,IAAI,kCAAe,CACvB,2DAA2D,CAC5D,CAAC;QACJ,CAAC;IACH,CAAC;IAWD,KAAK,CAAC,cAAc,CAClB,eAAuB,EACvB,cAAuB;QAEvB,MAAM,IAAI,GAAG,WAAI,CAAC,IAAI,EAA4B,CAAC;QACnD,IAAI,CAAC,IAAI;YACP,MAAM,IAAI,kCAAe,CAAC,6CAA6C,CAAC,CAAC;QAI3E,IAAI,CAAC,IAAI,CAAC,SAAS;YACjB,MAAM,IAAI,kCAAe,CACvB,+CAA+C,CAChD,CAAC;QAEJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEpE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;YACnC,MAAM,IAAI,kCAAe,CACvB,mDAAmD,CACpD,CAAC;QAEJ,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAC3C,CAAC;IAQD,KAAK,CAAC,mBAAmB,CACvB,KAAa,EACb,QAAgB;QAEhB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU;aAC/B,aAAa,CAAC,wBAAU,CAAC;aACzB,kBAAkB,CAAC,MAAM,CAAC;aAC1B,SAAS,CAAC,eAAe,CAAC;aAC1B,KAAK,CAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,CAAC;aACvC,MAAM,EAAE,CAAC;QAEZ,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,MAAM,4BAAW,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAChD,MAAM,IAAI,8BAAqB,CAAC,2BAA2B,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,4BAAW,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3E,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,8BAAqB,CAAC,2BAA2B,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,8BAAqB,CAAC,0BAA0B,CAAC,CAAC;QAC9D,CAAC;QAED,OAAQ,IAA8B,CAAC,QAAQ,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,WAAW,CACf,IAAqB,EACrB,OAA2B;QAE3B,MAAM,GAAG,GAAG,IAAA,mBAAU,GAAE,CAAC;QACzB,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACrD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;QACvD,MAAM,QAAQ,GAAG,OAAO,EAAE,sBAAsB,IAAI,IAAI,CAAC;QAEzD,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACrE,MAAM,gBAAgB,GAAG,IAAI,IAAI,CAC/B,IAAI,CAAC,GAAG,EAAE,GAAG,4BAAW,CAAC,aAAa,CAAC,YAAY,CAAC,CACrD,CAAC;QACF,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CACzB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACtB,OAAO,EAAE,IAAI,CAAC,EAAE;YAChB,QAAQ,EAAE,KAAK;YACf,SAAS,EAAE,QAAQ;YACnB,kBAAkB,EAAE,iBAAiB;YACrC,UAAU,EAAE,gBAAgB;YAC5B,cAAc,EAAE,IAAI;SACrB,CAAC,CACH,CAAC;QAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CACjD;YACE,GAAG,EAAE,IAAI,CAAC,EAAE;YACZ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG;YACH,GAAG,EAAE,iBAAiB;YACtB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvC,EACD;YACE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;YACvC,SAAS,EAAE,YAA2C;SACvD,CACF,CAAC;QAEF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAClD,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EACnC;YACE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB;YACxC,SAAS,EAAE,aAA4C;SACxD,CACF,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,IAAI,IAAI,CACxB,IAAI,CAAC,GAAG,EAAE,GAAG,4BAAW,CAAC,aAAa,CAAC,aAAa,CAAC,CACtD,CAAC;QAEF,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAC9B,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;YAC3B,OAAO,EAAE,IAAI,CAAC,EAAE;YAChB,QAAQ,EAAE,KAAK;YACf,SAAS,EAAE,QAAQ;YACnB,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,OAAO,EAAE,UAAU,IAAI,IAAI;YACvC,UAAU,EAAE,OAAO,EAAE,UAAU,IAAI,IAAI;SACxC,CAAC,CACH,CAAC;QAEF,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,OAAO,CACX,eAAuB,EACvB,OAA2B;QAE3B,IAAI,OAAuC,CAAC;QAC5C,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,eAAe,EAAE;gBAC3D,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB;aACzC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,8BAAqB,CAAC,uBAAuB,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACjD,KAAK,EAAE;gBACL,OAAO,EAAE,OAAO,CAAC,GAAG;gBACpB,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,IAAA,gBAAM,GAAE;aACrB;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM;YACT,MAAM,IAAI,8BAAqB,CAC7B,4CAA4C,CAC7C,CAAC;QACJ,IAAI,MAAM,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE;YAChC,MAAM,IAAI,8BAAqB,CAAC,2BAA2B,CAAC,CAAC;QAE/D,MAAM,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;QAC/B,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAIzC,OAAO,IAAI,CAAC,WAAW,CACrB,EAAE,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EACzC;YACE,GAAG,OAAO;YACV,sBAAsB,EAAE,MAAM,CAAC,SAAS,IAAI,SAAS;SACtD,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,QAAgB;QACrC,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAChC,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAA,gBAAM,GAAE,EAAE,EAC3C,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,EAAE,CAC3B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,eAAuB;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAClD,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAChC,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,IAAA,gBAAM,GAAE,EAAE,EAC/C,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,EAAE,CAC3B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,GAAW,EAAE,UAAkB;QACrD,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,aAAa,GAAG,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAGD,KAAK,CAAC,MAAM,CAAC,eAAuB;QAClC,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAEtC,MAAM,iBAAiB,GAAG,WAAI,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAC3B,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,QAAQ,EAAE,KAAK,EAAE,EAC1D,EAAE,cAAc,EAAE,IAAI,IAAI,EAAE,EAAE,CAC/B,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,KAAa;QAC7B,OAAO,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,IAAY,gBAAgB;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,sDAAwB,CAAC,CAAC;IACjE,CAAC;IAED,IAAY,WAAW;QACrB,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,oDAAuB,CAAC,CAAC;IAChE,CAAC;CACF,CAAA;AApVY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;qCAGoB,gBAAU;QACR,4BAAY;QACd,oBAAU;QACR,4BAAY;GALlC,WAAW,CAoVvB"}
|
|
@@ -3,7 +3,7 @@ import { DeleteResult } from '../../common/types/common.response.types';
|
|
|
3
3
|
export declare class RoleService {
|
|
4
4
|
private readonly dataSource;
|
|
5
5
|
constructor(dataSource: DataSource);
|
|
6
|
-
deleteRole(roleUuid: string,
|
|
6
|
+
deleteRole(roleUuid: string, actorId: string): Promise<DeleteResult>;
|
|
7
7
|
private get roleRepository();
|
|
8
8
|
}
|
|
9
9
|
//# sourceMappingURL=role.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role.service.d.ts","sourceRoot":"","sources":["../../../src/auth/services/role.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAc,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AAQxE,qBACa,WAAW;IACV,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,UAAU;IAS7C,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"role.service.d.ts","sourceRoot":"","sources":["../../../src/auth/services/role.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAc,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AAQxE,qBACa,WAAW;IACV,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,UAAU;IAS7C,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAY1E,OAAO,KAAK,cAAc,GAEzB;CACF"}
|
|
@@ -19,14 +19,14 @@ let RoleService = class RoleService {
|
|
|
19
19
|
constructor(dataSource) {
|
|
20
20
|
this.dataSource = dataSource;
|
|
21
21
|
}
|
|
22
|
-
async deleteRole(roleUuid,
|
|
22
|
+
async deleteRole(roleUuid, actorId) {
|
|
23
23
|
if (!(await this.roleRepository.existsBy({ id: roleUuid })))
|
|
24
24
|
throw new not_found_exception_1.NotFoundException('No role exists for this id');
|
|
25
25
|
await this.dataSource.transaction(async (trx) => {
|
|
26
26
|
await trx.softDelete(user_role_entity_1.UserRoleEntity, { role_id: roleUuid });
|
|
27
27
|
await trx.softDelete(system_role_entity_1.SystemRoleEntity, { id: roleUuid });
|
|
28
28
|
});
|
|
29
|
-
return { id: roleUuid, deleted: true, deleted_by:
|
|
29
|
+
return { id: roleUuid, deleted: true, deleted_by: actorId };
|
|
30
30
|
}
|
|
31
31
|
get roleRepository() {
|
|
32
32
|
return this.dataSource.getRepository(system_role_entity_1.SystemRoleEntity);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role.service.js","sourceRoot":"","sources":["../../../src/auth/services/role.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,qCAAiD;AACjD,qFAAgF;AAEhF,uEAAkE;AAClE,mEAA8D;AAOvD,IAAM,WAAW,GAAjB,MAAM,WAAW;IACtB,YAA6B,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IASvD,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"role.service.js","sourceRoot":"","sources":["../../../src/auth/services/role.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,qCAAiD;AACjD,qFAAgF;AAEhF,uEAAkE;AAClE,mEAA8D;AAOvD,IAAM,WAAW,GAAjB,MAAM,WAAW;IACtB,YAA6B,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IASvD,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,OAAe;QAChD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;YACzD,MAAM,IAAI,uCAAiB,CAAC,4BAA4B,CAAC,CAAC;QAE5D,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC9C,MAAM,GAAG,CAAC,UAAU,CAAC,iCAAc,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC5D,MAAM,GAAG,CAAC,UAAU,CAAC,qCAAgB,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IAC9D,CAAC;IAED,IAAY,cAAc;QACxB,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,qCAAgB,CAAC,CAAC;IACzD,CAAC;CACF,CAAA;AAzBY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;qCAE8B,oBAAU;GADxC,WAAW,CAyBvB"}
|
|
@@ -4,7 +4,7 @@ export declare class ScopeService {
|
|
|
4
4
|
private readonly dataSource;
|
|
5
5
|
constructor(dataSource: DataSource);
|
|
6
6
|
tenantScopes(tenantUuid: string): Promise<string[]>;
|
|
7
|
-
deleteScope(scopeUuid: string,
|
|
7
|
+
deleteScope(scopeUuid: string, actorId: string): Promise<DeleteResult>;
|
|
8
8
|
private get scopeRepository();
|
|
9
9
|
}
|
|
10
10
|
//# 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,EAAc,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AASxE,qBACa,YAAY;IACX,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,UAAU;IAG7C,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAkBnD,WAAW,
|
|
1
|
+
{"version":3,"file":"scope.service.d.ts","sourceRoot":"","sources":["../../../src/auth/services/scope.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAc,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AASxE,qBACa,YAAY;IACX,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,UAAU;IAG7C,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAkBnD,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAa5E,OAAO,KAAK,eAAe,GAE1B;CACF"}
|
|
@@ -28,7 +28,7 @@ let ScopeService = class ScopeService {
|
|
|
28
28
|
.map((tenantScope) => tenantScope.scope?.identifier)
|
|
29
29
|
.filter((identifier) => !!identifier);
|
|
30
30
|
}
|
|
31
|
-
async deleteScope(scopeUuid,
|
|
31
|
+
async deleteScope(scopeUuid, actorId) {
|
|
32
32
|
if (!(await this.scopeRepository.existsBy({ id: scopeUuid })))
|
|
33
33
|
throw new not_found_exception_1.NotFoundException('No scope exists for this id');
|
|
34
34
|
await this.dataSource.transaction(async (trx) => {
|
|
@@ -36,7 +36,7 @@ let ScopeService = class ScopeService {
|
|
|
36
36
|
await trx.softDelete(api_scope_entity_1.ApiScopeEntity, { scope_id: scopeUuid });
|
|
37
37
|
await trx.softDelete(scope_entity_1.ScopeEntity, { id: scopeUuid });
|
|
38
38
|
});
|
|
39
|
-
return { id: scopeUuid, deleted: true, deleted_by:
|
|
39
|
+
return { id: scopeUuid, deleted: true, deleted_by: actorId };
|
|
40
40
|
}
|
|
41
41
|
get scopeRepository() {
|
|
42
42
|
return this.dataSource.getRepository(scope_entity_1.ScopeEntity);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.service.js","sourceRoot":"","sources":["../../../src/auth/services/scope.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,qCAAiD;AACjD,qFAAgF;AAEhF,mEAA8D;AAC9D,2DAAuD;AACvD,yEAAoE;AAO7D,IAAM,YAAY,GAAlB,MAAM,YAAY;IACvB,YAA6B,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAGvD,KAAK,CAAC,YAAY,CAAC,UAAkB;QACnC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU;aACvC,aAAa,CAAC,uCAAiB,CAAC;aAChC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QAE1E,OAAO,YAAY;aAChB,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC;aACnD,MAAM,CAAC,CAAC,UAAU,EAAwB,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAChE,CAAC;IAUD,KAAK,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"scope.service.js","sourceRoot":"","sources":["../../../src/auth/services/scope.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,qCAAiD;AACjD,qFAAgF;AAEhF,mEAA8D;AAC9D,2DAAuD;AACvD,yEAAoE;AAO7D,IAAM,YAAY,GAAlB,MAAM,YAAY;IACvB,YAA6B,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAGvD,KAAK,CAAC,YAAY,CAAC,UAAkB;QACnC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU;aACvC,aAAa,CAAC,uCAAiB,CAAC;aAChC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QAE1E,OAAO,YAAY;aAChB,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC;aACnD,MAAM,CAAC,CAAC,UAAU,EAAwB,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAChE,CAAC;IAUD,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,OAAe;QAClD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;YAC3D,MAAM,IAAI,uCAAiB,CAAC,6BAA6B,CAAC,CAAC;QAE7D,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC9C,MAAM,GAAG,CAAC,UAAU,CAAC,uCAAiB,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;YACjE,MAAM,GAAG,CAAC,UAAU,CAAC,iCAAc,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;YAC9D,MAAM,GAAG,CAAC,UAAU,CAAC,0BAAW,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IAC/D,CAAC;IAED,IAAY,eAAe;QACzB,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,0BAAW,CAAC,CAAC;IACpD,CAAC;CACF,CAAA;AAtCY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;qCAE8B,oBAAU;GADxC,YAAY,CAsCxB"}
|
|
@@ -3,5 +3,7 @@ import { AdminUserEntity } from '../../auth/entities/admin.user.entity';
|
|
|
3
3
|
export declare abstract class CommonAdminEntity extends RootEntity {
|
|
4
4
|
created_by: string;
|
|
5
5
|
creator: AdminUserEntity;
|
|
6
|
+
updated_by: string;
|
|
7
|
+
updater: AdminUserEntity;
|
|
6
8
|
}
|
|
7
9
|
//# sourceMappingURL=common.admin.entity.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.admin.entity.d.ts","sourceRoot":"","sources":["../../../src/common/entities/common.admin.entity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE,8BAAsB,iBAAkB,SAAQ,UAAU;IAExD,UAAU,EAAE,MAAM,CAAC;IAInB,OAAO,EAAE,eAAe,CAAC;CAC1B"}
|
|
1
|
+
{"version":3,"file":"common.admin.entity.d.ts","sourceRoot":"","sources":["../../../src/common/entities/common.admin.entity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE,8BAAsB,iBAAkB,SAAQ,UAAU;IAExD,UAAU,EAAE,MAAM,CAAC;IAInB,OAAO,EAAE,eAAe,CAAC;IAGzB,UAAU,EAAE,MAAM,CAAC;IAInB,OAAO,EAAE,eAAe,CAAC;CAC1B"}
|