* Expose `@babel/eslint-parser/experimental-worker` * Fix `@babel/runtime` build on Windows
21 lines
748 B
JavaScript
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() };
|
|
};
|