openapi-ts-generator 5.223.20 → 5.225.6
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/generators/{barrel-generator.d.ts → barrel.generator.d.ts} +1 -1
- package/generators/{barrel-generator.js → barrel.generator.js} +1 -1
- package/generators/{base-generator.d.ts → base.generator.d.ts} +0 -0
- package/generators/{base-generator.js → base.generator.js} +0 -0
- package/generators/{endpoints-generator.d.ts → endpoints.generator.d.ts} +1 -1
- package/generators/{endpoints-generator.js → endpoints.generator.js} +1 -1
- package/generators/{enum-generator.d.ts → enum.generator.d.ts} +1 -1
- package/generators/{enum-generator.js → enum.generator.js} +1 -1
- package/generators/{form-group-generator.d.ts → form-group-factory.generator.d.ts} +3 -3
- package/generators/{form-group-generator.js → form-group-factory.generator.js} +12 -12
- package/generators/form.generator.d.ts +8 -0
- package/generators/form.generator.js +39 -0
- package/generators/index.d.ts +8 -5
- package/generators/index.js +8 -5
- package/generators/{model-properties-generator.d.ts → model-properties.generator.d.ts} +1 -1
- package/generators/{model-properties-generator.js → model-properties.generator.js} +1 -1
- package/generators/{model-generator.d.ts → model.generator.d.ts} +1 -1
- package/generators/{model-generator.js → model.generator.js} +1 -1
- package/generators/test-object-factory.generator.d.ts +8 -0
- package/generators/test-object-factory.generator.js +39 -0
- package/index.js +6 -3
- package/models/generator-options.d.ts +3 -1
- package/models/generator-options.js +3 -3
- package/models/template-data.d.ts +3 -0
- package/openapidoc-converter.d.ts +7 -6
- package/openapidoc-converter.js +59 -13
- package/package.json +1 -1
- package/templates/form-group-factory.ts.hbs +11 -22
- package/templates/form.ts.hbs +30 -0
- package/templates/model.ts.hbs +5 -1
- package/templates/test-object-factory.ts.hbs +19 -0
|
@@ -17,7 +17,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.BarrelGenerator = void 0;
|
|
19
19
|
var fs_1 = require("fs");
|
|
20
|
-
var base_generator_1 = require("./base
|
|
20
|
+
var base_generator_1 = require("./base.generator");
|
|
21
21
|
var BarrelGenerator = /** @class */ (function (_super) {
|
|
22
22
|
__extends(BarrelGenerator, _super);
|
|
23
23
|
function BarrelGenerator(options) {
|
|
File without changes
|
|
File without changes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IGeneratorOptions } from '../models/generator-options';
|
|
2
2
|
import { IPath, ITemplateData } from '../models/template-data';
|
|
3
|
-
import { BaseGenerator } from './base
|
|
3
|
+
import { BaseGenerator } from './base.generator';
|
|
4
4
|
export declare class EndPointsGenerator extends BaseGenerator<{
|
|
5
5
|
paths: IPath[];
|
|
6
6
|
}> {
|
|
@@ -36,7 +36,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
36
36
|
};
|
|
37
37
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
38
|
exports.EndPointsGenerator = void 0;
|
|
39
|
-
var base_generator_1 = require("./base
|
|
39
|
+
var base_generator_1 = require("./base.generator");
|
|
40
40
|
var _ = require("lodash");
|
|
41
41
|
var EndPointsGenerator = /** @class */ (function (_super) {
|
|
42
42
|
__extends(EndPointsGenerator, _super);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IGeneratorOptions } from '../models/generator-options';
|
|
2
2
|
import { IEntity, ITemplateData } from '../models/template-data';
|
|
3
|
-
import { BaseGenerator } from './base
|
|
3
|
+
import { BaseGenerator } from './base.generator';
|
|
4
4
|
export declare class EnumGenerator extends BaseGenerator<IEntity> {
|
|
5
5
|
readonly GeneratorName = "EnumGenerator";
|
|
6
6
|
constructor(options: IGeneratorOptions);
|
|
@@ -17,7 +17,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.EnumGenerator = void 0;
|
|
19
19
|
var _ = require("lodash");
|
|
20
|
-
var base_generator_1 = require("./base
|
|
20
|
+
var base_generator_1 = require("./base.generator");
|
|
21
21
|
var EnumGenerator = /** @class */ (function (_super) {
|
|
22
22
|
__extends(EnumGenerator, _super);
|
|
23
23
|
function EnumGenerator(options) {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { IGeneratorOptions } from '../models/generator-options';
|
|
2
2
|
import { IEntity, ITemplateData } from '../models/template-data';
|
|
3
|
-
import { BaseGenerator } from './base
|
|
3
|
+
import { BaseGenerator } from './base.generator';
|
|
4
4
|
import { IHelperContext, PropertyType } from '../models/helper-context';
|
|
5
|
-
export declare class
|
|
6
|
-
readonly GeneratorName = "
|
|
5
|
+
export declare class FormGroupFactoryGenerator extends BaseGenerator<IEntity> {
|
|
6
|
+
readonly GeneratorName = "FormGroupFactoryGenerator";
|
|
7
7
|
constructor(options: IGeneratorOptions);
|
|
8
8
|
generate(templateData: ITemplateData): void;
|
|
9
9
|
registerHelpers(): void;
|
|
@@ -15,20 +15,20 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
15
15
|
};
|
|
16
16
|
})();
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.
|
|
18
|
+
exports.FormGroupFactoryGenerator = void 0;
|
|
19
19
|
var _ = require("lodash");
|
|
20
|
-
var base_generator_1 = require("./base
|
|
20
|
+
var base_generator_1 = require("./base.generator");
|
|
21
21
|
var HandleBars = require("handlebars");
|
|
22
|
-
var
|
|
23
|
-
__extends(
|
|
24
|
-
function
|
|
22
|
+
var FormGroupFactoryGenerator = /** @class */ (function (_super) {
|
|
23
|
+
__extends(FormGroupFactoryGenerator, _super);
|
|
24
|
+
function FormGroupFactoryGenerator(options) {
|
|
25
25
|
var _this = this;
|
|
26
26
|
var _a;
|
|
27
27
|
_this = _super.call(this, options, (_a = options.templates) === null || _a === void 0 ? void 0 : _a.formGroupFactory) || this;
|
|
28
|
-
_this.GeneratorName = '
|
|
28
|
+
_this.GeneratorName = 'FormGroupFactoryGenerator';
|
|
29
29
|
return _this;
|
|
30
30
|
}
|
|
31
|
-
|
|
31
|
+
FormGroupFactoryGenerator.prototype.generate = function (templateData) {
|
|
32
32
|
var _this = this;
|
|
33
33
|
var _a;
|
|
34
34
|
this.registerHelpers();
|
|
@@ -36,7 +36,7 @@ var FormGroupGenerator = /** @class */ (function (_super) {
|
|
|
36
36
|
_super.prototype.generateFile.call(_this, "".concat(_this.generatorOptions.outputPath, "/").concat(_.kebabCase(entity.name), ".form-group-fac.ts"), entity);
|
|
37
37
|
});
|
|
38
38
|
};
|
|
39
|
-
|
|
39
|
+
FormGroupFactoryGenerator.prototype.registerHelpers = function () {
|
|
40
40
|
this.registerValidatorHelper('minimum', 'min');
|
|
41
41
|
this.registerValidatorHelper('maximum', 'max');
|
|
42
42
|
this.registerValidatorHelper('minLength');
|
|
@@ -45,14 +45,14 @@ var FormGroupGenerator = /** @class */ (function (_super) {
|
|
|
45
45
|
this.registerValidatorHelper('minItems', 'minLength');
|
|
46
46
|
this.registerValidatorHelper('pattern');
|
|
47
47
|
};
|
|
48
|
-
|
|
48
|
+
FormGroupFactoryGenerator.prototype.registerValidatorHelper = function (validatorName, angularValidatorName) {
|
|
49
49
|
var _this = this;
|
|
50
50
|
if (angularValidatorName === void 0) { angularValidatorName = validatorName; }
|
|
51
51
|
HandleBars.registerHelper("".concat(validatorName, "Validator"), function (x, y) {
|
|
52
52
|
return _this.validatorFactory(x, y, validatorName, angularValidatorName);
|
|
53
53
|
});
|
|
54
54
|
};
|
|
55
|
-
|
|
55
|
+
FormGroupFactoryGenerator.prototype.validatorFactory = function (propertyCollection, propertyContext, validationName, angularValidatorFunctionName) {
|
|
56
56
|
var props = propertyContext.data.root[propertyCollection];
|
|
57
57
|
var prop = props[propertyContext.data.index];
|
|
58
58
|
var value = prop[validationName];
|
|
@@ -63,6 +63,6 @@ var FormGroupGenerator = /** @class */ (function (_super) {
|
|
|
63
63
|
}
|
|
64
64
|
return '';
|
|
65
65
|
};
|
|
66
|
-
return
|
|
66
|
+
return FormGroupFactoryGenerator;
|
|
67
67
|
}(base_generator_1.BaseGenerator));
|
|
68
|
-
exports.
|
|
68
|
+
exports.FormGroupFactoryGenerator = FormGroupFactoryGenerator;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IGeneratorOptions } from '../models/generator-options';
|
|
2
|
+
import { IEntity, ITemplateData } from '../models/template-data';
|
|
3
|
+
import { BaseGenerator } from './base.generator';
|
|
4
|
+
export declare class FormGenerator extends BaseGenerator<IEntity> {
|
|
5
|
+
readonly GeneratorName = "FormGenerator";
|
|
6
|
+
constructor(options: IGeneratorOptions);
|
|
7
|
+
generate(templateData: ITemplateData): void;
|
|
8
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.FormGenerator = void 0;
|
|
19
|
+
var _ = require("lodash");
|
|
20
|
+
var base_generator_1 = require("./base.generator");
|
|
21
|
+
var FormGenerator = /** @class */ (function (_super) {
|
|
22
|
+
__extends(FormGenerator, _super);
|
|
23
|
+
function FormGenerator(options) {
|
|
24
|
+
var _this = this;
|
|
25
|
+
var _a;
|
|
26
|
+
_this = _super.call(this, options, (_a = options.templates) === null || _a === void 0 ? void 0 : _a.form) || this;
|
|
27
|
+
_this.GeneratorName = 'FormGenerator';
|
|
28
|
+
return _this;
|
|
29
|
+
}
|
|
30
|
+
FormGenerator.prototype.generate = function (templateData) {
|
|
31
|
+
var _this = this;
|
|
32
|
+
var _a;
|
|
33
|
+
(_a = templateData.entities) === null || _a === void 0 ? void 0 : _a.filter(function (val) { var _a, _b; return ((_a = val.valueProperties) === null || _a === void 0 ? void 0 : _a.length) + ((_b = val.referenceProperties) === null || _b === void 0 ? void 0 : _b.length) > 0; }).forEach(function (entity) {
|
|
34
|
+
_super.prototype.generateFile.call(_this, "".concat(_this.generatorOptions.outputPath, "/").concat(_.kebabCase(entity.name), ".form.ts"), entity);
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
return FormGenerator;
|
|
38
|
+
}(base_generator_1.BaseGenerator));
|
|
39
|
+
exports.FormGenerator = FormGenerator;
|
package/generators/index.d.ts
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
export * from './model
|
|
2
|
-
export * from './form-group-generator';
|
|
3
|
-
export * from './model-properties
|
|
4
|
-
export * from './barrel
|
|
5
|
-
export * from './enum
|
|
1
|
+
export * from './model.generator';
|
|
2
|
+
export * from './form-group-factory.generator';
|
|
3
|
+
export * from './model-properties.generator';
|
|
4
|
+
export * from './barrel.generator';
|
|
5
|
+
export * from './enum.generator';
|
|
6
|
+
export * from './form.generator';
|
|
7
|
+
export * from './test-object-factory.generator';
|
|
8
|
+
export * from './endpoints.generator';
|
package/generators/index.js
CHANGED
|
@@ -14,8 +14,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./model
|
|
18
|
-
__exportStar(require("./form-group-generator"), exports);
|
|
19
|
-
__exportStar(require("./model-properties
|
|
20
|
-
__exportStar(require("./barrel
|
|
21
|
-
__exportStar(require("./enum
|
|
17
|
+
__exportStar(require("./model.generator"), exports);
|
|
18
|
+
__exportStar(require("./form-group-factory.generator"), exports);
|
|
19
|
+
__exportStar(require("./model-properties.generator"), exports);
|
|
20
|
+
__exportStar(require("./barrel.generator"), exports);
|
|
21
|
+
__exportStar(require("./enum.generator"), exports);
|
|
22
|
+
__exportStar(require("./form.generator"), exports);
|
|
23
|
+
__exportStar(require("./test-object-factory.generator"), exports);
|
|
24
|
+
__exportStar(require("./endpoints.generator"), exports);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IGeneratorOptions } from '../models/generator-options';
|
|
2
2
|
import { IEntity, ITemplateData } from '../models/template-data';
|
|
3
|
-
import { BaseGenerator } from './base
|
|
3
|
+
import { BaseGenerator } from './base.generator';
|
|
4
4
|
export declare class ModelPropertiesGenerator extends BaseGenerator<IEntity> {
|
|
5
5
|
readonly GeneratorName = "ModelPropertiesGenerator";
|
|
6
6
|
constructor(options: IGeneratorOptions);
|
|
@@ -17,7 +17,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.ModelPropertiesGenerator = void 0;
|
|
19
19
|
var _ = require("lodash");
|
|
20
|
-
var base_generator_1 = require("./base
|
|
20
|
+
var base_generator_1 = require("./base.generator");
|
|
21
21
|
var ModelPropertiesGenerator = /** @class */ (function (_super) {
|
|
22
22
|
__extends(ModelPropertiesGenerator, _super);
|
|
23
23
|
function ModelPropertiesGenerator(options) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IGeneratorOptions } from '../models/generator-options';
|
|
2
2
|
import { IEntity, ITemplateData } from '../models/template-data';
|
|
3
|
-
import { BaseGenerator } from './base
|
|
3
|
+
import { BaseGenerator } from './base.generator';
|
|
4
4
|
export declare class ModelGenerator extends BaseGenerator<IEntity> {
|
|
5
5
|
readonly GeneratorName = "ModelGenerator";
|
|
6
6
|
constructor(options: IGeneratorOptions);
|
|
@@ -17,7 +17,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.ModelGenerator = void 0;
|
|
19
19
|
var _ = require("lodash");
|
|
20
|
-
var base_generator_1 = require("./base
|
|
20
|
+
var base_generator_1 = require("./base.generator");
|
|
21
21
|
var ModelGenerator = /** @class */ (function (_super) {
|
|
22
22
|
__extends(ModelGenerator, _super);
|
|
23
23
|
function ModelGenerator(options) {
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IGeneratorOptions } from '../models/generator-options';
|
|
2
|
+
import { IEntity, ITemplateData } from '../models/template-data';
|
|
3
|
+
import { BaseGenerator } from './base.generator';
|
|
4
|
+
export declare class TestObjectFactoryGenerator extends BaseGenerator<IEntity> {
|
|
5
|
+
readonly GeneratorName = "TestObjectFactoryGenerator";
|
|
6
|
+
constructor(options: IGeneratorOptions);
|
|
7
|
+
generate(templateData: ITemplateData): void;
|
|
8
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.TestObjectFactoryGenerator = void 0;
|
|
19
|
+
var _ = require("lodash");
|
|
20
|
+
var base_generator_1 = require("./base.generator");
|
|
21
|
+
var TestObjectFactoryGenerator = /** @class */ (function (_super) {
|
|
22
|
+
__extends(TestObjectFactoryGenerator, _super);
|
|
23
|
+
function TestObjectFactoryGenerator(options) {
|
|
24
|
+
var _this = this;
|
|
25
|
+
var _a;
|
|
26
|
+
_this = _super.call(this, options, (_a = options.templates) === null || _a === void 0 ? void 0 : _a.testObjectFactory) || this;
|
|
27
|
+
_this.GeneratorName = 'TestObjectFactoryGenerator';
|
|
28
|
+
return _this;
|
|
29
|
+
}
|
|
30
|
+
TestObjectFactoryGenerator.prototype.generate = function (templateData) {
|
|
31
|
+
var _this = this;
|
|
32
|
+
var _a;
|
|
33
|
+
(_a = templateData.entities) === null || _a === void 0 ? void 0 : _a.filter(function (val) { var _a, _b; return ((_a = val.valueProperties) === null || _a === void 0 ? void 0 : _a.length) + ((_b = val.referenceProperties) === null || _b === void 0 ? void 0 : _b.length) > 0; }).forEach(function (entity) {
|
|
34
|
+
_super.prototype.generateFile.call(_this, "".concat(_this.generatorOptions.outputPath, "/").concat(_.kebabCase(entity.name), ".test-obj-fac.ts"), entity);
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
return TestObjectFactoryGenerator;
|
|
38
|
+
}(base_generator_1.BaseGenerator));
|
|
39
|
+
exports.TestObjectFactoryGenerator = TestObjectFactoryGenerator;
|
package/index.js
CHANGED
|
@@ -39,7 +39,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
exports.generateTsModels = exports.nrsrxValuePropertyTypeFilterCallBack = exports.nrsrxTypeFilterCallBack = void 0;
|
|
40
40
|
var fs = require("fs");
|
|
41
41
|
var generators_1 = require("./generators");
|
|
42
|
-
var endpoints_generator_1 = require("./generators/endpoints-generator");
|
|
43
42
|
var generator_options_1 = require("./models/generator-options");
|
|
44
43
|
var openapidoc_converter_1 = require("./openapidoc-converter");
|
|
45
44
|
var axios_1 = require("axios");
|
|
@@ -100,15 +99,19 @@ function generateOutput(options, templateData) {
|
|
|
100
99
|
var modelGenerator = new generators_1.ModelGenerator(options);
|
|
101
100
|
modelGenerator.generate(templateData);
|
|
102
101
|
if (options.genAngularFormGroups) {
|
|
103
|
-
var formGroupGenerator = new generators_1.
|
|
102
|
+
var formGroupGenerator = new generators_1.FormGroupFactoryGenerator(options);
|
|
104
103
|
formGroupGenerator.generate(templateData);
|
|
104
|
+
var formGenerator = new generators_1.FormGenerator(options);
|
|
105
|
+
formGenerator.generate(templateData);
|
|
105
106
|
}
|
|
106
107
|
var modelPropertiesGenerator = new generators_1.ModelPropertiesGenerator(options);
|
|
107
108
|
modelPropertiesGenerator.generate(templateData);
|
|
108
|
-
var endpointGenerator = new
|
|
109
|
+
var endpointGenerator = new generators_1.EndPointsGenerator(options);
|
|
109
110
|
endpointGenerator.generate(templateData);
|
|
110
111
|
var barrelGenerator = new generators_1.BarrelGenerator(options);
|
|
111
112
|
var enumGenerator = new generators_1.EnumGenerator(options);
|
|
112
113
|
enumGenerator.generate(templateData);
|
|
114
|
+
var testObjFacGenerator = new generators_1.TestObjectFactoryGenerator(options);
|
|
115
|
+
testObjFacGenerator.generate(templateData);
|
|
113
116
|
barrelGenerator.generate();
|
|
114
117
|
}
|
|
@@ -14,11 +14,13 @@ export interface IGeneratorOptions {
|
|
|
14
14
|
}
|
|
15
15
|
export interface ITemplates {
|
|
16
16
|
model?: string;
|
|
17
|
+
testObjectFactory?: string;
|
|
18
|
+
form?: string;
|
|
17
19
|
formGroupFactory?: string;
|
|
18
20
|
modelProperties?: string;
|
|
19
21
|
barrel?: string;
|
|
20
22
|
enum?: string;
|
|
21
23
|
endpoints?: string;
|
|
22
24
|
}
|
|
23
|
-
export declare function defaultFilter(
|
|
25
|
+
export declare function defaultFilter(_value: IEntity | IValueProperty | IReferenceProperty, _index: number, _array: IEntity[] | IValueProperty[] | IReferenceProperty[]): boolean;
|
|
24
26
|
export declare function setGeneratorOptionDefaults(options: IGeneratorOptions): IGeneratorOptions;
|
|
@@ -14,17 +14,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
14
14
|
exports.setGeneratorOptionDefaults = exports.defaultFilter = void 0;
|
|
15
15
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
16
16
|
var path_1 = require("path");
|
|
17
|
-
function defaultFilter(
|
|
17
|
+
function defaultFilter(_value, _index, _array) {
|
|
18
18
|
return true;
|
|
19
19
|
}
|
|
20
20
|
exports.defaultFilter = defaultFilter;
|
|
21
21
|
function setGeneratorOptionDefaults(options) {
|
|
22
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
22
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
|
23
23
|
var templateFolder = (0, path_1.resolve)("".concat(__dirname, "/.."), 'templates');
|
|
24
24
|
options.typeFilterCallBack = (_a = options.typeFilterCallBack) !== null && _a !== void 0 ? _a : defaultFilter;
|
|
25
25
|
options.valuePropertyTypeFilterCallBack = (_b = options.valuePropertyTypeFilterCallBack) !== null && _b !== void 0 ? _b : defaultFilter;
|
|
26
26
|
options.referencePropertyTypeFilterCallBack = (_c = options.referencePropertyTypeFilterCallBack) !== null && _c !== void 0 ? _c : defaultFilter;
|
|
27
|
-
options.templates = __assign(__assign({}, options.templates), { model: (_e = (_d = options.templates) === null || _d === void 0 ? void 0 : _d.model) !== null && _e !== void 0 ? _e : "".concat(templateFolder, "/model.ts.hbs"),
|
|
27
|
+
options.templates = __assign(__assign({}, options.templates), { model: (_e = (_d = options.templates) === null || _d === void 0 ? void 0 : _d.model) !== null && _e !== void 0 ? _e : "".concat(templateFolder, "/model.ts.hbs"), form: (_g = (_f = options.templates) === null || _f === void 0 ? void 0 : _f.form) !== null && _g !== void 0 ? _g : "".concat(templateFolder, "/form.ts.hbs"), formGroupFactory: (_j = (_h = options.templates) === null || _h === void 0 ? void 0 : _h.formGroupFactory) !== null && _j !== void 0 ? _j : "".concat(templateFolder, "/form-group-factory.ts.hbs"), testObjectFactory: (_l = (_k = options.templates) === null || _k === void 0 ? void 0 : _k.testObjectFactory) !== null && _l !== void 0 ? _l : "".concat(templateFolder, "/test-object-factory.ts.hbs"), barrel: (_o = (_m = options.templates) === null || _m === void 0 ? void 0 : _m.barrel) !== null && _o !== void 0 ? _o : "".concat(templateFolder, "/index.ts.hbs"), enum: (_q = (_p = options.templates) === null || _p === void 0 ? void 0 : _p.barrel) !== null && _q !== void 0 ? _q : "".concat(templateFolder, "/enum.ts.hbs"), modelProperties: (_s = (_r = options.templates) === null || _r === void 0 ? void 0 : _r.barrel) !== null && _s !== void 0 ? _s : "".concat(templateFolder, "/model-properties.ts.hbs"), endpoints: (_u = (_t = options.templates) === null || _t === void 0 ? void 0 : _t.endpoints) !== null && _u !== void 0 ? _u : "".concat(templateFolder, "/endpoints.ts.hbs") });
|
|
28
28
|
return options;
|
|
29
29
|
}
|
|
30
30
|
exports.setGeneratorOptionDefaults = setGeneratorOptionDefaults;
|
|
@@ -14,6 +14,7 @@ export interface IEntity {
|
|
|
14
14
|
titleName: string;
|
|
15
15
|
})[];
|
|
16
16
|
name: string;
|
|
17
|
+
kebabCasedName: string;
|
|
17
18
|
camelSingularName: string;
|
|
18
19
|
description?: string;
|
|
19
20
|
importTypes: IImportType[];
|
|
@@ -45,6 +46,7 @@ export interface IValueProperty {
|
|
|
45
46
|
description?: string;
|
|
46
47
|
pattern?: string;
|
|
47
48
|
initialValue: string;
|
|
49
|
+
initialTestValue: string;
|
|
48
50
|
}
|
|
49
51
|
export interface IReferenceProperty {
|
|
50
52
|
name: string;
|
|
@@ -63,4 +65,5 @@ export interface IReferenceProperty {
|
|
|
63
65
|
required: boolean;
|
|
64
66
|
isEnum?: boolean;
|
|
65
67
|
initialValue: string;
|
|
68
|
+
initialTestValue: string;
|
|
66
69
|
}
|
|
@@ -12,14 +12,15 @@ export declare class OpenApiDocConverter {
|
|
|
12
12
|
convertPaths(): IPath[];
|
|
13
13
|
convertEntities(): IEntity[];
|
|
14
14
|
buildSchemaWrapperInfoForEnum(schemaWrapperInfo: SchemaWrapperInfo): void;
|
|
15
|
-
buildSchemaWrapperInfo(schemaWrapperInfo: SchemaWrapperInfo): void;
|
|
16
|
-
convertArray(propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): void;
|
|
17
|
-
convertSchemaObjectToPropertyType(propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): IValueProperty;
|
|
15
|
+
buildSchemaWrapperInfo(parentTypeName: string, schemaWrapperInfo: SchemaWrapperInfo): void;
|
|
16
|
+
convertArray(parentTypeName: string, propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): void;
|
|
17
|
+
convertSchemaObjectToPropertyType(parentTypeName: string, propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): IValueProperty;
|
|
18
18
|
private convertValidator;
|
|
19
|
-
convertArrayObjectToValuePropertyType(propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): IValueProperty;
|
|
19
|
+
convertArrayObjectToValuePropertyType(parentTypeName: string, propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): IValueProperty;
|
|
20
20
|
getInitialValue(propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): string;
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
getInitialTestValue(parentTypeName: string, propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): string;
|
|
22
|
+
convertArrayObjectToReferencePropertyType(parentTypeName: string, propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): IReferenceProperty;
|
|
23
|
+
convertReferenceObjectToPropertyType(parentTypeName: string, propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): IReferenceProperty;
|
|
23
24
|
getValidatorCount(propertyName: string, schemaWrapperInfo: SchemaWrapperInfo): number;
|
|
24
25
|
getPropertyTypeScriptType(schemaWrapperInfo: SchemaWrapperInfo): string;
|
|
25
26
|
parseRef(schemaWrapperInfo: SchemaWrapperInfo): string;
|
package/openapidoc-converter.js
CHANGED
|
@@ -52,7 +52,7 @@ var OpenApiDocConverter = /** @class */ (function () {
|
|
|
52
52
|
this.buildSchemaWrapperInfoForEnum(schemaWrapperInfo);
|
|
53
53
|
}
|
|
54
54
|
else {
|
|
55
|
-
this.buildSchemaWrapperInfo(schemaWrapperInfo);
|
|
55
|
+
this.buildSchemaWrapperInfo(schemaName, schemaWrapperInfo);
|
|
56
56
|
}
|
|
57
57
|
schemaWrapperInfo.updateReferenceProperties(this.options);
|
|
58
58
|
var entity = {
|
|
@@ -61,6 +61,7 @@ var OpenApiDocConverter = /** @class */ (function () {
|
|
|
61
61
|
return typeof t === 'string' || t instanceof String ? t : __assign(__assign({}, t), { key: t.key || 0 });
|
|
62
62
|
}),
|
|
63
63
|
name: schemaName,
|
|
64
|
+
kebabCasedName: (0, lodash_1.kebabCase)(schemaName),
|
|
64
65
|
camelSingularName: (0, lodash_1.camelCase)((0, pluralize_1.singular)(schemaName)),
|
|
65
66
|
description: schemaWrapperInfo.description,
|
|
66
67
|
referenceProperties: schemaWrapperInfo.referenceProperties,
|
|
@@ -83,41 +84,43 @@ var OpenApiDocConverter = /** @class */ (function () {
|
|
|
83
84
|
return { key: key ? +key : 0, name: name, titleName: (0, lodash_1.startCase)(name) };
|
|
84
85
|
}));
|
|
85
86
|
};
|
|
86
|
-
OpenApiDocConverter.prototype.buildSchemaWrapperInfo = function (schemaWrapperInfo) {
|
|
87
|
+
OpenApiDocConverter.prototype.buildSchemaWrapperInfo = function (parentTypeName, schemaWrapperInfo) {
|
|
87
88
|
for (var propertyName in schemaWrapperInfo.componentSchemaObject.properties) {
|
|
88
89
|
if ((schemaWrapperInfo.propertySchemaObject = schemaWrapperInfo.componentSchemaObject.properties[propertyName]).type && // NOSONAR
|
|
89
90
|
schemaWrapperInfo.propertySchemaObject.type !== 'array') {
|
|
90
|
-
schemaWrapperInfo.valueProperties.push(this.convertSchemaObjectToPropertyType(propertyName, schemaWrapperInfo));
|
|
91
|
+
schemaWrapperInfo.valueProperties.push(this.convertSchemaObjectToPropertyType(parentTypeName, propertyName, schemaWrapperInfo));
|
|
91
92
|
}
|
|
92
93
|
else {
|
|
93
94
|
schemaWrapperInfo.propertyReferenceObject = schemaWrapperInfo.componentSchemaObject.properties[propertyName];
|
|
94
95
|
if (schemaWrapperInfo.propertyReferenceObject.$ref) {
|
|
95
|
-
schemaWrapperInfo.referenceProperties.push(this.convertReferenceObjectToPropertyType(propertyName, schemaWrapperInfo));
|
|
96
|
+
schemaWrapperInfo.referenceProperties.push(this.convertReferenceObjectToPropertyType(parentTypeName, propertyName, schemaWrapperInfo));
|
|
96
97
|
}
|
|
97
98
|
else if (schemaWrapperInfo.propertySchemaObject.type === 'array' && schemaWrapperInfo.propertySchemaObject.items) {
|
|
98
|
-
this.convertArray(propertyName, schemaWrapperInfo);
|
|
99
|
+
this.convertArray(parentTypeName, propertyName, schemaWrapperInfo);
|
|
99
100
|
}
|
|
100
101
|
}
|
|
101
102
|
}
|
|
102
103
|
};
|
|
103
|
-
OpenApiDocConverter.prototype.convertArray = function (propertyName, schemaWrapperInfo) {
|
|
104
|
+
OpenApiDocConverter.prototype.convertArray = function (parentTypeName, propertyName, schemaWrapperInfo) {
|
|
104
105
|
var arraySchemaObject = schemaWrapperInfo.propertySchemaObject.items;
|
|
105
106
|
if (arraySchemaObject.type) {
|
|
106
|
-
schemaWrapperInfo.valueProperties.push(this.convertArrayObjectToValuePropertyType(propertyName, schemaWrapperInfo));
|
|
107
|
+
schemaWrapperInfo.valueProperties.push(this.convertArrayObjectToValuePropertyType(parentTypeName, propertyName, schemaWrapperInfo));
|
|
107
108
|
}
|
|
108
109
|
else {
|
|
109
110
|
schemaWrapperInfo.propertyReferenceObject = schemaWrapperInfo.propertySchemaObject.items;
|
|
110
|
-
schemaWrapperInfo.referenceProperties.push(this.convertArrayObjectToReferencePropertyType(propertyName, schemaWrapperInfo));
|
|
111
|
+
schemaWrapperInfo.referenceProperties.push(this.convertArrayObjectToReferencePropertyType(parentTypeName, propertyName, schemaWrapperInfo));
|
|
111
112
|
}
|
|
112
113
|
};
|
|
113
|
-
OpenApiDocConverter.prototype.convertSchemaObjectToPropertyType = function (propertyName, schemaWrapperInfo) {
|
|
114
|
+
OpenApiDocConverter.prototype.convertSchemaObjectToPropertyType = function (parentTypeName, propertyName, schemaWrapperInfo) {
|
|
114
115
|
var required = this.getIsRequired(propertyName, schemaWrapperInfo);
|
|
115
116
|
var validatorCount = this.getValidatorCount(propertyName, schemaWrapperInfo);
|
|
116
117
|
var initialValue = this.getInitialValue(propertyName, schemaWrapperInfo);
|
|
118
|
+
var initialTestValue = this.getInitialTestValue(parentTypeName, propertyName, schemaWrapperInfo);
|
|
117
119
|
return {
|
|
118
120
|
required: required,
|
|
119
121
|
name: propertyName,
|
|
120
122
|
initialValue: initialValue,
|
|
123
|
+
initialTestValue: initialTestValue,
|
|
121
124
|
isArray: false,
|
|
122
125
|
snakeCaseName: (0, lodash_1.snakeCase)(propertyName).toUpperCase(),
|
|
123
126
|
typeScriptType: this.getPropertyTypeScriptType(schemaWrapperInfo),
|
|
@@ -137,14 +140,16 @@ var OpenApiDocConverter = /** @class */ (function () {
|
|
|
137
140
|
var exists = validationValue !== null && validationValue !== undefined;
|
|
138
141
|
return +exists;
|
|
139
142
|
};
|
|
140
|
-
OpenApiDocConverter.prototype.convertArrayObjectToValuePropertyType = function (propertyName, schemaWrapperInfo) {
|
|
143
|
+
OpenApiDocConverter.prototype.convertArrayObjectToValuePropertyType = function (parentTypeName, propertyName, schemaWrapperInfo) {
|
|
141
144
|
var required = this.getIsRequired(propertyName, schemaWrapperInfo);
|
|
142
145
|
var validatorCount = this.getValidatorCount(propertyName, schemaWrapperInfo);
|
|
143
146
|
var initialValue = this.getInitialValue(propertyName, schemaWrapperInfo);
|
|
147
|
+
var initialTestValue = this.getInitialTestValue(parentTypeName, propertyName, schemaWrapperInfo);
|
|
144
148
|
return {
|
|
145
149
|
required: required,
|
|
146
150
|
typeScriptType: this.getPropertyTypeScriptType(schemaWrapperInfo),
|
|
147
151
|
initialValue: initialValue,
|
|
152
|
+
initialTestValue: initialTestValue,
|
|
148
153
|
name: propertyName,
|
|
149
154
|
isArray: true,
|
|
150
155
|
snakeCaseName: (0, lodash_1.snakeCase)(propertyName).toUpperCase(),
|
|
@@ -182,21 +187,62 @@ var OpenApiDocConverter = /** @class */ (function () {
|
|
|
182
187
|
return "''";
|
|
183
188
|
}
|
|
184
189
|
};
|
|
185
|
-
OpenApiDocConverter.prototype.
|
|
186
|
-
|
|
190
|
+
OpenApiDocConverter.prototype.getInitialTestValue = function (parentTypeName, propertyName, schemaWrapperInfo) {
|
|
191
|
+
var _a, _b, _c;
|
|
192
|
+
var typescriptType = this.getPropertyTypeScriptType(schemaWrapperInfo);
|
|
193
|
+
var schemaObject = (((_a = schemaWrapperInfo === null || schemaWrapperInfo === void 0 ? void 0 : schemaWrapperInfo.componentSchemaObject) === null || _a === void 0 ? void 0 : _a.properties) || {})[propertyName];
|
|
194
|
+
var maxLength = schemaWrapperInfo.propertySchemaObject.maxLength;
|
|
195
|
+
var minLength = schemaWrapperInfo.propertySchemaObject.minLength;
|
|
196
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
|
197
|
+
var refName = schemaObject.$ref || ((_b = schemaObject.items) === null || _b === void 0 ? void 0 : _b.$ref);
|
|
198
|
+
var refObject = (((_c = this.apiDocument.components) === null || _c === void 0 ? void 0 : _c.schemas) || {})[refName];
|
|
199
|
+
var defaultValue = (schemaWrapperInfo.componentSchemaObject.default || (refObject === null || refObject === void 0 ? void 0 : refObject.default) || ((refObject === null || refObject === void 0 ? void 0 : refObject.enum) || [])[0]);
|
|
200
|
+
if (defaultValue && refObject.enum) {
|
|
201
|
+
return "".concat(schemaWrapperInfo.propertyReferenceObject['$ref'], ".").concat(defaultValue.split(' ').pop());
|
|
202
|
+
}
|
|
203
|
+
else if (refObject && parentTypeName !== refName) {
|
|
204
|
+
return schemaObject.type === 'array' ? "[createTest".concat(refName, "()]") : "createTest".concat(refName, "()");
|
|
205
|
+
}
|
|
206
|
+
else if (refObject && parentTypeName == refName) {
|
|
207
|
+
return schemaObject.type === 'array' ? "[]" : "null";
|
|
208
|
+
}
|
|
209
|
+
else if (defaultValue) {
|
|
210
|
+
return "'".concat(defaultValue.split(' ').pop(), "'");
|
|
211
|
+
}
|
|
212
|
+
else if (typescriptType === 'Date') {
|
|
213
|
+
return 'new Date()';
|
|
214
|
+
}
|
|
215
|
+
else if (typescriptType === 'boolean') {
|
|
216
|
+
return 'false';
|
|
217
|
+
}
|
|
218
|
+
else if (typescriptType === 'number') {
|
|
219
|
+
return '0';
|
|
220
|
+
}
|
|
221
|
+
else {
|
|
222
|
+
var retValue = (0, lodash_1.snakeCase)(propertyName).toUpperCase();
|
|
223
|
+
while (minLength && retValue.length < minLength) {
|
|
224
|
+
retValue += retValue;
|
|
225
|
+
}
|
|
226
|
+
return "'".concat(maxLength ? (0, lodash_1.snakeCase)(propertyName).toUpperCase().substring(0, maxLength) : (0, lodash_1.snakeCase)(propertyName).toUpperCase(), "'");
|
|
227
|
+
}
|
|
228
|
+
};
|
|
229
|
+
OpenApiDocConverter.prototype.convertArrayObjectToReferencePropertyType = function (parentTypeName, propertyName, schemaWrapperInfo) {
|
|
230
|
+
return __assign(__assign({}, this.convertReferenceObjectToPropertyType(parentTypeName, propertyName, schemaWrapperInfo)), { isArray: true });
|
|
187
231
|
};
|
|
188
|
-
OpenApiDocConverter.prototype.convertReferenceObjectToPropertyType = function (propertyName, schemaWrapperInfo) {
|
|
232
|
+
OpenApiDocConverter.prototype.convertReferenceObjectToPropertyType = function (parentTypeName, propertyName, schemaWrapperInfo) {
|
|
189
233
|
var _a, _b;
|
|
190
234
|
var propertySchema = (((_a = this.apiDocument.components) === null || _a === void 0 ? void 0 : _a.schemas) || {})[this.parseRef(schemaWrapperInfo)];
|
|
191
235
|
var refSchema = (((_b = schemaWrapperInfo === null || schemaWrapperInfo === void 0 ? void 0 : schemaWrapperInfo.componentSchemaObject) === null || _b === void 0 ? void 0 : _b.properties) || {})[propertyName];
|
|
192
236
|
var required = this.getIsRequired(propertyName, schemaWrapperInfo);
|
|
193
237
|
var validatorCount = this.getValidatorCount(propertyName, schemaWrapperInfo);
|
|
194
238
|
var initialValue = this.getInitialValue(propertyName, schemaWrapperInfo);
|
|
239
|
+
var initialTestValue = this.getInitialTestValue(parentTypeName, propertyName, schemaWrapperInfo);
|
|
195
240
|
var typeName = this.parseRef(schemaWrapperInfo);
|
|
196
241
|
return {
|
|
197
242
|
required: required,
|
|
198
243
|
name: propertyName,
|
|
199
244
|
initialValue: initialValue,
|
|
245
|
+
initialTestValue: initialTestValue,
|
|
200
246
|
snakeCaseName: (0, lodash_1.snakeCase)(propertyName).toUpperCase(),
|
|
201
247
|
referenceTypeName: typeName,
|
|
202
248
|
typeScriptType: typeName,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openapi-ts-generator",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.225.6",
|
|
4
4
|
"description": "Based on swagger-ts-generator, this is a type script model generator specifically for services with OpenApi spec documentation.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -6,27 +6,10 @@
|
|
|
6
6
|
* For issues or feature request, visit the repo: https://github.com/ikemtz/openapi-ts-generator
|
|
7
7
|
* Do not edit.
|
|
8
8
|
*/
|
|
9
|
-
import { FormControl, FormArray, FormGroup, Validators } from '@angular/forms'; //NOSONAR
|
|
9
|
+
import { FormControl, FormArray, FormGroup, Validators } from '@angular/forms'; //NOSONAR
|
|
10
|
+
import { I{{name}}Form } from './{{kebabCasedName}}.form';{{#if importTypes}}{{#importTypes}}{{#unless isSelfReferencing}}{{#if isEnum}}
|
|
10
11
|
import { {{name}} } from './{{kebabCasedTypeName}}.enum';{{else}}
|
|
11
|
-
import { I{{name}} } from './{{kebabCasedTypeName}}.
|
|
12
|
-
import { I{{name}}Form } from './{{kebabCasedTypeName}}.form-group-fac';{{/if}}{{/importTypes}}{{/if}}
|
|
13
|
-
|
|
14
|
-
export interface I{{name}}Form {
|
|
15
|
-
{{#valueProperties}}
|
|
16
|
-
{{#if isArray}}
|
|
17
|
-
{{name}}: FormArray<FormControl<{{typeScriptType}}>>;
|
|
18
|
-
{{else}}
|
|
19
|
-
{{name}}: FormControl<{{typeScriptType}}{{#unless required}} | null{{/unless}}>;
|
|
20
|
-
{{/if}}
|
|
21
|
-
{{/valueProperties}}
|
|
22
|
-
{{#referenceProperties}}
|
|
23
|
-
{{#if isArray}}
|
|
24
|
-
{{name}}: FormArray<FormGroup<I{{typeScriptType}}Form>>;
|
|
25
|
-
{{else}}
|
|
26
|
-
{{name}}: FormControl<{{#unless isEnum}}I{{/unless}}{{typeScriptType}}{{#unless required}} | null{{/unless}}>;
|
|
27
|
-
{{/if}}
|
|
28
|
-
{{/referenceProperties}}
|
|
29
|
-
}
|
|
12
|
+
import { I{{name}}Form } from './{{kebabCasedTypeName}}.form';{{/if}}{{/unless}}{{/importTypes}}{{/if}}
|
|
30
13
|
|
|
31
14
|
export function {{name}}FormGroupFac(): FormGroup<I{{name}}Form> {
|
|
32
15
|
return new FormGroup<I{{name}}Form>({
|
|
@@ -52,11 +35,17 @@ export function {{name}}FormGroupFac(): FormGroup<I{{name}}Form> {
|
|
|
52
35
|
{{else}}
|
|
53
36
|
{{name}}: new FormArray<FormGroup<I{{typeScriptType}}Form>>([]{{#if hasValidators}}, { validators: {{#if required}}Validators.required{{/if}}{{minLengthValidator "referenceProperties"}}{{maxLengthValidator "referenceProperties"}}{{minimumValidator "referenceProperties"}}{{maximumValidator "referenceProperties"}}{{minItemsValidator "referenceProperties"}}{{maxItemsValidator "referenceProperties"}}{{{patternValidator "referenceProperties"}}} } {{/if}}),
|
|
54
37
|
{{/if}}
|
|
38
|
+
{{else if isEnum}}
|
|
39
|
+
{{#if hasMultipleValidators}}
|
|
40
|
+
{{name}}: new FormControl<{{typeScriptType}}{{#unless required}} | null{{/unless}}>({{{initialValue}}}, { validators: Validators.compose([{{#if required}}Validators.required, {{/if}}{{minLengthValidator "referenceProperties"}}{{maxLengthValidator "referenceProperties"}}{{minimumValidator "referenceProperties"}}{{maximumValidator "referenceProperties"}}{{minItemsValidator "referenceProperties"}}{{maxItemsValidator "referenceProperties"}}{{{patternValidator "referenceProperties"}}}]){{#if required}}, nonNullable: true{{/if}} }),
|
|
41
|
+
{{else}}
|
|
42
|
+
{{name}}: new FormControl<{{typeScriptType}}{{#unless required}} | null{{/unless}}>({{{initialValue}}}{{#if hasValidators}}, { validators: {{#if required}}Validators.required{{/if}}{{minLengthValidator "referenceProperties"}}{{maxLengthValidator "referenceProperties"}}{{minimumValidator "referenceProperties"}}{{maximumValidator "referenceProperties"}}{{minItemsValidator "referenceProperties"}}{{maxItemsValidator "referenceProperties"}}{{{patternValidator "referenceProperties"}}}{{#if required}}, nonNullable: true{{/if}} } {{/if}}),
|
|
43
|
+
{{/if}}
|
|
55
44
|
{{else}}
|
|
56
45
|
{{#if hasMultipleValidators}}
|
|
57
|
-
{{name}}: new
|
|
46
|
+
{{name}}: new FormGroup<I{{typeScriptType}}Form{{#unless required}} | null{{/unless}}>({{{initialValue}}}, { validators: Validators.compose([{{#if required}}Validators.required, {{/if}}{{minLengthValidator "referenceProperties"}}{{maxLengthValidator "referenceProperties"}}{{minimumValidator "referenceProperties"}}{{maximumValidator "referenceProperties"}}{{minItemsValidator "referenceProperties"}}{{maxItemsValidator "referenceProperties"}}{{{patternValidator "referenceProperties"}}}]){{#if required}}, nonNullable: true{{/if}} }),
|
|
58
47
|
{{else}}
|
|
59
|
-
{{name}}: new
|
|
48
|
+
{{name}}: new FormGroup<I{{typeScriptType}}Form{{#unless required}} | null{{/unless}}>({{{initialValue}}}{{#if hasValidators}}, { validators: {{#if required}}Validators.required{{/if}}{{minLengthValidator "referenceProperties"}}{{maxLengthValidator "referenceProperties"}}{{minimumValidator "referenceProperties"}}{{maximumValidator "referenceProperties"}}{{minItemsValidator "referenceProperties"}}{{maxItemsValidator "referenceProperties"}}{{{patternValidator "referenceProperties"}}}{{#if required}}, nonNullable: true{{/if}} } {{/if}}),
|
|
60
49
|
{{/if}}
|
|
61
50
|
{{/if}}
|
|
62
51
|
{{/referenceProperties}}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
2
|
+
/* istanbul ignore file */
|
|
3
|
+
/**
|
|
4
|
+
* This file is generated by the openapi-ts-generator
|
|
5
|
+
* #form.ts.hbs
|
|
6
|
+
* For issues or feature request, visit the repo: https://github.com/ikemtz/openapi-ts-generator
|
|
7
|
+
* Do not edit.
|
|
8
|
+
*/
|
|
9
|
+
import { FormControl, FormArray, FormGroup } from '@angular/forms'; //NOSONAR{{#if importTypes}}{{#importTypes}}{{#unless isSelfReferencing}}{{#if isEnum}}
|
|
10
|
+
import { {{name}} } from './{{kebabCasedTypeName}}.enum';{{else}}
|
|
11
|
+
import { I{{name}}Form } from './{{kebabCasedTypeName}}.form-group-fac';{{/if}}{{/unless}}{{/importTypes}}{{/if}}
|
|
12
|
+
|
|
13
|
+
export interface I{{name}}Form {
|
|
14
|
+
{{#valueProperties}}
|
|
15
|
+
{{#if isArray}}
|
|
16
|
+
{{name}}: FormArray<FormControl<{{typeScriptType}}>>;
|
|
17
|
+
{{else}}
|
|
18
|
+
{{name}}: FormControl<{{typeScriptType}}{{#unless required}} | null{{/unless}}>;
|
|
19
|
+
{{/if}}
|
|
20
|
+
{{/valueProperties}}
|
|
21
|
+
{{#referenceProperties}}
|
|
22
|
+
{{#if isArray}}
|
|
23
|
+
{{name}}: FormArray<FormGroup<I{{typeScriptType}}Form>>;
|
|
24
|
+
{{else if isEnum}}
|
|
25
|
+
{{name}}: FormControl<{{typeScriptType}}{{#unless required}} | null{{/unless}}>;
|
|
26
|
+
{{else}}
|
|
27
|
+
{{name}}: FormGroup<I{{typeScriptType}}Form{{#unless required}} | null{{/unless}}>;
|
|
28
|
+
{{/if}}
|
|
29
|
+
{{/referenceProperties}}
|
|
30
|
+
}
|
package/templates/model.ts.hbs
CHANGED
|
@@ -21,6 +21,10 @@ export interface I{{{name}}} {
|
|
|
21
21
|
{{name}}?: {{typeScriptType}}{{#if isArray}}[]{{/if}}{{#unless required}} | null{{/unless}};
|
|
22
22
|
{{/valueProperties}}
|
|
23
23
|
{{#referenceProperties}}
|
|
24
|
-
|
|
24
|
+
{{#if isEnum}}
|
|
25
|
+
{{name}}?: {{referenceTypeName}}{{#if isArray}}[]{{/if}}{{#unless required}} | null{{/unless}};
|
|
26
|
+
{{else}}
|
|
27
|
+
{{name}}?: Partial<I{{referenceTypeName}}{{#if isArray}}[]{{/if}}>;
|
|
28
|
+
{{/if}}
|
|
25
29
|
{{/referenceProperties}}
|
|
26
30
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/* istanbul ignore file */
|
|
2
|
+
/**
|
|
3
|
+
* This file is generated by the openapi-ts-generator
|
|
4
|
+
* #test-object-factory.ts.hbs
|
|
5
|
+
* For issues or feature request, visit the repo: https://github.com/ikemtz/openapi-ts-generator
|
|
6
|
+
* Do not edit.
|
|
7
|
+
*/
|
|
8
|
+
{{#if importTypes}}{{#importTypes}}{{#unless isSelfReferencing}}{{#if isEnum}}
|
|
9
|
+
import { {{name}} } from './{{kebabCasedTypeName}}.enum';{{else}}
|
|
10
|
+
import { createTest{{name}} } from './{{kebabCasedTypeName}}.test-obj-fac';{{/if}}{{/unless}}{{/importTypes}}{{/if}}
|
|
11
|
+
import { I{{name}} } from './{{kebabCasedName}}.model.ts';
|
|
12
|
+
import { {{name}}Properties } from './{{kebabCasedName}}.properties.ts';
|
|
13
|
+
|
|
14
|
+
export function createTest{{name}}(): Partial<I{{name}}> {
|
|
15
|
+
return { {{#valueProperties}}
|
|
16
|
+
[{{../name}}Properties.{{snakeCaseName}}]: {{{initialTestValue}}},{{/valueProperties}} {{#referenceProperties}}
|
|
17
|
+
[{{../name}}Properties.{{snakeCaseName}}]: {{{initialTestValue}}},{{/referenceProperties}}
|
|
18
|
+
};
|
|
19
|
+
}
|