@skmtc/core 0.16.2 → 0.18.1

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 (135) hide show
  1. package/esm/context/GenerateContext.d.ts +3 -3
  2. package/esm/context/GenerateContext.d.ts.map +1 -1
  3. package/esm/context/GenerateContext.js +45 -32
  4. package/esm/context/ParseContext.d.ts +16 -0
  5. package/esm/context/ParseContext.d.ts.map +1 -1
  6. package/esm/context/ParseContext.js +26 -0
  7. package/esm/context/ParseIssue.d.ts +24 -4
  8. package/esm/context/ParseIssue.d.ts.map +1 -1
  9. package/esm/context/ParseIssue.js +12 -4
  10. package/esm/context/parseTypes.d.ts +23 -1
  11. package/esm/context/parseTypes.d.ts.map +1 -1
  12. package/esm/dsl/model/ModelDriver.d.ts.map +1 -1
  13. package/esm/dsl/model/ModelDriver.js +29 -0
  14. package/esm/dsl/model/toModelEntry.d.ts +9 -3
  15. package/esm/dsl/model/toModelEntry.d.ts.map +1 -1
  16. package/esm/dsl/model/toModelEntry.js +29 -1
  17. package/esm/dsl/model/toModelProjectionBase.d.ts +16 -3
  18. package/esm/dsl/model/toModelProjectionBase.d.ts.map +1 -1
  19. package/esm/dsl/model/toModelProjectionBase.js +3 -3
  20. package/esm/dsl/model/types.d.ts +46 -0
  21. package/esm/dsl/model/types.d.ts.map +1 -1
  22. package/esm/dsl/operation/gql/types.d.ts +6 -1
  23. package/esm/dsl/operation/gql/types.d.ts.map +1 -1
  24. package/esm/dsl/operation/oas/types.d.ts +6 -1
  25. package/esm/dsl/operation/oas/types.d.ts.map +1 -1
  26. package/esm/enrichments/validateConfig.d.ts +60 -0
  27. package/esm/enrichments/validateConfig.d.ts.map +1 -0
  28. package/esm/enrichments/validateConfig.js +176 -0
  29. package/esm/mod.d.ts +1 -0
  30. package/esm/mod.d.ts.map +1 -1
  31. package/esm/mod.js +1 -0
  32. package/esm/oas/operation/Operation.d.ts.map +1 -1
  33. package/esm/oas/operation/Operation.js +2 -11
  34. package/esm/oas/response/toPrimaryResponseCode.d.ts +19 -0
  35. package/esm/oas/response/toPrimaryResponseCode.d.ts.map +1 -0
  36. package/esm/oas/response/toPrimaryResponseCode.js +33 -0
  37. package/esm/oas/webhook/Webhook.d.ts.map +1 -1
  38. package/esm/oas/webhook/Webhook.js +2 -11
  39. package/esm/parse/v3-0/_merge-all-of/decompose-union.d.ts.map +1 -1
  40. package/esm/parse/v3-0/_merge-all-of/decompose-union.js +8 -12
  41. package/esm/parse/v3-0/_merge-all-of/merge-union.d.ts.map +1 -1
  42. package/esm/parse/v3-0/_merge-all-of/merge-union.js +0 -8
  43. package/esm/parse/v3-0/integer/toInteger.js +4 -1
  44. package/esm/parse/v3-0/number/toNumber.js +4 -1
  45. package/esm/parse/v3-0/operation/toOperationsV3.d.ts.map +1 -1
  46. package/esm/parse/v3-0/operation/toOperationsV3.js +5 -1
  47. package/esm/parse/v3-0/schema/toSchemasV3.d.ts.map +1 -1
  48. package/esm/parse/v3-0/schema/toSchemasV3.js +35 -1
  49. package/esm/parse/v3-0/string/toString.d.ts.map +1 -1
  50. package/esm/parse/v3-0/string/toString.js +4 -11
  51. package/esm/parse/v3-1/_merge-all-of/decompose-union.d.ts.map +1 -1
  52. package/esm/parse/v3-1/_merge-all-of/decompose-union.js +8 -12
  53. package/esm/parse/v3-1/_merge-all-of/merge-union.d.ts.map +1 -1
  54. package/esm/parse/v3-1/_merge-all-of/merge-union.js +0 -8
  55. package/esm/parse/v3-1/integer/toInteger.js +4 -1
  56. package/esm/parse/v3-1/number/toNumber.js +4 -1
  57. package/esm/parse/v3-1/operation/toOperationsV3.d.ts.map +1 -1
  58. package/esm/parse/v3-1/operation/toOperationsV3.js +5 -1
  59. package/esm/parse/v3-1/schema/toSchemasV3.d.ts.map +1 -1
  60. package/esm/parse/v3-1/schema/toSchemasV3.js +34 -7
  61. package/esm/parse/v3-1/string/toString.d.ts.map +1 -1
  62. package/esm/parse/v3-1/string/toString.js +4 -11
  63. package/esm/types/Manifest.d.ts.map +1 -1
  64. package/esm/types/Manifest.js +14 -0
  65. package/esm/types/Settings.d.ts +16 -3
  66. package/esm/types/Settings.d.ts.map +1 -1
  67. package/esm/types/Settings.js +19 -13
  68. package/package.json +1 -1
  69. package/script/context/GenerateContext.d.ts +3 -3
  70. package/script/context/GenerateContext.d.ts.map +1 -1
  71. package/script/context/GenerateContext.js +45 -32
  72. package/script/context/ParseContext.d.ts +16 -0
  73. package/script/context/ParseContext.d.ts.map +1 -1
  74. package/script/context/ParseContext.js +26 -0
  75. package/script/context/ParseIssue.d.ts +24 -4
  76. package/script/context/ParseIssue.d.ts.map +1 -1
  77. package/script/context/ParseIssue.js +12 -4
  78. package/script/context/parseTypes.d.ts +23 -1
  79. package/script/context/parseTypes.d.ts.map +1 -1
  80. package/script/dsl/model/ModelDriver.d.ts.map +1 -1
  81. package/script/dsl/model/ModelDriver.js +29 -0
  82. package/script/dsl/model/toModelEntry.d.ts +9 -3
  83. package/script/dsl/model/toModelEntry.d.ts.map +1 -1
  84. package/script/dsl/model/toModelEntry.js +65 -1
  85. package/script/dsl/model/toModelProjectionBase.d.ts +16 -3
  86. package/script/dsl/model/toModelProjectionBase.d.ts.map +1 -1
  87. package/script/dsl/model/toModelProjectionBase.js +3 -3
  88. package/script/dsl/model/types.d.ts +46 -0
  89. package/script/dsl/model/types.d.ts.map +1 -1
  90. package/script/dsl/operation/gql/types.d.ts +6 -1
  91. package/script/dsl/operation/gql/types.d.ts.map +1 -1
  92. package/script/dsl/operation/oas/types.d.ts +6 -1
  93. package/script/dsl/operation/oas/types.d.ts.map +1 -1
  94. package/script/enrichments/validateConfig.d.ts +60 -0
  95. package/script/enrichments/validateConfig.d.ts.map +1 -0
  96. package/script/enrichments/validateConfig.js +213 -0
  97. package/script/mod.d.ts +1 -0
  98. package/script/mod.d.ts.map +1 -1
  99. package/script/mod.js +1 -0
  100. package/script/oas/operation/Operation.d.ts.map +1 -1
  101. package/script/oas/operation/Operation.js +2 -11
  102. package/script/oas/response/toPrimaryResponseCode.d.ts +19 -0
  103. package/script/oas/response/toPrimaryResponseCode.d.ts.map +1 -0
  104. package/script/oas/response/toPrimaryResponseCode.js +37 -0
  105. package/script/oas/webhook/Webhook.d.ts.map +1 -1
  106. package/script/oas/webhook/Webhook.js +2 -11
  107. package/script/parse/v3-0/_merge-all-of/decompose-union.d.ts.map +1 -1
  108. package/script/parse/v3-0/_merge-all-of/decompose-union.js +8 -12
  109. package/script/parse/v3-0/_merge-all-of/merge-union.d.ts.map +1 -1
  110. package/script/parse/v3-0/_merge-all-of/merge-union.js +0 -8
  111. package/script/parse/v3-0/integer/toInteger.js +4 -1
  112. package/script/parse/v3-0/number/toNumber.js +4 -1
  113. package/script/parse/v3-0/operation/toOperationsV3.d.ts.map +1 -1
  114. package/script/parse/v3-0/operation/toOperationsV3.js +5 -1
  115. package/script/parse/v3-0/schema/toSchemasV3.d.ts.map +1 -1
  116. package/script/parse/v3-0/schema/toSchemasV3.js +35 -1
  117. package/script/parse/v3-0/string/toString.d.ts.map +1 -1
  118. package/script/parse/v3-0/string/toString.js +3 -10
  119. package/script/parse/v3-1/_merge-all-of/decompose-union.d.ts.map +1 -1
  120. package/script/parse/v3-1/_merge-all-of/decompose-union.js +8 -12
  121. package/script/parse/v3-1/_merge-all-of/merge-union.d.ts.map +1 -1
  122. package/script/parse/v3-1/_merge-all-of/merge-union.js +0 -8
  123. package/script/parse/v3-1/integer/toInteger.js +4 -1
  124. package/script/parse/v3-1/number/toNumber.js +4 -1
  125. package/script/parse/v3-1/operation/toOperationsV3.d.ts.map +1 -1
  126. package/script/parse/v3-1/operation/toOperationsV3.js +5 -1
  127. package/script/parse/v3-1/schema/toSchemasV3.d.ts.map +1 -1
  128. package/script/parse/v3-1/schema/toSchemasV3.js +34 -7
  129. package/script/parse/v3-1/string/toString.d.ts.map +1 -1
  130. package/script/parse/v3-1/string/toString.js +3 -10
  131. package/script/types/Manifest.d.ts.map +1 -1
  132. package/script/types/Manifest.js +14 -0
  133. package/script/types/Settings.d.ts +16 -3
  134. package/script/types/Settings.d.ts.map +1 -1
  135. package/script/types/Settings.js +16 -10
