Build toolBuild tooltypeRuns at build time. Nothing of it ships in the deployed application.See every one →What this type is →by a community orgby a community orgoriginPublished by a community organisation, so it outlives any one maintainer.See every one →

babel-preset-transform-ui5

A Babel transformer that converts modern ECMAScript or TypeScript UI5 code (ES modules and classes) into the sap.ui.define and Control.extend syntax the UI5 loader expects.

UI5's own module loader expects sap.ui.define calls and Control.extend syntax rather than the ES modules and classes most tooling assumes today. This Babel plugin converts both: import and export statements become sap.ui.define or sap.ui.require calls, and an ES class that extends an imported class becomes an extend() call, while leaving everything else, including transforming down to ES5, to other presets such as @babel/preset-env. A file, or a single import inside it, can opt out of the conversion entirely with the @ui5-no-wrap or @ui5-ignore-import comment pragmas, for code such as a Web Worker script that must stay a native ES module.

Facts

Latestv7.10.0ReleasedLast pushLicenceMIT

Where it sits

Lives in
Provides
TypeScript supportUI5TypeScript supportcapabilityWriting apps and libraries in TypeScript — the type definitions, the module syntax the loader expects, and the build step that gets from one to the other.

Who is behind it

UI5 CommunityUI5 CommunityOrganisationMaintains this
In the atlas: maintains 69
@ui5-community
maintainerAndreas KunzPersonContributes to this
In the atlas: contributes to 19
@akudev
Brian BogovichPersonContributes to this
In the atlas: contributes to 1
@bbogovich-sap
Guillaume des PommarePersonContributes to this
In the atlas: contributes to 1
@GuillaumedesPommareSAP
Lucas da Silva HeimPersonContributes to this
In the atlas: contributes to 1
@lucas-leanix
Henry LiPersonContributes to this
In the atlas: contributes to 1
@MagicCube
Nicolas LunetPersonContributes to this
In the atlas: contributes to 14
@nlunets
Oliver at evosightPersonContributes to this
In the atlas: contributes to 1
@oliversviszt
Peter MuessigPersonContributes to this
In the atlas: maintains 14, contributes to 80, wrote 1
@petermuessig
Ryan MurphyPersonContributes to this
In the atlas: contributes to 1
@r-murphy
stabpdPersonContributes to this
In the atlas: contributes to 1
@stabpd
11 contributors

What it declares

Every artifact

Type
Build tool
Origin
By a community org

As a build tool

Distributed through
npm

Connections1

Install

npm add babel-preset-transform-ui5

Derived from the package name. No recipe recorded; the README has the configuration.

README

quoted from ui5-community/babel-plugin-transform-modules-ui5 under MIT, read
ui5-community/babel-plugin-transform-modules-ui5/packages/preset/README.mdOn GitHub

babel-preset-transform-ui5

Docs

Install

npm install babel-preset-transform-ui5 --save-dev

or

yarn add babel-preset-transform-ui5 --dev
MIT, read

History

Latest

v7.10.0

Features 1, Fixes 1

Notes
Minor Changes
  • #154 f62f9fb Thanks @bbogovich-sap! - Add two comment pragmas to opt out of module transformation:

    • /* @ui5-no-wrap */ (file level) leaves a module completely unwrapped — no sap.ui.define/sap.ui.require and no import/export rewriting — while still stripping TypeScript types. Intended for modules consumed as native ES modules, e.g. web workers.
    • /* @ui5-ignore-import */ (statement level) excludes a single static import or dynamic import() from being converted into a UI5 dependency.

    Note: @ui5-ignore-import on a static import only yields valid output in an unwrapped module (no exports, or together with @ui5-no-wrap); a leftover ES import inside a sap.ui.define factory is not valid at runtime.

