UNPKG

ts-json-schema-generator

Version:

Generate JSON schema from your Typescript sources

34 lines 1.36 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.deepMerge = void 0; const intersectionOfArrays_1 = require("./intersectionOfArrays"); function deepMerge(a, b) { const output = Object.assign(Object.assign({}, a), b); for (const key in a) { if (b.hasOwnProperty(key)) { const elementA = a[key]; const elementB = b[key]; if (elementA != null && elementB != null && typeof elementA === "object" && typeof elementB === "object" && "type" in elementA && "type" in elementB) { if (elementA.type == elementB.type) { if (elementA.enum == null && elementB.enum != null) { output[key].enum = elementB.enum; } else if (elementA.enum != null && elementB.enum == null) { output[key].enum = elementA.enum; } else if (elementA.enum != null && elementB.enum != null) { output[key].enum = intersectionOfArrays_1.intersectionOfArrays(elementA.enum, elementB.enum); } } } } } return output; } exports.deepMerge = deepMerge; //# sourceMappingURL=deepMerge.js.map