babel-preset-htoooth
Setting babel
in my way.
usage
This preset
includes @babel/preset-env
, so you don't need to install @babel/preset-env
.
Default setting:
const presets = "@babel/env" targets: browsers: "> 1%" "last 2 versions" "not ie <= 8" useBuiltIns: "usage" ;
how to use
// Set your `babel.config.js` . // babel.config.jsmoduleexports = presets: 'htoooth'; // if all is true, add all proposal pluginsmoduleexports = presets: 'htoooth' corejs: false // defaullt false, same as @babel/plugin-transform-runtim 's options corejs all: true targets: {} // same as @babel/env targets useBuiltIns: "usage (default) | entry" modules: 'commonjs' // same as @babel/plugin-transform-runtim 's options modules useESModules: true // default true, @babel/plugin-transform-runtim 's options useESModules ;
if all
is false (default), will load below plugins:
const defaultPlugins = "@babel/plugin-transform-runtime" "@babel/plugin-syntax-dynamic-import" "@babel/plugin-syntax-import-meta" "@babel/plugin-proposal-export-namespace-from" "@babel/plugin-proposal-export-default-from";
And if all
is true
, will load plugins additionally:
const extPlugins = "@babel/plugin-proposal-function-bind" "@babel/plugin-proposal-logical-assignment-operators" "@babel/plugin-proposal-optional-chaining" "loose": false "@babel/plugin-proposal-pipeline-operator" "proposal": "minimal" "@babel/plugin-proposal-nullish-coalescing-operator" "loose": false "@babel/plugin-proposal-do-expressions" "@babel/plugin-proposal-decorators" "legacy": true "@babel/plugin-proposal-function-sent" "@babel/plugin-proposal-numeric-separator" "@babel/plugin-proposal-throw-expressions" "@babel/plugin-proposal-class-properties" "loose": false
example
You can find examples in this repo.