@@ -1,6 +1,45 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
39
  exports.toModelEntry = void 0;
40
+ const v = __importStar(require("valibot"));
41
+ const Enrichments_js_1 = require("../../types/Enrichments.js");
42
+ const get_js_1 = __importDefault(require("lodash-es/get.js"));
4
43
  /**
5
44
  * Creates a model transformation entry for the SKMTC pipeline.
6
45
  *
@@ -15,6 +54,10 @@ exports.toModelEntry = void 0;
15
54
  * @param args - Configuration for the model entry
16
55
  * @param args.id - Unique identifier for this model entry
17
56
  * @param args.transform - Function to transform schemas into artifacts
57
+ * @param args.isSupported - Optional capability gate; a model whose predicate
58
+ * returns `false` is recorded `notSupported` and its `transform` is skipped.
59
+ * Resolve the schema inside the predicate when needed
60
+ * (`context.resolveSchemaRefOnce(refName, id)`). Defaults to supporting every model.
18
61
  * @param args.toPreviewModule - Optional function to generate preview modules
19
62
  * @param args.toMappingModule - Optional function to generate mapping modules
20
63
  * @param args.toEnrichmentSchema - Optional function to provide enrichment validation
@@ -56,11 +99,32 @@ exports.toModelEntry = void 0;
56
99
  * });
57
100
  * ```
58
101
  */
