Fix: Enable keep_fn_names In SWC Mangling (#3539)
* fix: swc, keep fn name * fix: don't update swc
This commit is contained in:
1 parent
2924ec4678
commit
1419d9c71b
3 files changed
+62
-489
No files matched your search
@@ -39,7 +39,7 @@ grass = "0.13.4"
|
||||
codemap = "0.1.3"
|
||||
|
||||
# Js minification - swc has introduces minor versions with breaking changes in the past so we pin all of their crates
|
||||
swc = "=0.283.0"
|
||||
swc = "=0.285.0"
|
||||
swc_allocator = { version = "=0.1.8", default-features = false }
|
||||
swc_atoms = { version = "=0.6.7", default-features = false }
|
||||
swc_cached = { version = "=0.3.20", default-features = false }
|
||||
@@ -92,4 +92,4 @@ swc_trace_macro = { version = "=0.1.3", default-features = false }
|
||||
swc_transform_common = { version = "=0.1.1", default-features = false }
|
||||
swc_typescript = { version = "=0.5.0", default-features = false }
|
||||
swc_visit = { version = "=0.6.2", default-features = false }
|
||||
browserslist-rs = { version = "=0.16.0" }
|
||||
browserslist-rs = { version = "=0.16.0" }
|
||||
@@ -4,9 +4,10 @@ use std::sync::Arc;
|
||||
|
||||
use anyhow::Context;
|
||||
use manganis_core::JsAssetOptions;
|
||||
use swc::{config::JsMinifyOptions, try_with_handler, BoolOrDataConfig};
|
||||
use swc::{config::JsMinifyOptions, try_with_handler, BoolOrDataConfig, JsMinifyExtras};
|
||||
use swc_common::{sync::Lrc, FileName};
|
||||
use swc_common::{SourceMap, GLOBALS};
|
||||
use swc_ecma_minifier::option::MangleOptions;
|
||||
|
||||
pub(crate) fn minify_js(source: &Path) -> anyhow::Result<String> {
|
||||
let mut source_file = std::fs::File::open(source)?;
|
||||
@@ -26,9 +27,13 @@ pub(crate) fn minify_js(source: &Path) -> anyhow::Result<String> {
|
||||
handler,
|
||||
&JsMinifyOptions {
|
||||
compress: BoolOrDataConfig::from_bool(true),
|
||||
mangle: BoolOrDataConfig::from_bool(true),
|
||||
mangle: BoolOrDataConfig::from_obj(MangleOptions {
|
||||
keep_fn_names: true,
|
||||
..Default::default()
|
||||
}),
|
||||
..Default::default()
|
||||
},
|
||||
JsMinifyExtras::default(),
|
||||
)
|
||||
.context("failed to minify javascript")
|
||||
})
|
||||
|
||||
Reference in new issue
Block a user