UNPKG

universal-types-validator

Version:

Simple data type validator

115 lines (76 loc) 2.55 kB
# types-validator A lightweight and reusable **JavaScript data type validator** for both frontend and backend. Supports **strings, numbers, booleans, arrays, objects, emails, URLs, UUIDs, dates**, and schema validation. --- ## Installation ```bash # For npm npm install types-validator # For yarn yarn add types-validator # types-validator A lightweight and reusable **JavaScript data type validator** for both frontend and backend. Supports **strings, numbers, booleans, arrays, objects, emails, URLs, UUIDs, dates**, and schema validation. --- ## Installation ```bash # For npm npm install types-validator # For yarn yarn add types-validator Usage ESM (Frontend / Modern Node.js) import Validator from 'types-validator'; console.log(Validator.isString("hello")); // true console.log(Validator.isEmail("test@mail.com")); // true // Generic validation console.log(Validator.validate(123, "number")); // true // Schema validation const user = { name: "Alice", age: 25, email: "alice@mail.com" }; const result = Validator.validateSchema(user, { name: "string", age: "number", email: "email" }); console.log(result); // { valid: true } CJS (Node.js) const Validator = require('types-validator'); console.log(Validator.isNumber(42)); // true console.log(Validator.isUrl("https://example.com")); // true API Type Checks Validator.isString(value) Validator.isNumber(value) Validator.isBoolean(value) Validator.isArray(value) Validator.isObject(value) Validator.isFunction(value) Validator.isNull(value) Validator.isUndefined(value) Validator.isEmail(value) Validator.isUrl(value) Validator.isUUID(value) Validator.isDate(value) Validator.isEmpty(value) Generic Validation Validator.validate(value, type) // type can be: 'string', 'number', 'boolean', 'array', 'object', 'email', 'url', 'uuid', 'date', etc. Schema Validation Validator.validateSchema(obj, schema) // obj: your object // schema: { keyName: "type", ... } const result = Validator.validateSchema( { name: "Alice", age: 25 }, { name: "string", age: "number" } ); console.log(result); // { valid: true } or { valid: false, errors: [...] } Notes Works in both frontend and backend. Fully ESM-compatible, with a CJS wrapper for Node.js require. Tree-shakeable in modern bundlers. License MIT --- If you want, I can also give you a **ready-to-use full command sequence** to **bump the version, update the package name, commit, and publish `types-validator`** to npm in one go. This will make updating very smooth. Do you want me to do that?