babel-preset-sui

raw JSON →
3.55.0 verified Sat Apr 25 auth: no javascript

A Babel preset for transpiling JavaScript in the SUI Components ecosystem. Current stable version: 3.55.0. Released as part of the SUI monorepo, updated alongside other packages. Key differentiators: includes unified transformations for SUI projects, protects against deprecated experimental features, automatically detects React or Preact and adds babel-preset-react. Bundles presets like babel-preset-env and plugins for async generators, decorators, class properties, object rest/spread, runtime, dynamic import, export extensions, and removing prop-types in production.

error Module not found: Can't resolve 'babel-preset-sui'
cause babel-preset-sui is not installed as a devDependency.
fix
npm install babel-preset-sui --save-dev
error Error: Cannot find module '@babel/preset-env'
cause Missing peer dependency babel-preset-env.
fix
npm install @babel/preset-env --save-dev
error Error: Plugin/Preset files are not allowed to export objects, only functions.
cause Using an incompatible version of Babel (Babel 6 vs Babel 7). babel-preset-sui v3 is for Babel 6.
fix
Upgrade to @s-ui/babel-preset-sui for Babel 7, or use babel-preset-sui v2 for Babel 6.
gotcha Requires babel-preset-env as a peer dependency. Ensure it is installed.
fix npm install babel-preset-env --save-dev
gotcha Dynamic import plugin only adds syntax support, not polyfill. Actual dynamic import requires Webpack or other bundler.
fix Use a bundler that supports dynamic imports, like Webpack with @babel/plugin-syntax-dynamic-import removed.
deprecated babel-plugin-transform-decorators-legacy is used; newer Babel versions support the standard decorator proposal.
fix Consider migrating to @babel/plugin-proposal-decorators with the 'legacy' mode or use the new decorator spec.
gotcha babel-plugin-transform-runtime is included; ensure @babel/runtime is installed as a runtime dependency.
fix npm install @babel/runtime
npm install babel-preset-sui
yarn add babel-preset-sui
pnpm add babel-preset-sui

Configure Babel to use babel-preset-sui in .babelrc or package.json.

{
  "presets": ["sui"]
}