@futdevpro/nts-dynamo 1.15.280 → 1.15.285

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.
Files changed (37) hide show
  1. package/build/_collections/endpoint-bridge.util.d.ts +40 -0
  2. package/build/_collections/endpoint-bridge.util.d.ts.map +1 -0
  3. package/build/_collections/endpoint-bridge.util.js +128 -0
  4. package/build/_collections/endpoint-bridge.util.js.map +1 -0
  5. package/build/_collections/operation-rest.util.d.ts +53 -0
  6. package/build/_collections/operation-rest.util.d.ts.map +1 -0
  7. package/build/_collections/operation-rest.util.js +143 -0
  8. package/build/_collections/operation-rest.util.js.map +1 -0
  9. package/build/_models/control-models/endpoint-params.control-model.d.ts +21 -2
  10. package/build/_models/control-models/endpoint-params.control-model.d.ts.map +1 -1
  11. package/build/_models/control-models/endpoint-params.control-model.js +51 -3
  12. package/build/_models/control-models/endpoint-params.control-model.js.map +1 -1
  13. package/build/_models/interfaces/bridgeable-endpoint.interface.d.ts +15 -0
  14. package/build/_models/interfaces/bridgeable-endpoint.interface.d.ts.map +1 -0
  15. package/build/_models/interfaces/bridgeable-endpoint.interface.js +3 -0
  16. package/build/_models/interfaces/bridgeable-endpoint.interface.js.map +1 -0
  17. package/build/_models/interfaces/endpoint-bridge-call.interface.d.ts +16 -0
  18. package/build/_models/interfaces/endpoint-bridge-call.interface.d.ts.map +1 -0
  19. package/build/_models/interfaces/endpoint-bridge-call.interface.js +3 -0
  20. package/build/_models/interfaces/endpoint-bridge-call.interface.js.map +1 -0
  21. package/build/_models/interfaces/endpoint-bridge-result.interface.d.ts +17 -0
  22. package/build/_models/interfaces/endpoint-bridge-result.interface.d.ts.map +1 -0
  23. package/build/_models/interfaces/endpoint-bridge-result.interface.js +3 -0
  24. package/build/_models/interfaces/endpoint-bridge-result.interface.js.map +1 -0
  25. package/build/_models/interfaces/operation-identity.interface.d.ts +20 -0
  26. package/build/_models/interfaces/operation-identity.interface.d.ts.map +1 -0
  27. package/build/_models/interfaces/operation-identity.interface.js +3 -0
  28. package/build/_models/interfaces/operation-identity.interface.js.map +1 -0
  29. package/build/_services/core/auth.service.d.ts +13 -0
  30. package/build/_services/core/auth.service.d.ts.map +1 -1
  31. package/build/_services/core/auth.service.js +23 -0
  32. package/build/_services/core/auth.service.js.map +1 -1
  33. package/build/index.d.ts +6 -0
  34. package/build/index.d.ts.map +1 -1
  35. package/build/index.js +6 -0
  36. package/build/index.js.map +1 -1
  37. package/package.json +5 -5
