convict-format-with-moment

6.2.0 • Public • Published

Convict-format-with-moment

NPM version

Formats duration and timestamp for convict with Moment.js.

Install

npm install convict-format-with-moment

Usage

An example config.js file:

const convict = require('convict');
const convict_format_with_moment = require('convict-format-with-moment');

// Add all formats
convict.addFormats(convict_format_with_moment);

// Or add only specific formats:
// convict.addFormat(convict_format_with_moment.duration);
// etc.

// Define a schema
var config = convict({
  format: {
    format: 'duration'
  },
  format: {
    format: 'timestamp'
  }
});

Validation

Validation done through Moment.js:

  • duration - milliseconds or a human readable string (e.g. 3000, "5 days")
  • timestamp - Unix timestamps or date strings recognized by Moment.js

Coercion

Convict will automatically coerce environmental variables from strings to their proper types when importing them. For instance, values with the format int, nat, port, or Number will become numbers after a straight forward parseInt or parseFloat. duration and timestamp are also parse and converted into numbers, though they utilize Moment.js for date parsing.

Dependencies (1)

Dev Dependencies (0)

    Package Sidebar

    Install

    npm i convict-format-with-moment

    Weekly Downloads

    24,924

    Version

    6.2.0

    License

    Apache-2.0

    Unpacked Size

    3.89 kB

    Total Files

    4

    Last publish

    Collaborators

    • vladikoff
    • dannycoates
    • madarche
    • rfkelly