123456789101112131415161718192021222324252627282930313233343536373839 |
- const getOption = require("../lib/util.js").getOption;
- module.exports = function (options) {
- // The goal here is to tolerate as much syntax as possible, since Recast
- // is not in the business of forbidding anything. If you want your
- // parser to be more restrictive for some reason, you can always pass
- // your own parser object to recast.parse.
- return {
- sourceType: getOption(options, "sourceType", "module"),
- strictMode: getOption(options, "strictMode", false),
- allowImportExportEverywhere: true,
- allowReturnOutsideFunction: true,
- startLine: 1,
- tokens: getOption(options, "tokens", true),
- plugins: [
- "asyncGenerators",
- "bigInt",
- "classPrivateMethods",
- "classPrivateProperties",
- "classProperties",
- "decorators-legacy",
- "doExpressions",
- "dynamicImport",
- "exportDefaultFrom",
- "exportExtensions",
- "exportNamespaceFrom",
- "functionBind",
- "functionSent",
- "importMeta",
- "nullishCoalescingOperator",
- "numericSeparator",
- "objectRestSpread",
- "optionalCatchBinding",
- "optionalChaining",
- "pipelineOperator",
- "throwExpressions",
- ]
- };
- };
|