{"id":19351,"library":"babel-preset-wtw-im","title":"babel-preset-wtw-im","description":"Babel preset for Willis Towers Watson Individual Marketplace, version 2.5.0. It bundles babel-preset-react, babel-preset-env, and plugins for lodash, format-message (extract and transform), and styled-components. Release cadence is low, appears to be internal use. Differentiator: opinionated preset tailored for WTW's React + i18n stack with format-message integration.","status":"active","version":"2.5.0","language":"javascript","source_language":"en","source_url":"https://github.com/wtw-im/babel-preset-wtw-im","tags":["javascript"],"install":[{"cmd":"npm install babel-preset-wtw-im","lang":"bash","label":"npm"},{"cmd":"yarn add babel-preset-wtw-im","lang":"bash","label":"yarn"},{"cmd":"pnpm add babel-preset-wtw-im","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency for Babel compilation","package":"babel-core","optional":false},{"note":"Can be disabled via options","reason":"included preset for JSX","package":"babel-preset-react","optional":true},{"reason":"included preset for environment targeting","package":"babel-preset-env","optional":false},{"reason":"lodash tree-shaking","package":"babel-plugin-lodash","optional":false},{"reason":"extract i18n messages","package":"babel-plugin-extract-format-message","optional":false},{"reason":"transform i18n messages","package":"babel-plugin-transform-format-message","optional":false},{"reason":"styled-components support","package":"babel-plugin-styled-components","optional":false}],"imports":[{"note":"Preset is CommonJS, use require or reference in .babelrc","wrong":"import preset from 'babel-preset-wtw-im'","symbol":"default","correct":"module.exports = require('babel-preset-wtw-im')"},{"note":"Babel automatically resolves 'wtw-im' prefix; full name works but is unconventional.","wrong":"{\"presets\": [\"babel-preset-wtw-im\"]}","symbol":"babel-preset-wtw-im","correct":"In .babelrc: {\"presets\": [\"wtw-im\"]}"},{"note":"Options must be in nested array: [[preset, options]] not [preset, options]","wrong":"{\"presets\": [\"wtw-im\", { \"react\": false }]}","symbol":"options","correct":"{\"presets\": [[\"wtw-im\", { \"react\": false }]]}"}],"quickstart":{"code":"// .babelrc\n{\n  \"presets\": [\n    [\"wtw-im\", {\n      \"env\": {\n        \"targets\": { \"browsers\": \"> 1%\" }\n      },\n      \"react\": true,\n      \"styledComponents\": { \"ssr\": false, \"displayName\": false },\n      \"extractFormatMessage\": false,\n      \"transformFormatMessage\": { \"inline\": false }\n    }]\n  ]\n}\n\n// Then run: npx babel src --out-dir lib","lang":"javascript","description":"Shows minimal .babelrc configuration using wtw-im preset with env targeting, react enabled, and styled-components options."},"warnings":[{"fix":"Use correct Babel preset options format: \"presets\": [[\"wtw-im\", {...}]]","message":"Options must be nested in array: [[preset, options]] not [preset, options]","severity":"gotcha","affected_versions":">=2.0"},{"fix":"Use 'wtw-im' in presets array: \"presets\": [\"wtw-im\"]","message":"Preset name 'wtw-im' (short form) is required, full 'babel-preset-wtw-im' may not work if Babel cannot resolve","severity":"gotcha","affected_versions":">=1.0"},{"fix":"Upgrade to Babel 7 and use @babel/preset-env; this preset is for Babel 6","message":"babel-preset-env is deprecated in favor of @babel/preset-env for Babel 7","severity":"deprecated","affected_versions":">=2.0"},{"fix":"Preset is CommonJS, use require() not import","message":"If using Node API, require the preset: require('babel-preset-wtw-im') and use in presets array","severity":"gotcha","affected_versions":">=1.0"},{"fix":"For Babel 7, use @babel/core and @babel/preset-env etc.; this preset is for Babel 6 ecosystem","message":"babel-core is version 6.x, not compatible with Babel 7","severity":"deprecated","affected_versions":">=2.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Change .babelrc to \"presets\": [[\"wtw-im\", {}]]","cause":"Preset options format wrong - options passed as separate argument instead of nested array","error":"ReferenceError: [BABEL] unknown: Preset wtw-im is not a function"},{"fix":"Run: npm install --save-dev babel-preset-wtw-im, then use 'wtw-im' in presets array","cause":"Preset not installed or wrong name used","error":"Module not found: Can't resolve 'babel-preset-wtw-im'"},{"fix":"Use require() or CommonJS syntax: const preset = require('babel-preset-wtw-im')","cause":"Using ES import syntax with CommonJS preset","error":"SyntaxError: Unexpected token import"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}