kibana/packages/kbn-babel-code-parser
Brandon Kobel 174102c70c
Updating lodash (#40702)
* Updating to @elastic/lodash to 3.10.1-npm-kibana2

* Updating lodash to 4.17.13

There's a stray dependency to lodash 4.17.11 via cypress which doesn't
use "^". This is a dev dependency, so we can ignore it for a bit while
they update their package.json

* Updating some forgotten references to @elastic/lodash@3.10.1-kibana1

* Updating lodash-es to 4.17.13

* Updating to @elastic/lodash to 3.10.1-npm-kibana3

* Using the root resolutions to update cypress's version of lodash.

Thanks @spalger!!!
2019-07-12 10:32:45 -07:00
..
src
.babelrc
package.json Updating lodash (#40702) 2019-07-12 10:32:45 -07:00
README.md

@kbn/babel-code-parser

Simple abstraction over the @babel/parser and the @babel/traverse in order to build a code parser on top.

We have two main functions parseSingleFile (sync and sync version) and the parseEntries (only async version). The first one just parse one entry file and the second one parses recursively all the files from a list of start entry points.

Then we have visitors and strategies. The first ones are basically the visitors to use into the ast from the @babel/traverse. They are the only way to collect info when using the parseSingleFile. The strategies are meant to be used with the parseEntries and configures the info we want to collect from our parsed code. After each loop, one per entry file, the parseEntries method will call the given strategy expecting that strategy would call the desired visitors, assemble the important information to collect and adds them to the final results.