unified

Project: vfile/vfile-reporter-json

Package: vfile-reporter-json@3.1.0

  1. Dependents: 3
  2. vfile utility to create a JSON report for a file
  1. util 143
  2. utility 139
  3. file 34
  4. virtual 19
  5. vfile 17
  6. vfile-util 15
  7. vfile-reporter 4
  8. reporter 4
  9. formatter 3
  10. format 3
  11. report 2
  12. json 2

vfile-reporter-json

Build Coverage Downloads Sponsors Backers Chat

Format vfiles as stringified JSON.

Install

This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required.

npm:

npm install vfile-reporter-json

Use

import {VFile} from 'vfile'
import {reporterJson} from 'vfile-reporter-json'

var one = new VFile({path: 'test/fixture/1.js'})
var two = new VFile({path: 'test/fixture/2.js'})

one.message('Warning!', {line: 2, column: 4})

console.log(reporterJson([one, two]))

Yields:

[{"path":"test/fixture/1.js","cwd":"/Users/tilde/projects/oss/vfile-reporter-json","history":["test/fixture/1.js"],"messages":[{"reason":"Warning!","line":2,"column":4,"position":{"start":{"line":2,"column":4},"end":{"line":null,"column":null}},"ruleId":null,"source":null,"fatal":false,"stack":null}]},{"path":"test/fixture/2.js","cwd":"/Users/tilde/projects/oss/vfile-reporter-json","history":["test/fixture/2.js"],"messages":[]}]

API

This package exports the following identifiers: reporterJson. That identifier is also the default export.

reporter(files[, options])

Generate stringified JSON for files (VFile or Array.<VFile>).

options.quiet

Do not output anything for a file which has no warnings or errors (boolean, default: false). The default behavior is to show a success message.

options.silent

Do not output messages without fatal set to true (boolean, default: false). Also sets quiet to true.

options.pretty

Given as space to JSON.stringify() (boolean, number, or string, default: 0). When true, defaults to 2.

Contribute

See contributing.md in vfile/.github for ways to get started. See support.md for ways to get help.

This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

License

MIT © Titus Wormer