@nestjs-dash/nestjs 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/nestjs-dash.js +2126 -0
- package/dist/client/nestjs-dash.js.map +7 -0
- package/dist/controllers/admin-api.controller.d.ts +41 -0
- package/dist/controllers/admin-api.controller.d.ts.map +1 -0
- package/dist/controllers/admin-api.controller.js +299 -0
- package/dist/controllers/admin-api.controller.js.map +1 -0
- package/dist/controllers/admin-auth.controller.d.ts +17 -0
- package/dist/controllers/admin-auth.controller.d.ts.map +1 -0
- package/dist/controllers/admin-auth.controller.js +111 -0
- package/dist/controllers/admin-auth.controller.js.map +1 -0
- package/dist/controllers/admin-upload.controller.d.ts +50 -0
- package/dist/controllers/admin-upload.controller.d.ts.map +1 -0
- package/dist/controllers/admin-upload.controller.js +210 -0
- package/dist/controllers/admin-upload.controller.js.map +1 -0
- package/dist/controllers/admin.controller.d.ts +69 -0
- package/dist/controllers/admin.controller.d.ts.map +1 -0
- package/dist/controllers/admin.controller.js +1062 -0
- package/dist/controllers/admin.controller.js.map +1 -0
- package/dist/decorators/admin-action.decorator.d.ts +4 -0
- package/dist/decorators/admin-action.decorator.d.ts.map +1 -0
- package/dist/decorators/admin-action.decorator.js +6 -0
- package/dist/decorators/admin-action.decorator.js.map +1 -0
- package/dist/decorators/admin-page.decorator.d.ts +3 -0
- package/dist/decorators/admin-page.decorator.d.ts.map +1 -0
- package/dist/decorators/admin-page.decorator.js +6 -0
- package/dist/decorators/admin-page.decorator.js.map +1 -0
- package/dist/decorators/admin-resource.decorator.d.ts +3 -0
- package/dist/decorators/admin-resource.decorator.d.ts.map +1 -0
- package/dist/decorators/admin-resource.decorator.js +6 -0
- package/dist/decorators/admin-resource.decorator.js.map +1 -0
- package/dist/features/audit/audit.interceptor.d.ts +17 -0
- package/dist/features/audit/audit.interceptor.d.ts.map +1 -0
- package/dist/features/audit/audit.interceptor.js +94 -0
- package/dist/features/audit/audit.interceptor.js.map +1 -0
- package/dist/features/audit/index.d.ts +2 -0
- package/dist/features/audit/index.d.ts.map +1 -0
- package/dist/features/audit/index.js +2 -0
- package/dist/features/audit/index.js.map +1 -0
- package/dist/features/auth/auth.types.d.ts +13 -0
- package/dist/features/auth/auth.types.d.ts.map +1 -0
- package/dist/features/auth/auth.types.js +2 -0
- package/dist/features/auth/auth.types.js.map +1 -0
- package/dist/features/auth/index.d.ts +12 -0
- package/dist/features/auth/index.d.ts.map +1 -0
- package/dist/features/auth/index.js +7 -0
- package/dist/features/auth/index.js.map +1 -0
- package/dist/features/auth/public.decorator.d.ts +3 -0
- package/dist/features/auth/public.decorator.d.ts.map +1 -0
- package/dist/features/auth/public.decorator.js +4 -0
- package/dist/features/auth/public.decorator.js.map +1 -0
- package/dist/features/auth/resolvers/credentials.resolver.d.ts +10 -0
- package/dist/features/auth/resolvers/credentials.resolver.d.ts.map +1 -0
- package/dist/features/auth/resolvers/credentials.resolver.js +35 -0
- package/dist/features/auth/resolvers/credentials.resolver.js.map +1 -0
- package/dist/features/auth/resolvers/custom.resolver.d.ts +7 -0
- package/dist/features/auth/resolvers/custom.resolver.d.ts.map +1 -0
- package/dist/features/auth/resolvers/custom.resolver.js +9 -0
- package/dist/features/auth/resolvers/custom.resolver.js.map +1 -0
- package/dist/features/auth/resolvers/jwt.resolver.d.ts +10 -0
- package/dist/features/auth/resolvers/jwt.resolver.d.ts.map +1 -0
- package/dist/features/auth/resolvers/jwt.resolver.js +24 -0
- package/dist/features/auth/resolvers/jwt.resolver.js.map +1 -0
- package/dist/features/auth/resolvers/passport.resolver.d.ts +9 -0
- package/dist/features/auth/resolvers/passport.resolver.d.ts.map +1 -0
- package/dist/features/auth/resolvers/passport.resolver.js +15 -0
- package/dist/features/auth/resolvers/passport.resolver.js.map +1 -0
- package/dist/features/auth/session.d.ts +9 -0
- package/dist/features/auth/session.d.ts.map +1 -0
- package/dist/features/auth/session.js +55 -0
- package/dist/features/auth/session.js.map +1 -0
- package/dist/features/media/enrich.d.ts +13 -0
- package/dist/features/media/enrich.d.ts.map +1 -0
- package/dist/features/media/enrich.js +56 -0
- package/dist/features/media/enrich.js.map +1 -0
- package/dist/features/media/index.d.ts +3 -0
- package/dist/features/media/index.d.ts.map +1 -0
- package/dist/features/media/index.js +3 -0
- package/dist/features/media/index.js.map +1 -0
- package/dist/features/media/media.helpers.d.ts +13 -0
- package/dist/features/media/media.helpers.d.ts.map +1 -0
- package/dist/features/media/media.helpers.js +63 -0
- package/dist/features/media/media.helpers.js.map +1 -0
- package/dist/guards/admin-auth.guard.d.ts +17 -0
- package/dist/guards/admin-auth.guard.d.ts.map +1 -0
- package/dist/guards/admin-auth.guard.js +82 -0
- package/dist/guards/admin-auth.guard.js.map +1 -0
- package/dist/guards/admin-policy.guard.d.ts +10 -0
- package/dist/guards/admin-policy.guard.d.ts.map +1 -0
- package/dist/guards/admin-policy.guard.js +60 -0
- package/dist/guards/admin-policy.guard.js.map +1 -0
- package/dist/helpers/action.helpers.d.ts +6 -0
- package/dist/helpers/action.helpers.d.ts.map +1 -0
- package/dist/helpers/action.helpers.js +14 -0
- package/dist/helpers/action.helpers.js.map +1 -0
- package/dist/helpers/data-source.helpers.d.ts +4 -0
- package/dist/helpers/data-source.helpers.d.ts.map +1 -0
- package/dist/helpers/data-source.helpers.js +14 -0
- package/dist/helpers/data-source.helpers.js.map +1 -0
- package/dist/helpers/icons.d.ts +8 -0
- package/dist/helpers/icons.d.ts.map +1 -0
- package/dist/helpers/icons.js +50 -0
- package/dist/helpers/icons.js.map +1 -0
- package/dist/helpers/nav-collapse.helper.d.ts +6 -0
- package/dist/helpers/nav-collapse.helper.d.ts.map +1 -0
- package/dist/helpers/nav-collapse.helper.js +25 -0
- package/dist/helpers/nav-collapse.helper.js.map +1 -0
- package/dist/helpers/relation.helpers.d.ts +17 -0
- package/dist/helpers/relation.helpers.d.ts.map +1 -0
- package/dist/helpers/relation.helpers.js +98 -0
- package/dist/helpers/relation.helpers.js.map +1 -0
- package/dist/helpers/shell-assets.helper.d.ts +6 -0
- package/dist/helpers/shell-assets.helper.d.ts.map +1 -0
- package/dist/helpers/shell-assets.helper.js +14 -0
- package/dist/helpers/shell-assets.helper.js.map +1 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/modules/admin-api-host.module.d.ts +3 -0
- package/dist/modules/admin-api-host.module.d.ts.map +1 -0
- package/dist/modules/admin-api-host.module.js +17 -0
- package/dist/modules/admin-api-host.module.js.map +1 -0
- package/dist/modules/admin-core.module.d.ts +3 -0
- package/dist/modules/admin-core.module.d.ts.map +1 -0
- package/dist/modules/admin-core.module.js +37 -0
- package/dist/modules/admin-core.module.js.map +1 -0
- package/dist/modules/admin-feature.module.d.ts +3 -0
- package/dist/modules/admin-feature.module.d.ts.map +1 -0
- package/dist/modules/admin-feature.module.js +14 -0
- package/dist/modules/admin-feature.module.js.map +1 -0
- package/dist/modules/admin-ui-host.module.d.ts +3 -0
- package/dist/modules/admin-ui-host.module.d.ts.map +1 -0
- package/dist/modules/admin-ui-host.module.js +19 -0
- package/dist/modules/admin-ui-host.module.js.map +1 -0
- package/dist/modules/admin.module.d.ts +18 -0
- package/dist/modules/admin.module.d.ts.map +1 -0
- package/dist/modules/admin.module.js +197 -0
- package/dist/modules/admin.module.js.map +1 -0
- package/dist/plugin-contracts.d.ts +88 -0
- package/dist/plugin-contracts.d.ts.map +1 -0
- package/dist/plugin-contracts.js +4 -0
- package/dist/plugin-contracts.js.map +1 -0
- package/dist/plugins/openapi/admin-openapi.d.ts +21 -0
- package/dist/plugins/openapi/admin-openapi.d.ts.map +1 -0
- package/dist/plugins/openapi/admin-openapi.js +237 -0
- package/dist/plugins/openapi/admin-openapi.js.map +1 -0
- package/dist/providers/admin-page.explorer.d.ts +8 -0
- package/dist/providers/admin-page.explorer.d.ts.map +1 -0
- package/dist/providers/admin-page.explorer.js +43 -0
- package/dist/providers/admin-page.explorer.js.map +1 -0
- package/dist/providers/admin-page.registry.d.ts +9 -0
- package/dist/providers/admin-page.registry.d.ts.map +1 -0
- package/dist/providers/admin-page.registry.js +39 -0
- package/dist/providers/admin-page.registry.js.map +1 -0
- package/dist/providers/admin-panel.bootstrap.d.ts +23 -0
- package/dist/providers/admin-panel.bootstrap.d.ts.map +1 -0
- package/dist/providers/admin-panel.bootstrap.js +122 -0
- package/dist/providers/admin-panel.bootstrap.js.map +1 -0
- package/dist/providers/admin-resource.explorer.d.ts +8 -0
- package/dist/providers/admin-resource.explorer.d.ts.map +1 -0
- package/dist/providers/admin-resource.explorer.js +43 -0
- package/dist/providers/admin-resource.explorer.js.map +1 -0
- package/dist/providers/admin-resource.registry.d.ts +9 -0
- package/dist/providers/admin-resource.registry.d.ts.map +1 -0
- package/dist/providers/admin-resource.registry.js +39 -0
- package/dist/providers/admin-resource.registry.js.map +1 -0
- package/dist/react/admin-app.d.ts +14 -0
- package/dist/react/admin-app.d.ts.map +1 -0
- package/dist/react/admin-app.js +421 -0
- package/dist/react/admin-app.js.map +1 -0
- package/dist/react/document.d.ts +13 -0
- package/dist/react/document.d.ts.map +1 -0
- package/dist/react/document.js +47 -0
- package/dist/react/document.js.map +1 -0
- package/dist/react/nav-client.d.ts +10 -0
- package/dist/react/nav-client.d.ts.map +1 -0
- package/dist/react/nav-client.js +153 -0
- package/dist/react/nav-client.js.map +1 -0
- package/dist/react/theme.d.ts +6 -0
- package/dist/react/theme.d.ts.map +1 -0
- package/dist/react/theme.js +51 -0
- package/dist/react/theme.js.map +1 -0
- package/dist/react/types.d.ts +107 -0
- package/dist/react/types.d.ts.map +1 -0
- package/dist/react/types.js +2 -0
- package/dist/react/types.js.map +1 -0
- package/dist/tokens.d.ts +106 -0
- package/dist/tokens.d.ts.map +1 -0
- package/dist/tokens.js +74 -0
- package/dist/tokens.js.map +1 -0
- package/dist/views/admin.views.d.ts +114 -0
- package/dist/views/admin.views.d.ts.map +1 -0
- package/dist/views/admin.views.js +212 -0
- package/dist/views/admin.views.js.map +1 -0
- package/package.json +98 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin.controller.js","sourceRoot":"","sources":["../../src/controllers/admin.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const ADMIN_ACTION_METADATA = "nestjs-dash:action";
|
|
2
|
+
export type StandardAdminAction = 'view' | 'create' | 'update' | 'delete';
|
|
3
|
+
export declare function AdminAction(action: StandardAdminAction | (string & {})): MethodDecorator;
|
|
4
|
+
//# sourceMappingURL=admin-action.decorator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-action.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/admin-action.decorator.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAc1E,wBAAgB,WAAW,CAAC,MAAM,EAAE,mBAAmB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,eAAe,CAExF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-action.decorator.js","sourceRoot":"","sources":["../../src/decorators/admin-action.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAgB1D,MAAM,UAAU,WAAW,CAAC,MAA2C;IACrE,OAAO,WAAW,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-page.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/admin-page.decorator.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,0BAA0B,CAAC;AAS3D,wBAAgB,SAAS,IAAI,cAAc,CAE1C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-page.decorator.js","sourceRoot":"","sources":["../../src/decorators/admin-page.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAuB,CAAC;AAS3D,MAAM,UAAU,SAAS;IACvB,OAAO,WAAW,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-resource.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/admin-resource.decorator.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AAOnE,wBAAgB,aAAa,IAAI,cAAc,CAE9C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-resource.decorator.js","sourceRoot":"","sources":["../../src/decorators/admin-resource.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,MAAM,uBAAuB,GAAG,2BAA2B,CAAC;AAOnE,MAAM,UAAU,aAAa;IAC3B,OAAO,WAAW,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;AACpD,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Panel } from '@nestjs-dash/core';
|
|
2
|
+
import { type CallHandler, type ExecutionContext, type NestInterceptor } from '@nestjs/common';
|
|
3
|
+
import { Reflector } from '@nestjs/core';
|
|
4
|
+
import { type Observable } from 'rxjs';
|
|
5
|
+
import { type AdminAuditServiceContract } from '../../plugin-contracts.js';
|
|
6
|
+
export declare class AdminAuditInterceptor implements NestInterceptor {
|
|
7
|
+
private readonly panel;
|
|
8
|
+
private readonly audit;
|
|
9
|
+
private readonly reflector;
|
|
10
|
+
constructor(panel: Panel, audit: AdminAuditServiceContract | null, reflector: Reflector);
|
|
11
|
+
intercept(context: ExecutionContext, next: CallHandler): Promise<Observable<unknown>>;
|
|
12
|
+
private bulkActionName;
|
|
13
|
+
private resolveAfter;
|
|
14
|
+
private actorId;
|
|
15
|
+
private actorLabel;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=audit.interceptor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit.interceptor.d.ts","sourceRoot":"","sources":["../../../src/features/audit/audit.interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAIH,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAO,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAE5C,OAAO,EAEH,KAAK,yBAAyB,EACjC,MAAM,2BAA2B,CAAC;AAiBnC,qBACa,qBAAsB,YAAW,eAAe;IAE9B,OAAO,CAAC,QAAQ,CAAC,KAAK;IAOjD,OAAO,CAAC,QAAQ,CAAC,KAAK;IACH,OAAO,CAAC,QAAQ,CAAC,SAAS;gBARD,KAAK,EAAE,KAAK,EAOvC,KAAK,EAAE,yBAAyB,GAAG,IAAI,EACpB,SAAS,EAAE,SAAS;IAGpD,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAqD3F,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,UAAU;CAKnB"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
11
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
|
+
};
|
|
13
|
+
import { Inject, Injectable, Optional, } from '@nestjs/common';
|
|
14
|
+
import { Reflector } from '@nestjs/core';
|
|
15
|
+
import { tap } from 'rxjs';
|
|
16
|
+
import { ADMIN_ACTION_METADATA } from '../../decorators/admin-action.decorator.js';
|
|
17
|
+
import { NESTJS_DASH_AUDIT_SERVICE, } from '../../plugin-contracts.js';
|
|
18
|
+
import { NESTJS_DASH_PANEL } from '../../tokens.js';
|
|
19
|
+
let AdminAuditInterceptor = class AdminAuditInterceptor {
|
|
20
|
+
constructor(panel, audit, reflector) {
|
|
21
|
+
this.panel = panel;
|
|
22
|
+
this.audit = audit;
|
|
23
|
+
this.reflector = reflector;
|
|
24
|
+
}
|
|
25
|
+
async intercept(context, next) {
|
|
26
|
+
const audit = this.audit;
|
|
27
|
+
if (!audit?.isEnabled()) {
|
|
28
|
+
return next.handle();
|
|
29
|
+
}
|
|
30
|
+
const decoratorAction = this.reflector.get(ADMIN_ACTION_METADATA, context.getHandler());
|
|
31
|
+
if (!decoratorAction || decoratorAction === 'view') {
|
|
32
|
+
return next.handle();
|
|
33
|
+
}
|
|
34
|
+
const request = context.switchToHttp().getRequest();
|
|
35
|
+
const params = request.params ?? {};
|
|
36
|
+
const resourceSlug = params.slug ?? params.pageSlug;
|
|
37
|
+
if (!resourceSlug) {
|
|
38
|
+
return next.handle();
|
|
39
|
+
}
|
|
40
|
+
const recordId = params.id ?? null;
|
|
41
|
+
const actionName = params.action ?? this.bulkActionName(decoratorAction, request) ?? decoratorAction;
|
|
42
|
+
const adapter = recordId && (decoratorAction === 'update' || decoratorAction === 'delete')
|
|
43
|
+
? this.panel.getResourceAdapter(resourceSlug)
|
|
44
|
+
: undefined;
|
|
45
|
+
const before = adapter && recordId ? await adapter.findOne(recordId).catch(() => null) : null;
|
|
46
|
+
return next.handle().pipe(tap(() => {
|
|
47
|
+
void audit.record({
|
|
48
|
+
actorId: this.actorId(request),
|
|
49
|
+
actorLabel: this.actorLabel(request),
|
|
50
|
+
action: actionName,
|
|
51
|
+
resourceSlug,
|
|
52
|
+
recordId,
|
|
53
|
+
before: before,
|
|
54
|
+
after: this.resolveAfter(actionName, request),
|
|
55
|
+
});
|
|
56
|
+
}));
|
|
57
|
+
}
|
|
58
|
+
bulkActionName(decoratorAction, request) {
|
|
59
|
+
if (decoratorAction !== 'bulk-action')
|
|
60
|
+
return undefined;
|
|
61
|
+
const bulkAction = request.body?.bulkAction;
|
|
62
|
+
return typeof bulkAction === 'string' && bulkAction ? bulkAction : undefined;
|
|
63
|
+
}
|
|
64
|
+
resolveAfter(action, request) {
|
|
65
|
+
if (action === 'delete')
|
|
66
|
+
return null;
|
|
67
|
+
const body = { ...request.body };
|
|
68
|
+
if (request.params.relation)
|
|
69
|
+
body.relation = request.params.relation;
|
|
70
|
+
if (request.params.relatedId)
|
|
71
|
+
body.relatedId = request.params.relatedId;
|
|
72
|
+
return Object.keys(body).length > 0 ? body : null;
|
|
73
|
+
}
|
|
74
|
+
actorId(request) {
|
|
75
|
+
const user = request.nestjsDashUser;
|
|
76
|
+
const id = user?.id ?? user?.sub ?? user?.email;
|
|
77
|
+
return id != null ? String(id) : null;
|
|
78
|
+
}
|
|
79
|
+
actorLabel(request) {
|
|
80
|
+
const user = request.nestjsDashUser;
|
|
81
|
+
const label = user?.email ?? user?.name ?? user?.username ?? user?.id;
|
|
82
|
+
return label != null ? String(label) : null;
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
AdminAuditInterceptor = __decorate([
|
|
86
|
+
Injectable(),
|
|
87
|
+
__param(0, Inject(NESTJS_DASH_PANEL)),
|
|
88
|
+
__param(1, Optional()),
|
|
89
|
+
__param(1, Inject(NESTJS_DASH_AUDIT_SERVICE)),
|
|
90
|
+
__param(2, Inject(Reflector)),
|
|
91
|
+
__metadata("design:paramtypes", [Function, Object, Reflector])
|
|
92
|
+
], AdminAuditInterceptor);
|
|
93
|
+
export { AdminAuditInterceptor };
|
|
94
|
+
//# sourceMappingURL=audit.interceptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit.interceptor.js","sourceRoot":"","sources":["../../../src/features/audit/audit.interceptor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/features/audit/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/features/audit/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ExecutionContext } from '@nestjs/common';
|
|
2
|
+
import type { Request, Response } from 'express';
|
|
3
|
+
export type AdminAuthUser = Record<string, unknown>;
|
|
4
|
+
export interface AdminAuthResult {
|
|
5
|
+
user: AdminAuthUser;
|
|
6
|
+
}
|
|
7
|
+
export interface AdminAuthResolver {
|
|
8
|
+
authenticate?(request: Request, context: ExecutionContext): Promise<AdminAuthResult | false> | AdminAuthResult | false;
|
|
9
|
+
loginPath?: string;
|
|
10
|
+
login?(request: Request, response: Response, body: Record<string, string>): Promise<AdminAuthResult | false> | AdminAuthResult | false;
|
|
11
|
+
logout?(request: Request, response: Response): Promise<void> | void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=auth.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.types.d.ts","sourceRoot":"","sources":["../../../src/features/auth/auth.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGjD,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEpD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,aAAa,CAAC;CACrB;AAQD,MAAM,WAAW,iBAAiB;IAOhC,YAAY,CAAC,CACX,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,GAAG,KAAK,CAAC,GAAG,eAAe,GAAG,KAAK,CAAC;IAM9D,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,KAAK,CAAC,CACJ,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC3B,OAAO,CAAC,eAAe,GAAG,KAAK,CAAC,GAAG,eAAe,GAAG,KAAK,CAAC;IAE9D,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACrE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.types.js","sourceRoot":"","sources":["../../../src/features/auth/auth.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type { AdminAuthResolver, AdminAuthResult, AdminAuthUser } from './auth.types.js';
|
|
2
|
+
export { ADMIN_PUBLIC_KEY, AdminPublic } from './public.decorator.js';
|
|
3
|
+
export { credentialsAuthResolver } from './resolvers/credentials.resolver.js';
|
|
4
|
+
export type { CredentialsAuthResolverOptions } from './resolvers/credentials.resolver.js';
|
|
5
|
+
export { customAuthResolver } from './resolvers/custom.resolver.js';
|
|
6
|
+
export { jwtAuthResolver } from './resolvers/jwt.resolver.js';
|
|
7
|
+
export type { JwtAuthResolverOptions } from './resolvers/jwt.resolver.js';
|
|
8
|
+
export { passportAuthResolver } from './resolvers/passport.resolver.js';
|
|
9
|
+
export type { PassportAuthResolverOptions } from './resolvers/passport.resolver.js';
|
|
10
|
+
export { createSessionToken, parseCookies, verifySessionToken } from './session.js';
|
|
11
|
+
export type { SignedSessionOptions } from './session.js';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/features/auth/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,YAAY,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,YAAY,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACpF,YAAY,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { ADMIN_PUBLIC_KEY, AdminPublic } from './public.decorator.js';
|
|
2
|
+
export { credentialsAuthResolver } from './resolvers/credentials.resolver.js';
|
|
3
|
+
export { customAuthResolver } from './resolvers/custom.resolver.js';
|
|
4
|
+
export { jwtAuthResolver } from './resolvers/jwt.resolver.js';
|
|
5
|
+
export { passportAuthResolver } from './resolvers/passport.resolver.js';
|
|
6
|
+
export { createSessionToken, parseCookies, verifySessionToken } from './session.js';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/features/auth/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAE9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.decorator.d.ts","sourceRoot":"","sources":["../../../src/features/auth/public.decorator.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,uBAAuB,CAAC;AAGrD,eAAO,MAAM,WAAW,QAAO,eAAe,GAAG,cACZ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.decorator.js","sourceRoot":"","sources":["../../../src/features/auth/public.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,MAAM,gBAAgB,GAAG,oBAAoB,CAAC;AAGrD,MAAM,CAAC,MAAM,WAAW,GAAG,GAAqC,EAAE,CAChE,WAAW,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Request } from 'express';
|
|
2
|
+
import type { AdminAuthResolver, AdminAuthUser } from '../auth.types.js';
|
|
3
|
+
export interface CredentialsAuthResolverOptions {
|
|
4
|
+
validate: (email: string, password: string, request: Request) => Promise<AdminAuthUser | null | false> | AdminAuthUser | null | false;
|
|
5
|
+
secret: string;
|
|
6
|
+
cookieName?: string;
|
|
7
|
+
maxAge?: number;
|
|
8
|
+
}
|
|
9
|
+
export declare function credentialsAuthResolver(options: CredentialsAuthResolverOptions): AdminAuthResolver;
|
|
10
|
+
//# sourceMappingURL=credentials.resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credentials.resolver.d.ts","sourceRoot":"","sources":["../../../../src/features/auth/resolvers/credentials.resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGzE,MAAM,WAAW,8BAA8B;IAO7C,QAAQ,EAAE,CACR,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,KACb,OAAO,CAAC,aAAa,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,aAAa,GAAG,IAAI,GAAG,KAAK,CAAC;IAE1E,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAOD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,8BAA8B,GACtC,iBAAiB,CAoCnB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { createSessionToken, parseCookies, verifySessionToken } from '../session.js';
|
|
2
|
+
export function credentialsAuthResolver(options) {
|
|
3
|
+
const cookieName = options.cookieName ?? 'nestjs_dash_session';
|
|
4
|
+
const maxAge = options.maxAge ?? 60 * 60 * 12;
|
|
5
|
+
const sessionOptions = { secret: options.secret, maxAge };
|
|
6
|
+
return {
|
|
7
|
+
loginPath: 'login',
|
|
8
|
+
authenticate(request) {
|
|
9
|
+
const cookies = parseCookies(request.headers.cookie);
|
|
10
|
+
const user = verifySessionToken(cookies[cookieName], sessionOptions);
|
|
11
|
+
return user ? { user } : false;
|
|
12
|
+
},
|
|
13
|
+
async login(request, response, body) {
|
|
14
|
+
const email = String(body.email ?? '').trim();
|
|
15
|
+
const password = String(body.password ?? '');
|
|
16
|
+
if (!email || !password)
|
|
17
|
+
return false;
|
|
18
|
+
const user = await options.validate(email, password, request);
|
|
19
|
+
if (!user)
|
|
20
|
+
return false;
|
|
21
|
+
const token = createSessionToken(user, sessionOptions);
|
|
22
|
+
response.cookie(cookieName, token, {
|
|
23
|
+
httpOnly: true,
|
|
24
|
+
sameSite: 'lax',
|
|
25
|
+
maxAge: maxAge * 1000,
|
|
26
|
+
path: '/',
|
|
27
|
+
});
|
|
28
|
+
return { user };
|
|
29
|
+
},
|
|
30
|
+
logout(_request, response) {
|
|
31
|
+
response.clearCookie(cookieName, { path: '/' });
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=credentials.resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credentials.resolver.js","sourceRoot":"","sources":["../../../../src/features/auth/resolvers/credentials.resolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AA2BrF,MAAM,UAAU,uBAAuB,CACrC,OAAuC;IAEvC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,qBAAqB,CAAC;IAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IAC9C,MAAM,cAAc,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAE1D,OAAO;QACL,SAAS,EAAE,OAAO;QAElB,YAAY,CAAC,OAAO;YAClB,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACrD,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,CAAC;YACrE,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACjC,CAAC;QAED,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI;YACjC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;YAC7C,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAEtC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC9D,IAAI,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAC;YAExB,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YACvD,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE;gBACjC,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,MAAM,GAAG,IAAI;gBACrB,IAAI,EAAE,GAAG;aACV,CAAC,CAAC;YACH,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,CAAC;QAED,MAAM,CAAC,QAAQ,EAAE,QAAkB;YACjC,QAAQ,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QAClD,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { AdminAuthResolver } from '../auth.types.js';
|
|
2
|
+
export declare function customAuthResolver(authenticate: AdminAuthResolver['authenticate'], options?: {
|
|
3
|
+
loginUrl?: string;
|
|
4
|
+
login?: AdminAuthResolver['login'];
|
|
5
|
+
logout?: AdminAuthResolver['logout'];
|
|
6
|
+
}): AdminAuthResolver;
|
|
7
|
+
//# sourceMappingURL=custom.resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom.resolver.d.ts","sourceRoot":"","sources":["../../../../src/features/auth/resolvers/custom.resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAO1D,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC/C,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;CACtC,GACA,iBAAiB,CAOnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom.resolver.js","sourceRoot":"","sources":["../../../../src/features/auth/resolvers/custom.resolver.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,kBAAkB,CAChC,YAA+C,EAC/C,OAIC;IAED,OAAO;QACL,YAAY;QACZ,SAAS,EAAE,OAAO,EAAE,QAAQ;QAC5B,KAAK,EAAE,OAAO,EAAE,KAAK;QACrB,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Request } from 'express';
|
|
2
|
+
import type { AdminAuthResolver, AdminAuthUser } from '../auth.types.js';
|
|
3
|
+
export interface JwtAuthResolverOptions {
|
|
4
|
+
verify: (token: string, request: Request) => Promise<AdminAuthUser | null | false> | AdminAuthUser | null | false;
|
|
5
|
+
extractToken?: (request: Request) => string | undefined;
|
|
6
|
+
cookieName?: string;
|
|
7
|
+
loginUrl?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function jwtAuthResolver(options: JwtAuthResolverOptions): AdminAuthResolver;
|
|
10
|
+
//# sourceMappingURL=jwt.resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jwt.resolver.d.ts","sourceRoot":"","sources":["../../../../src/features/auth/resolvers/jwt.resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGzE,MAAM,WAAW,sBAAsB;IAOrC,MAAM,EAAE,CACN,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,KACb,OAAO,CAAC,aAAa,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,aAAa,GAAG,IAAI,GAAG,KAAK,CAAC;IAK1E,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;IAExD,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAkBD,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,iBAAiB,CAalF"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { parseCookies } from '../session.js';
|
|
2
|
+
function defaultExtractToken(cookieName) {
|
|
3
|
+
return (request) => {
|
|
4
|
+
const header = request.headers.authorization;
|
|
5
|
+
if (header?.startsWith('Bearer ')) {
|
|
6
|
+
return header.slice('Bearer '.length);
|
|
7
|
+
}
|
|
8
|
+
return parseCookies(request.headers.cookie)[cookieName];
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export function jwtAuthResolver(options) {
|
|
12
|
+
const extractToken = options.extractToken ?? defaultExtractToken(options.cookieName ?? 'nestjs_dash_token');
|
|
13
|
+
return {
|
|
14
|
+
loginPath: options.loginUrl,
|
|
15
|
+
async authenticate(request) {
|
|
16
|
+
const token = extractToken(request);
|
|
17
|
+
if (!token)
|
|
18
|
+
return false;
|
|
19
|
+
const user = await options.verify(token, request);
|
|
20
|
+
return user ? { user } : false;
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=jwt.resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jwt.resolver.js","sourceRoot":"","sources":["../../../../src/features/auth/resolvers/jwt.resolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AA4B7C,SAAS,mBAAmB,CAAC,UAAkB;IAC7C,OAAO,CAAC,OAAgB,EAAsB,EAAE;QAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7C,IAAI,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC,CAAC;AACJ,CAAC;AAQD,MAAM,UAAU,eAAe,CAAC,OAA+B;IAC7D,MAAM,YAAY,GAChB,OAAO,CAAC,YAAY,IAAI,mBAAmB,CAAC,OAAO,CAAC,UAAU,IAAI,mBAAmB,CAAC,CAAC;IAEzF,OAAO;QACL,SAAS,EAAE,OAAO,CAAC,QAAQ;QAC3B,KAAK,CAAC,YAAY,CAAC,OAAO;YACxB,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YACpC,IAAI,CAAC,KAAK;gBAAE,OAAO,KAAK,CAAC;YACzB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAClD,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACjC,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CanActivate } from '@nestjs/common';
|
|
2
|
+
import type { AdminAuthResolver, AdminAuthUser } from '../auth.types.js';
|
|
3
|
+
export interface PassportAuthResolverOptions {
|
|
4
|
+
guard: CanActivate;
|
|
5
|
+
mapUser?: (user: Record<string, unknown>) => AdminAuthUser;
|
|
6
|
+
loginUrl?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function passportAuthResolver(options: PassportAuthResolverOptions): AdminAuthResolver;
|
|
9
|
+
//# sourceMappingURL=passport.resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"passport.resolver.d.ts","sourceRoot":"","sources":["../../../../src/features/auth/resolvers/passport.resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEzE,MAAM,WAAW,2BAA2B;IAM1C,KAAK,EAAE,WAAW,CAAC;IAEnB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,aAAa,CAAC;IAE3D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAOD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B,GAAG,iBAAiB,CAY5F"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export function passportAuthResolver(options) {
|
|
2
|
+
return {
|
|
3
|
+
loginPath: options.loginUrl,
|
|
4
|
+
async authenticate(request, context) {
|
|
5
|
+
const allowed = await options.guard.canActivate(context);
|
|
6
|
+
if (!allowed)
|
|
7
|
+
return false;
|
|
8
|
+
const user = request.user;
|
|
9
|
+
if (!user)
|
|
10
|
+
return false;
|
|
11
|
+
return { user: options.mapUser ? options.mapUser(user) : user };
|
|
12
|
+
},
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=passport.resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"passport.resolver.js","sourceRoot":"","sources":["../../../../src/features/auth/resolvers/passport.resolver.ts"],"names":[],"mappings":"AAsBA,MAAM,UAAU,oBAAoB,CAAC,OAAoC;IACvE,OAAO;QACL,SAAS,EAAE,OAAO,CAAC,QAAQ;QAC3B,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO;YACjC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACzD,IAAI,CAAC,OAAO;gBAAE,OAAO,KAAK,CAAC;YAE3B,MAAM,IAAI,GAAI,OAAwD,CAAC,IAAI,CAAC;YAC5E,IAAI,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAC;YACxB,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAClE,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { AdminAuthUser } from './auth.types.js';
|
|
2
|
+
export interface SignedSessionOptions {
|
|
3
|
+
secret: string;
|
|
4
|
+
maxAge?: number;
|
|
5
|
+
}
|
|
6
|
+
export declare function createSessionToken(user: AdminAuthUser, options: SignedSessionOptions): string;
|
|
7
|
+
export declare function verifySessionToken(token: string | undefined, options: SignedSessionOptions): AdminAuthUser | null;
|
|
8
|
+
export declare function parseCookies(header: string | undefined): Record<string, string>;
|
|
9
|
+
//# sourceMappingURL=session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/features/auth/session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,WAAW,oBAAoB;IAEnC,MAAM,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAYD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAO7F;AAGD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,oBAAoB,GAC5B,aAAa,GAAG,IAAI,CAiBtB;AAGD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAgB/E"}
|