59
- const toModelEntry = ({ id, transform, toPreviewModule, toMappingModule, toEnrichmentSchema, toEnrichmentRequest, toEnrichmentDefaults }) => {
102
+ const toModelEntry = ({ id, transform, isSupported, toPreviewModule, toMappingModule, toEnrichmentSchema, toEnrichmentRequest, toEnrichmentDefaults }) => {
60
103
  return {
61
104
  id,
62
105
  type: 'model',
63
106
  transform,
107
+ isSupported: ({ context, refName, variant }) => {
108
+ if (!isSupported) {
109
+ return true;
110
+ }
111
+ // Assemble the three-scope umbrella — mirrors
112
+ // `ModelProjectionBase.toEnrichments` so the shim and the
113
+ // projection-base resolve to the same value. Subject is per-item
114
+ // (`[id][refName][variant]`); generator and stack are run-constants.
115
+ // The required composite schema parses cast-free.
116
+ const raw = {
117
+ subject: (0, get_js_1.default)(context.settings, ['enrichments', id, refName, variant]),
118
+ generator: (0, get_js_1.default)(context.settings, ['enrichments', id, Enrichments_js_1.GENERATOR_ENRICHMENT_KEY]),
119
+ stack: (0, get_js_1.default)(context.settings, ['enrichments', Enrichments_js_1.STACK_ENRICHMENT_KEY])
120
+ };
121
+ return isSupported({
122
+ context,
123
+ refName,
124
+ enrichments: v.parse(toEnrichmentSchema(), raw),
125
+ variant
126
+ });
127
+ },
64
128
  toPreviewModule,
65
129
  toMappingModule,
66
130
  toEnrichmentSchema,
@@ -66,6 +66,16 @@ export type ModelProjectionBaseConfig<EnrichmentType = undefined, L extends Lang
66
66
  * static returns `undefined`.
67
67
  */
68
68
  toEnrichmentDefaults?: (args: ToEnrichmentsArgs) => EnrichmentType | undefined;
69
+ /**
70
+ * Family-level applicability predicate. Becomes a static `isSupported`
71
+ * on the returned base class so other projections can probe it before
72
+ * `insertModel` (the model counterpart of the operation-reference
73
+ * protocol). When omitted, advertises support for every model.
74
+ */
75
+ isSupported?: (args: {
76
+ refName: RefName;
77
+ context: GenerateContextType;
78
+ }) => boolean;
69
79
  };
70
80
  /**
71
81
  * Build a model projection base class from a per-generator config.
@@ -75,8 +85,8 @@ export type ModelProjectionBaseConfig<EnrichmentType = undefined, L extends Lang
75
85
  * while core stays language-blind (the base arrives as an opaque
76
86
  * constructor; core never names a concrete language class). The class
77
87
  * exposes the generator's `id`, `toIdentifierName`, `toIdentifierType`,
78
- * `toExportPath`, and `toEnrichments` statics, inherits the static `lang`
79
- * from the base, and
88
+ * `toExportPath`, `toEnrichments`, and `isSupported` statics, inherits the
89
+ * static `lang` from the base, and
80
90
  * injects `generatorKey` so subclasses don't have to.
81
91
  *
82
92
  * Defines NO `register` / `registerInto` — register ergonomics are typed by
@@ -118,7 +128,10 @@ export declare const toModelProjectionBase: <EnrichmentType = undefined, L exten
118
128
  * generator declares no `toEnrichmentDefaults` — the common case.
119
129
  */
120
130
  toEnrichmentDefaults: (args: ToEnrichmentsArgs) => EnrichmentType | undefined;
121
- isSupported: () => boolean;
131
+ isSupported: (args: {
132
+ refName: RefName;
133
+ context: GenerateContextType;
134
+ }) => boolean;
122
135
  lang: L;
123
136
  };
124
137
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"toModelProjectionBase.d.ts","sourceRoot":"","sources":["../../../src/dsl/model/toModelProjectionBase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toModelProjectionBase.d.ts","sourceRoot":"","sources":["../../../src/dsl/model/toModelProjectionBase.ts"],"names":[],"mappings":"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"}
@@ -50,8 +50,8 @@ const get_js_1 = __importDefault(require("lodash-es/get.js"));
50
50
  * while core stays language-blind (the base arrives as an opaque
51
51
  * constructor; core never names a concrete language class). The class
52
52
  * exposes the generator's `id`, `toIdentifierName`, `toIdentifierType`,
53
- * `toExportPath`, and `toEnrichments` statics, inherits the static `lang`
54
- * from the base, and
53
+ * `toExportPath`, `toEnrichments`, and `isSupported` statics, inherits the
54
+ * static `lang` from the base, and
55
55
  * injects `generatorKey` so subclasses don't have to.
56
56
  *
57
57
  * Defines NO `register` / `registerInto` — register ergonomics are typed by
@@ -179,7 +179,7 @@ const toModelProjectionBase = (base, config) => {
179
179
  enumerable: true,
180
180
  configurable: true,
181
181
  writable: true,
182
- value: () => true
182
+ value: config.isSupported ?? (() => true)
183
183
  }),
