@goast/core 0.6.0-beta.1 → 0.6.0-beta.2

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 (41) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +67 -67
  3. package/esm/src/codegen/config.d.ts +11 -2
  4. package/esm/src/codegen/config.d.ts.map +1 -1
  5. package/esm/src/parse/openapi-types.d.ts +4 -0
  6. package/esm/src/parse/openapi-types.d.ts.map +1 -1
  7. package/esm/src/transform/api-types.d.ts +14 -0
  8. package/esm/src/transform/api-types.d.ts.map +1 -1
  9. package/esm/src/transform/helpers.d.ts +6 -0
  10. package/esm/src/transform/helpers.d.ts.map +1 -1
  11. package/esm/src/transform/helpers.js +34 -5
  12. package/esm/src/transform/transform-endpoint.js +1 -0
  13. package/esm/src/transform/transform-schema.d.ts.map +1 -1
  14. package/esm/src/transform/transform-schema.js +32 -21
  15. package/esm/src/utils/file-system.utils.d.ts.map +1 -1
  16. package/esm/src/utils/file-system.utils.js +36 -4
  17. package/esm/src/utils/schema.utils.d.ts.map +1 -1
  18. package/esm/src/utils/schema.utils.js +91 -11
  19. package/esm/src/utils/string.utils.d.ts +19 -0
  20. package/esm/src/utils/string.utils.d.ts.map +1 -1
  21. package/esm/src/utils/string.utils.js +25 -0
  22. package/package.json +1 -1
  23. package/script/src/codegen/config.d.ts +11 -2
  24. package/script/src/codegen/config.d.ts.map +1 -1
  25. package/script/src/parse/openapi-types.d.ts +4 -0
  26. package/script/src/parse/openapi-types.d.ts.map +1 -1
  27. package/script/src/transform/api-types.d.ts +14 -0
  28. package/script/src/transform/api-types.d.ts.map +1 -1
  29. package/script/src/transform/helpers.d.ts +6 -0
  30. package/script/src/transform/helpers.d.ts.map +1 -1
  31. package/script/src/transform/helpers.js +37 -5
  32. package/script/src/transform/transform-endpoint.js +1 -0
  33. package/script/src/transform/transform-schema.d.ts.map +1 -1
  34. package/script/src/transform/transform-schema.js +31 -20
  35. package/script/src/utils/file-system.utils.d.ts.map +1 -1
  36. package/script/src/utils/file-system.utils.js +35 -3
  37. package/script/src/utils/schema.utils.d.ts.map +1 -1
  38. package/script/src/utils/schema.utils.js +91 -11
  39. package/script/src/utils/string.utils.d.ts +19 -0
  40. package/script/src/utils/string.utils.d.ts.map +1 -1
  41. package/script/src/utils/string.utils.js +26 -0
