@goast/typescript 0.3.7 → 0.3.8
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/assets/client/angular/request-builder.ts +1 -1
- package/cjs/lib/ast/references/typescript.js +2 -1
- package/cjs/lib/generators/models/model-generator.js +8 -2
- package/esm/lib/ast/references/typescript.js +1 -0
- package/esm/lib/generators/models/model-generator.js +8 -2
- package/package.json +1 -1
- package/types/lib/ast/references/typescript.d.ts +6 -0
- package/types/lib/generators/models/model-generator.d.ts +2 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.instanceType = exports.returnType = exports.parameters = exports.nonNullable = exports.extract = exports.exclude = exports.omit = exports.pick = exports.required = exports.partial = exports.readonly = exports.readonlyArray = exports.promise = exports.set = exports.map = exports.record = exports.array = exports.null_ = exports.undefined_ = exports.object = exports.symbol = exports.bigint = exports.boolean = exports.string = exports.number = exports.never = exports.void_ = exports.unknown = exports.any = void 0;
|
|
3
|
+
exports.blob = exports.instanceType = exports.returnType = exports.parameters = exports.nonNullable = exports.extract = exports.exclude = exports.omit = exports.pick = exports.required = exports.partial = exports.readonly = exports.readonlyArray = exports.promise = exports.set = exports.map = exports.record = exports.array = exports.null_ = exports.undefined_ = exports.object = exports.symbol = exports.bigint = exports.boolean = exports.string = exports.number = exports.never = exports.void_ = exports.unknown = exports.any = void 0;
|
|
4
4
|
const reference_1 = require("../nodes/reference");
|
|
5
5
|
exports.any = reference_1.tsReference.factory('any');
|
|
6
6
|
exports.unknown = reference_1.tsReference.factory('unknown');
|
|
@@ -31,3 +31,4 @@ exports.nonNullable = reference_1.tsReference.genericFactory('NonNullable');
|
|
|
31
31
|
exports.parameters = reference_1.tsReference.genericFactory('Parameters');
|
|
32
32
|
exports.returnType = reference_1.tsReference.genericFactory('ReturnType');
|
|
33
33
|
exports.instanceType = reference_1.tsReference.genericFactory('InstanceType');
|
|
34
|
+
exports.blob = reference_1.tsReference.factory('Blob');
|
|
@@ -203,7 +203,7 @@ class DefaultTypeScriptModelGenerator extends file_generator_1.TypeScriptFileGen
|
|
|
203
203
|
case 'number':
|
|
204
204
|
return 'number';
|
|
205
205
|
case 'string':
|
|
206
|
-
return
|
|
206
|
+
return this.getStringType(ctx, schema);
|
|
207
207
|
case 'null':
|
|
208
208
|
return 'null';
|
|
209
209
|
case 'unknown':
|
|
@@ -222,6 +222,12 @@ class DefaultTypeScriptModelGenerator extends file_generator_1.TypeScriptFileGen
|
|
|
222
222
|
return this.getAnyType(ctx);
|
|
223
223
|
}
|
|
224
224
|
}
|
|
225
|
+
getStringType(ctx, schema) {
|
|
226
|
+
if (schema.format === 'binary') {
|
|
227
|
+
return ast_1.ts.refs.blob();
|
|
228
|
+
}
|
|
229
|
+
return 'string';
|
|
230
|
+
}
|
|
225
231
|
getArrayType(ctx, schema) {
|
|
226
232
|
var _a;
|
|
227
233
|
return ast_1.ts.arrayType((_a = this.getType(ctx, schema.items)) !== null && _a !== void 0 ? _a : this.getAnyType(ctx), {
|
|
@@ -290,7 +296,7 @@ class DefaultTypeScriptModelGenerator extends file_generator_1.TypeScriptFileGen
|
|
|
290
296
|
return ast_1.ts.unionType(schema.type.map((x) => {
|
|
291
297
|
switch (x) {
|
|
292
298
|
case 'string':
|
|
293
|
-
return
|
|
299
|
+
return this.getStringType(ctx, schema);
|
|
294
300
|
case 'number':
|
|
295
301
|
case 'integer':
|
|
296
302
|
return 'number';
|
|
@@ -28,3 +28,4 @@ export const nonNullable = tsReference.genericFactory('NonNullable');
|
|
|
28
28
|
export const parameters = tsReference.genericFactory('Parameters');
|
|
29
29
|
export const returnType = tsReference.genericFactory('ReturnType');
|
|
30
30
|
export const instanceType = tsReference.genericFactory('InstanceType');
|
|
31
|
+
export const blob = tsReference.factory('Blob');
|
|
@@ -200,7 +200,7 @@ export class DefaultTypeScriptModelGenerator extends TypeScriptFileGenerator {
|
|
|
200
200
|
case 'number':
|
|
201
201
|
return 'number';
|
|
202
202
|
case 'string':
|
|
203
|
-
return
|
|
203
|
+
return this.getStringType(ctx, schema);
|
|
204
204
|
case 'null':
|
|
205
205
|
return 'null';
|
|
206
206
|
case 'unknown':
|
|
@@ -219,6 +219,12 @@ export class DefaultTypeScriptModelGenerator extends TypeScriptFileGenerator {
|
|
|
219
219
|
return this.getAnyType(ctx);
|
|
220
220
|
}
|
|
221
221
|
}
|
|
222
|
+
getStringType(ctx, schema) {
|
|
223
|
+
if (schema.format === 'binary') {
|
|
224
|
+
return ts.refs.blob();
|
|
225
|
+
}
|
|
226
|
+
return 'string';
|
|
227
|
+
}
|
|
222
228
|
getArrayType(ctx, schema) {
|
|
223
229
|
var _a;
|
|
224
230
|
return ts.arrayType((_a = this.getType(ctx, schema.items)) !== null && _a !== void 0 ? _a : this.getAnyType(ctx), {
|
|
@@ -287,7 +293,7 @@ export class DefaultTypeScriptModelGenerator extends TypeScriptFileGenerator {
|
|
|
287
293
|
return ts.unionType(schema.type.map((x) => {
|
|
288
294
|
switch (x) {
|
|
289
295
|
case 'string':
|
|
290
|
-
return
|
|
296
|
+
return this.getStringType(ctx, schema);
|
|
291
297
|
case 'number':
|
|
292
298
|
case 'integer':
|
|
293
299
|
return 'number';
|
package/package.json
CHANGED
|
@@ -189,3 +189,9 @@ export declare const instanceType: (<TBuilder extends import("@goast/core").Sour
|
|
|
189
189
|
moduleNameOrfilePath: import("@goast/core").Nullable<string>;
|
|
190
190
|
infer: <TBuilder extends import("@goast/core").SourceBuilder>() => import("../nodes/reference").TsReference<TBuilder, never>;
|
|
191
191
|
};
|
|
192
|
+
export declare const blob: (<TBuilder extends import("@goast/core").SourceBuilder>(options?: {
|
|
193
|
+
importType?: import("@goast/core").Nullable<import("../../common-results").TypeScriptImportType>;
|
|
194
|
+
}) => import("../nodes/reference").TsReference<TBuilder, never>) & {
|
|
195
|
+
refName: string;
|
|
196
|
+
moduleNameOrfilePath: import("@goast/core").Nullable<string>;
|
|
197
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ApiSchema, AppendValueGroup, ArrayLikeApiSchema, CombinedLikeApiSchema, Nullable, ObjectLikeApiSchema } from '@goast/core';
|
|
1
|
+
import { ApiSchema, AppendValueGroup, ArrayLikeApiSchema, CombinedLikeApiSchema, Nullable, ObjectLikeApiSchema, StringLikeApiSchema } from '@goast/core';
|
|
2
2
|
import { TypeScriptModelGeneratorContext, TypeScriptModelGeneratorOutput } from './models';
|
|
3
3
|
import { ts } from '../../ast';
|
|
4
4
|
import { TypeScriptComponentOutputKind } from '../../common-results';
|
|
@@ -24,6 +24,7 @@ export declare class DefaultTypeScriptModelGenerator extends TypeScriptFileGener
|
|
|
24
24
|
skipSchemas?: boolean;
|
|
25
25
|
useBaseType?: boolean;
|
|
26
26
|
}): ts.Type<Builder> | null;
|
|
27
|
+
protected getStringType(ctx: Context, schema: StringLikeApiSchema): ts.Type<Builder>;
|
|
27
28
|
protected getArrayType(ctx: Context, schema: ArrayLikeApiSchema): ts.Type<Builder>;
|
|
28
29
|
protected getObjectType(ctx: Context, schema: ObjectLikeApiSchema): ts.Type<Builder>;
|
|
29
30
|
protected getDiscriminatorType(ctx: Context, schema: ApiSchema): ts.Type<Builder>;
|