UNPKG

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.

17 lines (16 loc) 608 B
const validationMetadata = new Map(); function getValidationKey(target, key) { const constructor = typeof target === "function" ? target.name : target.constructor.name; return `${constructor}.${key}`; } export function registerValidation(target, key, validator) { const propertyKey = getValidationKey(target, key); if (!validationMetadata.has(propertyKey)) { validationMetadata.set(propertyKey, []); } const validators = validationMetadata.get(propertyKey); if (!validators.includes(validator)) { validators.push(validator); } } export { validationMetadata };