typhonjs-escomplex-project
Version:
Provides project oriented AST processing for typhonjs-escomplex complexity reports.
48 lines (36 loc) • 2.58 kB
Markdown

[](https://www.npmjs.com/package/typhonjs-escomplex-project)
[](http://docs.typhonjs.io/typhonjs-node-escomplex/typhonjs-escomplex-project/)
[](https://en.wikipedia.org/wiki/Indent_style#Allman_style)
[](https://github.com/typhonjs-node-escomplex/typhonjs-escomplex-project/blob/master/LICENSE)
[](https://gitter.im/typhonjs/TyphonJS)
[](https://travis-ci.org/typhonjs-node-escomplex/typhonjs-escomplex-project)
[](https://codecov.io/github/typhonjs-node-escomplex/typhonjs-escomplex-project)
[](https://david-dm.org/typhonjs-node-escomplex/typhonjs-escomplex-project)
Provides project oriented AST processing for typhonjs-escomplex complexity reports. The following JS AST generators are supported / tested: [acorn](https://www.npmjs.com/package/acorn), [babel parser](https://www.npmjs.com/package/@babel/parser), [babylon](https://www.npmjs.com/package/babylon), [espree](https://www.npmjs.com/package/espree), [esprima](https://www.npmjs.com/package/esprima). Any compliant JS parser that supports Babylon or ESTree AST should work as well.
More information forthcoming. This NPM module can be installed as a dependency in `package.json` as follows:
```
"dependencies": {
"typhonjs-escomplex-project": "^0.1.0"
}
```
An ES6 example follows:
```
import escomplexProject from 'typhonjs-escomplex-project';
const modules =
[
{ ast: <some parsed AST>, srcPath: 'a/file/path/1' },
{ ast: <some parsed AST>, srcPath: 'a/file/path/2' }
]);
const results = escomplexProject.analyze(modules);
```
A CJS example follows:
```
var escomplexProject = require('typhonjs-escomplex-project');
var modules =
[
{ ast: <some parsed AST>, srcPath: 'a/file/path/1' },
{ ast: <some parsed AST>, srcPath: 'a/file/path/2' }
]);
var results = escomplexProject.analyze(modules);
```