terser 5.29.1 → 5.29.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/dist/bundle.min.js +8 -6
- package/lib/compress/index.js +7 -5
- package/lib/compress/inline.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
package/dist/bundle.min.js
CHANGED
@@ -17971,7 +17971,7 @@ function inline_into_symbolref(self, compressor) {
|
|
17971
17971
|
let overhead = 0;
|
17972
17972
|
if (compressor.option("unused") && !compressor.exposed(def)) {
|
17973
17973
|
overhead =
|
17974
|
-
(name_length + 2 +
|
17974
|
+
(name_length + 2 + fixed.size(compressor)) /
|
17975
17975
|
(def.references.length - def.assignments);
|
17976
17976
|
}
|
17977
17977
|
|
@@ -22163,21 +22163,23 @@ function lift_key(self, compressor) {
|
|
22163
22163
|
if (!(self.key instanceof AST_Constant)) return self;
|
22164
22164
|
// allow certain acceptable props as not all AST_Constants are true constants
|
22165
22165
|
if (self.key instanceof AST_String || self.key instanceof AST_Number) {
|
22166
|
-
|
22167
|
-
|
22166
|
+
const key = self.key.value.toString();
|
22167
|
+
|
22168
|
+
if (key === "__proto__") return self;
|
22169
|
+
if (key == "constructor"
|
22168
22170
|
&& compressor.parent() instanceof AST_Class) return self;
|
22169
22171
|
if (self instanceof AST_ObjectKeyVal) {
|
22170
22172
|
self.quote = self.key.quote;
|
22171
|
-
self.key =
|
22173
|
+
self.key = key;
|
22172
22174
|
} else if (self instanceof AST_ClassProperty) {
|
22173
22175
|
self.quote = self.key.quote;
|
22174
22176
|
self.key = make_node(AST_SymbolClassProperty, self.key, {
|
22175
|
-
name:
|
22177
|
+
name: key,
|
22176
22178
|
});
|
22177
22179
|
} else {
|
22178
22180
|
self.quote = self.key.quote;
|
22179
22181
|
self.key = make_node(AST_SymbolMethod, self.key, {
|
22180
|
-
name:
|
22182
|
+
name: key,
|
22181
22183
|
});
|
22182
22184
|
}
|
22183
22185
|
}
|
package/lib/compress/index.js
CHANGED
@@ -3924,21 +3924,23 @@ function lift_key(self, compressor) {
|
|
3924
3924
|
if (!(self.key instanceof AST_Constant)) return self;
|
3925
3925
|
// allow certain acceptable props as not all AST_Constants are true constants
|
3926
3926
|
if (self.key instanceof AST_String || self.key instanceof AST_Number) {
|
3927
|
-
|
3928
|
-
|
3927
|
+
const key = self.key.value.toString();
|
3928
|
+
|
3929
|
+
if (key === "__proto__") return self;
|
3930
|
+
if (key == "constructor"
|
3929
3931
|
&& compressor.parent() instanceof AST_Class) return self;
|
3930
3932
|
if (self instanceof AST_ObjectKeyVal) {
|
3931
3933
|
self.quote = self.key.quote;
|
3932
|
-
self.key =
|
3934
|
+
self.key = key;
|
3933
3935
|
} else if (self instanceof AST_ClassProperty) {
|
3934
3936
|
self.quote = self.key.quote;
|
3935
3937
|
self.key = make_node(AST_SymbolClassProperty, self.key, {
|
3936
|
-
name:
|
3938
|
+
name: key,
|
3937
3939
|
});
|
3938
3940
|
} else {
|
3939
3941
|
self.quote = self.key.quote;
|
3940
3942
|
self.key = make_node(AST_SymbolMethod, self.key, {
|
3941
|
-
name:
|
3943
|
+
name: key,
|
3942
3944
|
});
|
3943
3945
|
}
|
3944
3946
|
}
|
package/lib/compress/inline.js
CHANGED
@@ -302,7 +302,7 @@ export function inline_into_symbolref(self, compressor) {
|
|
302
302
|
let overhead = 0;
|
303
303
|
if (compressor.option("unused") && !compressor.exposed(def)) {
|
304
304
|
overhead =
|
305
|
-
(name_length + 2 +
|
305
|
+
(name_length + 2 + fixed.size(compressor)) /
|
306
306
|
(def.references.length - def.assignments);
|
307
307
|
}
|
308
308
|
|