diff --git a/.changeset/green-adults-push.md b/.changeset/green-adults-push.md new file mode 100644 index 0000000000..3edc21c385 --- /dev/null +++ b/.changeset/green-adults-push.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Add preserveModules to rollup, which allows better async loading and tree-shaking in webpack diff --git a/packages/cli/src/lib/builder/config.ts b/packages/cli/src/lib/builder/config.ts index c83b19a82d..6fd92101f6 100644 --- a/packages/cli/src/lib/builder/config.ts +++ b/packages/cli/src/lib/builder/config.ts @@ -105,6 +105,8 @@ export async function makeRollupConfigs( chunkFileNames: `esm/[name]-[hash].esm.js`, format: 'module', sourcemap: true, + preserveModules: true, + preserveModulesRoot: `${targetDir}/src`, }); // Assume we're building for the browser if ESM output is included mainFields.unshift('browser');