babel-preset-behance

raw JSON →
23.0.0 verified Sat Apr 25 auth: no javascript maintenance

Babel preset for Behance projects, version 23.0.0. Configures babel-preset-env with default options: modules=false (for webpack >=2), useBuiltIns='entry', and adds Stage 3 loose transforms. Provides an `env` option to pass custom targets to babel-preset-env. Designed for internal use by Behance; not actively maintained for external users. Key differentiators: opinionated defaults suited for Behance's webpack-based build pipeline.

error Error: Cannot find module 'babel-preset-behance'
cause Preset not installed or not in node_modules
fix
Run npm install --save-dev babel-preset-behance
error Error: Plugin/Preset files are not allowed to export objects, only functions.
cause Using an incompatible Babel version (Babel 6 vs 7)
fix
Use Babel 6 or upgrade preset to Babel 7 version; check compatibility
gotcha modules is false by default; if you need CommonJS modules for Node, set modules: 'commonjs' in env options.
fix In .babelrc: {"presets": [["behance", {"env": {"modules": "commonjs"}}]]}
gotcha useBuiltIns is set to 'entry' by default; you must include import '@babel/polyfill' at entry point to avoid missing polyfills.
fix Add import '@babel/polyfill' at the top of your entry file.
deprecated Stage 3 loose transforms are included by default, but Stage presets are deprecated in Babel 7+.
fix Consider moving to @babel/preset-env with appropriate targets; avoid stage presets.
npm install babel-preset-behance
yarn add babel-preset-behance
pnpm add babel-preset-behance

Install the preset, configure in .babelrc with optional env targets for babel-preset-env, or use via Node API.

npm install --save-dev babel-preset-behance

// .babelrc
{
  "presets": ["behance"]
}

// Or with options:
{
  "presets": [["behance", {
    "env": {
      "targets": {
        "browsers": ["last 2 versions", "ie >= 11"]
      },
      "modules": "commonjs"
    }
  }]]
}

// usage in Node API
var babel = require('babel-core');
babel.transform(code, {
  presets: ['behance']
});