webfuscator 1.2.1 → 1.3.1

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.
Files changed (209) hide show
  1. package/README.md +3 -3
  2. package/dist/analysis/constant.d.ts.map +1 -1
  3. package/dist/analysis/constant.js +10 -27
  4. package/dist/analysis/constant.js.map +1 -1
  5. package/dist/analysis/inlineability.d.ts.map +1 -1
  6. package/dist/analysis/inlineability.js +5 -13
  7. package/dist/analysis/inlineability.js.map +1 -1
  8. package/dist/analysis/purity.d.ts +3 -3
  9. package/dist/analysis/purity.d.ts.map +1 -1
  10. package/dist/analysis/purity.js +28 -75
  11. package/dist/analysis/purity.js.map +1 -1
  12. package/dist/index.d.ts +1 -1
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/obfuscator.d.ts +2 -1
  15. package/dist/obfuscator.d.ts.map +1 -1
  16. package/dist/obfuscator.js +47 -12
  17. package/dist/obfuscator.js.map +1 -1
  18. package/dist/options.d.ts +17 -4
  19. package/dist/options.d.ts.map +1 -1
  20. package/dist/preparation/expand-destructuring.d.ts +2 -3
  21. package/dist/preparation/expand-destructuring.d.ts.map +1 -1
  22. package/dist/preparation/expand-destructuring.js +2 -8
  23. package/dist/preparation/expand-destructuring.js.map +1 -1
  24. package/dist/transforms/arguments-to-parameters.d.ts +5 -4
  25. package/dist/transforms/arguments-to-parameters.d.ts.map +1 -1
  26. package/dist/transforms/arguments-to-parameters.js +5 -4
  27. package/dist/transforms/arguments-to-parameters.js.map +1 -1
  28. package/dist/transforms/arrow-to-function.d.ts +4 -3
  29. package/dist/transforms/arrow-to-function.d.ts.map +1 -1
  30. package/dist/transforms/arrow-to-function.js +6 -10
  31. package/dist/transforms/arrow-to-function.js.map +1 -1
  32. package/dist/transforms/collapse-single-use-temps.d.ts +2 -1
  33. package/dist/transforms/collapse-single-use-temps.d.ts.map +1 -1
  34. package/dist/transforms/collapse-single-use-temps.js +12 -20
  35. package/dist/transforms/collapse-single-use-temps.js.map +1 -1
  36. package/dist/transforms/conceal-strings.d.ts +56 -0
  37. package/dist/transforms/conceal-strings.d.ts.map +1 -0
  38. package/dist/transforms/conceal-strings.js +356 -0
  39. package/dist/transforms/conceal-strings.js.map +1 -0
  40. package/dist/transforms/const-let-to-var.d.ts +4 -3
  41. package/dist/transforms/const-let-to-var.d.ts.map +1 -1
  42. package/dist/transforms/const-let-to-var.js +8 -67
  43. package/dist/transforms/const-let-to-var.js.map +1 -1
  44. package/dist/transforms/const-to-let.d.ts +1 -3
  45. package/dist/transforms/const-to-let.d.ts.map +1 -1
  46. package/dist/transforms/const-to-let.js +1 -8
  47. package/dist/transforms/const-to-let.js.map +1 -1
  48. package/dist/transforms/drop-console.d.ts.map +1 -1
  49. package/dist/transforms/drop-console.js +3 -5
  50. package/dist/transforms/drop-console.js.map +1 -1
  51. package/dist/transforms/expand-binary-assignment.d.ts.map +1 -1
  52. package/dist/transforms/expand-binary-assignment.js +0 -5
  53. package/dist/transforms/expand-binary-assignment.js.map +1 -1
  54. package/dist/transforms/expand-logical-assignment.d.ts.map +1 -1
  55. package/dist/transforms/expand-logical-assignment.js +0 -5
  56. package/dist/transforms/expand-logical-assignment.js.map +1 -1
  57. package/dist/transforms/extract-object-properties.js +5 -12
  58. package/dist/transforms/extract-object-properties.js.map +1 -1
  59. package/dist/transforms/fold-builtin-methods.d.ts.map +1 -1
  60. package/dist/transforms/fold-builtin-methods.js +44 -14
  61. package/dist/transforms/fold-builtin-methods.js.map +1 -1
  62. package/dist/transforms/fold-constants.js +5 -2
  63. package/dist/transforms/fold-constants.js.map +1 -1
  64. package/dist/transforms/function-declaration-to-expression.d.ts +5 -6
  65. package/dist/transforms/function-declaration-to-expression.d.ts.map +1 -1
  66. package/dist/transforms/function-declaration-to-expression.js +5 -6
  67. package/dist/transforms/function-declaration-to-expression.js.map +1 -1
  68. package/dist/transforms/hoist-variables.d.ts +29 -0
  69. package/dist/transforms/hoist-variables.d.ts.map +1 -0
  70. package/dist/transforms/hoist-variables.js +215 -0
  71. package/dist/transforms/hoist-variables.js.map +1 -0
  72. package/dist/transforms/inline-functions.js +11 -40
  73. package/dist/transforms/inline-functions.js.map +1 -1
  74. package/dist/transforms/logical-to-ternary.d.ts +1 -1
  75. package/dist/transforms/logical-to-ternary.js +5 -9
  76. package/dist/transforms/logical-to-ternary.js.map +1 -1
  77. package/dist/transforms/mangle-properties.d.ts +2 -5
  78. package/dist/transforms/mangle-properties.d.ts.map +1 -1
  79. package/dist/transforms/mangle-properties.js +9 -9
  80. package/dist/transforms/mangle-properties.js.map +1 -1
  81. package/dist/transforms/merge-variable-declarations.d.ts +17 -0
  82. package/dist/transforms/merge-variable-declarations.d.ts.map +1 -0
  83. package/dist/transforms/merge-variable-declarations.js +68 -0
  84. package/dist/transforms/merge-variable-declarations.js.map +1 -0
  85. package/dist/transforms/nullish-coalescing-to-ternary.d.ts +4 -5
  86. package/dist/transforms/nullish-coalescing-to-ternary.d.ts.map +1 -1
  87. package/dist/transforms/nullish-coalescing-to-ternary.js +7 -12
  88. package/dist/transforms/nullish-coalescing-to-ternary.js.map +1 -1
  89. package/dist/transforms/numbers-to-strings.d.ts.map +1 -1
  90. package/dist/transforms/numbers-to-strings.js +1 -8
  91. package/dist/transforms/numbers-to-strings.js.map +1 -1
  92. package/dist/transforms/object-method-to-property.d.ts +1 -1
  93. package/dist/transforms/object-method-to-property.js +1 -1
  94. package/dist/transforms/optional-chaining-to-ternary.d.ts +4 -3
  95. package/dist/transforms/optional-chaining-to-ternary.d.ts.map +1 -1
  96. package/dist/transforms/optional-chaining-to-ternary.js +9 -9
  97. package/dist/transforms/optional-chaining-to-ternary.js.map +1 -1
  98. package/dist/transforms/pack-declarations-into-parameters.d.ts.map +1 -1
  99. package/dist/transforms/pack-declarations-into-parameters.js +5 -21
  100. package/dist/transforms/pack-declarations-into-parameters.js.map +1 -1
  101. package/dist/transforms/pack.d.ts +4 -13
  102. package/dist/transforms/pack.d.ts.map +1 -1
  103. package/dist/transforms/pack.js +9 -29
  104. package/dist/transforms/pack.js.map +1 -1
  105. package/dist/transforms/remove-anonymous-function-names.d.ts +2 -4
  106. package/dist/transforms/remove-anonymous-function-names.d.ts.map +1 -1
  107. package/dist/transforms/remove-anonymous-function-names.js +2 -40
  108. package/dist/transforms/remove-anonymous-function-names.js.map +1 -1
  109. package/dist/transforms/remove-unreachable-code.js +2 -21
  110. package/dist/transforms/remove-unreachable-code.js.map +1 -1
  111. package/dist/transforms/remove-unused-code.d.ts.map +1 -1
  112. package/dist/transforms/remove-unused-code.js +12 -49
  113. package/dist/transforms/remove-unused-code.js.map +1 -1
  114. package/dist/transforms/rename-identifiers.d.ts +3 -3
  115. package/dist/transforms/rename-identifiers.d.ts.map +1 -1
  116. package/dist/transforms/rename-identifiers.js +31 -35
  117. package/dist/transforms/rename-identifiers.js.map +1 -1
  118. package/dist/transforms/reorder-function-declarations.d.ts +24 -0
  119. package/dist/transforms/reorder-function-declarations.d.ts.map +1 -0
  120. package/dist/transforms/reorder-function-declarations.js +62 -0
  121. package/dist/transforms/reorder-function-declarations.js.map +1 -0
  122. package/dist/transforms/specials-to-strings.d.ts.map +1 -1
  123. package/dist/transforms/specials-to-strings.js +2 -3
  124. package/dist/transforms/specials-to-strings.js.map +1 -1
  125. package/dist/transforms/switch-to-if.js +5 -15
  126. package/dist/transforms/switch-to-if.js.map +1 -1
  127. package/dist/transforms/ternary-to-if.d.ts.map +1 -1
  128. package/dist/transforms/ternary-to-if.js +5 -9
  129. package/dist/transforms/ternary-to-if.js.map +1 -1
  130. package/dist/transforms/update-to-assignment.d.ts.map +1 -1
  131. package/dist/transforms/update-to-assignment.js +6 -23
  132. package/dist/transforms/update-to-assignment.js.map +1 -1
  133. package/dist/transforms/yodify-conditions.d.ts +3 -4
  134. package/dist/transforms/yodify-conditions.d.ts.map +1 -1
  135. package/dist/transforms/yodify-conditions.js +3 -4
  136. package/dist/transforms/yodify-conditions.js.map +1 -1
  137. package/dist/utils/ast.d.ts +1 -3
  138. package/dist/utils/ast.d.ts.map +1 -1
  139. package/dist/utils/ast.js +4 -60
  140. package/dist/utils/ast.js.map +1 -1
  141. package/dist/utils/evaluation-order.js +1 -1
  142. package/dist/utils/evaluation-order.js.map +1 -1
  143. package/dist/utils/literal.d.ts.map +1 -1
  144. package/dist/utils/literal.js +74 -2
  145. package/dist/utils/literal.js.map +1 -1
  146. package/dist/utils/logical-lowering.d.ts.map +1 -1
  147. package/dist/utils/logical-lowering.js +7 -9
  148. package/dist/utils/logical-lowering.js.map +1 -1
  149. package/dist/utils/nullish.d.ts +4 -0
  150. package/dist/utils/nullish.d.ts.map +1 -0
  151. package/dist/utils/nullish.js +8 -0
  152. package/dist/utils/nullish.js.map +1 -0
  153. package/dist/utils/paths.d.ts +0 -2
  154. package/dist/utils/paths.d.ts.map +1 -1
  155. package/dist/utils/paths.js +0 -28
  156. package/dist/utils/paths.js.map +1 -1
  157. package/dist/utils/statement-lists.d.ts +9 -0
  158. package/dist/utils/statement-lists.d.ts.map +1 -0
  159. package/dist/utils/statement-lists.js +27 -0
  160. package/dist/utils/statement-lists.js.map +1 -0
  161. package/package.json +6 -2
  162. package/src/analysis/constant.ts +12 -33
  163. package/src/analysis/inlineability.ts +5 -13
  164. package/src/analysis/purity.ts +29 -92
  165. package/src/index.ts +1 -0
  166. package/src/obfuscator.ts +51 -14
  167. package/src/options.ts +21 -3
  168. package/src/preparation/expand-destructuring.ts +2 -10
  169. package/src/transforms/arguments-to-parameters.ts +5 -4
  170. package/src/transforms/arrow-to-function.ts +6 -10
  171. package/src/transforms/collapse-single-use-temps.ts +12 -23
  172. package/src/transforms/conceal-strings.ts +525 -0
  173. package/src/transforms/const-let-to-var.ts +9 -72
  174. package/src/transforms/const-to-let.ts +1 -8
  175. package/src/transforms/drop-console.ts +3 -5
  176. package/src/transforms/expand-binary-assignment.ts +0 -5
  177. package/src/transforms/expand-logical-assignment.ts +0 -5
  178. package/src/transforms/extract-object-properties.ts +5 -14
  179. package/src/transforms/fold-builtin-methods.ts +63 -17
  180. package/src/transforms/fold-constants.ts +5 -2
  181. package/src/transforms/function-declaration-to-expression.ts +5 -6
  182. package/src/transforms/hoist-variables.ts +262 -0
  183. package/src/transforms/inline-functions.ts +16 -47
  184. package/src/transforms/logical-to-ternary.ts +5 -10
  185. package/src/transforms/mangle-properties.ts +9 -12
  186. package/src/transforms/merge-variable-declarations.ts +91 -0
  187. package/src/transforms/nullish-coalescing-to-ternary.ts +7 -13
  188. package/src/transforms/numbers-to-strings.ts +2 -12
  189. package/src/transforms/object-method-to-property.ts +1 -1
  190. package/src/transforms/optional-chaining-to-ternary.ts +9 -9
  191. package/src/transforms/pack-declarations-into-parameters.ts +11 -21
  192. package/src/transforms/pack.ts +9 -30
  193. package/src/transforms/remove-anonymous-function-names.ts +3 -46
  194. package/src/transforms/remove-unreachable-code.ts +2 -22
  195. package/src/transforms/remove-unused-code.ts +14 -74
  196. package/src/transforms/rename-identifiers.ts +44 -35
  197. package/src/transforms/reorder-function-declarations.ts +78 -0
  198. package/src/transforms/specials-to-strings.ts +2 -3
  199. package/src/transforms/switch-to-if.ts +5 -22
  200. package/src/transforms/ternary-to-if.ts +5 -9
  201. package/src/transforms/update-to-assignment.ts +6 -24
  202. package/src/transforms/yodify-conditions.ts +3 -4
  203. package/src/utils/ast.ts +4 -69
  204. package/src/utils/evaluation-order.ts +1 -1
  205. package/src/utils/literal.ts +91 -2
  206. package/src/utils/logical-lowering.ts +7 -11
  207. package/src/utils/nullish.ts +23 -0
  208. package/src/utils/paths.ts +0 -32
  209. package/src/utils/statement-lists.ts +45 -0
