flow-parser 0.320.0 → 0.321.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -26
- package/package.json +6 -7
- package/flow_parser.js +0 -14585
- package/oxidized/oxidized-src/FlowParser.js +0 -249
- package/oxidized/oxidized-src/FlowParserDeserializer.js +0 -209
- package/oxidized/oxidized-src/FlowParserNodeDeserializers.js +0 -1781
- package/oxidized/oxidized-src/HermesParserDecodeUTF8String.js +0 -45
- package/oxidized/oxidized-src/ParserOptions.js +0 -8
- package/oxidized/oxidized-src/babel/TransformESTreeToBabel.js +0 -1063
- package/oxidized/oxidized-src/estree/StripFlowTypes.js +0 -158
- package/oxidized/oxidized-src/estree/StripFlowTypesForBabel.js +0 -191
- package/oxidized/oxidized-src/estree/TransformComponentSyntax.js +0 -764
- package/oxidized/oxidized-src/estree/TransformEnumSyntax.js +0 -92
- package/oxidized/oxidized-src/estree/TransformMatchSyntax.js +0 -990
- package/oxidized/oxidized-src/estree/TransformRecordSyntax.js +0 -283
- package/oxidized/oxidized-src/generated/ESTreeVisitorKeys.js +0 -234
- package/oxidized/oxidized-src/getModuleDocblock.js +0 -87
- package/oxidized/oxidized-src/index.js +0 -220
- package/oxidized/transform/SimpleTransform.js +0 -95
- package/oxidized/transform/astArrayMutationHelpers.js +0 -52
- package/oxidized/transform/astNodeMutationHelpers.js +0 -142
- package/oxidized/transform/print/comments/comments.js +0 -245
- package/oxidized/transform/print/comments/prettier/common/util.js +0 -235
- package/oxidized/transform/print/comments/prettier/language-js/comments.js +0 -663
- package/oxidized/transform/print/comments/prettier/language-js/loc.js +0 -30
- package/oxidized/transform/print/comments/prettier/language-js/printer-estree.js +0 -23
- package/oxidized/transform/print/comments/prettier/language-js/utils.js +0 -89
- package/oxidized/transform/print/comments/prettier/main/comments.js +0 -374
- package/oxidized/transform/print/comments/prettier/utils/get-last.js +0 -5
- package/oxidized/transform/print/detachedNodeTypes.js +0 -1
- package/oxidized/transform/print/print.js +0 -68
- package/oxidized/traverse/SimpleTraverser.js +0 -90
- package/oxidized/traverse/getVisitorKeys.js +0 -29
- package/oxidized/utils/Builders.js +0 -181
- package/oxidized/utils/GenID.js +0 -37
- package/oxidized/utils/createSyntaxError.js +0 -15
- package/oxidized/utils/isReservedWord.js +0 -53
- package/oxidized/utils/mutateESTreeASTForPrettier.js +0 -85
- /package/{oxidized → dist}/FlowParser.js +0 -0
- /package/{oxidized → dist}/FlowParser.js.flow +0 -0
- /package/{oxidized → dist}/FlowParserDeserializer.js +0 -0
- /package/{oxidized → dist}/FlowParserDeserializer.js.flow +0 -0
- /package/{oxidized → dist}/FlowParserNodeDeserializers.js +0 -0
- /package/{oxidized → dist}/FlowParserNodeDeserializers.js.flow +0 -0
- /package/{oxidized → dist}/FlowParserWASM.js +0 -0
- /package/{oxidized → dist}/FlowParserWASM.js.flow +0 -0
- /package/{oxidized → dist}/HermesAST.js.flow +0 -0
- /package/{oxidized → dist}/HermesParserDecodeUTF8String.js +0 -0
- /package/{oxidized → dist}/HermesParserDecodeUTF8String.js.flow +0 -0
- /package/{oxidized → dist}/ParserOptions.js +0 -0
- /package/{oxidized → dist}/ParserOptions.js.flow +0 -0
- /package/{oxidized → dist}/babel/TransformESTreeToBabel.js +0 -0
- /package/{oxidized → dist}/babel/TransformESTreeToBabel.js.flow +0 -0
- /package/{oxidized → dist}/estree/StripFlowTypes.js +0 -0
- /package/{oxidized → dist}/estree/StripFlowTypes.js.flow +0 -0
- /package/{oxidized → dist}/estree/StripFlowTypesForBabel.js +0 -0
- /package/{oxidized → dist}/estree/StripFlowTypesForBabel.js.flow +0 -0
- /package/{oxidized → dist}/estree/TransformComponentSyntax.js +0 -0
- /package/{oxidized → dist}/estree/TransformComponentSyntax.js.flow +0 -0
- /package/{oxidized → dist}/estree/TransformEnumSyntax.js +0 -0
- /package/{oxidized → dist}/estree/TransformEnumSyntax.js.flow +0 -0
- /package/{oxidized → dist}/estree/TransformMatchSyntax.js +0 -0
- /package/{oxidized → dist}/estree/TransformMatchSyntax.js.flow +0 -0
- /package/{oxidized → dist}/estree/TransformRecordSyntax.js +0 -0
- /package/{oxidized → dist}/estree/TransformRecordSyntax.js.flow +0 -0
- /package/{oxidized → dist}/generated/ESTreeVisitorKeys.js +0 -0
- /package/{oxidized → dist}/generated/ESTreeVisitorKeys.js.flow +0 -0
- /package/{oxidized → dist}/getModuleDocblock.js +0 -0
- /package/{oxidized → dist}/getModuleDocblock.js.flow +0 -0
- /package/{oxidized → dist}/index.js +0 -0
- /package/{oxidized → dist}/index.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/SimpleTransform.js +0 -0
- /package/{oxidized → dist}/transform/SimpleTransform.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/astArrayMutationHelpers.js +0 -0
- /package/{oxidized → dist}/transform/astArrayMutationHelpers.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/astNodeMutationHelpers.js +0 -0
- /package/{oxidized → dist}/transform/astNodeMutationHelpers.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/print/comments/comments.js +0 -0
- /package/{oxidized → dist}/transform/print/comments/comments.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/print/comments/prettier/common/util.js +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/print/comments/prettier/language-js/comments.js +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/print/comments/prettier/language-js/loc.js +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/print/comments/prettier/language-js/printer-estree.js +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/print/comments/prettier/language-js/utils.js +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/print/comments/prettier/main/comments.js +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/print/comments/prettier/utils/get-last.js +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/print/detachedNodeTypes.js +0 -0
- /package/{oxidized → dist}/transform/print/detachedNodeTypes.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/transform/print/print.js +0 -0
- /package/{oxidized → dist}/transform/print/print.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/traverse/SimpleTraverser.js +0 -0
- /package/{oxidized → dist}/traverse/SimpleTraverser.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/traverse/getVisitorKeys.js +0 -0
- /package/{oxidized → dist}/traverse/getVisitorKeys.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/utils/Builders.js +0 -0
- /package/{oxidized → dist}/utils/Builders.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/utils/GenID.js +0 -0
- /package/{oxidized → dist}/utils/GenID.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/utils/createSyntaxError.js +0 -0
- /package/{oxidized → dist}/utils/createSyntaxError.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/utils/isReservedWord.js +0 -0
- /package/{oxidized → dist}/utils/isReservedWord.js.flow +0 -0
- /package/{oxidized/oxidized-src → dist}/utils/mutateESTreeASTForPrettier.js +0 -0
- /package/{oxidized → dist}/utils/mutateESTreeASTForPrettier.js.flow +0 -0
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# The flow-parser package
|
|
2
2
|
|
|
3
|
-
This package contains the Flow parser in its
|
|
3
|
+
This package contains the Flow parser in its JavaScript package form.
|
|
4
4
|
|
|
5
5
|
# What is Flow
|
|
6
6
|
|
|
@@ -8,42 +8,30 @@ See [flow.org](https://flow.org/). The code for the Flow parser [lives on GitHub
|
|
|
8
8
|
|
|
9
9
|
# What is the Flow Parser
|
|
10
10
|
|
|
11
|
-
The Flow Parser is a JavaScript parser
|
|
11
|
+
The Flow Parser is a JavaScript parser for Flow syntax. It produces an AST that conforms to the [ESTree spec](https://github.com/estree/estree). This npm package contains the Flow Rust parser compiled to WASM with JavaScript bindings.
|
|
12
12
|
|
|
13
13
|
# Usage
|
|
14
14
|
|
|
15
|
-
You can use the Flow parser in
|
|
15
|
+
You can use the Flow parser in node:
|
|
16
16
|
|
|
17
17
|
```JavaScript
|
|
18
|
-
require('flow-parser')
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
To use in the browser, you can add
|
|
22
|
-
|
|
23
|
-
```HTML
|
|
24
|
-
<script src="flow_parser.js"></script>
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
which will make the `flow` object available to use like so:
|
|
28
|
-
|
|
29
|
-
```JavaScript
|
|
30
|
-
flow.parse('1+1', {});
|
|
18
|
+
const {parse} = require('flow-parser');
|
|
19
|
+
parse('1+1', {});
|
|
31
20
|
```
|
|
32
21
|
|
|
33
22
|
## Options
|
|
34
23
|
|
|
35
|
-
The second argument to `
|
|
24
|
+
The second argument to `parse` is the options object. Common options:
|
|
36
25
|
|
|
37
26
|
### Basic options
|
|
38
|
-
* `
|
|
39
|
-
* `
|
|
40
|
-
* `comments` (boolean, default `true`) - attach comments to AST nodes (`leadingComments` and `trailingComments`)
|
|
41
|
-
* `all_comments` (boolean, default `true`) - include a list of all comments from the whole program
|
|
27
|
+
* `flow` (`'detect'` or `'all'`, default `'detect'`) - parse Flow syntax only with an `@flow` pragma, or always parse Flow syntax
|
|
28
|
+
* `sourceType` (`'module'`, `'script'`, or `'unambiguous'`) - parse the file as a module, script, or infer it from the contents
|
|
42
29
|
* `tokens` (boolean, default `false`) - include a list of all parsed tokens in a top-level `tokens` property
|
|
30
|
+
* `babel` (boolean, default `false`) - return a Babel-shaped AST
|
|
43
31
|
|
|
44
32
|
### Language features
|
|
45
|
-
* `
|
|
46
|
-
* `
|
|
47
|
-
* `
|
|
48
|
-
* `
|
|
49
|
-
* `
|
|
33
|
+
* `enableEnums` (boolean, default `true`) - enable parsing of [enums](https://flow.org/en/docs/enums/)
|
|
34
|
+
* `enableExperimentalFlowMatchSyntax` (boolean, default `true`) - enable parsing of [match expressions and match statements](https://flow.org/en/docs/match/)
|
|
35
|
+
* `enableExperimentalComponentSyntax` (boolean, default `true`) - enable parsing of [component syntax](https://flow.org/en/docs/react/component-syntax/)
|
|
36
|
+
* `assertOperator` (boolean, default `false`) - enable parsing of the assert operator
|
|
37
|
+
* `enableExperimentalDecorators` (boolean, default `true`) - enable parsing of decorators
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "flow-parser",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.321.0",
|
|
4
4
|
"description": "JavaScript parser written in OCaml. Produces ESTree AST",
|
|
5
5
|
"homepage": "https://flow.org",
|
|
6
6
|
"license": "MIT",
|
|
@@ -9,21 +9,20 @@
|
|
|
9
9
|
"email": "flow@fb.com"
|
|
10
10
|
},
|
|
11
11
|
"files": [
|
|
12
|
-
"
|
|
13
|
-
"
|
|
12
|
+
"dist",
|
|
13
|
+
"README.md"
|
|
14
14
|
],
|
|
15
|
-
"main": "
|
|
15
|
+
"main": "dist/index.js",
|
|
16
16
|
"repository": {
|
|
17
17
|
"type": "git",
|
|
18
18
|
"url": "git+https://github.com/facebook/flow.git",
|
|
19
19
|
"directory": "packages/flow-parser"
|
|
20
20
|
},
|
|
21
21
|
"scripts": {
|
|
22
|
-
"test": "node test/run_tests.js"
|
|
23
|
-
"build": "make js"
|
|
22
|
+
"test": "node test/run_tests.js"
|
|
24
23
|
},
|
|
25
24
|
"dependencies": {
|
|
26
|
-
"flow-estree": "0.
|
|
25
|
+
"flow-estree": "0.321.0"
|
|
27
26
|
},
|
|
28
27
|
"devDependencies": {
|
|
29
28
|
"@babel/generator": "7.7.4",
|