@@ -0,0 +1,40 @@
1
+ import { DyNTS_Bridgeable_Endpoint } from '../_models/interfaces/bridgeable-endpoint.interface';
2
+ import { DyNTS_EndpointBridge_Call } from '../_models/interfaces/endpoint-bridge-call.interface';
3
+ import { DyNTS_EndpointBridge_Result } from '../_models/interfaces/endpoint-bridge-result.interface';
4
+ /**
5
+ * TRANSITIONAL bridge (HP-DOPL MP-2.3, decision D-2, DMCP-002): calls an existing `tasks[]` endpoint programmatically
6
+ * through its real `getFullExecution()` — preProcesses (auth), `headersSent` guard, error handling and the request
7
+ * hunter all run exactly once, the same way as over HTTP.
8
+ *
9
+ * ⚠️ Capability-limited: only `DyNTS_EndpointBridge_Util.capabilities` exist on the synthetic response.
10
+ * A task using cookies, redirects, files or streams fails with 501 `DyNTS-BRG-UNS` — such an endpoint must stay
11
+ * `expose.mcp: false` and is a review finding.
12
+ *
13
+ * ⛔ Exit condition: the bridge is removed for a domain as soon as that domain's endpoints are migrated to
14
+ * `DyFM_Operation_Settings` (MP-6); new endpoints never rely on it.
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * const result: DyNTS_EndpointBridge_Result = await DyNTS_EndpointBridge_Util.invoke(getTaskEndpoint, {
19
+ * params: { taskId: 't-1' }, headers: { authorization: `Bearer ${token}` },
20
+ * });
21
+ * ```
22
+ */
23
+ export declare class DyNTS_EndpointBridge_Util {
24
+ /** Response methods the synthetic response supports — anything in `unsupportedMethods` fails loudly. */
25
+ static readonly capabilities: string[];
26
+ /** Response methods that can not be emulated without a real HTTP connection. */
27
+ static readonly unsupportedMethods: string[];
28
+ /**
29
+ * Runs the endpoint with a synthetic request and captures the response.
30
+ * @param endpoint - the endpoint (e.g. a `DyNTS_Endpoint_Params`)
31
+ * @param call - params, query, body and headers of the call
32
+ * @throws 500 `DyNTS-BRG-NRS` when the endpoint finished without sending a response
33
+ */
34
+ static invoke(endpoint: DyNTS_Bridgeable_Endpoint, call?: DyNTS_EndpointBridge_Call): Promise<DyNTS_EndpointBridge_Result>;
35
+ /** Builds the synthetic request (lowercase headers, Express-like accessors). */
36
+ private static buildRequest;
37
+ /** Builds the synthetic response that records status, body and headers. */
38
+ private static buildResponse;
39
+ }
40
+ //# sourceMappingURL=endpoint-bridge.util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-bridge.util.d.ts","sourceRoot":"","sources":["../../src/_collections/endpoint-bridge.util.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,yBAAyB,EAAE,MAAM,qDAAqD,CAAC;AAChG,OAAO,EAAE,yBAAyB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,EAAE,2BAA2B,EAAE,MAAM,wDAAwD,CAAC;AAKrG;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,yBAAyB;IACpC,wGAAwG;IACxG,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAGpC;IAEF,gFAAgF;IAChF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAG1C;IAEF;;;;;OAKG;WACU,MAAM,CACjB,QAAQ,EAAE,yBAAyB,EACnC,IAAI,GAAE,yBAA8B,GACnC,OAAO,CAAC,2BAA2B,CAAC;IAqBvC,gFAAgF;IAChF,OAAO,CAAC,MAAM,CAAC,YAAY;IAsB3B,2EAA2E;IAC3E,OAAO,CAAC,MAAM,CAAC,aAAa;CA0D7B"}
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DyNTS_EndpointBridge_Util = void 0;
4
+ const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
5
+ const global_settings_const_1 = require("./global-settings.const");
6
+ /**
7
+ * TRANSITIONAL bridge (HP-DOPL MP-2.3, decision D-2, DMCP-002): calls an existing `tasks[]` endpoint programmatically
8
+ * through its real `getFullExecution()` — preProcesses (auth), `headersSent` guard, error handling and the request
9
+ * hunter all run exactly once, the same way as over HTTP.
10
+ *
11
+ * ⚠️ Capability-limited: only `DyNTS_EndpointBridge_Util.capabilities` exist on the synthetic response.
12
+ * A task using cookies, redirects, files or streams fails with 501 `DyNTS-BRG-UNS` — such an endpoint must stay
13
+ * `expose.mcp: false` and is a review finding.
14
+ *
15
+ * ⛔ Exit condition: the bridge is removed for a domain as soon as that domain's endpoints are migrated to
16
+ * `DyFM_Operation_Settings` (MP-6); new endpoints never rely on it.
17
+ *
18
+ * @example
19
+ * ```ts
20
+ * const result: DyNTS_EndpointBridge_Result = await DyNTS_EndpointBridge_Util.invoke(getTaskEndpoint, {
21
+ * params: { taskId: 't-1' }, headers: { authorization: `Bearer ${token}` },
22
+ * });
23
+ * ```
24
+ */
25
+ class DyNTS_EndpointBridge_Util {
26
+ /** Response methods the synthetic response supports — anything in `unsupportedMethods` fails loudly. */
27
+ static capabilities = [
28
+ 'status', 'sendStatus', 'send', 'json', 'end', 'setHeader', 'getHeader', 'removeHeader', 'set', 'header', 'type',
29
+ 'headersSent',
30
+ ];
31
+ /** Response methods that can not be emulated without a real HTTP connection. */
32
+ static unsupportedMethods = [
33
+ 'cookie', 'clearCookie', 'redirect', 'location', 'download', 'sendFile', 'attachment', 'render', 'write', 'pipe',
34
+ 'jsonp', 'format', 'writeHead', 'flushHeaders',
35
+ ];
36
+ /**
37
+ * Runs the endpoint with a synthetic request and captures the response.
38
+ * @param endpoint - the endpoint (e.g. a `DyNTS_Endpoint_Params`)
39
+ * @param call - params, query, body and headers of the call
40
+ * @throws 500 `DyNTS-BRG-NRS` when the endpoint finished without sending a response
41
+ */
42
+ static async invoke(endpoint, call = {}) {
43
+ const captured = {
44
+ sent: false, status: 200, body: undefined, headers: {},
45
+ };
46
+ const req = DyNTS_EndpointBridge_Util.buildRequest(endpoint, call);
47
+ const res = DyNTS_EndpointBridge_Util.buildResponse(endpoint, captured);
48
+ await endpoint.getFullExecution()(req, res);
49
+ // a task that never answers would hang a real HTTP client — here it is a loud error
50
+ if (!captured.sent) {
51
+ throw new fsm_dynamo_1.DyFM_Error({
52
+ status: 500,
53
+ errorCode: `${global_settings_const_1.DyNTS_global_settings.systemShortCodeName}|DyNTS-BRG-NRS`,
54
+ message: `bridged endpoint "${endpoint.name}" finished without sending a response`,
55
+ });
56
+ }
57
+ return { status: captured.status, body: captured.body, headers: captured.headers };
58
+ }
59
+ /** Builds the synthetic request (lowercase headers, Express-like accessors). */
60
+ static buildRequest(endpoint, call) {
61
+ const headers = {};
62
+ Object.entries(call.headers ?? {}).forEach(([name, value]) => {
63
+ headers[name.toLowerCase()] = value;
64
+ });
65
+ const readHeader = (name) => headers[name.toLowerCase()];
66
+ return {
67
+ params: { ...call.params },
68
+ query: { ...call.query },
69
+ body: call.body,
70
+ headers: headers,
71
+ get: readHeader,
72
+ header: readHeader,
73
+ originalUrl: `bridge://${endpoint.name ?? 'endpoint'}`,
74
+ url: `bridge://${endpoint.name ?? 'endpoint'}`,
75
+ ip: 'bridge',
76
+ };
77
+ }
78
+ /** Builds the synthetic response that records status, body and headers. */
79
+ static buildResponse(endpoint, captured) {
80
+ const res = {};
81
+ const finish = (body) => {
82
+ captured.sent = true;
83
+ captured.body = body;
84
+ return res;
85
+ };
86
+ const setHeader = (name, value) => {
87
+ captured.headers[name.toLowerCase()] = String(value);
88
+ return res;
89
+ };
90
+ Object.assign(res, {
91
+ status: (code) => {
92
+ captured.status = code;
93
+ return res;
94
+ },
95
+ sendStatus: (code) => {
96
+ captured.status = code;
97
+ return finish(undefined);
98
+ },
99
+ send: finish,
100
+ json: finish,
101
+ end: () => finish(captured.body),
102
+ setHeader: setHeader,
103
+ set: setHeader,
104
+ header: setHeader,
105
+ type: (value) => setHeader('content-type', value),
106
+ getHeader: (name) => captured.headers[name.toLowerCase()],
107
+ removeHeader: (name) => {
108
+ delete captured.headers[name.toLowerCase()];
109
+ },
110
+ });
111
+ Object.defineProperty(res, 'headersSent', { get: () => captured.sent });
112
+ // unsupported methods fail loudly with a coded error instead of silently doing nothing
113
+ DyNTS_EndpointBridge_Util.unsupportedMethods.forEach((method) => {
114
+ res[method] = () => {
115
+ throw new fsm_dynamo_1.DyFM_Error({
116
+ status: 501,
117
+ errorCode: `${global_settings_const_1.DyNTS_global_settings.systemShortCodeName}|DyNTS-BRG-UNS`,
118
+ message: `bridged endpoint "${endpoint.name}" uses res.${method}(), which the bridge can not emulate ` +
119
+ '(keep it expose.mcp: false)',
120
+ additionalContent: { endpoint: endpoint.name, method: method },
121
+ });
122
+ };
123
+ });
124
+ return res;
125
+ }
126
+ }
127
+ exports.DyNTS_EndpointBridge_Util = DyNTS_EndpointBridge_Util;
128
+ //# sourceMappingURL=endpoint-bridge.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-bridge.util.js","sourceRoot":"","sources":["../../src/_collections/endpoint-bridge.util.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { Request, Response } from 'express';
2
+ import { DyFM_Operation_Context, DyFM_Operation_Settings } from '@futdevpro/fsm-dynamo';
3
+ /** Response header that carries the non-fatal warnings of an operation call (comma separated). */
4
+ export declare const DyNTS_operationWarningsHeader: string;
5
+ /**
6
+ * REST → operation adapter (HP-DOPL MP-2.2): builds the transport-independent context and the positional inputs
7
+ * from an Express request, runs the operation through the single execution path and sends the result.
8
+ *
9
+ * Conventions (the same for every operation endpoint):
10
+ * - identity: `DyNTS_AuthService.getOperationIdentityFromRequest` (issuer = accountId);
11
+ * - `ifMatch`: the `If-Match` header (quotes and the weak `W/` prefix are stripped);
12
+ * - `dryRun`: the `dryRun=true` query parameter or the `X-Dry-Run: true` header;
13
+ * - `requestId`: the `X-Request-Id` header, generated when missing;
14
+ * - inputs: in the declaration order of `operation.inputs`, each from the path params first, then the query;
15
+ * the request body is appended as the last input when the operation declares `bodyParams`.
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * await DyNTS_OperationRest_Util.handle(getTask, req, res);
20
+ * ```
21
+ */
22
+ export declare class DyNTS_OperationRest_Util {
23
+ /**
24
+ * Runs the operation for the request and sends its result (errors are thrown to the endpoint error handler).
25
+ * @param operation - the operation of the endpoint
26
+ * @param req - the incoming request
27
+ * @param res - the response
28
+ */
29
+ static handle(operation: DyFM_Operation_Settings<unknown, unknown[], unknown>, req: Request, res: Response): Promise<void>;
30
+ /**
31
+ * Builds the operation context of a REST request.
32
+ * @param req - the incoming request
33
+ */
34
+ static buildContext(req: Request): DyFM_Operation_Context;
35
+ /**
36
+ * Builds the positional inputs of the operation from path params, query and body.
37
+ * @param operation - the operation of the endpoint
38
+ * @param req - the incoming request
39
+ * @throws 400 `DyNTS-OPR-INR` (missing required input) · `DyNTS-OPR-INT` (value of the wrong type)
40
+ */
41
+ static buildInputs(operation: DyFM_Operation_Settings<unknown, unknown[], unknown>, req: Request): unknown[];
42
+ /** Converts a path/query string to the declared basic type. */
43
+ private static coerce;
44
+ /** Reads the `If-Match` header without quotes and weak prefix. */
45
+ private static readIfMatch;
46
+ /** Reads a single header value (the first one when repeated). */
47
+ private static readHeader;
48
+ /** `true` only for the exact text `true`. */
49
+ private static readFlag;
50
+ /** Builds a coded 400 input error. */
51
+ private static inputError;
52
+ }
53
+ //# sourceMappingURL=operation-rest.util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-rest.util.d.ts","sourceRoot":"","sources":["../../src/_collections/operation-rest.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,EACgC,sBAAsB,EAAE,uBAAuB,EAErF,MAAM,uBAAuB,CAAC;AAQ/B,kGAAkG;AAClG,eAAO,MAAM,6BAA6B,EAAE,MAA+B,CAAC;AAE5E;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,wBAAwB;IACnC;;;;;OAKG;WACU,MAAM,CACjB,SAAS,EAAE,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAC/D,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACZ,OAAO,CAAC,IAAI,CAAC;IAYhB;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,sBAAsB;IAkBzD;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,EAAE;IA0B5G,+DAA+D;IAC/D,OAAO,CAAC,MAAM,CAAC,MAAM;IAiDrB,kEAAkE;IAClE,OAAO,CAAC,MAAM,CAAC,WAAW;IAM1B,iEAAiE;IACjE,OAAO,CAAC,MAAM,CAAC,UAAU;IAOzB,6CAA6C;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ;IAIvB,sCAAsC;IACtC,OAAO,CAAC,MAAM,CAAC,UAAU;CAU1B"}
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DyNTS_OperationRest_Util = exports.DyNTS_operationWarningsHeader = void 0;
4
+ const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
5
+ const global_service_1 = require("../_services/core/global.service");
6
+ const global_settings_const_1 = require("./global-settings.const");
7
+ /** Response header that carries the non-fatal warnings of an operation call (comma separated). */
8
+ exports.DyNTS_operationWarningsHeader = 'X-Operation-Warnings';
9
+ /**
10
+ * REST → operation adapter (HP-DOPL MP-2.2): builds the transport-independent context and the positional inputs
11
+ * from an Express request, runs the operation through the single execution path and sends the result.
12
+ *
13
+ * Conventions (the same for every operation endpoint):
14
+ * - identity: `DyNTS_AuthService.getOperationIdentityFromRequest` (issuer = accountId);
15
+ * - `ifMatch`: the `If-Match` header (quotes and the weak `W/` prefix are stripped);
16
+ * - `dryRun`: the `dryRun=true` query parameter or the `X-Dry-Run: true` header;
17
+ * - `requestId`: the `X-Request-Id` header, generated when missing;
18
+ * - inputs: in the declaration order of `operation.inputs`, each from the path params first, then the query;
19
+ * the request body is appended as the last input when the operation declares `bodyParams`.
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * await DyNTS_OperationRest_Util.handle(getTask, req, res);
24
+ * ```
25
+ */
26
+ class DyNTS_OperationRest_Util {
27
+ /**
28
+ * Runs the operation for the request and sends its result (errors are thrown to the endpoint error handler).
29
+ * @param operation - the operation of the endpoint
30
+ * @param req - the incoming request
31
+ * @param res - the response
32
+ */
33
+ static async handle(operation, req, res) {
34
+ const ctx = DyNTS_OperationRest_Util.buildContext(req);
35
+ const inputs = DyNTS_OperationRest_Util.buildInputs(operation, req);
36
+ const outcome = await fsm_dynamo_1.DyFM_OperationRun_Util.execute(operation, ctx, inputs);
37
+ if (outcome.warnings.length && !res.headersSent) {
38
+ res.setHeader(exports.DyNTS_operationWarningsHeader, outcome.warnings.join(','));
39
+ }
40
+ res.send(outcome.result);
41
+ }
42
+ /**
43
+ * Builds the operation context of a REST request.
44
+ * @param req - the incoming request
45
+ */
46
+ static buildContext(req) {
47
+ const identity = global_service_1.DyNTS_GlobalService?.getAuthService()?.getOperationIdentityFromRequest?.(req) ??
48
+ { authKind: fsm_dynamo_1.DyFM_OperationAuth_Type.none };
49
+ return new fsm_dynamo_1.DyFM_Operation_Context({
50
+ transport: 'rest',
51
+ authKind: identity.authKind,
52
+ issuer: identity.issuer,
53
+ clientUserId: identity.clientUserId,
54
+ apiKeyScopes: identity.apiKeyScopes,
55
+ ifMatch: DyNTS_OperationRest_Util.readIfMatch(req),
56
+ dryRun: DyNTS_OperationRest_Util.readFlag(req?.query?.dryRun) ||
57
+ DyNTS_OperationRest_Util.readFlag(req?.headers?.['x-dry-run']),
58
+ requestId: DyNTS_OperationRest_Util.readHeader(req, 'x-request-id'),
59
+ });
60
+ }
61
+ /**
62
+ * Builds the positional inputs of the operation from path params, query and body.
63
+ * @param operation - the operation of the endpoint
64
+ * @param req - the incoming request
65
+ * @throws 400 `DyNTS-OPR-INR` (missing required input) · `DyNTS-OPR-INT` (value of the wrong type)
66
+ */
67
+ static buildInputs(operation, req) {
68
+ const inputs = Object.entries(operation?.inputs ?? {}).map(([name, input]) => {
69
+ const raw = req?.params?.[name] ?? req?.query?.[name];
70
+ if (raw === undefined || raw === '') {
71
+ if (input.required === true && input.default === undefined) {
72
+ throw DyNTS_OperationRest_Util.inputError('DyNTS-OPR-INR', `operation "${operation.name}": input "${name}" is required`, name);
73
+ }
74
+ return input.default;
75
+ }
76
+ return DyNTS_OperationRest_Util.coerce({ operation: operation, name: name, input: input, raw: raw });
77
+ });
78
+ if (operation?.bodyParams) {
79
+ inputs.push(req?.body);
80
+ }
81
+ return inputs;
82
+ }
83
+ /** Converts a path/query string to the declared basic type. */
84
+ static coerce(set) {
85
+ const operation = set.operation;
86
+ const name = set.name;
87
+ const input = set.input;
88
+ const raw = set.raw;
89
+ const text = Array.isArray(raw) ? String(raw[raw.length - 1]) : String(raw);
90
+ let value = text;
91
+ if (input.type === fsm_dynamo_1.DyFM_BasicProperty_Type.number) {
92
+ value = Number(text);
93
+ if (!text.trim() || Number.isNaN(value)) {
94
+ throw DyNTS_OperationRest_Util.inputError('DyNTS-OPR-INT', `operation "${operation.name}": input "${name}" must be a number`, name);
95
+ }
96
+ }
97
+ else if (input.type === fsm_dynamo_1.DyFM_BasicProperty_Type.boolean) {
98
+ if (text !== 'true' && text !== 'false') {
99
+ throw DyNTS_OperationRest_Util.inputError('DyNTS-OPR-INT', `operation "${operation.name}": input "${name}" must be true or false`, name);
100
+ }
101
+ value = text === 'true';
102
+ }
103
+ else if (input.type === fsm_dynamo_1.DyFM_BasicProperty_Type.date) {
104
+ value = new Date(text);
105
+ if (Number.isNaN(value.getTime())) {
106
+ throw DyNTS_OperationRest_Util.inputError('DyNTS-OPR-INT', `operation "${operation.name}": input "${name}" must be a date`, name);
107
+ }
108
+ }
109
+ // an enum is checked on the converted value
110
+ if (input.enum && !input.enum.includes(value)) {
111
+ throw DyNTS_OperationRest_Util.inputError('DyNTS-OPR-INT', `operation "${operation.name}": input "${name}" must be one of ${input.enum.join(', ')}`, name);
112
+ }
113
+ return value;
114
+ }
115
+ /** Reads the `If-Match` header without quotes and weak prefix. */
116
+ static readIfMatch(req) {
117
+ const header = DyNTS_OperationRest_Util.readHeader(req, 'if-match');
118
+ return header ? header.replace(/^W\//, '').replace(/^"(.*)"$/, '$1') || undefined : undefined;
119
+ }
120
+ /** Reads a single header value (the first one when repeated). */
121
+ static readHeader(req, name) {
122
+ const value = req?.headers?.[name];
123
+ const single = Array.isArray(value) ? value[0] : value;
124
+ return single?.trim() || undefined;
125
+ }
126
+ /** `true` only for the exact text `true`. */
127
+ static readFlag(value) {
128
+ return (Array.isArray(value) ? value[value.length - 1] : value) === 'true';
129
+ }
130
+ /** Builds a coded 400 input error. */
131
+ static inputError(code, message, input) {
132
+ return new fsm_dynamo_1.DyFM_Error({
133
+ status: 400,
134
+ errorCode: `${global_settings_const_1.DyNTS_global_settings.systemShortCodeName}|${code}`,
135
+ addECToUserMsg: true,
136
+ message: message,
137
+ userMessage: message,
138
+ additionalContent: { input: input },
139
+ });
140
+ }
141
+ }
142
+ exports.DyNTS_OperationRest_Util = DyNTS_OperationRest_Util;
143
+ //# sourceMappingURL=operation-rest.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-rest.util.js","sourceRoot":"","sources":["../../src/_collections/operation-rest.util.ts"],"names":[],"mappings":";;;AAEA,sDAG+B;AAG/B,qEAAuE;AAEvE,mEAAgE;AAGhE,kGAAkG;AACrF,QAAA,6BAA6B,GAAW,sBAAsB,CAAC;AAE5E;;;;;;;;;;;;;;;;GAgBG;AACH,MAAa,wBAAwB;IACnC;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,SAA+D,EAC/D,GAAY,EACZ,GAAa;QAEb,MAAM,GAAG,GAA2B,wBAAwB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAC/E,MAAM,MAAM,GAAc,wBAAwB,CAAC,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAsC,MAAM,mCAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAEhH,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YAChD,GAAG,CAAC,SAAS,CAAC,qCAA6B,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3E,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,GAAY;QAC9B,MAAM,QAAQ,GACZ,oCAAmB,EAAE,cAAc,EAAE,EAAE,+BAA+B,EAAE,CAAC,GAAG,CAAC;YAC7E,EAAE,QAAQ,EAAE,oCAAuB,CAAC,IAAI,EAAE,CAAC;QAE7C,OAAO,IAAI,mCAAsB,CAAC;YAChC,SAAS,EAAE,MAAM;YACjB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,OAAO,EAAE,wBAAwB,CAAC,WAAW,CAAC,GAAG,CAAC;YAClD,MAAM,EAAE,wBAAwB,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC;gBAC3D,wBAAwB,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,WAAW,CAAC,CAAC;YAChE,SAAS,EAAE,wBAAwB,CAAC,UAAU,CAAC,GAAG,EAAE,cAAc,CAAC;SACpE,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,SAA+D,EAAE,GAAY;QAC9F,MAAM,MAAM,GAAc,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CACnE,CAAC,CAAE,IAAI,EAAE,KAAK,CAA0C,EAAW,EAAE;YACnE,MAAM,GAAG,GAAY,GAAG,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;YAE/D,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;gBACpC,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC3D,MAAM,wBAAwB,CAAC,UAAU,CACvC,eAAe,EAAE,cAAc,SAAS,CAAC,IAAI,aAAa,IAAI,eAAe,EAAE,IAAI,CACpF,CAAC;gBACJ,CAAC;gBAED,OAAO,KAAK,CAAC,OAAO,CAAC;YACvB,CAAC;YAED,OAAO,wBAAwB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QACvG,CAAC,CACF,CAAC;QAEF,IAAI,SAAS,EAAE,UAAU,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,+DAA+D;IACvD,MAAM,CAAC,MAAM,CAAC,GAKrB;QACC,MAAM,SAAS,GAAyD,GAAG,CAAC,SAAS,CAAC;QACtF,MAAM,IAAI,GAAW,GAAG,CAAC,IAAI,CAAC;QAC9B,MAAM,KAAK,GAAiC,GAAG,CAAC,KAAK,CAAC;QACtD,MAAM,GAAG,GAAY,GAAG,CAAC,GAAG,CAAC;QAC7B,MAAM,IAAI,GAAW,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACpF,IAAI,KAAK,GAAY,IAAI,CAAC;QAE1B,IAAI,KAAK,CAAC,IAAI,KAAK,oCAAuB,CAAC,MAAM,EAAE,CAAC;YAClD,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAErB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxC,MAAM,wBAAwB,CAAC,UAAU,CACvC,eAAe,EAAE,cAAc,SAAS,CAAC,IAAI,aAAa,IAAI,oBAAoB,EAAE,IAAI,CACzF,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,oCAAuB,CAAC,OAAO,EAAE,CAAC;YAC1D,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACxC,MAAM,wBAAwB,CAAC,UAAU,CACvC,eAAe,EAAE,cAAc,SAAS,CAAC,IAAI,aAAa,IAAI,yBAAyB,EAAE,IAAI,CAC9F,CAAC;YACJ,CAAC;YAED,KAAK,GAAG,IAAI,KAAK,MAAM,CAAC;QAC1B,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,oCAAuB,CAAC,IAAI,EAAE,CAAC;YACvD,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;YAEvB,IAAI,MAAM,CAAC,KAAK,CAAE,KAAc,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBAC5C,MAAM,wBAAwB,CAAC,UAAU,CACvC,eAAe,EAAE,cAAc,SAAS,CAAC,IAAI,aAAa,IAAI,kBAAkB,EAAE,IAAI,CACvF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAwB,CAAC,EAAE,CAAC;YACjE,MAAM,wBAAwB,CAAC,UAAU,CACvC,eAAe,EAAE,cAAc,SAAS,CAAC,IAAI,aAAa,IAAI,oBAAoB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAChH,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,kEAAkE;IAC1D,MAAM,CAAC,WAAW,CAAC,GAAY;QACrC,MAAM,MAAM,GAAuB,wBAAwB,CAAC,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAExF,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAChG,CAAC;IAED,iEAAiE;IACzD,MAAM,CAAC,UAAU,CAAC,GAAY,EAAE,IAAY;QAClD,MAAM,KAAK,GAAkC,GAAG,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;QAClE,MAAM,MAAM,GAAuB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAE3E,OAAO,MAAM,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IACrC,CAAC;IAED,6CAA6C;IACrC,MAAM,CAAC,QAAQ,CAAC,KAAc;QACpC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC;IAC7E,CAAC;IAED,sCAAsC;IAC9B,MAAM,CAAC,UAAU,CAAC,IAAY,EAAE,OAAe,EAAE,KAAa;QACpE,OAAO,IAAI,uBAAU,CAAC;YACpB,MAAM,EAAE,GAAG;YACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,IAAI,IAAI,EAAE;YACjE,cAAc,EAAE,IAAI;YACpB,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,OAAO;YACpB,iBAAiB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;SACpC,CAAC,CAAC;IACL,CAAC;CACF;AA9JD,4DA8JC"}
@@ -1,5 +1,5 @@
1
1
  import { Request, Response } from 'express';
2
- import { DyFM_Endpoint_SettingsBase, DyFM_HttpCallType } from '@futdevpro/fsm-dynamo';
2
+ import { DyFM_Endpoint_SettingsBase, DyFM_HttpCallType, DyFM_Operation_Settings } from '@futdevpro/fsm-dynamo';
3
3
  import { DyNTS_RouteSecurity } from '../../_enums/route-security.enum';
4
4
  import { DyNTS_AdmissionShed_Interface } from '../interfaces/admission-shed.interface';
5
5
  /**
@@ -35,6 +35,12 @@ export declare class DyNTS_Endpoint_Params_ControlModel<T_Result = unknown, I_In
35
35
  private readonly pathParams;
36
36
  private readonly preProcesses;
37
37
  private readonly tasks;
38
+ /**
39
+ * HP-DOPL MP-2.1 — the transport-independent operation this endpoint serves, instead of `tasks`.
40
+ * Mutually exclusive with `tasks`. Served by `DyNTS_OperationRest_Util` (HP-DOPL MP-2.2).
41
+ * Declared only (no emitted field): a tasks-only endpoint keeps its exact instance key layout.
42
+ */
43
+ readonly operation?: DyFM_Operation_Settings<unknown, unknown[], unknown>;
38
44
  private readonly logRequest;
39
45
  private readonly logRequestsParams;
40
46
  private readonly logRequestsContent;
@@ -94,7 +100,13 @@ export declare class DyNTS_Endpoint_Params_ControlModel<T_Result = unknown, I_In
94
100
  * the actual tasks to run,
95
101
  * the last one should contain the res.send(); execution to send response on API requests
96
102
  */
97
- tasks: ((req: Request, res: Response, issuer: string) => Promise<void>)[];
103
+ tasks?: ((req: Request, res: Response, issuer: string) => Promise<void>)[];
104
+ /**
105
+ * HP-DOPL MP-2.1 — the operation this endpoint serves (`@futdevpro/fsm-dynamo` `DyFM_Operation_Settings`).
106
+ * Mutually exclusive with `tasks`: giving both is a construction error. The operation must be exposed
107
+ * on REST (`expose.rest !== false`).
108
+ */
109
+ operation?: DyFM_Operation_Settings<unknown, unknown[], unknown>;
98
110
  /**
99
111
  * log settings for request and response
100
112
  */
@@ -139,6 +151,13 @@ export declare class DyNTS_Endpoint_Params_ControlModel<T_Result = unknown, I_In
139
151
  * @returns
140
152
  */
141
153
  getFullExecution(): (req: Request, res: Response) => Promise<void>;
154
+ /**
155
+ * HP-DOPL MP-2.1 — validates the optional `operation` input of the constructor.
156
+ * @param label - the endpoint name for the error message
157
+ * @param set - the constructor input
158
+ * @returns the operation, or `undefined` when the endpoint uses `tasks`
159
+ */
160
+ private static validateOperation;
142
161
  /** BFR-OVERSEER-014 — a végpont ÉPPEN futó kéréseinek száma (diagnosztika/teszt). */
143
162
  getActiveCount(): number;
144
163
  /** BFR-OVERSEER-014 — az eddig ledobott kérések száma ezen a végponton (diagnosztika/teszt). */
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint-params.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/endpoint-params.control-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint-params.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/endpoint-params.control-model.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ exports.DyNTS_Endpoint_Params = exports.DyNTS_Endpoint_Params_ControlModel = voi
4
4
  const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
5
5
  const global_settings_const_1 = require("../../_collections/global-settings.const");
6
6
  const client_safe_error_util_1 = require("../../_collections/client-safe-error.util");
7
+ const operation_rest_util_1 = require("../../_collections/operation-rest.util");
7
8
  const legacy_boolean_alias_util_1 = require("../../_collections/legacy-boolean-alias.util");
8
9
  const safe_diagnostic_control_service_1 = require("../../_modules/server/safe-diagnostic/safe-diagnostic.control-service");
9
10
  const safe_diagnostic_stage_type_enum_1 = require("../../_modules/server/safe-diagnostic/safe-diagnostic-stage.type-enum");
@@ -129,6 +130,10 @@ class DyNTS_Endpoint_Params_ControlModel extends fsm_dynamo_1.DyFM_Endpoint_Sett
129
130
  this.pathParams = pathParts;
130
131
  this.preProcesses = set.preProcesses ?? [];
131
132
  this.tasks = set.tasks ?? [];
133
+ const operation = DyNTS_Endpoint_Params_ControlModel.validateOperation(set.name ?? set.endpoint, set);
134
+ if (operation) {
135
+ this.operation = operation;
136
+ }
132
137
  this.stackLocation = (0, fsm_dynamo_1.DyFM_getConstructionStackLocation)();
133
138
  }
