Simplified options for Babylon
Before:
babylon.parse(code, {
sourceType: 'module',
plugins: [
'jsx',
'flow',
'doExpressions',
'objectRestSpread',
'decorators',
'classProperties',
'exportExtensions',
'asyncGenerators',
'functionBind',
'functionSent',
'dynamicImport',
],
});
After:
import * as babylon from 'babylon';
import createBabylonOptions from 'babylon-options';
babylon.parse(code, createBabylonOptions({
stage: 2,
plugins: ['flow', 'jsx'],
}));
All Babylon options will be passed through, will some additions/modifications:
sourceType
: Defaults to "module"stage
: Set plugins based on TC39 stagesplugins
: You can still specify plugins, other options will add to this list