@sdk-it/spec 0.21.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/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2629 -2
- package/dist/index.js.map +4 -4
- package/dist/lib/find-polymorphic-varients.d.ts +15 -0
- package/dist/lib/find-polymorphic-varients.d.ts.map +1 -0
- package/dist/lib/find-polymorphic-varients.test.d.ts +2 -0
- package/dist/lib/find-polymorphic-varients.test.d.ts.map +1 -0
- package/dist/lib/find-unique-schema-name.d.ts +3 -0
- package/dist/lib/find-unique-schema-name.d.ts.map +1 -0
- package/dist/lib/format-name.d.ts +2 -0
- package/dist/lib/format-name.d.ts.map +1 -0
- package/dist/lib/get-ref-usage.d.ts +3 -0
- package/dist/lib/get-ref-usage.d.ts.map +1 -0
- package/dist/lib/is-primitive-schema.d.ts +3 -0
- package/dist/lib/is-primitive-schema.d.ts.map +1 -0
- package/dist/lib/loaders/load-spec.d.ts.map +1 -1
- package/dist/lib/loaders/postman/postman-converter.d.ts.map +1 -1
- package/dist/lib/metadata.d.ts +22 -0
- package/dist/lib/metadata.d.ts.map +1 -0
- package/dist/lib/operation.d.ts +62 -18
- package/dist/lib/operation.d.ts.map +1 -1
- package/dist/lib/pagination/pagination-result.d.ts.map +1 -1
- package/dist/lib/pagination/pagination.d.ts +1 -1
- package/dist/lib/pagination/pagination.d.ts.map +1 -1
- package/dist/lib/security.d.ts +10 -0
- package/dist/lib/security.d.ts.map +1 -0
- package/dist/lib/sidebar.d.ts +2 -2
- package/dist/lib/sidebar.d.ts.map +1 -1
- package/dist/lib/tune.d.ts +11 -0
- package/dist/lib/tune.d.ts.map +1 -0
- package/dist/lib/tune.test.d.ts +2 -0
- package/dist/lib/tune.test.d.ts.map +1 -0
- package/package.json +8 -4
- package/dist/lib/loaders/load-spec.js +0 -27
- package/dist/lib/loaders/load-spec.js.map +0 -7
- package/dist/lib/loaders/local-loader.js +0 -20
- package/dist/lib/loaders/local-loader.js.map +0 -7
- package/dist/lib/loaders/postman/postman-converter.js +0 -486
- package/dist/lib/loaders/postman/postman-converter.js.map +0 -7
- package/dist/lib/loaders/postman/spec-types.js +0 -1
- package/dist/lib/loaders/postman/spec-types.js.map +0 -7
- package/dist/lib/loaders/remote-loader.js +0 -29
- package/dist/lib/loaders/remote-loader.js.map +0 -7
- package/dist/lib/operation.js +0 -425
- package/dist/lib/operation.js.map +0 -7
- package/dist/lib/operation.test.js +0 -261
- package/dist/lib/operation.test.js.map +0 -7
- package/dist/lib/pagination/pagination-result.js +0 -237
- package/dist/lib/pagination/pagination-result.js.map +0 -7
- package/dist/lib/pagination/pagination-result.test.js +0 -548
- package/dist/lib/pagination/pagination-result.test.js.map +0 -7
- package/dist/lib/pagination/pagination.js +0 -199
- package/dist/lib/pagination/pagination.js.map +0 -7
- package/dist/lib/pagination/pagination.test.js +0 -380
- package/dist/lib/pagination/pagination.test.js.map +0 -7
- package/dist/lib/sidebar.js +0 -81
- package/dist/lib/sidebar.js.map +0 -7
package/dist/lib/operation.d.ts
CHANGED
|
@@ -1,25 +1,16 @@
|
|
|
1
|
-
import type { ComponentsObject, OpenAPIObject, OperationObject,
|
|
2
|
-
import { type PaginationGuess } from './pagination/pagination.
|
|
3
|
-
export declare function augmentSpec(config: GenerateSdkConfig):
|
|
4
|
-
paths: PathsObject;
|
|
5
|
-
openapi: string;
|
|
6
|
-
info: import("openapi3-ts/oas31").InfoObject;
|
|
7
|
-
servers?: import("openapi3-ts/oas31").ServerObject[];
|
|
8
|
-
components?: ComponentsObject;
|
|
9
|
-
security?: SecurityRequirementObject[];
|
|
10
|
-
tags?: import("openapi3-ts/oas31").TagObject[];
|
|
11
|
-
externalDocs?: import("openapi3-ts/oas31").ExternalDocumentationObject;
|
|
12
|
-
webhooks?: PathsObject;
|
|
13
|
-
};
|
|
1
|
+
import type { ComponentsObject, MediaTypeObject, OpenAPIObject, OperationObject, ParameterObject, PathsObject, ReferenceObject, RequestBodyObject, ResponseObject, SchemaObject, SecurityRequirementObject, SecuritySchemeObject } from 'openapi3-ts/oas31';
|
|
2
|
+
import { type PaginationGuess } from './pagination/pagination.ts';
|
|
3
|
+
export declare function augmentSpec(config: GenerateSdkConfig, verbose?: boolean): OurOpenAPIObject;
|
|
14
4
|
export type OperationPagination = PaginationGuess & {
|
|
15
5
|
items: string;
|
|
16
6
|
};
|
|
17
7
|
export declare const defaults: Partial<GenerateSdkConfig> & Required<Pick<GenerateSdkConfig, 'operationId' | 'tag'>>;
|
|
18
|
-
export type TunedOperationObject = Omit<OperationObject, 'operationId' | 'parameters' | 'responses'> & {
|
|
8
|
+
export type TunedOperationObject = Omit<OperationObject, 'operationId' | 'tags' | 'parameters' | 'responses' | 'requestBody'> & {
|
|
9
|
+
tags: string[];
|
|
19
10
|
operationId: string;
|
|
20
11
|
parameters: ParameterObject[];
|
|
21
12
|
responses: Record<string, ResponseObject>;
|
|
22
|
-
requestBody:
|
|
13
|
+
requestBody: OurRequestBodyObject;
|
|
23
14
|
};
|
|
24
15
|
export interface OperationEntry {
|
|
25
16
|
name?: string;
|
|
@@ -32,12 +23,25 @@ export type Operation = {
|
|
|
32
23
|
entry: OperationEntry;
|
|
33
24
|
operation: TunedOperationObject;
|
|
34
25
|
};
|
|
35
|
-
export declare function forEachOperation<T>(
|
|
26
|
+
export declare function forEachOperation<T>(spec: OurOpenAPIObject, callback: (entry: OperationEntry, operation: TunedOperationObject) => T): T[];
|
|
27
|
+
interface ResponsesConfig {
|
|
28
|
+
flattenErrorResponses?: boolean;
|
|
29
|
+
}
|
|
36
30
|
export interface GenerateSdkConfig {
|
|
37
31
|
spec: OpenAPIObject;
|
|
32
|
+
responses?: ResponsesConfig;
|
|
38
33
|
operationId?: (operation: OperationObject, path: string, method: string) => string;
|
|
39
34
|
tag?: (operation: OperationObject, path: string) => string;
|
|
40
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Sanitizes a potential tag name (assumed to be already camelCased)
|
|
38
|
+
* to avoid conflicts with reserved keywords or invalid starting characters (numbers).
|
|
39
|
+
* Appends an underscore if the tag matches a reserved keyword.
|
|
40
|
+
* Prepends an underscore if the tag starts with a number.
|
|
41
|
+
* @param tag The potential tag name, already camelCased.
|
|
42
|
+
* @returns The sanitized tag name.
|
|
43
|
+
*/
|
|
44
|
+
export declare function sanitizeTag(tag: string): string;
|
|
41
45
|
/**
|
|
42
46
|
* Attempts to determine a generic tag for an OpenAPI operation based on path and operationId.
|
|
43
47
|
* Rules and fallbacks are documented within the code.
|
|
@@ -47,6 +51,7 @@ export interface GenerateSdkConfig {
|
|
|
47
51
|
*/
|
|
48
52
|
export declare function determineGenericTag(pathString: string, operation: OperationObject): string;
|
|
49
53
|
export declare function parseJsonContentType(contentType: string | null | undefined): string | null;
|
|
54
|
+
export declare function isTextContentType(contentType: string | null | undefined): boolean;
|
|
50
55
|
/**
|
|
51
56
|
* Checks if a given content type string represents Server-Sent Events (SSE).
|
|
52
57
|
* Handles case-insensitivity, parameters (like charset), and leading/trailing whitespace.
|
|
@@ -57,6 +62,45 @@ export declare function parseJsonContentType(contentType: string | null | undefi
|
|
|
57
62
|
export declare function isSseContentType(contentType: string | null | undefined): boolean;
|
|
58
63
|
export declare function isStreamingContentType(contentType: string | null | undefined): boolean;
|
|
59
64
|
export declare function isSuccessStatusCode(statusCode: number | string): boolean;
|
|
60
|
-
export declare function
|
|
61
|
-
export declare function
|
|
65
|
+
export declare function isErrorStatusCode(statusCode: number | string): boolean;
|
|
66
|
+
export declare function patchParameters(spec: OurOpenAPIObject, schema: SchemaObject, parameters: ParameterObject[], security: SecurityRequirementObject[]): void;
|
|
67
|
+
export declare function createOperation(options: {
|
|
68
|
+
name: string;
|
|
69
|
+
group: string;
|
|
70
|
+
security?: string[];
|
|
71
|
+
parameters?: {
|
|
72
|
+
query?: Record<string, {
|
|
73
|
+
schema: SchemaObject;
|
|
74
|
+
required?: boolean;
|
|
75
|
+
}>;
|
|
76
|
+
path?: Record<string, {
|
|
77
|
+
schema: SchemaObject;
|
|
78
|
+
required?: boolean;
|
|
79
|
+
}>;
|
|
80
|
+
header?: Record<string, {
|
|
81
|
+
schema: SchemaObject;
|
|
82
|
+
required?: boolean;
|
|
83
|
+
}>;
|
|
84
|
+
cookie?: Record<string, {
|
|
85
|
+
schema: SchemaObject;
|
|
86
|
+
required?: boolean;
|
|
87
|
+
}>;
|
|
88
|
+
};
|
|
89
|
+
response: Record<string, SchemaObject | Record<string, SchemaObject>>;
|
|
90
|
+
request?: Record<string, ReferenceObject>;
|
|
91
|
+
}): TunedOperationObject;
|
|
92
|
+
export interface OurOpenAPIObject extends OpenAPIObject {
|
|
93
|
+
'x-sdk-augmented'?: boolean;
|
|
94
|
+
components: Omit<ComponentsObject, 'schemas'> & {
|
|
95
|
+
schemas: Record<string, SchemaObject | ReferenceObject>;
|
|
96
|
+
securitySchemes: Record<string, SecuritySchemeObject | ReferenceObject>;
|
|
97
|
+
};
|
|
98
|
+
paths: PathsObject;
|
|
99
|
+
}
|
|
100
|
+
export interface OurRequestBodyObject extends RequestBodyObject {
|
|
101
|
+
content: Record<string, Omit<MediaTypeObject, 'schema'> & {
|
|
102
|
+
schema: ReferenceObject;
|
|
103
|
+
}>;
|
|
104
|
+
}
|
|
105
|
+
export {};
|
|
62
106
|
//# sourceMappingURL=operation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../src/lib/operation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,
|
|
1
|
+
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../src/lib/operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination-result.d.ts","sourceRoot":"","sources":["../../../src/lib/pagination/pagination-result.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAoHrE;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,MAAM,GAAG,IAAI,CAmFf;
|
|
1
|
+
{"version":3,"file":"pagination-result.d.ts","sourceRoot":"","sources":["../../../src/lib/pagination/pagination-result.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAoHrE;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,MAAM,GAAG,IAAI,CAmFf;AAmFD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAevE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../src/lib/pagination/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../src/lib/pagination/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,YAAY,EAEb,MAAM,mBAAmB,CAAC;AAK3B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAG5D,UAAU,oBAAoB;IAC5B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;CAC7C;AAED,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAClE,IAAI,EAAE,QAAQ,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAClE,IAAI,EAAE,QAAQ,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAmB,SAAQ,oBAAoB;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,eAAe,GACvB,CAAC,CACG,sBAAsB,GACtB,oBAAoB,GACpB,sBAAsB,CACzB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GACvC,kBAAkB,CAAC;AAIvB,eAAO,MAAM,oBAAoB,EAAE,MAAM,EAKxC,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,MAAM,EAU/C,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MAAM,EAMvC,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,MAAM,EAUrC,CAAC;AAGF,eAAO,MAAM,cAAc,EAAE,MAAM,EAWlC,CAAC;AAGF,eAAO,MAAM,oBAAoB,EAAE,MAAM,EAUxC,CAAC;AA4IF;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,oBAAoB,EAC/B,IAAI,CAAC,EAAE,YAAY,EACnB,QAAQ,CAAC,EAAE,YAAY,GACtB,eAAe,CAqCjB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { OpenAPIObject, ParameterLocation, ParameterObject, ReferenceObject, SecurityRequirementObject, SecuritySchemeObject } from 'openapi3-ts/oas31';
|
|
2
|
+
import type { OurOpenAPIObject } from './operation.ts';
|
|
3
|
+
type OIn = ParameterLocation | 'input';
|
|
4
|
+
type OurParameter = Omit<ParameterObject, 'in'> & {
|
|
5
|
+
in: OIn;
|
|
6
|
+
};
|
|
7
|
+
export declare function securityToOptions(spec: OpenAPIObject, security: SecurityRequirementObject[], securitySchemes: Record<string, SecuritySchemeObject | ReferenceObject>, staticIn?: OIn): OurParameter[];
|
|
8
|
+
export declare function security(spec: OurOpenAPIObject): OurParameter[];
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=security.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../src/lib/security.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAK3B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,KAAK,GAAG,GAAG,iBAAiB,GAAG,OAAO,CAAC;AACvC,KAAK,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,GAAG;IAChD,EAAE,EAAE,GAAG,CAAC;CACT,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,yBAAyB,EAAE,EACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,GAAG,eAAe,CAAC,EACvE,QAAQ,CAAC,EAAE,GAAG,kBA2Cf;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,gBAAgB,kBA4B9C"}
|
package/dist/lib/sidebar.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type OurOpenAPIObject } from './operation.js';
|
|
2
2
|
export type ChildNavItem = {
|
|
3
3
|
id: string;
|
|
4
4
|
title: string;
|
|
@@ -17,7 +17,7 @@ export type CategoryItem = {
|
|
|
17
17
|
items: NavItem[];
|
|
18
18
|
};
|
|
19
19
|
export type SidebarData = CategoryItem[];
|
|
20
|
-
export declare function toSidebar(spec:
|
|
20
|
+
export declare function toSidebar(spec: OurOpenAPIObject): SidebarData;
|
|
21
21
|
export interface XOaiMeta {
|
|
22
22
|
navigationGroups: NavigationGroup[];
|
|
23
23
|
groups: Group[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../src/lib/sidebar.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../src/lib/sidebar.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,gBAAgB,CAAC;AAExB,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,EAAE,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,YAAY,EAAE,CAAC;AAyCzC,wBAAgB,SAAS,CAAC,IAAI,EAAE,gBAAgB,eAuC/C;AAED,MAAM,WAAW,QAAQ;IACvB,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ReferenceObject, SchemaObject, SchemaObjectType } from 'openapi3-ts/oas31';
|
|
2
|
+
import type { OurOpenAPIObject } from './operation.ts';
|
|
3
|
+
export declare function fixSpec(spec: OurOpenAPIObject, schemas: (SchemaObject | ReferenceObject)[], visited?: Set<string>): void;
|
|
4
|
+
type Refs = {
|
|
5
|
+
name: string;
|
|
6
|
+
value: SchemaObject;
|
|
7
|
+
}[];
|
|
8
|
+
export declare function expandSpec(spec: OurOpenAPIObject, schemas: Record<string, SchemaObject | ReferenceObject>, refs: Refs): void;
|
|
9
|
+
export declare function coerceTypes(schema: SchemaObject, excludeNull?: boolean): SchemaObjectType[];
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=tune.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tune.d.ts","sourceRoot":"","sources":["../../src/lib/tune.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,eAAe,EACf,YAAY,EACZ,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAe3B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,wBAAgB,OAAO,CACrB,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,CAAC,YAAY,GAAG,eAAe,CAAC,EAAE,EAC3C,OAAO,cAAoB,QA6J5B;AAED,KAAK,IAAI,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,EAAE,CAAC;AAEpD,wBAAgB,UAAU,CACxB,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,eAAe,CAAC,EACvD,IAAI,EAAE,IAAI,QAoJX;AA0CD,wBAAgB,WAAW,CACzB,MAAM,EAAE,YAAY,EACpB,WAAW,UAAO,GACjB,gBAAgB,EAAE,CAUpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tune.test.d.ts","sourceRoot":"","sources":["../../src/lib/tune.test.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sdk-it/spec",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.22.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -26,10 +26,14 @@
|
|
|
26
26
|
"!**/*.tsbuildinfo"
|
|
27
27
|
],
|
|
28
28
|
"dependencies": {
|
|
29
|
+
"@sdk-it/core": "0.22.0",
|
|
29
30
|
"openapi3-ts": "4.4.0",
|
|
30
|
-
"
|
|
31
|
+
"pluralize": "^8.0.0",
|
|
31
32
|
"stringcase": "^4.3.1",
|
|
32
|
-
"
|
|
33
|
-
"
|
|
33
|
+
"yaml": "^2.7.0",
|
|
34
|
+
"fast-content-type-parse": "^3.0.0",
|
|
35
|
+
"lodash-es": "^4.17.21",
|
|
36
|
+
"debug": "^4.4.1",
|
|
37
|
+
"micromatch": "4.0.8"
|
|
34
38
|
}
|
|
35
39
|
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { augmentSpec } from "../operation.js";
|
|
2
|
-
import { loadLocal } from "./local-loader.js";
|
|
3
|
-
import { convertPostmanToOpenAPI } from "./postman/postman-converter.js";
|
|
4
|
-
import { loadRemote } from "./remote-loader.js";
|
|
5
|
-
function isPostman(content) {
|
|
6
|
-
return typeof content === "object" && content !== null && "info" in content && typeof content.info === "object" && content.info !== null && "item" in content && Array.isArray(content.item) && "schema" in content.info && typeof content.info.schema === "string" && content.info.schema.includes("//schema.getpostman.com/");
|
|
7
|
-
}
|
|
8
|
-
async function loadSpec(location) {
|
|
9
|
-
let content = await loadFile(location);
|
|
10
|
-
if (isPostman(content)) {
|
|
11
|
-
content = convertPostmanToOpenAPI(content);
|
|
12
|
-
}
|
|
13
|
-
const spec = content;
|
|
14
|
-
return "x-sdk-augmented" in spec ? spec : augmentSpec({ spec });
|
|
15
|
-
}
|
|
16
|
-
function loadFile(location) {
|
|
17
|
-
const [protocol] = location.split(":");
|
|
18
|
-
if (protocol === "http" || protocol === "https") {
|
|
19
|
-
return loadRemote(location);
|
|
20
|
-
}
|
|
21
|
-
return loadLocal(location);
|
|
22
|
-
}
|
|
23
|
-
export {
|
|
24
|
-
loadFile,
|
|
25
|
-
loadSpec
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=load-spec.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/lib/loaders/load-spec.ts"],
|
|
4
|
-
"sourcesContent": ["import type { OpenAPIObject } from 'openapi3-ts/oas31';\n\nimport { augmentSpec } from '../operation.js';\nimport { loadLocal } from './local-loader.js';\nimport { convertPostmanToOpenAPI } from './postman/postman-converter.js';\nimport type { PostmanCollection } from './postman/spec-types.js';\nimport { loadRemote } from './remote-loader.js';\n\nfunction isPostman(content: unknown): content is PostmanCollection {\n return (\n typeof content === 'object' &&\n content !== null &&\n 'info' in content &&\n typeof content.info === 'object' &&\n content.info !== null &&\n 'item' in content &&\n Array.isArray(content.item) &&\n 'schema' in content.info &&\n typeof content.info.schema === 'string' &&\n content.info.schema.includes('//schema.getpostman.com/')\n );\n}\nexport async function loadSpec(location: string): Promise<OpenAPIObject> {\n let content = await loadFile(location);\n if (isPostman(content)) {\n content = convertPostmanToOpenAPI(content);\n }\n const spec = content as OpenAPIObject;\n return 'x-sdk-augmented' in spec ? spec : augmentSpec({ spec });\n}\n\nexport function loadFile<T>(location: string): Promise<T> {\n const [protocol] = location.split(':');\n if (protocol === 'http' || protocol === 'https') {\n return loadRemote(location);\n }\n return loadLocal(location);\n}\n"],
|
|
5
|
-
"mappings": "AAEA,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,+BAA+B;AAExC,SAAS,kBAAkB;AAE3B,SAAS,UAAU,SAAgD;AACjE,SACE,OAAO,YAAY,YACnB,YAAY,QACZ,UAAU,WACV,OAAO,QAAQ,SAAS,YACxB,QAAQ,SAAS,QACjB,UAAU,WACV,MAAM,QAAQ,QAAQ,IAAI,KAC1B,YAAY,QAAQ,QACpB,OAAO,QAAQ,KAAK,WAAW,YAC/B,QAAQ,KAAK,OAAO,SAAS,0BAA0B;AAE3D;AACA,eAAsB,SAAS,UAA0C;AACvE,MAAI,UAAU,MAAM,SAAS,QAAQ;AACrC,MAAI,UAAU,OAAO,GAAG;AACtB,cAAU,wBAAwB,OAAO;AAAA,EAC3C;AACA,QAAM,OAAO;AACb,SAAO,qBAAqB,OAAO,OAAO,YAAY,EAAE,KAAK,CAAC;AAChE;AAEO,SAAS,SAAY,UAA8B;AACxD,QAAM,CAAC,QAAQ,IAAI,SAAS,MAAM,GAAG;AACrC,MAAI,aAAa,UAAU,aAAa,SAAS;AAC/C,WAAO,WAAW,QAAQ;AAAA,EAC5B;AACA,SAAO,UAAU,QAAQ;AAC3B;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { readFile } from "node:fs/promises";
|
|
2
|
-
import { extname } from "node:path";
|
|
3
|
-
import { parse } from "yaml";
|
|
4
|
-
async function loadLocal(location) {
|
|
5
|
-
const extName = extname(location);
|
|
6
|
-
const text = await readFile(location, "utf-8");
|
|
7
|
-
switch (extName) {
|
|
8
|
-
case ".json":
|
|
9
|
-
return JSON.parse(text);
|
|
10
|
-
case ".yaml":
|
|
11
|
-
case ".yml":
|
|
12
|
-
return parse(text);
|
|
13
|
-
default:
|
|
14
|
-
throw new Error(`Unsupported file extension: ${extName}`);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
export {
|
|
18
|
-
loadLocal
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=local-loader.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/lib/loaders/local-loader.ts"],
|
|
4
|
-
"sourcesContent": ["import { readFile } from 'node:fs/promises';\nimport { extname } from 'node:path';\nimport { parse } from 'yaml';\n\nexport async function loadLocal(location: string) {\n const extName = extname(location);\n const text = await readFile(location, 'utf-8');\n switch (extName) {\n case '.json':\n return JSON.parse(text);\n case '.yaml':\n case '.yml':\n return parse(text);\n default:\n throw new Error(`Unsupported file extension: ${extName}`);\n }\n}\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,gBAAgB;AACzB,SAAS,eAAe;AACxB,SAAS,aAAa;AAEtB,eAAsB,UAAU,UAAkB;AAChD,QAAM,UAAU,QAAQ,QAAQ;AAChC,QAAM,OAAO,MAAM,SAAS,UAAU,OAAO;AAC7C,UAAQ,SAAS;AAAA,IACf,KAAK;AACH,aAAO,KAAK,MAAM,IAAI;AAAA,IACxB,KAAK;AAAA,IACL,KAAK;AACH,aAAO,MAAM,IAAI;AAAA,IACnB;AACE,YAAM,IAAI,MAAM,+BAA+B,OAAO,EAAE;AAAA,EAC5D;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|