Commit Graph

101 Commits

Author SHA1 Message Date
HeYunfei
a1ccc8afdf
feat(es/minifier): Make name mangler understand block scoping (#6670)
**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/5090.
 - Closes https://github.com/swc-project/swc/issues/5766.
2023-01-06 03:14:10 +00:00
Alexander Akait
08a9e21b36
feat(es/codegen): Skip whitespaces for comments in minify mode (#6465)
Co-authored-by: Donny/강동윤 <kdy1997.dev@gmail.com>
2022-11-20 10:03:26 +00:00
Alexander Akait
7f6bf59a98
feat(html/minifier): Use the latest EsVersion (#6453) 2022-11-18 02:32:55 +00:00
Alexander Akait
4d7b920bd4
feat(es/minifier): Support script fully (#6455) 2022-11-17 06:00:42 +00:00
Alexander Akait
74417217a9
feat(html/minifier): Remove empty script and style tags with attributes (#6447) 2022-11-17 01:22:56 +00:00
Alexander Akait
1dfd8cef88
fix(html/minifier): Fix script/style merging (#6443) 2022-11-16 03:31:03 +00:00
Donny/강동윤
99934b09f7
fix(es/minifier): Change the default of mangle.toplevel to false (#6439) 2022-11-15 02:28:38 +00:00
Alexander Akait
a923e52d8f
fix(html/minifier): Fix merging of scripts (#6393) 2022-11-11 08:47:05 +00:00
Alexander Akait
34b3710c9c
feat(html/minifier): Improve merging of group elements (#6349) 2022-11-07 14:26:08 +00:00
Alexander Akait
02f8d31ef3
feat(html/minifier): Merge script tags (#6273) 2022-10-28 02:39:10 +00:00
Alexander Akait
028951c36c
fix(html/minifier): Merge style blocks (#6264) 2022-10-27 02:25:45 +00:00
Alexander Akait
782da5c83a
feat(html/minifier): Handle crossorigin (#6261) 2022-10-27 00:16:24 +00:00
Donny/강동윤
86e265a024
feat(es/minifier): Support more statements in seqential inliner (#6248)
**Description:**

We now inline into the discriminant of a switch statement and into the initializer of for/for-in/for-of statements.
2022-10-26 13:37:10 +09:00
Alexander Akait
8b6b9c0961
feat(css/minifier): Merge rules (#6220) 2022-10-21 21:49:25 +09:00
Alexander Akait
aa3fab1957
feat(html/minifier): Improve removal of redundant attributes (#6197) 2022-10-20 04:17:17 +00:00
Alexander Akait
35466322d6
fix(html/minifier): Fix bugs of merging and removing metadata elements (#6200) 2022-10-19 03:25:18 +00:00
Alexander Akait
0ba464d643
fix(html/minifier): Compress exportparts (#6187) 2022-10-18 14:48:47 +00:00
Alexander Akait
8f00d1a934
feat(html/minifier): Compress javascript: URLs (#6185) 2022-10-18 14:15:43 +00:00
Alexander Akait
41093b022d
feat(html/minifier): Merge identical metadata elements (#6183) 2022-10-18 13:40:59 +00:00
Alexander Akait
5571c0c202
fix(html/minifier): Avoid ; at the end of js (#6188) 2022-10-18 01:07:15 +00:00
Alexander Akait
a920997f4b
feat(css/codegen): Support lowercase case insensitivity (#6113) 2022-10-11 04:31:17 +00:00
Donny/강동윤
7bcaaef4f7
feat(es/minifier): Mangle labels (#5934)
**Description:**

This PR adds code to mangle labels.
2022-09-22 23:24:05 +09:00
Donny/강동윤
1df72430a5
perf(es/minifier): Invoke DCE only before the first compression (#5907)
**Description:**

Invoke DCE only before the first compression. I verified that this patch does not affect the compression rate of the real-world inputs greatly.
2022-09-20 15:41:26 +09:00
Alexander Akait
ccd618ce54
perf(html/minifier): Improve performance (#5838) 2022-09-13 14:01:41 +09:00
Donny/강동윤
60ce462215
feat(es/minifier): Align name mangler with terser (#5763) 2022-09-06 21:37:58 +09:00
Donny/강동윤
537449e53b
fix(es/codegen): Emit trailing semicolon (#5659) 2022-08-29 10:10:55 +00:00
Donny/강동윤
d81fe67e4b
feat(es/minifier): Improve gzipped size (#5631) 2022-08-26 05:23:01 +00:00
Alexander Akait
3cb6fc2a29
feat(html/minifier): Improve minification modes (#5568) 2022-08-20 04:04:47 +00:00
Alexander Akait
1a4d7553b8
fix(html/minifier): Apply fixer (#5514) 2022-08-17 09:04:47 +00:00
Donny/강동윤
3943eb24d1
feat(es/minifier): Consider char frequencies (#5375) 2022-08-03 10:20:17 +00:00
Alexander Akait
6ad5b3ce5f
feat(html/minifier): Compress title (#5320) 2022-07-28 01:30:44 +00:00
Alexander Akait
4f55459b01
fix(html/minifier): Don't break unknown attributes (#5256) 2022-07-20 07:23:58 +00:00
Alexander Akait
1da6016da7
feat(html/minifier): Improve minifier (#5227) 2022-07-17 05:31:29 +00:00
Alexander Akait
625fc18da0
feat(html/minifier): Compress more default attributes (#5182) 2022-07-15 10:55:24 +00:00
Alexander Akait
dada2d7d55
feat(html/minifier): Allow specifying options for other tools (#5125) 2022-07-11 13:08:40 +00:00
Alexander Akait
8bc9a40c99
feat(html/minifier): Compress default attributes for svg (#5150) 2022-07-09 03:17:48 +00:00
Alexander Akait
f813a60497
feat(html/minifier): Sort attributes (#4784) 2022-07-06 15:50:23 +00:00
Alexander Akait
5932a0a2ef
fix(html/minifier): Fix bugs of the smart mode (#5093) 2022-07-05 06:04:12 +00:00
Alexander Akait
5ac5ae200c
fix(html/minifier): Small fix (#5079) 2022-07-03 04:14:51 +00:00
Alexander Akait
cb845c9bf9
feat(html/minifier): Remove empty metadata elements (#5085) 2022-07-02 03:25:23 +00:00
Alexander Akait
144314dcc2
feat(html/minifier): Improve collapse_whitespaces (#5070) 2022-07-01 03:50:49 +00:00
Alexander Akait
214c60a313
fix(html/minifier): Minify meta element (#5075) 2022-07-01 02:37:17 +00:00
Alexander Akait
26cfeff79c
feat(html/minifier): Sort unordered values in attributes (#5035) 2022-06-30 01:46:24 +00:00
Alexander Akait
e9bad20898
fix(html/minifier): Fix smart mode (#5058) 2022-06-29 12:30:28 +00:00
Alexander Akait
37eb366a1f
feat(es/parser): Add allow_return_outside_function to options (#5046) 2022-06-29 11:02:05 +00:00
Alexander Akait
d7a5f71073
feat(html/minifier): Allow minifying custom script contents (#5043) 2022-06-28 11:26:00 +00:00
Alexander Akait
0836d29913
feat(html/minifier): Add normalize_attributes for disabling normalization (#5045) 2022-06-28 04:37:04 +00:00
Alexander Akait
55e0ea3294
feat(html/minifier): Allow compressing additional attributes (#5036) 2022-06-27 21:37:48 +09:00
Alexander Akait
9202ff9700
feat(html/minifier): Improve smart mode (#5004) 2022-06-26 19:08:03 +00:00
Alexander Akait
e6c78d0b1d
feat(html/minifier): Add remove_comments option (#5037) 2022-06-25 05:58:06 +00:00