@@ -1,8 +1,7 @@
1
1
  import type { File } from '@babel/types';
2
2
  /**
3
- * Rewrites `a ?? b` as a guarded assignment or `a != null ? a : b`. A
4
- * side-effectful left side is cached. Loose inequality checks both nullish
5
- * values in one comparison.
3
+ * Rewrites `a ?? b` as a guarded assignment or strict null and undefined
4
+ * checks. A side-effectful left side is cached.
6
5
  *
7
6
  * @example
8
7
  * // ◀️ before
@@ -11,8 +10,8 @@ import type { File } from '@babel/types';
11
10
  *
12
11
  * // ▶️ after
13
12
  * var x = a;
14
- * if (x == null) x = b;
15
- * f((_t = get()) != null ? _t : fallback);
13
+ * if (x === null ? true : x === void 0) x = b;
14
+ * f(((_t = get()) !== null ? _t !== void 0 : false) ? _t : fallback);
16
15
  */
17
16
  export declare function nullishCoalescingToTernary(ast: File): boolean;
18
17
  //# sourceMappingURL=nullish-coalescing-to-ternary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nullish-coalescing-to-ternary.d.ts","sourceRoot":"","sources":["../../src/transforms/nullish-coalescing-to-ternary.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAOxC;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAE7D"}