134
139
  catch (error) {
@@ -243,9 +248,15 @@ class DyNTS_Endpoint_Params_ControlModel extends fsm_dynamo_1.DyFM_Endpoint_Sett
243
248
  return originalSend(body);
244
249
  };
245
250
  }
246
- await fsm_dynamo_1.DyFM_Array.asyncForEach(this.tasks, async (task) => {
247
- await task(req, res, issuer);
248
- });
251
+ // HP-DOPL MP-2.2: an operation endpoint runs through the shared execution path, not tasks[]
252
+ if (this.operation) {
253
+ await operation_rest_util_1.DyNTS_OperationRest_Util.handle(this.operation, req, res);
254
+ }
255
+ else {
256
+ await fsm_dynamo_1.DyFM_Array.asyncForEach(this.tasks, async (task) => {
257
+ await task(req, res, issuer);
258
+ });
259
+ }
249
260
  if (this.isRequestLoggingEnabled) {
250
261
  fsm_dynamo_1.DyFM_Log.success(` <<<===== '${this.name}' result sent.`);
251
262
  if (this.isResponseContentLoggingEnabled) {
@@ -265,6 +276,43 @@ class DyNTS_Endpoint_Params_ControlModel extends fsm_dynamo_1.DyFM_Endpoint_Sett
265
276
  }
266
277
  };
