@russ-b/nestjs-common-tools
Version:
NestJS utility tools
29 lines • 1.05 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.parseBooleanFromStringTransformer = void 0;
exports.ToBooleanFromString = ToBooleanFromString;
const class_transformer_1 = require("class-transformer");
function ToBooleanFromString() {
return (0, class_transformer_1.Transform)(exports.parseBooleanFromStringTransformer);
}
const parseBooleanFromStringTransformer = ({ value, }) => normalizeBooleanFromString(value);
exports.parseBooleanFromStringTransformer = parseBooleanFromStringTransformer;
function normalizeBooleanFromString(value) {
if (value === undefined) {
return undefined;
}
if (typeof value === 'boolean') {
return value;
}
if (typeof value === 'string') {
const normalizedValue = value.trim().toLowerCase();
if (normalizedValue === 'true') {
return true;
}
if (normalizedValue === 'false') {
return false;
}
}
return value;
}
//# sourceMappingURL=to-boolean-from-string.decorator.js.map