@redocly/client-generator 0.0.0-snapshot.manual → 0.1.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/README.md +118 -422
- package/lib/config-file.d.ts +2 -2
- package/lib/config-file.d.ts.map +1 -1
- package/lib/config-file.js +0 -18
- package/lib/config-file.js.map +1 -1
- package/lib/emitters/client-assembly.d.ts.map +1 -1
- package/lib/emitters/client-assembly.js +14 -15
- package/lib/emitters/client-assembly.js.map +1 -1
- package/lib/emitters/descriptor.d.ts.map +1 -1
- package/lib/emitters/descriptor.js +10 -29
- package/lib/emitters/descriptor.js.map +1 -1
- package/lib/emitters/emit-options.d.ts +16 -20
- package/lib/emitters/emit-options.d.ts.map +1 -1
- package/lib/emitters/emit-options.js +3 -2
- package/lib/emitters/emit-options.js.map +1 -1
- package/lib/emitters/faker.d.ts.map +1 -1
- package/lib/emitters/faker.js +25 -8
- package/lib/emitters/faker.js.map +1 -1
- package/lib/emitters/identifier.d.ts +6 -0
- package/lib/emitters/identifier.d.ts.map +1 -1
- package/lib/emitters/identifier.js +11 -1
- package/lib/emitters/identifier.js.map +1 -1
- package/lib/emitters/inline-runtime.js +1 -1
- package/lib/emitters/inline-runtime.js.map +1 -1
- package/lib/emitters/mock.d.ts +2 -2
- package/lib/emitters/mock.d.ts.map +1 -1
- package/lib/emitters/mock.js +59 -37
- package/lib/emitters/mock.js.map +1 -1
- package/lib/emitters/operation-aliases.d.ts.map +1 -1
- package/lib/emitters/operation-aliases.js +6 -0
- package/lib/emitters/operation-aliases.js.map +1 -1
- package/lib/emitters/operation-signature.d.ts +1 -0
- package/lib/emitters/operation-signature.d.ts.map +1 -1
- package/lib/emitters/operation-signature.js +11 -3
- package/lib/emitters/operation-signature.js.map +1 -1
- package/lib/emitters/operation-types.js +1 -1
- package/lib/emitters/operation-types.js.map +1 -1
- package/lib/emitters/operations.d.ts +2 -2
- package/lib/emitters/operations.d.ts.map +1 -1
- package/lib/emitters/operations.js +4 -2
- package/lib/emitters/operations.js.map +1 -1
- package/lib/emitters/pagination.d.ts +14 -7
- package/lib/emitters/pagination.d.ts.map +1 -1
- package/lib/emitters/pagination.js +70 -37
- package/lib/emitters/pagination.js.map +1 -1
- package/lib/emitters/reserved-names.d.ts +5 -0
- package/lib/emitters/reserved-names.d.ts.map +1 -0
- package/lib/emitters/reserved-names.js +134 -0
- package/lib/emitters/reserved-names.js.map +1 -0
- package/lib/emitters/runtime-sources.d.ts +6 -6
- package/lib/emitters/runtime-sources.js +6 -6
- package/lib/emitters/runtime-sources.js.map +1 -1
- package/lib/emitters/sample.d.ts +13 -1
- package/lib/emitters/sample.d.ts.map +1 -1
- package/lib/emitters/sample.js +138 -8
- package/lib/emitters/sample.js.map +1 -1
- package/lib/emitters/setup-bake.d.ts.map +1 -1
- package/lib/emitters/setup-bake.js +15 -1
- package/lib/emitters/setup-bake.js.map +1 -1
- package/lib/emitters/tanstack-query.d.ts +8 -3
- package/lib/emitters/tanstack-query.d.ts.map +1 -1
- package/lib/emitters/tanstack-query.js +231 -57
- package/lib/emitters/tanstack-query.js.map +1 -1
- package/lib/emitters/transformers.d.ts.map +1 -1
- package/lib/emitters/transformers.js +118 -36
- package/lib/emitters/transformers.js.map +1 -1
- package/lib/emitters/ts.d.ts.map +1 -1
- package/lib/emitters/ts.js +8 -0
- package/lib/emitters/ts.js.map +1 -1
- package/lib/emitters/types.d.ts +1 -9
- package/lib/emitters/types.d.ts.map +1 -1
- package/lib/emitters/types.js +4 -6
- package/lib/emitters/types.js.map +1 -1
- package/lib/emitters/wrapper-support.d.ts.map +1 -1
- package/lib/emitters/wrapper-support.js +2 -0
- package/lib/emitters/wrapper-support.js.map +1 -1
- package/lib/emitters/zod.d.ts.map +1 -1
- package/lib/emitters/zod.js +121 -19
- package/lib/emitters/zod.js.map +1 -1
- package/lib/generate.d.ts +25 -0
- package/lib/generate.d.ts.map +1 -0
- package/lib/generate.js +119 -0
- package/lib/generate.js.map +1 -0
- package/lib/generators/index.d.ts.map +1 -1
- package/lib/generators/index.js +9 -2
- package/lib/generators/index.js.map +1 -1
- package/lib/generators/mock.js +1 -1
- package/lib/generators/mock.js.map +1 -1
- package/lib/generators/resolve.js +6 -1
- package/lib/generators/resolve.js.map +1 -1
- package/lib/generators/swr.js +1 -1
- package/lib/generators/swr.js.map +1 -1
- package/lib/generators/tanstack-query.d.ts +9 -8
- package/lib/generators/tanstack-query.d.ts.map +1 -1
- package/lib/generators/tanstack-query.js +22 -18
- package/lib/generators/tanstack-query.js.map +1 -1
- package/lib/generators/transformers.d.ts.map +1 -1
- package/lib/generators/transformers.js +4 -2
- package/lib/generators/transformers.js.map +1 -1
- package/lib/generators/types.d.ts +2 -2
- package/lib/generators/types.d.ts.map +1 -1
- package/lib/index.d.ts +3 -20
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +8 -107
- package/lib/index.js.map +1 -1
- package/lib/intermediate-representation/build.d.ts.map +1 -1
- package/lib/intermediate-representation/build.js +25 -17
- package/lib/intermediate-representation/build.js.map +1 -1
- package/lib/intermediate-representation/model.d.ts +8 -8
- package/lib/intermediate-representation/model.d.ts.map +1 -1
- package/lib/intermediate-representation/normalize-swagger2.js +27 -2
- package/lib/intermediate-representation/normalize-swagger2.js.map +1 -1
- package/lib/intermediate-representation/sanitize-identifiers.d.ts +10 -0
- package/lib/intermediate-representation/sanitize-identifiers.d.ts.map +1 -1
- package/lib/intermediate-representation/sanitize-identifiers.js +79 -20
- package/lib/intermediate-representation/sanitize-identifiers.js.map +1 -1
- package/lib/loader.d.ts.map +1 -1
- package/lib/loader.js +20 -1
- package/lib/loader.js.map +1 -1
- package/lib/plugin.d.ts +0 -6
- package/lib/plugin.d.ts.map +1 -1
- package/lib/plugin.js +7 -8
- package/lib/plugin.js.map +1 -1
- package/lib/runtime/create-client.d.ts +12 -1
- package/lib/runtime/create-client.d.ts.map +1 -1
- package/lib/runtime/create-client.js +95 -13
- package/lib/runtime/create-client.js.map +1 -1
- package/lib/runtime/index.js +2 -2
- package/lib/runtime/index.js.map +1 -1
- package/lib/runtime/paginate.d.ts +25 -2
- package/lib/runtime/paginate.d.ts.map +1 -1
- package/lib/runtime/paginate.js +95 -5
- package/lib/runtime/paginate.js.map +1 -1
- package/lib/runtime/parse.d.ts +5 -1
- package/lib/runtime/parse.d.ts.map +1 -1
- package/lib/runtime/parse.js +29 -3
- package/lib/runtime/parse.js.map +1 -1
- package/lib/runtime/send.d.ts +1 -1
- package/lib/runtime/send.d.ts.map +1 -1
- package/lib/runtime/send.js +2 -2
- package/lib/runtime/send.js.map +1 -1
- package/lib/runtime/sse.d.ts +1 -0
- package/lib/runtime/sse.d.ts.map +1 -1
- package/lib/runtime/sse.js +9 -9
- package/lib/runtime/sse.js.map +1 -1
- package/lib/runtime/types.d.ts +31 -6
- package/lib/runtime/types.d.ts.map +1 -1
- package/lib/types.d.ts +23 -20
- package/lib/types.d.ts.map +1 -1
- package/package.json +12 -2
- package/lib/config.d.ts +0 -63
- package/lib/config.d.ts.map +0 -1
- package/lib/config.js +0 -2
- package/lib/config.js.map +0 -1
- package/lib/emitters/client.d.ts +0 -71
- package/lib/emitters/client.d.ts.map +0 -1
- package/lib/emitters/client.js +0 -28
- package/lib/emitters/client.js.map +0 -1
- package/lib/emitters/package-client.d.ts +0 -15
- package/lib/emitters/package-client.d.ts.map +0 -1
- package/lib/emitters/package-client.js +0 -300
- package/lib/emitters/package-client.js.map +0 -1
- package/lib/writers/index.d.ts +0 -5
- package/lib/writers/index.d.ts.map +0 -1
- package/lib/writers/index.js +0 -11
- package/lib/writers/index.js.map +0 -1
- package/lib/writers/single-file-writer.d.ts +0 -8
- package/lib/writers/single-file-writer.d.ts.map +0 -1
- package/lib/writers/single-file-writer.js +0 -10
- package/lib/writers/single-file-writer.js.map +0 -1
- package/lib/writers/split-writer.d.ts +0 -14
- package/lib/writers/split-writer.d.ts.map +0 -1
- package/lib/writers/split-writer.js +0 -23
- package/lib/writers/split-writer.js.map +0 -1
- package/lib/writers/types.d.ts +0 -31
- package/lib/writers/types.d.ts.map +0 -1
- package/lib/writers/types.js +0 -2
- package/lib/writers/types.js.map +0 -1
- package/lib/writers/util.d.ts +0 -14
- package/lib/writers/util.d.ts.map +0 -1
- package/lib/writers/util.js +0 -14
- package/lib/writers/util.js.map +0 -1
package/lib/runtime/sse.js
CHANGED
|
@@ -28,7 +28,7 @@ export async function* sse(config, op, prepare, dataKind = 'text') {
|
|
|
28
28
|
// Re-prepare each attempt so a refresh-style TokenProvider yields a fresh credential
|
|
29
29
|
// on reconnect (the auth is baked into `url` query + `init.headers`). `reconnect`,
|
|
30
30
|
// `reconnectDelay`, and `signal` come from the caller's original options unchanged.
|
|
31
|
-
const { url, init } = await prepare();
|
|
31
|
+
const { url, init, body: requestBody } = await prepare();
|
|
32
32
|
const { reconnect = true, reconnectDelay, ...rest } = init;
|
|
33
33
|
const signal = rest.signal ?? undefined;
|
|
34
34
|
if (signal?.aborted)
|
|
@@ -39,7 +39,7 @@ export async function* sse(config, op, prepare, dataKind = 'text') {
|
|
|
39
39
|
};
|
|
40
40
|
const sendHeaders = lastEventId === undefined ? headers : { ...headers, 'Last-Event-ID': lastEventId };
|
|
41
41
|
try {
|
|
42
|
-
const { response } = await send(config, op, url, { ...rest, method: rest.method ?? 'GET', headers: sendHeaders },
|
|
42
|
+
const { response } = await send(config, op, url, { ...rest, method: rest.method ?? 'GET', headers: sendHeaders }, requestBody, false, {});
|
|
43
43
|
if (!response.ok) {
|
|
44
44
|
const errorBody = await readError(response);
|
|
45
45
|
throw new ApiError(url, response.status, response.statusText, errorBody);
|
|
@@ -56,10 +56,9 @@ export async function* sse(config, op, prepare, dataKind = 'text') {
|
|
|
56
56
|
const { done, value } = await reader.read();
|
|
57
57
|
buffer += done ? decoder.decode() : decoder.decode(value, { stream: true });
|
|
58
58
|
let match;
|
|
59
|
-
while ((match =
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
buffer = buffer.slice(index + match[0].length);
|
|
59
|
+
while ((match = FRAME_DELIMITER.exec(buffer)) !== null) {
|
|
60
|
+
const raw = buffer.slice(0, match.index);
|
|
61
|
+
buffer = buffer.slice(match.index + match[0].length);
|
|
63
62
|
const event = parseSseFrame(raw, dataKind);
|
|
64
63
|
if (event) {
|
|
65
64
|
if (event.id !== undefined)
|
|
@@ -141,9 +140,10 @@ export function parseSseFrame(raw, dataKind) {
|
|
|
141
140
|
else if (field === 'id')
|
|
142
141
|
id = val;
|
|
143
142
|
else if (field === 'retry') {
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
143
|
+
// ASCII digits only, per the EventSource spec — anything else is ignored
|
|
144
|
+
// (`Number('')` is 0 and would zero the reconnect backoff).
|
|
145
|
+
if (/^\d+$/.test(val))
|
|
146
|
+
retry = Number(val);
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
149
|
if (!sawField)
|
package/lib/runtime/sse.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sse.js","sourceRoot":"","sources":["../../src/runtime/sse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAGjD;;;GAGG;AACH,MAAM,eAAe,GAAG,mBAAmB,CAAC;AAE5C;;;GAGG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK;CAAG;AAE3C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,GAAG,CACxB,MAAoB,EACpB,EAAoB,EACpB,
|
|
1
|
+
{"version":3,"file":"sse.js","sourceRoot":"","sources":["../../src/runtime/sse.ts"],"names":[],"mappings":"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"}
|
package/lib/runtime/types.d.ts
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
/** How one operation parameter is sent: its location plus OpenAPI query-serialization hints. */
|
|
9
9
|
export type ParamSpec = {
|
|
10
10
|
name: string;
|
|
11
|
-
in: 'path' | 'query' | 'header';
|
|
11
|
+
in: 'path' | 'query' | 'header' | 'cookie';
|
|
12
12
|
style?: 'form' | 'spaceDelimited' | 'pipeDelimited' | 'deepObject';
|
|
13
13
|
explode?: boolean;
|
|
14
14
|
allowReserved?: boolean;
|
|
@@ -28,13 +28,30 @@ export type SecuritySpec = {
|
|
|
28
28
|
* `nextCursor` and `items` are RFC 6901 JSON pointers into the page (response) value.
|
|
29
29
|
*/
|
|
30
30
|
export type PaginationSpec = {
|
|
31
|
-
style: 'cursor'
|
|
32
|
-
/** The query param the iterator advances
|
|
31
|
+
style: 'cursor';
|
|
32
|
+
/** The query param the iterator advances with the response's cursor. */
|
|
33
33
|
param: string;
|
|
34
34
|
/** Optional page-size query param (recorded for tooling; never set by the runtime). */
|
|
35
35
|
limitParam?: string;
|
|
36
|
-
/**
|
|
37
|
-
nextCursor
|
|
36
|
+
/** Pointer to the next cursor in the page. */
|
|
37
|
+
nextCursor: string;
|
|
38
|
+
/** Optional pointer to a boolean "more pages" flag — `false` stops iteration. */
|
|
39
|
+
hasMore?: string;
|
|
40
|
+
/** Pointer to the page's item array. */
|
|
41
|
+
items: string;
|
|
42
|
+
} | {
|
|
43
|
+
style: 'offset' | 'page';
|
|
44
|
+
/** The numeric query param the iterator advances. */
|
|
45
|
+
param: string;
|
|
46
|
+
/** Optional page-size query param (recorded for tooling; never set by the runtime). */
|
|
47
|
+
limitParam?: string;
|
|
48
|
+
/** Pointer to the page's item array. */
|
|
49
|
+
items: string;
|
|
50
|
+
} | {
|
|
51
|
+
/** RFC 8288: follow the response's `Link` header `rel="next"`; stop when absent. */
|
|
52
|
+
style: 'link';
|
|
53
|
+
/** Optional page-size query param (recorded for tooling; never set by the runtime). */
|
|
54
|
+
limitParam?: string;
|
|
38
55
|
/** Pointer to the page's item array. */
|
|
39
56
|
items: string;
|
|
40
57
|
};
|
|
@@ -222,11 +239,19 @@ type Paginated<Entry extends OpsShape[string]> = 'item' extends keyof Entry ? No
|
|
|
222
239
|
pages(args: Entry['args'], init?: RequestOptions): AsyncGenerator<PageOf<Entry>>;
|
|
223
240
|
items(args: Entry['args'], init?: RequestOptions): AsyncGenerator<Entry['item']>;
|
|
224
241
|
} : unknown;
|
|
242
|
+
/**
|
|
243
|
+
* The stable identity every client method carries: the SPEC operationId (also set as
|
|
244
|
+
* `fn.name`, but `operationId` is the explicit, minification-proof form) — a robust
|
|
245
|
+
* cache key for consumer wrappers (react-query keys and the like).
|
|
246
|
+
*/
|
|
247
|
+
export type OperationMethodIdentity = {
|
|
248
|
+
readonly operationId: string;
|
|
249
|
+
};
|
|
225
250
|
/** The typed instance client: one bound method per operation plus the core members. */
|
|
226
251
|
export type Client<Ops extends OpsShape, Op extends OperationContext = OperationContext> = {
|
|
227
252
|
[K in keyof Ops]: Ops[K] extends {
|
|
228
253
|
kind: 'sse';
|
|
229
|
-
} ? NoRequiredKeys<Ops[K]['args']> extends true ? (args?: Ops[K]['args'], init?: SseOptions) => AsyncGenerator<ServerSentEvent<Ops[K]['result']>> : (args: Ops[K]['args'], init?: SseOptions) => AsyncGenerator<ServerSentEvent<Ops[K]['result']>> : (NoRequiredKeys<Ops[K]['args']> extends true ? (args?: Ops[K]['args'], init?: RequestOptions) => Promise<Ops[K]['result']> : (args: Ops[K]['args'], init?: RequestOptions) => Promise<Ops[K]['result']>) & Paginated<Ops[K]>;
|
|
254
|
+
} ? (NoRequiredKeys<Ops[K]['args']> extends true ? (args?: Ops[K]['args'], init?: SseOptions) => AsyncGenerator<ServerSentEvent<Ops[K]['result']>> : (args: Ops[K]['args'], init?: SseOptions) => AsyncGenerator<ServerSentEvent<Ops[K]['result']>>) & OperationMethodIdentity : (NoRequiredKeys<Ops[K]['args']> extends true ? (args?: Ops[K]['args'], init?: RequestOptions) => Promise<Ops[K]['result']> : (args: Ops[K]['args'], init?: RequestOptions) => Promise<Ops[K]['result']>) & OperationMethodIdentity & Paginated<Ops[K]>;
|
|
230
255
|
} & ClientCore<Op>;
|
|
231
256
|
export {};
|
|
232
257
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/runtime/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,gGAAgG;AAChG,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/runtime/types.ts"],"names":[],"mappings":"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"}
|
package/lib/types.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { ArgsStyle } from './emitters/emit-options.js';
|
|
|
3
3
|
import type { PaginationConfig } from './emitters/pagination.js';
|
|
4
4
|
import type { CustomGenerator, OutputMode } from './generators/types.js';
|
|
5
5
|
export type GenerateClientOptions = {
|
|
6
|
-
/** Path or URL to the OpenAPI
|
|
6
|
+
/** Path or URL to the OpenAPI description (or an `apis:` alias from `redocly.yaml`). */
|
|
7
7
|
api: string;
|
|
8
8
|
output: string;
|
|
9
9
|
/** Resolved Redocly config for spec loading. */
|
|
@@ -22,17 +22,11 @@ export type GenerateClientOptions = {
|
|
|
22
22
|
argsStyle?: ArgsStyle;
|
|
23
23
|
/**
|
|
24
24
|
* Override the BASE URL inlined into the generated runtime. When omitted,
|
|
25
|
-
* the value is derived from `servers[0].url` in the source OpenAPI
|
|
25
|
+
* the value is derived from `servers[0].url` in the source OpenAPI description.
|
|
26
26
|
* Validation (e.g. `new URL(value)`) is the caller's responsibility — the
|
|
27
27
|
* CLI handler validates before calling.
|
|
28
28
|
*/
|
|
29
29
|
serverUrl?: string;
|
|
30
|
-
/**
|
|
31
|
-
* How named string enums are emitted. `'const-object'` (default) emits a
|
|
32
|
-
* runtime `as const` companion object alongside the union type; `'union'`
|
|
33
|
-
* emits only the string-literal union.
|
|
34
|
-
*/
|
|
35
|
-
enumStyle?: 'union' | 'const-object';
|
|
36
30
|
/**
|
|
37
31
|
* Error-handling shape of the generated client. `'throw'` (default) throws
|
|
38
32
|
* `ApiError` on non-2xx responses; `'result'` returns a discriminated
|
|
@@ -48,23 +42,20 @@ export type GenerateClientOptions = {
|
|
|
48
42
|
*/
|
|
49
43
|
dateType?: 'string' | 'Date';
|
|
50
44
|
/**
|
|
51
|
-
*
|
|
52
|
-
* (`@tanstack/${queryFramework}-query`). Defaults to `'react'`; only the import
|
|
53
|
-
* specifier changes — the emitted factory module is byte-identical across frameworks.
|
|
54
|
-
*/
|
|
55
|
-
queryFramework?: 'react' | 'vue' | 'svelte' | 'solid';
|
|
56
|
-
/**
|
|
57
|
-
* How the `mock` generator produces data. `'baked'` (default) inlines deterministic
|
|
45
|
+
* How the `mock` generator produces data. `'static'` (default) inlines deterministic
|
|
58
46
|
* literals (zero-dep, contract-faithful); `'faker'` emits `@faker-js/faker` calls for
|
|
59
47
|
* realistic data — making `@faker-js/faker` the consumer's dev-dep. Factory signatures
|
|
60
48
|
* are identical across modes, so a consumer can flip this without changing call sites.
|
|
61
49
|
*/
|
|
62
|
-
mockData?: '
|
|
50
|
+
mockData?: 'static' | 'faker';
|
|
63
51
|
/**
|
|
64
52
|
* Seed for faker-mode mocks. When set, the mock module emits a top-level
|
|
65
|
-
* `faker.seed(<n>)` so generated data is reproducible across runs. Ignored in
|
|
53
|
+
* `faker.seed(<n>)` so generated data is reproducible across runs. Ignored in static mode.
|
|
66
54
|
*/
|
|
67
55
|
mockSeed?: number;
|
|
56
|
+
/** Leading element for every tanstack-query key — namespaces the cache when several
|
|
57
|
+
* generated APIs share one QueryClient (operationIds may collide across APIs). */
|
|
58
|
+
queryKeyPrefix?: string;
|
|
68
59
|
/**
|
|
69
60
|
* Generators to run, in order. Defaults to `['sdk']`. Each entry is a built-in name
|
|
70
61
|
* (`sdk`/`zod`/`tanstack-query`/`swr`/`transformers`/`mock`), the `name` of an inline
|
|
@@ -83,22 +74,34 @@ export type GenerateClientOptions = {
|
|
|
83
74
|
*/
|
|
84
75
|
configDir?: string;
|
|
85
76
|
/**
|
|
86
|
-
* Path to a publisher setup module (
|
|
87
|
-
*
|
|
77
|
+
* Path to a publisher setup module (a file default-exporting `{ config, middleware }`)
|
|
78
|
+
* that gets included into the generated client — pre-configures defaults such as the
|
|
79
|
+
* server URL, retries, headers, and middleware. Resolved against `configDir`. Works
|
|
80
|
+
* across all output modes.
|
|
88
81
|
*/
|
|
89
82
|
setup?: string;
|
|
90
83
|
/** Runtime distribution: 'inline' (default, self-contained) | 'package' (imports @redocly/client-generator). */
|
|
91
84
|
runtime?: 'inline' | 'package';
|
|
85
|
+
/** Extension in generated relative imports. `'js'` (default) suits tsc and bundlers;
|
|
86
|
+
* `'ts'` suits runtimes that resolve specifiers literally, like Node's built-in
|
|
87
|
+
* type stripping (`node client.ts`). */
|
|
88
|
+
importExt?: 'js' | 'ts';
|
|
92
89
|
/**
|
|
93
90
|
* Auto-pagination rules: a convention rule (applied to every operation it
|
|
94
91
|
* structurally fits), per-operation overrides, and `exclude`d operationIds —
|
|
95
|
-
* resolved together with each operation's `x-pagination` extension (per-op config >
|
|
92
|
+
* resolved together with each operation's `x-redocly-pagination` extension (per-op config >
|
|
96
93
|
* extension > convention). Paginated operations gain typed `.pages()`/`.items()`
|
|
97
94
|
* iterators. Verified statically: an explicit rule that doesn't fit its operation
|
|
98
95
|
* fails generation.
|
|
99
96
|
*/
|
|
100
97
|
pagination?: PaginationConfig;
|
|
101
98
|
};
|
|
99
|
+
/**
|
|
100
|
+
* A partial generation config: the shape of a `redocly.yaml` `client` block or a set
|
|
101
|
+
* of CLI flag overrides. `mergeConfig` (config-file.ts) layers these onto each other,
|
|
102
|
+
* and the caller supplies `api`/`output` when invoking `generateClient(...)`.
|
|
103
|
+
*/
|
|
104
|
+
export type GenerateClientConfig = Partial<GenerateClientOptions>;
|
|
102
105
|
export type GenerateClientResult = {
|
|
103
106
|
/** The `--output` anchor path (the entry file in multi-file modes). */
|
|
104
107
|
outputPath: string;
|
package/lib/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEjG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEzE,MAAM,MAAM,qBAAqB,GAAG;IAClC,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEjG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEzE,MAAM,MAAM,qBAAqB,GAAG;IAClC,wFAAwF;IACxF,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC/B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;sFACkF;IAClF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gHAAgH;IAChH,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC/B;;4CAEwC;IACxC,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAElE,MAAM,MAAM,oBAAoB,GAAG;IACjC,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,cAAc,CAAC;IACzB,mFAAmF;IACnF,OAAO,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;CACxC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@redocly/client-generator",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"description": "Generate typed, zero-dependency TypeScript clients (fetch, auth, retries, middleware, SSE) from OpenAPI descriptions.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
"import": "./lib/index.js",
|
|
12
12
|
"default": "./lib/index.js"
|
|
13
13
|
},
|
|
14
|
+
"./generate": {
|
|
15
|
+
"types": "./lib/generate.d.ts",
|
|
16
|
+
"import": "./lib/generate.js",
|
|
17
|
+
"default": "./lib/generate.js"
|
|
18
|
+
},
|
|
14
19
|
"./package.json": "./package.json"
|
|
15
20
|
},
|
|
16
21
|
"engines": {
|
|
@@ -45,11 +50,16 @@
|
|
|
45
50
|
"Roman Marshevskyi <roman.marshevskyy@redocly.com> (https://redocly.com/)"
|
|
46
51
|
],
|
|
47
52
|
"dependencies": {
|
|
48
|
-
"@redocly/openapi-core": "2.
|
|
53
|
+
"@redocly/openapi-core": "2.42.0"
|
|
49
54
|
},
|
|
50
55
|
"peerDependencies": {
|
|
51
56
|
"typescript": ">=5.5.0"
|
|
52
57
|
},
|
|
58
|
+
"peerDependenciesMeta": {
|
|
59
|
+
"typescript": {
|
|
60
|
+
"optional": true
|
|
61
|
+
}
|
|
62
|
+
},
|
|
53
63
|
"devDependencies": {
|
|
54
64
|
"typescript": "6.0.2"
|
|
55
65
|
},
|
package/lib/config.d.ts
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import type { ArgsStyle } from './emitters/emit-options.js';
|
|
2
|
-
import type { PaginationConfig } from './emitters/pagination.js';
|
|
3
|
-
import type { CustomGenerator, OutputMode } from './generators/types.js';
|
|
4
|
-
/**
|
|
5
|
-
* The user-facing generation config: the options `generateClient()` accepts, plus the
|
|
6
|
-
* `generators` list. Annotate a standalone config object with `satisfies Config` for
|
|
7
|
-
* type-safe authoring. The CLI merges a `redocly.yaml` `client` block into this shape
|
|
8
|
-
* via `mergeConfig` (see config-file.ts).
|
|
9
|
-
*/
|
|
10
|
-
export type Config = {
|
|
11
|
-
/** Path or URL to the OpenAPI document (or an `apis:` alias from `redocly.yaml`). */
|
|
12
|
-
api: string;
|
|
13
|
-
/** Output anchor path (a `.ts` file; multi-file modes derive siblings from it). */
|
|
14
|
-
output: string;
|
|
15
|
-
/** File partitioning. Defaults to `single`. */
|
|
16
|
-
outputMode?: OutputMode;
|
|
17
|
-
/** How inputs are passed. Defaults to `flat`. */
|
|
18
|
-
argsStyle?: ArgsStyle;
|
|
19
|
-
/** Override the inlined base URL (else derived from `servers[0].url`). */
|
|
20
|
-
serverUrl?: string;
|
|
21
|
-
/** Named-enum emission. Defaults to `const-object`. */
|
|
22
|
-
enumStyle?: 'union' | 'const-object';
|
|
23
|
-
/** Error-handling shape of the generated client. `'throw'` (default) throws `ApiError`
|
|
24
|
-
* on non-2xx; `'result'` returns a discriminated `{ data, error, response }`. */
|
|
25
|
-
errorMode?: 'throw' | 'result';
|
|
26
|
-
/** How `date-time`/`date` string fields are typed. `'string'` (default) keeps the
|
|
27
|
-
* ISO wire shape; `'Date'` emits a `Date` reference (pair with the `transformers`
|
|
28
|
-
* generator so the runtime value matches). */
|
|
29
|
-
dateType?: 'string' | 'Date';
|
|
30
|
-
/** TanStack Query adapter the `tanstack-query` generator imports from
|
|
31
|
-
* (`@tanstack/${queryFramework}-query`). Defaults to `react`; only the import
|
|
32
|
-
* specifier changes. */
|
|
33
|
-
queryFramework?: 'react' | 'vue' | 'svelte' | 'solid';
|
|
34
|
-
/** How the `mock` generator produces data. `'baked'` (default) inlines deterministic
|
|
35
|
-
* literals (zero-dep); `'faker'` emits `@faker-js/faker` calls for realistic data
|
|
36
|
-
* (the consumer adds `@faker-js/faker` as a dev-dep). */
|
|
37
|
-
mockData?: 'baked' | 'faker';
|
|
38
|
-
/** Seed for faker-mode mocks: emits `faker.seed(<n>)` so runs reproduce. Baked mode ignores it. */
|
|
39
|
-
mockSeed?: number;
|
|
40
|
-
/**
|
|
41
|
-
* Generators to run, in order. Defaults to `['sdk']`. Each entry is a built-in name, the `name`
|
|
42
|
-
* of an inline `customGenerators` entry, or an import specifier (path or package) for a plugin.
|
|
43
|
-
*/
|
|
44
|
-
generators?: string[];
|
|
45
|
-
/**
|
|
46
|
-
* Inline custom generators (the experimental plugin API), registered so they can be selected in
|
|
47
|
-
* `generators` by `name`. Authored with `defineGenerator` from `@redocly/client-generator`.
|
|
48
|
-
*/
|
|
49
|
-
customGenerators?: CustomGenerator[];
|
|
50
|
-
/**
|
|
51
|
-
* Path to a publisher setup module (`export default defineClientSetup({ config, middleware })`)
|
|
52
|
-
* baked into the generated client, so a published SDK ships its request/response defaults built
|
|
53
|
-
* in. Resolved against the config dir. Works across all output modes.
|
|
54
|
-
*/
|
|
55
|
-
setup?: string;
|
|
56
|
-
/** Runtime distribution: 'inline' (default, self-contained) | 'package' (imports @redocly/client-generator). */
|
|
57
|
-
runtime?: 'inline' | 'package';
|
|
58
|
-
/** Auto-pagination rules (convention + per-operation overrides + `exclude`), resolved
|
|
59
|
-
* together with each operation's `x-pagination` extension. Explicit rules that don't
|
|
60
|
-
* fit their operation fail generation. */
|
|
61
|
-
pagination?: PaginationConfig;
|
|
62
|
-
};
|
|
63
|
-
//# sourceMappingURL=config.d.ts.map
|
package/lib/config.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEzE;;;;;GAKG;AACH,MAAM,MAAM,MAAM,GAAG;IACnB,qFAAqF;IACrF,GAAG,EAAE,MAAM,CAAC;IACZ,mFAAmF;IACnF,MAAM,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,iDAAiD;IACjD,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,SAAS,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC;IACrC;qFACiF;IACjF,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC/B;;kDAE8C;IAC9C,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC7B;;4BAEwB;IACxB,cAAc,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IACtD;;6DAEyD;IACzD,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC7B,mGAAmG;IACnG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gHAAgH;IAChH,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC/B;;8CAE0C;IAC1C,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B,CAAC"}
|
package/lib/config.js
DELETED
package/lib/config.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":""}
|
package/lib/emitters/client.d.ts
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import type { ApiModel } from '../intermediate-representation/model.js';
|
|
2
|
-
import type { ArgsStyle } from './operations.js';
|
|
3
|
-
import type { PaginationConfig } from './pagination.js';
|
|
4
|
-
import type { DateType, EnumStyle } from './types.js';
|
|
5
|
-
export type { ArgsStyle } from './operations.js';
|
|
6
|
-
/** The generated-by banner prepended to every emitted module. */
|
|
7
|
-
export declare const HEADER = "// Generated by @redocly/client-generator \u2014 do not edit by hand.\n// Source: OpenAPI document. Re-run `redocly generate-client` to update.";
|
|
8
|
-
export type EmitOptions = {
|
|
9
|
-
/**
|
|
10
|
-
* Override the server URL baked into the generated client config. When omitted,
|
|
11
|
-
* the value is derived from `servers[0].url` in the source OpenAPI document.
|
|
12
|
-
*/
|
|
13
|
-
serverUrl?: string;
|
|
14
|
-
/**
|
|
15
|
-
* How named string enums are emitted:
|
|
16
|
-
* - `'union'`: only the string-literal union type (`type X = "a" | "b"`).
|
|
17
|
-
* - `'const-object'` (default): the union type *and* a sibling
|
|
18
|
-
* `export const X = { a: "a", b: "b" } as const;` so callers can reference
|
|
19
|
-
* the values at runtime (`X.a`).
|
|
20
|
-
*/
|
|
21
|
-
enumStyle?: EnumStyle;
|
|
22
|
-
/**
|
|
23
|
-
* How operation inputs are passed to each call. Defaults to `'flat'`;
|
|
24
|
-
* `'grouped'` bundles inputs into a single `args` object.
|
|
25
|
-
*/
|
|
26
|
-
argsStyle?: ArgsStyle;
|
|
27
|
-
/** Error-handling shape of the generated client. Defaults to `'throw'`. */
|
|
28
|
-
errorMode?: 'throw' | 'result';
|
|
29
|
-
/**
|
|
30
|
-
* How `format: date-time`/`date` string fields are typed. `'string'` (default)
|
|
31
|
-
* keeps the ISO wire shape; `'Date'` emits a `Date` reference. Opt-in — pair with
|
|
32
|
-
* the `transformers` generator so the runtime value matches the type.
|
|
33
|
-
*/
|
|
34
|
-
dateType?: DateType;
|
|
35
|
-
/**
|
|
36
|
-
* TanStack Query adapter the generated module imports from
|
|
37
|
-
* (`@tanstack/${queryFramework}-query`). Defaults to `'react'`; the emitted body
|
|
38
|
-
* is byte-identical across frameworks — only the import specifier changes.
|
|
39
|
-
*/
|
|
40
|
-
queryFramework?: 'react' | 'vue' | 'svelte' | 'solid';
|
|
41
|
-
/**
|
|
42
|
-
* How the `mock` generator produces data. `'baked'` (default) inlines deterministic
|
|
43
|
-
* literals (zero-dep, contract-faithful); `'faker'` emits `@faker-js/faker` calls for
|
|
44
|
-
* realistic data — reproducible when `mockSeed` is set. Only the mock module is affected.
|
|
45
|
-
*/
|
|
46
|
-
mockData?: 'baked' | 'faker';
|
|
47
|
-
/** Seed for faker-mode mocks: emits a top-level `faker.seed(<n>)` so runs reproduce. */
|
|
48
|
-
mockSeed?: number;
|
|
49
|
-
/**
|
|
50
|
-
* A pre-baked publisher setup block (from `bakeSetup`) merged into the client's config
|
|
51
|
-
* via `mergeSetup`. Absent when no `--setup` is given.
|
|
52
|
-
*/
|
|
53
|
-
setup?: string;
|
|
54
|
-
/** Runtime distribution: 'inline' (default, self-contained) | 'package' (imports @redocly/client-generator). */
|
|
55
|
-
runtime?: 'inline' | 'package';
|
|
56
|
-
/**
|
|
57
|
-
* Auto-pagination rules (a convention rule + per-operation overrides + `exclude`),
|
|
58
|
-
* resolved together with each operation's `x-pagination` extension. Verified
|
|
59
|
-
* statically: an explicit rule that doesn't fit its operation fails generation.
|
|
60
|
-
*/
|
|
61
|
-
pagination?: PaginationConfig;
|
|
62
|
-
};
|
|
63
|
-
/**
|
|
64
|
-
* Assemble file content from a header banner and a printed body: the leading
|
|
65
|
-
* `// Generated by …` comment and the `/** title */` block are structural
|
|
66
|
-
* banners (not part of the printed AST), prepended with blank-line separation.
|
|
67
|
-
* Trailing newline mirrors a hand-authored file.
|
|
68
|
-
*/
|
|
69
|
-
export declare function banner(sections: string[]): string;
|
|
70
|
-
export declare function renderTitleComment(model: ApiModel): string;
|
|
71
|
-
//# sourceMappingURL=client.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/emitters/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAItD,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,iEAAiE;AACjE,eAAO,MAAM,MAAM,oJACwD,CAAC;AAE5E,MAAM,MAAM,WAAW,GAAG;IACxB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IACtD;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC7B,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gHAAgH;IAChH,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC/B;;;;OAIG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAEjD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAY1D"}
|
package/lib/emitters/client.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { splitLines } from './support.js';
|
|
2
|
-
import { escapeJsDoc } from './ts.js';
|
|
3
|
-
/** The generated-by banner prepended to every emitted module. */
|
|
4
|
-
export const HEADER = `// Generated by @redocly/client-generator — do not edit by hand.
|
|
5
|
-
// Source: OpenAPI document. Re-run \`redocly generate-client\` to update.`;
|
|
6
|
-
/**
|
|
7
|
-
* Assemble file content from a header banner and a printed body: the leading
|
|
8
|
-
* `// Generated by …` comment and the `/** title */` block are structural
|
|
9
|
-
* banners (not part of the printed AST), prepended with blank-line separation.
|
|
10
|
-
* Trailing newline mirrors a hand-authored file.
|
|
11
|
-
*/
|
|
12
|
-
export function banner(sections) {
|
|
13
|
-
return sections.filter((s) => s.length > 0).join('\n\n') + '\n';
|
|
14
|
-
}
|
|
15
|
-
export function renderTitleComment(model) {
|
|
16
|
-
// This banner is a raw string (it does not flow through `jsdoc()`), so escape
|
|
17
|
-
// `*/` here too — `info.title`/`info.description` are attacker-controllable and
|
|
18
|
-
// would otherwise close the comment and inject code at the top of every file.
|
|
19
|
-
const lines = [`/**`, ` * ${escapeJsDoc(`${model.title} (v${model.version})`)}`];
|
|
20
|
-
if (model.description) {
|
|
21
|
-
for (const line of splitLines(escapeJsDoc(model.description))) {
|
|
22
|
-
lines.push(` * ${line}`);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
lines.push(' */');
|
|
26
|
-
return lines.join('\n');
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/emitters/client.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAOtC,iEAAiE;AACjE,MAAM,CAAC,MAAM,MAAM,GAAG;2EACqD,CAAC;AA0D5E;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAC,QAAkB;IACvC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAe;IAChD,8EAA8E;IAC9E,gFAAgF;IAChF,8EAA8E;IAC9E,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,MAAM,WAAW,CAAC,GAAG,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC;IACjF,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YAC9D,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { ApiModel } from '../intermediate-representation/model.js';
|
|
2
|
-
import { type EmitOptions } from './client.js';
|
|
3
|
-
export declare function emitClientSingleFile(model: ApiModel, options?: EmitOptions): string;
|
|
4
|
-
/**
|
|
5
|
-
* `split` mode: the same client with the schema types + type guards carved out into a
|
|
6
|
-
* sibling `<stem>.schemas.ts`. The entry file re-exports the schemas module
|
|
7
|
-
* (`export *`) and type-imports exactly the schema names its own code references, so
|
|
8
|
-
* both files hold under `noUnusedLocals`. `schemas` is absent when the document
|
|
9
|
-
* declares no schema statements (the entry is then self-contained).
|
|
10
|
-
*/
|
|
11
|
-
export declare function emitClientSplit(model: ApiModel, options: EmitOptions, stem: string): {
|
|
12
|
-
entry: string;
|
|
13
|
-
schemas?: string;
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=package-client.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"package-client.d.ts","sourceRoot":"","sources":["../../src/emitters/package-client.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,QAAQ,EAGT,MAAM,yCAAyC,CAAC;AAGjD,OAAO,EAAU,KAAK,WAAW,EAA8B,MAAM,aAAa,CAAC;AAqCnF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,GAAE,WAAgB,GAAG,MAAM,CAEvF;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,QAAQ,EACf,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,MAAM,GACX;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAErC"}
|