Nunchaku Pizza Master

    modify-babel-preset

    3.2.1 • Public • Published

    modify-babel-preset

    npm npm travis

    Create a modified babel preset based on an an existing preset.

    Works best with npm 3.

    npm i -S modify-babel-preset

    API

    A single function that takes an existing preset name and a mapping of plugin modifications to apply to that preset. Make sure you have the preset and any added plugins installed as dependencies.

    newPreset = modifyBabelPreset(
        'existing-preset-name',
        {
            'plugin-name': false,  // remove
            'other-plugin': true,  // add
            'foo': { loose:true }  // add + config
        }
    );

    Modification keys are babel plugin names (you can exclude the babel-plugin- prefix).

    Add/Update Plugins

    To add a plugin, pass true, or a configuration object:

    {
        // just add a plugin without config:
        'plugin-name': true,
     
        // add a plugin and set its config
        'other-plugin': { loose:true }
    }

    Note: adding a plugin that is already provided by the preset just overwrites its configuration.

    Remove Plugins

    To remove a plugin, pass false:

    {
        'plugin-name': false
    }

    Example

    Here's a simple preset. Just this index.js and a package.json pointing to it with the preset and plugin installed as dependencies.

    var modifyBabelPreset = require('modify-babel-preset');
     
    // just export the cloned, modified preset config:
    module.exports = modifyBabelPreset('es2015', {
     
        // remove the typeof x==='symbol' transform:
        'transform-es2015-typeof-symbol': false,
     
        // add the JSX transform:
        'transform-react-jsx': true
     
    });

    Keywords

    Install

    npm i modify-babel-preset

    DownloadsWeekly Downloads

    10,432

    Version

    3.2.1

    License

    MIT

    Last publish

    Collaborators

    • developit