typescript-checker
Version:
Powerful data validation library enabling type safety
39 lines (38 loc) • 1.5 kB
JavaScript
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.check = exports.CheckerError = void 0;
var core_1 = require("./core");
var CheckerError = /** @class */ (function (_super) {
__extends(CheckerError, _super);
function CheckerError(value, errors) {
var _this = _super.call(this, errors.join("; ")) || this;
_this.value = value;
_this.errors = errors;
return _this;
}
return CheckerError;
}(Error));
exports.CheckerError = CheckerError;
var check = function (checker, value) {
var result = checker(value);
if ((0, core_1.isCheckError)(result)) {
throw new CheckerError(value, result[0]);
}
return result[1];
};
exports.check = check;
;