io-ts-reporters
Error reporters for
io-ts.
Currently this package only includes one reporter. The output is an array of
strings in the format of:
Expecting ${expectedType} at ${path} but instead got: ${actualValue}
And for union types:
Expecting one of:
${unionType1}
${unionType2}
${...}
${unionTypeN}
at ${path} but instead got: ${actualValue}
Installation
yarn add io-ts-reporters
Example
import * as t from 'io-ts'
import reporter from 'io-ts-reporters'
const User = t.interface({name: t.string})
reporter.report(User.decode({nam: 'Jane'}))
reporter.report(User.decode({name: 'Jane'}))
To only format the validation errors in case the validation failed (ie.
mapLeft
) use formatValidationErrors
instead.
import * as t from 'io-ts'
import {formatValidationErrors} from 'io-ts-reporters'
import * as E from 'fp-ts/Either'
import {pipe} from 'fp-ts/pipeable'
const User = t.interface({name: t.string})
const result = User.decode({nam: 'Jane'})
E.mapLeft(formatValidationErrors)(result)
For more examples see the tests.
TypeScript compatibility
io-ts-reporters version | required typescript version |
---|
1.0.0 | 3.5+ |
<= 0.0.21 | 2.7+ |
Testing
yarn
yarn run test
Credits
This library was created by OliverJAsh.