@martinmilo/verve
Version:
TypeScript domain modeling library with field-level authorization, business rule validation, and context-aware access control
22 lines • 873 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.isLazyFieldValidator = isLazyFieldValidator;
exports.isEagerFieldValidator = isEagerFieldValidator;
exports.toLazyFieldValidator = toLazyFieldValidator;
exports.mergeFieldValidators = mergeFieldValidators;
function isLazyFieldValidator(v) {
return typeof v === 'function' && '__lazy' in v;
}
function isEagerFieldValidator(v) {
return typeof v === 'function' && !('__lazy' in v);
}
function toLazyFieldValidator(v) {
v.__lazy = true;
return v;
}
function mergeFieldValidators(FieldClass, validators) {
var _a, _b;
const fieldValidators = (_b = (_a = FieldClass.getGlobalValidators) === null || _a === void 0 ? void 0 : _a.call(FieldClass)) !== null && _b !== void 0 ? _b : [];
return [...fieldValidators, ...validators];
}
//# sourceMappingURL=validator.js.map