@react-native/eslint-plugin-specs 0.72.0 → 0.72.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-native/eslint-plugin-specs",
3
- "version": "0.72.0",
3
+ "version": "0.72.2",
4
4
  "description": "ESLint rules to validate NativeModule and Component Specs",
5
5
  "main": "index.js",
6
6
  "repository": {
@@ -13,14 +13,14 @@
13
13
  "postpack": "node postpack.js"
14
14
  },
15
15
  "dependencies": {
16
- "@babel/core": "^7.14.0",
17
- "@babel/eslint-parser": "^7.18.2",
16
+ "@babel/core": "^7.20.0",
17
+ "@babel/eslint-parser": "^7.19.0",
18
18
  "@babel/plugin-transform-flow-strip-types": "^7.0.0",
19
- "@babel/preset-flow": "^7.17.12",
19
+ "@babel/preset-flow": "^7.18.0",
20
+ "@react-native/codegen": "*",
20
21
  "flow-parser": "^0.185.0",
21
22
  "make-dir": "^2.1.0",
22
23
  "pirates": "^4.0.1",
23
- "react-native-codegen": "*",
24
24
  "source-map-support": "0.5.0"
25
25
  },
26
26
  "license": "MIT"
@@ -23,10 +23,11 @@ const ERRORS = {
23
23
 
24
24
  let RNModuleParser;
25
25
  let RNParserUtils;
26
+ let RNFlowParser;
26
27
 
27
28
  function requireModuleParser() {
28
- if (RNModuleParser == null || RNParserUtils == null) {
29
- // If using this externally, we leverage react-native-codegen as published form
29
+ if (RNModuleParser == null || RNParserUtils == null || RNFlowParser == null) {
30
+ // If using this externally, we leverage @react-native/codegen as published form
30
31
  if (!PACKAGE_USAGE) {
31
32
  const config = {
32
33
  only: [/react-native-codegen\/src\//],
@@ -34,18 +35,20 @@ function requireModuleParser() {
34
35
  };
35
36
 
36
37
  withBabelRegister(config, () => {
37
- RNModuleParser = require('react-native-codegen/src/parsers/flow/modules');
38
- RNParserUtils = require('react-native-codegen/src/parsers/utils');
38
+ RNModuleParser = require('@react-native/codegen/src/parsers/flow/modules');
39
+ RNParserUtils = require('@react-native/codegen/src/parsers/utils');
40
+ RNFlowParser = require('@react-native/codegen/src/parsers/flow/parser');
39
41
  });
40
42
  } else {
41
43
  const config = {
42
- only: [/react-native-codegen\/lib\//],
44
+ only: [/@react-native\/codegen\/lib\//],
43
45
  plugins: [require('@babel/plugin-transform-flow-strip-types').default],
44
46
  };
45
47
 
46
48
  withBabelRegister(config, () => {
47
- RNModuleParser = require('react-native-codegen/lib/parsers/flow/modules');
48
- RNParserUtils = require('react-native-codegen/lib/parsers/utils');
49
+ RNModuleParser = require('@react-native/codegen/lib/parsers/flow/modules');
50
+ RNParserUtils = require('@react-native/codegen/lib/parsers/flow/utils');
51
+ RNFlowParser = require('@react-native/codegen/lib/parsers/flow/parser');
49
52
  });
50
53
  }
51
54
  }
@@ -53,6 +56,7 @@ function requireModuleParser() {
53
56
  return {
54
57
  buildModuleSchema: RNModuleParser.buildModuleSchema,
55
58
  createParserErrorCapturer: RNParserUtils.createParserErrorCapturer,
59
+ parser: new RNFlowParser.FlowParser(),
56
60
  };
57
61
  }
58
62
 
@@ -127,17 +131,16 @@ function rule(context) {
127
131
  });
128
132
  }
129
133
 
130
- const {buildModuleSchema, createParserErrorCapturer} =
134
+ const {buildModuleSchema, createParserErrorCapturer, parser} =
131
135
  requireModuleParser();
132
- const flowParser = require('flow-parser');
133
136
 
134
137
  const [parsingErrors, tryParse] = createParserErrorCapturer();
135
138
 
136
139
  const sourceCode = context.getSourceCode().getText();
137
- const ast = flowParser.parse(sourceCode, {enums: true});
140
+ const ast = parser.getAst(sourceCode);
138
141
 
139
142
  tryParse(() => {
140
- buildModuleSchema(hasteModuleName, ast, tryParse);
143
+ buildModuleSchema(hasteModuleName, ast, tryParse, parser);
141
144
  });
142
145
 
143
146
  parsingErrors.forEach(error => {