@xemahq/identity-client 0.3.2 → 0.3.3
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.
|
@@ -4,6 +4,7 @@ export declare class OrgAdminGuard implements CanActivate {
|
|
|
4
4
|
private readonly logger;
|
|
5
5
|
private readonly identityClient;
|
|
6
6
|
private readonly cacheTtlMs;
|
|
7
|
+
private readonly requestContextSymbol?;
|
|
7
8
|
private readonly cache;
|
|
8
9
|
constructor(config: OrgAuthConfig);
|
|
9
10
|
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
@@ -24,6 +24,7 @@ let OrgAdminGuard = OrgAdminGuard_1 = class OrgAdminGuard {
|
|
|
24
24
|
logger = new common_1.Logger(OrgAdminGuard_1.name);
|
|
25
25
|
identityClient;
|
|
26
26
|
cacheTtlMs;
|
|
27
|
+
requestContextSymbol;
|
|
27
28
|
cache = new Map();
|
|
28
29
|
constructor(config) {
|
|
29
30
|
this.identityClient = new client_1.IdentityApiClient({
|
|
@@ -31,6 +32,9 @@ let OrgAdminGuard = OrgAdminGuard_1 = class OrgAdminGuard {
|
|
|
31
32
|
internalToken: config.identityApiInternalToken,
|
|
32
33
|
});
|
|
33
34
|
this.cacheTtlMs = config.cacheTtlMs ?? DEFAULT_CACHE_TTL_MS;
|
|
35
|
+
this.requestContextSymbol = config.requestContextSymbolKey
|
|
36
|
+
? Symbol.for(config.requestContextSymbolKey)
|
|
37
|
+
: undefined;
|
|
34
38
|
}
|
|
35
39
|
async canActivate(context) {
|
|
36
40
|
const request = context.switchToHttp().getRequest();
|
|
@@ -76,11 +80,13 @@ let OrgAdminGuard = OrgAdminGuard_1 = class OrgAdminGuard {
|
|
|
76
80
|
}
|
|
77
81
|
}
|
|
78
82
|
extractContext(request) {
|
|
83
|
+
if (this.requestContextSymbol) {
|
|
84
|
+
return request[this.requestContextSymbol];
|
|
85
|
+
}
|
|
79
86
|
const symbols = Object.getOwnPropertySymbols(request);
|
|
80
87
|
for (const sym of symbols) {
|
|
81
88
|
if (sym.description === 'REQUEST_CONTEXT') {
|
|
82
|
-
|
|
83
|
-
return ctx;
|
|
89
|
+
return request[sym];
|
|
84
90
|
}
|
|
85
91
|
}
|
|
86
92
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"org-admin.guard.js","sourceRoot":"","sources":["../../../src/nestjs/org-auth/org-admin.guard.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAQwB;AACxB,yCAAiD;AACjD,uCAAuD;AACvD,qDAAmD;AAMnD,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAG3C,MAAM,cAAc,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"org-admin.guard.js","sourceRoot":"","sources":["../../../src/nestjs/org-auth/org-admin.guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ export interface OrgAuthConfig {
|
|
|
4
4
|
identityApiUrl: string;
|
|
5
5
|
identityApiInternalToken: string;
|
|
6
6
|
cacheTtlMs?: number;
|
|
7
|
+
requestContextSymbolKey?: string;
|
|
7
8
|
}
|
|
8
9
|
type ModuleImport = Type<unknown> | ForwardReference<unknown> | DynamicModule | Promise<DynamicModule>;
|
|
9
10
|
export interface OrgAuthModuleAsyncOptions {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xemahq/identity-client",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.3",
|
|
4
4
|
"description": "NestJS client library and standalone HTTP client for Identity API - service registration, credential management, and JWT token lifecycle",
|
|
5
5
|
"author": "xemahq",
|
|
6
6
|
"license": "MIT",
|