check-es3-syntax

1.0.2 • Public • Published

check-es3-syntax

Check if contents of a file is es3-compatible

NPM Version Linux build Status Windows Build Status Coverage Status Codeclimate Status

bitHound Dependencies Dependency Status Dev Dependency Status Peer Dependency Status

Usage

The module exports 2 functions:

  • a default function accepting an array of filenames, and returns a promise resolved with an array of the same files if they are transformed by es3ify

    • Note that if you're using CommonJS, you have to do require('check-es3-syntax').default;
  • a named function checkString, which takes a string as it's first argument, and performs the same check, but only returns a single result

import checkEs3Syntax, { checkString } from 'check-es3-syntax';
 
checkEs3Syntax(['filename1.js', 'filename2.js'])
    .then(arr => {
      arr.forEach(res => {
        console.log(res.filename);
        console.log(res.textDiff);
      });
    });
 
checkString('var o = { class: "Name" }')
    .then(res => {
        console.log(res.filename);
        console.log(res.textDiff);
    });

The promise returned is a bluebird promise, so you can use all the sugar it provides, like map, filter and each.

The resolved array contains objects with diffs using jsdiff, and have the following structure:

const returnValues = {
  filename: 'name-of-file-passed-in.js',
  patch: 'string', // A string with patch conent, as generated by `jsdiff.createPatch`
  textDiff: 'object', // An object with diff objects, as generated by `jsdiff.diffChars`
}

Options

Options are the second argument provided to checkEs3Syntax.

import checkEs3Syntax, { checkString } from 'check-es3-syntax';
 
checkEs3Syntax(['filename1.js', 'filename2.js'], { savePatchToDisk: true, directory: process.cwd() })
    .then(arr => {
      // ...
    });
 
checkString('var o = { class: "Name" }', { savePatchToDisk: true, directory: process.cwd(), filename: 'some file name' })
    .then(res => {
      // ...
    });

savePatchToDisk

Type: boolean, default: false

Whether or not to save the patch file to disk.

directory

Type: string, default: undefined

If savePatchToDisk is set, this is the directory the file is saved to.

filename

Type: string, default: inputString

Only available when using checkString, this is the name used in the diffs and generated patches.

CLI

Use check-es3-syntax-cli.

Readme

Keywords

Package Sidebar

Install

npm i check-es3-syntax

Weekly Downloads

281

Version

1.0.2

License

MIT

Last publish

Collaborators

  • simenb