@distilled.cloud/core 1.0.0-rc.1 → 1.0.0-rc.10
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/LICENSE +201 -0
- package/lib/api.d.ts.map +1 -1
- package/lib/api.js +16 -4
- package/lib/api.js.map +1 -1
- package/lib/category.d.ts +4 -4
- package/lib/category.js +4 -4
- package/lib/codegen/boolean-string-enums.d.ts +36 -0
- package/lib/codegen/boolean-string-enums.d.ts.map +1 -0
- package/lib/codegen/boolean-string-enums.js +94 -0
- package/lib/codegen/boolean-string-enums.js.map +1 -0
- package/lib/codegen/boolean-string-enums.test.d.ts +2 -0
- package/lib/codegen/boolean-string-enums.test.d.ts.map +1 -0
- package/lib/codegen/boolean-string-enums.test.js +147 -0
- package/lib/codegen/boolean-string-enums.test.js.map +1 -0
- package/lib/codegen/cli.d.ts +56 -6
- package/lib/codegen/cli.d.ts.map +1 -1
- package/lib/codegen/cli.js +59 -75
- package/lib/codegen/cli.js.map +1 -1
- package/lib/codegen/emit.d.ts +3 -7
- package/lib/codegen/emit.d.ts.map +1 -1
- package/lib/codegen/emit.js +6 -10
- package/lib/codegen/emit.js.map +1 -1
- package/lib/codegen/generator.d.ts.map +1 -1
- package/lib/codegen/generator.js +142 -20
- package/lib/codegen/generator.js.map +1 -1
- package/lib/codegen/graphql-client.d.ts +62 -0
- package/lib/codegen/graphql-client.d.ts.map +1 -0
- package/lib/codegen/graphql-client.js +294 -0
- package/lib/codegen/graphql-client.js.map +1 -0
- package/lib/codegen/graphql-client.test.d.ts +2 -0
- package/lib/codegen/graphql-client.test.d.ts.map +1 -0
- package/lib/codegen/graphql-client.test.js +311 -0
- package/lib/codegen/graphql-client.test.js.map +1 -0
- package/lib/codegen/graphql.d.ts +207 -0
- package/lib/codegen/graphql.d.ts.map +1 -0
- package/lib/codegen/graphql.js +799 -0
- package/lib/codegen/graphql.js.map +1 -0
- package/lib/codegen/openapi-cli.d.ts +17 -3
- package/lib/codegen/openapi-cli.d.ts.map +1 -1
- package/lib/codegen/openapi-cli.js +50 -48
- package/lib/codegen/openapi-cli.js.map +1 -1
- package/lib/codegen/openapi.d.ts +69 -6
- package/lib/codegen/openapi.d.ts.map +1 -1
- package/lib/codegen/openapi.js +173 -16
- package/lib/codegen/openapi.js.map +1 -1
- package/lib/codegen/patches.d.ts +65 -0
- package/lib/codegen/patches.d.ts.map +1 -0
- package/lib/codegen/patches.js +236 -0
- package/lib/codegen/patches.js.map +1 -0
- package/lib/codegen/patches.test.d.ts +2 -0
- package/lib/codegen/patches.test.d.ts.map +1 -0
- package/lib/codegen/patches.test.js +105 -0
- package/lib/codegen/patches.test.js.map +1 -0
- package/lib/codegen/proto.d.ts +121 -0
- package/lib/codegen/proto.d.ts.map +1 -0
- package/lib/codegen/proto.js +962 -0
- package/lib/codegen/proto.js.map +1 -0
- package/lib/codegen/rewrite-operation-ids.d.ts +131 -0
- package/lib/codegen/rewrite-operation-ids.d.ts.map +1 -0
- package/lib/codegen/rewrite-operation-ids.js +1079 -0
- package/lib/codegen/rewrite-operation-ids.js.map +1 -0
- package/lib/codegen/rewrite-operation-ids.test.d.ts +2 -0
- package/lib/codegen/rewrite-operation-ids.test.d.ts.map +1 -0
- package/lib/codegen/rewrite-operation-ids.test.js +533 -0
- package/lib/codegen/rewrite-operation-ids.test.js.map +1 -0
- package/lib/codegen/spec-path.d.ts +16 -0
- package/lib/codegen/spec-path.d.ts.map +1 -0
- package/lib/codegen/spec-path.js +101 -0
- package/lib/codegen/spec-path.js.map +1 -0
- package/lib/errors.d.ts.map +1 -1
- package/lib/errors.js +17 -13
- package/lib/errors.js.map +1 -1
- package/lib/graphql.d.ts +284 -0
- package/lib/graphql.d.ts.map +1 -0
- package/lib/graphql.fixture.d.ts +249 -0
- package/lib/graphql.fixture.d.ts.map +1 -0
- package/lib/graphql.fixture.js +240 -0
- package/lib/graphql.fixture.js.map +1 -0
- package/lib/graphql.js +718 -0
- package/lib/graphql.js.map +1 -0
- package/lib/graphql.test.d.ts +2 -0
- package/lib/graphql.test.d.ts.map +1 -0
- package/lib/graphql.test.js +780 -0
- package/lib/graphql.test.js.map +1 -0
- package/lib/graphql.types.d.ts +2 -0
- package/lib/graphql.types.d.ts.map +1 -0
- package/lib/graphql.types.js +45 -0
- package/lib/graphql.types.js.map +1 -0
- package/lib/json-patch.d.ts +18 -11
- package/lib/json-patch.d.ts.map +1 -1
- package/lib/json-patch.js +63 -25
- package/lib/json-patch.js.map +1 -1
- package/lib/pagination.d.ts +43 -3
- package/lib/pagination.d.ts.map +1 -1
- package/lib/pagination.js +91 -5
- package/lib/pagination.js.map +1 -1
- package/lib/protocol-http.d.ts.map +1 -1
- package/lib/protocol-http.js +62 -26
- package/lib/protocol-http.js.map +1 -1
- package/lib/protocol-http.test.d.ts +2 -0
- package/lib/protocol-http.test.d.ts.map +1 -0
- package/lib/protocol-http.test.js +88 -0
- package/lib/protocol-http.test.js.map +1 -0
- package/lib/protocol-rest.d.ts +12 -2
- package/lib/protocol-rest.d.ts.map +1 -1
- package/lib/protocol-rest.js +17 -3
- package/lib/protocol-rest.js.map +1 -1
- package/lib/retry.js +1 -1
- package/lib/schema.d.ts +1 -1
- package/lib/schema.d.ts.map +1 -1
- package/lib/schema.js +1 -1
- package/lib/schema.js.map +1 -1
- package/lib/trait.d.ts +27 -3
- package/lib/trait.d.ts.map +1 -1
- package/lib/trait.js +17 -1
- package/lib/trait.js.map +1 -1
- package/package.json +13 -10
- package/src/api.ts +18 -4
- package/src/category.ts +4 -4
- package/src/codegen/boolean-string-enums.test.ts +168 -0
- package/src/codegen/boolean-string-enums.ts +106 -0
- package/src/codegen/cli.ts +127 -110
- package/src/codegen/emit.ts +6 -10
- package/src/codegen/generator.ts +151 -21
- package/src/codegen/graphql-client.test.ts +386 -0
- package/src/codegen/graphql-client.ts +419 -0
- package/src/codegen/graphql.ts +1217 -0
- package/src/codegen/openapi-cli.ts +75 -59
- package/src/codegen/openapi.ts +255 -16
- package/src/codegen/patches.test.ts +130 -0
- package/src/codegen/patches.ts +291 -0
- package/src/codegen/proto.ts +1128 -0
- package/src/codegen/rewrite-operation-ids.test.ts +563 -0
- package/src/codegen/rewrite-operation-ids.ts +1206 -0
- package/src/codegen/spec-path.ts +115 -0
- package/src/errors.ts +20 -25
- package/src/graphql.fixture.ts +371 -0
- package/src/graphql.test.ts +974 -0
- package/src/graphql.ts +1321 -0
- package/src/graphql.types.ts +185 -0
- package/src/json-patch.ts +82 -25
- package/src/pagination.ts +134 -7
- package/src/protocol-http.test.ts +107 -0
- package/src/protocol-http.ts +67 -31
- package/src/protocol-rest.ts +28 -4
- package/src/retry.ts +1 -1
- package/src/schema.ts +2 -2
- package/src/trait.ts +39 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../src/codegen/graphql.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ export interface OpenApiSpecEntry {
|
|
|
8
8
|
* Hook between patching and conversion (e.g. path prefixing, server
|
|
9
9
|
* rewrites). May mutate the spec in place or return a replacement.
|
|
10
10
|
*/
|
|
11
|
-
readonly preprocess?: (spec: any) => unknown | void
|
|
11
|
+
readonly preprocess?: (spec: any) => unknown | void | Promise<unknown | void>;
|
|
12
12
|
/** Per-spec converter option overrides (merged over the shared options). */
|
|
13
13
|
readonly options?: Partial<OpenApiConvertOptions>;
|
|
14
14
|
}
|
|
@@ -18,9 +18,10 @@ export interface RunOpenApiConvertOptions {
|
|
|
18
18
|
readonly specs: readonly OpenApiSpecEntry[];
|
|
19
19
|
/**
|
|
20
20
|
* RFC-6902 patch chain root, relative to `root`. Default `"patches"`;
|
|
21
|
-
* `false` disables. Layout: `<patchesDir>/<name>/*.
|
|
21
|
+
* `false` disables. Layout: `<patchesDir>/<name>/*.json` when the
|
|
22
22
|
* per-spec directory exists; for single-spec providers a flat
|
|
23
|
-
* `<patchesDir>/*.
|
|
23
|
+
* `<patchesDir>/*.json` also works. Ops under `/shapes` or `/metadata`
|
|
24
|
+
* apply to the Smithy model after conversion; the rest apply to OpenAPI.
|
|
24
25
|
*/
|
|
25
26
|
readonly patchesDir?: string | false;
|
|
26
27
|
/** Output directory, relative to `root`. Default `".generated-specs"`. */
|
|
@@ -32,6 +33,19 @@ export interface RunOpenApiConvertOptions {
|
|
|
32
33
|
readonly parse?: (text: string, specPath: string) => unknown;
|
|
33
34
|
/** Shared converter options (per-spec `options` merge over these). */
|
|
34
35
|
readonly options: OpenApiConvertOptions;
|
|
36
|
+
/**
|
|
37
|
+
* What to do when a patch JSON pointer does not resolve. Default `"fail"`:
|
|
38
|
+
* silent skip is how a whole patch chain can vanish after an upstream path
|
|
39
|
+
* prefix change. `"warn"` restores the old skip-and-continue behaviour.
|
|
40
|
+
*/
|
|
41
|
+
readonly onStalePatch?: "fail" | "warn";
|
|
42
|
+
/**
|
|
43
|
+
* Run {@link finalizeConvert} on the written models (reference check +
|
|
44
|
+
* finalized marker; naming already happened in the converter). Default
|
|
45
|
+
* true. Pass false when the caller finalizes once after several convert
|
|
46
|
+
* steps (Fly machines + sprites + addons).
|
|
47
|
+
*/
|
|
48
|
+
readonly finalize?: boolean;
|
|
35
49
|
}
|
|
36
50
|
/** Run the OpenAPI→Smithy conversion pipeline (plain async — call from a script). */
|
|
37
51
|
export declare const runOpenApiConvert: (o: RunOpenApiConvertOptions) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi-cli.d.ts","sourceRoot":"","sources":["../../src/codegen/openapi-cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"openapi-cli.d.ts","sourceRoot":"","sources":["../../src/codegen/openapi-cli.ts"],"names":[],"mappings":"AAgBA,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,cAAc,CAAC;AAStB,MAAM,WAAW,gBAAgB;IAC/B,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,wDAAwD;IACxD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAC9E,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,wBAAwB;IACvC,6EAA6E;IAC7E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC5C;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACrC,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7D,sEAAsE;IACtE,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;IACxC;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAWD,qFAAqF;AACrF,eAAO,MAAM,iBAAiB,MACzB,wBAAwB,KAC1B,OAAO,CAAC,IAAI,CA2Fd,CAAC"}
|
|
@@ -2,22 +2,21 @@
|
|
|
2
2
|
* OpenAPI → Smithy pipeline helper (dev-time only, provider-agnostic).
|
|
3
3
|
*
|
|
4
4
|
* Owns the spec-side pipeline every OpenAPI-sourced provider shares: read the
|
|
5
|
-
* spec file, apply
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
5
|
+
* spec file, apply OpenAPI RFC-6902 ops to the document, convert with
|
|
6
|
+
* {@link convertOpenApiToSmithy} (which owns verbNoun naming), apply Smithy
|
|
7
|
+
* RFC-6902 ops (`/shapes`, `/metadata`) to the model, and write
|
|
8
|
+
* `.generated-specs/<name>.json`. Stale targets fail unless
|
|
9
|
+
* `onStalePatch: "warn"`.
|
|
10
10
|
*
|
|
11
|
-
* A provider's `scripts/convert.ts` is: a `runOpenApiConvert` call.
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* `patches/` should pass `patchesDir: false` to `runGeneratorCli` — the
|
|
15
|
-
* patch chain applies HERE, to the OpenAPI document, not to the Smithy model.
|
|
11
|
+
* A provider's `scripts/convert.ts` is: a `runOpenApiConvert` call.
|
|
12
|
+
* `scripts/generate.ts` compiles the already-patched models and does not
|
|
13
|
+
* apply patches.
|
|
16
14
|
*/
|
|
17
15
|
import * as fs from "node:fs/promises";
|
|
18
16
|
import * as path from "node:path";
|
|
19
|
-
import { applyOperation, isStaleTargetError, } from "../json-patch.js";
|
|
20
17
|
import { convertOpenApiToSmithy, } from "./openapi.js";
|
|
18
|
+
import { applyRfc6902Files, finalizeConvert, isSmithyPatchPath, listRfc6902PatchFiles, } from "./patches.js";
|
|
19
|
+
import { resolveSpecPath } from "./spec-path.js";
|
|
21
20
|
const exists = async (p) => {
|
|
22
21
|
try {
|
|
23
22
|
await fs.access(p);
|
|
@@ -34,13 +33,15 @@ export const runOpenApiConvert = async (o) => {
|
|
|
34
33
|
? undefined
|
|
35
34
|
: path.resolve(o.root, o.patchesDir ?? "patches");
|
|
36
35
|
const parse = o.parse ?? ((text) => JSON.parse(text));
|
|
36
|
+
const onStalePatch = o.onStalePatch ?? "fail";
|
|
37
37
|
await fs.mkdir(outDir, { recursive: true });
|
|
38
38
|
console.log("🛠️ openapi → smithy");
|
|
39
39
|
console.log(` Output: ${outDir}`);
|
|
40
40
|
for (const entry of o.specs) {
|
|
41
|
-
|
|
41
|
+
// Production path by default; `specs/.local` under DISTILLED_SPECS_LOCAL.
|
|
42
|
+
const specPath = resolveSpecPath(o.root, entry.specPath);
|
|
42
43
|
let spec = parse(await fs.readFile(specPath, "utf8"), specPath);
|
|
43
|
-
// ---- RFC-6902
|
|
44
|
+
// ---- RFC-6902: OpenAPI ops before convert, Smithy ops after ----
|
|
44
45
|
let patchDir;
|
|
45
46
|
if (patchRoot && (await exists(patchRoot))) {
|
|
46
47
|
const perSpec = path.join(patchRoot, entry.name);
|
|
@@ -51,57 +52,58 @@ export const runOpenApiConvert = async (o) => {
|
|
|
51
52
|
patchDir = patchRoot;
|
|
52
53
|
}
|
|
53
54
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
for (const patchOp of parsed.patches ?? []) {
|
|
64
|
-
try {
|
|
65
|
-
applyOperation(spec, patchOp);
|
|
66
|
-
}
|
|
67
|
-
catch (e) {
|
|
68
|
-
const msg = e instanceof Error ? e.message : String(e);
|
|
69
|
-
if (isStaleTargetError(msg)) {
|
|
70
|
-
// Spec drift — the patch target no longer exists upstream.
|
|
71
|
-
staleOps++;
|
|
72
|
-
console.warn(` ⚠️ stale: ${entry.name}/${pf} [${patchOp.op} ${patchOp.path}]`);
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
badPatches.push(`${entry.name}/${pf} [${patchOp.op} ${patchOp.path}]: ${msg}`);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
patchFileCount++;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
if (badPatches.length) {
|
|
83
|
-
for (const b of badPatches)
|
|
55
|
+
const patchFiles = patchDir ? await listRfc6902PatchFiles(patchDir) : [];
|
|
56
|
+
const patchLabel = (file) => `${entry.name}/${path.basename(file)}`;
|
|
57
|
+
const openapiPatches = await applyRfc6902Files(spec, patchFiles, {
|
|
58
|
+
onStalePatch,
|
|
59
|
+
include: (op) => !isSmithyPatchPath(op.path),
|
|
60
|
+
label: patchLabel,
|
|
61
|
+
});
|
|
62
|
+
if (openapiPatches.errors.length) {
|
|
63
|
+
for (const b of openapiPatches.errors)
|
|
84
64
|
console.error(`❌ bad patch: ${b}`);
|
|
85
|
-
throw new Error(`${
|
|
65
|
+
throw new Error(`${openapiPatches.errors.length} patch operation(s) failed — fix the pointers or delete the patch`);
|
|
86
66
|
}
|
|
87
67
|
// ---- Preprocess hook ----
|
|
88
68
|
if (entry.preprocess) {
|
|
89
|
-
const replaced = entry.preprocess(spec);
|
|
69
|
+
const replaced = await entry.preprocess(spec);
|
|
90
70
|
if (replaced !== undefined)
|
|
91
71
|
spec = replaced;
|
|
92
72
|
}
|
|
93
|
-
// ---- Convert
|
|
73
|
+
// ---- Convert, Smithy patches, write ----
|
|
94
74
|
const model = convertOpenApiToSmithy(spec, {
|
|
95
75
|
...o.options,
|
|
96
76
|
...entry.options,
|
|
97
77
|
});
|
|
78
|
+
const smithyPatches = await applyRfc6902Files(model, patchFiles, {
|
|
79
|
+
onStalePatch,
|
|
80
|
+
include: (op) => isSmithyPatchPath(op.path),
|
|
81
|
+
label: patchLabel,
|
|
82
|
+
});
|
|
83
|
+
if (smithyPatches.errors.length) {
|
|
84
|
+
for (const b of smithyPatches.errors)
|
|
85
|
+
console.error(`❌ bad patch: ${b}`);
|
|
86
|
+
throw new Error(`${smithyPatches.errors.length} Smithy patch operation(s) failed — fix the pointers or delete the patch`);
|
|
87
|
+
}
|
|
98
88
|
const opCount = Object.values(model.shapes).filter((s) => s.type === "operation").length;
|
|
99
89
|
const outPath = path.join(outDir, `${entry.name}.json`);
|
|
100
90
|
await fs.writeFile(outPath, JSON.stringify(model, null, 2) + "\n");
|
|
91
|
+
const staleOps = openapiPatches.stale + smithyPatches.stale;
|
|
101
92
|
console.log(` ✅ ${entry.name}: ${opCount} operations, ${Object.keys(model.shapes).length} shapes` +
|
|
102
|
-
(
|
|
103
|
-
? ` (${
|
|
93
|
+
(patchFiles.length
|
|
94
|
+
? ` (${patchFiles.length} patch file(s) applied${staleOps ? `, ${staleOps} stale op(s) skipped` : ""})`
|
|
104
95
|
: ""));
|
|
105
96
|
}
|
|
97
|
+
if (o.finalize !== false) {
|
|
98
|
+
const written = new Set(o.specs.map((s) => s.name));
|
|
99
|
+
await finalizeConvert({
|
|
100
|
+
root: o.root,
|
|
101
|
+
outDir,
|
|
102
|
+
// Patches and naming already ran above.
|
|
103
|
+
patchesDir: false,
|
|
104
|
+
operationNaming: "as-is",
|
|
105
|
+
include: (resource) => written.has(resource),
|
|
106
|
+
});
|
|
107
|
+
}
|
|
106
108
|
};
|
|
107
109
|
//# sourceMappingURL=openapi-cli.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi-cli.js","sourceRoot":"","sources":["../../src/codegen/openapi-cli.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"openapi-cli.js","sourceRoot":"","sources":["../../src/codegen/openapi-cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EACL,sBAAsB,GAEvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAoDjD,MAAM,MAAM,GAAG,KAAK,EAAE,CAAS,EAAoB,EAAE;IACnD,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,qFAAqF;AACrF,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,CAA2B,EACZ,EAAE;IACjB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,kBAAkB,CAAC,CAAC;IACpE,MAAM,SAAS,GACb,CAAC,CAAC,UAAU,KAAK,KAAK;QACpB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,IAAI,SAAS,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,IAAI,MAAM,CAAC;IAE9C,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE5C,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,EAAE,CAAC,CAAC;IAEpC,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QAC5B,0EAA0E;QAC1E,MAAM,QAAQ,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,IAAI,GAAQ,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;QAErE,mEAAmE;QACnE,IAAI,QAA4B,CAAC;QACjC,IAAI,SAAS,IAAI,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1B,QAAQ,GAAG,OAAO,CAAC;YACrB,CAAC;iBAAM,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChC,QAAQ,GAAG,SAAS,CAAC;YACvB,CAAC;QACH,CAAC;QACD,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5E,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE;YAC/D,YAAY;YACZ,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC,IAAI,CAAC;YAC5C,KAAK,EAAE,UAAU;SAClB,CAAC,CAAC;QACH,IAAI,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACjC,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,MAAM;gBACnC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;YACrC,MAAM,IAAI,KAAK,CACb,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,mEAAmE,CACnG,CAAC;QACJ,CAAC;QAED,4BAA4B;QAC5B,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,QAAQ,KAAK,SAAS;gBAAE,IAAI,GAAG,QAAQ,CAAC;QAC9C,CAAC;QAED,2CAA2C;QAC3C,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,EAAE;YACzC,GAAG,CAAC,CAAC,OAAO;YACZ,GAAG,KAAK,CAAC,OAAO;SACjB,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE;YAC/D,YAAY;YACZ,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,IAAI,CAAC;YAC3C,KAAK,EAAE,UAAU;SAClB,CAAC,CAAC;QACH,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAChC,KAAK,MAAM,CAAC,IAAI,aAAa,CAAC,MAAM;gBAAE,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;YACzE,MAAM,IAAI,KAAK,CACb,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,0EAA0E,CACzG,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAChD,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CACnC,CAAC,MAAM,CAAC;QACT,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC;QACxD,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;QAC5D,OAAO,CAAC,GAAG,CACT,QAAQ,KAAK,CAAC,IAAI,KAAK,OAAO,gBAAgB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,SAAS;YACrF,CAAC,UAAU,CAAC,MAAM;gBAChB,CAAC,CAAC,KAAK,UAAU,CAAC,MAAM,yBAAyB,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,sBAAsB,CAAC,CAAC,CAAC,EAAE,GAAG;gBACvG,CAAC,CAAC,EAAE,CAAC,CACV,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACpD,MAAM,eAAe,CAAC;YACpB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,MAAM;YACN,wCAAwC;YACxC,UAAU,EAAE,KAAK;YACjB,eAAe,EAAE,OAAO;YACxB,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;SAC7C,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC"}
|
package/lib/codegen/openapi.d.ts
CHANGED
|
@@ -7,20 +7,28 @@
|
|
|
7
7
|
* `generateService` compiler. Conversion fidelity follows distilled v0's
|
|
8
8
|
* `generate-openapi.ts` feature matrix:
|
|
9
9
|
*
|
|
10
|
-
* • one operation per (path × get/post/put/patch/delete
|
|
11
|
-
*
|
|
10
|
+
* • one operation per (path × get/post/put/patch/delete — plus head/options
|
|
11
|
+
* when a provider opts in via `extraHttpMethods`), deprecated skipped by
|
|
12
|
+
* default; op shape name = PascalCase(operationId), or verbNoun
|
|
13
|
+
* (`Apps_list` → `ListApps`) when {@link OpenApiConvertOptions.operationNaming}
|
|
14
|
+
* is `"verbNoun"`
|
|
12
15
|
* • input `<Op>Request`: path params → `smithy.api#httpLabel` (+required),
|
|
13
|
-
* query params → `smithy.api#httpQuery`, header
|
|
14
|
-
*
|
|
16
|
+
* query params → `smithy.api#httpQuery`, header params →
|
|
17
|
+
* `smithy.api#httpHeader` when `headerParams` is on (dropped otherwise,
|
|
18
|
+
* as cookie params always are),
|
|
19
|
+
* body properties flattened alongside
|
|
20
|
+
* (labels win, then query, then headers, then body);
|
|
15
21
|
* non-object bodies become a sole `body` member with `smithy.api#httpPayload`
|
|
16
22
|
* • `$ref`s become NAMED shapes (`components/schemas/X` → `<ns>#X`), reused
|
|
17
23
|
* across operations; anonymous nested objects synthesize names from the
|
|
18
24
|
* parent + member path
|
|
19
|
-
* • responses: 200 → 201 → 204 precedence
|
|
25
|
+
* • responses: 200 → 201 → 204 precedence (`successStatuses` overrides),
|
|
26
|
+
* `application/json` only; object
|
|
20
27
|
* results become `<Op>Response` structures (a sole `$ref` reuses the named
|
|
21
28
|
* shape); bare array/scalar results wrap in a structure whose single
|
|
22
29
|
* member carries `com.distilled.openapi#rawResponse` (the SdkSpec maps it
|
|
23
|
-
* to a root pipe); no schema → `smithy.api#Unit`
|
|
30
|
+
* to a root pipe); no schema → `smithy.api#Unit`; `head` is always
|
|
31
|
+
* `smithy.api#Unit`, whatever content the spec declares
|
|
24
32
|
* • nullability (3.0 `nullable`, 3.1 `type: [..., "null"]`, 2.0
|
|
25
33
|
* `x-nullable`, `oneOf`/`anyOf` null branches) → member-level
|
|
26
34
|
* `com.distilled.openapi#nullable` trait
|
|
@@ -35,6 +43,7 @@
|
|
|
35
43
|
* first top-level array property) → `smithy.api#paginated` on the op
|
|
36
44
|
* (with the non-standard `mode` member the core runtime dispatches on)
|
|
37
45
|
*/
|
|
46
|
+
import { type OperationIdRewrite } from "./rewrite-operation-ids.ts";
|
|
38
47
|
/** Member-level nullability (`S.NullOr` + `| null` via `SdkSpec.nullableTrait`). */
|
|
39
48
|
export declare const NULLABLE_TRAIT = "com.distilled.openapi#nullable";
|
|
40
49
|
/**
|
|
@@ -87,6 +96,37 @@ export interface OpenApiConvertOptions {
|
|
|
87
96
|
readonly defaultErrorStatuses?: Iterable<string>;
|
|
88
97
|
/** Skip operations marked `deprecated: true`. Default true. */
|
|
89
98
|
readonly skipDeprecated?: boolean;
|
|
99
|
+
/**
|
|
100
|
+
* HTTP methods to convert IN ADDITION to get/post/put/patch/delete —
|
|
101
|
+
* currently `"head"` and `"options"`. Opt-in, so a provider that models
|
|
102
|
+
* them (Vercel probes cache artifacts and sandbox files with HEAD) gets
|
|
103
|
+
* them without every other provider silently gaining operations.
|
|
104
|
+
*
|
|
105
|
+
* `head` operations always output `smithy.api#Unit` — see the output-shape
|
|
106
|
+
* comment in {@link convertOpenApiToSmithy} for why a declared response
|
|
107
|
+
* body on a HEAD can never arrive.
|
|
108
|
+
*/
|
|
109
|
+
readonly extraHttpMethods?: readonly ("head" | "options")[];
|
|
110
|
+
/**
|
|
111
|
+
* Emit `in: header` parameters as `smithy.api#httpHeader` members instead
|
|
112
|
+
* of dropping them. Opt-in for the same reason as
|
|
113
|
+
* {@link extraHttpMethods}: turning it on adds input members to every
|
|
114
|
+
* operation whose spec declares a header parameter, and most providers
|
|
115
|
+
* declare ones the protocol already sends itself (Accept, Authorization,
|
|
116
|
+
* an API-version pin). Providers whose headers are real per-call inputs
|
|
117
|
+
* — Vercel's `x-Artifact-*` remote-cache metadata, `x-Vercel-Digest` —
|
|
118
|
+
* ask for them.
|
|
119
|
+
*/
|
|
120
|
+
readonly headerParams?: boolean;
|
|
121
|
+
/**
|
|
122
|
+
* Response statuses to read the operation's output shape from, most
|
|
123
|
+
* preferred first. Default `["200", "201", "204"]`. Extend it for an API
|
|
124
|
+
* that answers asynchronous work with a body under another status — Vercel
|
|
125
|
+
* returns `202 Accepted` with a payload from nine endpoints (artifact
|
|
126
|
+
* upload, account deletion, VCR blob/manifest writes), which would
|
|
127
|
+
* otherwise generate as a `void` output.
|
|
128
|
+
*/
|
|
129
|
+
readonly successStatuses?: readonly string[];
|
|
90
130
|
/**
|
|
91
131
|
* Azure-style fixed `api-version`: drops `api-version` query params and
|
|
92
132
|
* stamps {@link API_VERSION_TRAIT} on every operation.
|
|
@@ -105,6 +145,29 @@ export interface OpenApiConvertOptions {
|
|
|
105
145
|
* {@link ERROR_MATCHERS_TRAIT} traits; overrides are merged over it.
|
|
106
146
|
*/
|
|
107
147
|
readonly errorShapes?: Readonly<Record<string, any>>;
|
|
148
|
+
/**
|
|
149
|
+
* How to turn an OpenAPI `operationId` into the Smithy/SDK operation name.
|
|
150
|
+
* This is a convert policy, not a spec patch — the OpenAPI document is
|
|
151
|
+
* left alone.
|
|
152
|
+
*
|
|
153
|
+
* - `"verbNoun"` (default): `Apps_list` / `ConfigsList` / `showContact` →
|
|
154
|
+
* `listApps` / `listConfigs` / `getApp`. Already verb-first ids stay.
|
|
155
|
+
* An operation with no `operationId`, or a mechanical one that only
|
|
156
|
+
* restates the method and path (`get-api-card`, `post_v1_users`), is
|
|
157
|
+
* named from the route instead: `GET /users` → `listUsers`,
|
|
158
|
+
* `GET /users/{id}` → `getUser`, `POST /users/{id}/reset` →
|
|
159
|
+
* `resetUser`.
|
|
160
|
+
* - `"as-is"`: `PascalCase(operationId)` (`Apps_list` → `AppsList`).
|
|
161
|
+
*
|
|
162
|
+
* {@link operationNames} overrides win (lookup by `"METHOD path"`, then
|
|
163
|
+
* operationId).
|
|
164
|
+
*/
|
|
165
|
+
readonly operationNaming?: "as-is" | "verbNoun";
|
|
166
|
+
/**
|
|
167
|
+
* Per-operation name overrides for {@link operationNaming}. Use
|
|
168
|
+
* `"METHOD path"` keys when two methods share an `operationId`.
|
|
169
|
+
*/
|
|
170
|
+
readonly operationNames?: OperationIdRewrite;
|
|
108
171
|
}
|
|
109
172
|
export interface SmithyModel {
|
|
110
173
|
smithy: "2.0";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/codegen/openapi.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/codegen/openapi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAEH,OAAO,EAML,KAAK,kBAAkB,EACxB,MAAM,4BAA4B,CAAC;AAMpC,oFAAoF;AACpF,eAAO,MAAM,cAAc,mCAAmC,CAAC;AAC/D;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,sCAAsC,CAAC;AACtE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,wCAAwC,CAAC;AAC1E;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,sCAAsC,CAAC;AACtE;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,qCAAqC,CAAC;AAMpE,eAAO,MAAM,wBAAwB,EAAE,SAAS,MAAM,EAoBrD,CAAC;AAMF,MAAM,WAAW,qBAAqB;IACpC,8CAA8C;IAC9C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,+EAA+E;IAC/E,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/D;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjD,+DAA+D;IAC/D,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC;;;;;;;;;OASG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC5D;;;;;;;;;OASG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;;;OAOG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IACrD;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAChD;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,kBAAkB,CAAC;CAC9C;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,KAAK,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC7B;AA6gCD,eAAO,MAAM,sBAAsB,SAC3B,OAAO,WACJ,qBAAqB,KAC7B,WA6aF,CAAC"}
|