@edgeguideab/expect
Version:
Check for user input in a consistent way and generate error messages for missings
45 lines (44 loc) • 1.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.parseFunctionWrapper = exports.parseType = void 0;
function parseType(_a) {
var value = _a.value, type = _a.type;
try {
switch (type) {
case "string":
return typeof value === "string" ? value : JSON.stringify(value);
case "number":
return typeof value === "string" && value ? Number(value) : value;
case "date":
return new Date(value);
case "array":
case "object":
return JSON.parse(value);
case "boolean":
try {
return value === "undefined" || value === "NaN"
? false
: !!JSON.parse(value);
}
catch (error) {
return !!value;
}
default:
return value;
}
}
catch (error) {
return value;
}
}
exports.parseType = parseType;
function parseFunctionWrapper(_a) {
var value = _a.value, parse = _a.parse;
try {
return parse(value);
}
catch (error) {
return value;
}
}
exports.parseFunctionWrapper = parseFunctionWrapper;