@acorex-platform/framework-server 0.0.14 → 0.0.18
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/background-job/src/index.d.ts +3 -0
- package/background-job/src/index.d.ts.map +1 -1
- package/background-job/src/index.js +3 -0
- package/background-job/src/index.js.map +1 -1
- package/background-job/src/lib/background-job.module.d.ts +5 -0
- package/background-job/src/lib/background-job.module.d.ts.map +1 -1
- package/background-job/src/lib/background-job.module.js +11 -2
- package/background-job/src/lib/background-job.module.js.map +1 -1
- package/background-job/src/lib/background-job.service.d.ts.map +1 -1
- package/background-job/src/lib/background-job.service.js +34 -6
- package/background-job/src/lib/background-job.service.js.map +1 -1
- package/background-job/src/lib/bull-queue-root.module.d.ts +3 -0
- package/background-job/src/lib/bull-queue-root.module.d.ts.map +1 -1
- package/background-job/src/lib/bull-queue-root.module.js +11 -1
- package/background-job/src/lib/bull-queue-root.module.js.map +1 -1
- package/background-job/src/lib/execution/background-job-execution.service.d.ts +6 -1
- package/background-job/src/lib/execution/background-job-execution.service.d.ts.map +1 -1
- package/background-job/src/lib/execution/background-job-execution.service.js +99 -36
- package/background-job/src/lib/execution/background-job-execution.service.js.map +1 -1
- package/background-job/src/lib/execution/background-job-tenant.util.d.ts +9 -0
- package/background-job/src/lib/execution/background-job-tenant.util.d.ts.map +1 -0
- package/background-job/src/lib/execution/background-job-tenant.util.js +23 -0
- package/background-job/src/lib/execution/background-job-tenant.util.js.map +1 -0
- package/background-job/src/lib/queue/background-job-dispatcher.service.d.ts +7 -1
- package/background-job/src/lib/queue/background-job-dispatcher.service.d.ts.map +1 -1
- package/background-job/src/lib/queue/background-job-dispatcher.service.js +9 -3
- package/background-job/src/lib/queue/background-job-dispatcher.service.js.map +1 -1
- package/background-job/src/lib/queue/background-job-failed-reconcile.service.d.ts +18 -0
- package/background-job/src/lib/queue/background-job-failed-reconcile.service.d.ts.map +1 -0
- package/background-job/src/lib/queue/background-job-failed-reconcile.service.js +70 -0
- package/background-job/src/lib/queue/background-job-failed-reconcile.service.js.map +1 -0
- package/background-job/src/lib/queue/background-job.processor.d.ts +10 -1
- package/background-job/src/lib/queue/background-job.processor.d.ts.map +1 -1
- package/background-job/src/lib/queue/background-job.processor.js +45 -2
- package/background-job/src/lib/queue/background-job.processor.js.map +1 -1
- package/background-job/src/lib/queue/bull-queue-worker-registration.service.d.ts +27 -0
- package/background-job/src/lib/queue/bull-queue-worker-registration.service.d.ts.map +1 -0
- package/background-job/src/lib/queue/bull-queue-worker-registration.service.js +117 -0
- package/background-job/src/lib/queue/bull-queue-worker-registration.service.js.map +1 -0
- package/background-job/src/lib/store/background-job-schema.bootstrap.d.ts +3 -1
- package/background-job/src/lib/store/background-job-schema.bootstrap.d.ts.map +1 -1
- package/background-job/src/lib/store/background-job-schema.bootstrap.js +10 -5
- package/background-job/src/lib/store/background-job-schema.bootstrap.js.map +1 -1
- package/background-job/src/lib/store/background-job-store.service.d.ts +2 -2
- package/background-job/src/lib/store/background-job-store.service.d.ts.map +1 -1
- package/background-job/src/lib/store/background-job-store.service.js +10 -4
- package/background-job/src/lib/store/background-job-store.service.js.map +1 -1
- package/core/src/index.d.ts +1 -0
- package/core/src/index.d.ts.map +1 -1
- package/core/src/index.js +1 -0
- package/core/src/index.js.map +1 -1
- package/core/src/lib/entity-storage/entity-storage-middleware.service.d.ts +2 -0
- package/core/src/lib/entity-storage/entity-storage-middleware.service.d.ts.map +1 -1
- package/core/src/lib/entity-storage/entity-storage-middleware.service.js +6 -0
- package/core/src/lib/entity-storage/entity-storage-middleware.service.js.map +1 -1
- package/core/src/lib/entity-storage/entity-storage.module.d.ts.map +1 -1
- package/core/src/lib/entity-storage/entity-storage.module.js +2 -0
- package/core/src/lib/entity-storage/entity-storage.module.js.map +1 -1
- package/core/src/lib/expression-evaluator/expression-evaluator-scope-provider.service.d.ts +12 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope-provider.service.d.ts.map +1 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope-provider.service.js +31 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope-provider.service.js.map +1 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope.registry.d.ts +11 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope.registry.d.ts.map +1 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope.registry.js +29 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope.registry.js.map +1 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope.types.d.ts +7 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope.types.d.ts.map +1 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope.types.js +12 -0
- package/core/src/lib/expression-evaluator/expression-evaluator-scope.types.js.map +1 -0
- package/core/src/lib/expression-evaluator/expression-evaluator.module.d.ts +3 -0
- package/core/src/lib/expression-evaluator/expression-evaluator.module.d.ts.map +1 -0
- package/core/src/lib/expression-evaluator/expression-evaluator.module.js +31 -0
- package/core/src/lib/expression-evaluator/expression-evaluator.module.js.map +1 -0
- package/core/src/lib/expression-evaluator/expression-evaluator.service.d.ts +14 -0
- package/core/src/lib/expression-evaluator/expression-evaluator.service.d.ts.map +1 -0
- package/core/src/lib/expression-evaluator/expression-evaluator.service.js +32 -0
- package/core/src/lib/expression-evaluator/expression-evaluator.service.js.map +1 -0
- package/core/src/lib/expression-evaluator/index.d.ts +7 -0
- package/core/src/lib/expression-evaluator/index.d.ts.map +1 -0
- package/core/src/lib/expression-evaluator/index.js +10 -0
- package/core/src/lib/expression-evaluator/index.js.map +1 -0
- package/core/src/lib/expression-evaluator/session-expression-evaluator-scope.provider.d.ts +13 -0
- package/core/src/lib/expression-evaluator/session-expression-evaluator-scope.provider.d.ts.map +1 -0
- package/core/src/lib/expression-evaluator/session-expression-evaluator-scope.provider.js +61 -0
- package/core/src/lib/expression-evaluator/session-expression-evaluator-scope.provider.js.map +1 -0
- package/domain/providers/src/lib/utils/expression-evaluator.util.d.ts +3 -5
- package/domain/providers/src/lib/utils/expression-evaluator.util.d.ts.map +1 -1
- package/domain/providers/src/lib/utils/expression-evaluator.util.js +5 -60
- package/domain/providers/src/lib/utils/expression-evaluator.util.js.map +1 -1
- package/package.json +2 -2
- package/security/src/lib/auth/auth.controller.d.ts +16 -1
- package/security/src/lib/auth/auth.controller.d.ts.map +1 -1
- package/security/src/lib/auth/auth.controller.js +59 -2
- package/security/src/lib/auth/auth.controller.js.map +1 -1
- package/security/src/lib/auth/auth.service.d.ts.map +1 -1
- package/security/src/lib/auth/auth.service.js +8 -0
- package/security/src/lib/auth/auth.service.js.map +1 -1
- package/security/src/lib/entity-storage/policy-expression-evaluator.util.d.ts +5 -3
- package/security/src/lib/entity-storage/policy-expression-evaluator.util.d.ts.map +1 -1
- package/security/src/lib/entity-storage/policy-expression-evaluator.util.js +7 -58
- package/security/src/lib/entity-storage/policy-expression-evaluator.util.js.map +1 -1
- package/workflow/src/lib/runtime/workflow-expression-evaluator.service.d.ts +1 -3
- package/workflow/src/lib/runtime/workflow-expression-evaluator.service.d.ts.map +1 -1
- package/workflow/src/lib/runtime/workflow-expression-evaluator.service.js +3 -62
- package/workflow/src/lib/runtime/workflow-expression-evaluator.service.js.map +1 -1
|
@@ -1,72 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
//#region ---- Backend expression evaluator ----
|
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
3
|
exports.BackendExpressionEvaluator = void 0;
|
|
4
|
+
const core_1 = require("@acorex-platform/framework-shared/core");
|
|
5
5
|
/**
|
|
6
|
-
* Minimal server-side expression evaluator for policy conditions ({{ ... }} templates).
|
|
7
|
-
*
|
|
6
|
+
* Minimal server-side expression evaluator for policy conditions (`{{ ... }}` templates).
|
|
7
|
+
* Delegates to the shared {@link ExpressionEvaluatorEngine}.
|
|
8
8
|
*/
|
|
9
9
|
class BackendExpressionEvaluator {
|
|
10
10
|
constructor() {
|
|
11
|
-
this.
|
|
12
|
-
}
|
|
13
|
-
getOrCompileFunction(expression) {
|
|
14
|
-
if (!this.expressionCache.has(expression)) {
|
|
15
|
-
const hasMultipleStatements = expression.includes(';') || expression.includes('\n');
|
|
16
|
-
const fn = hasMultipleStatements
|
|
17
|
-
? new Function('scope', `with (scope) { return (async function() { ${expression} })(); }`)
|
|
18
|
-
: new Function('scope', `with (scope) { return (async function() { return ${expression}; })(); }`);
|
|
19
|
-
this.expressionCache.set(expression, fn);
|
|
20
|
-
}
|
|
21
|
-
return this.expressionCache.get(expression);
|
|
11
|
+
this.engine = new core_1.ExpressionEvaluatorEngine();
|
|
22
12
|
}
|
|
23
13
|
async evaluate(source, scope = {}) {
|
|
24
|
-
|
|
25
|
-
if (typeof source === 'string' && source.includes('{{')) {
|
|
26
|
-
return await this.evaluateStringExpression(source, scope);
|
|
27
|
-
}
|
|
28
|
-
if (Array.isArray(source)) {
|
|
29
|
-
return Promise.all(source.map((item) => this.evaluate(item, scope)));
|
|
30
|
-
}
|
|
31
|
-
if (typeof source === 'object' && source !== null) {
|
|
32
|
-
const evaluatedObject = {};
|
|
33
|
-
for (const key of Object.keys(source)) {
|
|
34
|
-
evaluatedObject[key] = await this.evaluate(source[key], scope);
|
|
35
|
-
}
|
|
36
|
-
return evaluatedObject;
|
|
37
|
-
}
|
|
38
|
-
return source;
|
|
39
|
-
}
|
|
40
|
-
catch {
|
|
41
|
-
return false;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
async evaluateStringExpression(templateExpression, scope) {
|
|
45
|
-
const exactMatch = templateExpression.match(/^\s*\{\{\s*([\s\S]*?)\s*\}\}\s*$/);
|
|
46
|
-
if (exactMatch) {
|
|
47
|
-
const sandbox = this.getOrCompileFunction(exactMatch[1]);
|
|
48
|
-
return sandbox(scope);
|
|
49
|
-
}
|
|
50
|
-
const regex = /\{\{\s*([\s\S]*?)\s*\}\}/g;
|
|
51
|
-
const matches = [];
|
|
52
|
-
let match;
|
|
53
|
-
while ((match = regex.exec(templateExpression)) !== null) {
|
|
54
|
-
matches.push({ expression: match[1], start: match.index, end: regex.lastIndex });
|
|
55
|
-
}
|
|
56
|
-
const values = await Promise.all(matches.map((m) => {
|
|
57
|
-
const sandbox = this.getOrCompileFunction(m.expression);
|
|
58
|
-
return sandbox(scope);
|
|
59
|
-
}));
|
|
60
|
-
let result = '';
|
|
61
|
-
let lastIndex = 0;
|
|
62
|
-
matches.forEach((m, i) => {
|
|
63
|
-
result += templateExpression.slice(lastIndex, m.start);
|
|
64
|
-
const value = values[i];
|
|
65
|
-
result += value !== undefined && value !== null ? String(value) : '';
|
|
66
|
-
lastIndex = m.end;
|
|
67
|
-
});
|
|
68
|
-
result += templateExpression.slice(lastIndex);
|
|
69
|
-
return result;
|
|
14
|
+
return this.engine.evaluate(source, scope, { swallowErrors: true });
|
|
70
15
|
}
|
|
71
16
|
}
|
|
72
17
|
exports.BackendExpressionEvaluator = BackendExpressionEvaluator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression-evaluator.util.js","sourceRoot":"","sources":["../../../../../../../../../libs/framework/server/domain/providers/src/lib/utils/expression-evaluator.util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"expression-evaluator.util.js","sourceRoot":"","sources":["../../../../../../../../../libs/framework/server/domain/providers/src/lib/utils/expression-evaluator.util.ts"],"names":[],"mappings":";;;AAAA,iEAAmF;AAMnF;;;GAGG;AACH,MAAa,0BAA0B;IAAvC;QACmB,WAAM,GAAG,IAAI,gCAAyB,EAAE,CAAC;IAK5D,CAAC;IAHC,KAAK,CAAC,QAAQ,CAAC,MAAe,EAAE,QAAgC,EAAE;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC;CACF;AAND,gEAMC;AAED,YAAY"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex-platform/framework-server",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.18",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./package.json": "./package.json",
|
|
@@ -155,6 +155,6 @@
|
|
|
155
155
|
},
|
|
156
156
|
"peerDependencies": {
|
|
157
157
|
"@nestjs/common": "^11.0.0",
|
|
158
|
-
"@acorex-platform/framework-shared": "0.0.
|
|
158
|
+
"@acorex-platform/framework-shared": "0.0.18"
|
|
159
159
|
}
|
|
160
160
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ModuleRef } from '@nestjs/core';
|
|
2
2
|
import type { Request, Response } from 'express';
|
|
3
|
+
import { ServerCommandExecutorService } from '@acorex-platform/framework-server/domain/providers';
|
|
3
4
|
import { AuthCookieService } from './auth-cookie.service';
|
|
4
5
|
import { AuthService } from './auth.service';
|
|
5
6
|
import { TokenResolverService } from './token-resolver.service';
|
|
@@ -9,7 +10,8 @@ export declare class AuthController {
|
|
|
9
10
|
private readonly cookies;
|
|
10
11
|
private readonly tokenResolver;
|
|
11
12
|
private readonly moduleRef;
|
|
12
|
-
|
|
13
|
+
private readonly commandExecutor;
|
|
14
|
+
constructor(auth: AuthService, cookies: AuthCookieService, tokenResolver: TokenResolverService, moduleRef: ModuleRef, commandExecutor: ServerCommandExecutorService);
|
|
13
15
|
getProviders(): Promise<Record<string, unknown>>;
|
|
14
16
|
/** Resolved at request time — extension modules register after SecurityModule boots. */
|
|
15
17
|
private resolveProviderContributors;
|
|
@@ -21,6 +23,19 @@ export declare class AuthController {
|
|
|
21
23
|
logout(body: RefreshTokenRequestDto, req: Request, res: Response): Promise<{
|
|
22
24
|
success: true;
|
|
23
25
|
}>;
|
|
26
|
+
requestPasswordReset(body: {
|
|
27
|
+
login?: string;
|
|
28
|
+
webOrigin?: string;
|
|
29
|
+
}): Promise<{
|
|
30
|
+
success: boolean;
|
|
31
|
+
}>;
|
|
32
|
+
completePasswordReset(body: {
|
|
33
|
+
token?: string;
|
|
34
|
+
newPassword?: string;
|
|
35
|
+
}): Promise<{
|
|
36
|
+
success: boolean;
|
|
37
|
+
message?: string;
|
|
38
|
+
}>;
|
|
24
39
|
updateSession(req: Request, res: Response, body: UpdateSessionRequestDto): Promise<AuthTokenResponseDto>;
|
|
25
40
|
private applyAuthCookies;
|
|
26
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.controller.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/auth/auth.controller.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAQhE,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,4BAA4B,EAC5B,gBAAgB,EAChB,uBAAuB,EACxB,MAAM,cAAc,CAAC;AAItB,qBAEa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS;
|
|
1
|
+
{"version":3,"file":"auth.controller.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/auth/auth.controller.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,oDAAoD,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAQhE,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,4BAA4B,EAC5B,gBAAgB,EAChB,uBAAuB,EACxB,MAAM,cAAc,CAAC;AAItB,qBAEa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAJf,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,iBAAiB,EAC1B,aAAa,EAAE,oBAAoB,EACnC,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,4BAA4B;IAM1D,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IActD,wFAAwF;IACxF,OAAO,CAAC,2BAA2B;IA2B7B,MAAM,CACF,IAAI,EAAE,gBAAgB,EACvB,GAAG,EAAE,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,4BAA4B,CAAA;KAAE,EACjC,GAAG,EAAE,QAAQ,GACxC,OAAO,CAAC,oBAAoB,CAAC;IAsB1B,QAAQ,CACJ,IAAI,EAAE,kBAAkB,EACzB,GAAG,EAAE,OAAO,EACS,GAAG,EAAE,QAAQ,GACxC,OAAO,CAAC,oBAAoB,CAAC;IAiB1B,OAAO,CACH,IAAI,EAAE,sBAAsB,EAC7B,GAAG,EAAE,OAAO,EACS,GAAG,EAAE,QAAQ,GACxC,OAAO,CAAC,oBAAoB,CAAC;IAkB1B,MAAM,CACF,IAAI,EAAE,sBAAsB,EAC7B,GAAG,EAAE,OAAO,EACS,GAAG,EAAE,QAAQ,GACxC,OAAO,CAAC;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC;IAuBvB,oBAAoB,CAChB,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GACnD,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAyB1B,qBAAqB,CACjB,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GACrD,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA0C5C,aAAa,CACV,GAAG,EAAE,OAAO,EACS,GAAG,EAAE,QAAQ,EACjC,IAAI,EAAE,uBAAuB,GACpC,OAAO,CAAC,oBAAoB,CAAC;IAgBhC,OAAO,CAAC,gBAAgB;CAQzB"}
|
|
@@ -6,6 +6,7 @@ const common_1 = require("@nestjs/common");
|
|
|
6
6
|
const passport_1 = require("@nestjs/passport");
|
|
7
7
|
const core_1 = require("@nestjs/core");
|
|
8
8
|
const swagger_1 = require("@nestjs/swagger");
|
|
9
|
+
const providers_1 = require("@acorex-platform/framework-server/domain/providers");
|
|
9
10
|
const auth_cookie_service_1 = require("./auth-cookie.service");
|
|
10
11
|
const auth_service_1 = require("./auth.service");
|
|
11
12
|
const jwt_auth_guard_1 = require("./jwt-auth.guard");
|
|
@@ -16,11 +17,12 @@ const platform_oauth_config_1 = require("../oauth/platform-oauth.config");
|
|
|
16
17
|
const auth_providers_contributor_1 = require("./auth-providers.contributor");
|
|
17
18
|
//#region ---- Auth REST API ----
|
|
18
19
|
let AuthController = class AuthController {
|
|
19
|
-
constructor(auth, cookies, tokenResolver, moduleRef) {
|
|
20
|
+
constructor(auth, cookies, tokenResolver, moduleRef, commandExecutor) {
|
|
20
21
|
this.auth = auth;
|
|
21
22
|
this.cookies = cookies;
|
|
22
23
|
this.tokenResolver = tokenResolver;
|
|
23
24
|
this.moduleRef = moduleRef;
|
|
25
|
+
this.commandExecutor = commandExecutor;
|
|
24
26
|
}
|
|
25
27
|
async getProviders() {
|
|
26
28
|
const response = {
|
|
@@ -76,6 +78,22 @@ let AuthController = class AuthController {
|
|
|
76
78
|
this.cookies.clearAuthCookies(res);
|
|
77
79
|
return this.auth.logout(refreshToken);
|
|
78
80
|
}
|
|
81
|
+
async requestPasswordReset(body) {
|
|
82
|
+
const result = await this.commandExecutor.execute('SecurityManagement:Server:SendPasswordResetEmail', {
|
|
83
|
+
login: body?.login,
|
|
84
|
+
webOrigin: body?.webOrigin,
|
|
85
|
+
});
|
|
86
|
+
// Opaque response — do not reveal whether the account exists.
|
|
87
|
+
return { success: result?.success !== false };
|
|
88
|
+
}
|
|
89
|
+
async completePasswordReset(body) {
|
|
90
|
+
const result = await this.commandExecutor.execute('SecurityManagement:Server:CompletePasswordReset', {
|
|
91
|
+
token: body?.token,
|
|
92
|
+
newPassword: body?.newPassword,
|
|
93
|
+
});
|
|
94
|
+
const message = typeof result?.message?.text === 'string' ? result.message.text : undefined;
|
|
95
|
+
return { success: !!result?.success, message };
|
|
96
|
+
}
|
|
79
97
|
async updateSession(req, res, body) {
|
|
80
98
|
const resolved = this.tokenResolver.resolveAccessToken(req.headers, req.cookies);
|
|
81
99
|
if (!resolved) {
|
|
@@ -176,6 +194,44 @@ tslib_1.__decorate([
|
|
|
176
194
|
tslib_1.__metadata("design:paramtypes", [Object, Object, Object]),
|
|
177
195
|
tslib_1.__metadata("design:returntype", Promise)
|
|
178
196
|
], AuthController.prototype, "logout", null);
|
|
197
|
+
tslib_1.__decorate([
|
|
198
|
+
(0, public_decorator_1.Public)(),
|
|
199
|
+
(0, common_1.Post)('password-reset/request'),
|
|
200
|
+
(0, swagger_1.ApiOperation)({ summary: 'Request a password-reset email (forgot password)' }),
|
|
201
|
+
(0, swagger_1.ApiBody)({
|
|
202
|
+
schema: {
|
|
203
|
+
type: 'object',
|
|
204
|
+
required: ['login'],
|
|
205
|
+
properties: {
|
|
206
|
+
login: { type: 'string', description: 'Email or username' },
|
|
207
|
+
webOrigin: { type: 'string' },
|
|
208
|
+
},
|
|
209
|
+
},
|
|
210
|
+
}),
|
|
211
|
+
tslib_1.__param(0, (0, common_1.Body)()),
|
|
212
|
+
tslib_1.__metadata("design:type", Function),
|
|
213
|
+
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
214
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
215
|
+
], AuthController.prototype, "requestPasswordReset", null);
|
|
216
|
+
tslib_1.__decorate([
|
|
217
|
+
(0, public_decorator_1.Public)(),
|
|
218
|
+
(0, common_1.Post)('password-reset/complete'),
|
|
219
|
+
(0, swagger_1.ApiOperation)({ summary: 'Complete password reset with one-time token' }),
|
|
220
|
+
(0, swagger_1.ApiBody)({
|
|
221
|
+
schema: {
|
|
222
|
+
type: 'object',
|
|
223
|
+
required: ['token', 'newPassword'],
|
|
224
|
+
properties: {
|
|
225
|
+
token: { type: 'string' },
|
|
226
|
+
newPassword: { type: 'string' },
|
|
227
|
+
},
|
|
228
|
+
},
|
|
229
|
+
}),
|
|
230
|
+
tslib_1.__param(0, (0, common_1.Body)()),
|
|
231
|
+
tslib_1.__metadata("design:type", Function),
|
|
232
|
+
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
233
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
234
|
+
], AuthController.prototype, "completePasswordReset", null);
|
|
179
235
|
tslib_1.__decorate([
|
|
180
236
|
(0, common_1.UseGuards)(jwt_auth_guard_1.JwtAuthGuard),
|
|
181
237
|
(0, swagger_1.ApiBearerAuth)(),
|
|
@@ -219,7 +275,8 @@ exports.AuthController = AuthController = tslib_1.__decorate([
|
|
|
219
275
|
tslib_1.__metadata("design:paramtypes", [auth_service_1.AuthService,
|
|
220
276
|
auth_cookie_service_1.AuthCookieService,
|
|
221
277
|
token_resolver_service_1.TokenResolverService,
|
|
222
|
-
core_1.ModuleRef
|
|
278
|
+
core_1.ModuleRef,
|
|
279
|
+
providers_1.ServerCommandExecutorService])
|
|
223
280
|
], AuthController);
|
|
224
281
|
//#endregion
|
|
225
282
|
//# sourceMappingURL=auth.controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.controller.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/auth/auth.controller.ts"],"names":[],"mappings":";;;;AAAA,2CASwB;AACxB,+CAA6C;AAC7C,uCAAyC;AACzC,6CAAgF;AAEhF,+DAA0D;AAC1D,iDAA6C;AAC7C,qDAAgD;AAChD,qEAAgE;AAChE,2DAA6D;AAC7D,yDAA4C;AAC5C,0EAAqH;AACrH,6EAGsC;AAUtC,iCAAiC;AAI1B,IAAM,cAAc,GAApB,MAAM,cAAc;IACzB,YACmB,IAAiB,EACjB,OAA0B,EAC1B,aAAmC,EACnC,SAAoB;
|
|
1
|
+
{"version":3,"file":"auth.controller.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/auth/auth.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/auth/auth.service.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAKxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EAGV,oBAAoB,EAEpB,kBAAkB,EAClB,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,cAAc,CAAC;AAUtB,qBACa,WAAW;IAIpB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc;IANjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgC;gBAGpC,aAAa,EAAE,8BAA8B,EAC7C,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,2BAA2B,EAC7C,cAAc,EAAE,oBAAoB;IAGjD,cAAc,CAClB,IAAI,EAAE,4BAA4B,EAClC,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,oBAAoB,CAAC;IAIhC,6BAA6B,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAOhD,QAAQ,CAAC,GAAG,EAAE,kBAAkB,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAiCvF,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAuB1F,MAAM,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC;IAehE,aAAa,CACjB,kBAAkB,EAAE,MAAM,EAC1B,GAAG,EAAE,uBAAuB,EAC5B,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,oBAAoB,CAAC;IAmChC,iBAAiB,CAAC,KAAK,EAAE,MAAM;IAQ/B,kBAAkB,CAAC,KAAK,EAAE,MAAM;IAQhC,mBAAmB,IAAI,MAAM;IAI7B,oBAAoB,IAAI,MAAM;YAIhB,sBAAsB;
|
|
1
|
+
{"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/auth/auth.service.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAKxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EAGV,oBAAoB,EAEpB,kBAAkB,EAClB,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,cAAc,CAAC;AAUtB,qBACa,WAAW;IAIpB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc;IANjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgC;gBAGpC,aAAa,EAAE,8BAA8B,EAC7C,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,2BAA2B,EAC7C,cAAc,EAAE,oBAAoB;IAGjD,cAAc,CAClB,IAAI,EAAE,4BAA4B,EAClC,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,oBAAoB,CAAC;IAIhC,6BAA6B,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAOhD,QAAQ,CAAC,GAAG,EAAE,kBAAkB,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAiCvF,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAuB1F,MAAM,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC;IAehE,aAAa,CACjB,kBAAkB,EAAE,MAAM,EAC1B,GAAG,EAAE,uBAAuB,EAC5B,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,oBAAoB,CAAC;IAmChC,iBAAiB,CAAC,KAAK,EAAE,MAAM;IAQ/B,kBAAkB,CAAC,KAAK,EAAE,MAAM;IAQhC,mBAAmB,IAAI,MAAM;IAI7B,oBAAoB,IAAI,MAAM;YAIhB,sBAAsB;IAkCpC,OAAO,CAAC,UAAU;YAQJ,gBAAgB;YA+BhB,qBAAqB;CAkCpC"}
|
|
@@ -159,6 +159,14 @@ let AuthService = AuthService_1 = class AuthService {
|
|
|
159
159
|
tenantId: context.tenantId,
|
|
160
160
|
applicationId: context.applicationId,
|
|
161
161
|
});
|
|
162
|
+
try {
|
|
163
|
+
await this.entityStorage.updateOne(USER_ENTITY, user.id, {
|
|
164
|
+
lastSignInAt: new Date().toISOString(),
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
catch (error) {
|
|
168
|
+
this.logger.warn(`Failed to stamp lastSignInAt for user ${user.id}: ${String(error)}`);
|
|
169
|
+
}
|
|
162
170
|
return tokens;
|
|
163
171
|
}
|
|
164
172
|
toAuthUser(user) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/auth/auth.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/auth/auth.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
export type BackendExpressionScope = Record<string, unknown>;
|
|
2
|
+
/**
|
|
3
|
+
* Minimal server-side expression evaluator for policy conditions (`{{ ... }}` templates).
|
|
4
|
+
* Delegates to the shared {@link ExpressionEvaluatorEngine}.
|
|
5
|
+
*/
|
|
2
6
|
export declare class BackendExpressionEvaluator {
|
|
3
|
-
private readonly
|
|
4
|
-
private getOrCompileFunction;
|
|
7
|
+
private readonly engine;
|
|
5
8
|
evaluate(source: unknown, scope?: BackendExpressionScope): Promise<unknown>;
|
|
6
|
-
private evaluateStringExpression;
|
|
7
9
|
}
|
|
8
10
|
//# sourceMappingURL=policy-expression-evaluator.util.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policy-expression-evaluator.util.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/entity-storage/policy-expression-evaluator.util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"policy-expression-evaluator.util.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/entity-storage/policy-expression-evaluator.util.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE7D;;;GAGG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;IAEpD,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,sBAA2B,GAAG,OAAO,CAAC,OAAO,CAAC;CAGtF"}
|
|
@@ -1,68 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
//#region ---- Backend expression evaluator ----
|
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
3
|
exports.BackendExpressionEvaluator = void 0;
|
|
4
|
+
const core_1 = require("@acorex-platform/framework-shared/core");
|
|
5
|
+
/**
|
|
6
|
+
* Minimal server-side expression evaluator for policy conditions (`{{ ... }}` templates).
|
|
7
|
+
* Delegates to the shared {@link ExpressionEvaluatorEngine}.
|
|
8
|
+
*/
|
|
5
9
|
class BackendExpressionEvaluator {
|
|
6
10
|
constructor() {
|
|
7
|
-
this.
|
|
8
|
-
}
|
|
9
|
-
getOrCompileFunction(expression) {
|
|
10
|
-
if (!this.expressionCache.has(expression)) {
|
|
11
|
-
const hasMultipleStatements = expression.includes(';') || expression.includes('\n');
|
|
12
|
-
const fn = hasMultipleStatements
|
|
13
|
-
? new Function('scope', `with (scope) { return (async function() { ${expression} })(); }`)
|
|
14
|
-
: new Function('scope', `with (scope) { return (async function() { return ${expression}; })(); }`);
|
|
15
|
-
this.expressionCache.set(expression, fn);
|
|
16
|
-
}
|
|
17
|
-
return this.expressionCache.get(expression);
|
|
11
|
+
this.engine = new core_1.ExpressionEvaluatorEngine();
|
|
18
12
|
}
|
|
19
13
|
async evaluate(source, scope = {}) {
|
|
20
|
-
|
|
21
|
-
if (typeof source === 'string' && source.includes('{{')) {
|
|
22
|
-
return await this.evaluateStringExpression(source, scope);
|
|
23
|
-
}
|
|
24
|
-
if (Array.isArray(source)) {
|
|
25
|
-
return Promise.all(source.map((item) => this.evaluate(item, scope)));
|
|
26
|
-
}
|
|
27
|
-
if (typeof source === 'object' && source !== null) {
|
|
28
|
-
const evaluatedObject = {};
|
|
29
|
-
for (const key of Object.keys(source)) {
|
|
30
|
-
evaluatedObject[key] = await this.evaluate(source[key], scope);
|
|
31
|
-
}
|
|
32
|
-
return evaluatedObject;
|
|
33
|
-
}
|
|
34
|
-
return source;
|
|
35
|
-
}
|
|
36
|
-
catch {
|
|
37
|
-
return false;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
async evaluateStringExpression(templateExpression, scope) {
|
|
41
|
-
const exactMatch = templateExpression.match(/^\s*\{\{\s*([\s\S]*?)\s*\}\}\s*$/);
|
|
42
|
-
if (exactMatch) {
|
|
43
|
-
const sandbox = this.getOrCompileFunction(exactMatch[1]);
|
|
44
|
-
return sandbox(scope);
|
|
45
|
-
}
|
|
46
|
-
const regex = /\{\{\s*([\s\S]*?)\s*\}\}/g;
|
|
47
|
-
const matches = [];
|
|
48
|
-
let match;
|
|
49
|
-
while ((match = regex.exec(templateExpression)) !== null) {
|
|
50
|
-
matches.push({ expression: match[1], start: match.index, end: regex.lastIndex });
|
|
51
|
-
}
|
|
52
|
-
const values = await Promise.all(matches.map((m) => {
|
|
53
|
-
const sandbox = this.getOrCompileFunction(m.expression);
|
|
54
|
-
return sandbox(scope);
|
|
55
|
-
}));
|
|
56
|
-
let result = '';
|
|
57
|
-
let lastIndex = 0;
|
|
58
|
-
matches.forEach((m, i) => {
|
|
59
|
-
result += templateExpression.slice(lastIndex, m.start);
|
|
60
|
-
const value = values[i];
|
|
61
|
-
result += value !== undefined && value !== null ? String(value) : '';
|
|
62
|
-
lastIndex = m.end;
|
|
63
|
-
});
|
|
64
|
-
result += templateExpression.slice(lastIndex);
|
|
65
|
-
return result;
|
|
14
|
+
return this.engine.evaluate(source, scope, { swallowErrors: true });
|
|
66
15
|
}
|
|
67
16
|
}
|
|
68
17
|
exports.BackendExpressionEvaluator = BackendExpressionEvaluator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policy-expression-evaluator.util.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/entity-storage/policy-expression-evaluator.util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"policy-expression-evaluator.util.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/security/src/lib/entity-storage/policy-expression-evaluator.util.ts"],"names":[],"mappings":";;;AAAA,iEAAmF;AAMnF;;;GAGG;AACH,MAAa,0BAA0B;IAAvC;QACmB,WAAM,GAAG,IAAI,gCAAyB,EAAE,CAAC;IAK5D,CAAC;IAHC,KAAK,CAAC,QAAQ,CAAC,MAAe,EAAE,QAAgC,EAAE;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC;CACF;AAND,gEAMC;AAED,YAAY"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import type { AXPExpressionEvaluatorScope } from './workflow-expression-scope.service';
|
|
2
2
|
export declare class WorkflowExpressionEvaluatorService {
|
|
3
|
-
private readonly
|
|
4
|
-
private getOrCompileFunction;
|
|
3
|
+
private readonly engine;
|
|
5
4
|
evaluate(source: unknown, scope?: AXPExpressionEvaluatorScope): Promise<unknown>;
|
|
6
|
-
private evaluateStringExpression;
|
|
7
5
|
}
|
|
8
6
|
//# sourceMappingURL=workflow-expression-evaluator.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-expression-evaluator.service.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/workflow/src/lib/runtime/workflow-expression-evaluator.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workflow-expression-evaluator.service.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/workflow/src/lib/runtime/workflow-expression-evaluator.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAIvF,qBACa,kCAAkC;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;IAEpD,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,2BAAgC,GAAG,OAAO,CAAC,OAAO,CAAC;CAG3F"}
|
|
@@ -3,73 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.WorkflowExpressionEvaluatorService = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const common_1 = require("@nestjs/common");
|
|
6
|
+
const core_1 = require("@acorex-platform/framework-shared/core");
|
|
6
7
|
//#region ---- Expression evaluator (backend) ----
|
|
7
8
|
let WorkflowExpressionEvaluatorService = class WorkflowExpressionEvaluatorService {
|
|
8
9
|
constructor() {
|
|
9
|
-
this.
|
|
10
|
-
}
|
|
11
|
-
getOrCompileFunction(expression) {
|
|
12
|
-
if (!this.expressionCache.has(expression)) {
|
|
13
|
-
const hasMultipleStatements = expression.includes(';') || expression.includes('\n');
|
|
14
|
-
const fn = hasMultipleStatements
|
|
15
|
-
? new Function('scope', `with (scope) { return (async function() { ${expression} })(); }`)
|
|
16
|
-
: new Function('scope', `with (scope) { return (async function() { return ${expression}; })(); }`);
|
|
17
|
-
this.expressionCache.set(expression, fn);
|
|
18
|
-
}
|
|
19
|
-
return this.expressionCache.get(expression);
|
|
10
|
+
this.engine = new core_1.ExpressionEvaluatorEngine();
|
|
20
11
|
}
|
|
21
12
|
async evaluate(source, scope = {}) {
|
|
22
|
-
|
|
23
|
-
if (typeof source === 'string' && source.includes('{{')) {
|
|
24
|
-
return await this.evaluateStringExpression(source, scope);
|
|
25
|
-
}
|
|
26
|
-
if (Array.isArray(source)) {
|
|
27
|
-
const evaluated = [];
|
|
28
|
-
for (const item of source) {
|
|
29
|
-
evaluated.push(await this.evaluate(item, scope));
|
|
30
|
-
}
|
|
31
|
-
return evaluated;
|
|
32
|
-
}
|
|
33
|
-
if (typeof source === 'object' && source !== null) {
|
|
34
|
-
const evaluatedObject = {};
|
|
35
|
-
for (const key of Object.keys(source)) {
|
|
36
|
-
evaluatedObject[key] = await this.evaluate(source[key], scope);
|
|
37
|
-
}
|
|
38
|
-
return evaluatedObject;
|
|
39
|
-
}
|
|
40
|
-
return source;
|
|
41
|
-
}
|
|
42
|
-
catch (error) {
|
|
43
|
-
console.error('WorkflowExpressionEvaluator - evaluation failed:', source, error);
|
|
44
|
-
return false;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
async evaluateStringExpression(templateExpression, scope) {
|
|
48
|
-
const exactMatch = templateExpression.match(/^\s*\{\{\s*([\s\S]*?)\s*\}\}\s*$/);
|
|
49
|
-
if (exactMatch) {
|
|
50
|
-
const sandbox = this.getOrCompileFunction(exactMatch[1]);
|
|
51
|
-
return sandbox(scope);
|
|
52
|
-
}
|
|
53
|
-
const regex = /\{\{\s*([\s\S]*?)\s*\}\}/g;
|
|
54
|
-
const matches = [];
|
|
55
|
-
let match;
|
|
56
|
-
while ((match = regex.exec(templateExpression)) !== null) {
|
|
57
|
-
matches.push({ expression: match[1], start: match.index, end: regex.lastIndex });
|
|
58
|
-
}
|
|
59
|
-
const values = await Promise.all(matches.map((m) => {
|
|
60
|
-
const sandbox = this.getOrCompileFunction(m.expression);
|
|
61
|
-
return sandbox(scope);
|
|
62
|
-
}));
|
|
63
|
-
let result = '';
|
|
64
|
-
let lastIndex = 0;
|
|
65
|
-
matches.forEach((m, i) => {
|
|
66
|
-
result += templateExpression.slice(lastIndex, m.start);
|
|
67
|
-
const value = values[i];
|
|
68
|
-
result += value !== undefined && value !== null ? String(value) : '';
|
|
69
|
-
lastIndex = m.end;
|
|
70
|
-
});
|
|
71
|
-
result += templateExpression.slice(lastIndex);
|
|
72
|
-
return result;
|
|
13
|
+
return this.engine.evaluate(source, scope, { swallowErrors: true });
|
|
73
14
|
}
|
|
74
15
|
};
|
|
75
16
|
exports.WorkflowExpressionEvaluatorService = WorkflowExpressionEvaluatorService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-expression-evaluator.service.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/workflow/src/lib/runtime/workflow-expression-evaluator.service.ts"],"names":[],"mappings":";;;;AAAA,2CAA4C;
|
|
1
|
+
{"version":3,"file":"workflow-expression-evaluator.service.js","sourceRoot":"","sources":["../../../../../../../../libs/framework/server/workflow/src/lib/runtime/workflow-expression-evaluator.service.ts"],"names":[],"mappings":";;;;AAAA,2CAA4C;AAC5C,iEAAmF;AAGnF,kDAAkD;AAG3C,IAAM,kCAAkC,GAAxC,MAAM,kCAAkC;IAAxC;QACY,WAAM,GAAG,IAAI,gCAAyB,EAAE,CAAC;IAK5D,CAAC;IAHC,KAAK,CAAC,QAAQ,CAAC,MAAe,EAAE,QAAqC,EAAE;QACrE,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC;CACF,CAAA;AANY,gFAAkC;6CAAlC,kCAAkC;IAD9C,IAAA,mBAAU,GAAE;GACA,kCAAkC,CAM9C;AAED,YAAY"}
|