267
278
  }
279
+ /**
280
+ * HP-DOPL MP-2.1 — validates the optional `operation` input of the constructor.
281
+ * @param label - the endpoint name for the error message
282
+ * @param set - the constructor input
283
+ * @returns the operation, or `undefined` when the endpoint uses `tasks`
284
+ */
285
+ static validateOperation(label, set) {
286
+ if (set.operation === undefined || set.operation === null) {
287
+ return undefined;
288
+ }
289
+ // a plain object would bypass the construction-time validation of DyFM_Operation_Settings
290
+ if (typeof set.operation.name !== 'string' || typeof set.operation.domain !== 'string' || !set.operation.expose) {
291
+ throw new fsm_dynamo_1.DyFM_Error({
292
+ status: 406,
293
+ errorCode: `${global_settings_const_1.DyNTS_global_settings.systemShortCodeName}|DyNTS-EP0-C03`,
294
+ addECToUserMsg: true,
295
+ message: `endpoint "${label}": operation must be a constructed DyFM_Operation_Settings`,
296
+ });
297
+ }
298
+ if (set.tasks?.length) {
299
+ throw new fsm_dynamo_1.DyFM_Error({
300
+ status: 406,
301
+ errorCode: `${global_settings_const_1.DyNTS_global_settings.systemShortCodeName}|DyNTS-EP0-C01`,
302
+ addECToUserMsg: true,
303
+ message: `endpoint "${label}": operation "${set.operation.name}" and tasks are mutually exclusive`,
304
+ });
305
+ }
306
+ if (set.operation.expose.rest === false) {
307
+ throw new fsm_dynamo_1.DyFM_Error({
308
+ status: 406,
309
+ errorCode: `${global_settings_const_1.DyNTS_global_settings.systemShortCodeName}|DyNTS-EP0-C02`,
310
+ addECToUserMsg: true,
311
+ message: `endpoint "${label}": operation "${set.operation.name}" is not exposed on REST (expose.rest: false)`,
312
+ });
313
+ }
314
+ return set.operation;
315
+ }
268
316
  /** BFR-OVERSEER-014 — a végpont ÉPPEN futó kéréseinek száma (diagnosztika/teszt). */
