📌

Babel プラグインを import しつつオプションを渡す

2022/01/25に公開

最近 eslint-plugin-import のテストを書いてて必要になったのでメモ。

@babel/eslint-parser のオプションとして plugins を渡すときに、プラグインのオプションを指定したい。

Babel プラグインは apioptions を受け取る関数なので、こんな感じでラップして強制的にオプションを渡せる。

import babelPluginSyntaxDecorators from '@babel/plugin-syntax-decorators';
const parserConfig = {
  parser: "@babel/eslint-parser",
 parserOptions: {
   configFile: false,
   babelrc: false,
   requireConfigFile: false,
   sourceType: 'module',
   babelOptions: {
     plugins: [
       (api) => babelPluginSyntaxDecorators(api, { legacy: true }),
     ],
   },
 }
};    

Discussion