1
+ {"version":3,"file":"nullish-coalescing-to-ternary.d.ts","sourceRoot":"","sources":["../../src/transforms/nullish-coalescing-to-ternary.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAOxC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAE7D"}
@@ -1,11 +1,10 @@
1
1
  import * as t from '@babel/types';
2
- import { isInsideWith } from '../utils/ast.js';
3
2
  import { traverseForChanges } from '../utils/change-tracking.js';
4
3
  import { lowerLogicalWriteStatement } from '../utils/logical-lowering.js';
4
+ import { buildNonNullishCheck, buildNullishCheck } from '../utils/nullish.js';
5
5
  /**
6
- * Rewrites `a ?? b` as a guarded assignment or `a != null ? a : b`. A
7
- * side-effectful left side is cached. Loose inequality checks both nullish
8
- * values in one comparison.
6
+ * Rewrites `a ?? b` as a guarded assignment or strict null and undefined
7
+ * checks. A side-effectful left side is cached.
9
8
  *
10
9
  * @example
11
10
  * // ◀️ before
@@ -14,8 +13,8 @@ import { lowerLogicalWriteStatement } from '../utils/logical-lowering.js';
14
13
  *
15
14
  * // ▶️ after
16
15
  * var x = a;
17
- * if (x == null) x = b;
18
- * f((_t = get()) != null ? _t : fallback);
16
+ * if (x === null ? true : x === void 0) x = b;
17
+ * f(((_t = get()) !== null ? _t !== void 0 : false) ? _t : fallback);
19
18
  */
20
19
  export function nullishCoalescingToTernary(ast) {
21
20
  return traverseForChanges(ast, visitor);
@@ -32,10 +31,6 @@ function lowerNullishCoalescing(path) {
32
31
  if (node.operator !== '??') {
33
32
  return false;
34
33
  }
35
- // `with` can turn a repeated name into a getter and shadow a cache temp.
36
- if (isInsideWith(path)) {
37
- return false;
38
- }
39
34
  if (lowerLogicalWriteStatement(path, nullishFallbackTest)) {
40
35
  return true;
41
36
  }
@@ -52,10 +47,10 @@ function lowerNullishCoalescing(path) {
52
47
  test = t.assignmentExpression('=', t.cloneNode(tmp), node.left);
53
48
  consequent = t.cloneNode(tmp);
54
49
  }
55
- path.replaceWith(t.conditionalExpression(t.binaryExpression('!=', test, t.nullLiteral()), consequent, node.right));
50
+ path.replaceWith(t.conditionalExpression(buildNonNullishCheck(test, t.cloneNode(consequent)), consequent, node.right));
56
51
  return true;
57
52
  }
58
53
  function nullishFallbackTest(target) {
59
- return t.binaryExpression('==', target, t.nullLiteral());
54
+ return buildNullishCheck(target, t.cloneNode(target));
60
55
  }
61
56
  //# sourceMappingURL=nullish-coalescing-to-ternary.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nullish-coalescing-to-ternary.js","sourceRoot":"","sources":["../../src/transforms/nullish-coalescing-to-ternary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAGjC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAE7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AAEtE;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,0BAA0B,CAAC,GAAS;IAClD,OAAO,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,OAAO,GAAyB;IACpC,iBAAiB,CAAC,IAAI,EAAE,KAAK;QAC3B,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;QACtB,CAAC;IACH,CAAC;CACF,CAAA;AAED,SAAS,sBAAsB,CAAC,IAAmC;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAA;IACd,CAAC;IACD,yEAAyE;IACzE,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,0BAA0B,CAAC,IAAI,EAAE,mBAAmB,CAAC,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;IACxB,IAAI,IAAkB,CAAA;IACtB,IAAI,UAAwB,CAAA;IAE5B,IAAI,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAClE,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAChB,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,KAAK,CAAC,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7D,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACpC,IAAI,GAAG,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/D,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;IAC/B,CAAC;IAED,IAAI,CAAC,WAAW,CACd,CAAC,CAAC,qBAAqB,CACrB,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,EAC/C,UAAU,EACV,IAAI,CAAC,KAAK,CACX,CACF,CAAA;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAoB;IAC/C,OAAO,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;AAC1D,CAAC"}
1
+ {"version":3,"file":"nullish-coalescing-to-ternary.js","sourceRoot":"","sources":["../../src/transforms/nullish-coalescing-to-ternary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAGjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAE7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AACtE,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAE1E;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,0BAA0B,CAAC,GAAS;IAClD,OAAO,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,OAAO,GAAyB;IACpC,iBAAiB,CAAC,IAAI,EAAE,KAAK;QAC3B,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;QACtB,CAAC;IACH,CAAC;CACF,CAAA;AAED,SAAS,sBAAsB,CAAC,IAAmC;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,0BAA0B,CAAC,IAAI,EAAE,mBAAmB,CAAC,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;IACxB,IAAI,IAAkB,CAAA;IACtB,IAAI,UAAwB,CAAA;IAE5B,IAAI,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAClE,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAChB,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,KAAK,CAAC,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7D,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACpC,IAAI,GAAG,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/D,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;IAC/B,CAAC;IAED,IAAI,CAAC,WAAW,CACd,CAAC,CAAC,qBAAqB,CACrB,oBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EACnD,UAAU,EACV,IAAI,CAAC,KAAK,CACX,CACF,CAAA;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAoB;IAC/C,OAAO,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;AACvD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"numbers-to-strings.d.ts","sourceRoot":"","sources":["../../src/transforms/numbers-to-strings.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAKxC;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAEnD"}
1
+ {"version":3,"file":"numbers-to-strings.d.ts","sourceRoot":"","sources":["../../src/transforms/numbers-to-strings.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAMxC;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAEnD"}
@@ -1,4 +1,5 @@
1
1
  import * as t from '@babel/types';
2
+ import { isNonComputedKey } from '../utils/ast.js';
2
3
  import { traverseForChanges } from '../utils/change-tracking.js';
3
4
  /**
4
5
  * Rewrites numeric literals as strings coerced with unary plus. Under `+`, `-`,
@@ -40,12 +41,4 @@ const visitor = {
40
41
  state.changed = true;
41
42
  },
42
43
  };
43
- function isNonComputedKey(path) {
44
- const parentPath = path.parentPath;
45
- if (!parentPath) {
46
- return false;
47
- }
48
- const parent = parentPath.node;
49
- return ('key' in parent && parent.key === path.node && 'computed' in parent && parent.computed === false);
50
- }
51
44
  //# sourceMappingURL=numbers-to-strings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"numbers-to-strings.js","sourceRoot":"","sources":["../../src/transforms/numbers-to-strings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAGjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAG7D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAS;IACxC,OAAO,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AAEhD,MAAM,OAAO,GAAyB;IACpC,cAAc,CAAC,IAAI,EAAE,KAAK;QACxB,+EAA+E;QAC/E,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,OAAM;QACR,CAAC;QACD,MAAM,GAAG,GAAG,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC1B,IACE,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC;YAC3B,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI;YAC7B,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EACpC,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACvB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QAC/C,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;IACtB,CAAC;CACF,CAAA;AAED,SAAS,gBAAgB,CAAC,IAAgC;IACxD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;IAClC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,KAAK,CAAA;IACd,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAA;IAC9B,OAAO,CACL,KAAK,IAAI,MAAM,IAAI,MAAM,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,IAAI,UAAU,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,CACjG,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"numbers-to-strings.js","sourceRoot":"","sources":["../../src/transforms/numbers-to-strings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAGjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAG7D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAS;IACxC,OAAO,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AAEhD,MAAM,OAAO,GAAyB;IACpC,cAAc,CAAC,IAAI,EAAE,KAAK;QACxB,+EAA+E;QAC/E,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,OAAM;QACR,CAAC;QACD,MAAM,GAAG,GAAG,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC1B,IACE,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC;YAC3B,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI;YAC7B,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EACpC,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACvB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QAC/C,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;IACtB,CAAC;CACF,CAAA"}
@@ -9,7 +9,7 @@ import type { File } from '@babel/types';
9
9
  *
10
10
  * Non-computed `__proto__` methods stay intact because the property form invokes
11
11
  * ECMA-262 B.3.1 prototype-setting behavior. Computed keys create own properties
12
- * and remain safe.
12
+ * and can be rewritten.
13
13
  *
14
14
  * @example
15
15
  * // ◀️ before
@@ -11,7 +11,7 @@ import { traverseForChanges } from '../utils/change-tracking.js';
11
11
  *
12
12
  * Non-computed `__proto__` methods stay intact because the property form invokes
13
13
  * ECMA-262 B.3.1 prototype-setting behavior. Computed keys create own properties
14
- * and remain safe.
14
+ * and can be rewritten.
15
15
  *
16
16
  * @example
17
17
  * // ◀️ before
@@ -11,9 +11,10 @@ import type { File } from '@babel/types';
11
11
  * a?.b?.c;
12
12
  *
13
13
  * // ▶️ after
14
- * obj == null ? void 0 : (_m = obj.m).call(obj, arg);
15
- * obj == null ? true : delete obj.x;
16
- * a == null ? void 0 : (_b = a.b) == null ? void 0 : _b.c;
14
+ * (obj === null ? true : obj === void 0) ? void 0 : (_m = obj.m).call(obj, arg);
15
+ * (obj === null ? true : obj === void 0) ? true : delete obj.x;
16
+ * (a === null ? true : a === void 0) ? void 0 :
17
+ * ((_b = a.b) === null ? true : _b === void 0) ? void 0 : _b.c;
17
18
  */
18
19
  export declare function optionalChainingToTernary(ast: File): boolean;
19
20
  //# sourceMappingURL=optional-chaining-to-ternary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"optional-chaining-to-ternary.d.ts","sourceRoot":"","sources":["../../src/transforms/optional-chaining-to-ternary.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAMxC;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAE5D"}
1
+ {"version":3,"file":"optional-chaining-to-ternary.d.ts","sourceRoot":"","sources":["../../src/transforms/optional-chaining-to-ternary.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAMxC;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAE5D"}
@@ -1,6 +1,6 @@
1
1
  import * as t from '@babel/types';
2
- import { isInsideWith } from '../utils/ast.js';
3
2
  import { traverseForChanges } from '../utils/change-tracking.js';
3
+ import { buildNullishCheck } from '../utils/nullish.js';
4
4
  /**
5
5
  * Rewrites optional chains as nested ternaries. Side-effectful receivers are
6
6
  * cached, and member calls retain their `this`. Optional deletion short-circuits
@@ -13,9 +13,10 @@ import { traverseForChanges } from '../utils/change-tracking.js';
13
13
  * a?.b?.c;
14
14
  *
15
15
  * // ▶️ after
16
- * obj == null ? void 0 : (_m = obj.m).call(obj, arg);
17
- * obj == null ? true : delete obj.x;
18
- * a == null ? void 0 : (_b = a.b) == null ? void 0 : _b.c;
16
+ * (obj === null ? true : obj === void 0) ? void 0 : (_m = obj.m).call(obj, arg);
17
+ * (obj === null ? true : obj === void 0) ? true : delete obj.x;
18
+ * (a === null ? true : a === void 0) ? void 0 :
19
+ * ((_b = a.b) === null ? true : _b === void 0) ? void 0 : _b.c;
19
20
  */
20
21
  export function optionalChainingToTernary(ast) {
21
22
  return traverseForChanges(ast, visitor);
@@ -33,10 +34,6 @@ const visitor = {
33
34
  },
34
35
  };
35
36
  function lowerOptionalChain(path) {
36
- // `with` can make a repeated receiver name invoke a getter twice.
37
- if (isInsideWith(path)) {
38
- return false;
39
- }
40
37
  if (isInsideOptionalChain(path)) {
41
38
  return false;
42
39
  }
@@ -154,16 +151,19 @@ function transformChain(path) {
154
151
  return false;
155
152
  }
156
153
  let check;
154
+ let repeatedCheck;
157
155
  if (path.scope.isStatic(chain)) {
158
156
  // The receiver stays in the member expression, so the check needs its own
159
157
  // node. One node under two parents is visited twice, and a later in-place
160
158
  // rewrite such as renameIdentifiers then applies itself twice to it.
161
159
  check = t.cloneNode(chain);
160
+ repeatedCheck = t.cloneNode(chain);
162
161
  }
163
162
  else {
164
163
  const tmp = path.scope.generateUidIdentifierBasedOnNode(chain);
165
164
  path.scope.push({ id: t.cloneNode(tmp) });
166
165
  check = t.assignmentExpression('=', t.cloneNode(tmp), chain);
166
+ repeatedCheck = t.cloneNode(tmp);
167
167
  if (isCall) {
168
168
  ;
169
169
  node.callee = t.cloneNode(tmp);
@@ -191,7 +191,7 @@ function transformChain(path) {
191
191
  callNode.callee = t.memberExpression(callNode.callee, t.identifier('call'));
192
192
  }
193
193
  }
194
- const condition = t.binaryExpression('==', check, t.nullLiteral());
194
+ const condition = buildNullishCheck(check, repeatedCheck);
195
195
  let alternate = replacementPath.node;
196
196
  if (isDelete && i === optionals.length - 1) {
197
197
  alternate = t.unaryExpression('delete', alternate);
@@ -1 +1 @@
1
- {"version":3,"file":"optional-chaining-to-ternary.js","sourceRoot":"","sources":["../../src/transforms/optional-chaining-to-ternary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAGjC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAG7D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,yBAAyB,CAAC,GAAS;IACjD,OAAO,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,OAAO,GAAyB;IACpC,wBAAwB,CAAC,IAAI,EAAE,KAAK;QAClC,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;QACtB,CAAC;IACH,CAAC;IACD,sBAAsB,CAAC,IAAI,EAAE,KAAK;QAChC,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;QACtB,CAAC;IACH,CAAC;CACF,CAAA;AAED,SAAS,kBAAkB,CAAC,IAAkB;IAC5C,kEAAkE;IAClE,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,OAAO,KAAK,CAAA;IACd,CAAC;IACD,8EAA8E;IAC9E,oBAAoB;IACpB,IAAI,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACtD,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;AAC7B,CAAC;AAED,6CAA6C;AAC7C,SAAS,uBAAuB,CAAC,IAAkB;IACjD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAA;IAC9B,OAAO,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,0BAA0B,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,CAAA;AAC/F,CAAC;AAKD,SAAS,qBAAqB,CAAC,IAAc;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAA;IAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,MAAM,CAAC,0BAA0B,EAAE,EAAE,CAAC;QACxC,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,CAAA;IACzC,CAAC;IACD,IAAI,MAAM,CAAC,wBAAwB,EAAE,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,CAAA;IACzC,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,kFAAkF;AAClF,gFAAgF;AAChF,6CAA6C;AAC7C,SAAS,aAAa,CAAC,IAAkB;IACvC,IAAI,IAAI,GAAW,IAAI,CAAC,IAAI,CAAA;IAC5B,SAAS,CAAC;QACR,IAAI,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,MAAM,MAAM,GAAW,IAAI,CAAC,MAAM,CAAA;YAClC,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAC5F,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,GAAG,MAAM,CAAA;QACf,CAAC;aAAM,IAAI,CAAC,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAW,IAAI,CAAC,MAAM,CAAA;YAClC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,GAAG,MAAM,CAAA;QACf,CAAC;aAAM,CAAC;YACN,MAAK;QACP,CAAC;IACH,CAAC;IACD,IAAI,KAAK,GAAW,IAAI,CAAC,IAAI,CAAA;IAC7B,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAA;IAC5B,OAAO,MAAM,EAAE,yBAAyB,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QAC/E,KAAK,GAAG,MAAM,CAAC,IAAI,CAAA;QACnB,MAAM,GAAG,MAAM,CAAC,UAAU,CAAA;IAC5B,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QAC5F,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,MAAM,CAAC,0BAA0B,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,KAAK,CAAA;AACzE,CAAC;AAED,SAAS,cAAc,CAAC,IAAkB;IACxC,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,SAAS,GAA8C,EAAE,CAAA;IAE/D,IAAI,GAAG,GAAa,IAAI,CAAA;IACxB,OAAO,GAAG,CAAC,0BAA0B,EAAE,IAAI,GAAG,CAAC,wBAAwB,EAAE,EAAE,CAAC;QAC1E,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;QACrB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,SAAS,CAAC,IAAI,CAAC,IAAwD,CAAC,CAAA;QAC1E,CAAC;QACD,yDAAyD;QACzD,IAAI,GAAG,CAAC,0BAA0B,EAAE,EAAE,CAAC;YACrC,CAAC;YAAC,IAAoC,CAAC,IAAI,GAAG,kBAAkB,CAAA;YAChE,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAa,CAAA;QACrC,CAAC;aAAM,CAAC;YACN,CAAC;YAAC,IAAoC,CAAC,IAAI,GAAG,gBAAgB,CAAA;YAC9D,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAa,CAAA;QACrC,CAAC;IACH,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAA;IAC9B,MAAM,QAAQ,GACZ,MAAM,KAAK,IAAI;QACf,MAAM,CAAC,iBAAiB,EAAE;QAC1B,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ;QACjC,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAA;IAEpC,gDAAgD;IAChD,MAAM,YAAY,GAAiB,QAAQ;QACzC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC;QACxB,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;IAElD,IAAI,eAAe,GAAa,IAAI,CAAA;IAEpC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAE,CAAA;QAC1B,MAAM,MAAM,GAAG,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,KAAK,GAA2B,MAAM;YAC1C,CAAC,CAAG,IAAyB,CAAC,MAAiC;YAC/D,CAAC,CAAE,IAA2B,CAAC,MAAM,CAAA;QAEvC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,KAAK,CAAA;QACd,CAAC;QAED,IAAI,KAAmB,CAAA;QAEvB,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,0EAA0E;YAC1E,0EAA0E;YAC1E,qEAAqE;YACrE,KAAK,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAA;YAC9D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACzC,KAAK,GAAG,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAA;YAC5D,IAAI,MAAM,EAAE,CAAC;gBACX,CAAC;gBAAC,IAAyB,CAAC,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YACvD,CAAC;iBAAM,CAAC;gBACN,CAAC;gBAAC,IAA2B,CAAC,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YACzD,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,IAAI,MAAM,IAAI,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,IAAwB,CAAA;YACzC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;YAC3B,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACvB,IAAI,OAAqB,CAAA;gBACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;gBACzD,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;oBAC/B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;gBAC9D,CAAC;qBAAM,CAAC;oBACN,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAiB,CAAA;gBAC/C,CAAC;gBACD,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;gBAChD,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAsB,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;YAC7F,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;QAElE,IAAI,SAAS,GAAG,eAAe,CAAC,IAAoB,CAAA;QACpD,IAAI,QAAQ,IAAI,CAAC,KAAK,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;QACpD,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,CAAC,qBAAqB,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,SAAS,CAAC,CAAA;QAC3F,MAAM,QAAQ,GAAsC,eAAe,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9F,eAAe,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,6EAA6E;QAC7E,MAAO,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
1
+ {"version":3,"file":"optional-chaining-to-ternary.js","sourceRoot":"","sources":["../../src/transforms/optional-chaining-to-ternary.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pack-declarations-into-parameters.d.ts","sourceRoot":"","sources":["../../src/transforms/pack-declarations-into-parameters.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAQxC;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAEjE"}
1
+ {"version":3,"file":"pack-declarations-into-parameters.d.ts","sourceRoot":"","sources":["../../src/transforms/pack-declarations-into-parameters.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAOxC;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAEjE"}
@@ -1,8 +1,7 @@
1
1
  import * as t from '@babel/types';
2
- import { enclosingScopeHasDirectEval, hasDuplicateParamNames } from '../utils/ast.js';
2
+ import { hasDuplicateParamNames } from '../utils/ast.js';
3
3
  import { traverseForChanges } from '../utils/change-tracking.js';
4
4
  import { isLiteralShaped } from '../utils/literal.js';
5
- import { hasAnnexBFunctionAlias } from '../utils/paths.js';
6
5
  /**
7
6
  * Moves leading literal-valued `var` declarations into trailing default
8
7
  * parameters. Arrows, rest parameters, name collisions, and functions with
@@ -41,10 +40,6 @@ function packLeadingIntoParams(path) {
41
40
  path.isClassPrivateMethod()) {
42
41
  return false;
43
42
  }
44
- // An Annex B alias splits call sites across bindings Babel does not connect.
45
- if (hasAnnexBFunctionAlias(path)) {
46
- return false;
47
- }
48
43
  const params = path.node.params;
49
44
  if (params.some((param) => t.isRestElement(param))) {
50
45
  return false;
@@ -65,10 +60,6 @@ function packLeadingIntoParams(path) {
65
60
  if (referencesArguments(path)) {
66
61
  return false;
67
62
  }
68
- // Direct eval can inspect the newly unmapped `arguments` by name.
69
- if (enclosingScopeHasDirectEval(path)) {
70
- return false;
71
- }
72
63
  // A caller with extra arguments could fill the new parameter slot.
73
64
  if (!allCallSitesRespectArity(path, params.length)) {
74
65
  return false;
@@ -145,7 +136,9 @@ function methodComputedKey(path) {
145
136
  // arity and without spread.
146
137
  function allCallSitesRespectArity(path, arity) {
147
138
  const external = functionBinding(path);
148
- if (!external || !external.constant || !bindingCallsRespectArity(external, arity)) {
139
+ if (!external ||
140
+ (external.kind !== 'const' && !external.constant) ||
141
+ !bindingCallsRespectArity(external, arity)) {
149
142
  return false;
150
143
  }
151
144
  if (path.isFunctionExpression() && path.node.id) {
@@ -171,17 +164,8 @@ function bindingCallsRespectArity(binding, arity) {
171
164
  }
172
165
  return true;
173
166
  }
174
- // Annex B can hoist function names from nested blocks into this function scope.
175
167
  function functionDeclarationNames(body) {
176
- const names = new Set();
177
- t.traverseFast(body, (node) => {
178
- if (t.isFunctionDeclaration(node) && node.id) {
179
- names.add(node.id.name);
180
- return t.traverseFast.skip;
181
- }
182
- return node !== body && t.isFunction(node) ? t.traverseFast.skip : undefined;
183
- });
184
- return names;
168
+ return new Set(body.body.flatMap((statement) => t.isFunctionDeclaration(statement) && statement.id ? [statement.id.name] : []));
185
169
  }
186
170
  function functionBinding(path) {
187
171
  if (path.isFunctionDeclaration() && path.node.id) {
@@ -1 +1 @@
1
- {"version":3,"file":"pack-declarations-into-parameters.js","sourceRoot":"","sources":["../../src/transforms/pack-declarations-into-parameters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pack-declarations-into-parameters.js","sourceRoot":"","sources":["../../src/transforms/pack-declarations-into-parameters.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,10 @@
1
1
  import type { File } from '@babel/types';
2
2
  import type { TransformContext } from '../options.js';
3
3
  /**
4
- * Serializes the whole program to a string and rebuilds it at runtime through
5
- * the `Function` constructor. A detached function body only reaches true globals
6
- * and its own parameters. A free name might instead be a CommonJS `require`, a
7
- * bundler-injected binding, or a live import, none reachable from the body and
8
- * none distinguishable from a global at build time, so free names are routed
9
- * through a parameter object whose accessors run in the original top-level scope
10
- * and resolve each name there. Import declarations return above the call. `eval`
11
- * is left un-routed so a direct eval still reads the body scope. Names inside a
12
- * `with` stay un-routed too, since they may resolve against the with object at
13
- * runtime. Export statements cannot live inside a Function body, so pack throws
14
- * on them. It packs everything else as written. Code that needs `import.meta`,
15
- * top-level await, dynamic `import()`, or a top-level `arguments` will not run
16
- * once moved into a Function body.
4
+ * Serializes the whole program and runs it through the `Function` constructor.
5
+ * Imports stay outside the generated function. Reads and writes to other free
6
+ * names go through accessors created in the original top-level scope. Export
7
+ * statements are rejected because they cannot appear in a `Function` body.
17
8
  *
18
9
  * @example
19
10
  * // ◀️ before
@@ -1 +1 @@
1
- {"version":3,"file":"pack.d.ts","sourceRoot":"","sources":["../../src/transforms/pack.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAExC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAuGlD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAY9D"}
1
+ {"version":3,"file":"pack.d.ts","sourceRoot":"","sources":["../../src/transforms/pack.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAExC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAsGlD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAY9D"}
@@ -1,7 +1,6 @@
1
1
  import generate from '@babel/generator';
2
2
  import traverse from '@babel/traverse';
3
3
  import * as t from '@babel/types';
4
- import { isInsideWith } from '../utils/ast.js';
5
4
  import { isCalleeOrTagOf, isInStrictContext, referencesOrWritesVariable } from '../utils/paths.js';
6
5
  import { mulberry32 } from '../utils/random.js';
7
6
  import { StringGenerator } from '../utils/string-generator.js';
@@ -102,19 +101,10 @@ const STANDARD_GLOBALS = [
102
101
  'Buffer',
103
102
  ];
104
103
  /**
105
- * Serializes the whole program to a string and rebuilds it at runtime through
106
- * the `Function` constructor. A detached function body only reaches true globals
107
- * and its own parameters. A free name might instead be a CommonJS `require`, a
108
- * bundler-injected binding, or a live import, none reachable from the body and
109
- * none distinguishable from a global at build time, so free names are routed
110
- * through a parameter object whose accessors run in the original top-level scope
111
- * and resolve each name there. Import declarations return above the call. `eval`
112
- * is left un-routed so a direct eval still reads the body scope. Names inside a
113
- * `with` stay un-routed too, since they may resolve against the with object at
114
- * runtime. Export statements cannot live inside a Function body, so pack throws
115
- * on them. It packs everything else as written. Code that needs `import.meta`,
116
- * top-level await, dynamic `import()`, or a top-level `arguments` will not run
117
- * once moved into a Function body.
104
+ * Serializes the whole program and runs it through the `Function` constructor.
105
+ * Imports stay outside the generated function. Reads and writes to other free
106
+ * names go through accessors created in the original top-level scope. Export
107
+ * statements are rejected because they cannot appear in a `Function` body.
118
108
  *
119
109
  * @example
120
110
  * // ◀️ before
@@ -215,15 +205,9 @@ function packProgram(programPath, ctx) {
215
205
  const skip = new Set(skipNames);
216
206
  const isRoutable = (path) => {
217
207
  const name = path.node.name;
218
- // The wrapper parameter stays as written. `arguments` and `eval` are never
219
- // routed: `arguments` binds to its own function's object, and leaving `eval`
220
- // bare keeps a direct eval reading the body scope rather than the global one.
221
- if (name === objectName || name === 'arguments' || name === 'eval') {
222
- return false;
223
- }
224
- // Inside `with`, a free name may resolve to a property of the with object at
225
- // runtime, so routing it to the top-level accessor would change behavior.
226
- if (isInsideWith(path)) {
208
+ // Keep the wrapper parameter and `arguments` bare. The latter must bind to
209
+ // the wrapper function's own arguments object.
210
+ if (name === objectName || name === 'arguments') {
227
211
  return false;
228
212
  }
229
213
  if (!referencesOrWritesVariable(path)) {
@@ -278,17 +262,13 @@ function packProgram(programPath, ctx) {
278
262
  },
279
263
  };
280
264
  programPath.traverse(routingVisitor);
281
- // The script completion value is its trailing expression; returning it keeps
282
- // `eval` of the packed output producing the same value.
283
265
  const body = programNode.body;
284
- const lastStatement = body.at(-1);
285
- if (lastStatement && t.isExpressionStatement(lastStatement)) {
286
- body[body.length - 1] = t.returnStatement(lastStatement.expression);
287
- }
288
266
  const innerDirectives = bodyStrict ? [t.directive(t.directiveLiteral('use strict'))] : [];
289
267
  const innerCode = generate(t.program(body, innerDirectives, 'script'), {
290
268
  minified: true,
291
269
  comments: false,
270
+ // `comments: false` still allows @license and @preserve.
271
+ shouldPrintComment: () => false,
292
272
  }).code;
293
273
  const objectExpression = buildAccessorObject({
294
274
  readProperties,
@@ -1 +1 @@
1
- {"version":3,"file":"pack.js","sourceRoot":"","sources":["../../src/transforms/pack.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,kBAAkB,CAAA;AACvC,OAAO,QAAQ,MAAM,iBAAiB,CAAA;AAEtC,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAIjC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAA;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE3D,6EAA6E;AAC7E,iFAAiF;AACjF,yEAAyE;AACzE,yEAAyE;AACzE,+EAA+E;AAC/E,iFAAiF;AACjF,MAAM,gBAAgB,GAAsB;IAC1C,YAAY;IACZ,MAAM;IACN,UAAU;IACV,KAAK;IACL,WAAW;IACX,UAAU;IACV,YAAY;IACZ,OAAO;IACP,UAAU;IACV,WAAW;IACX,oBAAoB;IACpB,WAAW;IACX,oBAAoB;IACpB,QAAQ;IACR,UAAU;IACV,MAAM;IACN,MAAM;IACN,iBAAiB;IACjB,OAAO;IACP,gBAAgB;IAChB,YAAY;IACZ,cAAc;IACd,aAAa;IACb,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,QAAQ;IACR,UAAU;IACV,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,SAAS;IACT,OAAO;IACP,SAAS;IACT,OAAO;IACP,WAAW;IACX,YAAY;IACZ,gBAAgB;IAChB,aAAa;IACb,WAAW;IACX,UAAU;IACV,gBAAgB;IAChB,OAAO;IACP,KAAK;IACL,KAAK;IACL,SAAS;IACT,SAAS;IACT,SAAS;IACT,sBAAsB;IACtB,aAAa;IACb,mBAAmB;IACnB,UAAU;IACV,SAAS;IACT,WAAW;IACX,YAAY;IACZ,mBAAmB;IACnB,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,aAAa;IACb,cAAc;IACd,cAAc;IACd,eAAe;IACf,gBAAgB;IAChB,SAAS;IACT,QAAQ;IACR,aAAa;IACb,MAAM;IACN,KAAK;IACL,iBAAiB;IACjB,aAAa;IACb,aAAa;IACb,aAAa;IACb,QAAQ;IACR,UAAU;IACV,UAAU;IACV,aAAa;IACb,OAAO;IACP,SAAS;IACT,QAAQ;IACR,SAAS;IACT,QAAQ;CACT,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,IAAI,CAAC,GAAS,EAAE,GAAqB;IACnD,IAAI,WAAW,GAA+B,IAAI,CAAA;IAClD,QAAQ,CAAC,GAAG,EAAE;QACZ,OAAO,CAAC,IAAI;YACV,WAAW,GAAG,IAAI,CAAA;YAClB,IAAI,CAAC,IAAI,EAAE,CAAA;QACb,CAAC;KACF,CAAC,CAAA;IACF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,WAAW,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;AACtC,CAAC;AAED,SAAS,WAAW,CAAC,WAAgC,EAAE,GAAqB;IAC1E,eAAe,CAAC,WAAW,CAAC,CAAA;IAC5B,MAAM,WAAW,GAAG,yBAAyB,CAAC,WAAW,CAAC,CAAA;IAC1D,MAAM,kBAAkB,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/D,8EAA8E;IAC9E,wEAAwE;IACxE,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAClE,wBAAwB,CAAC,WAAW,CAAC,CACtC,CAAA;IAED,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAA;IACpC,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,KAAK,QAAQ,CAAA;IACrD,2EAA2E;IAC3E,oDAAoD;IACpD,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,EAAE,YAAY,IAAI,KAAK,CAAA;IACpD,MAAM,UAAU,GAAG,CAAC,YAAY,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAA;IAElE,8EAA8E;IAC9E,0EAA0E;IAC1E,8CAA8C;IAC9C,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,CAAC,MAAM,EAAE,CAAA;IACf,CAAC;IACD,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IAEzB,MAAM,SAAS,GAAG,gBAAgB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAA;IACnE,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,GAAG,CAAC,mBAAmB,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;IACpF,MAAM,eAAe,GAAG,GAAW,EAAE;QACnC,IAAI,IAAY,CAAA;QAChB,GAAG,CAAC;YACF,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,CAAA;QACzB,CAAC,QAAQ,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAC;QAC7B,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACnB,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IACD,MAAM,UAAU,GAAG,eAAe,EAAE,CAAA;IACpC,MAAM,WAAW,GAAG,eAAe,EAAE,CAAA;IAErC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAA;IAChD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAA;IAClD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;IAClC,MAAM,aAAa,GAAG,GAAW,EAAE;QACjC,IAAI,QAAgB,CAAA;QACpB,GAAG,CAAC;YACF,sEAAsE;YACtE,yBAAyB;YACzB,QAAQ,GAAG,SAAS,CAAC,IAAI,EAAE,CAAA;QAC7B,CAAC,QAAQ,QAAQ,KAAK,WAAW,EAAC;QAClC,OAAO,QAAQ,CAAA;IACjB,CAAC,CAAA;IACD,MAAM,WAAW,GAAG,CAAC,QAA6B,EAAE,IAAY,EAAU,EAAE;QAC1E,IAAI,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,QAAQ,GAAG,aAAa,EAAE,CAAA;YAC1B,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;QAC9B,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC,CAAA;IACD,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAsB,EAAE,CACzD,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAA;IAE/E,+EAA+E;IAC/E,sEAAsE;IACtE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAA;IACvC,KAAK,MAAM,WAAW,IAAI,kBAAkB,EAAE,CAAC;QAC7C,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;YAC/C,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;IACD,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,WAAW,IAAI,KAAK,CAAA;IACjD,IAAI,SAAS,GAAsB,EAAE,CAAA;IACrC,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,SAAS,GAAG,gBAAgB,CAAA;IAC9B,CAAC;SAAM,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAChC,SAAS,GAAG,UAAU,CAAA;IACxB,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAS,SAAS,CAAC,CAAA;IAEvC,MAAM,UAAU,GAAG,CAAC,IAA4B,EAAW,EAAE;QAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;QAC3B,2EAA2E;QAC3E,6EAA6E;QAC7E,8EAA8E;QAC9E,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACnE,OAAO,KAAK,CAAA;QACd,CAAC;QACD,6EAA6E;QAC7E,0EAA0E;QAC1E,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,OAAO,KAAK,CAAA;QACd,CAAC;QACD,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC,CAAA;IAED,wEAAwE;IACxE,2EAA2E;IAC3E,yEAAyE;IACzE,MAAM,iBAAiB,GAAG,UAAU,IAAI,CAAC,SAAS,CAAA;IAClD,IAAI,YAAY,GAAkB,IAAI,CAAA;IAEtC,MAAM,cAAc,GAAY;QAC9B,cAAc,CAAC,IAAI;YACjB,IAAI,CAAC,iBAAiB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChD,OAAM;YACR,CAAC;YACD,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBAC1B,YAAY,GAAG,aAAa,EAAE,CAAA;YAChC,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAA;QAC3C,CAAC;QACD,eAAe,CAAC,IAAI;YAClB,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAM;YACR,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;YACrC,2EAA2E;YAC3E,8DAA8D;YAC9D,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtD,OAAM;YACR,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,WAAW,CAAC,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAChF,CAAC;QACD,UAAU,CAAC,IAAI;YACb,yEAAyE;YACzE,uEAAuE;YACvE,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpD,OAAM;YACR,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;YAC3B,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACpB,CAAC;YACD,MAAM,MAAM,GAAG,SAAS,CAAC,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAA;YAC3D,0EAA0E;YAC1E,wCAAwC;YACxC,IAAI,CAAC,WAAW,CACd,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CACrF,CAAA;QACH,CAAC;KACF,CAAA;IACD,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;IAEpC,6EAA6E;IAC7E,wDAAwD;IACxD,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAA;IAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IACjC,IAAI,aAAa,IAAI,CAAC,CAAC,qBAAqB,CAAC,aAAa,CAAC,EAAE,CAAC;QAC5D,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;IACrE,CAAC;IAED,MAAM,eAAe,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACzF,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAE;QACrE,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC,IAAI,CAAA;IAEP,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;QAC3C,cAAc;QACd,gBAAgB;QAChB,QAAQ;QACR,WAAW;QACX,MAAM,EAAE,UAAU;QAClB,YAAY;KACb,CAAC,CAAA;IAEF,MAAM,oBAAoB,GAAG,mBAAmB;QAC9C,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAChB,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,EACpD,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAC5B;QACH,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;IAC5B,MAAM,OAAO,GAAG,CAAC,CAAC,cAAc,CAAC,oBAAoB,EAAE;QACrD,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC;QAC3B,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC;KAC3B,CAAC,CAAA;IACF,MAAM,UAAU,GAAG,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAA;IAEhE,WAAW,CAAC,IAAI,GAAG,CAAC,GAAG,kBAAkB,EAAE,CAAC,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAA;IAC7E,WAAW,CAAC,UAAU,GAAG,EAAE,CAAA;IAC3B,WAAW,CAAC,UAAU,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC5E,OAAO,IAAI,CAAA;AACb,CAAC;AAED,8EAA8E;AAC9E,4EAA4E;AAC5E,SAAS,eAAe,CAAC,WAAgC;IACvD,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAC1C,CAAC,SAAS,EAAE,EAAE,CACZ,CAAC,CAAC,wBAAwB,CAAC,SAAS,CAAC;QACrC,CAAC,CAAC,0BAA0B,CAAC,SAAS,CAAC;QACvC,CAAC,CAAC,sBAAsB,CAAC,SAAS,CAAC,CACtC,CAAA;IACD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;IAC3E,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAChC,WAAgC;IAEhC,OAAO,WAAW;SACf,GAAG,CAAC,MAAM,CAAC;SACX,MAAM,CAAC,CAAC,SAAS,EAA8C,EAAE,CAChE,SAAS,CAAC,mBAAmB,EAAE,CAChC,CAAA;AACL,CAAC;AAED,SAAS,wBAAwB,CAAC,WAAgC;IAChE,OAAO,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAA;AACxF,CAAC;AAED,gFAAgF;AAChF,+EAA+E;AAC/E,gFAAgF;AAChF,+EAA+E;AAC/E,2EAA2E;AAC3E,gFAAgF;AAChF,2DAA2D;AAC3D,SAAS,cAAc,CAAC,IAAgC;IACtD,IAAI,KAAK,GAAa,IAAI,CAAA;IAC1B,IAAI,OAAO,GAAoB,IAAI,CAAC,UAAU,CAAA;IAC9C,OAAO,OAAO,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;QACpC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,OAAO,KAAK,UAAU,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;YAClD,OAAO,KAAK,CAAA;QACd,CAAC;QACD,KAAK,GAAG,OAAO,CAAA;QACf,OAAO,GAAG,OAAO,CAAC,UAAU,CAAA;IAC9B,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,WAAW,CAAC,QAAkB;IACrC,IAAI,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;QACzB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IACE,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,yBAAyB,EAAE,CAAC;QAChE,QAAQ,CAAC,eAAe,EAAE;QAC1B,QAAQ,CAAC,sBAAsB,EAAE;QACjC,QAAQ,CAAC,aAAa,EAAE,EACxB,CAAC;QACD,OAAO,UAAU,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,oBAAoB,CAAC,IAA4B;IACxD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAA;IAC9B,OAAO,CACL,MAAM,IAAI,IAAI;QACd,MAAM,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,CACnC,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,IAA4B;IACpD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAA;IAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAA;IACd,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IACtB,IAAI,MAAM,CAAC,sBAAsB,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACjE,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,MAAM,CAAC,kBAAkB,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QACjE,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC1F,OAAO,IAAI,CAAA;IACb,CAAC;IACD,2EAA2E;IAC3E,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAA;AACnC,CAAC;AAED,SAAS,gBAAgB,CACvB,OAAkB,EAClB,kBAAyC;IAEzC,4EAA4E;IAC5E,wDAAwD;IACxD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAS,CAAC,UAAU,CAAC,CAAC,CAAA;IAC3C,KAAK,MAAM,WAAW,IAAI,kBAAkB,EAAE,CAAC;QAC7C,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;YAC/C,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACjC,CAAC;IACH,CAAC;IACD,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QAC/B,IAAI,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACtB,CAAC;IACH,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,CAAA;AACd,CAAC;AAWD,SAAS,mBAAmB,CAAC,IAAwB;IACnD,MAAM,UAAU,GAA0C,EAAE,CAAA;IAC5D,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACnD,UAAU,CAAC,IAAI,CACb,CAAC,CAAC,YAAY,CACZ,KAAK,EACL,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,EACzB,EAAE,EACF,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAC1D,CACF,CAAA;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,CAAC,CAAC,cAAc,CAAC;gBAClC,CAAC,CAAC,mBAAmB,CACnB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAChF;aACF,CAAC,CAAA;YACF,sEAAsE;YACtE,sDAAsD;YACtD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YAC3E,CAAC;YACD,UAAU,CAAC,IAAI,CACb,CAAC,CAAC,YAAY,CACZ,KAAK,EACL,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,EACzB,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAChC,UAAU,CACX,CACF,CAAA;QACH,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACrD,UAAU,CAAC,IAAI,CACb,CAAC,CAAC,YAAY,CACZ,KAAK,EACL,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,EACzB,EAAE,EACF,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CACvF,CACF,CAAA;IACH,CAAC;IACD,6EAA6E;IAC7E,0EAA0E;IAC1E,yCAAyC;IACzC,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QAC/B,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;IAC3F,CAAC;IACD,OAAO,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAA;AACvC,CAAC"}
1
+ {"version":3,"file":"pack.js","sourceRoot":"","sources":["../../src/transforms/pack.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,6 @@
1
1
  import type { File } from '@babel/types';
2
2
  /**
3
- * Removes a function expression's name when the body does not use its binding
4
- * and NamedEvaluation restores the same `.name`. Other positions could infer no
5
- * name or a different one.
3
+ * Removes a function expression's name when its body does not reference it.
6
4
  *
7
5
  * @example
8
6
  * // ◀️ before
@@ -11,7 +9,7 @@ import type { File } from '@babel/types';
11
9
  *
12
10
  * // ▶️ after
13
11
  * var greet = function () {};
14
- * var a = function bar() {};
12
+ * var a = function () {};
15
13
  */
16
14
  export declare function removeAnonymousFunctionNames(ast: File): boolean;
17
15
  //# sourceMappingURL=remove-anonymous-function-names.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"remove-anonymous-function-names.d.ts","sourceRoot":"","sources":["../../src/transforms/remove-anonymous-function-names.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAKxC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAE/D"}
1
+ {"version":3,"file":"remove-anonymous-function-names.d.ts","sourceRoot":"","sources":["../../src/transforms/remove-anonymous-function-names.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAKxC;;;;;;;;;;;GAWG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAE/D"}
@@ -1,9 +1,6 @@
1
- import * as t from '@babel/types';
2
1
  import { traverseForChanges } from '../utils/change-tracking.js';
3
2
  /**
4
- * Removes a function expression's name when the body does not use its binding
5
- * and NamedEvaluation restores the same `.name`. Other positions could infer no
6
- * name or a different one.
3
+ * Removes a function expression's name when its body does not reference it.
7
4
  *
8
5
  * @example
9
6
  * // ◀️ before
@@ -12,7 +9,7 @@ import { traverseForChanges } from '../utils/change-tracking.js';
12
9
  *
13
10
  * // ▶️ after
14
11
  * var greet = function () {};
15
- * var a = function bar() {};
12
+ * var a = function () {};
16
13
  */
17
14
  export function removeAnonymousFunctionNames(ast) {
18
15
  return traverseForChanges(ast, visitor);
@@ -30,43 +27,8 @@ const visitor = {
30
27
  (binding.references > 0 || binding.constantViolations.length > 0)) {
31
28
  return;
32
29
  }
33
- if (inferredName(path) !== id.name) {
34
- return;
35
- }
36
30
  path.node.id = null;
37
31
  state.changed = true;
38
32
  },
39
33
  };
40
- // No inferred name means `.name` would become empty.
41
- function inferredName(path) {
42
- const node = path.node;
43
- const parentPath = path.parentPath;
44
- if (!parentPath) {
45
- return null;
46
- }
47
- const parent = parentPath.node;
48
- if (t.isVariableDeclarator(parent) && parent.init === node && t.isIdentifier(parent.id)) {
49
- return parent.id.name;
50
- }
51
- if (t.isAssignmentExpression(parent) &&
52
- parent.operator === '=' &&
53
- parent.right === node &&
54
- t.isIdentifier(parent.left)) {
55
- return parent.left.name;
56
- }
57
- if (t.isAssignmentPattern(parent) && parent.right === node && t.isIdentifier(parent.left)) {
58
- return parent.left.name;
59
- }
60
- if ((t.isObjectProperty(parent) || t.isClassProperty(parent)) &&
61
- parent.value === node &&
62
- !parent.computed) {
63
- if (t.isIdentifier(parent.key)) {
64
- return parent.key.name;
65
- }
66
- if (t.isStringLiteral(parent.key)) {
67
- return parent.key.value;
68
- }
69
- }
70
- return null;
71
- }
72
34
  //# sourceMappingURL=remove-anonymous-function-names.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remove-anonymous-function-names.js","sourceRoot":"","sources":["../../src/transforms/remove-anonymous-function-names.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAGjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAG7D;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,4BAA4B,CAAC,GAAS;IACpD,OAAO,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,OAAO,GAAyB;IACpC,kBAAkB,CAAC,IAAI,EAAE,KAAK;QAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;QACvB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAM;QACR,CAAC;QACD,0EAA0E;QAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;QAC9C,IACE,OAAO;YACP,OAAO,CAAC,UAAU,KAAK,EAAE;YACzB,CAAC,OAAO,CAAC,UAAU,GAAG,CAAC,IAAI,OAAO,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,EACjE,CAAC;YACD,OAAM;QACR,CAAC;QACD,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;YACnC,OAAM;QACR,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAA;QACnB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;IACtB,CAAC;CACF,CAAA;AAED,qDAAqD;AACrD,SAAS,YAAY,CAAC,IAAoC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IACtB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;IAClC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAA;IAC9B,IAAI,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;QACxF,OAAO,MAAM,CAAC,EAAE,CAAC,IAAI,CAAA;IACvB,CAAC;IACD,IACE,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC;QAChC,MAAM,CAAC,QAAQ,KAAK,GAAG;QACvB,MAAM,CAAC,KAAK,KAAK,IAAI;QACrB,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAC3B,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAA;IACzB,CAAC;IACD,IAAI,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1F,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAA;IACzB,CAAC;IACD,IACE,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,CAAC,KAAK,KAAK,IAAI;QACrB,CAAC,MAAM,CAAC,QAAQ,EAChB,CAAC;QACD,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAA;QACxB,CAAC;QACD,IAAI,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAA;QACzB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
1
+ {"version":3,"file":"remove-anonymous-function-names.js","sourceRoot":"","sources":["../../src/transforms/remove-anonymous-function-names.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAG7D;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,4BAA4B,CAAC,GAAS;IACpD,OAAO,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,OAAO,GAAyB;IACpC,kBAAkB,CAAC,IAAI,EAAE,KAAK;QAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;QACvB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAM;QACR,CAAC;QACD,0EAA0E;QAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;QAC9C,IACE,OAAO;YACP,OAAO,CAAC,UAAU,KAAK,EAAE;YACzB,CAAC,OAAO,CAAC,UAAU,GAAG,CAAC,IAAI,OAAO,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,EACjE,CAAC;YACD,OAAM;QACR,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAA;QACnB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;IACtB,CAAC;CACF,CAAA"}