包详细信息

babel-plugin-rename-umd-globals

jamonkko188MIT1.0.0

Renames the module's global variable and adds optional global aliases

global, module, babel, rename

自述文件

Build Status Coverage Status npm version npm downloads Dependency Status devDependency Status JavaScript Style Guide Sponsored by Leonidas

babel-plugin-rename-umd-globals

Rename and add aliases for global module name. Can be applied after babel-plugin-transform-es2015-modules-umd to modify global module name (example below).

Installation

# With npm
$ npm install babel-plugin-rename-umd-globals --save-dev

# With yarn 
$ yarn add babel-plugin-rename-assigned-properties --dev

Tested to work with Node >= 0.10

Usage

Options

You need to define the rename mapping with plugin options. Just map of old names to new names (and their optional aliases).

Example via .babelrc

Transform global.myModule = value to global.MyM = value

{
  "plugins": [
    ["rename-umd-globals", {
      "myModule": "MyM"
    }]
  ]
}

More examples via .babelrc

You can also add aliases for global module name by providing array. It will be transformed to chained assignments of global module name.

{
  "plugins": [
    ["rename-umd-globals", {
      "coolio": ["Coolio", "C", "ArtisLeonIveyJr"]
    }]
  ]
}

Via Node API

require("babel-core").transform("code", {
  plugins: [
    ["rename-umd-globals", {
      "myModule": "MyM"
    }]
  ]
});

Together with other umd plugins

It can be combined with babel-plugin-add-module-exports and babel-plugin-transform-es2015-modules-umd. Make sure to use the same plugin order as below!

{
  "presets": ["es2015"],
  "plugins": [
    "add-module-exports",
    "transform-es2015-modules-umd",
    ["rename-umd-globals", {
      "myModule": "MyM"
    }]
  ]
}

Caveats

  • Expects the global object to be named global. If your global scope object happens to be named differently, like root, then just use babel-plugin-rename-assigned-properties instead for arbitrary object property renaming.

Sponsors

Leonidas

更新日志

Version: 1.0.0

  • Migrate to yarn (add yarn.lock file)
  • Migrate to standard.js from custom eslint
  • Update dev deps
  • Releasing 1.0.0 with tested node 0.1X support. Tested older node version will be (likely) dropped from 2.0.0

Version: 0.0.3

  • Fix ES5 compatibility issue #5
  • Updated dev deps

Version: 0.0.2

  • Tests added, 100% coverage

Version: 0.0.1

  • First version