A Babel 7 preset that manages experimental proposal plugin dependencies, ordering, and default options. Current version 0.4.0 (released 2021-02-24), requires Node >=10. Key differentiators: automatically handles plugin ordering and option defaults for decorators and pipeline operator, removes plugins handled by @babel/preset-env, and supports all major TC39 proposals via boolean or object configuration. Release cadence is irregular; last release was over 3 years ago. Notable changes include removal of jsonStrings/nullishCoalescingOperator/optionalChaining options in v0.2.0 and addition of classStaticBlock in v0.4.0. This preset helps avoid common misconfigurations of Babel proposal plugins.
npm install babel-preset-proposalsVerified import paths — ran on the pinned version, not inferred.
Shows both .babelrc JSON configuration and programmatic CommonJS usage with options like classProperties, decorators, and loose mode.
Remove these options from preset config; enable via @babel/preset-env's targets or use the plugins directly if needed.
Update preset config: replace 'decorators: true' with 'decorators: {legacy: true}' for legacy behavior.Upgrade Node.js to version 10 or higher for v0.4.0.
Add missing plugins individually, e.g., @babel/plugin-proposal-private-methods.
Set absolutePaths: true if generating config for external consumption or using with tools like Webpack's babel-loader.
Run 'npm install babel-preset-proposals' and ensure your .babelrc is in the project root.
Check the README for valid options; for removed options, use @babel/preset-env or the plugin directly.
Ensure each option is either boolean or an Object as documented.