@tsed/schema
Version:
JsonSchema module for Ts.ED Framework
34 lines • 816 B
JavaScript
/**
* @ignore
* @param genericLabels
* @param genericTypes
*/
export function getGenericsMap(genericLabels, genericTypes) {
return genericLabels.reduce((map, item, index) => map.set(item, genericTypes[index]), new Map());
}
/**
* @ignore
* @param options
*/
export function mapGenericsOptions(options) {
if (options.genericLabels && options.genericTypes) {
const { genericLabels, genericTypes, ...ops } = options;
return {
...ops,
generics: getGenericsMap(genericLabels, genericTypes)
};
}
return options;
}
/**
* @ignore
* @param value
*/
export function popGenerics(value) {
const [genericTypes, ...out] = value.nestedGenerics;
return {
genericTypes,
nestedGenerics: out
};
}
//# sourceMappingURL=generics.js.map