Skip to content
This repository has been archived by the owner on Jan 8, 2019. It is now read-only.
/ options-resolver Public archive

JavaScript port of awesome Symfony component "OptionsResolver"

License

Notifications You must be signed in to change notification settings

krachot/options-resolver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OptionsResolver

This is a port of awesome Symfony component OptionsResolver. This library processes and validates option object.

Build Status Code Climate

Installation

npm install options-resolver --save

Usage

import createResolver from 'options-resolver';

const resolver = createResolver();
resolver
  .setDefaults({
    'foo': 'bar',
    'baz': 'bam'
  })
  .setRequired('foo')
  .setAllowedTypes('foo', 'string')
  .setAllowedValues('foo', ['bar', 'one'])
;

resolver.resolve({
  'foo': 'one'
}).then((options) => {
  // options is equal to :
  // {
  //    'foo': 'one',
  //    'baz': 'bam'
  // }
});

Run tests

npm run test

TODO

  • Improve documentation
  • Add Express middleware

Release History

  • 1.0.0 First release

About

JavaScript port of awesome Symfony component "OptionsResolver"

Resources

License

Stars

Watchers

Forks

Packages