swagger-typescript-generator
Version:
Generate typescript code from swagger.json. Before start this project I try use [swagger-typescript-codegen](https://github.com/mtennoe/swagger-typescript-codegen) based on [mustache templates](https://github.com/mtennoe/swagger-js-codegen/tree/master/lib
50 lines • 2.22 kB
JavaScript
;
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.SwaggerModel = void 0;
var swagger_base_1 = require("./swagger-base");
var swagger_model_property_1 = require("./swagger-model-property");
var SwaggerModel = /** @class */ (function (_super) {
__extends(SwaggerModel, _super);
function SwaggerModel(parent, name, source) {
var _this = _super.call(this) || this;
_this.type = "";
_this.name = "";
_this.fileName = "";
_this.properties = [];
_this.isEnum = undefined;
_this.parent = parent;
_this.source = source;
_this.name = _this.utils.getModelName(_this, name);
_this.fileName = _this.utils.getModelFileName(_this, name);
_this.type = _this.utils.getModelType(_this, source);
_this.isEnum = _this.utils.isEnum(source) ? true : undefined;
var requiredArray = source.required || [];
_this.properties = Object.keys(source.properties || []).map(function (propertyName) {
var property = source.properties[propertyName];
var required = requiredArray.some(function (x) { return x === propertyName; })
? true
: undefined;
return new swagger_model_property_1.SwaggerModelProperty(_this, propertyName, property, required);
});
return _this;
}
SwaggerModel.prototype.init = function () {
this.properties.forEach(function (p) { return p.init(); });
};
return SwaggerModel;
}(swagger_base_1.SwaggerBase));
exports.SwaggerModel = SwaggerModel;
//# sourceMappingURL=swagger-model.js.map