@@ -12,6 +12,7 @@ import {
12
12
} from '../utils/options.js' ;
13
13
import { buildIdFilter , buildIdParser } from '../utils/id.js' ;
14
14
import { createCompileSvelte } from '../utils/compile.js' ;
15
+ import { gte } from '../utils/svelte-version.js' ;
15
16
16
17
// @ts -ignore rolldownVersion
17
18
const { version : viteVersion , rolldownVersion } = vite ;
@@ -59,35 +60,33 @@ export function configure(api, inlineOptions) {
59
60
// extra vite config
60
61
const extraViteConfig = await buildExtraViteConfig ( preOptions , config ) ;
61
62
62
- if ( rolldownVersion && configEnv . command === 'build' ) {
63
- const [ major , minor , patch , tag ] = rolldownVersion
64
- . replace ( / [ ^ \d . ] / g, '' )
65
- . split ( '.' )
66
- . map ( Number ) ;
67
- if ( major > 1 || ( major === 1 && ( minor > 0 || patch > 0 || tag > 34 ) ) ) {
68
- extraViteConfig . build ??= { } ;
69
- // rename rollupOptions to rolldownOptions
70
- //@ts -ignore rolldownOptions only exists in rolldown-vite
71
- extraViteConfig . build . rolldownOptions = extraViteConfig . build . rollupOptions || { } ;
72
- delete extraViteConfig . build . rollupOptions ;
73
- // read user config inlineConst value
74
- const inlineConst =
75
- //@ts -ignore optimization only exists in rolldown-vite
76
- config . build ?. rolldownOptions ?. optimization ?. inlineConst ??
77
- //@ts -ignore optimization only exists in rolldown-vite
78
- config . build ?. rollupOptions ?. optimization ?. inlineConst ;
63
+ if (
64
+ rolldownVersion &&
65
+ configEnv . command === 'build' &&
66
+ gte ( rolldownVersion , '1.0.0-beta.35' ) // inlineConst received a critical bugfix in 1.0.0-beta.35
67
+ ) {
68
+ extraViteConfig . build ??= { } ;
69
+ // rename rollupOptions to rolldownOptions
70
+ //@ts -ignore rolldownOptions only exists in rolldown-vite
71
+ extraViteConfig . build . rolldownOptions = extraViteConfig . build . rollupOptions || { } ;
72
+ delete extraViteConfig . build . rollupOptions ;
73
+ // read user config inlineConst value
74
+ const inlineConst =
75
+ //@ts -ignore optimization only exists in rolldown-vite
76
+ config . build ?. rolldownOptions ?. optimization ?. inlineConst ??
77
+ //@ts -ignore optimization only exists in rolldown-vite
78
+ config . build ?. rollupOptions ?. optimization ?. inlineConst ;
79
79
80
- if ( inlineConst == null ) {
81
- // set inlineConst build optimization for esm-env
82
- //@ts -ignore rolldownOptions only exists in rolldown-vite
83
- extraViteConfig . build . rolldownOptions . optimization ??= { } ;
84
- //@ts -ignore rolldownOptions only exists in rolldown-vite
85
- extraViteConfig . build . rolldownOptions . optimization . inlineConst = true ;
86
- } else if ( inlineConst === false ) {
87
- log . warn (
88
- 'Your rolldown config contains `optimization.inlineConst: false`. This can lead to increased bundle size and leaked server code in client build.'
89
- ) ;
90
- }
80
+ if ( inlineConst == null ) {
81
+ // set inlineConst build optimization for esm-env
82
+ //@ts -ignore rolldownOptions only exists in rolldown-vite
83
+ extraViteConfig . build . rolldownOptions . optimization ??= { } ;
84
+ //@ts -ignore rolldownOptions only exists in rolldown-vite
85
+ extraViteConfig . build . rolldownOptions . optimization . inlineConst = true ;
86
+ } else if ( inlineConst === false ) {
87
+ log . warn (
88
+ 'Your rolldown config contains `optimization.inlineConst: false`. This can lead to increased bundle size and leaked server code in client build.'
89
+ ) ;
91
90
}
92
91
}
93
92
0 commit comments