@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.
- package/build/_collections/endpoint-bridge.util.d.ts +40 -0
- package/build/_collections/endpoint-bridge.util.d.ts.map +1 -0
- package/build/_collections/endpoint-bridge.util.js +128 -0
- package/build/_collections/endpoint-bridge.util.js.map +1 -0
- package/build/_collections/operation-rest.util.d.ts +53 -0
- package/build/_collections/operation-rest.util.d.ts.map +1 -0
- package/build/_collections/operation-rest.util.js +143 -0
- package/build/_collections/operation-rest.util.js.map +1 -0
- package/build/_models/control-models/endpoint-params.control-model.d.ts +21 -2
- package/build/_models/control-models/endpoint-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/endpoint-params.control-model.js +51 -3
- package/build/_models/control-models/endpoint-params.control-model.js.map +1 -1
- package/build/_models/interfaces/bridgeable-endpoint.interface.d.ts +15 -0
- package/build/_models/interfaces/bridgeable-endpoint.interface.d.ts.map +1 -0
- package/build/_models/interfaces/bridgeable-endpoint.interface.js +3 -0
- package/build/_models/interfaces/bridgeable-endpoint.interface.js.map +1 -0
- package/build/_models/interfaces/endpoint-bridge-call.interface.d.ts +16 -0
- package/build/_models/interfaces/endpoint-bridge-call.interface.d.ts.map +1 -0
- package/build/_models/interfaces/endpoint-bridge-call.interface.js +3 -0
- package/build/_models/interfaces/endpoint-bridge-call.interface.js.map +1 -0
- package/build/_models/interfaces/endpoint-bridge-result.interface.d.ts +17 -0
- package/build/_models/interfaces/endpoint-bridge-result.interface.d.ts.map +1 -0
- package/build/_models/interfaces/endpoint-bridge-result.interface.js +3 -0
- package/build/_models/interfaces/endpoint-bridge-result.interface.js.map +1 -0
- package/build/_models/interfaces/operation-identity.interface.d.ts +20 -0
- package/build/_models/interfaces/operation-identity.interface.d.ts.map +1 -0
- package/build/_models/interfaces/operation-identity.interface.js +3 -0
- package/build/_models/interfaces/operation-identity.interface.js.map +1 -0
- package/build/_services/core/auth.service.d.ts +13 -0
- package/build/_services/core/auth.service.d.ts.map +1 -1
- package/build/_services/core/auth.service.js +23 -0
- package/build/_services/core/auth.service.js.map +1 -1
- package/build/index.d.ts +6 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +6 -0
- package/build/index.js.map +1 -1
- 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
|
|
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":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,EACsB,0BAA0B,EACrD,iBAAiB,
|
|
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
|
-
|
|
247
|
-
|
|
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":"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"}
|
|
@@ -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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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;
|
|
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,
|
|
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';
|
package/build/index.d.ts.map
CHANGED
|
@@ -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);
|
package/build/index.js.map
CHANGED
|
@@ -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.
|
|
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.
|
|
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.
|
|
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"
|