@futdevpro/fsm-dynamo 1.20.55 → 1.20.58

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 (29) hide show
  1. package/build/_enums/operation-auth.type-enum.d.ts +19 -0
  2. package/build/_enums/operation-auth.type-enum.d.ts.map +1 -0
  3. package/build/_enums/operation-auth.type-enum.js +23 -0
  4. package/build/_enums/operation-auth.type-enum.js.map +1 -0
  5. package/build/_models/control-models/error.control-model.d.ts +10 -0
  6. package/build/_models/control-models/error.control-model.d.ts.map +1 -1
  7. package/build/_models/control-models/error.control-model.js +39 -3
  8. package/build/_models/control-models/error.control-model.js.map +1 -1
  9. package/build/_models/control-models/operation-context.control-model.d.ts +57 -0
  10. package/build/_models/control-models/operation-context.control-model.d.ts.map +1 -0
  11. package/build/_models/control-models/operation-context.control-model.js +115 -0
  12. package/build/_models/control-models/operation-context.control-model.js.map +1 -0
  13. package/build/_models/control-models/operation-settings.control-model.d.ts +55 -0
  14. package/build/_models/control-models/operation-settings.control-model.d.ts.map +1 -0
  15. package/build/_models/control-models/operation-settings.control-model.js +120 -0
  16. package/build/_models/control-models/operation-settings.control-model.js.map +1 -0
  17. package/build/_models/interfaces/operation-exposure.interface.d.ts +21 -0
  18. package/build/_models/interfaces/operation-exposure.interface.d.ts.map +1 -0
  19. package/build/_models/interfaces/operation-exposure.interface.js +3 -0
  20. package/build/_models/interfaces/operation-exposure.interface.js.map +1 -0
  21. package/build/_models/interfaces/operation-input-settings.interface.d.ts +29 -0
  22. package/build/_models/interfaces/operation-input-settings.interface.d.ts.map +1 -0
  23. package/build/_models/interfaces/operation-input-settings.interface.js +3 -0
  24. package/build/_models/interfaces/operation-input-settings.interface.js.map +1 -0
  25. package/build/index.d.ts +5 -0
  26. package/build/index.d.ts.map +1 -1
  27. package/build/index.js +5 -0
  28. package/build/index.js.map +1 -1
  29. package/package.json +1 -1
@@ -0,0 +1,19 @@
1
+ /**
2
+ * How the caller of an operation authenticated.
3
+ *
4
+ * @example
5
+ * ```ts
6
+ * if (ctx.authKind === DyFM_OperationAuth_Type.apiKey) {
7
+ * // scope checks apply
8
+ * }
9
+ * ```
10
+ */
11
+ export declare enum DyFM_OperationAuth_Type {
12
+ /** Anonymous call: no authenticated identity. */
13
+ none = "none",
14
+ /** Authenticated with a user (session/JWT) token. */
15
+ token = "token",
16
+ /** Authenticated with an API key; `apiKeyScopes` may restrict what it can call. */
17
+ apiKey = "api-key"
18
+ }
19
+ //# sourceMappingURL=operation-auth.type-enum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-auth.type-enum.d.ts","sourceRoot":"","sources":["../../src/_enums/operation-auth.type-enum.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,oBAAY,uBAAuB;IACjC,iDAAiD;IACjD,IAAI,SAAS;IACb,qDAAqD;IACrD,KAAK,UAAU;IACf,mFAAmF;IACnF,MAAM,YAAY;CACnB"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DyFM_OperationAuth_Type = void 0;
4
+ /**
5
+ * How the caller of an operation authenticated.
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * if (ctx.authKind === DyFM_OperationAuth_Type.apiKey) {
10
+ * // scope checks apply
11
+ * }
12
+ * ```
13
+ */
14
+ var DyFM_OperationAuth_Type;
15
+ (function (DyFM_OperationAuth_Type) {
16
+ /** Anonymous call: no authenticated identity. */
17
+ DyFM_OperationAuth_Type["none"] = "none";
18
+ /** Authenticated with a user (session/JWT) token. */
19
+ DyFM_OperationAuth_Type["token"] = "token";
20
+ /** Authenticated with an API key; `apiKeyScopes` may restrict what it can call. */
21
+ DyFM_OperationAuth_Type["apiKey"] = "api-key";
22
+ })(DyFM_OperationAuth_Type || (exports.DyFM_OperationAuth_Type = DyFM_OperationAuth_Type = {}));
23
+ //# sourceMappingURL=operation-auth.type-enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-auth.type-enum.js","sourceRoot":"","sources":["../../src/_enums/operation-auth.type-enum.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;GASG;AACH,IAAY,uBAOX;AAPD,WAAY,uBAAuB;IACjC,iDAAiD;IACjD,wCAAa,CAAA;IACb,qDAAqD;IACrD,0CAAe,CAAA;IACf,mFAAmF;IACnF,6CAAkB,CAAA;AACpB,CAAC,EAPW,uBAAuB,uCAAvB,uBAAuB,QAOlC"}
@@ -156,6 +156,16 @@ export declare class DyFM_Error_ControlModel extends Error implements DyFM_Metad
156
156
  */
157
157
  static getSemanticMessage(error: DyFM_UnknownError): string;
158
158
  static getErrorStatus(error: DyFM_UnknownError): number;
159
+ /**
160
+ * Returns the error code of the error, searching the known shapes in order.
161
+ *
162
+ * ⚠️ **At runtime this CAN return `undefined`** — e.g. for a plain `Error` without a `code`
163
+ * (BFR-CCAPREVISIONED-007). The declared return type is still `string` ONLY for compatibility:
164
+ * changing it to `string | undefined` breaks strict consumers at compile time (measured
165
+ * 2026-09-17: 14 definite + 11 probable sites in `ccap-revisioned/server`, `strict: true`).
166
+ * The type change is staged — until then, ALWAYS apply a fallback (`?? ''` / `?? 'X-CODE'`)
167
+ * before reading `.length` or other members.
168
+ */
159
169
  static getErrorCode(error: DyFM_UnknownError): string;
160
170
  static getErrorStack(error: DyFM_UnknownError): string;
161
171
  static isDyFMError(error: any): error is DyFM_Error_ControlModel;
