@sdk-it/typescript 0.20.0 → 0.22.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 +3 -3
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1086 -1136
- package/dist/index.js.map +4 -4
- package/dist/lib/client.d.ts.map +1 -1
- package/dist/lib/emitters/interface.d.ts +4 -18
- package/dist/lib/emitters/interface.d.ts.map +1 -1
- package/dist/lib/emitters/snippet.d.ts +24 -0
- package/dist/lib/emitters/snippet.d.ts.map +1 -0
- package/dist/lib/emitters/zod.d.ts +1 -8
- package/dist/lib/emitters/zod.d.ts.map +1 -1
- package/dist/lib/generate.d.ts +5 -18
- package/dist/lib/generate.d.ts.map +1 -1
- package/dist/lib/generator.d.ts +5 -8
- package/dist/lib/generator.d.ts.map +1 -1
- package/dist/lib/options.d.ts +27 -0
- package/dist/lib/options.d.ts.map +1 -0
- package/dist/lib/sdk.d.ts +8 -6
- package/dist/lib/sdk.d.ts.map +1 -1
- package/dist/lib/status-map.d.ts +3 -0
- package/dist/lib/status-map.d.ts.map +1 -0
- package/dist/lib/statusMap.d.ts +2 -0
- package/dist/lib/statusMap.d.ts.map +1 -0
- package/dist/lib/style.d.ts +2 -1
- package/dist/lib/style.d.ts.map +1 -1
- package/dist/lib/typescript-snippet.d.ts +20 -0
- package/dist/lib/typescript-snippet.d.ts.map +1 -0
- package/dist/lib/utils.d.ts +2 -2
- package/dist/lib/utils.d.ts.map +1 -1
- package/package.json +4 -4
- package/dist/lib/readme.d.ts +0 -19
- package/dist/lib/readme.d.ts.map +0 -1
package/dist/lib/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/lib/client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;yBAExB,MAAM,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK;AAA5D,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/lib/client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;yBAExB,MAAM,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK;AAA5D,wBAyIE"}
|
|
@@ -1,29 +1,16 @@
|
|
|
1
1
|
import type { OpenAPIObject, ReferenceObject, SchemaObject } from 'openapi3-ts/oas31';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Convert an OpenAPI (JSON Schema style) object into TypeScript interfaces,
|
|
5
|
-
*/
|
|
6
|
-
export declare class TypeScriptDeserialzer {
|
|
2
|
+
export declare class TypeScriptEmitter {
|
|
7
3
|
#private;
|
|
8
|
-
|
|
9
|
-
constructor(spec: OpenAPIObject, onRef: OnRefCallback);
|
|
10
|
-
/**
|
|
11
|
-
* Handle objects (properties)
|
|
12
|
-
*/
|
|
4
|
+
constructor(spec: OpenAPIObject);
|
|
13
5
|
object(schema: SchemaObject, required?: boolean): string;
|
|
14
|
-
/**
|
|
15
|
-
* Handle arrays (items could be a single schema or a tuple)
|
|
16
|
-
*/
|
|
17
|
-
array(schema: SchemaObject, required?: boolean): string;
|
|
18
6
|
/**
|
|
19
7
|
* Convert a basic type (string | number | boolean | object | array, etc.) to TypeScript
|
|
20
8
|
*/
|
|
21
9
|
normal(type: string, schema: SchemaObject, required?: boolean): string;
|
|
22
|
-
ref($ref: string, required: boolean): string;
|
|
23
10
|
allOf(schemas: (SchemaObject | ReferenceObject)[]): string;
|
|
24
|
-
anyOf(schemas: (SchemaObject | ReferenceObject)[], required: boolean): string;
|
|
25
11
|
oneOf(schemas: (SchemaObject | ReferenceObject)[], required: boolean): string;
|
|
26
|
-
|
|
12
|
+
anyOf(schemas: (SchemaObject | ReferenceObject)[], required: boolean): string;
|
|
13
|
+
enum(values: unknown[], required: boolean): string;
|
|
27
14
|
/**
|
|
28
15
|
* Handle string type with formats
|
|
29
16
|
*/
|
|
@@ -34,5 +21,4 @@ export declare class TypeScriptDeserialzer {
|
|
|
34
21
|
number(schema: SchemaObject, required?: boolean): string;
|
|
35
22
|
handle(schema: SchemaObject | ReferenceObject, required: boolean): string;
|
|
36
23
|
}
|
|
37
|
-
export {};
|
|
38
24
|
//# sourceMappingURL=interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/lib/emitters/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,YAAY,EACb,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/lib/emitters/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,YAAY,EACb,MAAM,mBAAmB,CAAC;AAK3B,qBAAa,iBAAiB;;gBAGhB,IAAI,EAAE,aAAa;IAO/B,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,UAAQ,GAAG,MAAM;IA0CtD;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,UAAQ,GAAG,MAAM;IAgCpE,KAAK,CAAC,OAAO,EAAE,CAAC,YAAY,GAAG,eAAe,CAAC,EAAE,GAAG,MAAM;IAM1D,KAAK,CACH,OAAO,EAAE,CAAC,YAAY,GAAG,eAAe,CAAC,EAAE,EAC3C,QAAQ,EAAE,OAAO,GAChB,MAAM;IAQT,KAAK,CACH,OAAO,EAAE,CAAC,YAAY,GAAG,eAAe,CAAC,EAAE,EAC3C,QAAQ,EAAE,OAAO,GAChB,MAAM;IAIT,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM;IAQlD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM;IA2BxD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM;IAKxD,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,eAAe,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM;CA8D1E"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { OpenAPIObject, ReferenceObject, SchemaObject } from 'openapi3-ts/oas31';
|
|
2
|
+
/**
|
|
3
|
+
* Generate example values for OpenAPI schemas
|
|
4
|
+
* This emitter creates sample input payloads for API documentation and code snippets
|
|
5
|
+
*/
|
|
6
|
+
export declare class SnippetEmitter {
|
|
7
|
+
private spec;
|
|
8
|
+
generatedRefs: Set<string>;
|
|
9
|
+
private cache;
|
|
10
|
+
constructor(spec: OpenAPIObject);
|
|
11
|
+
object(schema: SchemaObject | ReferenceObject): Record<string, unknown>;
|
|
12
|
+
array(schema: SchemaObject | ReferenceObject): unknown[];
|
|
13
|
+
string(schema: SchemaObject): string;
|
|
14
|
+
number(schema: SchemaObject): number;
|
|
15
|
+
boolean(schema: SchemaObject): boolean;
|
|
16
|
+
null(): null;
|
|
17
|
+
ref($ref: string): unknown;
|
|
18
|
+
allOf(schemas: (SchemaObject | ReferenceObject)[]): unknown;
|
|
19
|
+
anyOf(schemas: (SchemaObject | ReferenceObject)[]): unknown;
|
|
20
|
+
oneOf(schemas: (SchemaObject | ReferenceObject)[]): unknown;
|
|
21
|
+
enum(schema: SchemaObject): unknown;
|
|
22
|
+
handle(schemaOrRef: SchemaObject | ReferenceObject): unknown;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=snippet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snippet.d.ts","sourceRoot":"","sources":["../../../src/lib/emitters/snippet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,YAAY,EACb,MAAM,mBAAmB,CAAC;AAI3B;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,IAAI,CAAgB;IACrB,aAAa,cAAqB;IACzC,OAAO,CAAC,KAAK,CAA8B;gBAE/B,IAAI,EAAE,aAAa;IAIxB,MAAM,CACX,MAAM,EAAE,YAAY,GAAG,eAAe,GACrC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAmCnB,KAAK,CAAC,MAAM,EAAE,YAAY,GAAG,eAAe,GAAG,OAAO,EAAE;IAmBxD,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM;IAoCpC,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM;IAgCpC,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO;IAMtC,IAAI,IAAI,IAAI;IAIZ,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAiB1B,KAAK,CAAC,OAAO,EAAE,CAAC,YAAY,GAAG,eAAe,CAAC,EAAE,GAAG,OAAO;IAW3D,KAAK,CAAC,OAAO,EAAE,CAAC,YAAY,GAAG,eAAe,CAAC,EAAE,GAAG,OAAO;IAK3D,KAAK,CAAC,OAAO,EAAE,CAAC,YAAY,GAAG,eAAe,CAAC,EAAE,GAAG,OAAO;IAK3D,IAAI,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO;IAMnC,MAAM,CAAC,WAAW,EAAE,YAAY,GAAG,eAAe,GAAG,OAAO;CAiEpE"}
|
|
@@ -4,25 +4,18 @@ type OnRefCallback = (ref: string, content: string) => void;
|
|
|
4
4
|
* Convert an OpenAPI (JSON Schema style) object into a Zod schema string,
|
|
5
5
|
* adapted for OpenAPI 3.1 (fully aligned with JSON Schema 2020-12).
|
|
6
6
|
*/
|
|
7
|
-
export declare class
|
|
7
|
+
export declare class ZodEmitter {
|
|
8
8
|
#private;
|
|
9
|
-
generatedRefs: Set<string>;
|
|
10
9
|
constructor(spec: OpenAPIObject, onRef?: OnRefCallback);
|
|
11
10
|
/**
|
|
12
11
|
* Handle objects (properties, additionalProperties).
|
|
13
12
|
*/
|
|
14
13
|
object(schema: SchemaObject): string;
|
|
15
|
-
/**
|
|
16
|
-
* Handle arrays (items could be a single schema or a tuple (array of schemas)).
|
|
17
|
-
* In JSON Schema 2020-12, `items` can be an array → tuple style.
|
|
18
|
-
*/
|
|
19
|
-
array(schema: SchemaObject, required?: boolean): string;
|
|
20
14
|
/**
|
|
21
15
|
* Convert a basic type (string | number | boolean | object | array, etc.) to Zod.
|
|
22
16
|
* We'll also handle .optional() if needed.
|
|
23
17
|
*/
|
|
24
18
|
normal(type: string, schema: SchemaObject, required?: boolean, nullable?: boolean): string;
|
|
25
|
-
ref($ref: string, required: boolean): string;
|
|
26
19
|
allOf(schemas: (SchemaObject | ReferenceObject)[], required: boolean): string;
|
|
27
20
|
anyOf(schemas: (SchemaObject | ReferenceObject)[], required: boolean): string;
|
|
28
21
|
oneOf(schemas: (SchemaObject | ReferenceObject)[], required: boolean): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zod.d.ts","sourceRoot":"","sources":["../../../src/lib/emitters/zod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,YAAY,EACb,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"zod.d.ts","sourceRoot":"","sources":["../../../src/lib/emitters/zod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,YAAY,EACb,MAAM,mBAAmB,CAAC;AAK3B,KAAK,aAAa,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAE5D;;;GAGG;AACH,qBAAa,UAAU;;gBAKT,IAAI,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,aAAa;IAItD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM;IAwDpC;;;OAGG;IACH,MAAM,CACJ,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,YAAY,EACpB,QAAQ,UAAQ,EAChB,QAAQ,UAAQ,GACf,MAAM;IAmDT,KAAK,CAAC,OAAO,EAAE,CAAC,YAAY,GAAG,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO;IAWpE,KAAK,CAAC,OAAO,EAAE,CAAC,YAAY,GAAG,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO;IAQpE,KAAK,CAAC,OAAO,EAAE,CAAC,YAAY,GAAG,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO;IAQpE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE;IAYhC;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM;IA6DpC;;;;OAIG;IACH,MAAM,CAAC,MAAM,EAAE,YAAY;;;;IAmD3B,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,eAAe,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM;CAiE1E"}
|
package/dist/lib/generate.d.ts
CHANGED
|
@@ -1,20 +1,7 @@
|
|
|
1
|
-
import { npmRunPathEnv } from 'npm-run-path';
|
|
2
1
|
import type { OpenAPIObject } from 'openapi3-ts/oas31';
|
|
3
|
-
import type {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
useTsExtension?: boolean;
|
|
9
|
-
name?: string;
|
|
10
|
-
/**
|
|
11
|
-
* full: generate a full project including package.json and tsconfig.json. useful for monorepo/workspaces
|
|
12
|
-
* minimal: generate only the client sdk
|
|
13
|
-
*/
|
|
14
|
-
mode?: 'full' | 'minimal';
|
|
15
|
-
formatCode?: (options: {
|
|
16
|
-
output: string;
|
|
17
|
-
env: ReturnType<typeof npmRunPathEnv>;
|
|
18
|
-
}) => void | Promise<void>;
|
|
19
|
-
}): Promise<void>;
|
|
2
|
+
import type { TypeScriptGeneratorOptions } from './options.ts';
|
|
3
|
+
import type { Operation } from './sdk.ts';
|
|
4
|
+
import { type MakeImportFn } from './utils.ts';
|
|
5
|
+
export declare function generate(openapi: OpenAPIObject, settings: TypeScriptGeneratorOptions): Promise<void>;
|
|
6
|
+
export declare function toInputs(operationsSet: Record<string, Operation[]>, commonZod: Map<string, string>, makeImport: MakeImportFn): any;
|
|
20
7
|
//# sourceMappingURL=generate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/lib/generate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/lib/generate.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AA4BvD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAI/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,YAAY,CAAC;AAiClE,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,0BAA0B,iBA6OrC;AA6CD,wBAAgB,QAAQ,CACtB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,EAC1C,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,UAAU,EAAE,YAAY,OAsDzB"}
|
package/dist/lib/generator.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type OurOpenAPIObject } from '@sdk-it/spec';
|
|
2
2
|
import { type Operation } from './sdk.ts';
|
|
3
|
+
import type { Style } from './style.ts';
|
|
3
4
|
export interface NamedImport {
|
|
4
5
|
name: string;
|
|
5
6
|
alias?: string;
|
|
@@ -12,21 +13,17 @@ export interface Import {
|
|
|
12
13
|
namedImports: NamedImport[];
|
|
13
14
|
namespaceImport: string | undefined;
|
|
14
15
|
}
|
|
15
|
-
export declare function generateCode(config:
|
|
16
|
+
export declare function generateCode(config: {
|
|
16
17
|
/**
|
|
17
18
|
* No support for jsdoc in vscode
|
|
18
19
|
* @issue https://github.com/microsoft/TypeScript/issues/38106
|
|
19
20
|
*/
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
outputType?: 'default' | 'status';
|
|
23
|
-
};
|
|
21
|
+
spec: OurOpenAPIObject;
|
|
22
|
+
style: Style;
|
|
24
23
|
makeImport: (module: string) => string;
|
|
25
24
|
}): {
|
|
26
25
|
groups: Record<string, Operation[]>;
|
|
27
|
-
commonSchemas: Record<string, string>;
|
|
28
26
|
commonZod: Map<string, string>;
|
|
29
|
-
outputs: Record<string, string>;
|
|
30
27
|
endpoints: any;
|
|
31
28
|
};
|
|
32
29
|
//# sourceMappingURL=generator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/lib/generator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/lib/generator.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,gBAAgB,EAAoB,MAAM,cAAc,CAAC;AAGvE,OAAO,EACL,KAAK,SAAS,EAIf,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAIxC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB;AACD,MAAM,WAAW,MAAM;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE;IACnC;;;OAGG;IACH,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CACxC;;;;EAmNA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { npmRunPathEnv } from 'npm-run-path';
|
|
2
|
+
import { type ReadFolderFn, type Writer } from '@sdk-it/core/file-system.js';
|
|
3
|
+
import type { Style } from './style.ts';
|
|
4
|
+
export interface TypeScriptGeneratorOptions {
|
|
5
|
+
readme?: boolean;
|
|
6
|
+
style?: Style;
|
|
7
|
+
output: string;
|
|
8
|
+
useTsExtension?: boolean;
|
|
9
|
+
name?: string;
|
|
10
|
+
writer?: Writer;
|
|
11
|
+
readFolder?: ReadFolderFn;
|
|
12
|
+
/**
|
|
13
|
+
* full: generate a full project including package.json and tsconfig.json. useful for monorepo/workspaces
|
|
14
|
+
* minimal: generate only the client sdk
|
|
15
|
+
*/
|
|
16
|
+
mode?: 'full' | 'minimal';
|
|
17
|
+
formatCode?: (options: {
|
|
18
|
+
output: string;
|
|
19
|
+
env: ReturnType<typeof npmRunPathEnv>;
|
|
20
|
+
}) => void | Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* Whether to remove files that were previously generated but no longer needed
|
|
23
|
+
* @default true
|
|
24
|
+
*/
|
|
25
|
+
cleanup?: boolean;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/lib/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAE7E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,MAAM,WAAW,0BAA0B;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;KACvC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
|
package/dist/lib/sdk.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import type { OpenAPIObject
|
|
1
|
+
import type { OpenAPIObject } from 'openapi3-ts/oas31';
|
|
2
|
+
import { type TunedOperationObject } from '@sdk-it/spec';
|
|
3
|
+
import type { Style } from './style.ts';
|
|
2
4
|
import { type Import, type MakeImportFn } from './utils.ts';
|
|
3
5
|
export type Parser = 'chunked' | 'buffered';
|
|
4
6
|
export interface SdkConfig {
|
|
@@ -7,7 +9,7 @@ export interface SdkConfig {
|
|
|
7
9
|
*/
|
|
8
10
|
name: string;
|
|
9
11
|
packageName?: string;
|
|
10
|
-
options?: Record<string,
|
|
12
|
+
options?: Record<string, unknown>;
|
|
11
13
|
emptyBodyAsNull?: boolean;
|
|
12
14
|
stripBodyFromGetAndHead?: boolean;
|
|
13
15
|
output: string;
|
|
@@ -30,15 +32,15 @@ export interface OperationInput {
|
|
|
30
32
|
}
|
|
31
33
|
export interface Operation {
|
|
32
34
|
name: string;
|
|
33
|
-
|
|
34
|
-
|
|
35
|
+
method: string;
|
|
36
|
+
path: string;
|
|
35
37
|
schemas: Record<string, string>;
|
|
36
38
|
inputs: Record<string, OperationInput>;
|
|
37
39
|
outgoingContentType?: string;
|
|
38
40
|
}
|
|
39
|
-
export declare function
|
|
40
|
-
export declare function toEndpoint(groupName: string, spec: OpenAPIObject, specOperation: OperationObject, operation: Operation, utils: {
|
|
41
|
+
export declare function toEndpoint(groupName: string, spec: OpenAPIObject, specOperation: TunedOperationObject, operation: Operation, utils: {
|
|
41
42
|
makeImport: MakeImportFn;
|
|
43
|
+
style?: Style;
|
|
42
44
|
}): {
|
|
43
45
|
responses: {
|
|
44
46
|
schemas: Record<string, string>;
|
package/dist/lib/sdk.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/lib/sdk.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/lib/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,mBAAmB,CAAC;AAIvE,OAAO,EAEL,KAAK,oBAAoB,EAO1B,MAAM,cAAc,CAAC;AAItB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAE5D,MAAM,MAAM,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAE5C,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,OAAO,GAAG,MAAM,CAC1B,MAAM,EACN;IACE,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CACF,CAAC;AACF,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACxC,UAAU,EAAE,YAAY,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACvC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,aAAa,EACnB,aAAa,EAAE,oBAAoB,EACnC,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE;IACL,UAAU,EAAE,YAAY,CAAC;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;;;;;;kBA6MwB,MAAM;oBAAU,MAAM;0BAAgB,MAAM;;;;;EAnItE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-map.d.ts","sourceRoot":"","sources":["../../src/lib/status-map.ts"],"names":[],"mappings":"wBAuBK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;AAvB3B,wBAuB4B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"statusMap.d.ts","sourceRoot":"","sources":["../../src/lib/statusMap.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAuBnD,CAAC"}
|
package/dist/lib/style.d.ts
CHANGED
package/dist/lib/style.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../src/lib/style.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,UAAU,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../src/lib/style.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAC/C,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type OperationEntry, type OurOpenAPIObject, type TunedOperationObject } from '@sdk-it/spec';
|
|
2
|
+
import type { TypeScriptGeneratorOptions } from './options.ts';
|
|
3
|
+
export declare class TypeScriptGenerator {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(spec: OurOpenAPIObject, settings: TypeScriptGeneratorOptions);
|
|
6
|
+
succinct(entry: OperationEntry, operation: TunedOperationObject, values: {
|
|
7
|
+
requestBody?: Record<string, unknown>;
|
|
8
|
+
pathParameters?: Record<string, unknown>;
|
|
9
|
+
queryParameters?: Record<string, unknown>;
|
|
10
|
+
headers?: Record<string, unknown>;
|
|
11
|
+
cookies?: Record<string, unknown>;
|
|
12
|
+
}): {
|
|
13
|
+
content: string;
|
|
14
|
+
footer: string;
|
|
15
|
+
};
|
|
16
|
+
snippet(entry: OperationEntry, operation: TunedOperationObject, config?: Record<string, unknown>): string;
|
|
17
|
+
client(): string;
|
|
18
|
+
}
|
|
19
|
+
export declare function generateSnippet(spec: OurOpenAPIObject, settings: TypeScriptGeneratorOptions, entry: OperationEntry, operation: TunedOperationObject, config?: Record<string, unknown>): string;
|
|
20
|
+
//# sourceMappingURL=typescript-snippet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-snippet.d.ts","sourceRoot":"","sources":["../../src/lib/typescript-snippet.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAG1B,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAE/D,qBAAa,mBAAmB;;gBAMlB,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,0BAA0B;IAaxE,QAAQ,CACN,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,oBAAoB,EAC/B,MAAM,EAAE;QACN,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACzC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC;;;;IAmIH,OAAO,CACL,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,oBAAoB,EAC/B,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAyBtC,MAAM;CAaP;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,gBAAgB,EACtB,QAAQ,EAAE,0BAA0B,EACpC,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,oBAAoB,EAC/B,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACnC,MAAM,CAGR"}
|
package/dist/lib/utils.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { ComponentsObject, SecurityRequirementObject } from 'openapi3-ts/oas31';
|
|
1
|
+
import type { ComponentsObject, OpenAPIObject, SecurityRequirementObject } from 'openapi3-ts/oas31';
|
|
2
2
|
import { type Options } from './sdk.ts';
|
|
3
|
-
export declare function securityToOptions(security: SecurityRequirementObject[], securitySchemes: ComponentsObject['securitySchemes'], staticIn?: string): Options;
|
|
3
|
+
export declare function securityToOptions(spec: OpenAPIObject, security: SecurityRequirementObject[], securitySchemes: ComponentsObject['securitySchemes'], staticIn?: string): Options;
|
|
4
4
|
export declare function mergeImports(...imports: Import[]): Import[];
|
|
5
5
|
export interface Import {
|
|
6
6
|
isTypeOnly?: boolean;
|
package/dist/lib/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AAExC,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,yBAAyB,EAAE,EACrC,eAAe,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,EACpD,QAAQ,CAAC,EAAE,MAAM,WAsClB;AAED,wBAAgB,YAAY,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,YAsBhD;AAED,MAAM,WAAW,MAAM;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AACD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,eAAe,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,YAenD;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAEvD;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,YAe/D;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,eAAe,EAAE,MAAM,KAAK,MAAM,CAAC"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACb,yBAAyB,EAC1B,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AAExC,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,yBAAyB,EAAE,EACrC,eAAe,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,EACpD,QAAQ,CAAC,EAAE,MAAM,WAsClB;AAED,wBAAgB,YAAY,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,YAsBhD;AAED,MAAM,WAAW,MAAM;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AACD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,eAAe,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,YAenD;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAEvD;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,YAe/D;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,eAAe,EAAE,MAAM,KAAK,MAAM,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sdk-it/typescript",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.22.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -21,12 +21,12 @@
|
|
|
21
21
|
"!**/*.tsbuildinfo"
|
|
22
22
|
],
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@sdk-it/core": "0.
|
|
24
|
+
"@sdk-it/core": "0.22.0",
|
|
25
25
|
"openapi3-ts": "^4.4.0",
|
|
26
26
|
"stringcase": "^4.3.1",
|
|
27
27
|
"lodash-es": "^4.17.21",
|
|
28
28
|
"npm-run-path": "6.0.0",
|
|
29
|
-
"
|
|
30
|
-
"@sdk-it/
|
|
29
|
+
"@sdk-it/spec": "0.22.0",
|
|
30
|
+
"@sdk-it/readme": "0.22.0"
|
|
31
31
|
}
|
|
32
32
|
}
|
package/dist/lib/readme.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { OpenAPIObject, ReferenceObject, RequestBodyObject, SchemaObject } from 'openapi3-ts/oas31';
|
|
2
|
-
/**
|
|
3
|
-
* PropEmitter handles converting OpenAPI schemas to Markdown documentation
|
|
4
|
-
* Similar structure to ZodDeserializer but for generating markdown props documentation
|
|
5
|
-
*/
|
|
6
|
-
export declare class PropEmitter {
|
|
7
|
-
#private;
|
|
8
|
-
constructor(spec: OpenAPIObject);
|
|
9
|
-
/**
|
|
10
|
-
* Handle schemas by resolving references and delegating to appropriate handler
|
|
11
|
-
*/
|
|
12
|
-
handle(schemaOrRef: SchemaObject | ReferenceObject): string[];
|
|
13
|
-
/**
|
|
14
|
-
* Process a request body and return markdown documentation
|
|
15
|
-
*/
|
|
16
|
-
requestBody(requestBody?: RequestBodyObject | ReferenceObject): string[];
|
|
17
|
-
}
|
|
18
|
-
export declare function toReadme(spec: OpenAPIObject): string;
|
|
19
|
-
//# sourceMappingURL=readme.d.ts.map
|
package/dist/lib/readme.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"readme.d.ts","sourceRoot":"","sources":["../../src/lib/readme.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,YAAY,EACb,MAAM,mBAAmB,CAAC;AAK3B;;;GAGG;AACH,qBAAa,WAAW;;gBAGV,IAAI,EAAE,aAAa;IAqO/B;;OAEG;IACI,MAAM,CAAC,WAAW,EAAE,YAAY,GAAG,eAAe,GAAG,MAAM,EAAE;IAsEpE;;OAEG;IACH,WAAW,CAAC,WAAW,CAAC,EAAE,iBAAiB,GAAG,eAAe,GAAG,MAAM,EAAE;CAiCzE;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,aAAa,UAgC3C"}
|