@axinom/mosaic-cli 0.18.4 → 0.18.5-rc.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/commands/msg-codegen/codegen.d.ts +4 -4
- package/dist/commands/msg-codegen/codegen.js +66 -229
- package/dist/commands/msg-codegen/codegen.js.map +1 -1
- package/dist/commands/msg-codegen/presets.d.ts +21 -0
- package/dist/commands/msg-codegen/presets.js +119 -0
- package/dist/commands/msg-codegen/presets.js.map +1 -0
- package/dist/commands/msg-codegen/utils.d.ts +56 -0
- package/dist/commands/msg-codegen/utils.js +220 -0
- package/dist/commands/msg-codegen/utils.js.map +1 -0
- package/dist/commands/msg-diff/msg-diff.d.ts +3 -3
- package/dist/commands/msg-diff/msg-diff.js +28 -15
- package/dist/commands/msg-diff/msg-diff.js.map +1 -1
- package/package.json +7 -7
- package/src/commands/msg-codegen/codegen.ts +84 -248
- package/src/commands/msg-codegen/presets.ts +138 -0
- package/src/commands/msg-codegen/utils.ts +258 -0
- package/src/commands/msg-diff/msg-diff.spec.ts +44 -27
- package/src/commands/msg-diff/msg-diff.ts +48 -22
- package/src/commands/msg-diff/test-resources/0/1-asyncapi.yml +2 -2
- package/src/commands/msg-diff/test-resources/0/2-asyncapi.yml +2 -2
- package/src/commands/msg-diff/test-resources/1/1-asyncapi.yml +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AsyncAPIDocumentInterface } from '@asyncapi/parser';
|
|
2
2
|
import { MessageCodegenOptions } from './message-codegen-options';
|
|
3
3
|
/**
|
|
4
4
|
* Processes AsyncAPI document and generates Typescript classes from it.
|
|
@@ -45,19 +45,19 @@ export declare class Codegen {
|
|
|
45
45
|
* @param asyncAPIDocument - AsyncAPI Document object
|
|
46
46
|
* @param outputPath - output path for generated files
|
|
47
47
|
*/
|
|
48
|
-
exportTsModels(asyncAPIDocument:
|
|
48
|
+
exportTsModels(asyncAPIDocument: AsyncAPIDocumentInterface, outputPath: string): Promise<void>;
|
|
49
49
|
/**
|
|
50
50
|
* Export all JSON Schemas from AsyncAPI document
|
|
51
51
|
* @param asyncAPIDocument - AsyncAPI Document object
|
|
52
52
|
* @param outputPath - output path for generated files
|
|
53
53
|
*/
|
|
54
|
-
exportSchemas(asyncAPIDocument:
|
|
54
|
+
exportSchemas(asyncAPIDocument: AsyncAPIDocumentInterface, outputPath: string): Promise<void>;
|
|
55
55
|
/**
|
|
56
56
|
* Export all AsyncAPI document channels to Messaging Settings
|
|
57
57
|
* @param asyncAPIDocument - AsyncAPI Document object
|
|
58
58
|
* @param outputPath - output path for generated files
|
|
59
59
|
*/
|
|
60
|
-
exportSettings(asyncAPIDocument:
|
|
60
|
+
exportSettings(asyncAPIDocument: AsyncAPIDocumentInterface, outputPath: string): Promise<void>;
|
|
61
61
|
/**
|
|
62
62
|
* Generate Messaging Settings based on Channels data.
|
|
63
63
|
* @param serviceId - service identifier
|
|
@@ -8,6 +8,8 @@ const parser_1 = require("@asyncapi/parser");
|
|
|
8
8
|
const endent_1 = require("endent");
|
|
9
9
|
const fs = require("fs");
|
|
10
10
|
const path = require("path");
|
|
11
|
+
const presets_1 = require("./presets");
|
|
12
|
+
const utils_1 = require("./utils");
|
|
11
13
|
/**
|
|
12
14
|
* Processes AsyncAPI document and generates Typescript classes from it.
|
|
13
15
|
* Generated output:
|
|
@@ -68,15 +70,15 @@ class Codegen {
|
|
|
68
70
|
if (files.length === 0) {
|
|
69
71
|
//Calculate correct TS output related directories for barrel exports.
|
|
70
72
|
const tsDirs = dirs.map((d) => path.join(this.typesOutputRoot, path.relative(this.schemaRoot, d)));
|
|
71
|
-
const tsIndexOutPath = path.join(this.typesOutputRoot, getRelativeDir(this.schemaRoot, dir), 'index.ts');
|
|
73
|
+
const tsIndexOutPath = path.join(this.typesOutputRoot, (0, utils_1.getRelativeDir)(this.schemaRoot, dir), 'index.ts');
|
|
72
74
|
yield this.barrelExportTs([], tsDirs, tsIndexOutPath);
|
|
73
75
|
// Calculate correct JSON schema output related directories for barrel exports.
|
|
74
76
|
const schemaDirs = dirs.map((d) => path.join(this.schemasOutputRoot, path.relative(this.schemaRoot, d)));
|
|
75
|
-
const schemaIndexOutPath = path.join(this.schemasOutputRoot, getRelativeDir(this.schemaRoot, dir), 'index.ts');
|
|
77
|
+
const schemaIndexOutPath = path.join(this.schemasOutputRoot, (0, utils_1.getRelativeDir)(this.schemaRoot, dir), 'index.ts');
|
|
76
78
|
yield this.barrelExportSchema([], schemaDirs, schemaIndexOutPath);
|
|
77
79
|
// Calculate correct Message Settings output related directories for barrel exports.
|
|
78
80
|
const settingsDirs = dirs.map((d) => path.join(this.messagingSettingsOutputRoot, path.relative(this.schemaRoot, d)));
|
|
79
|
-
const messagingIndexOutPath = path.join(this.messagingSettingsOutputRoot, getRelativeDir(this.schemaRoot, dir), 'index.ts');
|
|
81
|
+
const messagingIndexOutPath = path.join(this.messagingSettingsOutputRoot, (0, utils_1.getRelativeDir)(this.schemaRoot, dir), 'index.ts');
|
|
80
82
|
yield this.barrelExportSettings([], settingsDirs, messagingIndexOutPath);
|
|
81
83
|
}
|
|
82
84
|
});
|
|
@@ -103,17 +105,22 @@ class Codegen {
|
|
|
103
105
|
*/
|
|
104
106
|
processAsyncAPIDocument(asyncApiFile) {
|
|
105
107
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
106
|
-
const
|
|
107
|
-
const
|
|
108
|
+
const parser = new parser_1.default();
|
|
109
|
+
const { document, diagnostics } = yield (0, parser_1.fromFile)(parser, asyncApiFile).parse();
|
|
110
|
+
if (document === undefined) {
|
|
111
|
+
console.error(`Failed to parse ${asyncApiFile}.`);
|
|
112
|
+
console.error(diagnostics);
|
|
113
|
+
process.exit(1);
|
|
114
|
+
}
|
|
108
115
|
//export Typescript models
|
|
109
|
-
const tsModelsOutputPath = path.join(this.typesOutputRoot, getRelativeDir(this.schemaRoot, asyncApiFile));
|
|
110
|
-
yield this.exportTsModels(
|
|
116
|
+
const tsModelsOutputPath = path.join(this.typesOutputRoot, (0, utils_1.getRelativeDir)(this.schemaRoot, asyncApiFile));
|
|
117
|
+
yield this.exportTsModels(document, tsModelsOutputPath);
|
|
111
118
|
//export JSON Schemas
|
|
112
|
-
const schemasOutputPath = path.join(this.schemasOutputRoot, getRelativeDir(this.schemaRoot, asyncApiFile));
|
|
113
|
-
yield this.exportSchemas(
|
|
119
|
+
const schemasOutputPath = path.join(this.schemasOutputRoot, (0, utils_1.getRelativeDir)(this.schemaRoot, asyncApiFile));
|
|
120
|
+
yield this.exportSchemas(document, schemasOutputPath);
|
|
114
121
|
//export message settings
|
|
115
|
-
const messagingSettingsOutputPath = path.join(this.messagingSettingsOutputRoot, getRelativeDir(this.schemaRoot, asyncApiFile));
|
|
116
|
-
yield this.exportSettings(
|
|
122
|
+
const messagingSettingsOutputPath = path.join(this.messagingSettingsOutputRoot, (0, utils_1.getRelativeDir)(this.schemaRoot, asyncApiFile));
|
|
123
|
+
yield this.exportSettings(document, messagingSettingsOutputPath);
|
|
117
124
|
});
|
|
118
125
|
}
|
|
119
126
|
/**
|
|
@@ -125,25 +132,36 @@ class Codegen {
|
|
|
125
132
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
126
133
|
const generator = new modelina_1.TypeScriptGenerator({
|
|
127
134
|
modelType: 'interface',
|
|
128
|
-
namingConvention: CustomNamingConvention,
|
|
129
135
|
enumType: 'union',
|
|
136
|
+
mapType: 'indexedObject',
|
|
137
|
+
constraints: {
|
|
138
|
+
propertyKey: (0, modelina_1.typeScriptDefaultPropertyKeyConstraints)({
|
|
139
|
+
NAMING_FORMATTER: (name) => modelina_1.FormatHelpers.toSnakeCase(name),
|
|
140
|
+
NO_RESERVED_KEYWORDS: (name) => {
|
|
141
|
+
// TODO: This is a hack to avoid reserved keywords in property names.
|
|
142
|
+
// Currently many non-reserved keywords are also being replaced: https://github.com/asyncapi/modelina/issues/1053
|
|
143
|
+
return name;
|
|
144
|
+
},
|
|
145
|
+
}),
|
|
146
|
+
},
|
|
147
|
+
// Order of presets matters!
|
|
130
148
|
presets: [
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
IMPORTS_PRESET,
|
|
149
|
+
presets_1.NULLABLE_PROPERTY_TO_UNION_PRESET,
|
|
150
|
+
presets_1.ANY_TO_UNKNOWN_PRESET,
|
|
151
|
+
presets_1.ADDITIONAL_PROPERTIES_PRESET,
|
|
152
|
+
presets_1.EXPORT_TYPES_PRESET,
|
|
153
|
+
modelina_1.TS_DESCRIPTION_PRESET,
|
|
154
|
+
presets_1.IMPORTS_PRESET,
|
|
137
155
|
],
|
|
138
156
|
});
|
|
139
|
-
let outputModels = yield
|
|
140
|
-
for (const
|
|
141
|
-
const referencedModels = yield generator.generate(
|
|
157
|
+
let outputModels = yield generator.generate(asyncAPIDocument);
|
|
158
|
+
for (const schema of asyncAPIDocument.components().schemas()) {
|
|
159
|
+
const referencedModels = yield generator.generate(schema.json());
|
|
142
160
|
outputModels = outputModels.map((om) => referencedModels.find((rm) => om.modelName === rm.modelName) || om);
|
|
143
161
|
}
|
|
144
162
|
const groupedModels = {};
|
|
145
163
|
outputModels.map((outModel) => {
|
|
146
|
-
const modelPathPrefix = getModelPathPrefix(outModel.modelName);
|
|
164
|
+
const modelPathPrefix = (0, utils_1.getModelPathPrefix)(outModel.modelName);
|
|
147
165
|
if (groupedModels[modelPathPrefix] === undefined) {
|
|
148
166
|
groupedModels[modelPathPrefix] = [];
|
|
149
167
|
}
|
|
@@ -183,8 +201,8 @@ class Codegen {
|
|
|
183
201
|
exportSchemas(asyncAPIDocument, outputPath) {
|
|
184
202
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
185
203
|
const groupedSchemas = {};
|
|
186
|
-
for (const
|
|
187
|
-
const schemaPathPrefix = getModelPathPrefix(getMessageTitle(message));
|
|
204
|
+
for (const message of asyncAPIDocument.messages()) {
|
|
205
|
+
const schemaPathPrefix = (0, utils_1.getModelPathPrefix)((0, utils_1.getMessageTitle)(message));
|
|
188
206
|
if (groupedSchemas[schemaPathPrefix] === undefined) {
|
|
189
207
|
groupedSchemas[schemaPathPrefix] = [];
|
|
190
208
|
}
|
|
@@ -202,9 +220,13 @@ class Codegen {
|
|
|
202
220
|
recursive: true,
|
|
203
221
|
});
|
|
204
222
|
for (const msg of messages) {
|
|
205
|
-
const
|
|
206
|
-
|
|
207
|
-
|
|
223
|
+
const payload = msg.payload();
|
|
224
|
+
if (payload !== undefined && payload.json() !== undefined) {
|
|
225
|
+
const filteredPayload = (0, utils_1.removeXParserProperties)(payload.json());
|
|
226
|
+
const outputSchemaPath = this.buildSchemaOutPath(groupOutPutPath, (0, utils_1.getMessageTitle)(msg));
|
|
227
|
+
yield this.bundleSchema(filteredPayload, outputSchemaPath);
|
|
228
|
+
schemaFiles.push(outputSchemaPath);
|
|
229
|
+
}
|
|
208
230
|
}
|
|
209
231
|
//generate barrel export for all model in AsyncAPI document
|
|
210
232
|
const schemasIndexOutPath = path.join(groupOutPutPath, 'index.ts');
|
|
@@ -220,24 +242,22 @@ class Codegen {
|
|
|
220
242
|
* @param outputPath - output path for generated files
|
|
221
243
|
*/
|
|
222
244
|
exportSettings(asyncAPIDocument, outputPath) {
|
|
245
|
+
var _a, _b;
|
|
223
246
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
224
|
-
const serviceTitle = getServiceTitle(asyncAPIDocument);
|
|
225
|
-
const serviceId = getServiceId(asyncAPIDocument);
|
|
247
|
+
const serviceTitle = (0, utils_1.getServiceTitle)(asyncAPIDocument);
|
|
248
|
+
const serviceId = (0, utils_1.getServiceId)(asyncAPIDocument);
|
|
226
249
|
const channelsData = [];
|
|
227
|
-
for (const
|
|
228
|
-
const
|
|
229
|
-
if (
|
|
230
|
-
const
|
|
231
|
-
const
|
|
232
|
-
|
|
233
|
-
: channel.hasPublish()
|
|
234
|
-
? channel.publish().message().payload().title()
|
|
235
|
-
: 'undefined';
|
|
250
|
+
for (const channel of asyncAPIDocument.channels()) {
|
|
251
|
+
const queueName = (_a = channel.bindings().get('amqp')) === null || _a === void 0 ? void 0 : _a.value().queue.name;
|
|
252
|
+
if (queueName !== undefined) {
|
|
253
|
+
const routingKey = channel.address();
|
|
254
|
+
const action = (0, utils_1.getChannelAction)(channel);
|
|
255
|
+
const payloadName = (_b = (0, utils_1.getPayloadTitle)(channel)) !== null && _b !== void 0 ? _b : 'undefined';
|
|
236
256
|
channelsData.push({
|
|
237
|
-
routingKey
|
|
238
|
-
queueName
|
|
239
|
-
payloadName
|
|
240
|
-
acceptedAction:
|
|
257
|
+
routingKey,
|
|
258
|
+
queueName,
|
|
259
|
+
payloadName,
|
|
260
|
+
acceptedAction: action,
|
|
241
261
|
isMultiTenant: routingKey.includes('*.*'),
|
|
242
262
|
});
|
|
243
263
|
}
|
|
@@ -369,18 +389,18 @@ class Codegen {
|
|
|
369
389
|
const file = files[0];
|
|
370
390
|
schemaEnum = (0, endent_1.default) `
|
|
371
391
|
export enum MessageEnvelopeSchema {
|
|
372
|
-
MessageEnvelope = '${toPosixPath(this.tsPathToSchemaPath(file))}'
|
|
392
|
+
MessageEnvelope = '${(0, utils_1.toPosixPath)(this.tsPathToSchemaPath(file))}'
|
|
373
393
|
}
|
|
374
394
|
`;
|
|
375
395
|
}
|
|
376
396
|
else {
|
|
377
|
-
let enumNameBase = modelina_1.FormatHelpers.toPascalCase(getRelativeDir(this.typesOutputRoot, path.dirname(outPath)));
|
|
397
|
+
let enumNameBase = modelina_1.FormatHelpers.toPascalCase((0, utils_1.getRelativeDir)(this.typesOutputRoot, path.dirname(outPath)));
|
|
378
398
|
if (!enumNameBase.includes('Types')) {
|
|
379
399
|
enumNameBase = enumNameBase.replace('Payloads', ''); // Remove the Payloads prefix to reduce noise
|
|
380
400
|
schemaEnum = (0, endent_1.default) `
|
|
381
401
|
export enum ${enumNameBase}Schemas {
|
|
382
402
|
${sortedFiles
|
|
383
|
-
.map((f) => `${modelina_1.FormatHelpers.toPascalCase(path.basename(f, '.ts'))} = '${toPosixPath(this.tsPathToSchemaPath(f))}'`)
|
|
403
|
+
.map((f) => `${modelina_1.FormatHelpers.toPascalCase(path.basename(f, '.ts'))} = '${(0, utils_1.toPosixPath)(this.tsPathToSchemaPath(f))}'`)
|
|
384
404
|
.join(',\n')}
|
|
385
405
|
}`;
|
|
386
406
|
typeNamesEnum = (0, endent_1.default) `
|
|
@@ -477,191 +497,8 @@ class Codegen {
|
|
|
477
497
|
* @param tsFile - Path to a generated TS file.
|
|
478
498
|
*/
|
|
479
499
|
tsPathToSchemaPath(tsFile) {
|
|
480
|
-
return path.join(getRelativeDir(this.typesOutputRoot, tsFile), `${path.basename(tsFile, '.ts')}.json`);
|
|
500
|
+
return path.join((0, utils_1.getRelativeDir)(this.typesOutputRoot, tsFile), `${path.basename(tsFile, '.ts')}.json`);
|
|
481
501
|
}
|
|
482
502
|
}
|
|
483
503
|
exports.Codegen = Codegen;
|
|
484
|
-
function getRelativeDir(from, to) {
|
|
485
|
-
return fs.statSync(to).isFile()
|
|
486
|
-
? path.dirname(path.relative(from, to))
|
|
487
|
-
: path.relative(from, to);
|
|
488
|
-
}
|
|
489
|
-
function getMessageTitle(message) {
|
|
490
|
-
var _a, _b;
|
|
491
|
-
return ((_b = (_a = message.payload().title()) !== null && _a !== void 0 ? _a : message.extension('x-parser-message-name')) !== null && _b !== void 0 ? _b : message.payload().extension('x-parser-schema-id'));
|
|
492
|
-
}
|
|
493
|
-
/**
|
|
494
|
-
* Retrieve Service Title from AsyncAPI document.
|
|
495
|
-
* As Title returned value set in info.title property of document.
|
|
496
|
-
* @param asyncAPIDocument - AsyncAPI document.
|
|
497
|
-
*/
|
|
498
|
-
function getServiceTitle(asyncAPIDocument) {
|
|
499
|
-
return asyncAPIDocument.info().title();
|
|
500
|
-
}
|
|
501
|
-
/**
|
|
502
|
-
* Retrieve Service Id from AsyncAPI document.
|
|
503
|
-
* As Id returned value set in extension property `x-service-id`.
|
|
504
|
-
* If extension property is not set - returned Service Title in lower-kebab-case.
|
|
505
|
-
* @param asyncAPIDocument - AsyncAPI document.
|
|
506
|
-
*/
|
|
507
|
-
function getServiceId(asyncAPIDocument) {
|
|
508
|
-
var _a;
|
|
509
|
-
return ((_a = asyncAPIDocument.extension('x-service-id')) !== null && _a !== void 0 ? _a : modelina_1.FormatHelpers.toParamCase(getServiceTitle(asyncAPIDocument)));
|
|
510
|
-
}
|
|
511
|
-
/**
|
|
512
|
-
* Converts a path into a POSIX path by replacing current path separator with `/`.
|
|
513
|
-
* @param p - Path to convert.
|
|
514
|
-
*/
|
|
515
|
-
function toPosixPath(p) {
|
|
516
|
-
return path.posix.join(...p.split(path.sep));
|
|
517
|
-
}
|
|
518
|
-
/**
|
|
519
|
-
* Generating the path prefix for model.
|
|
520
|
-
* model name ends with "command" - prefix "commands"
|
|
521
|
-
* model name ends with "event" - prefix "events"
|
|
522
|
-
* default prefix "types"
|
|
523
|
-
* @param modelName - name of the model, defined in json schema, or AsyncAPI document
|
|
524
|
-
*/
|
|
525
|
-
function getModelPathPrefix(modelName) {
|
|
526
|
-
return modelName
|
|
527
|
-
? modelName.toLowerCase().endsWith('command')
|
|
528
|
-
? 'commands'
|
|
529
|
-
: modelName.toLowerCase().endsWith('event')
|
|
530
|
-
? 'events'
|
|
531
|
-
: 'types'
|
|
532
|
-
: 'types';
|
|
533
|
-
}
|
|
534
|
-
/**
|
|
535
|
-
* Adding 'export' for interfaces
|
|
536
|
-
*/
|
|
537
|
-
const EXPORT_INTERFACE_PRESET = {
|
|
538
|
-
interface: {
|
|
539
|
-
self({ content }) {
|
|
540
|
-
return `export ${content}`;
|
|
541
|
-
},
|
|
542
|
-
property({ content }) {
|
|
543
|
-
return content;
|
|
544
|
-
},
|
|
545
|
-
},
|
|
546
|
-
};
|
|
547
|
-
/**
|
|
548
|
-
* Adding 'export' for union enumeration types
|
|
549
|
-
*/
|
|
550
|
-
const EXPORT_UNION_TYPE_PRESET = {
|
|
551
|
-
type: {
|
|
552
|
-
self({ renderer }) {
|
|
553
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
554
|
-
return `export ${yield renderer.defaultSelf()}`;
|
|
555
|
-
});
|
|
556
|
-
},
|
|
557
|
-
},
|
|
558
|
-
};
|
|
559
|
-
/**
|
|
560
|
-
* Preset for TypeScriptGenerator, adds descriptions to types and properties.
|
|
561
|
-
*/
|
|
562
|
-
const DESCRIPTION_PRESET = {
|
|
563
|
-
interface: {
|
|
564
|
-
self({ renderer, content, model }) {
|
|
565
|
-
const desc = model.getFromOriginalInput('description');
|
|
566
|
-
if (desc) {
|
|
567
|
-
const renderedDesc = renderer.renderComments(desc);
|
|
568
|
-
return `${renderedDesc}\n${content}`;
|
|
569
|
-
}
|
|
570
|
-
return content;
|
|
571
|
-
},
|
|
572
|
-
property({ renderer, model, content, propertyName }) {
|
|
573
|
-
if (model.getFromOriginalInput('properties') !== undefined) {
|
|
574
|
-
const property = model.getFromOriginalInput('properties')[propertyName];
|
|
575
|
-
if (property !== undefined) {
|
|
576
|
-
const desc = property['description'];
|
|
577
|
-
if (desc) {
|
|
578
|
-
const renderedDesc = renderer.renderComments(desc);
|
|
579
|
-
return `${renderedDesc}\n${content}`;
|
|
580
|
-
}
|
|
581
|
-
}
|
|
582
|
-
}
|
|
583
|
-
return content;
|
|
584
|
-
},
|
|
585
|
-
},
|
|
586
|
-
};
|
|
587
|
-
/**
|
|
588
|
-
* Preset for TypeScriptGenerator, additionalProperties added to models as "[k: string]: unknown;"
|
|
589
|
-
*/
|
|
590
|
-
const ADDITIONAL_PROPERTIES_PRESET = {
|
|
591
|
-
interface: {
|
|
592
|
-
self({ content }) {
|
|
593
|
-
return content;
|
|
594
|
-
},
|
|
595
|
-
property({ renderer, propertyName, property, type }) {
|
|
596
|
-
if (type === modelina_1.PropertyType.additionalProperty) {
|
|
597
|
-
return property.originalInput === true
|
|
598
|
-
? `\n[k: string]: unknown;`
|
|
599
|
-
: renderer
|
|
600
|
-
.renderProperty(propertyName, property)
|
|
601
|
-
.replace('additionalProperties?:', '[k: string]:');
|
|
602
|
-
}
|
|
603
|
-
return renderer.renderProperty(propertyName, property, type);
|
|
604
|
-
},
|
|
605
|
-
},
|
|
606
|
-
};
|
|
607
|
-
/**
|
|
608
|
-
* Preset for TypeScriptGenerator, adds imports to resulting model.
|
|
609
|
-
*/
|
|
610
|
-
const IMPORTS_PRESET = {
|
|
611
|
-
interface: {
|
|
612
|
-
self({ content, model }) {
|
|
613
|
-
const interfaceName = model.getFromOriginalInput('title');
|
|
614
|
-
const interfacePrefix = getModelPathPrefix(interfaceName);
|
|
615
|
-
const dependencies = model.getNearestDependencies(model);
|
|
616
|
-
const imports = dependencies.map((dep) => ({
|
|
617
|
-
class: modelina_1.FormatHelpers.toPascalCase(dep),
|
|
618
|
-
location: interfacePrefix !== getModelPathPrefix(dep)
|
|
619
|
-
? `../${getModelPathPrefix(dep)}/${modelina_1.FormatHelpers.toParamCase(dep)}`
|
|
620
|
-
: `./${modelina_1.FormatHelpers.toParamCase(dep)}`,
|
|
621
|
-
}));
|
|
622
|
-
return (0, endent_1.default) `
|
|
623
|
-
${imports
|
|
624
|
-
.sort((a, b) => a.location.localeCompare(b.location))
|
|
625
|
-
.map((i) => `import { ${i.class} } from '${i.location}';`)
|
|
626
|
-
.join('\n')}
|
|
627
|
-
${content}`;
|
|
628
|
-
},
|
|
629
|
-
property({ content }) {
|
|
630
|
-
return content;
|
|
631
|
-
},
|
|
632
|
-
},
|
|
633
|
-
};
|
|
634
|
-
/**
|
|
635
|
-
* Preset for TypeScriptGenerator, sets nullable properties as unions in resulted models(compatibility with zapatos generated models).
|
|
636
|
-
*/
|
|
637
|
-
const NULLABLE_PROPERTY_TO_UNION_PRESET = {
|
|
638
|
-
interface: {
|
|
639
|
-
self({ content }) {
|
|
640
|
-
return content;
|
|
641
|
-
},
|
|
642
|
-
property({ renderer, model, content, propertyName }) {
|
|
643
|
-
if (model.getFromOriginalInput('properties') !== undefined) {
|
|
644
|
-
const property = model.getFromOriginalInput('properties')[propertyName];
|
|
645
|
-
if (property !== undefined) {
|
|
646
|
-
if (Array.isArray(property['type'])) {
|
|
647
|
-
const renderProp = renderer.renderProperty(propertyName, property);
|
|
648
|
-
return renderProp.replace('object', content.split(':')[1].replace(';', ''));
|
|
649
|
-
}
|
|
650
|
-
}
|
|
651
|
-
}
|
|
652
|
-
return content;
|
|
653
|
-
},
|
|
654
|
-
},
|
|
655
|
-
};
|
|
656
|
-
/**
|
|
657
|
-
* Extension for @asyncapi/modelina, to make sure that the type name is in pascal.
|
|
658
|
-
*/
|
|
659
|
-
const CustomNamingConvention = {
|
|
660
|
-
type: (name) => {
|
|
661
|
-
if (!name) {
|
|
662
|
-
return '';
|
|
663
|
-
}
|
|
664
|
-
return modelina_1.FormatHelpers.toPascalCase(name);
|
|
665
|
-
},
|
|
666
|
-
};
|
|
667
504
|
//# sourceMappingURL=codegen.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../../src/commands/msg-codegen/codegen.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../../src/commands/msg-codegen/codegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { TypeScriptPreset } from '@asyncapi/modelina';
|
|
2
|
+
/**
|
|
3
|
+
* Exports types.
|
|
4
|
+
*/
|
|
5
|
+
export declare const EXPORT_TYPES_PRESET: TypeScriptPreset;
|
|
6
|
+
/**
|
|
7
|
+
* Preset for TypeScriptGenerator, additionalProperties added to models as "[k: string]: unknown;"
|
|
8
|
+
*/
|
|
9
|
+
export declare const ADDITIONAL_PROPERTIES_PRESET: TypeScriptPreset;
|
|
10
|
+
/**
|
|
11
|
+
* Preset for TypeScriptGenerator, adds imports to resulting model.
|
|
12
|
+
*/
|
|
13
|
+
export declare const IMPORTS_PRESET: TypeScriptPreset;
|
|
14
|
+
/**
|
|
15
|
+
* Preset for TypeScriptGenerator, sets nullable properties as unions in resulted models(compatibility with zapatos generated models).
|
|
16
|
+
*/
|
|
17
|
+
export declare const NULLABLE_PROPERTY_TO_UNION_PRESET: TypeScriptPreset;
|
|
18
|
+
/**
|
|
19
|
+
* Converts all occurrences of 'any' to 'unknown'.
|
|
20
|
+
*/
|
|
21
|
+
export declare const ANY_TO_UNKNOWN_PRESET: TypeScriptPreset;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ANY_TO_UNKNOWN_PRESET = exports.NULLABLE_PROPERTY_TO_UNION_PRESET = exports.IMPORTS_PRESET = exports.ADDITIONAL_PROPERTIES_PRESET = exports.EXPORT_TYPES_PRESET = void 0;
|
|
4
|
+
const modelina_1 = require("@asyncapi/modelina");
|
|
5
|
+
const endent_1 = require("endent");
|
|
6
|
+
const utils_1 = require("./utils");
|
|
7
|
+
/**
|
|
8
|
+
* Exports types.
|
|
9
|
+
*/
|
|
10
|
+
exports.EXPORT_TYPES_PRESET = {
|
|
11
|
+
interface: {
|
|
12
|
+
self({ content }) {
|
|
13
|
+
return `export ${content}`;
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
enum: {
|
|
17
|
+
self({ content }) {
|
|
18
|
+
return `export ${content}`;
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
type: {
|
|
22
|
+
self({ content }) {
|
|
23
|
+
return `export ${content}`;
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Preset for TypeScriptGenerator, additionalProperties added to models as "[k: string]: unknown;"
|
|
29
|
+
*/
|
|
30
|
+
exports.ADDITIONAL_PROPERTIES_PRESET = {
|
|
31
|
+
interface: {
|
|
32
|
+
self({ content }) {
|
|
33
|
+
return content;
|
|
34
|
+
},
|
|
35
|
+
property({ property, content }) {
|
|
36
|
+
if (property.unconstrainedPropertyName === 'additionalProperties') {
|
|
37
|
+
return `\n[k: string]: unknown;`;
|
|
38
|
+
}
|
|
39
|
+
return content;
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Preset for TypeScriptGenerator, adds imports to resulting model.
|
|
45
|
+
*/
|
|
46
|
+
exports.IMPORTS_PRESET = {
|
|
47
|
+
interface: {
|
|
48
|
+
self({ content, model }) {
|
|
49
|
+
const interfacePrefix = (0, utils_1.getModelPathPrefix)(model.name);
|
|
50
|
+
const dependencies = model.getNearestDependencies();
|
|
51
|
+
const imports = dependencies.map((dep) => ({
|
|
52
|
+
class: modelina_1.FormatHelpers.toPascalCase(dep.name),
|
|
53
|
+
location: interfacePrefix !== (0, utils_1.getModelPathPrefix)(dep.name)
|
|
54
|
+
? `../${(0, utils_1.getModelPathPrefix)(dep.name)}/${modelina_1.FormatHelpers.toParamCase(dep.name)}`
|
|
55
|
+
: `./${modelina_1.FormatHelpers.toParamCase(dep.name)}`,
|
|
56
|
+
}));
|
|
57
|
+
return (0, endent_1.default) `
|
|
58
|
+
${imports
|
|
59
|
+
.sort((a, b) => a.location.localeCompare(b.location))
|
|
60
|
+
.map((i) => `import { ${i.class} } from '${i.location}';`)
|
|
61
|
+
.join('\n')}
|
|
62
|
+
${content}`;
|
|
63
|
+
},
|
|
64
|
+
property({ content }) {
|
|
65
|
+
return content;
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* Preset for TypeScriptGenerator, sets nullable properties as unions in resulted models(compatibility with zapatos generated models).
|
|
71
|
+
*/
|
|
72
|
+
exports.NULLABLE_PROPERTY_TO_UNION_PRESET = {
|
|
73
|
+
interface: {
|
|
74
|
+
self({ content }) {
|
|
75
|
+
return content;
|
|
76
|
+
},
|
|
77
|
+
property({ renderer, property, content }) {
|
|
78
|
+
var _a, _b, _c;
|
|
79
|
+
let index = (0, utils_1.indexOfNullObjectProperty)(property);
|
|
80
|
+
// Regular object property, not array.
|
|
81
|
+
if (index > -1) {
|
|
82
|
+
property.property.type = (0, utils_1.ensureNullable)(property.property.type, index);
|
|
83
|
+
return renderer.renderProperty(property);
|
|
84
|
+
}
|
|
85
|
+
// Array property.
|
|
86
|
+
index = (0, utils_1.indexOfNullArrayProperty)(property);
|
|
87
|
+
if (index > -1) {
|
|
88
|
+
// This pattern is not perfect but it's good enough for this use case.
|
|
89
|
+
const regex = /((?<single>\w+)|\((?<multiple>[\w\s|]+)\))\[\]/;
|
|
90
|
+
const match = regex.exec(property.property.type);
|
|
91
|
+
if (match && (((_a = match === null || match === void 0 ? void 0 : match.groups) === null || _a === void 0 ? void 0 : _a.single) || ((_b = match === null || match === void 0 ? void 0 : match.groups) === null || _b === void 0 ? void 0 : _b.multiple))) {
|
|
92
|
+
const newType = (0, utils_1.ensureNullable)((_c = match.groups.single) !== null && _c !== void 0 ? _c : match.groups.multiple, index);
|
|
93
|
+
// At this point we assume that the type will be a union of at least two types - null and something else.
|
|
94
|
+
property.property.type = `(${newType})[]`;
|
|
95
|
+
return renderer.renderProperty(property);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return content;
|
|
99
|
+
},
|
|
100
|
+
},
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Converts all occurrences of 'any' to 'unknown'.
|
|
104
|
+
*/
|
|
105
|
+
exports.ANY_TO_UNKNOWN_PRESET = {
|
|
106
|
+
interface: {
|
|
107
|
+
property({ renderer, property }) {
|
|
108
|
+
property.property.type = (0, utils_1.replaceAnyType)(property.property.type, 'unknown');
|
|
109
|
+
return renderer.renderProperty(property);
|
|
110
|
+
},
|
|
111
|
+
},
|
|
112
|
+
type: {
|
|
113
|
+
self({ content }) {
|
|
114
|
+
// TODO: This is inconsistent with interface but not sure how to use type renderer.
|
|
115
|
+
return (0, utils_1.replaceAnyType)(content, 'unknown');
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
};
|
|
119
|
+
//# sourceMappingURL=presets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../src/commands/msg-codegen/presets.ts"],"names":[],"mappings":"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"}
|