@@ -1 +1 @@
1
- {"version":3,"file":"schema.utils.d.ts","sourceRoot":"","sources":["../../../src/src/utils/schema.utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAA0C,MAAM,2BAA2B,CAAC;AAEnG,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,CAAC,UAAU,GAAG,QAAQ,CAAC,EACxC,oBAAoB,EAAE,OAAO,GAC5B,SAAS,CAAC,QAAQ,CAAC,GAAG,SAAS,CAgCjC;AA0FD,eAAO,MAAM,iCAAiC,EAAE,CAAC,MAAM,aAAa,CAAC,EAIpE,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,MAAM,aAAa,CAAC,EAAE,GAAG,SAAS,CAM5G"}
1
+ {"version":3,"file":"schema.utils.d.ts","sourceRoot":"","sources":["../../../src/src/utils/schema.utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAA0C,MAAM,2BAA2B,CAAC;AAEnG,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,CAAC,UAAU,GAAG,QAAQ,CAAC,EACxC,oBAAoB,EAAE,OAAO,GAC5B,SAAS,CAAC,QAAQ,CAAC,GAAG,SAAS,CAgCjC;AAsLD,eAAO,MAAM,iCAAiC,EAAE,CAAC,MAAM,aAAa,CAAC,EAIpE,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,MAAM,aAAa,CAAC,EAAE,GAAG,SAAS,CAM5G"}
@@ -28,30 +28,105 @@ export function resolveAnyOfAndAllOf(schema, ignoreNonObjectParts) {
28
28
  additionalProperties,
29
29
  };
30
30
  }
31
- function collectSubSchemaProperties(subSchemas, properties, required, optional) {
31
+ function collectSubSchemaProperties(subSchemas, properties, required, optional, collected = { required: new Set(), optional: new Set() }) {
32
+ const seen = optional ? collected.optional : collected.required;
32
33
  for (const subSchema of subSchemas) {
34
+ if (seen.has(subSchema))
35
+ continue;
36
+ seen.add(subSchema);
33
37
  if (subSchema.kind === 'object') {
34
38
  for (const prop of subSchema.properties.values()) {
35
- if (!properties.has(prop.name)) {
39
+ const existing = properties.get(prop.name);
40
+ if (!existing) {
36
41
  properties.set(prop.name, prop);
37
42
  }
38
- }
39
- if (!optional) {
40
- for (const prop of subSchema.required) {
41
- required.add(prop);
43
+ else if (hasConflictingType(existing.schema, prop.schema)) {
44
+ // Two branches declare the same property with types that cannot both hold. Picking one and
45
+ // discarding the other would make the merged schema assert something the source contradicts, so
46
+ // widen to a schema that admits both instead.
47
+ properties.set(prop.name, { name: prop.name, schema: widenSchemas(existing.schema, prop.schema) });
42
48
  }
43
49
  }
44
50
  }
51
+ // A branch does not have to contribute properties to contribute requiredness: `allOf: [{ required: [x] }]`
52
+ // only tightens a property inherited from a sibling branch and has no type or properties of its own.
53
+ if (!optional) {
54
+ for (const prop of subSchema.required) {
55
+ required.add(prop);
56
+ }
57
+ }
45
58
  if (subSchema.kind === 'object' || subSchema.kind === 'combined') {
46
- collectSubSchemaProperties(subSchema.allOf, properties, required, optional);
47
- collectSubSchemaProperties(subSchema.anyOf, properties, required, true);
59
+ collectSubSchemaProperties(subSchema.allOf, properties, required, optional, collected);
60
+ collectSubSchemaProperties(subSchema.anyOf, properties, required, true, collected);
61
+ }
62
+ else {
63
+ // Exactly one branch of a composed `oneOf` applies to any given instance, so its properties are
64
+ // collected but none of its requiredness is — the same treatment an `anyOf` branch gets.
65
+ const oneOf = composedOneOf(subSchema);
66
+ if (oneOf)
67
+ collectSubSchemaProperties(oneOf, properties, required, true, collected);
48
68
  }
49
69
  }
50
70
  }
51
- function combineAdditionalProperties(subSchemas, current) {
71
+ /**
72
+ * The branches of a `oneOf` sub-schema that describe the same instance as the schema composing it, or
73
+ * `undefined` if it has none.
74
+ *
75
+ * An undiscriminated `oneOf` inside a composition constrains the very instance being composed:
76
+ * `allOf: [{ oneOf: [A, B] }, C]` is "A or B, *and* C", so whichever branch applies contributes its
77
+ * properties to the whole. A `oneOf` that declares a `discriminator` is not a composition but a list of
78
+ * subtypes, and `allOf: [Base]` against such a schema means "is a Base" — the sibling subtypes' properties
79
+ * belong to those siblings, not to the schema inheriting from the base.
80
+ */
81
+ function composedOneOf(schema) {
82
+ return schema.kind === 'oneOf' && !schema.discriminator ? schema.oneOf : undefined;
83
+ }
84
+ /**
85
+ * Whether two declarations of one property name state types that cannot both hold. A branch that says
86
+ * nothing about the type (`unknown`) constrains nothing and so never conflicts, and two declarations of the
87
+ * same kind are treated as a refinement of one another rather than a conflict, so the first still wins.
88
+ */
89
+ function hasConflictingType(a, b) {
90
+ return a.kind !== b.kind && a.kind !== 'unknown' && b.kind !== 'unknown';
91
+ }
92
+ /** The branches a schema contributes to a widened `oneOf`, flattened so widening stays a single level. */
93
+ function conflictBranches(schema) {
94
+ return schema.kind === 'oneOf' ? schema.oneOf : [schema];
95
+ }
96
+ /** A `oneOf` admitting either side of a conflicting merge, so neither side is silently discarded. */
97
+ function widenSchemas(a, b) {
98
+ const oneOf = [];
99
+ for (const branch of [...conflictBranches(a), ...conflictBranches(b)]) {
100
+ if (!oneOf.some((x) => x.id === branch.id))
101
+ oneOf.push(branch);
102
+ }
103
+ // Derived from the branch ids rather than generated, so the same conflict always yields the same schema.
104
+ const id = `conflict-${oneOf.map((x) => x.id).join('+')}`;
105
+ return {
106
+ ...a,
107
+ $ref: undefined,
108
+ id,
109
+ name: id,
110
+ isNameGenerated: true,
111
+ kind: 'oneOf',
112
+ enum: undefined,
113
+ const: undefined,
114
+ default: undefined,
115
+ discriminator: undefined,
116
+ inheritedSchemas: [],
117
+ nullable: a.nullable || b.nullable,
118
+ oneOf,
119
+ };
120
+ }
121
+ function combineAdditionalProperties(subSchemas, current,
122
+ /** Guards the same composition cycle `collectSubSchemaProperties` guards; see `CollectedSubSchemas`. */
123
+ visited = new Set()) {
52
124
  if (current === true)
53
125
  return true;
54
126
  for (const subSchema of subSchemas) {
127
+ if (visited.has(subSchema))
128
+ continue;
129
+ visited.add(subSchema);
55
130
  if (subSchema.kind === 'object' && subSchema.additionalProperties) {
56
131
  if (subSchema.additionalProperties === true)
57
132
  return true;
@@ -90,8 +165,13 @@ function combineAdditionalProperties(subSchemas, current) {
90
165
  }
91
166
  }
92
167
  if (subSchema.kind === 'object' || subSchema.kind === 'combined') {
93
- current = combineAdditionalProperties(subSchema.allOf, current);
94
- current = combineAdditionalProperties(subSchema.anyOf, current);
168
+ current = combineAdditionalProperties(subSchema.allOf, current, visited);
169
+ current = combineAdditionalProperties(subSchema.anyOf, current, visited);
170
+ }
171
+ else {
172
+ const oneOf = composedOneOf(subSchema);
173
+ if (oneOf)
174
+ current = combineAdditionalProperties(oneOf, current, visited);
95
175
  }
96
176
  if (current === true)
97
177
  return true;
@@ -109,6 +109,25 @@ export declare function toCustomCase(str: Nullable<string>, options: CustomCaseO
109
109
  * @param str The string to escape.
110
110
  */
111
111
  export declare function escapeRegExp(str: string): string;
112
+ /**
113
+ * Compares two strings for sorting, case-insensitively, without any dependency on the host locale.
114
+ *
115
+ * Deliberately not `String.prototype.localeCompare`: its collation depends on the host locale and ICU
116
+ * version, so the same input would sort differently on different machines — which would make
117
+ * generated output non-reproducible. `toLowerCase` is Unicode default case conversion and carries no
118
+ * locale dependency.
119
+ *
120
+ * Comparison is case-insensitive so that, for example, `awaitBody` sorts alphabetically beside
121
+ * `WebClient` rather than after every capitalized name. Strings differing only in case fall back to a
122
+ * case-sensitive comparison, so their relative order is still stable. Non-ASCII characters order by
123
+ * code point rather than alphabetically — `Ähre` sorts after `Zebra` — which is less pretty than
124
+ * locale collation but entirely reproducible.
125
+ *
126
+ * @param a The first string.
127
+ * @param b The second string.
128
+ * @returns A negative number if `a` sorts first, a positive number if `b` does, otherwise 0.
129
+ */
130
+ export declare function compareString(a: string, b: string): number;
112
131
  /**
113
132
  * Removes characters from a string and, if necessary, inserts new characters in their place, returning the spliced string.
114
133
  * @param str The string to splice.
@@ -1 +1 @@
1
- {"version":3,"file":"string.utils.d.ts","sourceRoot":"","sources":["../../../src/src/utils/string.utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"string.utils.d.ts","sourceRoot":"","sources":["../../../src/src/utils/string.utils.ts"],"names":[],"mappings":"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"}
@@ -245,6 +245,31 @@ export function toCustomCase(str, options) {
245
245
  export function escapeRegExp(str) {
246
246
  return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
247
247
  }
248
+ /**
249
+ * Compares two strings for sorting, case-insensitively, without any dependency on the host locale.
250
+ *
251
+ * Deliberately not `String.prototype.localeCompare`: its collation depends on the host locale and ICU
252
+ * version, so the same input would sort differently on different machines — which would make
253
+ * generated output non-reproducible. `toLowerCase` is Unicode default case conversion and carries no
254
+ * locale dependency.
255
+ *
256
+ * Comparison is case-insensitive so that, for example, `awaitBody` sorts alphabetically beside
257
+ * `WebClient` rather than after every capitalized name. Strings differing only in case fall back to a
258
+ * case-sensitive comparison, so their relative order is still stable. Non-ASCII characters order by
259
+ * code point rather than alphabetically — `Ähre` sorts after `Zebra` — which is less pretty than
260
+ * locale collation but entirely reproducible.
261
+ *
262
+ * @param a The first string.
263
+ * @param b The second string.
264
+ * @returns A negative number if `a` sorts first, a positive number if `b` does, otherwise 0.
265
+ */
266
+ export function compareString(a, b) {
267
+ const lowerA = a.toLowerCase();
268
+ const lowerB = b.toLowerCase();
269
+ if (lowerA !== lowerB)
270
+ return lowerA < lowerB ? -1 : 1;
271
+ return a < b ? -1 : a > b ? 1 : 0;
272
+ }
248
273
  /**
249
274
  * Removes characters from a string and, if necessary, inserts new characters in their place, returning the spliced string.
250
275
  * @param str The string to splice.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@goast/core",
3
- "version": "0.6.0-beta.1",
3
+ "version": "0.6.0-beta.2",
4
4
  "description": "A tool designed to transform OpenAPI specifications into various forms with flexibility and extensibility at its core.",
5
5
  "author": {
6
6
  "name": "Marc Schmidt (MaSch0212)",
@@ -16,12 +16,21 @@ export type OpenApiGeneratorConfig = SourceBuilderOptions & OpenApiParserOptions
16
16
  * - 'override': overwrite existing files.
17
17
  * - 'skip': skip generating files that already exist.
18
18
  * - 'error': throw an error if a file already exists.
19
+ * - 'count': write to a new path derived by inserting `_1` before the file extension (`_2`, `_3`, ... if that
20
+ * path is also taken). A counted file is written under a name no other generated file references. The
21
+ * generators compute a schema's file path from its name and use that same path when they emit an import or
22
+ * type reference, so the reference still points at the first file written. `'count'` makes a collision
23
+ * inspectable instead of fatal; it does not make the output correct. It also has a second failure mode
24
+ * unrelated to collisions: with `clearOutputDir: false`, every regeneration finds the previous run's file
25
+ * already on disk and counts up again, so re-running the generator against the same output directory silently
26
+ * accumulates another `_N` file per schema on every run, forever, with no error to signal it.
19
27
  *
20
28
  * Is is recommended to use `'error'` to prevent issues of two schemas generating the same file and overwriting each other.
21
- * If `clearOutputDir` is set to `false`, it is recommended to use `'override'` to ensure that the generated files are up to date.
29
+ * If `clearOutputDir` is set to `false`, it is recommended to use `'override'` instead of `'count'` to ensure
30
+ * that the generated files are up to date without accumulating stale counted copies on every run.
22
31
  * @default 'error'
23
32
  */
24
- existingFileBehavior: 'override' | 'skip' | 'error';
33
+ existingFileBehavior: 'override' | 'skip' | 'error' | 'count';
25
34
  };
26
35
  export declare const defaultOpenApiGeneratorConfig: OpenApiGeneratorConfig;
27
36
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/src/codegen/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAA+B,KAAK,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAEpG,MAAM,MAAM,sBAAsB,GAC9B,oBAAoB,GACpB,oBAAoB,GACpB;IACA;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,cAAc,EAAE,OAAO,CAAC;IAExB;;;;;;;;;OASG;IACH,oBAAoB,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC;CACrD,CAAC;AAEJ,eAAO,MAAM,6BAA6B,EAAE,sBAO3C,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/src/codegen/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAA+B,KAAK,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAEpG,MAAM,MAAM,sBAAsB,GAC9B,oBAAoB,GACpB,oBAAoB,GACpB;IACA;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,cAAc,EAAE,OAAO,CAAC;IAExB;;;;;;;;;;;;;;;;;;OAkBG;IACH,oBAAoB,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;CAC/D,CAAC;AAEJ,eAAO,MAAM,6BAA6B,EAAE,sBAO3C,CAAC"}
@@ -696,6 +696,10 @@ export type OpenApiSchema = OpenApiObject<'schema'> & {
696
696
  * Schema for array items (for array type).
697
697
  */
698
698
  items?: OpenApiSchema;
699
+ /**
700
+ * Schemas for the leading, positionally significant items of an array (tuple). (Only used in OpenAPI v3.1)
701
+ */
702
+ prefixItems?: OpenApiSchema[];
699
703
  /**
700
704
  * Required properties for an object schema.
701
705
  */
@@ -1 +1 @@
1
- {"version":3,"file":"openapi-types.d.ts","sourceRoot":"","sources":["../../../src/src/parse/openapi-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openapi-types.d.ts","sourceRoot":"","sources":["../../../src/src/parse/openapi-types.ts"],"names":[],"mappings":"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"}
@@ -74,6 +74,15 @@ export type ApiContent = ApiContentComponent & {
74
74
  };
75
75
  export type ApiExampleComponent = ApiComponent<OpenApiResponse>;
76
76
  export type ApiResponse = ApiExampleComponent & {
77
+ /**
78
+ * The response key exactly as the spec wrote it: an exact code (`'200'`), a range (`'2XX'`), or
79
+ * `'default'`.
80
+ *
81
+ * Kept alongside {@link statusCode} because that field is lossy by construction —
82
+ * `Number(status) || undefined` collapses `default`, every range code and the literal `'0'` into
83
+ * `undefined`. Anything that has to *emit* a status code needs this one.
84
+ */
85
+ statusKey: string;
77
86
  statusCode: number | undefined;
78
87
  description: string | undefined;
79
88
  headers: ApiHeader[];
@@ -120,6 +129,11 @@ type AdditionalCombinedSchemaProperties = {
120
129
  anyOf: ApiSchema[];
121
130
  };
122
131
  type AdditionalArraySchemaProperties = {
132
+ /**
133
+ * The schema of every element of the array, or `undefined` if the array does not constrain its elements to a
134
+ * single schema. Note that an OpenAPI 3.1 tuple (`prefixItems`) has no single element schema: tuples are not
135
+ * modelled, so `items` is `undefined` for them even though the OpenAPI schema has an `items` keyword.
136
+ */
123
137
  items: ApiSchema | undefined;
124
138
  minItems: number | undefined;
125
139
  maxItems: number | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"api-types.d.ts","sourceRoot":"","sources":["../../../src/src/transform/api-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-types.d.ts","sourceRoot":"","sources":["../../../src/src/transform/api-types.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,12 @@ import type { OpenApiObject } from '../parse/openapi-types.js';
2
2
  import type { Deref, DerefSource } from '../parse/types.js';
3
3
  import type { ApiSchema, ApiSchemaAccessibility, ApiSchemaKind, ApiSchemaProperty } from './api-types.js';
4
4
  import type { OpenApiTransformerContext } from './types.js';
5
+ /** Normalizes a `type` keyword to an array, so a scalar type and a 3.1 type array can be treated alike. */
6
+ export declare function asTypeArray(type: string | string[] | undefined | null): string[];
7
+ /** The declared types with every `null` member removed. */
8
+ export declare function withoutNullType(types: (string | null)[]): string[];
9
+ /** Whether the `type` keyword declares `null`, either as a scalar type or as a member of a 3.1 type array. */
10
+ export declare function hasNullType(type: string | string[] | undefined | null): boolean;
5
11
  export declare function determineSchemaKind<T extends {
6
12
  oneOf?: unknown;
7
13
  allOf?: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/src/transform/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/src/transform/helpers.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IdGenerator = void 0;
4
+ exports.asTypeArray = asTypeArray;
5
+ exports.withoutNullType = withoutNullType;
6
+ exports.hasNullType = hasNullType;
4
7
  exports.determineSchemaKind = determineSchemaKind;
5
8
  exports.determineSchemaName = determineSchemaName;
6
9
  exports.determineSchemaAccessibility = determineSchemaAccessibility;
@@ -15,11 +18,40 @@ const internal_utils_js_1 = require("../internal-utils.js");
15
18
  const common_utils_js_1 = require("../utils/common.utils.js");
16
19
  const object_utils_js_1 = require("../utils/object.utils.js");
17
20
  const yaml_info_js_1 = require("../utils/yaml-info.js");
21
+ /** Normalizes a `type` keyword to an array, so a scalar type and a 3.1 type array can be treated alike. */
22
+ function asTypeArray(type) {
23
+ if ((0, common_utils_js_1.isNullish)(type))
24
+ return [];
25
+ return Array.isArray(type) ? type : [type];
26
+ }
27
+ // OpenAPI 3.1 allows `type: [~]`, which YAML parses to `null` rather than to the string `'null'`.
28
+ function isNullType(type) {
29
+ return type === 'null' || type === null;
30
+ }
31
+ /** The declared types with every `null` member removed. */
32
+ function withoutNullType(types) {
33
+ return types.filter((t) => !isNullType(t));
34
+ }
35
+ /** Whether the `type` keyword declares `null`, either as a scalar type or as a member of a 3.1 type array. */
36
+ function hasNullType(type) {
37
+ return asTypeArray(type).some(isNullType);
38
+ }
18
39
  function determineSchemaKind(ctx, schema) {
40
+ // An OpenAPI 3.1 type array that reduces to at most one non-null type is normalised away by
41
+ // `transformSchema`, which replaces `type` with the narrowed scalar (or `'null'`) and then asks this
42
+ // function again. Such an array therefore has to reach the `multi-type` branch below *before* the
43
+ // `allOf`/`anyOf` branch can claim it as `combined`, because a type array is 3.1's only way of expressing
44
+ // nullability and it would otherwise never be looked at. The second pass gives the `allOf`/`anyOf` branch
45
+ // its chance, this time with a scalar type it can judge correctly.
46
+ //
47
+ // A type array with two or more non-null members is *not* normalised away: nothing re-asks, so it must keep
48
+ // falling through to the `allOf`/`anyOf` branch exactly as it always has. Its nullability is picked up by
49
+ // `transformSchema` from the type as declared instead.
50
+ const narrowsToSingleType = Array.isArray(schema.type) && withoutNullType(schema.type).length <= 1;
19
51
  if (schema.oneOf) {
20
52
  return 'oneOf';
21
53
  }
22
- else if (schema.type !== 'object' && (schema.allOf || schema.anyOf)) {
54
+ else if (!narrowsToSingleType && schema.type !== 'object' && (schema.allOf || schema.anyOf)) {
23
55
  const hasProperties = (schema.properties && Object.keys(schema.properties).length > 0) ||
24
56
  schema.additionalProperties;
25
57
  return hasProperties ? 'object' : 'combined';
@@ -46,9 +78,6 @@ function determineSchemaName(schema, id) {
46
78
  var _a, _b, _c, _d, _e, _f;
47
79
  if (schema.title)
48
80
  return { name: schema.title, isGenerated: false };
49
- if (!schema.$src) {
50
- console.log('woot?');
51
- }
52
81
  if (schema.$src.path === '/')
53
82
  return { name: (0, node_path_1.parse)(schema.$src.file).name, isGenerated: true };
54
83
  const schemaNameMatch = schema.$src.path.match(/(?<=\/components\/schemas\/|\/definitions\/)[^/]+$/i);
@@ -98,7 +127,10 @@ function determineSchemaName(schema, id) {
98
127
  originalComponent: parentSchema,
99
128
  },
100
129
  }, id);
101
- if (!parentSchemaName.isGenerated) {
130
+ // Continue the chain as long as the parent has a name of its own. Generated parent names are fine to build
131
+ // on — that is what makes a third-level inline object `Parent_middle_inner` instead of an opaque ordinal.
132
+ // Only the `id` fallback below is unusable, because it carries no information about the schema at all.
133
+ if (parentSchemaName.name !== id) {
102
134
  return { name: `${parentSchemaName.name}_${parentSchemaMatch[2]}`, isGenerated: true };
103
135
  }
104
136
  }
@@ -159,6 +159,7 @@ function transformResponse(context, response, status) {
159
159
  },
160
160
  $ref: ref,
161
161
  id: context.idGenerator.generateId('response'),
162
+ statusKey: status,
162
163
  statusCode: Number(status) || undefined,
163
164
  description: response.description,
164
165
  headers: transformHeaders(context, response.headers),
@@ -1 +1 @@
1
- {"version":3,"file":"transform-schema.d.ts","sourceRoot":"","sources":["../../../src/src/transform/transform-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,KAAK,EAAE,SAAS,EAAsC,MAAM,gBAAgB,CAAC;AAUpF,OAAO,KAAK,EAAuB,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEjF,wBAAgB,eAAe,CAAC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAiFpH"}
1
+ {"version":3,"file":"transform-schema.d.ts","sourceRoot":"","sources":["../../../src/src/transform/transform-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,KAAK,EAAE,SAAS,EAAsC,MAAM,gBAAgB,CAAC;AAapF,OAAO,KAAK,EAAuB,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEjF,wBAAgB,eAAe,CAAC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAyFpH"}
@@ -4,7 +4,7 @@ exports.transformSchema = transformSchema;
4
4
  const object_utils_js_1 = require("../utils/object.utils.js");
5
5
  const helpers_js_1 = require("./helpers.js");
6
6
  function transformSchema(ctx, schema) {
7
- var _a, _b;
7
+ var _a, _b, _c;
8
8
  if (!schema) {
9
9
  throw new Error('Schema is required.');
10
10
  }
@@ -17,25 +17,32 @@ function transformSchema(ctx, schema) {
17
17
  if (existing)
18
18
  return existing;
19
19
  let kind = (0, helpers_js_1.determineSchemaKind)(ctx, schema);
20
- let nullable = kind === 'null';
20
+ // Read nullability from the `type` keyword as declared, before the normalisation below rewrites it. This has
21
+ // to happen independently of `kind`, because a type array with two or more non-null types deliberately keeps
22
+ // its `combined`/`object` kind and is never normalised — but it is still nullable if it lists `null`.
23
+ let nullable = (0, helpers_js_1.hasNullType)(schema.type);
21
24
  if (kind === 'multi-type') {
22
- const types = schema.type;
23
- let isSingleType = types.length === 1;
24
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
25
- if (types.includes('null') || types.includes(null)) {
26
- nullable = true;
27
- isSingleType = types.length === 2;
25
+ let remainingTypes = (0, helpers_js_1.withoutNullType)(schema.type);
26
+ if (remainingTypes.length === 0) {
27
+ // A type array that contains nothing but `null` constrains nullability only. If the schema also has a
28
+ // `$ref`, the actual type is the referenced one; otherwise the schema really is just the null type.
29
+ remainingTypes = (0, helpers_js_1.withoutNullType)((0, helpers_js_1.asTypeArray)((_b = schema.$ref) === null || _b === void 0 ? void 0 : _b.type));
28
30
  }
29
- if (isSingleType) {
30
- const newType = types.filter((t) => t !== 'null' && t !== null)[0];
31
- schema = (0, object_utils_js_1.createOverwriteProxy)(schema);
32
- schema.type = newType;
33
- kind = (0, helpers_js_1.determineSchemaKind)(ctx, schema);
31
+ if (remainingTypes.length > 1) {
32
+ // Still a genuine multi-type schema; only the `null` member is absorbed into `nullable`.
33
+ schema.type = remainingTypes;
34
34
  }
35
35
  else {
36
- schema.type = types.filter((t) => t !== 'null' && t !== null);
36
+ schema = (0, object_utils_js_1.createOverwriteProxy)(schema);
37
+ // Re-asking `determineSchemaKind` rather than assuming the narrowed type's kind is what lets a sibling
38
+ // `allOf`/`anyOf` still be honoured — including for an all-`null` type array, which stays `combined`.
39
+ schema.type = remainingTypes.length === 1 ? remainingTypes[0] : 'null';
40
+ kind = (0, helpers_js_1.determineSchemaKind)(ctx, schema);
37
41
  }
38
42
  }
43
+ if (kind === 'null') {
44
+ nullable = true;
45
+ }
39
46
  const id = ctx.idGenerator.generateId('schema');
40
47
  const nameInfo = (0, helpers_js_1.determineSchemaName)(schema, id);
41
48
  const incompleteSchema = {
@@ -48,7 +55,7 @@ function transformSchema(ctx, schema) {
48
55
  name: nameInfo.name,
49
56
  isNameGenerated: nameInfo.isGenerated,
50
57
  description: schema.description,
51
- deprecated: (_b = schema.deprecated) !== null && _b !== void 0 ? _b : false,
58
+ deprecated: (_c = schema.deprecated) !== null && _c !== void 0 ? _c : false,
52
59
  accessibility: (0, helpers_js_1.determineSchemaAccessibility)(schema),
53
60
  kind,
54
61
  enum: schema.enum,
@@ -82,9 +89,13 @@ function transformSchema(ctx, schema) {
82
89
  return completeSchema;
83
90
  }
84
91
  function allExtensionsTransformer(schema, context) {
85
- var _a, _b, _c, _d, _e, _f;
92
+ var _a, _b, _c, _d, _e, _f, _g, _h;
93
+ // A schema with `prefixItems` is a tuple. Tuples are not modelled, but the `items` schema of a tuple only
94
+ // describes the elements *after* the prefix, so it must not be reported as the element schema of the array:
95
+ // that would actively mistype the array instead of leaving its elements unspecified.
96
+ const isTuple = ((_b = (_a = schema.prefixItems) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0;
86
97
  return {
87
- oneOf: (_b = (_a = schema.oneOf) === null || _a === void 0 ? void 0 : _a.map((s) => transformSchema(context, s))) !== null && _b !== void 0 ? _b : [],
98
+ oneOf: (_d = (_c = schema.oneOf) === null || _c === void 0 ? void 0 : _c.map((s) => transformSchema(context, s))) !== null && _d !== void 0 ? _d : [],
88
99
  format: schema.format,
89
100
  pattern: schema.pattern,
90
101
  minLength: schema.minLength,
@@ -93,9 +104,9 @@ function allExtensionsTransformer(schema, context) {
93
104
  maximum: schema.maximum,
94
105
  properties: (0, helpers_js_1.transformSchemaProperties)(context, schema, transformSchema),
95
106
  additionalProperties: (0, helpers_js_1.transformAdditionalProperties)(context, schema, transformSchema),
96
- allOf: (_d = (_c = schema.allOf) === null || _c === void 0 ? void 0 : _c.map((s) => transformSchema(context, s))) !== null && _d !== void 0 ? _d : [],
97
- anyOf: (_f = (_e = schema.anyOf) === null || _e === void 0 ? void 0 : _e.map((s) => transformSchema(context, s))) !== null && _f !== void 0 ? _f : [],
98
- items: schema.items ? transformSchema(context, schema.items) : undefined,
107
+ allOf: (_f = (_e = schema.allOf) === null || _e === void 0 ? void 0 : _e.map((s) => transformSchema(context, s))) !== null && _f !== void 0 ? _f : [],
108
+ anyOf: (_h = (_g = schema.anyOf) === null || _g === void 0 ? void 0 : _g.map((s) => transformSchema(context, s))) !== null && _h !== void 0 ? _h : [],
109
+ items: !isTuple && schema.items ? transformSchema(context, schema.items) : undefined,
99
110
  minItems: schema.minItems,
100
111
  maxItems: schema.maxItems,
101
112
  };
@@ -1 +1 @@
1
- {"version":3,"file":"file-system.utils.d.ts","sourceRoot":"","sources":["../../../src/src/utils/file-system.utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CACpC,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,oBAGzC,CAAC;AAEF,wBAAsB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAKtG;AA0BD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAU1G"}
1
+ {"version":3,"file":"file-system.utils.d.ts","sourceRoot":"","sources":["../../../src/src/utils/file-system.utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CACpC,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,oBAGzC,CAAC;AAEF,wBAAsB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAKtG;AAwDD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAgB1G"}