decoval
Version:
DecoVal is a decorator-driven validation pattern that allows you to add validation rules directly to the properties of TypeScript classes, simplifying data control and increasing code readability and reusability.
12 lines (11 loc) • 443 B
JavaScript
import { ValidationError } from "../dv/error/validation.error";
import { registerValidation } from "../dv/register.validation";
export function Positive(message) {
return (target, key) => {
registerValidation(target, key, (value) => {
if (typeof value !== "number" || value <= 0) {
throw new ValidationError(message || `Property "${key}" must be a positive number.`);
}
});
};
}