Skip to content

CentralPing/micro-json-api-query

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@CentralPing/micro-json-api-query

Build Status Coverage Status Dependency Status Greenkeeper Status Known Vulnerabilities

A micro wrapper for parsing and validating querystrings with json-api-query.

Installation

npm i --save @centralping/micro-json-api-query

API Reference

microJsonApiQuery~schema : Object

Module property that generates a new deep copy of the default schema on every import. Apply any extensions and provide as an optional schema for the validate method.

Kind: inner property of microJsonApiQuery

microJsonApiQuery~parse ⇒ function

Kind: inner property of microJsonApiQuery
Returns: function - The configured parser function

Param Type Default Description
[options] Object Any AJV option.
[options.coerceTypes] Boolean | String 'array' Coerces validated values to specified types in the schema.
[options.ownProperties] Boolean true Restricts validation to own properties of data object.
[schema] Object A JSON Schema for a JSON API query. Defaults to the included schema.

Example

const parser = parse();

Examples

For Default Parsing

const {parse} = require('@centralping/micro-json-api-query');

const parser = parse();

// req is the micro request object
const {query} = parser(req);

For AJV Options

const {parse} = require('@centralping/micro-json-api-query');

const parser = parse({allErrors: true});

// req is the micro request object
const {query} = parser(req);

For Extended Verification

const {parse, schema} = require('@centralping/micro-json-api-query');

// extend schema

const parser = parse(undefined, schema);

// req is the micro request object
const {query} = parser(req);

Test

npm test

With coverage reporting:

npm test -- --coverage

With file watch:

npm run watch

License

MIT

About

A JSON API compliant query parameter validator for micro.

Resources

Stars

Watchers

Forks

Packages

No packages published