269
317
  getActiveCount() {
270
318
  return this.activeCount;
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint-params.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/endpoint-params.control-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint-params.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/endpoint-params.control-model.ts"],"names":[],"mappings":";;;AAEA,sDAG+B;AAE/B,oFAAiF;AACjF,sFAAuF;AACvF,gFAAkF;AAClF,4FAA6F;AAE7F,2HAE+E;AAC/E,2HAE+E;AAE/E,wEAA0E;AAC1E,wFAAkF;AAGlF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAa,kCAIX,SAAQ,uCAAsD;IAC9D,uEAAuE;IACvE;QACE,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,mBAAmB;IACnB,QAAQ,CAAsB;IAE9B;wBACoB;IAEpB;iCAC6B;IAEZ,UAAU,CAAW;IAErB,YAAY,GAAuD,EAAE,CAAC;IACtE,KAAK,CAAsE;IAS3E,UAAU,GAAG,KAAK,CAAC;IACnB,iBAAiB,GAAG,KAAK,CAAC;IAC1B,kBAAkB,GAAG,KAAK,CAAC;IAC3B,kBAAkB,GAAG,KAAK,CAAC;IACnC,aAAa,CAAS;IACd,sBAAsB,GAAG,KAAK,CAAC;IAEhD;;;OAGG;IACc,aAAa,CAAqB;IAEnD,0EAA0E;IACzD,MAAM,CAA8D;IAErF;;;;;;;OAOG;IACK,WAAW,GAAW,CAAC,CAAC;IAEhC,iFAAiF;IACzE,eAAe,GAAW,CAAC,CAAC;IAEpC,yFAAyF;IACjF,SAAS,GAAW,CAAC,CAAC;IAE9B,yDAAyD;IACjD,MAAM,CAAU,iBAAiB,GAAW,IAAI,CAAC;IAEzD,YACE,GA2EC;QAED,IAAI,CAAC;YACH,KAAK,CAAC,GAAG,CAAC,CAAC;YAEX,yDAA6B,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,yBAAyB,CAAC,CAAC;YACpF,yDAA6B,CAAC,MAAM,CAAC,IAAI,EAAE,mBAAmB,EAAE,kCAAkC,CAAC,CAAC;YACpG,yDAA6B,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,EAAE,gCAAgC,CAAC,CAAC;YACnG,yDAA6B,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,EAAE,iCAAiC,CAAC,CAAC;YACpG,yDAA6B,CAAC,MAAM,CAAC,IAAI,EAAE,wBAAwB,EAAE,iCAAiC,CAAC,CAAC;YAExG,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC;YACrC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,6CAAqB,CAAC,oBAAoB,CAAC;YAE3E,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;YACrB,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;YAE7B,IAAI,CAAC,uBAAuB,GAAG,GAAG,CAAC,UAAU,IAAI,6CAAqB,CAAC,YAAY,CAAC,OAAO,CAAC;YAC5F,IAAI,CAAC,gCAAgC,GAAG,GAAG,CAAC,iBAAiB;gBAC3D,6CAAqB,CAAC,YAAY,CAAC,cAAc,CAAC;YACpD,IAAI,CAAC,8BAA8B,GAAG,GAAG,CAAC,kBAAkB;gBAC1D,6CAAqB,CAAC,YAAY,CAAC,eAAe,CAAC;YACrD,IAAI,CAAC,+BAA+B,GAAG,GAAG,CAAC,kBAAkB;gBAC3D,6CAAqB,CAAC,YAAY,CAAC,eAAe,CAAC;YACrD,IAAI,CAAC,+BAA+B,GAAG,GAAG,CAAC,sBAAsB;gBAC/D,6CAAqB,CAAC,oCAAoC,CAAC;YAE7D,uFAAuF;YACvF,qFAAqF;YACrF,4FAA4F;YAC5F,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC;gBACtG,qBAAQ,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,6CAA6C;sBAC5F,qBAAqB,GAAG,CAAC,aAAa,oDAAoD,CAAC,CAAC;gBAChG,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;YACzC,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;YAEzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnB,MAAM,IAAI,uBAAU,CAAC;oBACnB,MAAM,EAAE,GAAG;oBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;oBACvE,cAAc,EAAE,IAAI;oBACpB,OAAO,EAAE,+DAA+D;oBACxE,WAAW,EACT,4CAA4C;wBAC5C,kDAAkD;oBACpD,iBAAiB,EAAE,GAAG;iBACvB,CAAC,CAAC;YACL,CAAC;YAED,IAAI,SAAS,GAAa,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAEnD,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,IAAY,EAAW,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9E,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;YAC3E,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAE5B,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YAC7B,MAAM,SAAS,GACb,kCAAkC,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAEtF,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,CAAC;YAED,IAAI,CAAC,aAAa,GAAG,IAAA,8CAAiC,GAAE,CAAC;QAC3D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,qEAAmC,CAAC,MAAM,CAAC;gBACzC,IAAI,EAAE,qCAAqC;gBAC3C,KAAK,EAAE,gEAA8B,CAAC,QAAQ;gBAC9C,KAAK,EAAE,KAAK;aACb,CAAC,CAAC;YAEH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,MAAM,CAAC,GAAY,EAAE,GAAa,EAAE,MAAc;QAC9D,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;gBACjC,IAAI,GAAG,GAAW,2BAA2B,IAAI,CAAC,IAAI,yBAAyB,MAAM,GAAG,CAAC;gBAEzF,IAAI,IAAI,CAAC,gCAAgC,EAAE,CAAC;oBAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;oBAEjD,GAAG,IAAI,iBAAiB,MAAM,EAAE,CAAC;gBACnC,CAAC;gBAED,IACE,IAAI,CAAC,8BAA8B;oBACnC,GAAG,CAAC,IAAI;oBACR,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,EAChC,CAAC;oBACD,qBAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACN,qBAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,gBAAgB;QACd,IAAI,MAAc,CAAC;QAEnB,OAAO,KAAK,EAAE,GAAY,EAAE,GAAa,EAAiB,EAAE;YAC1D,0FAA0F;YAC1F,8FAA8F;YAC9F,2FAA2F;YAC3F,sFAAsF;YACtF,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;gBACtB,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAE1B,OAAO;YACT,CAAC;YACD,IAAI,CAAC,WAAW,EAAE,CAAC;YAEnB,wFAAwF;YACxF,0FAA0F;YAC1F,yFAAyF;YACzF,sDAAsD;YACtD,MAAM,QAAQ,GAAW,4CAAmB,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE5E,IAAI,CAAC;gBACH,IAAI,CAAC;oBACH,oFAAoF;oBACpF,yFAAyF;oBACzF,4FAA4F;oBAC5F,iFAAiF;oBACjF,0BAA0B;oBAC1B,MAAM,GAAG,oCAAmB,EAAE,cAAc,EAAE,EAAE,oBAAoB,CAAC,GAAG,CAAC,IAAI,gBAAgB,CAAC;gBAChG,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,qEAAmC,CAAC,MAAM,CAAC;wBACzC,IAAI,EAAE,0CAA0C;wBAChD,KAAK,EAAE,gEAA8B,CAAC,QAAQ;wBAC9C,KAAK,EAAE,KAAK;qBACb,CAAC,CAAC;oBACH,MAAM,GAAG,gBAAgB,CAAC;gBAC5B,CAAC;gBAED,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;oBACjC,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;gBACtC,CAAC;gBAED,IAAI,6CAAqB,CAAC,YAAY,CAAC,oBAAoB,EAAE,CAAC;oBAC5D,qBAAQ,CAAC,IAAI,CAAC,qCAAqC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;gBAC5E,CAAC;gBAED,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;oBACvB,MAAM,IAAI,uBAAU,CAAC;wBACnB,MAAM,EAAE,GAAG;wBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;wBACvE,cAAc,EAAE,IAAI;wBACpB,OAAO,EACL,sEAAsE;4BACtE,qEAAqE;wBACvE,WAAW,EACT,4CAA4C;4BAC5C,kDAAkD;qBACrD,CAAC,CAAC;gBACL,CAAC;gBAED,MAAM,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAC7C,KAAK,EAAE,UAA0D,EAAiB,EAAE;oBAClF,MAAM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC7B,CAAC,CACF,CAAC;gBAEF,iGAAiG;gBACjG,+FAA+F;gBAC/F,6FAA6F;gBAC7F,oGAAoG;gBACpG,6FAA6F;gBAC7F,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;oBACpB,OAAO;gBACT,CAAC;gBAED,wFAAwF;gBACxF,gFAAgF;gBAChF,6EAA6E;gBAC7E,IAAI,oBAA6B,CAAC;gBAElC,IAAI,IAAI,CAAC,uBAAuB,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;oBACzE,MAAM,YAAY,GAAqB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAE1D,GAAG,CAAC,IAAI,GAAG,CAAC,IAAc,EAAY,EAAE;wBACtC,oBAAoB,GAAG,IAAI,CAAC;wBAE5B,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;oBAC5B,CAAC,CAAC;gBACJ,CAAC;gBAED,4FAA4F;gBAC5F,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,MAAM,8CAAwB,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBAClE,CAAC;qBAAM,CAAC;oBACN,MAAM,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EACtC,KAAK,EACH,IAAqE,EACtD,EAAE;wBACjB,MAAM,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;oBAC/B,CAAC,CACF,CAAC;gBACJ,CAAC;gBAED,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;oBACjC,qBAAQ,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAAC,IAAI,gBAAgB,CAAC,CAAC;oBAE7D,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;wBACzC,qBAAQ,CAAC,IAAI,CACX,2BAA2B,kCAAkC,CAAC,WAAW,CAAC,oBAAoB,CAAC,EAAE,CAClG,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAC5C,CAAC;oBAAS,CAAC;gBACT,4CAAmB,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAChD,2FAA2F;gBAC3F,2FAA2F;gBAC3F,oCAAoC;gBACpC,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACK,MAAM,CAAC,iBAAiB,CAC9B,KAAa,EACb,GAGC;QAED,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC1D,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,0FAA0F;QAC1F,IAAI,OAAO,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,SAAS,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YAChH,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;gBACvE,cAAc,EAAE,IAAI;gBACpB,OAAO,EAAE,aAAa,KAAK,4DAA4D;aACxF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YACtB,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;gBACvE,cAAc,EAAE,IAAI;gBACpB,OAAO,EAAE,aAAa,KAAK,iBAAiB,GAAG,CAAC,SAAS,CAAC,IAAI,oCAAoC;aACnG,CAAC,CAAC;QACL,CAAC;QAED,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YACxC,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;gBACvE,cAAc,EAAE,IAAI;gBACpB,OAAO,EAAE,aAAa,KAAK,iBAAiB,GAAG,CAAC,SAAS,CAAC,IAAI,+CAA+C;aAC9G,CAAC,CAAC;QACL,CAAC;QAED,OAAO,GAAG,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,qFAAqF;IACrF,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,gGAAgG;IAChG,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,2EAA2E;IACnE,UAAU;QAChB,OAAO,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,aAAa,CAAC;IACpF,CAAC;IAED;;;;;;;;;OASG;IACK,UAAU,CAAC,GAAY,EAAE,GAAa;QAC5C,IAAI,CAAC,SAAS,EAAE,CAAC;QAEjB,MAAM,IAAI,GAAkC;YAC1C,YAAY,EAAE,IAAI,CAAC,IAAI;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;QACF,MAAM,KAAK,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;QAEjC,IAAI,KAAK,GAAG,IAAI,CAAC,eAAe,IAAI,kCAAkC,CAAC,iBAAiB,EAAE,CAAC;YACzF,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;YAC7B,qBAAQ,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,WAAW,aAAa;kBACjF,oBAAoB,IAAI,CAAC,aAAa,iCAAiC;kBACvE,gCAAgC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,yEAAyE;gBACzE,qEAAmC,CAAC,MAAM,CAAC;oBACzC,IAAI,EAAE,0CAA0C;oBAChD,KAAK,EAAE,gEAA8B,CAAC,QAAQ;oBAC9C,KAAK,EAAE,KAAK;iBACb,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;YACvE,WAAW,EAAE,qEAAqE;YAClF,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,IAAI,CAAC,IAAI;SACxB,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,WAAW,CAAC,IAAa;QACtC,MAAM,SAAS,GAAW,IAAI,CAAC;QAC/B,IAAI,IAAY,CAAC;QAEjB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,oBAAoB,CAAC;QAC9B,CAAC;QAED,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,GAAG,IAAI,CAAC;QACd,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,eAAe,IAAI,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IACzG,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,KAAK,CACjB,GAAY,EACZ,GAAa,EACb,KAAoB,EACpB,MAAc,EACd,aAAuB;QAEvB,IAAI,CAAC;YACH,MAAM,MAAM,GAAW,kCAAkC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACpF,MAAM,UAAU,GAAmC,qEAAmC,CAAC,MAAM,CAAC;gBAC5F,IAAI,EAAE,wBAAwB;gBAC9B,KAAK,EAAE,gEAA8B,CAAC,QAAQ;gBAC9C,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,MAAM;aACf,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,MAAM,oCAAmB,CAAC,kBAAkB,EAAE,CAC5C,KAAK,EACL,GAAG,EACH,GAAG,EACH,MAAM,CACP,CAAC;YACJ,CAAC;YAAC,OAAO,YAAY,EAAE,CAAC;gBACtB,qEAAmC,CAAC,MAAM,CAAC;oBACzC,IAAI,EAAE,uCAAuC;oBAC7C,KAAK,EAAE,gEAA8B,CAAC,QAAQ;oBAC9C,KAAK,EAAE,YAAY;iBACpB,CAAC,CAAC;YACL,CAAC;YAED,4CAA4C;YAC5C,gEAAgE;YAChE,uEAAuE;YACvE,wEAAwE;YACxE,kEAAkE;YAClE,kEAAkE;YAClE,0DAA0D;YAC1D,2EAA2E;YAC3E,qEAAqE;YACrE,kCAAkC;YAClC,IAAI,CAAC,CAAC,KAAK,YAAY,uBAAU,CAAC,EAAE,CAAC;gBACnC,KAAK,GAAG,IAAI,uBAAU,CAAC;oBACrB,OAAO,EAAE,6BAA6B;oBACtC,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAAE;oBACpC,WAAW,EAAE,+EAA+E;oBAC5F,iBAAiB,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;oBAC7C,MAAM,EAAE,MAAM;iBACf,CAAC,CAAC;YACL,CAAC;YAED,IAAI,KAAK,YAAY,uBAAU,EAAE,CAAC;gBAChC,IAAI,6CAAqB,CAAC,oBAAoB,EAAE,CAAC;oBAC/C,KAAK,GAAI,KAAoB,CAAC,aAAa,EAAE,CAAC;oBAC9C,OAAQ,KAAoB,CAAC,MAAM,CAAC;oBACpC,yCAAyC;oBACzC,OAAQ,KAAoB,CAAC,KAAK,CAAC;gBACrC,CAAC;YACH,CAAC;YAED,IACG,KAAoB,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC;gBAC9C,KAAoB,CAAC,mBAAmB,EACzC,CAAC;gBACD,OAAQ,KAAoB,CAAC,mBAAmB,CAAC;YACnD,CAAC;YAED,IAAI,CAAC;gBACH,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;YAAC,MAAM,sBAAsB,CAAC,CAAC;gBAC9B,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;oBACzC,IAAI,CAAC;wBACH,KAAK,GAAG,wBAAW,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;wBAC9C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;oBACxB,CAAC;oBAAC,MAAM,oBAAoB,CAAC,CAAC;wBAC5B,qBAAQ,CAAC,OAAO,CACd,8EAA8E,CAC/E,CAAC;wBAEF,KAAK,GAAG,IAAI,uBAAU,CAAC;4BACrB,KAAK,EAAE,IAAI,KAAK,CAAC,mCAAmC,CAAC;yBACtD,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,qBAAQ,CAAC,OAAO,CAAC,0DAA0D,CAAC,CAAC;oBAE7E,KAAK,GAAG,IAAI,uBAAU,CAAC;wBACrB,KAAK,EAAE,IAAI,KAAK,CAAC,sBAAsB,CAAC;qBACzC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,oEAAoE;YACpE,0EAA0E;YAC1E,mEAAmE;YACnE,6DAA6D;YAC7D,sEAAsE;YACtE,uEAAuE;YACvE,mEAAmE;YACnE,oEAAoE;YACpE,GAAG,CAAC,MAAM,CAAC,kCAAkC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;YAEzE,wGAAwG;YACxG,0GAA0G;YAC1G,gFAAgF;YAChF,MAAM,eAAe,GAAY,mDAA0B,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAEhF,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAE1B,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;gBACjC,qBAAQ,CAAC,KAAK,CAAC,sCAAsC,EAAE,UAAU,CAAC,CAAC;YACrE,CAAC;QAEH,CAAC;QAAC,OAAO,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,eAAe,CAClB,SAAS,EACT;gBACE,GAAG,EAAE,GAAG;gBACR,GAAG,EAAE,GAAG;gBACR,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,MAAM;gBACd,aAAa,EAAE,aAAa;aAC7B,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,eAAe,CACrB,SAAc,EACd,WAMC;QAED,qEAAmC,CAAC,MAAM,CAAC;YACzC,IAAI,EAAE,sCAAsC;YAC5C,KAAK,EAAE,gEAA8B,CAAC,QAAQ;YAC9C,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;QAAC,MAAM,4BAA4B,CAAC,CAAC;YACpC,qBAAQ,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAC5D,IAAI,aAAkB,CAAC;YAEvB,IAAI,CAAC;gBACH,aAAa,GAAG,wBAAW,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACpE,CAAC;YAAC,OAAO,SAAS,EAAE,CAAC;gBACnB,qEAAmC,CAAC,MAAM,CAAC;oBACzC,IAAI,EAAE,+CAA+C;oBACrD,KAAK,EAAE,gEAA8B,CAAC,QAAQ;oBAC9C,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;YACL,CAAC;YAED,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,IAAI,CAAC,+BAA+B,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;oBACvE,IAAI,CAAC,KAAK,CACR,WAAW,CAAC,GAAG,EACf,WAAW,CAAC,GAAG,EACf,aAAa,EACb,WAAW,CAAC,MAAM,EAClB,IAAI,CACL,CAAC;oBAEF,qBAAQ,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;oBAE7E,OAAO;gBACT,CAAC;qBAAM,CAAC;oBACN,qBAAQ,CAAC,KAAK,CACZ,0EAA0E,CAC3E,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IAEH,CAAC;IAED,qFAAqF;IAC7E,MAAM,CAAC,kBAAkB,CAAC,KAAc;QAC9C,IAAI,CAAC;YACH,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,UAAU,CAAC,EAAE,CAAC;gBACjF,OAAO,GAAG,CAAC;YACb,CAAC;YAED,MAAM,SAAS,GAAY,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC;mBACrD,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC;mBAChC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAClC,MAAM,MAAM,GAAW,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAErF,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;QACnF,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,CAAC;QACb,CAAC;IACH,CAAC;IAED,gGAAgG;IACxF,kBAAkB;QACxB,MAAM,UAAU,GAAW,kCAAkC,CAAC,gBAAgB,CAC5E,6CAAqB,CAAC,mBAAmB,EACzC,OAAO,CACR,CAAC;QACF,MAAM,YAAY,GAAW,kCAAkC,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAEvG,OAAO,GAAG,UAAU,cAAc,YAAY,EAAE,CAAC;IACnD,CAAC;IAED,iFAAiF;IACzE,MAAM,CAAC,gBAAgB,CAAC,KAAc,EAAE,QAAgB;QAC9D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,SAAS,GAAW,KAAK,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAE7E,OAAO,SAAS,IAAI,QAAQ,CAAC;IAC/B,CAAC;IAEO,uBAAuB,CAAC,GAAY;QAC1C,IAAI,MAAM,GAAW,EAAE,CAAC;QAExB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAa,EAAQ,EAAE;YAC9C,MAAM,IAAI,KAAK,KAAK,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC;;AArvBH,gFAsvBC;AAY8C,mEAAqB"}
@@ -0,0 +1,15 @@
1
+ import { Request, Response } from 'express';
2
+ /**
3
+ * The part of an endpoint `DyNTS_EndpointBridge_Util` needs — a `DyNTS_Endpoint_Params` satisfies it
4
+ * (HP-DOPL MP-2.3). Kept minimal so the bridge does not import the endpoint model.
5
+ *
6
+ * @example
7
+ * ```ts
8
+ * const bridgeable: DyNTS_Bridgeable_Endpoint = getTaskEndpoint;
9
+ * ```
10
+ */
11
+ export interface DyNTS_Bridgeable_Endpoint {
12
+ name?: string;
13
+ getFullExecution(): (req: Request, res: Response) => Promise<void>;
14
+ }
15
+ //# sourceMappingURL=bridgeable-endpoint.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridgeable-endpoint.interface.d.ts","sourceRoot":"","sources":["../../../src/_models/interfaces/bridgeable-endpoint.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG5C;;;;;;;;GAQG;AACH,MAAM,WAAW,yBAAyB;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpE"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=bridgeable-endpoint.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridgeable-endpoint.interface.js","sourceRoot":"","sources":["../../../src/_models/interfaces/bridgeable-endpoint.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * One programmatic call of an endpoint through `DyNTS_EndpointBridge_Util` (HP-DOPL MP-2.3).
3
+ *
4
+ * @example
5
+ * ```ts
6
+ * const call: DyNTS_EndpointBridge_Call = { params: { taskId: 't-1' }, headers: { authorization: 'Bearer …' } };
7
+ * ```
8
+ */
9
+ export interface DyNTS_EndpointBridge_Call {
10
+ params?: Record<string, string>;
11
+ query?: Record<string, unknown>;
12
+ body?: unknown;
13
+ /** Header names are matched case-insensitively (stored lowercase, like Express). */
14
+ headers?: Record<string, string>;
15
+ }
16
+ //# sourceMappingURL=endpoint-bridge-call.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-bridge-call.interface.d.ts","sourceRoot":"","sources":["../../../src/_models/interfaces/endpoint-bridge-call.interface.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=endpoint-bridge-call.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-bridge-call.interface.js","sourceRoot":"","sources":["../../../src/_models/interfaces/endpoint-bridge-call.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * The captured response of a bridged endpoint call (HP-DOPL MP-2.3).
3
+ *
4
+ * @example
5
+ * ```ts
6
+ * const result: DyNTS_EndpointBridge_Result = await DyNTS_EndpointBridge_Util.invoke(endpoint, call);
7
+ * if (result.status >= 400) { … }
8
+ * ```
9
+ */
10
+ export interface DyNTS_EndpointBridge_Result {
11
+ /** HTTP-equivalent status (200 when the endpoint sent without setting one). */
12
+ status: number;
13
+ body: unknown;
14
+ /** Response headers, lowercase names. */
15
+ headers: Record<string, string>;
16
+ }
17
+ //# sourceMappingURL=endpoint-bridge-result.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-bridge-result.interface.d.ts","sourceRoot":"","sources":["../../../src/_models/interfaces/endpoint-bridge-result.interface.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,MAAM,WAAW,2BAA2B;IAC1C,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;IACd,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=endpoint-bridge-result.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-bridge-result.interface.js","sourceRoot":"","sources":["../../../src/_models/interfaces/endpoint-bridge-result.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ import { DyFM_OperationAuth_Type } from '@futdevpro/fsm-dynamo';
2
+ /**
3
+ * The caller identity of one request, as the auth layer resolves it for an operation call (HP-DOPL MP-2.2).
4
+ *
5
+ * 🔴 `issuer` is ALWAYS the accountId (`fdp-issuer-is-account-id`) — also for API key calls, where the key's
6
+ * user record must be resolved to its account. `clientUserId` is the service's own user id (ownership).
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const identity: DyNTS_Operation_Identity = { authKind: DyFM_OperationAuth_Type.token, issuer: accountId };
11
+ * ```
12
+ */
13
+ export interface DyNTS_Operation_Identity {
14
+ authKind: DyFM_OperationAuth_Type;
15
+ issuer?: string;
16
+ clientUserId?: string;
17
+ /** Scopes of the API key; `undefined` = legacy key without scopes (D-6). */
18
+ apiKeyScopes?: string[];
19
+ }
20
+ //# sourceMappingURL=operation-identity.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-identity.interface.d.ts","sourceRoot":"","sources":["../../../src/_models/interfaces/operation-identity.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;;;;;;;;;GAUG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=operation-identity.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-identity.interface.js","sourceRoot":"","sources":["../../../src/_models/interfaces/operation-identity.interface.ts"],"names":[],"mappings":""}
@@ -1,5 +1,6 @@
1
1
  import { Request, Response } from 'express';
2
2
  import { DyNTS_SingletonService } from '../base/singleton.service';
3
+ import { DyNTS_Operation_Identity } from '../../_models/interfaces/operation-identity.interface';
3
4
  /**
4
5
  * Extend this class as an Auth Service implementation
5
6
  *
@@ -141,6 +142,18 @@ export declare abstract class DyNTS_AuthService extends DyNTS_SingletonService {
141
142
  * @throws {DyFM_Error} `DyNTS-AS0-GI0` — ha a keresbol nem alllapithato meg az issuer.
142
143
  */
143
144
  requireIssuerFromRequest(req: Request): string;
145
+ /**
146
+ * HP-DOPL MP-2.2 — the caller identity of an operation call.
147
+ *
148
+ * Default (non-breaking for existing subclasses): an authenticated `token` call when `getIssuerFromRequest`
149
+ * resolves an issuer, otherwise an anonymous call. It never throws — a failing lookup counts as anonymous,
150
+ * and the operation's authorization then decides (401 for protected operations).
151
+ *
152
+ * ⚠️ Override it where the auth layer knows more: API key calls (`authKind: api-key`, the key's account as
153
+ * issuer, its scopes) and the service's own `clientUserId` — e.g. in `nts-fdp-templates` (HP-DOPL MP-5.2).
154
+ * @param req - the incoming request
155
+ */
156
+ getOperationIdentityFromRequest(req: Request): DyNTS_Operation_Identity;
144
157
  /**
145
158
  * Basic Module: UsageModule uses this function
146
159
  * @param req
@@ -1 +1 @@
1
- {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../src/_services/core/auth.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAI5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGnE;;;;;;;;;;;;GAYG;AACH,8BAAsB,iBAAkB,SAAQ,sBAAsB;IAEpE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAiB;IAE7C,SAAkB,mBAAmB,SAEkB;IAEvD;;;;;;OAMG;IACH,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAgCzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA4BK;IACL,QAAQ,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,QAAQ,CAAC,sBAAsB,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhF;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,mCAAmC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7F;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;IAEhE;;;;;;;;;;;;;;;;;;OAkBG;IACH,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAiB9C;;;OAGG;IACH,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;CACtD"}
1
+ {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../src/_services/core/auth.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAI5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uDAAuD,CAAC;AAEjG;;;;;;;;;;;;GAYG;AACH,8BAAsB,iBAAkB,SAAQ,sBAAsB;IAEpE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAiB;IAE7C,SAAkB,mBAAmB,SAEkB;IAEvD;;;;;;OAMG;IACH,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAgCzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA4BK;IACL,QAAQ,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,QAAQ,CAAC,sBAAsB,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhF;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,mCAAmC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7F;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;IAEhE;;;;;;;;;;;;;;;;;;OAkBG;IACH,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAiB9C;;;;;;;;;;OAUG;IACH,+BAA+B,CAAC,GAAG,EAAE,OAAO,GAAG,wBAAwB;IAcvE;;;OAGG;IACH,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;CACtD"}
@@ -89,6 +89,29 @@ class DyNTS_AuthService extends singleton_service_1.DyNTS_SingletonService {
89
89
  }
90
90
  return issuer;
91
91
  }
92
+ /**
93
+ * HP-DOPL MP-2.2 — the caller identity of an operation call.
94
+ *
95
+ * Default (non-breaking for existing subclasses): an authenticated `token` call when `getIssuerFromRequest`
96
+ * resolves an issuer, otherwise an anonymous call. It never throws — a failing lookup counts as anonymous,
97
+ * and the operation's authorization then decides (401 for protected operations).
98
+ *
99
+ * ⚠️ Override it where the auth layer knows more: API key calls (`authKind: api-key`, the key's account as
100
+ * issuer, its scopes) and the service's own `clientUserId` — e.g. in `nts-fdp-templates` (HP-DOPL MP-5.2).
101
+ * @param req - the incoming request
102
+ */
103
+ getOperationIdentityFromRequest(req) {
104
+ let issuer;
105
+ try {
106
+ issuer = this.getIssuerFromRequest(req);
107
+ }
108
+ catch {
109
+ issuer = undefined;
110
+ }
111
+ return issuer ?
112
+ { authKind: fsm_dynamo_1.DyFM_OperationAuth_Type.token, issuer: issuer } :
113
+ { authKind: fsm_dynamo_1.DyFM_OperationAuth_Type.none };
114
+ }
92
115
  }
