@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.
- package/esm/context/ParseContext.d.ts.map +1 -1
- package/esm/context/ParseContext.js +10 -0
- package/esm/context/ParseIssue.d.ts +24 -4
- package/esm/context/ParseIssue.d.ts.map +1 -1
- package/esm/context/ParseIssue.js +12 -4
- package/esm/context/parseTypes.d.ts +23 -1
- package/esm/context/parseTypes.d.ts.map +1 -1
- package/esm/oas/operation/Operation.d.ts.map +1 -1
- package/esm/oas/operation/Operation.js +2 -11
- package/esm/oas/response/toPrimaryResponseCode.d.ts +19 -0
- package/esm/oas/response/toPrimaryResponseCode.d.ts.map +1 -0
- package/esm/oas/response/toPrimaryResponseCode.js +33 -0
- package/esm/oas/webhook/Webhook.d.ts +40 -3
- package/esm/oas/webhook/Webhook.d.ts.map +1 -1
- package/esm/oas/webhook/Webhook.js +52 -3
- package/esm/parse/v3-0/integer/toInteger.js +4 -1
- package/esm/parse/v3-0/number/toNumber.js +4 -1
- package/esm/parse/v3-0/operation/toOperationsV3.d.ts.map +1 -1
- package/esm/parse/v3-0/operation/toOperationsV3.js +5 -1
- package/esm/parse/v3-0/schema/toSchemasV3.d.ts.map +1 -1
- package/esm/parse/v3-0/schema/toSchemasV3.js +27 -1
- package/esm/parse/v3-0/string/toString.d.ts.map +1 -1
- package/esm/parse/v3-0/string/toString.js +4 -11
- package/esm/parse/v3-1/integer/toInteger.js +4 -1
- package/esm/parse/v3-1/number/toNumber.js +4 -1
- package/esm/parse/v3-1/operation/toOperationsV3.d.ts.map +1 -1
- package/esm/parse/v3-1/operation/toOperationsV3.js +5 -1
- package/esm/parse/v3-1/schema/toSchemasV3.d.ts.map +1 -1
- package/esm/parse/v3-1/schema/toSchemasV3.js +26 -7
- package/esm/parse/v3-1/string/toString.d.ts.map +1 -1
- package/esm/parse/v3-1/string/toString.js +4 -11
- package/esm/types/Manifest.d.ts.map +1 -1
- package/esm/types/Manifest.js +14 -0
- package/package.json +1 -1
- package/script/context/ParseContext.d.ts.map +1 -1
- package/script/context/ParseContext.js +10 -0
- package/script/context/ParseIssue.d.ts +24 -4
- package/script/context/ParseIssue.d.ts.map +1 -1
- package/script/context/ParseIssue.js +12 -4
- package/script/context/parseTypes.d.ts +23 -1
- package/script/context/parseTypes.d.ts.map +1 -1
- package/script/oas/operation/Operation.d.ts.map +1 -1
- package/script/oas/operation/Operation.js +2 -11
- package/script/oas/response/toPrimaryResponseCode.d.ts +19 -0
- package/script/oas/response/toPrimaryResponseCode.d.ts.map +1 -0
- package/script/oas/response/toPrimaryResponseCode.js +37 -0
- package/script/oas/webhook/Webhook.d.ts +40 -3
- package/script/oas/webhook/Webhook.d.ts.map +1 -1
- package/script/oas/webhook/Webhook.js +52 -3
- package/script/parse/v3-0/integer/toInteger.js +4 -1
- package/script/parse/v3-0/number/toNumber.js +4 -1
- package/script/parse/v3-0/operation/toOperationsV3.d.ts.map +1 -1
- package/script/parse/v3-0/operation/toOperationsV3.js +5 -1
- package/script/parse/v3-0/schema/toSchemasV3.d.ts.map +1 -1
- package/script/parse/v3-0/schema/toSchemasV3.js +27 -1
- package/script/parse/v3-0/string/toString.d.ts.map +1 -1
- package/script/parse/v3-0/string/toString.js +3 -10
- package/script/parse/v3-1/integer/toInteger.js +4 -1
- package/script/parse/v3-1/number/toNumber.js +4 -1
- package/script/parse/v3-1/operation/toOperationsV3.d.ts.map +1 -1
- package/script/parse/v3-1/operation/toOperationsV3.js +5 -1
- package/script/parse/v3-1/schema/toSchemasV3.d.ts.map +1 -1
- package/script/parse/v3-1/schema/toSchemasV3.js +26 -7
- package/script/parse/v3-1/string/toString.d.ts.map +1 -1
- package/script/parse/v3-1/string/toString.js +3 -10
- package/script/types/Manifest.d.ts.map +1 -1
- package/script/types/Manifest.js +14 -0
|
@@ -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,
|
|
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"}
|
|
@@ -245,6 +245,27 @@ export const toSchemaV3 = ({ schema, stackTrail, context }) => {
|
|
|
245
245
|
}
|
|
246
246
|
if ('allOf' in schema && Array.isArray(schema.allOf)) {
|
|
247
247
|
return stackTrail.trace('allOf', st => {
|
|
248
|
+
// A single-member allOf collapses to its sole member — the value must
|
|
249
|
+
// satisfy exactly that one schema. When the member is a `$ref`, keep it
|
|
250
|
+
// LAZY (as an OasRef) rather than resolving + merging its target: a
|
|
251
|
+
// `{ allOf: [{$ref: self}], nullable: true }` (a nullable reference
|
|
252
|
+
// written as a one-member allOf — common in real specs) is
|
|
253
|
+
// self-referential, and eagerly resolving it would not terminate. The
|
|
254
|
+
// ref resolves at use time like every other ref. Mirrors the
|
|
255
|
+
// single-member oneOf/anyOf handling below.
|
|
256
|
+
const { allOf, ...value } = schema;
|
|
257
|
+
const members = allOf ?? [];
|
|
258
|
+
if (members.length === 1) {
|
|
259
|
+
const [member] = members;
|
|
260
|
+
if (isRef(member) && value.nullable) {
|
|
261
|
+
return toRefV31({ ref: member, refType: 'schema', nullable: true, stackTrail: st, context });
|
|
262
|
+
}
|
|
263
|
+
return toSchemaV3({
|
|
264
|
+
schema: collapseSingleMember(value, member),
|
|
265
|
+
stackTrail: st,
|
|
266
|
+
context
|
|
267
|
+
});
|
|
268
|
+
}
|
|
248
269
|
const merged = mergeIntersection({
|
|
249
270
|
schema,
|
|
250
271
|
getRef: toGetRef(context.documentObject)
|
|
@@ -367,13 +388,11 @@ export const toSchemaV3 = ({ schema, stackTrail, context }) => {
|
|
|
367
388
|
}
|
|
368
389
|
// Otherwise cases
|
|
369
390
|
if (possibleObject(schema)) {
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
type: 'MISSING_OBJECT_TYPE'
|
|
376
|
-
});
|
|
391
|
+
// In 3.1 `type` is optional, so a schema with `properties` and no `type`
|
|
392
|
+
// is a normal, valid object schema — inferring `object` is the expected
|
|
393
|
+
// reading, not a deviation, so it is silent. (The v3-0 parser keeps the
|
|
394
|
+
// MISSING_OBJECT_TYPE warning: 3.0 requires `type`, so its absence there
|
|
395
|
+
// is a real signal.)
|
|
377
396
|
return toObject({
|
|
378
397
|
value: {
|
|
379
398
|
...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,
|
|
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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { OasString } from '../../../oas/string/String.js';
|
|
2
2
|
import { toSpecificationExtensionsV3 } from '../specificationExtensions/toSpecificationExtensionsV3.js';
|
|
3
|
-
import { oasStringData
|
|
3
|
+
import { oasStringData } from '../../../oas/string/string-types.js';
|
|
4
4
|
import * as v from 'valibot';
|
|
5
5
|
import { parseNullable } from '../_helpers/parseNullable.js';
|
|
6
6
|
import { parseEnum } from '../_helpers/parseEnum.js';
|
|
@@ -186,16 +186,9 @@ export const toParsedString = ({ context, nullable, example, enums, defaultValue
|
|
|
186
186
|
stackTrail,
|
|
187
187
|
parentType: 'schema:string'
|
|
188
188
|
});
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
level: 'warning',
|
|
193
|
-
message: `Unexpected format: ${format}`,
|
|
194
|
-
parent: value,
|
|
195
|
-
stackTrail,
|
|
196
|
-
type: 'UNEXPECTED_FORMAT'
|
|
197
|
-
});
|
|
198
|
-
}
|
|
189
|
+
// `format` is an open vocabulary — custom string formats (e.g. `decimal`,
|
|
190
|
+
// `utc_datetime`) are spec-legal. The value is preserved on the OasString
|
|
191
|
+
// below, so an unrecognised format is passed through, not warned.
|
|
199
192
|
return context.withStackTrail(stackTrail, () => new OasString({
|
|
200
193
|
title,
|
|
201
194
|
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;
|
|
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"}
|
package/esm/types/Manifest.js
CHANGED
|
@@ -99,6 +99,13 @@ const parseIssue = v.variant('protocol', [
|
|
|
99
99
|
type: oasIssueType,
|
|
100
100
|
location: v.string(),
|
|
101
101
|
message: v.string()
|
|
102
|
+
}),
|
|
103
|
+
v.object({
|
|
104
|
+
protocol: v.literal('oas'),
|
|
105
|
+
level: v.literal('debug'),
|
|
106
|
+
type: oasIssueType,
|
|
107
|
+
location: v.string(),
|
|
108
|
+
message: v.string()
|
|
102
109
|
})
|
|
103
110
|
]),
|
|
104
111
|
v.variant('level', [
|
|
@@ -116,6 +123,13 @@ const parseIssue = v.variant('protocol', [
|
|
|
116
123
|
type: gqlIssueType,
|
|
117
124
|
location: v.string(),
|
|
118
125
|
message: v.string()
|
|
126
|
+
}),
|
|
127
|
+
v.object({
|
|
128
|
+
protocol: v.literal('gql'),
|
|
129
|
+
level: v.literal('debug'),
|
|
130
|
+
type: gqlIssueType,
|
|
131
|
+
location: v.string(),
|
|
132
|
+
message: v.string()
|
|
119
133
|
})
|
|
120
134
|
])
|
|
121
135
|
]);
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParseContext.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ParseContext.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -416,6 +416,16 @@ class ParseContext {
|
|
|
416
416
|
}, parent);
|
|
417
417
|
break;
|
|
418
418
|
}
|
|
419
|
+
case 'debug': {
|
|
420
|
+
this.logIssueAt({
|
|
421
|
+
protocol,
|
|
422
|
+
level: 'debug',
|
|
423
|
+
type,
|
|
424
|
+
location,
|
|
425
|
+
message: issue.message
|
|
426
|
+
}, parent);
|
|
427
|
+
break;
|
|
428
|
+
}
|
|
419
429
|
default: {
|
|
420
430
|
const _exhaustive = issue;
|
|
421
431
|
throw new Error(`Unhandled parse-issue level: ${JSON.stringify(_exhaustive)}`);
|
|
@@ -3,10 +3,18 @@
|
|
|
3
3
|
* GraphQL parsing. Each variant stands on its own — no shared base —
|
|
4
4
|
* so TypeScript narrows cleanly on `protocol` and `level`.
|
|
5
5
|
*
|
|
6
|
-
* `cause?: unknown` is only present on the error variants. Warnings
|
|
7
|
-
* synthesized by the parser with all the information
|
|
8
|
-
* `message`; errors usually wrap a thrown `Error`, which
|
|
9
|
-
* `cause` for debugging without forcing renderers to know
|
|
6
|
+
* `cause?: unknown` is only present on the error variants. Warnings and
|
|
7
|
+
* `debug` issues are synthesized by the parser with all the information
|
|
8
|
+
* needed for the `message`; errors usually wrap a thrown `Error`, which
|
|
9
|
+
* we keep in `cause` for debugging without forcing renderers to know
|
|
10
|
+
* about it.
|
|
11
|
+
*
|
|
12
|
+
* Three severities: `error` (broken — drives exit status), `warning` (a
|
|
13
|
+
* real deviation that was handled, e.g. a 3.0 schema missing `type`), and
|
|
14
|
+
* `debug` (informational — the parser handled the input gracefully and
|
|
15
|
+
* recorded what it assumed or dropped; spec-legal-but-lossy or
|
|
16
|
+
* dialect-benign cases live here). All three are recorded on the manifest;
|
|
17
|
+
* consumers filter `debug` out of the default view.
|
|
10
18
|
*
|
|
11
19
|
* `location` is the schema-level address of the issue: for OAS it's the
|
|
12
20
|
* stringified stack trail (e.g. `components.schemas.User.properties.email`);
|
|
@@ -63,6 +71,12 @@ export type ParseIssue = {
|
|
|
63
71
|
type: OasIssueType;
|
|
64
72
|
location: string;
|
|
65
73
|
message: string;
|
|
74
|
+
} | {
|
|
75
|
+
protocol: 'oas';
|
|
76
|
+
level: 'debug';
|
|
77
|
+
type: OasIssueType;
|
|
78
|
+
location: string;
|
|
79
|
+
message: string;
|
|
66
80
|
} | {
|
|
67
81
|
protocol: 'gql';
|
|
68
82
|
level: 'error';
|
|
@@ -76,5 +90,11 @@ export type ParseIssue = {
|
|
|
76
90
|
type: GqlIssueType;
|
|
77
91
|
location: string;
|
|
78
92
|
message: string;
|
|
93
|
+
} | {
|
|
94
|
+
protocol: 'gql';
|
|
95
|
+
level: 'debug';
|
|
96
|
+
type: GqlIssueType;
|
|
97
|
+
location: string;
|
|
98
|
+
message: string;
|
|
79
99
|
};
|
|
80
100
|
//# sourceMappingURL=ParseIssue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParseIssue.d.ts","sourceRoot":"","sources":["../../src/context/ParseIssue.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ParseIssue.d.ts","sourceRoot":"","sources":["../../src/context/ParseIssue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,MAAM,YAAY,GACpB,mBAAmB,GACnB,mBAAmB,GACnB,mBAAmB,GACnB,yBAAyB,GACzB,iBAAiB,GACjB,yBAAyB,GACzB,wBAAwB,CAAA;AAE5B;;;;;GAKG;AACH,eAAO,MAAM,YAAY,kYAQvB,CAAA;AAKF,MAAM,MAAM,UAAU,GAClB;IACE,QAAQ,EAAE,KAAK,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;IACd,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GACD;IACE,QAAQ,EAAE,KAAK,CAAA;IACf,KAAK,EAAE,SAAS,CAAA;IAChB,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB,GACD;IACE,QAAQ,EAAE,KAAK,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;IACd,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB,GACD;IACE,QAAQ,EAAE,KAAK,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;IACd,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GACD;IACE,QAAQ,EAAE,KAAK,CAAA;IACf,KAAK,EAAE,SAAS,CAAA;IAChB,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB,GACD;IACE,QAAQ,EAAE,KAAK,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;IACd,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA"}
|
|
@@ -4,10 +4,18 @@
|
|
|
4
4
|
* GraphQL parsing. Each variant stands on its own — no shared base —
|
|
5
5
|
* so TypeScript narrows cleanly on `protocol` and `level`.
|
|
6
6
|
*
|
|
7
|
-
* `cause?: unknown` is only present on the error variants. Warnings
|
|
8
|
-
* synthesized by the parser with all the information
|
|
9
|
-
* `message`; errors usually wrap a thrown `Error`, which
|
|
10
|
-
* `cause` for debugging without forcing renderers to know
|
|
7
|
+
* `cause?: unknown` is only present on the error variants. Warnings and
|
|
8
|
+
* `debug` issues are synthesized by the parser with all the information
|
|
9
|
+
* needed for the `message`; errors usually wrap a thrown `Error`, which
|
|
10
|
+
* we keep in `cause` for debugging without forcing renderers to know
|
|
11
|
+
* about it.
|
|
12
|
+
*
|
|
13
|
+
* Three severities: `error` (broken — drives exit status), `warning` (a
|
|
14
|
+
* real deviation that was handled, e.g. a 3.0 schema missing `type`), and
|
|
15
|
+
* `debug` (informational — the parser handled the input gracefully and
|
|
16
|
+
* recorded what it assumed or dropped; spec-legal-but-lossy or
|
|
17
|
+
* dialect-benign cases live here). All three are recorded on the manifest;
|
|
18
|
+
* consumers filter `debug` out of the default view.
|
|
11
19
|
*
|
|
12
20
|
* `location` is the schema-level address of the issue: for OAS it's the
|
|
13
21
|
* stringified stack trail (e.g. `components.schemas.User.properties.email`);
|
|
@@ -48,7 +48,17 @@ export type ParseWarningInput = {
|
|
|
48
48
|
level: 'warning';
|
|
49
49
|
message: string;
|
|
50
50
|
};
|
|
51
|
-
|
|
51
|
+
/**
|
|
52
|
+
* Informational diagnostic — the parser handled the input gracefully and
|
|
53
|
+
* is recording what it assumed or dropped (a spec-legal-but-lossy or
|
|
54
|
+
* dialect-benign case). Recorded on the manifest but filtered out of the
|
|
55
|
+
* default view; never affects exit status.
|
|
56
|
+
*/
|
|
57
|
+
export type ParseDebugInput = {
|
|
58
|
+
level: 'debug';
|
|
59
|
+
message: string;
|
|
60
|
+
};
|
|
61
|
+
export type ParseIssueInput = ParseErrorInput | ParseWarningInput | ParseDebugInput;
|
|
52
62
|
/**
|
|
53
63
|
* Arguments accepted by `ParseContext.logIssue` (StackTrail-based
|
|
54
64
|
* location, computed via `stackTrail.trace(key, ...)`).
|
|
@@ -149,6 +159,12 @@ export type LogIssueAtArgs = {
|
|
|
149
159
|
type: OasIssueType;
|
|
150
160
|
location: string;
|
|
151
161
|
message: string;
|
|
162
|
+
} | {
|
|
163
|
+
protocol: 'oas';
|
|
164
|
+
level: 'debug';
|
|
165
|
+
type: OasIssueType;
|
|
166
|
+
location: string;
|
|
167
|
+
message: string;
|
|
152
168
|
} | {
|
|
153
169
|
protocol: 'gql';
|
|
154
170
|
level: 'error';
|
|
@@ -162,6 +178,12 @@ export type LogIssueAtArgs = {
|
|
|
162
178
|
type: GqlIssueType;
|
|
163
179
|
location: string;
|
|
164
180
|
message: string;
|
|
181
|
+
} | {
|
|
182
|
+
protocol: 'gql';
|
|
183
|
+
level: 'debug';
|
|
184
|
+
type: GqlIssueType;
|
|
185
|
+
location: string;
|
|
186
|
+
message: string;
|
|
165
187
|
};
|
|
166
188
|
/**
|
|
167
189
|
* Options accepted by the GQL parse phase. Passed through the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseTypes.d.ts","sourceRoot":"","sources":["../../src/context/parseTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAEnD;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAA;AAE3C;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,OAAO,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,SAAS,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"parseTypes.d.ts","sourceRoot":"","sources":["../../src/context/parseTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Operation.d.ts","sourceRoot":"","sources":["../../../src/oas/operation/Operation.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AAC3E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"Operation.d.ts","sourceRoot":"","sources":["../../../src/oas/operation/Operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.OasOperation = void 0;
|
|
4
4
|
require("../../_dnt.polyfills.js");
|
|
5
5
|
const Object_js_1 = require("../object/Object.js");
|
|
6
|
+
const toPrimaryResponseCode_js_1 = require("../response/toPrimaryResponseCode.js");
|
|
6
7
|
const OasBase_js_1 = require("../../types/OasBase.js");
|
|
7
8
|
class OasOperation extends OasBase_js_1.OasBase {
|
|
8
9
|
/**
|
|
@@ -159,17 +160,7 @@ class OasOperation extends OasBase_js_1.OasBase {
|
|
|
159
160
|
* @returns Success status code as string or undefined if none found
|
|
160
161
|
*/
|
|
161
162
|
toSuccessResponseCode() {
|
|
162
|
-
|
|
163
|
-
.map(httpCode => parseInt(httpCode))
|
|
164
|
-
.sort((a, b) => a - b)
|
|
165
|
-
.find(httpCode => httpCode >= 200 && httpCode < 300);
|
|
166
|
-
if (successCode) {
|
|
167
|
-
return successCode.toString();
|
|
168
|
-
}
|
|
169
|
-
if (this.responses.default) {
|
|
170
|
-
return 'default';
|
|
171
|
-
}
|
|
172
|
-
return undefined;
|
|
163
|
+
return (0, toPrimaryResponseCode_js_1.toPrimaryResponseCode)(this.responses);
|
|
173
164
|
}
|
|
174
165
|
/**
|
|
175
166
|
* Maps the request body schema to a custom value using the provided mapping function.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { OasResponse } from './Response.js';
|
|
2
|
+
import type { OasRef } from '../ref/Ref.js';
|
|
3
|
+
/**
|
|
4
|
+
* The status code of the primary success/ack response in a `responses` map.
|
|
5
|
+
*
|
|
6
|
+
* OpenAPI response keys may be a specific code (`200`), a range (`2XX`, `4XX`,
|
|
7
|
+
* …), or `default`. The primary 2xx is resolved in that order of specificity:
|
|
8
|
+
* 1. the lowest specific `2xx` numeric code,
|
|
9
|
+
* 2. otherwise a `2XX` range key (case-insensitive),
|
|
10
|
+
* 3. otherwise `default`,
|
|
11
|
+
* 4. otherwise `undefined`.
|
|
12
|
+
*
|
|
13
|
+
* `parseInt('2XX')` is `2` (< 200), so the numeric scan never mis-claims a
|
|
14
|
+
* range key — the range step handles it explicitly. Shared by
|
|
15
|
+
* `OasOperation.toSuccessResponseCode` and `OasWebhook.toAckResponseCode` so
|
|
16
|
+
* the two cannot drift.
|
|
17
|
+
*/
|
|
18
|
+
export declare const toPrimaryResponseCode: (responses: Record<string, OasResponse | OasRef<"response">>) => string | undefined;
|
|
19
|
+
//# sourceMappingURL=toPrimaryResponseCode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toPrimaryResponseCode.d.ts","sourceRoot":"","sources":["../../../src/oas/response/toPrimaryResponseCode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAE3C;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,qBAAqB,GAChC,WAAW,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,KAC1D,MAAM,GAAG,SAqBX,CAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toPrimaryResponseCode = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* The status code of the primary success/ack response in a `responses` map.
|
|
6
|
+
*
|
|
7
|
+
* OpenAPI response keys may be a specific code (`200`), a range (`2XX`, `4XX`,
|
|
8
|
+
* …), or `default`. The primary 2xx is resolved in that order of specificity:
|
|
9
|
+
* 1. the lowest specific `2xx` numeric code,
|
|
10
|
+
* 2. otherwise a `2XX` range key (case-insensitive),
|
|
11
|
+
* 3. otherwise `default`,
|
|
12
|
+
* 4. otherwise `undefined`.
|
|
13
|
+
*
|
|
14
|
+
* `parseInt('2XX')` is `2` (< 200), so the numeric scan never mis-claims a
|
|
15
|
+
* range key — the range step handles it explicitly. Shared by
|
|
16
|
+
* `OasOperation.toSuccessResponseCode` and `OasWebhook.toAckResponseCode` so
|
|
17
|
+
* the two cannot drift.
|
|
18
|
+
*/
|
|
19
|
+
const toPrimaryResponseCode = (responses) => {
|
|
20
|
+
const keys = Object.keys(responses);
|
|
21
|
+
const [lowest2xx] = keys
|
|
22
|
+
.map(code => parseInt(code))
|
|
23
|
+
.filter(code => code >= 200 && code < 300)
|
|
24
|
+
.sort((a, b) => a - b);
|
|
25
|
+
if (lowest2xx !== undefined) {
|
|
26
|
+
return lowest2xx.toString();
|
|
27
|
+
}
|
|
28
|
+
const range2xx = keys.find(code => /^2XX$/i.test(code));
|
|
29
|
+
if (range2xx !== undefined) {
|
|
30
|
+
return range2xx;
|
|
31
|
+
}
|
|
32
|
+
if (responses.default) {
|
|
33
|
+
return 'default';
|
|
34
|
+
}
|
|
35
|
+
return undefined;
|
|
36
|
+
};
|
|
37
|
+
exports.toPrimaryResponseCode = toPrimaryResponseCode;
|
|
@@ -2,6 +2,8 @@ import "../../_dnt.polyfills.js";
|
|
|
2
2
|
import type { Method } from '../../types/Method.js';
|
|
3
3
|
import type { OasPathItem } from '../pathItem/PathItem.js';
|
|
4
4
|
import type { OasParameter } from '../parameter/Parameter.js';
|
|
5
|
+
import type { OasParameterLocation } from '../parameter/parameter-types.js';
|
|
6
|
+
import type { OasSchema } from '../schema/Schema.js';
|
|
5
7
|
import type { OasRequestBody } from '../requestBody/RequestBody.js';
|
|
6
8
|
import type { OasResponse } from '../response/Response.js';
|
|
7
9
|
import type { OasRef } from '../ref/Ref.js';
|
|
@@ -63,9 +65,12 @@ export type WebhookFields = {
|
|
|
63
65
|
* receive one: webhook code generation is a *receiver/handler* concern,
|
|
64
66
|
* not a client-call concern.
|
|
65
67
|
*
|
|
66
|
-
*
|
|
67
|
-
* (
|
|
68
|
-
*
|
|
68
|
+
* Carries webhook-semantic accessors named for the RECEIVER —
|
|
69
|
+
* `toPayload`/`toPayloadSchema` (the received payload), `toParams` (inbound
|
|
70
|
+
* params), `toAckResponse`/`toAckResponseCode` (the ack the handler returns).
|
|
71
|
+
* These deliberately avoid the client-framed {@link OasOperation} names
|
|
72
|
+
* (`toRequestBody`, `toSuccessResponse`) so the inversion stays explicit in
|
|
73
|
+
* generator code. (Signature-verification helpers still accrue on demand.)
|
|
69
74
|
*/
|
|
70
75
|
export declare class OasWebhook extends OasBase {
|
|
71
76
|
/** Type identifier for OAS webhook objects */
|
|
@@ -101,6 +106,38 @@ export declare class OasWebhook extends OasBase {
|
|
|
101
106
|
/** Servers for this webhook */
|
|
102
107
|
servers: OasServer[] | undefined;
|
|
103
108
|
constructor(fields: WebhookFields, context?: ParseContextType);
|
|
109
|
+
/**
|
|
110
|
+
* The received-payload body — the request body the API delivers TO the
|
|
111
|
+
* consumer's handler. Webhook semantics are inverted: this is what the
|
|
112
|
+
* handler RECEIVES, not what a client sends. A `$ref` body is resolved.
|
|
113
|
+
*/
|
|
114
|
+
toPayload(): OasRequestBody | undefined;
|
|
115
|
+
/**
|
|
116
|
+
* The schema of the received payload for `mediaType` (default
|
|
117
|
+
* `application/json`) — the inbound body shape a handler generator emits a
|
|
118
|
+
* type for. `undefined` when there is no body or no schema for that media
|
|
119
|
+
* type.
|
|
120
|
+
*/
|
|
121
|
+
toPayloadSchema(mediaType?: string): OasSchema | OasRef<'schema'> | undefined;
|
|
122
|
+
/**
|
|
123
|
+
* Resolve the inbound parameters (e.g. the signature/headers a handler
|
|
124
|
+
* receives), optionally filtered by location. Mirrors
|
|
125
|
+
* {@link OasOperation.toParams}; the parameters carry the same shape, only
|
|
126
|
+
* their direction is inbound.
|
|
127
|
+
*/
|
|
128
|
+
toParams(filter?: OasParameterLocation[]): OasParameter[];
|
|
129
|
+
/**
|
|
130
|
+
* The status code of the primary acknowledgement response — the lowest 2xx
|
|
131
|
+
* the handler returns to ack the delivery, falling back to `default`. Named
|
|
132
|
+
* for the receiver: a webhook's `responses` are what the handler RETURNS,
|
|
133
|
+
* not what a client receives (cf. {@link OasOperation.toSuccessResponseCode}).
|
|
134
|
+
*/
|
|
135
|
+
toAckResponseCode(): string | undefined;
|
|
136
|
+
/**
|
|
137
|
+
* The primary acknowledgement response definition (the body/headers the
|
|
138
|
+
* handler returns), or `undefined` when none is declared.
|
|
139
|
+
*/
|
|
140
|
+
toAckResponse(): OasResponse | OasRef<'response'> | undefined;
|
|
104
141
|
/**
|
|
105
142
|
* Serializes the webhook to a plain JavaScript object.
|
|
106
143
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Webhook.d.ts","sourceRoot":"","sources":["../../../src/oas/webhook/Webhook.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"Webhook.d.ts","sourceRoot":"","sources":["../../../src/oas/webhook/Webhook.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.OasWebhook = void 0;
|
|
4
4
|
require("../../_dnt.polyfills.js");
|
|
5
|
+
const toPrimaryResponseCode_js_1 = require("../response/toPrimaryResponseCode.js");
|
|
5
6
|
const OasBase_js_1 = require("../../types/OasBase.js");
|
|
6
7
|
/**
|
|
7
8
|
* Represents an OpenAPI 3.1 webhook — a third OAS subject, peer to
|
|
@@ -12,9 +13,12 @@ const OasBase_js_1 = require("../../types/OasBase.js");
|
|
|
12
13
|
* receive one: webhook code generation is a *receiver/handler* concern,
|
|
13
14
|
* not a client-call concern.
|
|
14
15
|
*
|
|
15
|
-
*
|
|
16
|
-
* (
|
|
17
|
-
*
|
|
16
|
+
* Carries webhook-semantic accessors named for the RECEIVER —
|
|
17
|
+
* `toPayload`/`toPayloadSchema` (the received payload), `toParams` (inbound
|
|
18
|
+
* params), `toAckResponse`/`toAckResponseCode` (the ack the handler returns).
|
|
19
|
+
* These deliberately avoid the client-framed {@link OasOperation} names
|
|
20
|
+
* (`toRequestBody`, `toSuccessResponse`) so the inversion stays explicit in
|
|
21
|
+
* generator code. (Signature-verification helpers still accrue on demand.)
|
|
18
22
|
*/
|
|
19
23
|
class OasWebhook extends OasBase_js_1.OasBase {
|
|
20
24
|
constructor(fields, context) {
|
|
@@ -147,6 +151,51 @@ class OasWebhook extends OasBase_js_1.OasBase {
|
|
|
147
151
|
this.extensionFields = fields.extensionFields;
|
|
148
152
|
this.servers = fields.servers;
|
|
149
153
|
}
|
|
154
|
+
/**
|
|
155
|
+
* The received-payload body — the request body the API delivers TO the
|
|
156
|
+
* consumer's handler. Webhook semantics are inverted: this is what the
|
|
157
|
+
* handler RECEIVES, not what a client sends. A `$ref` body is resolved.
|
|
158
|
+
*/
|
|
159
|
+
toPayload() {
|
|
160
|
+
return this.requestBody?.resolve();
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* The schema of the received payload for `mediaType` (default
|
|
164
|
+
* `application/json`) — the inbound body shape a handler generator emits a
|
|
165
|
+
* type for. `undefined` when there is no body or no schema for that media
|
|
166
|
+
* type.
|
|
167
|
+
*/
|
|
168
|
+
toPayloadSchema(mediaType = 'application/json') {
|
|
169
|
+
return this.toPayload()?.content[mediaType]?.schema;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Resolve the inbound parameters (e.g. the signature/headers a handler
|
|
173
|
+
* receives), optionally filtered by location. Mirrors
|
|
174
|
+
* {@link OasOperation.toParams}; the parameters carry the same shape, only
|
|
175
|
+
* their direction is inbound.
|
|
176
|
+
*/
|
|
177
|
+
toParams(filter) {
|
|
178
|
+
return (this.parameters
|
|
179
|
+
?.map(param => param.resolve())
|
|
180
|
+
.filter(param => (filter?.length ? filter.includes(param.location) : true)) ?? []);
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* The status code of the primary acknowledgement response — the lowest 2xx
|
|
184
|
+
* the handler returns to ack the delivery, falling back to `default`. Named
|
|
185
|
+
* for the receiver: a webhook's `responses` are what the handler RETURNS,
|
|
186
|
+
* not what a client receives (cf. {@link OasOperation.toSuccessResponseCode}).
|
|
187
|
+
*/
|
|
188
|
+
toAckResponseCode() {
|
|
189
|
+
return (0, toPrimaryResponseCode_js_1.toPrimaryResponseCode)(this.responses);
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* The primary acknowledgement response definition (the body/headers the
|
|
193
|
+
* handler returns), or `undefined` when none is declared.
|
|
194
|
+
*/
|
|
195
|
+
toAckResponse() {
|
|
196
|
+
const ackCode = this.toAckResponseCode();
|
|
197
|
+
return ackCode ? this.responses[ackCode] : undefined;
|
|
198
|
+
}
|
|
150
199
|
/**
|
|
151
200
|
* Serializes the webhook to a plain JavaScript object.
|
|
152
201
|
*/
|
|
@@ -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: '
|
|
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: '
|
|
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-0/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,
|
|
1
|
+
{"version":3,"file":"toOperationsV3.d.ts","sourceRoot":"","sources":["../../../../src/parse/v3-0/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;IAC/B,KAAK,EAAE,SAAS,CAAC,WAAW,CAAA;IAC5B,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,gBAAgB,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,gCAI5B,kBAAkB,KAAG,YAAY,EA6EnC,CAAA"}
|