UNPKG

ts-cast

Version:
14 lines (13 loc) 561 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var names_1 = require("../helpers/names"); var throw_type_error_1 = require("./throw-type-error"); var optional = function (caster) { return (0, names_1.withName)(function (value, context, reportError) { if (reportError === void 0) { reportError = throw_type_error_1.throwTypeError; } return (value !== undefined ? caster(value, context, reportError) : value); }, "".concat(caster.name, " | undefined")); }; exports.default = optional;