93
116
  exports.DyNTS_AuthService = DyNTS_AuthService;
94
117
  //# sourceMappingURL=auth.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../src/_services/core/auth.service.ts"],"names":[],"mappings":";;;AAGA,sDAAmD;AAEnD,iEAAmE;AACnE,oFAAiF;AAEjF;;;;;;;;;;;;GAYG;AACH,MAAsB,iBAAkB,SAAQ,0CAAsB;IAE3D,WAAW,GAAW,aAAa,CAAC;IAE3B,mBAAmB,GACnC,0CAA0C;QAC1C,oDAAoD,CAAC;IAEvD;;;;;;OAMG;IACH,mBAAmB,CAAC,GAAY;QAC9B,MAAM,UAAU,GAAG,GAAG,EAAE,OAAO,EAAE,CAAC,eAAe,CAAC,CAAC;QAEnD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;gBACvE,cAAc,EAAE,IAAI;gBACpB,OAAO,EAAE,qBAAqB;gBAC9B,WAAW,EAAE,IAAI,CAAC,mBAAmB;gBACrC,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,mBAAmB,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE;aAC/C,CAAC,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;gBACvE,cAAc,EAAE,IAAI;gBACpB,OAAO,EAAE,gBAAgB;gBACzB,WAAW,EAAE,IAAI,CAAC,mBAAmB;gBACrC,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,mBAAmB,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE;aAC/C,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAuGD;;;;;;;;;;;;;;;;;;OAkBG;IACH,wBAAwB,CAAC,GAAY;QACnC,MAAM,MAAM,GAAuB,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAElE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;gBACvE,cAAc,EAAE,IAAI;gBACpB,OAAO,EAAE,gDAAgD;gBACzD,WAAW,EAAE,IAAI,CAAC,mBAAmB;gBACrC,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,mBAAmB,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE;aACzF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CAMF;AA7LD,8CA6LC"}
