diff --git a/packages/vite/src/node/build.ts b/packages/vite/src/node/build.ts index d3131a054f77b4..9f041c4383e34d 100644 --- a/packages/vite/src/node/build.ts +++ b/packages/vite/src/node/build.ts @@ -731,11 +731,14 @@ export function resolveRolldownOptions( assetFileNames: libOptions ? `[name].[ext]` : path.posix.join(options.assetsDir, `[name]-[hash].[ext]`), - inlineDynamicImports: - output.format === 'umd' || + codeSplitting: + output.codeSplitting ?? + (output.format === 'umd' || output.format === 'iife' || (isSsrTargetWebworkerEnvironment && - (typeof input === 'string' || Object.keys(input).length === 1)), + (typeof input === 'string' || Object.keys(input).length === 1)) + ? false + : undefined), legalComments: 'none', minify: options.minify === 'oxc' diff --git a/packages/vite/src/node/config.ts b/packages/vite/src/node/config.ts index 2121ab7249256d..3d7d6ff48c8a7e 100644 --- a/packages/vite/src/node/config.ts +++ b/packages/vite/src/node/config.ts @@ -2436,7 +2436,7 @@ async function bundleConfigFile( return path.resolve(fileName, relative) }, // we want to generate a single chunk like esbuild does with `splitting: false` - inlineDynamicImports: true, + codeSplitting: false, }) await bundle.close() diff --git a/packages/vite/src/node/plugins/reporter.ts b/packages/vite/src/node/plugins/reporter.ts index f5ba407619ff24..6828f0595047b3 100644 --- a/packages/vite/src/node/plugins/reporter.ts +++ b/packages/vite/src/node/plugins/reporter.ts @@ -319,7 +319,7 @@ export function buildReporterPlugin(config: ResolvedConfig): Plugin { }, renderChunk(_, chunk, options) { - if (!options.inlineDynamicImports) { + if (options.codeSplitting !== false) { for (const id of chunk.moduleIds) { const module = this.getModuleInfo(id) if (!module) continue diff --git a/playground/dynamic-import-inline/__tests__/dynamic-import-inline.spec.ts b/playground/dynamic-import-inline/__tests__/dynamic-import-inline.spec.ts index 82cb33ded71e7e..b752cf4fd91177 100644 --- a/playground/dynamic-import-inline/__tests__/dynamic-import-inline.spec.ts +++ b/playground/dynamic-import-inline/__tests__/dynamic-import-inline.spec.ts @@ -2,7 +2,7 @@ import { expect, test } from 'vitest' import { isBuild, serverLogs } from '~utils' test.runIf(isBuild)( - "don't warn when inlineDynamicImports is set to true", + "don't warn when codeSplitting is set to false", async () => { const log = serverLogs.join('\n') expect(log).not.toContain( diff --git a/playground/dynamic-import-inline/vite.config.js b/playground/dynamic-import-inline/vite.config.js index 2d69e108f59e01..ee8571ac585f40 100644 --- a/playground/dynamic-import-inline/vite.config.js +++ b/playground/dynamic-import-inline/vite.config.js @@ -11,7 +11,7 @@ export default defineConfig({ sourcemap: true, rollupOptions: { output: { - inlineDynamicImports: true, + codeSplitting: false, }, }, }, diff --git a/playground/ssr-webworker/__tests__/ssr-webworker.spec.ts b/playground/ssr-webworker/__tests__/ssr-webworker.spec.ts index cca04b00796912..d1362bc16e3003 100644 --- a/playground/ssr-webworker/__tests__/ssr-webworker.spec.ts +++ b/playground/ssr-webworker/__tests__/ssr-webworker.spec.ts @@ -30,7 +30,7 @@ test('supports nodejs_compat', async () => { ) }) -test.runIf(isBuild)('inlineDynamicImports', () => { +test.runIf(isBuild)('codeSplitting: false', () => { const dynamicJsContent = findAssetFile(/dynamic-[-\w]+\.js/, 'worker') expect(dynamicJsContent).toBeUndefined() })