UNPKG

ts-json-schema-generator

Version:

Generate JSON schema from your Typescript sources

22 lines 1.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ObjectLiteralExpressionNodeParser = void 0; const tslib_1 = require("tslib"); const typescript_1 = tslib_1.__importDefault(require("typescript")); const nodeKey_js_1 = require("../Utils/nodeKey.js"); const ObjectType_js_1 = require("../Type/ObjectType.js"); class ObjectLiteralExpressionNodeParser { childNodeParser; constructor(childNodeParser) { this.childNodeParser = childNodeParser; } supportsNode(node) { return node.kind === typescript_1.default.SyntaxKind.ObjectLiteralExpression; } createType(node, context) { const properties = node.properties.map((t) => new ObjectType_js_1.ObjectProperty(t.name.getText(), this.childNodeParser.createType(t.initializer, context), !t.questionToken)); return new ObjectType_js_1.ObjectType(`object-${(0, nodeKey_js_1.getKey)(node, context)}`, [], properties, false); } } exports.ObjectLiteralExpressionNodeParser = ObjectLiteralExpressionNodeParser; //# sourceMappingURL=ObjectLiteralExpressionNodeParser.js.map