1
+ {"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../src/_services/core/auth.service.ts"],"names":[],"mappings":";;;AAGA,sDAA4E;AAE5E,iEAAmE;AACnE,oFAAiF;AAGjF;;;;;;;;;;;;GAYG;AACH,MAAsB,iBAAkB,SAAQ,0CAAsB;IAE3D,WAAW,GAAW,aAAa,CAAC;IAE3B,mBAAmB,GACnC,0CAA0C;QAC1C,oDAAoD,CAAC;IAEvD;;;;;;OAMG;IACH,mBAAmB,CAAC,GAAY;QAC9B,MAAM,UAAU,GAAG,GAAG,EAAE,OAAO,EAAE,CAAC,eAAe,CAAC,CAAC;QAEnD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;gBACvE,cAAc,EAAE,IAAI;gBACpB,OAAO,EAAE,qBAAqB;gBAC9B,WAAW,EAAE,IAAI,CAAC,mBAAmB;gBACrC,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,mBAAmB,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE;aAC/C,CAAC,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;gBACvE,cAAc,EAAE,IAAI;gBACpB,OAAO,EAAE,gBAAgB;gBACzB,WAAW,EAAE,IAAI,CAAC,mBAAmB;gBACrC,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,mBAAmB,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE;aAC/C,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAuGD;;;;;;;;;;;;;;;;;;OAkBG;IACH,wBAAwB,CAAC,GAAY;QACnC,MAAM,MAAM,GAAuB,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAElE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,uBAAU,CAAC;gBACnB,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;gBACvE,cAAc,EAAE,IAAI;gBACpB,OAAO,EAAE,gDAAgD;gBACzD,WAAW,EAAE,IAAI,CAAC,mBAAmB;gBACrC,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,mBAAmB,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE;aACzF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IACD;;;;;;;;;;OAUG;IACH,+BAA+B,CAAC,GAAY;QAC1C,IAAI,MAA0B,CAAC;QAE/B,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,GAAG,SAAS,CAAC;QACrB,CAAC;QAED,OAAO,MAAM,CAAC,CAAC;YACb,EAAE,QAAQ,EAAE,oCAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YAC7D,EAAE,QAAQ,EAAE,oCAAuB,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC;CAOF;AAtND,8CAsNC"}
package/build/index.d.ts CHANGED
@@ -13,6 +13,10 @@ export * from './_enums/predefined-data-types.enum';
13
13
  export * from './_enums/route-security.enum';
14
14
  /** Interfaces describing global configuration and certificates. */
15
15
  export * from './_models/interfaces/email-submission-receipt.interface';
16
+ export * from './_models/interfaces/operation-identity.interface';
17
+ export * from './_models/interfaces/bridgeable-endpoint.interface';
18
+ export * from './_models/interfaces/endpoint-bridge-call.interface';
19
+ export * from './_models/interfaces/endpoint-bridge-result.interface';
16
20
  export * from './_models/interfaces/certification-settings.interface';
17
21
  export * from './_models/interfaces/environment-settings.interface';
18
22
  export * from './_models/interfaces/global-service-settings.interface';
@@ -36,6 +40,8 @@ export * from './_collections/progress-handle.interface';
36
40
  export * from './_collections/progress-options.interface';
37
41
  export * from './_collections/signed-url.util';
38
42
  export * from './_collections/client-safe-error.util';
43
+ export * from './_collections/operation-rest.util';
44
+ export * from './_collections/endpoint-bridge.util';
39
45
  export * from './_collections/client-safe-error-response.interface';
40
46
  export * from './_collections/load-shed.util';
41
47
  export * from './_collections/secret-redaction.util';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA2BA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qCAAqC,CAAC;AACpD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,qDAAqD,CAAC;AACpE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0CAA0C,CAAC;AACzD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,sCAAsC,CAAC;AAIrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAK7C,mEAAmE;AACnE,cAAc,yDAAyD,CAAC;AACxE,cAAc,uDAAuD,CAAC;AACtE,cAAc,qDAAqD,CAAC;AACpE,cAAc,wDAAwD,CAAC;AACvE,cAAc,gDAAgD,CAAC;AAC/D,cAAc,wDAAwD,CAAC;AACvE,cAAc,yDAAyD,CAAC;AACxE,cAAc,uDAAuD,CAAC;AACtE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,0DAA0D,CAAC;AACzE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,2DAA2D,CAAC;AAC1E,cAAc,2DAA2D,CAAC;AAC1E,cAAc,iDAAiD,CAAC;AAChE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,2DAA2D,CAAC;AAC1E,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uCAAuC,CAAC;AACtD,cAAc,qDAAqD,CAAC;AACpE,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yCAAyC,CAAC;AACxD,cAAc,mCAAmC,CAAC;AAClD,cAAc,sCAAsC,CAAC;AAGrD,cAAc,wDAAwD,CAAC;AACvE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,mDAAmD,CAAC;AAClE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,wDAAwD,CAAC;AACvE,cAAc,sDAAsD,CAAC;AACrE,cAAc,uDAAuD,CAAC;AAGtE,cAAc,gCAAgC,CAAC;AAG/C,cAAc,mDAAmD,CAAC;AAKlE,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAE9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oDAAoD,CAAC;AACnE,cAAc,iCAAiC,CAAC;AAChD,cAAc,uCAAuC,CAAC;AACtD,cAAc,oDAAoD,CAAC;AAEnE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,oDAAoD,CAAC;AAGnE,cAAc,mCAAmC,CAAC;AAClD,cAAc,uCAAuC,CAAC;AACtD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AAGnD,cAAc,+BAA+B,CAAC;AAG9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC;AAGzD,cAAc,mCAAmC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA2BA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qCAAqC,CAAC;AACpD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,qDAAqD,CAAC;AACpE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0CAA0C,CAAC;AACzD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,sCAAsC,CAAC;AAIrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAK7C,mEAAmE;AACnE,cAAc,yDAAyD,CAAC;AACxE,cAAc,mDAAmD,CAAC;AAClE,cAAc,oDAAoD,CAAC;AACnE,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,qDAAqD,CAAC;AACpE,cAAc,wDAAwD,CAAC;AACvE,cAAc,gDAAgD,CAAC;AAC/D,cAAc,wDAAwD,CAAC;AACvE,cAAc,yDAAyD,CAAC;AACxE,cAAc,uDAAuD,CAAC;AACtE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,0DAA0D,CAAC;AACzE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,2DAA2D,CAAC;AAC1E,cAAc,2DAA2D,CAAC;AAC1E,cAAc,iDAAiD,CAAC;AAChE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,2DAA2D,CAAC;AAC1E,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,qDAAqD,CAAC;AACpE,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yCAAyC,CAAC;AACxD,cAAc,mCAAmC,CAAC;AAClD,cAAc,sCAAsC,CAAC;AAGrD,cAAc,wDAAwD,CAAC;AACvE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,mDAAmD,CAAC;AAClE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,wDAAwD,CAAC;AACvE,cAAc,sDAAsD,CAAC;AACrE,cAAc,uDAAuD,CAAC;AAGtE,cAAc,gCAAgC,CAAC;AAG/C,cAAc,mDAAmD,CAAC;AAKlE,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAE9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oDAAoD,CAAC;AACnE,cAAc,iCAAiC,CAAC;AAChD,cAAc,uCAAuC,CAAC;AACtD,cAAc,oDAAoD,CAAC;AAEnE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,oDAAoD,CAAC;AAGnE,cAAc,mCAAmC,CAAC;AAClD,cAAc,uCAAuC,CAAC;AACtD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AAGnD,cAAc,+BAA+B,CAAC;AAG9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC;AAGzD,cAAc,mCAAmC,CAAC"}
