ts-randomizer
Version:
A tool to create random data by type parameters
28 lines • 1.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getArrayTypeDescription = void 0;
const ts = require("typescript");
const fp_1 = require("lodash/fp");
const node_1 = require("./node");
const types_1 = require("../../types");
const create_description_1 = require("./utils/create-description");
const checker_1 = require("../checker");
const getArrayTypeDescription = (node, typeArgumentsMap = {}) => {
const checker = (0, checker_1.getTypeChecker)();
if (ts.isArrayTypeNode(node.elementType)) {
return {
flag: types_1.DescriptionFlag.Array,
description: (0, node_1.generateNodeDescription)(node.elementType, typeArgumentsMap),
};
}
const type = checker.getTypeFromTypeNode(node.elementType);
if ((0, fp_1.isEmpty)(typeArgumentsMap)) {
return {
flag: types_1.DescriptionFlag.Array,
description: (0, create_description_1.createDescription)(null, type, typeArgumentsMap),
};
}
return (0, create_description_1.createDescription)(null, type, typeArgumentsMap);
};
exports.getArrayTypeDescription = getArrayTypeDescription;
//# sourceMappingURL=array-type-node.js.map