184
184
  _a;
185
185
  };
@@ -43,6 +43,33 @@ export type TransformModelArgs = {
43
43
  */
44
44
  variant: string;
45
45
  };
46
+ /**
47
+ * Arguments a model generator's `isSupported` predicate receives at the
48
+ * entry/dispatch boundary. The capability counterpart of
49
+ * {@link TransformModelArgs}: it carries the resolved enrichment umbrella so
50
+ * the predicate can gate on user config, but no schema — the predicate
51
+ * resolves the schema itself (`context.resolveSchemaRefOnce(refName, id)`)
52
+ * when it needs it, mirroring how `transform` works.
53
+ */
54
+ export type IsSupportedModelConfigArgs<EnrichmentType = undefined> = {
55
+ context: GenerateContextType;
56
+ refName: RefName;
57
+ enrichments: EnrichmentType;
58
+ /** Model variant being probed (see {@link Variant}) */
59
+ variant: string;
60
+ };
61
+ /**
62
+ * Arguments the engine passes to the wrapped `isSupported` on a built
63
+ * {@link ModelConfig} — the enrichment-free outer shape (the
64
+ * {@link toModelEntry} wrapper assembles the umbrella before calling the
65
+ * user's predicate).
66
+ */
67
+ export type IsSupportedModelArgs = {
68
+ context: GenerateContextType;
69
+ refName: RefName;
70
+ /** Model variant being probed (see {@link Variant}) */
71
+ variant: string;
72
+ };
46
73
  export type ToModelPreviewModuleArgs = {
47
74
  context: GenerateContextType;
48
75
  refName: RefName;
@@ -103,6 +130,17 @@ export type ModelProjection<V extends GeneratedValue, EnrichmentType = undefined
103
130
  toIdentifierType: (refName: RefName, context: GenerateContextType) => IdentifierType;
104
131
  toExportPath: (args: ToModelExportPathArgs<EnrichmentType>) => string;
105
132
  toEnrichments: ({ refName, context, variant }: ToModelEnrichmentsArgs) => EnrichmentType;
133
+ /**
134
+ * Family-level capability predicate, surfaced as a static by
135
+ * `toModelProjectionBase` (default `() => true`). The Driver probes it on
136
+ * every `insertModel` so a peer is never handed a model it has declared
137
+ * unsupported. Optional: a hand-rolled projection may omit it, in which
138
+ * case it is treated as supporting every model.
139
+ */
140
+ isSupported?: (args: {
141
+ refName: RefName;
142
+ context: GenerateContextType;
143
+ }) => boolean;
106
144
  schemaToValueFn: SchemaToValueFn;
107
145
  /**
108
146
  * The inline-schema fallback seam used by `insertNormalizedModel` when a
@@ -121,6 +159,14 @@ export type ModelConfig<EnrichmentType = undefined> = {
121
159
  id: string;
122
160
  type: 'model';
123
161
  transform: ({ context, refName, variant }: TransformModelArgs) => void;
162
+ /**
163
+ * Optional capability gate, evaluated by the engine before `include` /
164
+ * `skip`. A model whose predicate returns `false` is recorded `notSupported`
165
+ * and its `transform` is skipped. Absent → treated as `() => true` (every
166
+ * model supported). {@link toModelEntry} still defaults it for built configs,
167
+ * but a hand-constructed config may omit it.
168
+ */
169
+ isSupported?: ({ context, refName }: IsSupportedModelArgs) => boolean;
124
170
  toPreviewModule?: ({ context, refName, variant }: ToModelPreviewModuleArgs) => PreviewModule;
125
171
  toMappingModule?: ({ context, refName, variant }: ToModelMappingArgs) => MappingModule;
126
172
  toEnrichmentSchema: () => v.GenericSchema<EnrichmentType>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/dsl/model/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/dsl/model/types.ts"],"names":[],"mappings":"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"}
@@ -133,7 +133,12 @@ export type GqlOperationConfig<EnrichmentType = undefined> = {
133
133
  type: 'gqlOperation';
134
134
  transform: ({ context, operation, variant }: TransformGqlOperationArgs) => void;
135
135
  toEnrichmentSchema: () => v.GenericSchema<EnrichmentType>;
136
- isSupported: ({ context, operation }: IsSupportedGqlOperationArgs) => boolean;
136
+ /**
137
+ * Optional capability gate, evaluated before `include` / `skip`. Absent →
138
+ * treated as `() => true` (every operation supported). `toGqlOperationEntry`
139
+ * defaults it for built configs; a hand-constructed config may omit it.
140
+ */
141
+ isSupported?: ({ context, operation }: IsSupportedGqlOperationArgs) => boolean;
137
142
  toPreviewModule?: ({ context, operation }: ToGqlOperationPreviewModuleArgs) => PreviewModule;
138
143
  toMappingModule?: ({ context, operation }: ToGqlOperationMappingArgs) => MappingModule;
139
144
  toEnrichmentRequest?: <RequestedEnrichment extends EnrichmentType>(operation: GqlOperation) => EnrichmentRequest<RequestedEnrichment> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/dsl/operation/gql/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/dsl/operation/gql/types.ts"],"names":[],"mappings":"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"}
@@ -133,7 +133,12 @@ export type OasOperationConfig<EnrichmentType = undefined> = {
133
133
  type: 'oasOperation';
134
134
  transform: ({ context, operation, variant }: TransformOasOperationArgs) => void;
135
135
  toEnrichmentSchema: () => v.GenericSchema<EnrichmentType>;
136
- isSupported: ({ context, operation }: IsSupportedOasOperationArgs) => boolean;
136
+ /**
137
+ * Optional capability gate, evaluated before `include` / `skip`. Absent →
138
+ * treated as `() => true` (every operation supported). `toOasOperationEntry`
139
+ * defaults it for built configs; a hand-constructed config may omit it.
140
+ */
141
+ isSupported?: ({ context, operation }: IsSupportedOasOperationArgs) => boolean;
137
142
  /**
138
143
  * Optional: compute the DEFAULT enrichment values for an operation from its
139
144
  * schema — the seed the CMS persists and the user then edits. The pipeline
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/dsl/operation/oas/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/dsl/operation/oas/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ import { type GeneratorEnrichments } from '../types/Enrichments.js';
2
+ import type { EnrichmentSource } from './toEnrichmentDescriptor.js';
3
+ /**
4
+ * Which of the three enrichment scopes a validation issue belongs to.
5
+ * Mirrors the `{ subject, generator, stack }` umbrella members.
6
+ */
7
+ export type EnrichmentValidationScope = 'subject' | 'generator' | 'stack';
8
+ /**
9
+ * One enrichment value that fails its generator's Valibot enrichment
10
+ * schema — the authoritative validation verdict. Produced by
11
+ * {@link validateConfig}; the routing fields locate the offending leaf in
12
+ * `client.json#settings.enrichments`:
13
+ *
14
+ * - **operation subject** — `subject` = path, `method` = HTTP method
15
+ * - **model subject** — `subject` = refName (no `method`)
16
+ * - **gql operation subject** — `subject` = field name, `method` = root kind
17
+ * - **generator** run-constant — `scope: 'generator'` (no subject routing)
18
+ * - **stack** run-constant — `scope: 'stack'` (no subject routing)
19
+ *
20
+ * `field` is the dotted path to the offending key *within* the leaf
21
+ * (absent when the whole leaf is the wrong shape).
22
+ */
23
+ export type EnrichmentValidationIssue = {
24
+ generator: string;
25
+ scope: EnrichmentValidationScope;
26
+ subject?: string;
27
+ method?: string;
28
+ variant?: string;
29
+ field?: string;
30
+ message: string;
31
+ };
32
+ /**
33
+ * The single enrichment-validation authority. Validates every enrichment
34
+ * value in `enrichments` against its owning generator's Valibot enrichment
35
+ * schema (`toEnrichmentSchema`) — composed across the supplied generator
36
+ * `sources` — and returns the flat list of value errors. This is the same
37
+ * Valibot that the engine parses at generate time; `validateConfig` exposes
38
+ * it as a standalone, **documentless** check (no OpenAPI/SDL needed — only
39
+ * the values and the schemas), usable wherever a verdict is needed:
40
+ * pre-persist, CLI push, schema-drift migration, and the Publish gate.
41
+ *
42
+ * Scope of this check (value validity only):
43
+ * - **catches** wrong-typed / missing-required / failed-refinement values
44
+ * against the current schema, and a generator configured but absent from
45
+ * the stack (`scope: 'generator'`, "not present in the stack").
46
+ * - **does not** flag unknown *fields* — Valibot's `v.object` strips
47
+ * unknown keys rather than erroring. Field-level referential drift ("this
48
+ * key is no longer in the schema") is the descriptor referential check's
49
+ * job, not this one.
50
+ * - **does not** resolve subjects against a document — subject *existence*
51
+ * (does this path/refName exist) needs the schema document and is the
52
+ * caller's concern.
53
+ *
54
+ * `sources` mirrors {@link toEnrichmentDescriptor}'s input: pass
55
+ * `Object.values(toGeneratorConfigMap())`. The walk is decoupled from
56
+ * `GeneratorConfig` via {@link EnrichmentSource} so tests can pass plain
57
+ * entry-like objects.
58
+ */
59
+ export declare const validateConfig: (enrichments: GeneratorEnrichments | undefined, sources: readonly EnrichmentSource[]) => EnrichmentValidationIssue[];
60
+ //# sourceMappingURL=validateConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateConfig.d.ts","sourceRoot":"","sources":["../../src/enrichments/validateConfig.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,oBAAoB,EAC1B,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEnE;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAA;AAEzE;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,yBAAyB,CAAA;IAChC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAkID;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,cAAc,GACzB,aAAa,oBAAoB,GAAG,SAAS,EAC7C,SAAS,SAAS,gBAAgB,EAAE,KACnC,yBAAyB,EA6C3B,CAAA"}
@@ -0,0 +1,213 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.validateConfig = void 0;
37
+ const v = __importStar(require("valibot"));
38
+ const Enrichments_js_1 = require("../types/Enrichments.js");
39
+ const isRecord = (input) => typeof input === 'object' && input !== null && !Array.isArray(input);
40
+ const firstKey = (path) => path && path.length > 0 && path[0].key !== undefined ? String(path[0].key) : undefined;
41
+ const fieldPath = (path) => path && path.length > 1
42
+ ? path
43
+ .slice(1)
44
+ .map(segment => String(segment.key))
45
+ .join('.')
46
+ : undefined;
47
+ /**
48
+ * Collect every `{ subject, method?, variant, values }` leaf from a
49
+ * generator's enrichment slot, walking the routing depth its **kind**
50
+ * dictates — model (`refName → variant`), oas operation
51
+ * (`path → method → variant`), gql operation
52
+ * (`rootKind → fieldName → variant`). Because the kind is read from the
53
+ * generator entry, operation-vs-model is known authoritatively — there is
54
+ * no `'main' in value` shape-guessing. Reserved keys (`_generator`) are
55
+ * skipped; malformed nodes are skipped (they surface elsewhere, never here
56
+ * as a value error).
57
+ */
58
+ const collectSubjectLeaves = (type, slot) => {
59
+ const leaves = [];
60
+ for (const [subjectKey, subjectValue] of Object.entries(slot)) {
61
+ if ((0, Enrichments_js_1.isReservedEnrichmentKey)(subjectKey))
62
+ continue;
63
+ if (!isRecord(subjectValue))
64
+ continue;
65
+ switch (type) {
66
+ case 'model': {
67
+ // refName → { variant: values }
68
+ for (const [variant, values] of Object.entries(subjectValue)) {
69
+ leaves.push({ subject: subjectKey, variant, values });
70
+ }
71
+ break;
72
+ }
73
+ case 'oasOperation': {
74
+ // path → { method: { variant: values } }
75
+ for (const [method, variants] of Object.entries(subjectValue)) {
76
+ if (!isRecord(variants))
77
+ continue;
78
+ for (const [variant, values] of Object.entries(variants)) {
79
+ leaves.push({ subject: subjectKey, method, variant, values });
80
+ }
81
+ }
82
+ break;
83
+ }
84
+ case 'webhook': {
85
+ // name → { method: { variant: values } }
86
+ for (const [method, variants] of Object.entries(subjectValue)) {
87
+ if (!isRecord(variants))
88
+ continue;
89
+ for (const [variant, values] of Object.entries(variants)) {
90
+ leaves.push({ subject: subjectKey, method, variant, values });
91
+ }
92
+ }
93
+ break;
94
+ }
95
+ case 'gqlOperation': {
96
+ // rootKind → { fieldName: { variant: values } }
97
+ for (const [fieldName, variants] of Object.entries(subjectValue)) {
98
+ if (!isRecord(variants))
99
+ continue;
100
+ for (const [variant, values] of Object.entries(variants)) {
101
+ leaves.push({ subject: fieldName, method: subjectKey, variant, values });
102
+ }
103
+ }
104
+ break;
105
+ }
106
+ default: {
107
+ const _exhaustive = type;
108
+ throw new Error(`Unhandled generator type: ${String(_exhaustive)}`);
109
+ }
110
+ }
111
+ }
112
+ return leaves;
113
+ };
114
+ /**
115
+ * Validate one scope's value against the generator's composite umbrella
116
+ * schema, reporting only issues that belong to that scope. The other two
117
+ * scopes are passed `undefined` and any issues they raise are filtered out,
118
+ * so each scope is validated in isolation without duplicating run-constant
119
+ * errors across every subject. Mirrors generate-time
120
+ * `v.parse(toEnrichmentSchema(), { subject, generator, stack })`, swapping
121
+ * `parse` for `safeParse` to collect rather than throw.
122
+ */
123
+ const parseScope = (schema, scope, value, tag) => {
124
+ const raw = {
125
+ subject: undefined,
126
+ generator: undefined,
127
+ stack: undefined
128
+ };
129
+ raw[scope] = value;
130
+ const result = v.safeParse(schema, raw);
131
+ if (result.success)
132
+ return [];
133
+ return result.issues
134
+ .filter(issue => firstKey(issue.path) === scope)
135
+ .map(issue => {
136
+ const field = fieldPath(issue.path);
137
+ return {
138
+ ...tag,
139
+ scope,
140
+ ...(field !== undefined ? { field } : {}),
141
+ message: issue.message
142
+ };
143
+ });
144
+ };
145
+ /**
146
+ * The single enrichment-validation authority. Validates every enrichment
147
+ * value in `enrichments` against its owning generator's Valibot enrichment
148
+ * schema (`toEnrichmentSchema`) — composed across the supplied generator
149
+ * `sources` — and returns the flat list of value errors. This is the same
150
+ * Valibot that the engine parses at generate time; `validateConfig` exposes
151
+ * it as a standalone, **documentless** check (no OpenAPI/SDL needed — only
152
+ * the values and the schemas), usable wherever a verdict is needed:
153
+ * pre-persist, CLI push, schema-drift migration, and the Publish gate.
154
+ *
155
+ * Scope of this check (value validity only):
156
+ * - **catches** wrong-typed / missing-required / failed-refinement values
157
+ * against the current schema, and a generator configured but absent from
158
+ * the stack (`scope: 'generator'`, "not present in the stack").
159
+ * - **does not** flag unknown *fields* — Valibot's `v.object` strips
160
+ * unknown keys rather than erroring. Field-level referential drift ("this
161
+ * key is no longer in the schema") is the descriptor referential check's
162
+ * job, not this one.
163
+ * - **does not** resolve subjects against a document — subject *existence*
164
+ * (does this path/refName exist) needs the schema document and is the
165
+ * caller's concern.
166
+ *
167
+ * `sources` mirrors {@link toEnrichmentDescriptor}'s input: pass
168
+ * `Object.values(toGeneratorConfigMap())`. The walk is decoupled from
169
+ * `GeneratorConfig` via {@link EnrichmentSource} so tests can pass plain
170
+ * entry-like objects.
171
+ */
172
+ const validateConfig = (enrichments, sources) => {
173
+ if (!isRecord(enrichments))
174
+ return [];
175
+ const sourceById = new Map(sources.map(source => [source.id, source]));
176
+ const stack = enrichments[Enrichments_js_1.STACK_ENRICHMENT_KEY];
177
+ const issues = [];
178
+ for (const [generatorId, slot] of Object.entries(enrichments)) {
179
+ if (generatorId === Enrichments_js_1.STACK_ENRICHMENT_KEY)
180
+ continue;
181
+ // Other `_`-prefixed top-level keys are reserved/unknown — the
182
+ // `generatorEnrichments` schema flags those structurally, not here.
183
+ if ((0, Enrichments_js_1.isReservedEnrichmentKey)(generatorId))
184
+ continue;
185
+ const source = sourceById.get(generatorId);
186
+ if (!source) {
187
+ issues.push({
188
+ generator: generatorId,
189
+ scope: 'generator',
190
+ message: `Generator '${generatorId}' has enrichments configured but is not present in the stack.`
191
+ });
192
+ continue;
193
+ }
194
+ const schema = source.toEnrichmentSchema?.();
195
+ if (!schema || !isRecord(slot))
196
+ continue;
197
+ // Run-constant scopes — validated once per generator (each generator's
198
+ // umbrella declares its own `generator` / `stack` member shape).
199
+ issues.push(...parseScope(schema, 'generator', slot[Enrichments_js_1.GENERATOR_ENRICHMENT_KEY], { generator: generatorId }));
200
+ issues.push(...parseScope(schema, 'stack', stack, { generator: generatorId }));
201
+ // Subject scope — one parse per (subject, variant) leaf.
202
+ for (const leaf of collectSubjectLeaves(source.type, slot)) {
203
+ issues.push(...parseScope(schema, 'subject', leaf.values, {
204
+ generator: generatorId,
205
+ subject: leaf.subject,
206
+ ...(leaf.method !== undefined ? { method: leaf.method } : {}),
207
+ variant: leaf.variant
208
+ }));
209
+ }
210
+ }
211
+ return issues;
212
+ };
213
+ exports.validateConfig = validateConfig;
package/script/mod.d.ts CHANGED
@@ -192,6 +192,7 @@ export * from './types/Modifiers.js';
192
192
  export * from './types/ModuleExport.js';
193
193
  export * from './types/AccessorPath.js';
194
194
  export * from './enrichments/toEnrichmentDescriptor.js';
195
+ export * from './enrichments/validateConfig.js';
195
196
  export * from './enrichments/readEnrichments.js';
196
197
  export * from './types/Preview.js';
197
198
  export * from './types/RefName.js';
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"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"}
package/script/mod.js CHANGED
@@ -206,6 +206,7 @@ __exportStar(require("./types/Modifiers.js"), exports);
206
206
  __exportStar(require("./types/ModuleExport.js"), exports);
207
207
  __exportStar(require("./types/AccessorPath.js"), exports);
208
208
  __exportStar(require("./enrichments/toEnrichmentDescriptor.js"), exports);
209
+ __exportStar(require("./enrichments/validateConfig.js"), exports);
209
210
  __exportStar(require("./enrichments/readEnrichments.js"), exports);
210
211
  __exportStar(require("./types/Preview.js"), exports);
211
212
  __exportStar(require("./types/RefName.js"), exports);