JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 223597
  • Score
    100M100P100Q170955F
  • License MIT

Babel plugin that replaces member expressions and typeof statements with strings

Package Exports

  • babel-plugin-transform-define

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (babel-plugin-transform-define) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

babel-plugin-transform-define

Replace member expressions and typeof statements with strings and statically evaluate them if possible, like webpack's DefinePlugin for Babel.

Example

In

// assuming options are { "process.env.NODE_ENV": "development", "typeof window": "object" }
process.env.NODE_ENV;
process.env.NODE_ENV === "development";
typeof window;
typeof window === "object";

Out

'development';
true;
'object';
true;

Installation

$ npm install babel-plugin-transform-define

Usage

.babelrc

{
  "plugins": ["transform-define", {
    "process.env.NODE_ENV": "production",
    "typeof window": "object"
  }]
}

Via CLI

$ babel --plugins transform-define script.js

Via Node API

require("babel-core").transform("code", {
  plugins: ["transform-define", {
    "process.env.NODE_ENV": "production",
    "typeof window": "object"
  }]
});