Nicolò Ribaudo 885e1e02f5
Expose @babel/eslint-parser/experimental-worker (#13398)
* Expose `@babel/eslint-parser/experimental-worker`

* Fix `@babel/runtime` build on Windows
2021-08-03 23:23:32 +02:00

21 lines
748 B
JavaScript

const { normalizeESLintConfig } = require("./configuration.cjs");
const analyzeScope = require("./analyze-scope.cjs");
const baseParse = require("./parse.cjs");
const { LocalClient, WorkerClient } = require("./client.cjs");
const client = new (
process.env.BABEL_8_BREAKING ? WorkerClient : LocalClient
)();
exports.parse = function (code, options = {}) {
return baseParse(code, normalizeESLintConfig(options), client);
};
exports.parseForESLint = function (code, options = {}) {
const normalizedOptions = normalizeESLintConfig(options);
const ast = baseParse(code, normalizedOptions, client);
const scopeManager = analyzeScope(ast, normalizedOptions, client);
return { ast, scopeManager, visitorKeys: client.getVisitorKeys() };
};