Urara-Blog/node_modules/.pnpm-store/v3/files/b6/f5da9d7ed42a827a11e22494148ad46ba51651e2dbcabec0231c88168366e5b019db116f597403d3868ef92c57e37e9280d023d19c678f78b4f6710530099f
2022-08-14 01:14:53 +08:00

25 lines
No EOL
677 B
Text

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = createTSUnionType;
var _generated = require("../generated");
var _removeTypeDuplicates = require("../../modifications/typescript/removeTypeDuplicates");
var _index = require("../../validators/generated/index");
function createTSUnionType(typeAnnotations) {
const types = typeAnnotations.map(type => {
return (0, _index.isTSTypeAnnotation)(type) ? type.typeAnnotation : type;
});
const flattened = (0, _removeTypeDuplicates.default)(types);
if (flattened.length === 1) {
return flattened[0];
} else {
return (0, _generated.tsUnionType)(flattened);
}
}