tv4-formats

v3.0.4
Common JSON Schema string format constraints in the form of tv4 validator callbacks
json schema validator tv4 format

About

Provides an implementation of common JSON Schema string format constraints in the form of tv4 validator callbacks. Thus, it's a plug-in for tv4.

Usage

First, install it, together with tv4 itself, via Node.js'es npm into your project

$ npm install --save tv4 tv4-formats

Then, in the code

var tv4 = require('tv4'),
    formats = require('tv4-formats'),
    assert = require('assert'),
    validator = tv4.freshApi(),
    schema = {type: 'string', format: 'date'};

validator.addFormat(formats);
assert(validator.validate('2014-02-11', schema));  // Valid ISO 8601 date
assert(!validator.validate('2014-02-29', schema)); // Invalid. Only 28 days in this February
assert(!validator.validate('11.02.2014', schema)); // Invalid. Wrong date format

Here, the format: 'date' part of the schema validation is provided by tv4-formats package.

Supported formats

  • credit-card-number
  • date (YYYY-MM-DD)
  • date-time (for example, 2014-05-02T12:59:29+00:00)
  • duration (for example, P1DT12H for 1.5 days)
  • time-offset (same format as duration, but can also be negative: -P7D)
  • email
  • guid
  • uri
  • url
npm i tv4-formats

Metadata

  • MIT
  • Whatever
  • Ivan Krechetov
  • released 11/24/2022

Downloads

Maintainers