@@ -9,11 +9,11 @@ import pico from 'picocolors'
9
9
import commonJS from '@rollup/plugin-commonjs'
10
10
import polyfillNode from 'rollup-plugin-polyfill-node'
11
11
import { nodeResolve } from '@rollup/plugin-node-resolve'
12
- import terser from '@rollup/plugin-terser'
13
12
import esbuild from 'rollup-plugin-esbuild'
14
13
import alias from '@rollup/plugin-alias'
15
14
import { entries } from './scripts/aliases.js'
16
15
import { inlineEnums } from './scripts/inline-enums.js'
16
+ import { minify as minifySwc } from '@swc/core'
17
17
18
18
/**
19
19
* @template T
@@ -364,14 +364,25 @@ function createMinifiedConfig(/** @type {PackageFormat} */ format) {
364
364
format : outputConfigs [ format ] . format ,
365
365
} ,
366
366
[
367
- terser ( {
368
- module : / ^ e s m / . test ( format ) ,
369
- compress : {
370
- ecma : 2016 ,
371
- pure_getters : true ,
367
+ {
368
+ name : 'swc-minify' ,
369
+
370
+ async renderChunk (
371
+ contents ,
372
+ _ ,
373
+ { format, sourcemap, sourcemapExcludeSources } ,
374
+ ) {
375
+ const { code, map } = await minifySwc ( contents , {
376
+ module : format === 'es' ,
377
+ compress : true ,
378
+ mangle : true ,
379
+ sourceMap : ! ! sourcemap ,
380
+ inlineSourcesContent : ! sourcemapExcludeSources ,
381
+ } )
382
+
383
+ return { code, map : map || null }
372
384
} ,
373
- safari10 : true ,
374
- } ) ,
385
+ } ,
375
386
] ,
376
387
)
377
388
}
0 commit comments