Newsworthy Presidential Mistakes
Introducing npm Teams! Private packages + team management tools.Learn more »

@wmfs/statelint

1.9.0 • Public • Published

statelint

Tymly Package npm (scoped) CircleCI codecov Dependabot badge Commitizen friendly JavaScript Style Guide license

An npm package providing a validator for Amazon States Language JSON files. Usable from the command-line or as a library.

This package is derived from Amazon Web Services Labs' awslabs/statelint and is up to date with the changes announced on 29 November 2018.

From the Command-line

Installation

npm install --global @wmfs/statelint

Usage

statelint state-machine-spec [state-machine-spec...]

There are no options. If you see no output, your state machine is fine.

As a library

Installation

npm install --save @wmfs/statelint

Usage

const stateLint = require('@wmfs/statelint')
 
const problems = stateLint.validate(json)
if (problems.length !== 0) {
  console.log('Oh dear!')
  problems.forEach(p => console.log(`ERROR: ${p}`)
}
  • json is the state machine to validate as a JSON object.

stateLint.validate returns an array or error strings. If the array is empty, the state machine is fine. If not, then there's a problem! The validator is exhaustive, so it will report every problem it finds, not simply bail at the first thing. The error messages have the general form <json-path to error> <description of error>.

Contributing

Bug reports and pull requests are welcome on GitHub. Please be aware of our Code of Conduct

License

Licensed under the terms of the MIT license. Copyright (c) 2018 West Midlands Fire Service

Install

npm i @wmfs/statelint

DownloadsWeekly Downloads

656

Version

1.9.0

License

MIT

Unpacked Size

46.5 kB

Total Files

38

Last publish

Collaborators

  • avatar