@@ -1 +1 @@
1
- {"version":3,"file":"error.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/error.control-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/error.control-model.ts"],"names":[],"mappings":"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"}
@@ -188,6 +188,25 @@ class DyFM_Error_ControlModel extends Error {
188
188
  else {
189
189
  this.stack = new Error().stack;
190
190
  }
191
+ /**
192
+ * BFR-CCAPREVISIONED-007 — the own chain level of a PLAIN (non-Dynamo) source error.
193
+ *
194
+ * If `set.error` is a plain `Error` (no `_messages`) and the caller passes its OWN, DIFFERENT
195
+ * message, the source error's message is a SEPARATE chain level. Previously this message was
196
+ * pushed into a dead array (`previousErrorCodes`), after the code chain was already built — so
197
+ * the root-cause message appeared neither in `_messages` nor in `_message`, only in the stack.
198
+ *
199
+ * ⚠️ If the caller passes NO own message, the outer level ADOPTS the source message — then
200
+ * there is no separate level (otherwise the same message would appear twice).
201
+ *
202
+ * ⭐ The level also gets a PLACEHOLDER code (`DyFM_error_defaults.errorCode`), exactly like a
203
+ * Dynamo level without a code: this keeps `_messages` and `_errorCodes` INDEX-ALIGNED, so the
204
+ * highlighted-code based `_message` selection does not shift.
205
+ */
206
+ const plainSourceMessage = !set.error?._messages && typeof set.error !== 'string'
207
+ ? (set.error?.message || undefined)
208
+ : undefined;
209
+ const isPlainSourceLevel = !!plainSourceMessage && !!set.message && set.message !== plainSourceMessage;
191
210
  /** set errorCodes */
192
211
  let previousErrorCodes = [];
193
212
  if (set.error?._errorCodes) {
@@ -197,7 +216,13 @@ class DyFM_Error_ControlModel extends Error {
197
216
  set.errorCode = error_defaults_const_1.DyFM_error_defaults.errorCode;
198
217
  }
199
218
  previousErrorCodes = previousErrorCodes.filter((code) => code !== set.errorCode);
200
- this._errorCodes = [...previousErrorCodes, set.errorCode].filter(Boolean);
219
+ // The placeholder is added AFTER the dedupe: for an outer level without a code the dedupe would
220
+ // otherwise filter it out and the chain would shift (BFR-CCAPREVISIONED-007).
221
+ this._errorCodes = [
222
+ ...previousErrorCodes,
223
+ ...(isPlainSourceLevel ? [error_defaults_const_1.DyFM_error_defaults.errorCode] : []),
224
+ set.errorCode,
225
+ ].filter(Boolean);
201
226
  /** bring up non NTS and non default first error */
202
227
  const filteredErrorCodes = this._errorCodes.filter((code) => code && code !== error_defaults_const_1.DyFM_error_defaults.errorCode &&
203
228
  !exports.DyFM_errorĐFlagParts.some((part) => code.includes(part)));
@@ -230,8 +255,9 @@ class DyFM_Error_ControlModel extends Error {
230
255
  if (set.error?._messages) {
231
256
  previousMessages.push(...(set.error?._messages ?? []));
232
257
  }
233
- else if (set.error?.message) {
234
- previousErrorCodes.push(set.error?.message);
258
+ else if (isPlainSourceLevel) {
259
+ // BFR-CCAPREVISIONED-007: the plain source error's message is PART OF THE CHAIN, never lost.
260
+ previousMessages.push(plainSourceMessage);
235
261
  }
236
262
  previousMessages = previousMessages.filter((msg) => msg !== set.message);
237
263
  this._messages = [...previousMessages, set.message].filter(Boolean);
@@ -518,6 +544,16 @@ class DyFM_Error_ControlModel extends Error {
518
544
  error?.status ??
519
545
  error?.error?.___status ?? 500;
520
546
  }
547
+ /**
548
+ * Returns the error code of the error, searching the known shapes in order.
549
+ *
550
+ * ⚠️ **At runtime this CAN return `undefined`** — e.g. for a plain `Error` without a `code`
551
+ * (BFR-CCAPREVISIONED-007). The declared return type is still `string` ONLY for compatibility:
552
+ * changing it to `string | undefined` breaks strict consumers at compile time (measured
553
+ * 2026-09-17: 14 definite + 11 probable sites in `ccap-revisioned/server`, `strict: true`).
554
+ * The type change is staged — until then, ALWAYS apply a fallback (`?? ''` / `?? 'X-CODE'`)
555
+ * before reading `.length` or other members.
556
+ */
521
557
  static getErrorCode(error) {
522
558
  return error?._errorCode ??
523
559
  error?.error?._errorCode ??
@@ -1 +1 @@
1
- {"version":3,"file":"error.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/error.control-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/error.control-model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import { DyFM_OperationAuth_Type } from '../../_enums/operation-auth.type-enum';
2
+ import { DyFM_Operation_Exposure } from '../interfaces/operation-exposure.interface';
3
+ /**
4
+ * Transport-independent context of ONE operation call (HP-DOPL MP-1.3).
5
+ *
6
+ * The REST, MCP and CLI adapters build this object from their own request shape, so the operation's
7
+ * `run(ctx, ...inputs)` never sees Express, JSON-RPC or commander objects.
8
+ *
9
+ * 🔴 `issuer` is ALWAYS the accountId, NEVER a user id (`fdp-issuer-is-account-id`). The service's own
10
+ * user id — the content-ownership identity — travels separately in `clientUserId`.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * const ctx: DyFM_Operation_Context = new DyFM_Operation_Context({
15
+ * transport: 'mcp',
16
+ * authKind: DyFM_OperationAuth_Type.apiKey,
17
+ * issuer: accountId,
18
+ * clientUserId: userId,
19
+ * apiKeyScopes: [ 'task:read' ],
20
+ * });
21
+ * ```
22
+ */
23
+ export declare class DyFM_OperationContext_ControlModel {
24
+ /** Transport the call arrived on. */
25
+ transport?: keyof DyFM_Operation_Exposure;
26
+ /** How the caller authenticated (default: `none`). */
27
+ authKind?: DyFM_OperationAuth_Type;
28
+ /** The authenticated FDP accountId — never a user id. Required unless `authKind` is `none`. */
29
+ issuer?: string;
30
+ /** The service's own user id of the caller (content ownership); resolved server-side, never from input. */
31
+ clientUserId?: string;
32
+ /**
33
+ * Scopes granted to the API key. Only valid with `authKind: apiKey`.
34
+ * `undefined` marks a LEGACY key without scopes (full access with a warning, decision D-6);
35
+ * an empty array means the key grants nothing.
36
+ */
37
+ apiKeyScopes?: string[];
38
+ /** When `true`, the operation must validate and report, but not persist anything (default: `false`). */
39
+ dryRun?: boolean;
40
+ /** Optimistic-concurrency token (etag) the caller expects the target to still have. */
41
+ ifMatch?: string;
42
+ /** Correlation id of the call; generated when not given. */
43
+ requestId?: string;
44
+ /**
45
+ * Validates the identity combination and applies the defaults.
46
+ * @param input - the call context; throws a coded `DyFM_Error` when the identity combination is invalid
47
+ */
48
+ constructor(input?: DyFM_OperationContext_ControlModel);
49
+ /** `true` when the call uses an API key created before scopes existed (legacy full access, D-6). */
50
+ static isLegacyApiKey(ctx: DyFM_OperationContext_ControlModel): boolean;
51
+ /** Checks for a non-blank string. */
52
+ private static isFilled;
53
+ /** Builds the construction error with a stable error code and the construction location. */
54
+ private static invalid;
55
+ }
56
+ export { DyFM_OperationContext_ControlModel as DyFM_Operation_Context };
57
+ //# sourceMappingURL=operation-context.control-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-context.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/operation-context.control-model.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAKrF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,kCAAkC;IAK7C,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,uBAAuB,CAAC;IAC1C,sDAAsD;IACtD,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,+FAA+F;IAC/F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2GAA2G;IAC3G,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,wGAAwG;IACxG,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,uFAAuF;IACvF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;gBACS,KAAK,CAAC,EAAE,kCAAkC;IAgEtD,oGAAoG;IACpG,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,kCAAkC,GAAG,OAAO;IAIvE,qCAAqC;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ;IAIvB,4FAA4F;IAC5F,OAAO,CAAC,MAAM,CAAC,OAAO;CAOvB;AAED,OAAO,EACL,kCAAkC,IAAI,sBAAsB,EAC7D,CAAC"}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DyFM_Operation_Context = exports.DyFM_OperationContext_ControlModel = void 0;
4
+ const stack_util_1 = require("../../_collections/utils/stack.util");
5
+ const uuid_util_1 = require("../../_collections/utils/uuid.util");
6
+ const operation_auth_type_enum_1 = require("../../_enums/operation-auth.type-enum");
7
+ const error_control_model_1 = require("./error.control-model");
8
+ /**
9
+ * Transport-independent context of ONE operation call (HP-DOPL MP-1.3).
10
+ *
11
+ * The REST, MCP and CLI adapters build this object from their own request shape, so the operation's
12
+ * `run(ctx, ...inputs)` never sees Express, JSON-RPC or commander objects.
13
+ *
14
+ * 🔴 `issuer` is ALWAYS the accountId, NEVER a user id (`fdp-issuer-is-account-id`). The service's own
15
+ * user id — the content-ownership identity — travels separately in `clientUserId`.
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * const ctx: DyFM_Operation_Context = new DyFM_Operation_Context({
20
+ * transport: 'mcp',
21
+ * authKind: DyFM_OperationAuth_Type.apiKey,
22
+ * issuer: accountId,
23
+ * clientUserId: userId,
24
+ * apiKeyScopes: [ 'task:read' ],
25
+ * });
26
+ * ```
27
+ */
28
+ class DyFM_OperationContext_ControlModel {
29
+ static {
30
+ Object.defineProperty(this, 'name', { value: 'DyFM_Operation_Context' });
31
+ }
32
+ /** Transport the call arrived on. */
33
+ transport;
34
+ /** How the caller authenticated (default: `none`). */
35
+ authKind;
36
+ /** The authenticated FDP accountId — never a user id. Required unless `authKind` is `none`. */
37
+ issuer;
38
+ /** The service's own user id of the caller (content ownership); resolved server-side, never from input. */
39
+ clientUserId;
40
+ /**
41
+ * Scopes granted to the API key. Only valid with `authKind: apiKey`.
42
+ * `undefined` marks a LEGACY key without scopes (full access with a warning, decision D-6);
43
+ * an empty array means the key grants nothing.
44
+ */
45
+ apiKeyScopes;
46
+ /** When `true`, the operation must validate and report, but not persist anything (default: `false`). */
47
+ dryRun;
48
+ /** Optimistic-concurrency token (etag) the caller expects the target to still have. */
49
+ ifMatch;
50
+ /** Correlation id of the call; generated when not given. */
51
+ requestId;
52
+ /**
53
+ * Validates the identity combination and applies the defaults.
54
+ * @param input - the call context; throws a coded `DyFM_Error` when the identity combination is invalid
55
+ */
56
+ constructor(input) {
57
+ const set = input ?? {};
58
+ // the construction location identifies the faulty adapter in the error
59
+ const stackLocation = (0, stack_util_1.DyFM_getConstructionStackLocation)();
60
+ const authKind = set.authKind ?? operation_auth_type_enum_1.DyFM_OperationAuth_Type.none;
61
+ // authKind must be a known value
62
+ if (!Object.values(operation_auth_type_enum_1.DyFM_OperationAuth_Type).includes(authKind)) {
63
+ throw DyFM_OperationContext_ControlModel.invalid('DyFM-OPC-AUT', `unknown authKind (got: ${JSON.stringify(set.authKind)})`, stackLocation);
64
+ }
65
+ // transport must be one of the exposure keys
66
+ if (set.transport !== undefined && !['rest', 'mcp', 'cli'].includes(set.transport)) {
67
+ throw DyFM_OperationContext_ControlModel.invalid('DyFM-OPC-TRN', `unknown transport (got: ${JSON.stringify(set.transport)})`, stackLocation);
68
+ }
69
+ const authenticated = authKind !== operation_auth_type_enum_1.DyFM_OperationAuth_Type.none;
70
+ // an authenticated call without an accountId is an adapter defect, not an anonymous call
71
+ if (authenticated && !DyFM_OperationContext_ControlModel.isFilled(set.issuer)) {
72
+ throw DyFM_OperationContext_ControlModel.invalid('DyFM-OPC-ISS', `authKind "${authKind}" requires the issuer (accountId)`, stackLocation);
73
+ }
74
+ // an anonymous call must not carry an identity
75
+ if (!authenticated && (set.issuer !== undefined || set.clientUserId !== undefined)) {
76
+ throw DyFM_OperationContext_ControlModel.invalid('DyFM-OPC-ANO', 'authKind "none" can not carry an issuer or a clientUserId', stackLocation);
77
+ }
78
+ // scopes belong to API keys only; every scope must be a non-empty string
79
+ if (set.apiKeyScopes !== undefined) {
80
+ if (authKind !== operation_auth_type_enum_1.DyFM_OperationAuth_Type.apiKey) {
81
+ throw DyFM_OperationContext_ControlModel.invalid('DyFM-OPC-SCP', `apiKeyScopes are only valid with authKind "api-key" (got: "${authKind}")`, stackLocation);
82
+ }
83
+ if (!Array.isArray(set.apiKeyScopes) ||
84
+ !set.apiKeyScopes.every((scope) => DyFM_OperationContext_ControlModel.isFilled(scope))) {
85
+ throw DyFM_OperationContext_ControlModel.invalid('DyFM-OPC-SCP', 'apiKeyScopes must be an array of non-empty strings', stackLocation);
86
+ }
87
+ }
88
+ Object.assign(this, set);
89
+ this.authKind = authKind;
90
+ this.dryRun = set.dryRun === true;
91
+ this.requestId = DyFM_OperationContext_ControlModel.isFilled(set.requestId) ?
92
+ set.requestId : uuid_util_1.DyFM_UUID.generate();
93
+ // a copy, so a later mutation of the adapter's array can not widen the granted scopes
94
+ this.apiKeyScopes = set.apiKeyScopes ? [...set.apiKeyScopes] : undefined;
95
+ }
96
+ /** `true` when the call uses an API key created before scopes existed (legacy full access, D-6). */
97
+ static isLegacyApiKey(ctx) {
98
+ return ctx?.authKind === operation_auth_type_enum_1.DyFM_OperationAuth_Type.apiKey && ctx.apiKeyScopes === undefined;
99
+ }
100
+ /** Checks for a non-blank string. */
101
+ static isFilled(value) {
102
+ return typeof value === 'string' && !!value.trim();
103
+ }
104
+ /** Builds the construction error with a stable error code and the construction location. */
105
+ static invalid(errorCode, reason, stackLocation) {
106
+ return new error_control_model_1.DyFM_Error({
107
+ errorCode: errorCode,
108
+ message: `DyFM_Operation_Context construction failed: ${reason}`,
109
+ additionalContent: { stackLocation: stackLocation },
110
+ });
111
+ }
112
+ }
113
+ exports.DyFM_OperationContext_ControlModel = DyFM_OperationContext_ControlModel;
114
+ exports.DyFM_Operation_Context = DyFM_OperationContext_ControlModel;
115
+ //# sourceMappingURL=operation-context.control-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-context.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/operation-context.control-model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import { DyFM_Operation_Exposure } from '../interfaces/operation-exposure.interface';
2
+ import { DyFM_OperationInput_Settings } from '../interfaces/operation-input-settings.interface';
3
+ import { DyFM_DataModel_Params } from './data-model-params.control-model';
4
+ /**
5
+ * Transport-independent description of ONE operation — the single source from which the REST
6
+ * endpoint, the MCP tool and the CLI command are derived (HP-DOPL, decision B+C).
7
+ *
8
+ * The class follows the Dynamo settings pattern (`DyFM_ServiceEndpointSettingsBase_ControlModel`):
9
+ * a `set` constructor, defaults applied in the constructor, and construction-time validation that
10
+ * fails fast with a debuggable `DyFM_Error`.
11
+ *
12
+ * ⚠️ Not related to the `operation-control` sub-module (durable operation leases): that module
13
+ * tracks the RUNTIME state of long-running work, this class DESCRIBES a callable operation.
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * const setSchedule: DyFM_Operation_Settings<Task, [string], TaskSchedule> = new DyFM_Operation_Settings({
18
+ * domain: 'task-views',
19
+ * action: 'schedule.set',
20
+ * description: 'Sets the schedule of a task view',
21
+ * inputs: { taskId: { type: DyFM_BasicProperty_Type.string, required: true } },
22
+ * expose: { cli: false },
23
+ * });
24
+ * // setSchedule.name === 'task-views.schedule.set'
25
+ * ```
26
+ */
27
+ export declare class DyFM_OperationSettings_ControlModel<T_Result = unknown, T_Inputs extends unknown[] = unknown[], T_Body = undefined> {
28
+ /** Unique operation name; defaults to `${domain}.${action}`. */
29
+ name?: string;
30
+ /** Owning domain, kebab-case (e.g. `task-views`). */
31
+ domain: string;
32
+ /** Action inside the domain: kebab-case segments joined by dots (e.g. `schedule.set`). */
33
+ action: string;
34
+ /** Required, human-readable description (CLI help, MCP tool description, REST docs). */
35
+ description: string;
36
+ /** Named inputs of the operation (default: none). */
37
+ inputs?: Record<string, DyFM_OperationInput_Settings>;
38
+ /** Data model of the request body, when the operation takes one. */
39
+ bodyParams?: DyFM_DataModel_Params<any>;
40
+ /** Transports the operation is exposed on; missing flags default to `true`. */
41
+ expose?: DyFM_Operation_Exposure;
42
+ /** Source location of the construction, for debugging duplicated or misconfigured operations. */
43
+ stackLocation?: string;
44
+ /**
45
+ * Validates the settings, applies the defaults and records the construction location.
46
+ * @param set - the operation description; throws a coded `DyFM_Error` when it is invalid
47
+ */
48
+ constructor(set: DyFM_OperationSettings_ControlModel<T_Result, T_Inputs, T_Body>);
49
+ /** Checks the `name` format: dot-separated kebab-case segments. */
50
+ static isValidName(name: string): boolean;
51
+ /** Builds the construction error with a stable error code and the construction location. */
52
+ private static invalid;
53
+ }
54
+ export { DyFM_OperationSettings_ControlModel as DyFM_Operation_Settings };
55
+ //# sourceMappingURL=operation-settings.control-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-settings.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/operation-settings.control-model.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAEhG,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAU1E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,mCAAmC,CAC9C,QAAQ,GAAG,OAAO,EAClB,QAAQ,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EACtC,MAAM,GAAG,SAAS;IAMlB,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,0FAA0F;IAC1F,MAAM,EAAE,MAAM,CAAC;IACf,wFAAwF;IACxF,WAAW,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAM;IAC3D,oEAAoE;IACpE,UAAU,CAAC,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC;IACxC,+EAA+E;IAC/E,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,iGAAiG;IACjG,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;gBAED,GAAG,EAAE,mCAAmC,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC;IAuFtE,mEAAmE;IACnE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAKzC,4FAA4F;IAC5F,OAAO,CAAC,MAAM,CAAC,OAAO;CAOvB;AAED,OAAO,EACL,mCAAmC,IAAI,uBAAuB,EAC/D,CAAC"}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DyFM_Operation_Settings = exports.DyFM_OperationSettings_ControlModel = void 0;
4
+ const stack_util_1 = require("../../_collections/utils/stack.util");
5
+ const basic_property_type_enum_1 = require("../../_enums/basic-property-type.enum");
6
+ const error_control_model_1 = require("./error.control-model");
7
+ /** Kebab-case segment: lowercase letters/digits, separated by single dashes. */
8
+ const DyFM_operationKebabSegment = /^[a-z][a-z0-9]*(-[a-z0-9]+)*$/;
9
+ /** Input names must be usable as a route param, a JSON-schema key and a CLI option alike. */
10
+ const DyFM_operationInputName = /^[a-zA-Z][a-zA-Z0-9]*$/;
11
+ /**
12
+ * Transport-independent description of ONE operation — the single source from which the REST
13
+ * endpoint, the MCP tool and the CLI command are derived (HP-DOPL, decision B+C).
14
+ *
15
+ * The class follows the Dynamo settings pattern (`DyFM_ServiceEndpointSettingsBase_ControlModel`):
16
+ * a `set` constructor, defaults applied in the constructor, and construction-time validation that
17
+ * fails fast with a debuggable `DyFM_Error`.
18
+ *
19
+ * ⚠️ Not related to the `operation-control` sub-module (durable operation leases): that module
20
+ * tracks the RUNTIME state of long-running work, this class DESCRIBES a callable operation.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * const setSchedule: DyFM_Operation_Settings<Task, [string], TaskSchedule> = new DyFM_Operation_Settings({
25
+ * domain: 'task-views',
26
+ * action: 'schedule.set',
27
+ * description: 'Sets the schedule of a task view',
28
+ * inputs: { taskId: { type: DyFM_BasicProperty_Type.string, required: true } },
29
+ * expose: { cli: false },
30
+ * });
31
+ * // setSchedule.name === 'task-views.schedule.set'
32
+ * ```
33
+ */
34
+ class DyFM_OperationSettings_ControlModel {
35
+ static {
36
+ Object.defineProperty(this, 'name', { value: 'DyFM_Operation_Settings' });
37
+ }
38
+ /** Unique operation name; defaults to `${domain}.${action}`. */
39
+ name;
40
+ /** Owning domain, kebab-case (e.g. `task-views`). */
41
+ domain;
42
+ /** Action inside the domain: kebab-case segments joined by dots (e.g. `schedule.set`). */
43
+ action;
44
+ /** Required, human-readable description (CLI help, MCP tool description, REST docs). */
45
+ description;
46
+ /** Named inputs of the operation (default: none). */
47
+ inputs = {};
48
+ /** Data model of the request body, when the operation takes one. */
49
+ bodyParams;
50
+ /** Transports the operation is exposed on; missing flags default to `true`. */
51
+ expose;
52
+ /** Source location of the construction, for debugging duplicated or misconfigured operations. */
53
+ stackLocation;
54
+ /**
55
+ * Validates the settings, applies the defaults and records the construction location.
56
+ * @param set - the operation description; throws a coded `DyFM_Error` when it is invalid
57
+ */
58
+ constructor(set) {
59
+ // the construction location identifies the faulty definition in the error
60
+ const stackLocation = set?.stackLocation ?? (0, stack_util_1.DyFM_getConstructionStackLocation)();
61
+ if (!set) {
62
+ throw DyFM_OperationSettings_ControlModel.invalid('DyFM-OPS-SET', 'settings object is missing', stackLocation);
63
+ }
64
+ const label = set.name ?? `${set.domain}.${set.action}`;
65
+ // domain: a single kebab-case segment
66
+ if (typeof set.domain !== 'string' || !DyFM_operationKebabSegment.test(set.domain)) {
67
+ throw DyFM_OperationSettings_ControlModel.invalid('DyFM-OPS-DOM', `domain must be a kebab-case segment (got: ${JSON.stringify(set.domain)}) (${label})`, stackLocation);
68
+ }
69
+ // action: dot-separated kebab-case segments
70
+ if (typeof set.action !== 'string' ||
71
+ !set.action.split('.').every((segment) => DyFM_operationKebabSegment.test(segment))) {
72
+ throw DyFM_OperationSettings_ControlModel.invalid('DyFM-OPS-ACT', `action must be dot-separated kebab-case segments (got: ${JSON.stringify(set.action)}) (${label})`, stackLocation);
73
+ }
74
+ // description: required, it becomes the CLI help and the MCP tool description
75
+ if (typeof set.description !== 'string' || !set.description.trim()) {
76
+ throw DyFM_OperationSettings_ControlModel.invalid('DyFM-OPS-DSC', `description is required (${label})`, stackLocation);
77
+ }
78
+ // name: when given, it must follow the same format as the generated default
79
+ if (set.name !== undefined && !DyFM_OperationSettings_ControlModel.isValidName(set.name)) {
80
+ throw DyFM_OperationSettings_ControlModel.invalid('DyFM-OPS-NAM', `name must be dot-separated kebab-case segments (got: ${JSON.stringify(set.name)})`, stackLocation);
81
+ }
82
+ // inputs: name and type validation
83
+ const inputs = set.inputs ?? {};
84
+ Object.entries(inputs).forEach(([inputName, input]) => {
85
+ if (!DyFM_operationInputName.test(inputName)) {
86
+ throw DyFM_OperationSettings_ControlModel.invalid('DyFM-OPS-INN', `input name must be alphanumeric camelCase (got: ${JSON.stringify(inputName)}) (${label})`, stackLocation);
87
+ }
88
+ if (!input ||
89
+ !Object.values(basic_property_type_enum_1.DyFM_BasicProperty_Type).includes(input.type) ||
90
+ input.type === basic_property_type_enum_1.DyFM_BasicProperty_Type.function) {
91
+ throw DyFM_OperationSettings_ControlModel.invalid('DyFM-OPS-INT', `input "${inputName}" has an invalid type (got: ${JSON.stringify(input?.type)}) (${label})`, stackLocation);
92
+ }
93
+ });
94
+ Object.assign(this, set);
95
+ this.domain = set.domain;
96
+ this.action = set.action;
97
+ this.description = set.description;
98
+ this.name = set.name ?? `${set.domain}.${set.action}`;
99
+ this.inputs = inputs;
100
+ // a missing expose flag means: exposed on that transport
101
+ this.expose = { rest: true, mcp: true, cli: true, ...set.expose };
102
+ this.stackLocation = stackLocation;
103
+ }
104
+ /** Checks the `name` format: dot-separated kebab-case segments. */
105
+ static isValidName(name) {
106
+ return typeof name === 'string' &&
107
+ name.split('.').every((segment) => DyFM_operationKebabSegment.test(segment));
108
+ }
109
+ /** Builds the construction error with a stable error code and the construction location. */
110
+ static invalid(errorCode, reason, stackLocation) {
111
+ return new error_control_model_1.DyFM_Error({
112
+ errorCode: errorCode,
113
+ message: `DyFM_Operation_Settings construction failed: ${reason}`,
114
+ additionalContent: { stackLocation: stackLocation },
115
+ });
116
+ }
117
+ }
118
+ exports.DyFM_OperationSettings_ControlModel = DyFM_OperationSettings_ControlModel;
119
+ exports.DyFM_Operation_Settings = DyFM_OperationSettings_ControlModel;
120
+ //# sourceMappingURL=operation-settings.control-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-settings.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/operation-settings.control-model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Selects the transports on which an operation is exposed.
3
+ *
4
+ * Every flag defaults to `true` in `DyFM_OperationSettings_ControlModel`; set a flag to `false` to
5
+ * hide the operation from that transport (for example a destructive admin operation that should not
6
+ * be reachable as an MCP tool).
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const expose: DyFM_Operation_Exposure = { mcp: false };
11
+ * ```
12
+ */
13
+ export interface DyFM_Operation_Exposure {
14
+ /** Exposed as a REST endpoint. */
15
+ rest?: boolean;
16
+ /** Exposed as an MCP tool. */
17
+ mcp?: boolean;
18
+ /** Exposed as a CLI command. */
19
+ cli?: boolean;
20
+ }
21
+ //# sourceMappingURL=operation-exposure.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-exposure.interface.d.ts","sourceRoot":"","sources":["../../../src/_models/interfaces/operation-exposure.interface.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,uBAAuB;IACtC,kCAAkC;IAClC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,8BAA8B;IAC9B,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,gCAAgC;IAChC,GAAG,CAAC,EAAE,OAAO,CAAC;CACf"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=operation-exposure.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-exposure.interface.js","sourceRoot":"","sources":["../../../src/_models/interfaces/operation-exposure.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,29 @@
1
+ import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
2
+ /**
3
+ * Describes one named input of an operation (a path/query/CLI argument or an MCP tool argument).
4
+ *
5
+ * The description is transport-independent: the REST, MCP and CLI adapters derive their own
6
+ * parameter definitions (route param, JSON-schema property, CLI option) from it.
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const input: DyFM_OperationInput_Settings = {
11
+ * type: DyFM_BasicProperty_Type.string,
12
+ * required: true,
13
+ * description: 'Id of the task to update',
14
+ * };
15
+ * ```
16
+ */
17
+ export interface DyFM_OperationInput_Settings {
18
+ /** Runtime type of the input; `function` is not allowed, as it can not cross a transport. */
19
+ type: DyFM_BasicProperty_Type;
20
+ /** Whether the input must be provided (default: `false`). */
21
+ required?: boolean;
22
+ /** Human-readable description, shown in CLI help and in the MCP tool schema. */
23
+ description?: string;
24
+ /** Allowed values; when set, any other value is rejected by the adapters. */
25
+ enum?: (string | number)[];
26
+ /** Value used when the input is not provided. */
27
+ default?: string | number | boolean;
28
+ }
29
+ //# sourceMappingURL=operation-input-settings.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-input-settings.interface.d.ts","sourceRoot":"","sources":["../../../src/_models/interfaces/operation-input-settings.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAGhF;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,4BAA4B;IAC3C,6FAA6F;IAC7F,IAAI,EAAE,uBAAuB,CAAC;IAC9B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6EAA6E;IAC7E,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC3B,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CACrC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=operation-input-settings.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-input-settings.interface.js","sourceRoot":"","sources":["../../../src/_models/interfaces/operation-input-settings.interface.ts"],"names":[],"mappings":""}
package/build/index.d.ts CHANGED
@@ -34,6 +34,7 @@ export * from './_enums/environment-flag.enum';
34
34
  export * from './_enums/error-level.enum';
35
35
  export * from './_enums/error-status.enum';
36
36
  export * from './_enums/log-style.enum';
37
+ export * from './_enums/operation-auth.type-enum';
37
38
  export * from './_enums/server-connection-status.enum';
38
39
  export * from './_enums/http/http-call-type.enum';
39
40
  export * from './_enums/http/http-event-type.enum';
@@ -44,6 +45,8 @@ export * from './_enums/time/relative-date.enum';
44
45
  export * from './_models/control-models/data-model-params.control-model';
45
46
  export * from './_models/control-models/data-property-params.control-model';
46
47
  export * from './_models/control-models/error.control-model';
48
+ export * from './_models/control-models/operation-context.control-model';
49
+ export * from './_models/control-models/operation-settings.control-model';
47
50
  export * from './_models/control-models/poll.control-model';
48
51
  export * from './_models/control-models/range-value.control-model';
49
52
  export * from './_models/control-models/server-status.control-model';
@@ -55,6 +58,8 @@ export * from './_models/data-models/errors.data-model';
55
58
  export * from './_models/data-models/metadata.data-model';
56
59
  export * from './_models/interfaces/box-bounds.interface';
57
60
  export * from './_models/interfaces/error-defaults.interface';
61
+ export * from './_models/interfaces/operation-exposure.interface';
62
+ export * from './_models/interfaces/operation-input-settings.interface';
58
63
  export * from './_models/interfaces/paged.interface';
59
64
  export * from './_models/interfaces/random-weight.interface';
60
65
  export * from './_models/interfaces/route-settings.interface';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,cAAc,2CAA2C,CAAC;AAC1D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,wCAAwC,CAAC;AACvD,cAAc,sCAAsC,CAAC;AAGrD,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iDAAiD,CAAC;AAChE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iDAAiD,CAAC;AAChE,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAG/C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qCAAqC,CAAC;AACpD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,wCAAwC,CAAC;AAGvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,uCAAuC,CAAC;AACtD,cAAc,gDAAgD,CAAC;AAI/D,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wCAAwC,CAAC;AAGvD,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,uCAAuC,CAAC;AAGtD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AAKjD,cAAc,0DAA0D,CAAC;AACzE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,8CAA8C,CAAC;AAC7D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,oDAAoD,CAAC;AACnE,cAAc,sDAAsD,CAAC;AACrE,cAAc,uEAAuE,CAAC;AAGtF,cAAc,iEAAiE,CAAC;AAChF,cAAc,0DAA0D,CAAC;AACzE,cAAc,wDAAwD,CAAC;AAGvE,cAAc,yCAAyC,CAAC;AACxD,cAAc,2CAA2C,CAAC;AAG1D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,sCAAsC,CAAC;AACrD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,wDAAwD,CAAC;AACvE,cAAc,wCAAwC,CAAC;AAGvD,cAAc,gEAAgE,CAAC;AAC/E,cAAc,4DAA4D,CAAC;AAG3E,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,cAAc,2CAA2C,CAAC;AAC1D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,wCAAwC,CAAC;AACvD,cAAc,sCAAsC,CAAC;AAGrD,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iDAAiD,CAAC;AAChE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iDAAiD,CAAC;AAChE,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAG/C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qCAAqC,CAAC;AACpD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,wCAAwC,CAAC;AAGvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,uCAAuC,CAAC;AACtD,cAAc,gDAAgD,CAAC;AAI/D,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AAGvD,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,uCAAuC,CAAC;AAGtD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AAKjD,cAAc,0DAA0D,CAAC;AACzE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,8CAA8C,CAAC;AAC7D,cAAc,0DAA0D,CAAC;AACzE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,6CAA6C,CAAC;AAC5D,cAAc,oDAAoD,CAAC;AACnE,cAAc,sDAAsD,CAAC;AACrE,cAAc,uEAAuE,CAAC;AAGtF,cAAc,iEAAiE,CAAC;AAChF,cAAc,0DAA0D,CAAC;AACzE,cAAc,wDAAwD,CAAC;AAGvE,cAAc,yCAAyC,CAAC;AACxD,cAAc,2CAA2C,CAAC;AAG1D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,mDAAmD,CAAC;AAClE,cAAc,yDAAyD,CAAC;AACxE,cAAc,sCAAsC,CAAC;AACrD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,wDAAwD,CAAC;AACvE,cAAc,wCAAwC,CAAC;AAGvD,cAAc,gEAAgE,CAAC;AAC/E,cAAc,4DAA4D,CAAC;AAG3E,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC"}
package/build/index.js CHANGED
@@ -43,6 +43,7 @@ tslib_1.__exportStar(require("./_enums/environment-flag.enum"), exports);
43
43
  tslib_1.__exportStar(require("./_enums/error-level.enum"), exports);
44
44
  tslib_1.__exportStar(require("./_enums/error-status.enum"), exports);
45
45
  tslib_1.__exportStar(require("./_enums/log-style.enum"), exports);
46
+ tslib_1.__exportStar(require("./_enums/operation-auth.type-enum"), exports);
46
47
  tslib_1.__exportStar(require("./_enums/server-connection-status.enum"), exports);
47
48
  // enums/HTTP
48
49
  tslib_1.__exportStar(require("./_enums/http/http-call-type.enum"), exports);
@@ -57,6 +58,8 @@ tslib_1.__exportStar(require("./_enums/time/relative-date.enum"), exports);
57
58
  tslib_1.__exportStar(require("./_models/control-models/data-model-params.control-model"), exports);
58
59
  tslib_1.__exportStar(require("./_models/control-models/data-property-params.control-model"), exports);
59
60
  tslib_1.__exportStar(require("./_models/control-models/error.control-model"), exports);
61
+ tslib_1.__exportStar(require("./_models/control-models/operation-context.control-model"), exports);
62
+ tslib_1.__exportStar(require("./_models/control-models/operation-settings.control-model"), exports);
60
63
  tslib_1.__exportStar(require("./_models/control-models/poll.control-model"), exports);
61
64
  tslib_1.__exportStar(require("./_models/control-models/range-value.control-model"), exports);
62
65
  tslib_1.__exportStar(require("./_models/control-models/server-status.control-model"), exports);
@@ -71,6 +74,8 @@ tslib_1.__exportStar(require("./_models/data-models/metadata.data-model"), expor
71
74
  // models/INTERFACES
72
75
  tslib_1.__exportStar(require("./_models/interfaces/box-bounds.interface"), exports);
73
76
  tslib_1.__exportStar(require("./_models/interfaces/error-defaults.interface"), exports);
77
+ tslib_1.__exportStar(require("./_models/interfaces/operation-exposure.interface"), exports);
78
+ tslib_1.__exportStar(require("./_models/interfaces/operation-input-settings.interface"), exports);
74
79
  tslib_1.__exportStar(require("./_models/interfaces/paged.interface"), exports);
75
80
  tslib_1.__exportStar(require("./_models/interfaces/random-weight.interface"), exports);
76
81
  tslib_1.__exportStar(require("./_models/interfaces/route-settings.interface"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,cAAc;AACd,wBAAwB;AACxB,oFAA0D;AAC1D,wFAA8D;AAC9D,yFAA+D;AAC/D,iFAAuD;AACvD,+EAAqD;AAErD,oBAAoB;AACpB,0EAAgD;AAChD,0EAAgD;AAChD,yEAA+C;AAC/C,0FAAgE;AAChE,sFAA4D;AAC5D,wEAA8C;AAC9C,+EAAqD;AACrD,gFAAsD;AACtD,2EAAiD;AACjD,gFAAsD;AACtD,0EAAgD;AAChD,2EAAiD;AACjD,gFAAsD;AACtD,yEAA+C;AAC/C,0FAAgE;AAChE,8EAAoD;AACpD,yEAA+C;AAE/C,yBAAyB;AACzB,oFAA0D;AAC1D,8EAAoD;AACpD,gFAAsD;AACtD,sFAA4D;AAC5D,iFAAuD;AAEvD,2BAA2B;AAC3B,yFAA+D;AAC/D,gFAAsD;AACtD,yFAA+D;AAG/D,QAAQ;AACR,4EAAkD;AAClD,wEAA8C;AAC9C,yEAA+C;AAC/C,oEAA0C;AAC1C,qEAA2C;AAC3C,kEAAwC;AACxC,iFAAuD;AAEvD,aAAa;AACb,4EAAkD;AAClD,6EAAmD;AACnD,gFAAsD;AAEtD,aAAa;AACb,yEAA+C;AAC/C,mEAAyC;AACzC,2EAAiD;AAGjD,SAAS;AACT,wBAAwB;AACxB,mGAAyE;AACzE,sGAA4E;AAC5E,uFAA6D;AAC7D,sFAA4D;AAC5D,6FAAmE;AACnE,+FAAqE;AACrE,gHAAsF;AAEtF,6BAA6B;AAC7B,0GAAgF;AAChF,mGAAyE;AACzE,iGAAuE;AAEvE,qBAAqB;AACrB,kFAAwD;AACxD,oFAA0D;AAE1D,oBAAoB;AACpB,oFAA0D;AAC1D,wFAA8D;AAC9D,+EAAqD;AACrD,uFAA6D;AAC7D,wFAA8D;AAC9D,sFAA4D;AAC5D,uFAA6D;AAC7D,iGAAuE;AACvE,iFAAuD;AAEvD,gCAAgC;AAChC,yGAA+E;AAC/E,qGAA2E;AAE3E,eAAe;AACf,yEAA+C;AAC/C,uEAA6C;AAC7C,yEAA+C;AAC/C,uEAA6C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,cAAc;AACd,wBAAwB;AACxB,oFAA0D;AAC1D,wFAA8D;AAC9D,yFAA+D;AAC/D,iFAAuD;AACvD,+EAAqD;AAErD,oBAAoB;AACpB,0EAAgD;AAChD,0EAAgD;AAChD,yEAA+C;AAC/C,0FAAgE;AAChE,sFAA4D;AAC5D,wEAA8C;AAC9C,+EAAqD;AACrD,gFAAsD;AACtD,2EAAiD;AACjD,gFAAsD;AACtD,0EAAgD;AAChD,2EAAiD;AACjD,gFAAsD;AACtD,yEAA+C;AAC/C,0FAAgE;AAChE,8EAAoD;AACpD,yEAA+C;AAE/C,yBAAyB;AACzB,oFAA0D;AAC1D,8EAAoD;AACpD,gFAAsD;AACtD,sFAA4D;AAC5D,iFAAuD;AAEvD,2BAA2B;AAC3B,yFAA+D;AAC/D,gFAAsD;AACtD,yFAA+D;AAG/D,QAAQ;AACR,4EAAkD;AAClD,wEAA8C;AAC9C,yEAA+C;AAC/C,oEAA0C;AAC1C,qEAA2C;AAC3C,kEAAwC;AACxC,4EAAkD;AAClD,iFAAuD;AAEvD,aAAa;AACb,4EAAkD;AAClD,6EAAmD;AACnD,gFAAsD;AAEtD,aAAa;AACb,yEAA+C;AAC/C,mEAAyC;AACzC,2EAAiD;AAGjD,SAAS;AACT,wBAAwB;AACxB,mGAAyE;AACzE,sGAA4E;AAC5E,uFAA6D;AAC7D,mGAAyE;AACzE,oGAA0E;AAC1E,sFAA4D;AAC5D,6FAAmE;AACnE,+FAAqE;AACrE,gHAAsF;AAEtF,6BAA6B;AAC7B,0GAAgF;AAChF,mGAAyE;AACzE,iGAAuE;AAEvE,qBAAqB;AACrB,kFAAwD;AACxD,oFAA0D;AAE1D,oBAAoB;AACpB,oFAA0D;AAC1D,wFAA8D;AAC9D,4FAAkE;AAClE,kGAAwE;AACxE,+EAAqD;AACrD,uFAA6D;AAC7D,wFAA8D;AAC9D,sFAA4D;AAC5D,uFAA6D;AAC7D,iGAAuE;AACvE,iFAAuD;AAEvD,gCAAgC;AAChC,yGAA+E;AAC/E,qGAA2E;AAE3E,eAAe;AACf,yEAA+C;AAC/C,uEAA6C;AAC7C,yEAA+C;AAC/C,uEAA6C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@futdevpro/fsm-dynamo",
3
- "version": "1.20.55",
3
+ "version": "1.20.58",
4
4
  "description": "Full Stack Model Collection for Dynamic (NodeJS-Typescript) Framework called Dynamo, by Future Development Ltd.",
5
5
  "DyBu_settings": {
6
6
  "packageType": "full-stack-package",