babel-preset-futagozaryuu

3.3.1 • Public • Published

CI npm version dependencies History License

This is a Babel preset of other presets and plugins that I most commonly use.

  • From v2.12, this preset is using the @babel/* dependencies for Babel 7+
  • From v3 this preset is using the proposal plugins directly as Babel 7 dropped the stage presets

installation

$ npm install --save-dev babel-preset-futagozaryuu

usage

Put the following into your .babelrc file:

{
    "presets": [ "futagozaryuu" ]
}

or on the CLI

$ babel src --out-dir lib --presets futagozaryuu

configuration

You can see the complete list of options in babel-preset-futagozaryuu/lib/config/default-options.js.

{
    "presets": [
        [ "futagozaryuu", {
 
            // set root directory for `babel-plugin-module-resolver`
            "disableResolver": false,
            "root": [ "src" ],
 
            // disable the use of `@babel/preset-stage-*` plugins
            // (anything not a number between 0 to 3 is the same)
            "stage": 4,
 
            // Target a spefic version of node
            // (alternative: `package.json#engines.node`)
            "node": 6,
 
            // Blacklisting the var/const transform
            "exclude": [ "transform-es2015-block-scoping" ],
 
            // Blacklisting ES Modules transpilation
            "modules": false,
 
            // re-enable the use of `regenerator`
            "regenerator": true
 
        } ]
    ]
}

the useBuiltIns option

When using the option useBuiltIns with values usage or entry, ensure that you:

  1. Have the corejs option enabled (by default this is set to { version: 3, proposals: true })
  2. Include the dependencies core-js and regenerator-runtime in your published package

recommendation for vs code users

Adding the following files (and settings) will ensure that VS Code can find your ES6+ files even if you are using babel-plugin-module-resolver to change the root path of your module lookups during transpile.

This is based on a comment in tleunen/babel-plugin-module-resolver#92 by @jgoux.

.vscode/settings.json:

{
    "path-intellisense.mappings": {
        "/": "${workspaceRoot}/src"
    }
}

src/jsconfig.json:

{
    "compilerOptions": {
        "baseUrl": "./",
    }
}

versioning

I have tried to follow semver versioning, but from v2.19 I will follow these rules:

2.18.0 = RELEASE.REVISION.PATCH

  1. RELEASE is incremented each time a new major version of Babel is supported
  2. PATCH is only incremented when
    • a bug is fixed
    • docs are updated between revisions
    • dependency updates between revisions
  3. REVISION is incremented for all other changes
  4. PATCH is reset when REVISION increments

license

Copyright © 2017+ Futago-za Ryuu, https://github.com/futagoza
Released under the MIT License, http://opensource.org/licenses/MIT

Package Sidebar

Install

npm i babel-preset-futagozaryuu

Weekly Downloads

23

Version

3.3.1

License

MIT

Unpacked Size

27 kB

Total Files

13

Last publish

Collaborators

  • ryuu