{"id":18891,"library":"ui5-tooling-transpile","title":"UI5 Tooling Transpile","description":"UI5 CLI extension that provides a middleware and task to transpile JavaScript or TypeScript code to ES5 using Babel. Version 3.11.0, actively maintained by the UI5 community. Supports on-the-fly development server transpilation with sourcemaps for debugging original ES6+/TS sources, and a build task that generates bundled transpiled output including d.ts files for libraries. Configuration-driven via ui5.yaml with support for custom Babel configs, include/exclude patterns, and TypeScript auto-detection via tsconfig.json. Requires @ui5/cli@3.0.0+ and specVersion 3.0.0. Key differentiator: tight integration with UI5's build tooling without modifying the application codebase.","status":"active","version":"3.11.0","language":"javascript","source_language":"en","source_url":"https://github.com/ui5-community/ui5-ecosystem-showcase","tags":["javascript"],"install":[{"cmd":"npm install ui5-tooling-transpile","lang":"bash","label":"npm"},{"cmd":"yarn add ui5-tooling-transpile","lang":"bash","label":"yarn"},{"cmd":"pnpm add ui5-tooling-transpile","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Used when generateTsInterfaces option is enabled; not always required.","package":"@ui5/ts-interface-generator","optional":true}],"imports":[{"note":"This is a CLI extension, not a library. Install as dev dependency and configure in ui5.yaml. No JavaScript/TypeScript import needed.","symbol":"ui5-tooling-transpile","correct":"npm install ui5-tooling-transpile --save-dev"},{"note":"Configure in ui5.yaml, not imported in source code.","wrong":"import ui5-tooling-transpile from 'ui5-tooling-transpile'","symbol":"ui5.yaml configuration","correct":"server:\n  customMiddleware:\n    - name: ui5-tooling-transpile/middleware\n      afterMiddleware: compression\nbuilder:\n  customTasks:\n    - name: ui5-tooling-transpile/task\n      afterTask: replaceVersion"},{"note":"Requires specVersion 3.0+ in ui5.yaml.","wrong":"specVersion: \"2.0\"","symbol":"specVersion","correct":"specVersion: \"3.0\""}],"quickstart":{"code":"npm install ui5-tooling-transpile @ui5/cli --save-dev\n\n# ui5.yaml (specVersion: \"3.0\")\nserver:\n  customMiddleware:\n    - name: ui5-tooling-transpile/middleware\n      afterMiddleware: compression\n      configuration:\n        debug: true\n        transformTypeScript: true\n        excludes:\n          - /lib/\nbuilder:\n  customTasks:\n    - name: ui5-tooling-transpile/task\n      afterTask: replaceVersion\n      configuration:\n        transformTypeScript: true\n\necho \"Configured. Run 'ui5 serve' or 'ui5 build' to transpile.\"","lang":"yaml","description":"Installs the package as dev dependency and configures middleware and build task in ui5.yaml for TypeScript transpilation."},"warnings":[{"fix":"Upgrade @ui5/cli to >=3.0.0 and set specVersion: \"3.0\" in ui5.yaml.","message":"Version 3.x requires @ui5/cli@3.0.0+ and specVersion: \"3.0\". Version 2.x uses older CLI and specVersion.","severity":"breaking","affected_versions":">=3.0.0"},{"fix":"Use 'includes' and 'excludes' instead of deprecated aliases.","message":"The configuration aliases 'includePatterns' (use 'includes') and 'excludePatterns' (use 'excludes') are deprecated.","severity":"deprecated","affected_versions":">=3.0.0"},{"fix":"Use 'transformTypeScript' instead of 'transpileTypeScript'.","message":"The configuration option 'transpileTypeScript' is deprecated in favor of 'transformTypeScript'.","severity":"deprecated","affected_versions":">=3.0.0"},{"fix":"Explicitly set 'transformTypeScript: true' and provide 'altTsConfig' path.","message":"TypeScript detection relies on existence of tsconfig.json in project root. If using an alternate location, set 'altTsConfig' and 'transformTypeScript: true'.","severity":"gotcha","affected_versions":"*"},{"fix":"Use browser devtools sourcemap support; be aware of mapping offset.","message":"Sourcemaps are inlined. Debug breakpoints in original source will stop at the corresponding transpiled code, not the original source line.","severity":"gotcha","affected_versions":"*"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Update ui5.yaml: specVersion: \"3.0\"","cause":"Legacy ui5.yaml specVersion incompatible with this extension.","error":"ui5 build -- Error: specVersion \"2.0\" not supported. Use specVersion \"3.0\"."},{"fix":"Run 'npm install ui5-tooling-transpile --save-dev' and ensure node_modules contains it.","cause":"Missing or incorrect dependency installation.","error":"Cannot find module 'ui5-tooling-transpile/middleware'"},{"fix":"Replace 'includePatterns' with 'includes' in ui5.yaml.","cause":"Using deprecated configuration alias.","error":"Error: Configuration option 'includePatterns' is deprecated. Use 'includes' instead."},{"fix":"Create tsconfig.json in project root or set 'transformTypeScript: true' and provide 'altTsConfig' path.","cause":"Automatic TypeScript detection fails without tsconfig.json in root.","error":"TypeScript transpilation not working, tsconfig.json not found."}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}