@skmtc/core 0.16.1 → 0.16.3

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 (67) hide show
  1. package/esm/context/ParseContext.d.ts.map +1 -1
  2. package/esm/context/ParseContext.js +10 -0
  3. package/esm/context/ParseIssue.d.ts +24 -4
  4. package/esm/context/ParseIssue.d.ts.map +1 -1
  5. package/esm/context/ParseIssue.js +12 -4
  6. package/esm/context/parseTypes.d.ts +23 -1
  7. package/esm/context/parseTypes.d.ts.map +1 -1
  8. package/esm/oas/operation/Operation.d.ts.map +1 -1
  9. package/esm/oas/operation/Operation.js +2 -11
  10. package/esm/oas/response/toPrimaryResponseCode.d.ts +19 -0
  11. package/esm/oas/response/toPrimaryResponseCode.d.ts.map +1 -0
  12. package/esm/oas/response/toPrimaryResponseCode.js +33 -0
  13. package/esm/oas/webhook/Webhook.d.ts +40 -3
  14. package/esm/oas/webhook/Webhook.d.ts.map +1 -1
  15. package/esm/oas/webhook/Webhook.js +52 -3
  16. package/esm/parse/v3-0/integer/toInteger.js +4 -1
  17. package/esm/parse/v3-0/number/toNumber.js +4 -1
  18. package/esm/parse/v3-0/operation/toOperationsV3.d.ts.map +1 -1
  19. package/esm/parse/v3-0/operation/toOperationsV3.js +5 -1
  20. package/esm/parse/v3-0/schema/toSchemasV3.d.ts.map +1 -1
  21. package/esm/parse/v3-0/schema/toSchemasV3.js +27 -1
  22. package/esm/parse/v3-0/string/toString.d.ts.map +1 -1
  23. package/esm/parse/v3-0/string/toString.js +4 -11
  24. package/esm/parse/v3-1/integer/toInteger.js +4 -1
  25. package/esm/parse/v3-1/number/toNumber.js +4 -1
  26. package/esm/parse/v3-1/operation/toOperationsV3.d.ts.map +1 -1
  27. package/esm/parse/v3-1/operation/toOperationsV3.js +5 -1
  28. package/esm/parse/v3-1/schema/toSchemasV3.d.ts.map +1 -1
  29. package/esm/parse/v3-1/schema/toSchemasV3.js +26 -7
  30. package/esm/parse/v3-1/string/toString.d.ts.map +1 -1
  31. package/esm/parse/v3-1/string/toString.js +4 -11
  32. package/esm/types/Manifest.d.ts.map +1 -1
  33. package/esm/types/Manifest.js +14 -0
  34. package/package.json +1 -1
  35. package/script/context/ParseContext.d.ts.map +1 -1
  36. package/script/context/ParseContext.js +10 -0
  37. package/script/context/ParseIssue.d.ts +24 -4
  38. package/script/context/ParseIssue.d.ts.map +1 -1
  39. package/script/context/ParseIssue.js +12 -4
  40. package/script/context/parseTypes.d.ts +23 -1
  41. package/script/context/parseTypes.d.ts.map +1 -1
  42. package/script/oas/operation/Operation.d.ts.map +1 -1
  43. package/script/oas/operation/Operation.js +2 -11
  44. package/script/oas/response/toPrimaryResponseCode.d.ts +19 -0
  45. package/script/oas/response/toPrimaryResponseCode.d.ts.map +1 -0
  46. package/script/oas/response/toPrimaryResponseCode.js +37 -0
  47. package/script/oas/webhook/Webhook.d.ts +40 -3
  48. package/script/oas/webhook/Webhook.d.ts.map +1 -1
  49. package/script/oas/webhook/Webhook.js +52 -3
  50. package/script/parse/v3-0/integer/toInteger.js +4 -1
  51. package/script/parse/v3-0/number/toNumber.js +4 -1
  52. package/script/parse/v3-0/operation/toOperationsV3.d.ts.map +1 -1
  53. package/script/parse/v3-0/operation/toOperationsV3.js +5 -1
  54. package/script/parse/v3-0/schema/toSchemasV3.d.ts.map +1 -1
  55. package/script/parse/v3-0/schema/toSchemasV3.js +27 -1
  56. package/script/parse/v3-0/string/toString.d.ts.map +1 -1
  57. package/script/parse/v3-0/string/toString.js +3 -10
  58. package/script/parse/v3-1/integer/toInteger.js +4 -1
  59. package/script/parse/v3-1/number/toNumber.js +4 -1
  60. package/script/parse/v3-1/operation/toOperationsV3.d.ts.map +1 -1
  61. package/script/parse/v3-1/operation/toOperationsV3.js +5 -1
  62. package/script/parse/v3-1/schema/toSchemasV3.d.ts.map +1 -1
  63. package/script/parse/v3-1/schema/toSchemasV3.js +26 -7
  64. package/script/parse/v3-1/string/toString.d.ts.map +1 -1
  65. package/script/parse/v3-1/string/toString.js +3 -10
  66. package/script/types/Manifest.d.ts.map +1 -1
  67. package/script/types/Manifest.js +14 -0
