UNPKG

atikin-universal-validator

Version:

A blazing-fast, zero-dependency validator for frontend and backend JS/TS applications.

17 lines (15 loc) 559 B
import * as validators from './validators'; import { ValidationSchema, ValidationResult } from './types'; export function validate(schema: ValidationSchema): ValidationResult { const errors: Record<string, string> = {}; let success = true; for (const key in schema) { const [value, validatorName] = schema[key]; const validator = (validators as any)[validatorName]; if (!validator || !validator(value)) { success = false; errors[key] = `${key} failed ${validatorName}`; } } return { success, errors }; }