@haddowg/json-api-codegen 1.16.0 → 1.17.0
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/dist/cli.d.mts +1 -1
- package/dist/cli.mjs +1 -1
- package/dist/{index-D5vT2VuM.d.mts → index-DabrCjXa.d.mts} +2 -2
- package/dist/{index-D5vT2VuM.d.mts.map → index-DabrCjXa.d.mts.map} +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +1 -1
- package/dist/{src-CuoXrhki.mjs → src-B1diyKmJ.mjs} +24 -5
- package/dist/src-B1diyKmJ.mjs.map +1 -0
- package/package.json +1 -1
- package/dist/src-CuoXrhki.mjs.map +0 -1
package/dist/cli.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as CodegenConfig } from "./index-
|
|
1
|
+
import { r as CodegenConfig } from "./index-DabrCjXa.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/cli.d.ts
|
|
4
4
|
declare const USAGE = "Usage: json-api-codegen --input <url|file> --output <file> [--server <name>] [--schemas <url|file>] [--examples] [--check]";
|
package/dist/cli.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { i as generateFiles, t as check } from "./src-
|
|
2
|
+
import { i as generateFiles, t as check } from "./src-B1diyKmJ.mjs";
|
|
3
3
|
import { realpathSync } from "node:fs";
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
5
|
//#region src/cli.ts
|
|
@@ -354,7 +354,7 @@ declare function buildExamples(doc: OpenApiDocument, descriptor: ApiDescriptor):
|
|
|
354
354
|
/** Below this the document predates the structures this codegen reads. */
|
|
355
355
|
declare const MINIMUM_CONTRACT = 1;
|
|
356
356
|
/** Above this the document carries structures this codegen does not read. */
|
|
357
|
-
declare const MAXIMUM_CONTRACT =
|
|
357
|
+
declare const MAXIMUM_CONTRACT = 21;
|
|
358
358
|
/**
|
|
359
359
|
* Check the document's `info.x-generator.contract` against the range this codegen reads. A
|
|
360
360
|
* document older than the range throws; a newer one returns a warning, because its new
|
|
@@ -775,4 +775,4 @@ declare function generateFiles(config: CodegenConfig): Promise<string[]>;
|
|
|
775
775
|
declare function check(config: CodegenConfig): Promise<CheckResult>;
|
|
776
776
|
//#endregion
|
|
777
777
|
export { operationExamples as A, PathItemObject as B, VerbCollision as C, MINIMUM_CONTRACT as D, MAXIMUM_CONTRACT as E, InfoObject as F, SecurityRequirement as G, ResponseObject as H, MediaTypeObject as I, SecuritySchemeObject as K, OpenApiDocument as L, buildAtomic as M, buildDescriptor as N, checkContract as O, HttpMethod as P, OperationObject as R, Emitter as S, emit as T, SchemaObject as U, RequestBodyObject as V, SchemaOrBool as W, emitExamples as _, examplesOutputPath as a, emitErrorCodes as b, schemasOutputPath as c, hashJson as d, provenanceLines as f, readSchemas as g, readDocument as h, check as i, DescriptorBuilder as j, buildExamples as k, Provenance as l, SchemaBundle as m, CheckResult as n, generate as o, emitSchemas as p, CodegenConfig as r, generateFiles as s, ArtifactDrift as t, deriveProvenance as u, DocumentedErrorCode as v, detectVerbCollisions as w, readErrorCatalogue as x, ErrorCatalogue as y, ParameterObject as z };
|
|
778
|
-
//# sourceMappingURL=index-
|
|
778
|
+
//# sourceMappingURL=index-DabrCjXa.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-DabrCjXa.d.mts","names":[],"sources":["../src/openapi.ts","../src/build-descriptor.ts","../src/build-examples.ts","../src/contract.ts","../src/emit.ts","../src/error-codes.ts","../src/emit-examples.ts","../src/reader.ts","../src/emit-schemas.ts","../src/provenance.ts","../src/index.ts"],"mappings":"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"}
|
package/dist/index.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { A as operationExamples, B as PathItemObject, C as VerbCollision, D as MINIMUM_CONTRACT, E as MAXIMUM_CONTRACT, F as InfoObject, G as SecurityRequirement, H as ResponseObject, I as MediaTypeObject, K as SecuritySchemeObject, L as OpenApiDocument, M as buildAtomic, N as buildDescriptor, O as checkContract, P as HttpMethod, R as OperationObject, S as Emitter, T as emit, U as SchemaObject, V as RequestBodyObject, W as SchemaOrBool, _ as emitExamples, a as examplesOutputPath, b as emitErrorCodes, c as schemasOutputPath, d as hashJson, f as provenanceLines, g as readSchemas, h as readDocument, i as check, j as DescriptorBuilder, k as buildExamples, l as Provenance, m as SchemaBundle, n as CheckResult, o as generate, p as emitSchemas, r as CodegenConfig, s as generateFiles, t as ArtifactDrift, u as deriveProvenance, v as DocumentedErrorCode, w as detectVerbCollisions, x as readErrorCatalogue, y as ErrorCatalogue, z as ParameterObject } from "./index-
|
|
1
|
+
import { A as operationExamples, B as PathItemObject, C as VerbCollision, D as MINIMUM_CONTRACT, E as MAXIMUM_CONTRACT, F as InfoObject, G as SecurityRequirement, H as ResponseObject, I as MediaTypeObject, K as SecuritySchemeObject, L as OpenApiDocument, M as buildAtomic, N as buildDescriptor, O as checkContract, P as HttpMethod, R as OperationObject, S as Emitter, T as emit, U as SchemaObject, V as RequestBodyObject, W as SchemaOrBool, _ as emitExamples, a as examplesOutputPath, b as emitErrorCodes, c as schemasOutputPath, d as hashJson, f as provenanceLines, g as readSchemas, h as readDocument, i as check, j as DescriptorBuilder, k as buildExamples, l as Provenance, m as SchemaBundle, n as CheckResult, o as generate, p as emitSchemas, r as CodegenConfig, s as generateFiles, t as ArtifactDrift, u as deriveProvenance, v as DocumentedErrorCode, w as detectVerbCollisions, x as readErrorCatalogue, y as ErrorCatalogue, z as ParameterObject } from "./index-DabrCjXa.mjs";
|
|
2
2
|
export { ArtifactDrift, CheckResult, CodegenConfig, DescriptorBuilder, type DocumentedErrorCode, Emitter, type ErrorCatalogue, type HttpMethod, type InfoObject, MAXIMUM_CONTRACT, MINIMUM_CONTRACT, type MediaTypeObject, type OpenApiDocument, type OperationObject, type ParameterObject, type PathItemObject, type Provenance, type RequestBodyObject, type ResponseObject, type SchemaBundle, type SchemaObject, type SchemaOrBool, type SecurityRequirement, type SecuritySchemeObject, type VerbCollision, buildAtomic, buildDescriptor, buildExamples, check, checkContract, deriveProvenance, detectVerbCollisions, emit, emitErrorCodes, emitExamples, emitSchemas, examplesOutputPath, generate, generateFiles, hashJson, operationExamples, provenanceLines, readDocument, readErrorCatalogue, readSchemas, schemasOutputPath };
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { C as DescriptorBuilder, S as operationExamples, T as buildDescriptor, _ as readErrorCatalogue, a as schemasOutputPath, b as checkContract, c as emitSchemas, d as detectVerbCollisions, f as emit, g as emitErrorCodes, h as provenanceLines, i as generateFiles, l as emitExamples, m as hashJson, n as examplesOutputPath, o as readDocument, p as deriveProvenance, r as generate, s as readSchemas, t as check, u as Emitter, v as MAXIMUM_CONTRACT, w as buildAtomic, x as buildExamples, y as MINIMUM_CONTRACT } from "./src-
|
|
1
|
+
import { C as DescriptorBuilder, S as operationExamples, T as buildDescriptor, _ as readErrorCatalogue, a as schemasOutputPath, b as checkContract, c as emitSchemas, d as detectVerbCollisions, f as emit, g as emitErrorCodes, h as provenanceLines, i as generateFiles, l as emitExamples, m as hashJson, n as examplesOutputPath, o as readDocument, p as deriveProvenance, r as generate, s as readSchemas, t as check, u as Emitter, v as MAXIMUM_CONTRACT, w as buildAtomic, x as buildExamples, y as MINIMUM_CONTRACT } from "./src-B1diyKmJ.mjs";
|
|
2
2
|
export { DescriptorBuilder, Emitter, MAXIMUM_CONTRACT, MINIMUM_CONTRACT, buildAtomic, buildDescriptor, buildExamples, check, checkContract, deriveProvenance, detectVerbCollisions, emit, emitErrorCodes, emitExamples, emitSchemas, examplesOutputPath, generate, generateFiles, hashJson, operationExamples, provenanceLines, readDocument, readErrorCatalogue, readSchemas, schemasOutputPath };
|
|
@@ -1251,7 +1251,7 @@ function buildExamples(doc, descriptor) {
|
|
|
1251
1251
|
/** Below this the document predates the structures this codegen reads. */
|
|
1252
1252
|
const MINIMUM_CONTRACT = 1;
|
|
1253
1253
|
/** Above this the document carries structures this codegen does not read. */
|
|
1254
|
-
const MAXIMUM_CONTRACT =
|
|
1254
|
+
const MAXIMUM_CONTRACT = 21;
|
|
1255
1255
|
/**
|
|
1256
1256
|
* Check the document's `info.x-generator.contract` against the range this codegen reads. A
|
|
1257
1257
|
* document older than the range throws; a newer one returns a warning, because its new
|
|
@@ -1261,8 +1261,8 @@ const MAXIMUM_CONTRACT = 20;
|
|
|
1261
1261
|
function checkContract(doc) {
|
|
1262
1262
|
const contract = doc.info?.["x-generator"]?.contract;
|
|
1263
1263
|
if (typeof contract !== "number") return;
|
|
1264
|
-
if (contract < 1) throw new Error(`the document declares contract ${contract}, which predates what this codegen reads (it supports 1 to
|
|
1265
|
-
if (contract >
|
|
1264
|
+
if (contract < 1) throw new Error(`the document declares contract ${contract}, which predates what this codegen reads (it supports 1 to 21). Use an older codegen release, or regenerate the document from a newer server.`);
|
|
1265
|
+
if (contract > 21) return `the document declares contract ${contract} and this codegen reads up to 21. It describes capabilities that were not generated; upgrade the codegen to pick them up.`;
|
|
1266
1266
|
}
|
|
1267
1267
|
//#endregion
|
|
1268
1268
|
//#region src/declared-links.ts
|
|
@@ -1869,6 +1869,22 @@ function exampleDoc(op) {
|
|
|
1869
1869
|
function escapeRegExp(value) {
|
|
1870
1870
|
return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
1871
1871
|
}
|
|
1872
|
+
/** Whether a TS type has a `|` or `&` outside its braces, brackets and string literals. */
|
|
1873
|
+
function hasTopLevelOperator(type) {
|
|
1874
|
+
let depth = 0;
|
|
1875
|
+
let quoted = false;
|
|
1876
|
+
for (let i = 0; i < type.length; i++) {
|
|
1877
|
+
const char = type[i];
|
|
1878
|
+
if (quoted) {
|
|
1879
|
+
if (char === "\\") i++;
|
|
1880
|
+
else if (char === "\"") quoted = false;
|
|
1881
|
+
} else if (char === "\"") quoted = true;
|
|
1882
|
+
else if (char === "{" || char === "[" || char === "(" || char === "<") depth++;
|
|
1883
|
+
else if (char === "}" || char === "]" || char === ")" || char === ">") depth--;
|
|
1884
|
+
else if (depth === 0 && (char === "|" || char === "&")) return true;
|
|
1885
|
+
}
|
|
1886
|
+
return false;
|
|
1887
|
+
}
|
|
1872
1888
|
var Emitter = class {
|
|
1873
1889
|
descriptor;
|
|
1874
1890
|
atomic;
|
|
@@ -2519,6 +2535,9 @@ var Emitter = class {
|
|
|
2519
2535
|
}
|
|
2520
2536
|
/** The non-nullable TS type for the declared JSON type(s). */
|
|
2521
2537
|
baseTsType(schema, types) {
|
|
2538
|
+
const constant = schema["const"];
|
|
2539
|
+
if (typeof constant === "string") return stringLiteral(constant);
|
|
2540
|
+
if (typeof constant === "number" || typeof constant === "boolean") return String(constant);
|
|
2522
2541
|
if (Array.isArray(schema.enum) && schema.enum.length > 0) return schema.enum.map((value) => stringLiteral(String(value))).join(" | ");
|
|
2523
2542
|
if (types.length === 0) return "unknown";
|
|
2524
2543
|
const mapped = types.map((t) => this.scalarOrComposite(schema, t));
|
|
@@ -2552,7 +2571,7 @@ var Emitter = class {
|
|
|
2552
2571
|
arrayType(schema) {
|
|
2553
2572
|
const items = schema.items;
|
|
2554
2573
|
const element = isSchema(items) ? this.tsType(items) : "unknown";
|
|
2555
|
-
const list =
|
|
2574
|
+
const list = hasTopLevelOperator(element) ? `(${element})[]` : `${element}[]`;
|
|
2556
2575
|
const minItems = schema["minItems"];
|
|
2557
2576
|
return typeof minItems === "number" && minItems >= 1 ? `[${element}, ...${list}]` : list;
|
|
2558
2577
|
}
|
|
@@ -2896,4 +2915,4 @@ async function check(config) {
|
|
|
2896
2915
|
//#endregion
|
|
2897
2916
|
export { DescriptorBuilder as C, operationExamples as S, buildDescriptor as T, readErrorCatalogue as _, schemasOutputPath as a, checkContract as b, emitSchemas as c, detectVerbCollisions as d, emit as f, emitErrorCodes as g, provenanceLines as h, generateFiles as i, emitExamples as l, hashJson as m, examplesOutputPath as n, readDocument as o, deriveProvenance as p, generate as r, readSchemas as s, check as t, Emitter as u, MAXIMUM_CONTRACT as v, buildAtomic as w, buildExamples as x, MINIMUM_CONTRACT as y };
|
|
2898
2917
|
|
|
2899
|
-
//# sourceMappingURL=src-
|
|
2918
|
+
//# sourceMappingURL=src-B1diyKmJ.mjs.map
|