package/build/index.js CHANGED
@@ -42,6 +42,10 @@ tslib_1.__exportStar(require("./_enums/route-security.enum"), exports);
42
42
  // MODELS (CONTROL-MODELS, INTERFACES, TYPES)
43
43
  /** Interfaces describing global configuration and certificates. */
44
44
  tslib_1.__exportStar(require("./_models/interfaces/email-submission-receipt.interface"), exports);
45
+ tslib_1.__exportStar(require("./_models/interfaces/operation-identity.interface"), exports);
46
+ tslib_1.__exportStar(require("./_models/interfaces/bridgeable-endpoint.interface"), exports);
47
+ tslib_1.__exportStar(require("./_models/interfaces/endpoint-bridge-call.interface"), exports);
48
+ tslib_1.__exportStar(require("./_models/interfaces/endpoint-bridge-result.interface"), exports);
45
49
  tslib_1.__exportStar(require("./_models/interfaces/certification-settings.interface"), exports);
46
50
  tslib_1.__exportStar(require("./_models/interfaces/environment-settings.interface"), exports);
47
51
  tslib_1.__exportStar(require("./_models/interfaces/global-service-settings.interface"), exports);
@@ -65,6 +69,8 @@ tslib_1.__exportStar(require("./_collections/progress-handle.interface"), export
65
69
  tslib_1.__exportStar(require("./_collections/progress-options.interface"), exports);
66
70
  tslib_1.__exportStar(require("./_collections/signed-url.util"), exports);
67
71
  tslib_1.__exportStar(require("./_collections/client-safe-error.util"), exports);
72
+ tslib_1.__exportStar(require("./_collections/operation-rest.util"), exports);
73
+ tslib_1.__exportStar(require("./_collections/endpoint-bridge.util"), exports);
68
74
  tslib_1.__exportStar(require("./_collections/client-safe-error-response.interface"), exports);
69
75
  tslib_1.__exportStar(require("./_collections/load-shed.util"), exports);
70
76
  tslib_1.__exportStar(require("./_collections/secret-redaction.util"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;IAsBI;;;AAEJ,cAAc;AACd,sEAA4C;AAC5C,8EAAoD;AACpD,wFAA8D;AAC9D,8FAAoE;AACpE,sFAA4D;AAC5D,mFAAyD;AACzD,uFAA6D;AAC7D,+EAAqD;AAGrD,QAAQ;AACR,iFAAuD;AACvD,wEAA8C;AAC9C,8EAAoD;AACpD,8EAAoD;AACpD,uEAA6C;AAG7C,6CAA6C;AAE7C,mEAAmE;AACnE,kGAAwE;AACxE,gGAAsE;AACtE,8FAAoE;AACpE,iGAAuE;AACvE,yFAA+D;AAC/D,iGAAuE;AACvE,kGAAwE;AACxE,gGAAsE;AACtE,uFAA6D;AAC7D,mGAAyE;AACzE,qGAA2E;AAC3E,oGAA0E;AAC1E,oGAA0E;AAC1E,0FAAgE;AAChE,wFAA8D;AAC9D,yFAA+D;AAC/D,oGAA0E;AAC1E,+EAAqD;AACrD,iFAAuD;AACvD,4EAAkD;AAClD,mFAAyD;AACzD,oFAA0D;AAC1D,yEAA+C;AAC/C,gFAAsD;AACtD,8FAAoE;AACpE,wEAA8C;AAC9C,+EAAqD;AACrD,oFAA0D;AAC1D,gFAAsD;AACtD,6EAAmD;AACnD,mFAAyD;AACzD,kFAAwD;AACxD,4EAAkD;AAClD,+EAAqD;AAErD,wBAAwB;AACxB,iGAAuE;AACvE,yGAA+E;AAC/E,4FAAkE;AAClE,qGAA2E;AAC3E,iGAAuE;AACvE,+FAAqE;AACrE,gGAAsE;AAEtE,eAAe;AACf,yEAA+C;AAE/C,qBAAqB;AACrB,4FAAkE;AAGlE,WAAW;AACX,gBAAgB;AAChB,uEAA6C;AAC7C,wEAA8C;AAE9C,yEAA+C;AAC/C,6FAAmE;AACnE,0EAAgD;AAChD,gFAAsD;AACtD,6FAAmE;AAEnE,sFAA4D;AAC5D,oFAA0D;AAC1D,6FAAmE;AAEnE,gBAAgB;AAChB,4EAAkD;AAClD,gFAAsD;AACtD,wEAA8C;AAC9C,sEAA4C;AAC5C,kFAAwD;AACxD,6EAAmD;AAEnD,kBAAkB;AAClB,wEAA8C;AAE9C,iBAAiB;AACjB,+EAAqD;AACrD,mFAAyD;AAEzD,kBAAkB;AAClB,4EAAkD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;IAsBI;;;AAEJ,cAAc;AACd,sEAA4C;AAC5C,8EAAoD;AACpD,wFAA8D;AAC9D,8FAAoE;AACpE,sFAA4D;AAC5D,mFAAyD;AACzD,uFAA6D;AAC7D,+EAAqD;AAGrD,QAAQ;AACR,iFAAuD;AACvD,wEAA8C;AAC9C,8EAAoD;AACpD,8EAAoD;AACpD,uEAA6C;AAG7C,6CAA6C;AAE7C,mEAAmE;AACnE,kGAAwE;AACxE,4FAAkE;AAClE,6FAAmE;AACnE,8FAAoE;AACpE,gGAAsE;AACtE,gGAAsE;AACtE,8FAAoE;AACpE,iGAAuE;AACvE,yFAA+D;AAC/D,iGAAuE;AACvE,kGAAwE;AACxE,gGAAsE;AACtE,uFAA6D;AAC7D,mGAAyE;AACzE,qGAA2E;AAC3E,oGAA0E;AAC1E,oGAA0E;AAC1E,0FAAgE;AAChE,wFAA8D;AAC9D,yFAA+D;AAC/D,oGAA0E;AAC1E,+EAAqD;AACrD,iFAAuD;AACvD,4EAAkD;AAClD,mFAAyD;AACzD,oFAA0D;AAC1D,yEAA+C;AAC/C,gFAAsD;AACtD,6EAAmD;AACnD,8EAAoD;AACpD,8FAAoE;AACpE,wEAA8C;AAC9C,+EAAqD;AACrD,oFAA0D;AAC1D,gFAAsD;AACtD,6EAAmD;AACnD,mFAAyD;AACzD,kFAAwD;AACxD,4EAAkD;AAClD,+EAAqD;AAErD,wBAAwB;AACxB,iGAAuE;AACvE,yGAA+E;AAC/E,4FAAkE;AAClE,qGAA2E;AAC3E,iGAAuE;AACvE,+FAAqE;AACrE,gGAAsE;AAEtE,eAAe;AACf,yEAA+C;AAE/C,qBAAqB;AACrB,4FAAkE;AAGlE,WAAW;AACX,gBAAgB;AAChB,uEAA6C;AAC7C,wEAA8C;AAE9C,yEAA+C;AAC/C,6FAAmE;AACnE,0EAAgD;AAChD,gFAAsD;AACtD,6FAAmE;AAEnE,sFAA4D;AAC5D,oFAA0D;AAC1D,6FAAmE;AAEnE,gBAAgB;AAChB,4EAAkD;AAClD,gFAAsD;AACtD,wEAA8C;AAC9C,sEAA4C;AAC5C,kFAAwD;AACxD,6EAAmD;AAEnD,kBAAkB;AAClB,wEAA8C;AAE9C,iBAAiB;AACjB,+EAAqD;AACrD,mFAAyD;AAEzD,kBAAkB;AAClB,4EAAkD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@futdevpro/nts-dynamo",
3
- "version": "01.15.280",
3
+ "version": "01.15.285",
4
4
  "description": "Dynamic NodeTS (NodeJS-Typescript), MongoDB Backend System Framework by Future Development Program Ltd.",
5
5
  "DyBu_settings": {
6
6
  "packageType": "server-package",
@@ -442,15 +442,17 @@
442
442
  "empty": ""
443
443
  },
444
444
  "dependencies": {
445
+ "crypto-js": "~4.2.0",
445
446
  "esbuild": "0.28.2",
446
447
  "openai": "6.49.0",
448
+ "tslib": "~2.8.1",
447
449
  "typescript": "5.9.3"
448
450
  },
449
451
  "peerDependencies": {
450
452
  "@anthropic-ai/sdk": "~0.39.0",
451
453
  "@modelcontextprotocol/sdk": "~1.29.0",
452
454
  "better-sqlite3": "~12.4.1",
453
- "@futdevpro/fsm-dynamo": ">=1.20.55 <2",
455
+ "@futdevpro/fsm-dynamo": ">=1.20.64 <2",
454
456
  "@types/express": "4.17.21",
455
457
  "@types/geoip-lite": "~1.4.4",
456
458
  "@types/node": "~24.1.0",
@@ -489,7 +491,7 @@
489
491
  }
490
492
  },
491
493
  "devDependencies": {
492
- "@futdevpro/fsm-dynamo": "1.20.55",
494
+ "@futdevpro/fsm-dynamo": "1.20.66",
493
495
  "@futdevpro/dynamo-eslint": "1.20.29",
494
496
  "@discordjs/opus": "^0.10.0",
495
497
  "@discordjs/voice": "^0.18.0",
@@ -500,7 +502,6 @@
500
502
  "@modelcontextprotocol/sdk": "~1.29.0",
501
503
  "@types/better-sqlite3": "~7.6.13",
502
504
  "better-sqlite3": "~12.4.1",
503
- "crypto-js": "~4.2.0",
504
505
  "decimal.js": "10.6.0",
505
506
  "discord.js": "~14.24.2",
506
507
  "eslint": "~9.39.5",
@@ -516,7 +517,6 @@
516
517
  "openai": "6.49.0",
517
518
  "socket.io": "~4.8.1",
518
519
  "socket.io-client": "~4.8.1",
519
- "tslib": "~2.6.2",
520
520
  "typescript-eslint": "8.67.0",
521
521
  "zod": "4.4.3",
522
522
  "husky": "^9.1.7"