assertthat
Version:
assertthat provides fluent TDD.
34 lines (33 loc) • 1.32 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.dispel = void 0;
const dispelArray_1 = require("./dispelArray");
const dispelError_1 = require("./dispelError");
const dispelMap_1 = require("./dispelMap");
const dispelObject_1 = require("./dispelObject");
const dispelResult_1 = require("./dispelResult");
const dispelSet_1 = require("./dispelSet");
const defekt_1 = require("defekt");
const typedescriptor_1 = require("typedescriptor");
const dispel = function (value, path = '/', ancestors = []) {
if ((0, typedescriptor_1.isSet)(value)) {
return (0, dispelSet_1.dispelSet)(value, path, ancestors);
}
if ((0, typedescriptor_1.isMap)(value)) {
return (0, dispelMap_1.dispelMap)(value, path, ancestors);
}
if ((0, typedescriptor_1.isArray)(value)) {
return (0, dispelArray_1.dispelArray)(value, path, ancestors);
}
if ((0, defekt_1.isResult)(value)) {
return (0, dispelResult_1.dispelResult)(value, path, ancestors);
}
if ((0, typedescriptor_1.isError)(value)) {
return (0, dispelError_1.dispelError)(value, path, ancestors);
}
if ((0, typedescriptor_1.isObject)(value)) {
return (0, dispelObject_1.dispelObject)(value, path, ancestors);
}
return value;
};
exports.dispel = dispel;