Patch Changes
  • Updated dependencies [f62f9fb]:
    • babel-plugin-transform-modules-ui5@7.10.0
  1. v7.9.0

    Features 1, Fixes 2

    Notes
    Minor Changes
    • #151 ce059b3 Thanks @petermuessig! - Raise minimum Node.js version to 20.19, refresh dev dependencies, and migrate ESLint to v9 flat config.

      • engines.node is now >=20.19.0 for both packages.
      • ESLint upgraded to 9.x with new eslint.config.js (legacy .eslintrc.js and .eslintignore removed).
      • eslint-plugin-node (unmaintained) replaced by eslint-plugin-n@17.
      • Removed obsolete dev dependencies: babel-eslint (superseded by @babel/eslint-parser), eslint-config-standard, eslint-plugin-standard.
      • Bumped eslint-config-prettier to 10.x, eslint-plugin-prettier to 5.5.x, eslint-plugin-promise to 7.x, prettier to 3.8.x, jest/babel-jest to 30.4.x, core-js to 3.49.x.
      • CI matrix updated from Node 18/20/22/24 to 20/22/24.

      No changes to plugin runtime behavior or production dependencies.

    Patch Changes
    • #151 ce059b3 Thanks @petermuessig! - Bump dev-only dependencies to their latest minor releases:

      • globals 17.6 → 17.7
      • prettier 3.8 → 3.9

      Both stay within the Node 20.19+ support window declared in our Node.js support policy. No plugin behavior changes.

    • Updated dependencies [ce059b3, ce059b3, ce059b3, ce059b3, ce059b3]:

      • babel-plugin-transform-modules-ui5@7.9.0

    All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

  2. v7.8.1

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  3. v7.8.0

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  4. v7.7.1

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  5. v7.7.0

    Features 1

    Notes
    Features
    • update dependencies / add peer dependency to @babel/core (#135) (d155e48), closes #133
  6. v7.6.2

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  7. v7.6.1

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  8. v7.6.0

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  9. v7.5.0

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  10. v7.4.2

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  11. v7.4.1

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  12. v7.4.0

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  13. v7.3.1

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  14. v7.3.0

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  15. v7.2.6

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  16. v7.2.5

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  17. v7.2.4

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  18. v7.2.3

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  19. v7.2.2

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  20. v7.2.1

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  21. v7.2.0

    Features 1

    Notes
    Features
    • split class conversion to enable other Babel plugin conversion (#100) (4ba096b), closes #23 #25
  22. v7.1.5

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  23. v7.1.4

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  24. v7.1.3

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  25. v7.1.2

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  26. v7.1.1

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  27. v7.1.0

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

  28. v7.0.6

    Notes

    Note: Version bump only for package babel-preset-transform-ui5

23,617downloads per week, npm
Weekly downloads for babel-preset-transform-ui526 complete calendar weeks from 2026-04-20 to 2026-10-18; the latest total is 23617.20 Apr – 26 Apr: 53,32327 Apr – 3 May: 43,7534 May – 10 May: 52,82511 May – 17 May: 51,91818 May – 24 May: 50,46925 May – 31 May: 46,8721 Jun – 7 Jun: 32,6798 Jun – 14 Jun: 53,07015 Jun – 21 Jun: 46,08322 Jun – 28 Jun: 38,60529 Jun – 5 Jul: 45,8686 Jul – 12 Jul: 50,45013 Jul – 19 Jul: 47,61120 Jul – 26 Jul: 48,49427 Jul – 2 Aug: 46,2933 Aug – 9 Aug: 52,87310 Aug – 16 Aug: 43,96417 Aug – 23 Aug: 54,07924 Aug – 30 Aug: 48,09531 Aug – 6 Sept: 40,5887 Sept – 13 Sept: 29,72414 Sept – 20 Sept: 41,04121 Sept – 27 Sept: 49,29428 Sept – 4 Oct: 53,4635 Oct – 11 Oct: 41,82712 Oct – 18 Oct: 23,617
TypeScript support
  1. ui5-task-dts-generatorUI5 builder task generating d.ts type declarationsfrom UI5
  2. @openui5/sap.ui.coreFramework core: module loader, MVC runtime, binding, routing, themingfrom UI5
  3. @ui5-community/jsx-runtimePlugin-based JSX runtime for UI5 views written as .tsxfrom UI5
  4. ui5-task-transpileUI5 Tooling task transpiling TypeScript and ES modulesfrom UI5
  5. @ui5/mcp-serverMCP server for UI5 development with ten toolsfrom UI5
  6. @ui5/webcomponentsSAP's UI elements as standard custom elementsfrom UI5

Details

Sources4
GitHub APIdiscovered herechecked
npm registry, babel-preset-transform-ui5version, releases, installschecked
packages/preset/README.mdquoted, and what the entry declareschecked

Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.

Compatibility and provenance
latestv7.10.0
first release
releases and cadence46, ~53d median
discovered viaGitHub API
first seen in the atlas
ecosystem and domainui5, developer-experience
Contributors11
History in the atlas1
  1. First seen.
For your agent
Ref
artifact:ui5-community-babel-plugin-transform-modules-ui5
JSON
/artifacts/ui5-community-babel-plugin-transform-modules-ui5.json
MCP
Connecting an agent