@@ -14,7 +14,11 @@ const toExternalDocs_js_1 = require("../externalDocs/toExternalDocs.js");
14
14
  const toServerV3_js_1 = require("../server/toServerV3.js");
15
15
  const toOperationV3 = ({ operation, operationInfo, stackTrail, context }) => {
16
16
  const { method, path, pathItem } = operationInfo;
17
- const { operationId, tags, summary, description, parameters, requestBody, responses, deprecated, security, externalDocs, servers, ...skipped } = operation;
17
+ const { operationId, tags, summary, description, parameters, requestBody, responses, deprecated, security, externalDocs, servers,
18
+ // Callbacks are a deliberate non-goal (no out-of-band callback codegen).
19
+ // Pull it out so it is dropped silently instead of warned as an
20
+ // unexpected property on every operation that declares one.
21
+ callbacks: _callbacks, ...skipped } = operation;
18
22
  const extensionFields = (0, toSpecificationExtensionsV3_js_1.toSpecificationExtensionsV3)({
19
23
  skipped,
20
24
  parent: operation,
@@ -1 +1 @@
1
- {"version":3,"file":"toSchemasV3.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-0/schema/toSchemasV3.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAarD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,CAAA;IAC3E,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,kCAIzB,eAAe,KAAG,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAmB/D,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IACvF,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,kCAIjC,uBAAuB,KAAG,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAM3E,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAA;IAC1D,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AA0CD,eAAO,MAAM,UAAU,GAAI,iCAIxB,cAAc,KAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAsN9C,CAAA;AA+CD,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,GAAG,SAAS,CAAA;IACtE,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,iCAIhC,sBAAsB,KAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAM1D,CAAA"}
1
+ {"version":3,"file":"toSchemasV3.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-0/schema/toSchemasV3.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAarD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,CAAA;IAC3E,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,kCAIzB,eAAe,KAAG,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAmB/D,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IACvF,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,kCAIjC,uBAAuB,KAAG,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAM3E,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAA;IAC1D,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AA0CD,eAAO,MAAM,UAAU,GAAI,iCAIxB,cAAc,KAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAoP9C,CAAA;AA+CD,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,GAAG,SAAS,CAAA;IACtE,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,iCAIhC,sBAAsB,KAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAM1D,CAAA"}
@@ -80,6 +80,27 @@ const toSchemaV3 = ({ schema, stackTrail, context }) => {
80
80
  }
81
81
  if ('allOf' in schema && Array.isArray(schema.allOf)) {
82
82
  return stackTrail.trace('allOf', st => {
83
+ // A single-member allOf collapses to its sole member — the value must
84
+ // satisfy exactly that one schema. When the member is a `$ref`, keep it
85
+ // LAZY (as an OasRef) rather than resolving + merging its target: a
86
+ // `{ allOf: [{$ref: self}], nullable: true }` (a nullable reference
87
+ // written as a one-member allOf — common in real specs) is
88
+ // self-referential, and eagerly resolving it would not terminate. The
89
+ // ref resolves at use time like every other ref. This mirrors the
90
+ // single-member oneOf/anyOf handling below.
91
+ const { allOf, ...value } = schema;
92
+ const members = allOf ?? [];
93
+ if (members.length === 1) {
94
+ const [member] = members;
95
+ if ((0, refFns_js_1.isRef)(member) && value.nullable) {
96
+ return (0, toRefV31_js_1.toRefV31)({ ref: member, refType: 'schema', nullable: true, stackTrail: st, context });
97
+ }
98
+ return (0, exports.toSchemaV3)({
99
+ schema: collapseSingleMember(value, member),
100
+ stackTrail: st,
101
+ context
102
+ });
103
+ }
83
104
  const merged = (0, merge_intersection_js_1.mergeIntersection)({
84
105
  schema,
85
106
  getRef: (0, refFns_js_2.toGetRef)(context.documentObject)
@@ -190,8 +211,13 @@ const toSchemaV3 = ({ schema, stackTrail, context }) => {
190
211
  }
191
212
  // Otherwise cases
192
213
  if (possibleObject(schema)) {
214
+ // 3.0 requires `type`, so its absence is a real (if benign) deviation —
215
+ // recorded at `debug` rather than `warning`: `properties` makes the
216
+ // intent unambiguous and inferring `object` is reliable, so it is noise
217
+ // in the default view but worth keeping in the record. (The v3-1 parser
218
+ // is silent here — type-less is valid in 3.1.)
193
219
  context.logIssueNoKey({
194
- level: 'warning',
220
+ level: 'debug',
195
221
  message: 'Object has "properties" property, but is missing type="object" property',
196
222
  parent: schema,
197
223
  stackTrail,
@@ -1 +1 @@
1
- {"version":3,"file":"toString.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-0/string/toString.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAQzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,wEAAwE;IACxE,KAAK,EAAE,SAAS,CAAC,YAAY,CAAA;IAC7B,kCAAkC;IAClC,UAAU,EAAE,UAAU,CAAA;IACtB,iEAAiE;IACjE,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,eAAO,MAAM,QAAQ,GAAI,gCAAgC,YAAY,KAAG,SAwDvE,CAAA;AAED,KAAK,kBAAkB,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC9D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC,CAAA;IACjF,OAAO,EAAE,gBAAgB,CAAA;IACzB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IAC/E,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;IACnF,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IACpF,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,SAAS,OAAO,GAAG,SAAS,EAAE,wEAQlE,kBAAkB,CAAC,QAAQ,CAAC,KAAG,SAAS,CAAC,QAAQ,CA2DnD,CAAA"}
1
+ {"version":3,"file":"toString.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-0/string/toString.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAQzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,wEAAwE;IACxE,KAAK,EAAE,SAAS,CAAC,YAAY,CAAA;IAC7B,kCAAkC;IAClC,UAAU,EAAE,UAAU,CAAA;IACtB,iEAAiE;IACjE,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,eAAO,MAAM,QAAQ,GAAI,gCAAgC,YAAY,KAAG,SAwDvE,CAAA;AAED,KAAK,kBAAkB,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC9D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC,CAAA;IACjF,OAAO,EAAE,gBAAgB,CAAA;IACzB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IAC/E,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;IACnF,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IACpF,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,SAAS,OAAO,GAAG,SAAS,EAAE,wEAQlE,kBAAkB,CAAC,QAAQ,CAAC,KAAG,SAAS,CAAC,QAAQ,CAoDnD,CAAA"}
@@ -223,16 +223,9 @@ const toParsedString = ({ context, nullable, example, enums, defaultValue, value
223
223
  stackTrail,
224
224
  parentType: 'schema:string'
225
225
  });
226
- if (format && !v.is(string_types_js_1.stringFormat, format)) {
227
- context.logIssue({
228
- key: 'format',
229
- level: 'warning',
230
- message: `Unexpected format: ${format}`,
231
- parent: value,
232
- stackTrail,
233
- type: 'UNEXPECTED_FORMAT'
234
- });
235
- }
226
+ // `format` is an open vocabulary — custom string formats (e.g. `decimal`,
227
+ // `utc_datetime`) are spec-legal. The value is preserved on the OasString
228
+ // below, so an unrecognised format is passed through, not warned.
236
229
  return context.withStackTrail(stackTrail, () => new String_js_1.OasString({
237
230
  title,
238
231
  description,
@@ -133,9 +133,12 @@ const parseIntegerFormat = ({ format, context, parent, stackTrail }) => {
133
133
  return undefined;
134
134
  }
135
135
  if (!v.is(integer_types_js_1.integerFormat, format)) {
136
+ // `format` is an open vocabulary; a value the IR's integerFormat can't
137
+ // hold is dropped. Recorded at `debug` — the dropped hint is
138
+ // informational, not a correctness issue.
136
139
  context.logIssue({
137
140
  key: 'format',
138
- level: 'warning',
141
+ level: 'debug',
139
142
  message: `Invalid format: ${format}`,
140
143
  parent,
141
144
  stackTrail,
@@ -132,9 +132,12 @@ const parseNumberFormat = ({ format, context, parent, stackTrail }) => {
132
132
  return undefined;
133
133
  }
134
134
  if (!v.is(number_types_js_1.numberFormat, format)) {
135
+ // `format` is an open vocabulary; a value the IR's numberFormat can't
136
+ // hold (e.g. `decimal`) is dropped. Recorded at `debug` — the dropped
137
+ // hint is informational, not a correctness issue.
135
138
  context.logIssue({
136
139
  key: 'format',
137
- level: 'warning',
140
+ level: 'debug',
138
141
  message: `Invalid format: ${format}`,
139
142
  parent,
140
143
  stackTrail,
@@ -1 +1 @@
1
- {"version":3,"file":"toOperationsV3.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-1/operation/toOperationsV3.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAItE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAA;AAElE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAA;AAOpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE,KAAK,aAAa,GAAG;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,WAAW,GAAG,SAAS,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,SAAS,CAAC,eAAe,CAAA;IACpC,aAAa,EAAE,aAAa,CAAA;IAC5B,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAOD,eAAO,MAAM,aAAa,GAAI,mDAK3B,iBAAiB,KAAG,YAmEtB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAG/B,KAAK,EAAE,SAAS,CAAC,WAAW,GAAG,SAAS,CAAA;IACxC,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,gCAI5B,kBAAkB,KAAG,YAAY,EAiFnC,CAAA"}
1
+ {"version":3,"file":"toOperationsV3.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-1/operation/toOperationsV3.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAItE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAA;AAElE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAA;AAOpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE,KAAK,aAAa,GAAG;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,WAAW,GAAG,SAAS,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,SAAS,CAAC,eAAe,CAAA;IACpC,aAAa,EAAE,aAAa,CAAA;IAC5B,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAOD,eAAO,MAAM,aAAa,GAAI,mDAK3B,iBAAiB,KAAG,YAuEtB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAG/B,KAAK,EAAE,SAAS,CAAC,WAAW,GAAG,SAAS,CAAA;IACxC,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,gCAI5B,kBAAkB,KAAG,YAAY,EAiFnC,CAAA"}
@@ -14,7 +14,11 @@ const toExternalDocs_js_1 = require("../externalDocs/toExternalDocs.js");
14
14
  const toServerV3_js_1 = require("../server/toServerV3.js");
15
15
  const toOperationV3 = ({ operation, operationInfo, stackTrail, context }) => {
16
16
  const { method, path, pathItem } = operationInfo;
17
- const { operationId, tags, summary, description, parameters, requestBody, responses, deprecated, security, externalDocs, servers, ...skipped } = operation;
17
+ const { operationId, tags, summary, description, parameters, requestBody, responses, deprecated, security, externalDocs, servers,
18
+ // Callbacks are a deliberate non-goal (no out-of-band callback codegen).
19
+ // Pull it out so it is dropped silently instead of warned as an
20
+ // unexpected property on every operation that declares one.
21
+ callbacks: _callbacks, ...skipped } = operation;
18
22
  const extensionFields = (0, toSpecificationExtensionsV3_js_1.toSpecificationExtensionsV3)({
19
23
  skipped,
20
24
  parent: operation,
@@ -1 +1 @@
1
- {"version":3,"file":"toSchemasV3.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-1/schema/toSchemasV3.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAarD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,CAAA;IAC3E,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,kCAIzB,eAAe,KAAG,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAmB/D,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IACvF,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,kCAIjC,uBAAuB,KAAG,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAM3E,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAA;IAC1D,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAuPD,eAAO,MAAM,UAAU,GAAI,iCAIxB,cAAc,KAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CA8O9C,CAAA;AA+CD,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,GAAG,SAAS,CAAA;IACtE,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,iCAIhC,sBAAsB,KAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAM1D,CAAA"}
1
+ {"version":3,"file":"toSchemasV3.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-1/schema/toSchemasV3.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAarD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,CAAA;IAC3E,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,kCAIzB,eAAe,KAAG,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAmB/D,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IACvF,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,kCAIjC,uBAAuB,KAAG,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAM3E,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,CAAA;IAC1D,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAuPD,eAAO,MAAM,UAAU,GAAI,iCAIxB,cAAc,KAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAoQ9C,CAAA;AA+CD,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,YAAY,GAAG,SAAS,CAAA;IACtE,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,iCAIhC,sBAAsB,KAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAM1D,CAAA"}
@@ -250,6 +250,27 @@ const toSchemaV3 = ({ schema, stackTrail, context }) => {
250
250
  }
251
251
  if ('allOf' in schema && Array.isArray(schema.allOf)) {
252
252
  return stackTrail.trace('allOf', st => {
253
+ // A single-member allOf collapses to its sole member — the value must
254
+ // satisfy exactly that one schema. When the member is a `$ref`, keep it
255
+ // LAZY (as an OasRef) rather than resolving + merging its target: a
256
+ // `{ allOf: [{$ref: self}], nullable: true }` (a nullable reference
257
+ // written as a one-member allOf — common in real specs) is
258
+ // self-referential, and eagerly resolving it would not terminate. The
259
+ // ref resolves at use time like every other ref. Mirrors the
260
+ // single-member oneOf/anyOf handling below.
261
+ const { allOf, ...value } = schema;
262
+ const members = allOf ?? [];
263
+ if (members.length === 1) {
264
+ const [member] = members;
265
+ if ((0, refFns_js_1.isRef)(member) && value.nullable) {
266
+ return (0, toRefV31_js_1.toRefV31)({ ref: member, refType: 'schema', nullable: true, stackTrail: st, context });
267
+ }
268
+ return (0, exports.toSchemaV3)({
269
+ schema: collapseSingleMember(value, member),
270
+ stackTrail: st,
271
+ context
272
+ });
273
+ }
253
274
  const merged = (0, merge_intersection_js_1.mergeIntersection)({
254
275
  schema,
255
276
  getRef: (0, refFns_js_2.toGetRef)(context.documentObject)
@@ -372,13 +393,11 @@ const toSchemaV3 = ({ schema, stackTrail, context }) => {
372
393
  }
373
394
  // Otherwise cases
374
395
  if (possibleObject(schema)) {
375
- context.logIssueNoKey({
376
- level: 'warning',
377
- message: 'Object has "properties" property, but is missing type="object" property',
378
- parent: schema,
379
- stackTrail,
380
- type: 'MISSING_OBJECT_TYPE'
381
- });
396
+ // In 3.1 `type` is optional, so a schema with `properties` and no `type`
397
+ // is a normal, valid object schema — inferring `object` is the expected
398
+ // reading, not a deviation, so it is silent. (The v3-0 parser keeps the
399
+ // MISSING_OBJECT_TYPE warning: 3.0 requires `type`, so its absence there
400
+ // is a real signal.)
382
401
  return (0, toObject_js_1.toObject)({
383
402
  value: {
384
403
  ...schema,
@@ -1 +1 @@
1
- {"version":3,"file":"toString.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-1/string/toString.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAQzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,wEAAwE;IACxE,KAAK,EAAE,SAAS,CAAC,YAAY,CAAA;IAC7B,kCAAkC;IAClC,UAAU,EAAE,UAAU,CAAA;IACtB,iEAAiE;IACjE,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,eAAO,MAAM,QAAQ,GAAI,gCAAgC,YAAY,KAAG,SAwDvE,CAAA;AAED,KAAK,kBAAkB,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC9D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC,CAAA;IACjF,OAAO,EAAE,gBAAgB,CAAA;IACzB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IAC/E,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;IACnF,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IACpF,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,SAAS,OAAO,GAAG,SAAS,EAAE,wEAQlE,kBAAkB,CAAC,QAAQ,CAAC,KAAG,SAAS,CAAC,QAAQ,CA2DnD,CAAA"}
1
+ {"version":3,"file":"toString.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-1/string/toString.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAQzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,wEAAwE;IACxE,KAAK,EAAE,SAAS,CAAC,YAAY,CAAA;IAC7B,kCAAkC;IAClC,UAAU,EAAE,UAAU,CAAA;IACtB,iEAAiE;IACjE,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,eAAO,MAAM,QAAQ,GAAI,gCAAgC,YAAY,KAAG,SAwDvE,CAAA;AAED,KAAK,kBAAkB,CAAC,QAAQ,SAAS,OAAO,GAAG,SAAS,IAAI;IAC9D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC,CAAA;IACjF,OAAO,EAAE,gBAAgB,CAAA;IACzB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IAC/E,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;IACnF,YAAY,EAAE,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IACpF,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,SAAS,OAAO,GAAG,SAAS,EAAE,wEAQlE,kBAAkB,CAAC,QAAQ,CAAC,KAAG,SAAS,CAAC,QAAQ,CAoDnD,CAAA"}
@@ -223,16 +223,9 @@ const toParsedString = ({ context, nullable, example, enums, defaultValue, value
223
223
  stackTrail,
224
224
  parentType: 'schema:string'
225
225
  });
226
- if (format && !v.is(string_types_js_1.stringFormat, format)) {
227
- context.logIssue({
228
- key: 'format',
229
- level: 'warning',
230
- message: `Unexpected format: ${format}`,
231
- parent: value,
232
- stackTrail,
233
- type: 'UNEXPECTED_FORMAT'
234
- });
235
- }
226
+ // `format` is an open vocabulary — custom string formats (e.g. `decimal`,
227
+ // `utc_datetime`) are spec-legal. The value is preserved on the OasString
228
+ // below, so an unrecognised format is passed through, not warned.
236
229
  return context.withStackTrail(stackTrail, () => new String_js_1.OasString({
237
230
  title,
238
231
  description,
@@ -1 +1 @@
1
- {"version":3,"file":"Manifest.d.ts","sourceRoot":"","sources":["../../src/types/Manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuEG;AACH,OAAO,sBAAsB,CAAC;AAG9B,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AAC5D,OAAO,EAAW,KAAK,OAAO,EAAE,KAAK,OAAO,EAAW,MAAM,cAAc,CAAA;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAG1D,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AA8C5B,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,CAAC,CAAC,aAAa,CAAC,aAAa,CAIvD,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,CAAC,CAAC,aAAa,CAAC,WAAW,CAGnD,CAAA;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACpC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,OAAO,EAAE,WAAW,CAAA;IACpB;;;;;OAKG;IACH,WAAW,EAAE,UAAU,EAAE,CAAA;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,aAAa,CAAC,eAAe,CAY3D,CAAA"}
1
+ {"version":3,"file":"Manifest.d.ts","sourceRoot":"","sources":["../../src/types/Manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuEG;AACH,OAAO,sBAAsB,CAAC;AAG9B,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AAC5D,OAAO,EAAW,KAAK,OAAO,EAAE,KAAK,OAAO,EAAW,MAAM,cAAc,CAAA;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAG1D,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AA4D5B,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,CAAC,CAAC,aAAa,CAAC,aAAa,CAIvD,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,CAAC,CAAC,aAAa,CAAC,WAAW,CAGnD,CAAA;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACpC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,OAAO,EAAE,WAAW,CAAA;IACpB;;;;;OAKG;IACH,WAAW,EAAE,UAAU,EAAE,CAAA;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,aAAa,CAAC,eAAe,CAY3D,CAAA"}
@@ -135,6 +135,13 @@ const parseIssue = v.variant('protocol', [
135
135
  type: generateTypes_js_1.oasIssueType,
136
136
  location: v.string(),
137
137
  message: v.string()
138
+ }),
139
+ v.object({
140
+ protocol: v.literal('oas'),
141
+ level: v.literal('debug'),
142
+ type: generateTypes_js_1.oasIssueType,
143
+ location: v.string(),
144
+ message: v.string()
138
145
  })
139
146
  ]),
140
147
  v.variant('level', [
@@ -152,6 +159,13 @@ const parseIssue = v.variant('protocol', [
152
159
  type: ParseIssue_js_1.gqlIssueType,
153
160
  location: v.string(),
154
161
  message: v.string()
162
+ }),
163
+ v.object({
164
+ protocol: v.literal('gql'),
165
+ level: v.literal('debug'),
166
+ type: ParseIssue_js_1.gqlIssueType,
167
+ location: v.string(),
168
+ message: v.string()
155
169
  })
156
170
  ])
157
171
  ]);