@nodesecure/js-x-ray 11.4.0 → 11.7.0

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 (224) hide show
  1. package/dist/AstAnalyser.d.ts +1 -1
  2. package/dist/AstAnalyser.d.ts.map +1 -1
  3. package/dist/AstAnalyser.js +7 -5
  4. package/dist/AstAnalyser.js.map +1 -1
  5. package/dist/Deobfuscator.d.ts.map +1 -1
  6. package/dist/Deobfuscator.js +8 -7
  7. package/dist/Deobfuscator.js.map +1 -1
  8. package/dist/EntryFilesAnalyser.d.ts +1 -1
  9. package/dist/EntryFilesAnalyser.d.ts.map +1 -1
  10. package/dist/EntryFilesAnalyser.js +2 -2
  11. package/dist/EntryFilesAnalyser.js.map +1 -1
  12. package/dist/NodeCounter.js +1 -1
  13. package/dist/ProbeRunner.d.ts +1 -1
  14. package/dist/ProbeRunner.d.ts.map +1 -1
  15. package/dist/ProbeRunner.js +44 -21
  16. package/dist/ProbeRunner.js.map +1 -1
  17. package/dist/SourceFile.d.ts +3 -3
  18. package/dist/SourceFile.d.ts.map +1 -1
  19. package/dist/SourceFile.js +14 -8
  20. package/dist/SourceFile.js.map +1 -1
  21. package/dist/VariableTracer.d.ts +100 -0
  22. package/dist/VariableTracer.d.ts.map +1 -0
  23. package/dist/VariableTracer.js +463 -0
  24. package/dist/VariableTracer.js.map +1 -0
  25. package/dist/contants.d.ts +2 -0
  26. package/dist/contants.d.ts.map +1 -0
  27. package/dist/contants.js +3 -0
  28. package/dist/contants.js.map +1 -0
  29. package/dist/estree/functions/arrayExpression.d.ts +15 -0
  30. package/dist/estree/functions/arrayExpression.d.ts.map +1 -0
  31. package/dist/estree/functions/arrayExpression.js +69 -0
  32. package/dist/estree/functions/arrayExpression.js.map +1 -0
  33. package/dist/estree/functions/concatBinaryExpression.d.ts +15 -0
  34. package/dist/estree/functions/concatBinaryExpression.d.ts.map +1 -0
  35. package/dist/estree/functions/concatBinaryExpression.js +46 -0
  36. package/dist/estree/functions/concatBinaryExpression.js.map +1 -0
  37. package/dist/estree/functions/extractLogicalExpression.d.ts +6 -0
  38. package/dist/estree/functions/extractLogicalExpression.d.ts.map +1 -0
  39. package/dist/estree/functions/extractLogicalExpression.js +18 -0
  40. package/dist/estree/functions/extractLogicalExpression.js.map +1 -0
  41. package/dist/estree/functions/getCallExpressionArguments.d.ts +4 -0
  42. package/dist/estree/functions/getCallExpressionArguments.d.ts.map +1 -0
  43. package/dist/estree/functions/getCallExpressionArguments.js +52 -0
  44. package/dist/estree/functions/getCallExpressionArguments.js.map +1 -0
  45. package/dist/estree/functions/getCallExpressionIdentifier.d.ts +15 -0
  46. package/dist/estree/functions/getCallExpressionIdentifier.d.ts.map +1 -0
  47. package/dist/estree/functions/getCallExpressionIdentifier.js +24 -0
  48. package/dist/estree/functions/getCallExpressionIdentifier.js.map +1 -0
  49. package/dist/estree/functions/getMemberExpressionIdentifier.d.ts +7 -0
  50. package/dist/estree/functions/getMemberExpressionIdentifier.d.ts.map +1 -0
  51. package/dist/estree/functions/getMemberExpressionIdentifier.js +63 -0
  52. package/dist/estree/functions/getMemberExpressionIdentifier.js.map +1 -0
  53. package/dist/estree/functions/getVariableDeclarationIdentifiers.d.ts +13 -0
  54. package/dist/estree/functions/getVariableDeclarationIdentifiers.d.ts.map +1 -0
  55. package/dist/estree/functions/getVariableDeclarationIdentifiers.js +123 -0
  56. package/dist/estree/functions/getVariableDeclarationIdentifiers.js.map +1 -0
  57. package/dist/estree/functions/toLiteral.d.ts.map +1 -0
  58. package/dist/estree/functions/toLiteral.js.map +1 -0
  59. package/dist/estree/index.d.ts +11 -0
  60. package/dist/estree/index.d.ts.map +1 -0
  61. package/dist/estree/index.js +11 -0
  62. package/dist/estree/index.js.map +1 -0
  63. package/dist/estree/literal.d.ts +4 -0
  64. package/dist/estree/literal.d.ts.map +1 -0
  65. package/dist/estree/literal.js +7 -0
  66. package/dist/estree/literal.js.map +1 -0
  67. package/dist/{types/estree.d.ts → estree/types.d.ts} +5 -1
  68. package/dist/estree/types.d.ts.map +1 -0
  69. package/dist/{types/estree.js → estree/types.js} +4 -1
  70. package/dist/estree/types.js.map +1 -0
  71. package/dist/i18n/arabic.d.ts +29 -0
  72. package/dist/i18n/arabic.d.ts.map +1 -0
  73. package/dist/i18n/arabic.js +28 -0
  74. package/dist/i18n/arabic.js.map +1 -0
  75. package/dist/i18n/english.d.ts +29 -0
  76. package/dist/i18n/english.d.ts.map +1 -0
  77. package/dist/i18n/english.js +28 -0
  78. package/dist/i18n/english.js.map +1 -0
  79. package/dist/i18n/french.d.ts +29 -0
  80. package/dist/i18n/french.d.ts.map +1 -0
  81. package/dist/i18n/french.js +30 -0
  82. package/dist/i18n/french.js.map +1 -0
  83. package/dist/i18n/turkish.d.ts +29 -0
  84. package/dist/i18n/turkish.d.ts.map +1 -0
  85. package/dist/i18n/turkish.js +28 -0
  86. package/dist/i18n/turkish.js.map +1 -0
  87. package/dist/index.d.ts +5 -1
  88. package/dist/index.d.ts.map +1 -1
  89. package/dist/index.js +9 -1
  90. package/dist/index.js.map +1 -1
  91. package/dist/obfuscators/freejsobfuscator.d.ts +5 -0
  92. package/dist/obfuscators/freejsobfuscator.d.ts.map +1 -1
  93. package/dist/obfuscators/freejsobfuscator.js +1 -3
  94. package/dist/obfuscators/freejsobfuscator.js.map +1 -1
  95. package/dist/{JsSourceParser.d.ts → parsers/JsSourceParser.d.ts} +8 -0
  96. package/dist/parsers/JsSourceParser.d.ts.map +1 -0
  97. package/dist/{JsSourceParser.js → parsers/JsSourceParser.js} +9 -2
  98. package/dist/parsers/JsSourceParser.js.map +1 -0
  99. package/dist/parsers/TsSourceParser.d.ts +7 -0
  100. package/dist/parsers/TsSourceParser.d.ts.map +1 -0
  101. package/dist/parsers/TsSourceParser.js +25 -0
  102. package/dist/parsers/TsSourceParser.js.map +1 -0
  103. package/dist/pipelines/deobfuscate.d.ts.map +1 -1
  104. package/dist/pipelines/deobfuscate.js +1 -2
  105. package/dist/pipelines/deobfuscate.js.map +1 -1
  106. package/dist/probes/data-exfiltration.d.ts.map +1 -1
  107. package/dist/probes/data-exfiltration.js +5 -10
  108. package/dist/probes/data-exfiltration.js.map +1 -1
  109. package/dist/probes/isESMExport.d.ts +1 -1
  110. package/dist/probes/isFetch.d.ts.map +1 -1
  111. package/dist/probes/isFetch.js +2 -2
  112. package/dist/probes/isFetch.js.map +1 -1
  113. package/dist/probes/isImportDeclaration.d.ts +1 -1
  114. package/dist/probes/isLiteral.d.ts +1 -1
  115. package/dist/probes/isLiteral.d.ts.map +1 -1
  116. package/dist/probes/isLiteral.js +2 -4
  117. package/dist/probes/isLiteral.js.map +1 -1
  118. package/dist/probes/isMonkeyPatch.d.ts +17 -0
  119. package/dist/probes/isMonkeyPatch.d.ts.map +1 -0
  120. package/dist/probes/isMonkeyPatch.js +99 -0
  121. package/dist/probes/isMonkeyPatch.js.map +1 -0
  122. package/dist/probes/isPrototypePollution.d.ts +18 -0
  123. package/dist/probes/isPrototypePollution.d.ts.map +1 -0
  124. package/dist/probes/isPrototypePollution.js +31 -0
  125. package/dist/probes/isPrototypePollution.js.map +1 -0
  126. package/dist/probes/isRandom.d.ts +15 -0
  127. package/dist/probes/isRandom.d.ts.map +1 -0
  128. package/dist/probes/isRandom.js +29 -0
  129. package/dist/probes/isRandom.js.map +1 -0
  130. package/dist/probes/isRequire/InlinedRequire.d.ts.map +1 -1
  131. package/dist/probes/isRequire/InlinedRequire.js +1 -2
  132. package/dist/probes/isRequire/InlinedRequire.js.map +1 -1
  133. package/dist/probes/isRequire/RequireCallExpressionWalker.d.ts +1 -1
  134. package/dist/probes/isRequire/RequireCallExpressionWalker.d.ts.map +1 -1
  135. package/dist/probes/isRequire/RequireCallExpressionWalker.js +4 -6
  136. package/dist/probes/isRequire/RequireCallExpressionWalker.js.map +1 -1
  137. package/dist/probes/isRequire/isRequire.d.ts.map +1 -1
  138. package/dist/probes/isRequire/isRequire.js +6 -6
  139. package/dist/probes/isRequire/isRequire.js.map +1 -1
  140. package/dist/probes/isSerializeEnv.d.ts +1 -0
  141. package/dist/probes/isSerializeEnv.d.ts.map +1 -1
  142. package/dist/probes/isSerializeEnv.js +6 -9
  143. package/dist/probes/isSerializeEnv.js.map +1 -1
  144. package/dist/probes/isSyncIO.d.ts +2 -1
  145. package/dist/probes/isSyncIO.d.ts.map +1 -1
  146. package/dist/probes/isSyncIO.js +12 -12
  147. package/dist/probes/isSyncIO.js.map +1 -1
  148. package/dist/probes/isUnsafeCallee.d.ts.map +1 -1
  149. package/dist/probes/isUnsafeCallee.js +2 -2
  150. package/dist/probes/isUnsafeCallee.js.map +1 -1
  151. package/dist/probes/isUnsafeCommand.d.ts +2 -1
  152. package/dist/probes/isUnsafeCommand.d.ts.map +1 -1
  153. package/dist/probes/isUnsafeCommand.js +8 -14
  154. package/dist/probes/isUnsafeCommand.js.map +1 -1
  155. package/dist/probes/isWeakCrypto.d.ts +2 -1
  156. package/dist/probes/isWeakCrypto.d.ts.map +1 -1
  157. package/dist/probes/isWeakCrypto.js +7 -9
  158. package/dist/probes/isWeakCrypto.js.map +1 -1
  159. package/dist/probes/log-usage.d.ts +1 -1
  160. package/dist/probes/log-usage.d.ts.map +1 -1
  161. package/dist/probes/log-usage.js +7 -13
  162. package/dist/probes/log-usage.js.map +1 -1
  163. package/dist/probes/sql-injection.d.ts +2 -2
  164. package/dist/probes/sql-injection.d.ts.map +1 -1
  165. package/dist/probes/sql-injection.js +25 -8
  166. package/dist/probes/sql-injection.js.map +1 -1
  167. package/dist/utils/extractNode.js +1 -1
  168. package/dist/utils/getSubMemberExpressionSegments.d.ts +2 -0
  169. package/dist/utils/getSubMemberExpressionSegments.d.ts.map +1 -0
  170. package/dist/utils/getSubMemberExpressionSegments.js +9 -0
  171. package/dist/utils/getSubMemberExpressionSegments.js.map +1 -0
  172. package/dist/utils/hex.d.ts +14 -0
  173. package/dist/utils/hex.d.ts.map +1 -0
  174. package/dist/utils/hex.js +44 -0
  175. package/dist/utils/hex.js.map +1 -0
  176. package/dist/utils/index.d.ts +9 -0
  177. package/dist/utils/index.d.ts.map +1 -1
  178. package/dist/utils/index.js +9 -0
  179. package/dist/utils/index.js.map +1 -1
  180. package/dist/utils/isEvilIdentifier.d.ts +3 -0
  181. package/dist/utils/isEvilIdentifier.d.ts.map +1 -0
  182. package/dist/utils/isEvilIdentifier.js +11 -0
  183. package/dist/utils/isEvilIdentifier.js.map +1 -0
  184. package/dist/utils/isOneLineExpressionExport.d.ts.map +1 -1
  185. package/dist/utils/isOneLineExpressionExport.js +2 -1
  186. package/dist/utils/isOneLineExpressionExport.js.map +1 -1
  187. package/dist/utils/isStringBase64.d.ts +8 -0
  188. package/dist/utils/isStringBase64.d.ts.map +1 -0
  189. package/dist/utils/isStringBase64.js +18 -0
  190. package/dist/utils/isStringBase64.js.map +1 -0
  191. package/dist/utils/isSvg.d.ts +7 -0
  192. package/dist/utils/isSvg.d.ts.map +1 -0
  193. package/dist/utils/isSvg.js +26 -0
  194. package/dist/utils/isSvg.js.map +1 -0
  195. package/dist/utils/makePrefixRemover.d.ts +2 -0
  196. package/dist/utils/makePrefixRemover.d.ts.map +1 -0
  197. package/dist/utils/makePrefixRemover.js +13 -0
  198. package/dist/utils/makePrefixRemover.js.map +1 -0
  199. package/dist/utils/patterns.d.ts +24 -0
  200. package/dist/utils/patterns.d.ts.map +1 -0
  201. package/dist/utils/patterns.js +77 -0
  202. package/dist/utils/patterns.js.map +1 -0
  203. package/dist/utils/stringSuspicionScore.d.ts +12 -0
  204. package/dist/utils/stringSuspicionScore.d.ts.map +1 -0
  205. package/dist/utils/stringSuspicionScore.js +53 -0
  206. package/dist/utils/stringSuspicionScore.js.map +1 -0
  207. package/dist/utils/stripNodePrefix.d.ts +2 -0
  208. package/dist/utils/stripNodePrefix.d.ts.map +1 -0
  209. package/dist/utils/stripNodePrefix.js +11 -0
  210. package/dist/utils/stripNodePrefix.js.map +1 -0
  211. package/dist/walker/walker.sync.js +1 -1
  212. package/dist/warnings.d.ts +17 -2
  213. package/dist/warnings.d.ts.map +1 -1
  214. package/dist/warnings.js +15 -0
  215. package/dist/warnings.js.map +1 -1
  216. package/package.json +8 -7
  217. package/dist/JsSourceParser.d.ts.map +0 -1
  218. package/dist/JsSourceParser.js.map +0 -1
  219. package/dist/types/estree.d.ts.map +0 -1
  220. package/dist/types/estree.js.map +0 -1
  221. package/dist/utils/toLiteral.d.ts.map +0 -1
  222. package/dist/utils/toLiteral.js.map +0 -1
  223. /package/dist/{utils → estree/functions}/toLiteral.d.ts +0 -0
  224. /package/dist/{utils → estree/functions}/toLiteral.js +0 -0
@@ -0,0 +1,69 @@
1
+ // Import Internal Dependencies
2
+ import { getMemberExpressionIdentifier } from "./getMemberExpressionIdentifier.js";
3
+ import { isCallExpression, isLiteral, isNode, noop } from "../types.js";
4
+ export function* arrayExpressionToString(node, options = {}) {
5
+ const { externalIdentifierLookup = noop, resolveCharCode = true } = options;
6
+ if (!isNode(node) || node.type !== "ArrayExpression") {
7
+ return;
8
+ }
9
+ for (const row of node.elements) {
10
+ if (row === null) {
11
+ continue;
12
+ }
13
+ switch (row.type) {
14
+ case "Literal": {
15
+ if (row.value === "") {
16
+ continue;
17
+ }
18
+ if (resolveCharCode) {
19
+ const value = Number(row.value);
20
+ yield Number.isNaN(value) ?
21
+ String(row.value) :
22
+ String.fromCharCode(value);
23
+ }
24
+ else {
25
+ yield String(row.value);
26
+ }
27
+ break;
28
+ }
29
+ case "Identifier": {
30
+ const identifier = externalIdentifierLookup(row.name);
31
+ if (identifier !== null) {
32
+ yield identifier;
33
+ }
34
+ break;
35
+ }
36
+ case "CallExpression": {
37
+ const value = joinArrayExpression(row, {
38
+ externalIdentifierLookup
39
+ });
40
+ if (value !== null) {
41
+ yield value;
42
+ }
43
+ break;
44
+ }
45
+ }
46
+ }
47
+ }
48
+ export function joinArrayExpression(node, options = {}) {
49
+ if (!isCallExpression(node)) {
50
+ return null;
51
+ }
52
+ if (node.arguments.length !== 1 ||
53
+ (node.callee.type !== "MemberExpression" ||
54
+ node.callee.object.type !== "ArrayExpression")) {
55
+ return null;
56
+ }
57
+ const id = Array.from(getMemberExpressionIdentifier(node.callee)).join(".");
58
+ if (id !== "join" ||
59
+ !isLiteral(node.arguments[0])) {
60
+ return null;
61
+ }
62
+ const separator = node.arguments[0].value;
63
+ const iter = arrayExpressionToString(node.callee.object, {
64
+ ...options,
65
+ resolveCharCode: false
66
+ });
67
+ return [...iter].join(separator);
68
+ }
69
+ //# sourceMappingURL=arrayExpression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arrayExpression.js","sourceRoot":"","sources":["../../../src/estree/functions/arrayExpression.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { ESTree } from "meriyah";
2
+ import { type DefaultOptions } from "../types.ts";
3
+ export interface ConcatBinaryExpressionOptions extends DefaultOptions {
4
+ /**
5
+ * When set to true, the function will throw an error if it encounters
6
+ * a node type that is not supported (i.e., not a Literal, BinaryExpr, ArrayExpr or Identifier).
7
+ *
8
+ * @default false
9
+ * @example
10
+ * "foo" + fn() + "bar" // <- will throw an error if `stopOnUnsupportedNode` is true
11
+ */
12
+ stopOnUnsupportedNode?: boolean;
13
+ }
14
+ export declare function concatBinaryExpression(node: ESTree.BinaryExpression, options?: ConcatBinaryExpressionOptions): IterableIterator<string>;
15
+ //# sourceMappingURL=concatBinaryExpression.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"concatBinaryExpression.d.ts","sourceRoot":"","sources":["../../../src/estree/functions/concatBinaryExpression.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAItC,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAUrB,MAAM,WAAW,6BAA8B,SAAQ,cAAc;IACnE;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,wBAAiB,sBAAsB,CACrC,IAAI,EAAE,MAAM,CAAC,gBAAgB,EAC7B,OAAO,GAAE,6BAAkC,GAC1C,gBAAgB,CAAC,MAAM,CAAC,CA4C1B"}
@@ -0,0 +1,46 @@
1
+ // Import Internal Dependencies
2
+ import { arrayExpressionToString } from "./arrayExpression.js";
3
+ import { noop } from "../types.js";
4
+ // CONSTANTS
5
+ const kBinaryExprTypes = new Set([
6
+ "Literal",
7
+ "BinaryExpression",
8
+ "ArrayExpression",
9
+ "Identifier"
10
+ ]);
11
+ export function* concatBinaryExpression(node, options = {}) {
12
+ const { externalIdentifierLookup = noop, stopOnUnsupportedNode = false } = options;
13
+ const { left, right } = node;
14
+ if (stopOnUnsupportedNode &&
15
+ (!kBinaryExprTypes.has(left.type) || !kBinaryExprTypes.has(right.type))) {
16
+ throw new Error("concatBinaryExpression:: Unsupported node detected");
17
+ }
18
+ for (const childNode of [left, right]) {
19
+ switch (childNode.type) {
20
+ case "BinaryExpression": {
21
+ yield* concatBinaryExpression(childNode, {
22
+ externalIdentifierLookup,
23
+ stopOnUnsupportedNode
24
+ });
25
+ break;
26
+ }
27
+ case "ArrayExpression": {
28
+ yield* arrayExpressionToString(childNode, { externalIdentifierLookup });
29
+ break;
30
+ }
31
+ case "Literal":
32
+ if (typeof childNode.value === "string") {
33
+ yield childNode.value;
34
+ }
35
+ break;
36
+ case "Identifier": {
37
+ const identifier = externalIdentifierLookup(childNode.name);
38
+ if (identifier) {
39
+ yield identifier;
40
+ }
41
+ break;
42
+ }
43
+ }
44
+ }
45
+ }
46
+ //# sourceMappingURL=concatBinaryExpression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"concatBinaryExpression.js","sourceRoot":"","sources":["../../../src/estree/functions/concatBinaryExpression.ts"],"names":[],"mappings":"AAGA,+BAA+B;AAC/B,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAEL,IAAI,EACL,MAAM,aAAa,CAAC;AAErB,YAAY;AACZ,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,SAAS;IACT,kBAAkB;IAClB,iBAAiB;IACjB,YAAY;CACb,CAAC,CAAC;AAcH,MAAM,SAAS,CAAC,CAAC,sBAAsB,CACrC,IAA6B,EAC7B,UAAyC,EAAE;IAE3C,MAAM,EACJ,wBAAwB,GAAG,IAAI,EAC/B,qBAAqB,GAAG,KAAK,EAC9B,GAAG,OAAO,CAAC;IACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAE7B,IACE,qBAAqB;QACrB,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EACvE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QACtC,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,KAAK,CAAC,CAAC,sBAAsB,CAAC,SAAS,EAAE;oBACvC,wBAAwB;oBACxB,qBAAqB;iBACtB,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,KAAK,CAAC,CAAC,uBAAuB,CAC5B,SAAS,EACT,EAAE,wBAAwB,EAAE,CAC7B,CAAC;gBACF,MAAM;YACR,CAAC;YACD,KAAK,SAAS;gBACZ,IAAI,OAAO,SAAS,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACxC,MAAM,SAAS,CAAC,KAAK,CAAC;gBACxB,CAAC;gBACD,MAAM;YACR,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,MAAM,UAAU,GAAG,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC5D,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,UAAU,CAAC;gBACnB,CAAC;gBACD,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { ESTree } from "meriyah";
2
+ export declare function extractLogicalExpression(node: ESTree.Node): IterableIterator<{
3
+ operator: string;
4
+ node: ESTree.Expression;
5
+ }>;
6
+ //# sourceMappingURL=extractLogicalExpression.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractLogicalExpression.d.ts","sourceRoot":"","sources":["../../../src/estree/functions/extractLogicalExpression.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,wBAAiB,wBAAwB,CACvC,IAAI,EAAE,MAAM,CAAC,IAAI,GAChB,gBAAgB,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC;CAAE,CAAC,CAkBlE"}
@@ -0,0 +1,18 @@
1
+ export function* extractLogicalExpression(node) {
2
+ if (node.type !== "LogicalExpression") {
3
+ return;
4
+ }
5
+ if (node.left.type === "LogicalExpression") {
6
+ yield* extractLogicalExpression(node.left);
7
+ }
8
+ else {
9
+ yield { operator: node.operator, node: node.left };
10
+ }
11
+ if (node.right.type === "LogicalExpression") {
12
+ yield* extractLogicalExpression(node.right);
13
+ }
14
+ else {
15
+ yield { operator: node.operator, node: node.right };
16
+ }
17
+ }
18
+ //# sourceMappingURL=extractLogicalExpression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractLogicalExpression.js","sourceRoot":"","sources":["../../../src/estree/functions/extractLogicalExpression.ts"],"names":[],"mappings":"AAGA,MAAM,SAAS,CAAC,CAAC,wBAAwB,CACvC,IAAiB;IAEjB,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QACtC,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QAC3C,KAAK,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;SACI,CAAC;QACJ,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IACrD,CAAC;IAED,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QAC5C,KAAK,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;SACI,CAAC;QACJ,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IACtD,CAAC;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { ESTree } from "meriyah";
2
+ import { type DefaultOptions } from "../types.ts";
3
+ export declare function getCallExpressionArguments(node: ESTree.Node, options?: DefaultOptions): string[] | null;
4
+ //# sourceMappingURL=getCallExpressionArguments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCallExpressionArguments.d.ts","sourceRoot":"","sources":["../../../src/estree/functions/getCallExpressionArguments.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAMtC,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAErB,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,MAAM,CAAC,IAAI,EACjB,OAAO,GAAE,cAAmB,GAC3B,MAAM,EAAE,GAAG,IAAI,CAkDjB"}
@@ -0,0 +1,52 @@
1
+ // Import Internal Dependencies
2
+ import { Hex } from "../../utils/index.js";
3
+ import { concatBinaryExpression } from "./concatBinaryExpression.js";
4
+ import { toLiteral } from "./toLiteral.js";
5
+ import { noop } from "../types.js";
6
+ export function getCallExpressionArguments(node, options = {}) {
7
+ const { externalIdentifierLookup = noop } = options;
8
+ if (
9
+ // eslint-disable-next-line no-eq-null
10
+ node == null ||
11
+ node.type !== "CallExpression" ||
12
+ node.arguments.length === 0) {
13
+ return null;
14
+ }
15
+ const literalsNode = [];
16
+ for (const arg of node.arguments) {
17
+ switch (arg.type) {
18
+ case "Identifier": {
19
+ const identifierValue = externalIdentifierLookup(arg.name);
20
+ if (identifierValue !== null) {
21
+ literalsNode.push(identifierValue);
22
+ }
23
+ break;
24
+ }
25
+ case "Literal": {
26
+ if (typeof arg.value === "string") {
27
+ literalsNode.push(hexToString(arg.value));
28
+ }
29
+ break;
30
+ }
31
+ case "TemplateLiteral": {
32
+ const literal = toLiteral(arg);
33
+ literalsNode.push(literal);
34
+ break;
35
+ }
36
+ case "BinaryExpression": {
37
+ const concatenatedBinaryExpr = [
38
+ ...concatBinaryExpression(arg, { externalIdentifierLookup })
39
+ ].join("");
40
+ if (concatenatedBinaryExpr !== "") {
41
+ literalsNode.push(concatenatedBinaryExpr);
42
+ }
43
+ break;
44
+ }
45
+ }
46
+ }
47
+ return literalsNode.length === 0 ? null : literalsNode;
48
+ }
49
+ function hexToString(value) {
50
+ return Hex.isHex(value) ? Buffer.from(value, "hex").toString() : value;
51
+ }
52
+ //# sourceMappingURL=getCallExpressionArguments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCallExpressionArguments.js","sourceRoot":"","sources":["../../../src/estree/functions/getCallExpressionArguments.ts"],"names":[],"mappings":"AAGA,+BAA+B;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAEL,IAAI,EACL,MAAM,aAAa,CAAC;AAErB,MAAM,UAAU,0BAA0B,CACxC,IAAiB,EACjB,UAA0B,EAAE;IAE5B,MAAM,EAAE,wBAAwB,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAEpD;IACE,sCAAsC;IACtC,IAAI,IAAI,IAAI;QACZ,IAAI,CAAC,IAAI,KAAK,gBAAgB;QAC9B,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAC3B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACjC,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,MAAM,eAAe,GAAG,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC3D,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;oBAC7B,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBACrC,CAAC;gBAED,MAAM;YACR,CAAC;YACD,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAClC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5C,CAAC;gBAED,MAAM;YACR,CAAC;YACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;gBAC/B,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAE3B,MAAM;YACR,CAAC;YACD,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,sBAAsB,GAAG;oBAC7B,GAAG,sBAAsB,CAAC,GAAG,EAAE,EAAE,wBAAwB,EAAE,CAAC;iBAC7D,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACX,IAAI,sBAAsB,KAAK,EAAE,EAAE,CAAC;oBAClC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBAC5C,CAAC;gBAED,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC;AACzD,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AACzE,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { ESTree } from "meriyah";
2
+ import { type DefaultOptions } from "../types.ts";
3
+ export interface GetCallExpressionIdentifierOptions extends DefaultOptions {
4
+ /**
5
+ * Resolve the CallExpression callee if it is a MemberExpression.
6
+ *
7
+ * @default true
8
+ * @example
9
+ * require('./file.js')();
10
+ ^ Second ^ First
11
+ */
12
+ resolveCallExpression?: boolean;
13
+ }
14
+ export declare function getCallExpressionIdentifier(node: ESTree.Node, options?: GetCallExpressionIdentifierOptions): string | null;
15
+ //# sourceMappingURL=getCallExpressionIdentifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCallExpressionIdentifier.d.ts","sourceRoot":"","sources":["../../../src/estree/functions/getCallExpressionIdentifier.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAItC,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,kCAAmC,SAAQ,cAAc;IACxE;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,CAAC,IAAI,EACjB,OAAO,GAAE,kCAAuC,GAC/C,MAAM,GAAG,IAAI,CAyBf"}
@@ -0,0 +1,24 @@
1
+ // Import Internal Dependencies
2
+ import { getMemberExpressionIdentifier } from "./getMemberExpressionIdentifier.js";
3
+ import { noop } from "../types.js";
4
+ export function getCallExpressionIdentifier(node, options = {}) {
5
+ if (node.type !== "CallExpression") {
6
+ return null;
7
+ }
8
+ const { externalIdentifierLookup = noop, resolveCallExpression = true } = options;
9
+ if (node.callee.type === "Identifier") {
10
+ return node.callee.name;
11
+ }
12
+ if (node.callee.type === "MemberExpression") {
13
+ const memberObject = node.callee.object;
14
+ const lastId = [
15
+ ...getMemberExpressionIdentifier(node.callee, { externalIdentifierLookup })
16
+ ].join(".");
17
+ return resolveCallExpression && memberObject.type === "CallExpression" ?
18
+ getCallExpressionIdentifier(memberObject) + `.${lastId}` :
19
+ lastId;
20
+ }
21
+ return resolveCallExpression ?
22
+ getCallExpressionIdentifier(node.callee, { externalIdentifierLookup }) : null;
23
+ }
24
+ //# sourceMappingURL=getCallExpressionIdentifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCallExpressionIdentifier.js","sourceRoot":"","sources":["../../../src/estree/functions/getCallExpressionIdentifier.ts"],"names":[],"mappings":"AAGA,+BAA+B;AAC/B,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAEL,IAAI,EACL,MAAM,aAAa,CAAC;AAcrB,MAAM,UAAU,2BAA2B,CACzC,IAAiB,EACjB,UAA8C,EAAE;IAEhD,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,EACJ,wBAAwB,GAAG,IAAI,EAC/B,qBAAqB,GAAG,IAAI,EAC7B,GAAG,OAAO,CAAC;IAEZ,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC1B,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACxC,MAAM,MAAM,GAAG;YACb,GAAG,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,wBAAwB,EAAE,CAAC;SAC5E,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEZ,OAAO,qBAAqB,IAAI,YAAY,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC;YACtE,2BAA2B,CAAC,YAAY,CAAC,GAAG,IAAI,MAAM,EAAE,CAAC,CAAC;YAC1D,MAAM,CAAC;IACX,CAAC;IAED,OAAO,qBAAqB,CAAC,CAAC;QAC5B,2BAA2B,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAClF,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { ESTree } from "meriyah";
2
+ import { type DefaultOptions } from "../types.ts";
3
+ /**
4
+ * Return the complete identifier of a MemberExpression
5
+ */
6
+ export declare function getMemberExpressionIdentifier(node: ESTree.MemberExpression, options?: DefaultOptions): IterableIterator<string>;
7
+ //# sourceMappingURL=getMemberExpressionIdentifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMemberExpressionIdentifier.d.ts","sourceRoot":"","sources":["../../../src/estree/functions/getMemberExpressionIdentifier.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAKtC,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,wBAAiB,6BAA6B,CAC5C,IAAI,EAAE,MAAM,CAAC,gBAAgB,EAC7B,OAAO,GAAE,cAAmB,GAC3B,gBAAgB,CAAC,MAAM,CAAC,CA6D1B"}
@@ -0,0 +1,63 @@
1
+ // Import Internal Dependencies
2
+ import { Hex } from "../../utils/index.js";
3
+ import { concatBinaryExpression } from "./concatBinaryExpression.js";
4
+ import { noop } from "../types.js";
5
+ /**
6
+ * Return the complete identifier of a MemberExpression
7
+ */
8
+ export function* getMemberExpressionIdentifier(node, options = {}) {
9
+ const { externalIdentifierLookup = noop } = options;
10
+ switch (node.object.type) {
11
+ // Chain with another MemberExpression
12
+ case "MemberExpression":
13
+ yield* getMemberExpressionIdentifier(node.object, options);
14
+ break;
15
+ case "Identifier":
16
+ yield node.object.name;
17
+ break;
18
+ // Literal is used when the property is computed
19
+ case "Literal":
20
+ if (typeof node.object.value === "string") {
21
+ yield node.object.value;
22
+ }
23
+ break;
24
+ }
25
+ switch (node.property.type) {
26
+ case "Identifier": {
27
+ const identifierValue = externalIdentifierLookup(node.property.name);
28
+ if (identifierValue === null) {
29
+ yield node.property.name;
30
+ }
31
+ else {
32
+ yield identifierValue;
33
+ }
34
+ break;
35
+ }
36
+ // Literal is used when the property is computed
37
+ case "Literal":
38
+ if (typeof node.property.value === "string") {
39
+ yield node.property.value;
40
+ }
41
+ break;
42
+ // foo.bar[callexpr()]
43
+ case "CallExpression": {
44
+ const args = node.property.arguments;
45
+ if (args.length > 0 &&
46
+ args[0].type === "Literal" &&
47
+ typeof args[0].value === "string" &&
48
+ Hex.isHex(args[0].value)) {
49
+ yield Buffer.from(args[0].value, "hex").toString();
50
+ }
51
+ break;
52
+ }
53
+ // foo.bar["k" + "e" + "y"]
54
+ case "BinaryExpression": {
55
+ const literal = [...concatBinaryExpression(node.property, options)].join("");
56
+ if (literal.trim() !== "") {
57
+ yield literal;
58
+ }
59
+ break;
60
+ }
61
+ }
62
+ }
63
+ //# sourceMappingURL=getMemberExpressionIdentifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMemberExpressionIdentifier.js","sourceRoot":"","sources":["../../../src/estree/functions/getMemberExpressionIdentifier.ts"],"names":[],"mappings":"AAGA,+BAA+B;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAEL,IAAI,EACL,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,SAAS,CAAC,CAAC,6BAA6B,CAC5C,IAA6B,EAC7B,UAA0B,EAAE;IAE5B,MAAM,EAAE,wBAAwB,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAEpD,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACzB,sCAAsC;QACtC,KAAK,kBAAkB;YACrB,KAAK,CAAC,CAAC,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC3D,MAAM;QACR,KAAK,YAAY;YACf,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACvB,MAAM;QACR,gDAAgD;QAChD,KAAK,SAAS;YACZ,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC1C,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YAC1B,CAAC;YACD,MAAM;IACV,CAAC;IAED,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC3B,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,eAAe,GAAG,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACrE,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3B,CAAC;iBACI,CAAC;gBACJ,MAAM,eAAe,CAAC;YACxB,CAAC;YAED,MAAM;QACR,CAAC;QACD,gDAAgD;QAChD,KAAK,SAAS;YACZ,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC5C,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC5B,CAAC;YACD,MAAM;QAER,sBAAsB;QACtB,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YACrC,IACE,IAAI,CAAC,MAAM,GAAG,CAAC;gBACf,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS;gBAC1B,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ;gBACjC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EACxB,CAAC;gBACD,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrD,CAAC;YACD,MAAM;QACR,CAAC;QAED,2BAA2B;QAC3B,KAAK,kBAAkB,CAAC,CAAC,CAAC;YACxB,MAAM,OAAO,GAAG,CAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7E,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC1B,MAAM,OAAO,CAAC;YAChB,CAAC;YACD,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { ESTree } from "meriyah";
2
+ export interface GetVariableDeclarationIdentifiersOptions {
3
+ /**
4
+ * Prefix to add to the variable name.
5
+ * @default void
6
+ */
7
+ prefix?: string;
8
+ }
9
+ export declare function getVariableDeclarationIdentifiers(node: ESTree.Node, options?: GetVariableDeclarationIdentifiersOptions): IterableIterator<{
10
+ name: string;
11
+ assignmentId: ESTree.Identifier;
12
+ }>;
13
+ //# sourceMappingURL=getVariableDeclarationIdentifiers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getVariableDeclarationIdentifiers.d.ts","sourceRoot":"","sources":["../../../src/estree/functions/getVariableDeclarationIdentifiers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,MAAM,WAAW,wCAAwC;IACvD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAiB,iCAAiC,CAChD,IAAI,EAAE,MAAM,CAAC,IAAI,EACjB,OAAO,GAAE,wCAA6C,GACrD,gBAAgB,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC;CACjC,CAAC,CAuJH"}
@@ -0,0 +1,123 @@
1
+ export function* getVariableDeclarationIdentifiers(node, options = {}) {
2
+ const { prefix = null } = options;
3
+ switch (node.type) {
4
+ case "VariableDeclaration": {
5
+ for (const variableDeclarator of node.declarations) {
6
+ yield* getVariableDeclarationIdentifiers(variableDeclarator, options);
7
+ }
8
+ break;
9
+ }
10
+ case "VariableDeclarator":
11
+ yield* getVariableDeclarationIdentifiers(node.id, options);
12
+ if (node.init !== null) {
13
+ yield* getVariableDeclarationIdentifiers(node.init, options);
14
+ }
15
+ break;
16
+ case "Identifier":
17
+ yield {
18
+ name: autoPrefix(node.name, prefix),
19
+ assignmentId: node
20
+ };
21
+ break;
22
+ case "Property": {
23
+ if (node.kind !== "init" || node.key.type !== "Identifier") {
24
+ break;
25
+ }
26
+ if (node.value.type === "ObjectPattern" ||
27
+ node.value.type === "ArrayPattern") {
28
+ yield* getVariableDeclarationIdentifiers(node.value, {
29
+ prefix: autoPrefix(node.key.name, prefix)
30
+ });
31
+ break;
32
+ }
33
+ let assignmentId = node.key;
34
+ if (node.value.type === "Identifier") {
35
+ assignmentId = node.value;
36
+ }
37
+ else if (node.value.type === "AssignmentPattern" &&
38
+ node.value.left.type === "Identifier") {
39
+ assignmentId = node.value.left;
40
+ }
41
+ yield {
42
+ name: autoPrefix(node.key.name, prefix),
43
+ assignmentId
44
+ };
45
+ break;
46
+ }
47
+ /**
48
+ * Rest syntax (in ArrayPattern or ObjectPattern for example)
49
+ * const [...foo] = []
50
+ * const {...foo} = {}
51
+ */
52
+ case "RestElement":
53
+ if (node.argument.type === "Identifier") {
54
+ yield {
55
+ name: autoPrefix(node.argument.name, prefix),
56
+ assignmentId: node.argument
57
+ };
58
+ }
59
+ break;
60
+ /**
61
+ * ({ foo: 5, bar: null })
62
+ */
63
+ case "ObjectExpression": {
64
+ for (const property of node.properties) {
65
+ yield* getVariableDeclarationIdentifiers(property, options);
66
+ }
67
+ break;
68
+ }
69
+ /**
70
+ * (foo = 5, bar = null)
71
+ */
72
+ case "SequenceExpression": {
73
+ for (const expr of node.expressions) {
74
+ yield* getVariableDeclarationIdentifiers(expr, options);
75
+ }
76
+ break;
77
+ }
78
+ /**
79
+ * (foo = 5)
80
+ */
81
+ case "AssignmentExpression":
82
+ yield* getVariableDeclarationIdentifiers(node.left, options);
83
+ break;
84
+ /**
85
+ * const [{ foo }] = []
86
+ * const [foo = 10] = []
87
+ * ↪ Destructuration + Assignement of a default value
88
+ */
89
+ case "AssignmentPattern":
90
+ if (node.left.type === "Identifier") {
91
+ yield { name: node.left.name, assignmentId: node.left };
92
+ }
93
+ else {
94
+ yield* getVariableDeclarationIdentifiers(node.left, options);
95
+ }
96
+ break;
97
+ /**
98
+ * const [foo] = [];
99
+ * ↪ Destructuration of foo is an ArrayPattern
100
+ */
101
+ case "ArrayPattern":
102
+ yield* node.elements
103
+ .filter(notNullOrUndefined)
104
+ .map((id) => [...getVariableDeclarationIdentifiers(id, options)]).flat();
105
+ break;
106
+ /**
107
+ * const {foo} = {};
108
+ * ↪ Destructuration of foo is an ObjectPattern
109
+ */
110
+ case "ObjectPattern":
111
+ yield* node.properties
112
+ .filter(notNullOrUndefined)
113
+ .map((property) => [...getVariableDeclarationIdentifiers(property, options)]).flat();
114
+ break;
115
+ }
116
+ }
117
+ function autoPrefix(name, prefix = null) {
118
+ return typeof prefix === "string" ? `${prefix}.${name}` : name;
119
+ }
120
+ function notNullOrUndefined(value) {
121
+ return value !== null && value !== void 0;
122
+ }
123
+ //# sourceMappingURL=getVariableDeclarationIdentifiers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getVariableDeclarationIdentifiers.js","sourceRoot":"","sources":["../../../src/estree/functions/getVariableDeclarationIdentifiers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toLiteral.d.ts","sourceRoot":"","sources":["../../../src/estree/functions/toLiteral.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,wBAAgB,SAAS,CACvB,eAAe,EAAE,MAAM,CAAC,eAAe,UAGxC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toLiteral.js","sourceRoot":"","sources":["../../../src/estree/functions/toLiteral.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,SAAS,CACvB,eAAuC;IAEvC,OAAO,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC/G,CAAC"}
@@ -0,0 +1,11 @@
1
+ export * from "./functions/arrayExpression.ts";
2
+ export * from "./functions/concatBinaryExpression.ts";
3
+ export * from "./functions/extractLogicalExpression.ts";
4
+ export * from "./functions/getCallExpressionArguments.ts";
5
+ export * from "./functions/getCallExpressionIdentifier.ts";
6
+ export * from "./functions/getMemberExpressionIdentifier.ts";
7
+ export * from "./functions/getVariableDeclarationIdentifiers.ts";
8
+ export * from "./functions/toLiteral.ts";
9
+ export * from "./types.ts";
10
+ export * from "./literal.ts";
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/estree/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,kDAAkD,CAAC;AACjE,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
@@ -0,0 +1,11 @@
1
+ export * from "./functions/arrayExpression.js";
2
+ export * from "./functions/concatBinaryExpression.js";
3
+ export * from "./functions/extractLogicalExpression.js";
4
+ export * from "./functions/getCallExpressionArguments.js";
5
+ export * from "./functions/getCallExpressionIdentifier.js";
6
+ export * from "./functions/getMemberExpressionIdentifier.js";
7
+ export * from "./functions/getVariableDeclarationIdentifiers.js";
8
+ export * from "./functions/toLiteral.js";
9
+ export * from "./types.js";
10
+ export * from "./literal.js";
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/estree/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,kDAAkD,CAAC;AACjE,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { ESTree } from "meriyah";
2
+ export declare function toValue(strOrLiteral: string | ESTree.Literal): string;
3
+ export declare function toRaw(strOrLiteral: string | ESTree.Literal): string | undefined;
4
+ //# sourceMappingURL=literal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"literal.d.ts","sourceRoot":"","sources":["../../src/estree/literal.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,wBAAgB,OAAO,CACrB,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,OAAO,GACpC,MAAM,CAER;AAED,wBAAgB,KAAK,CACnB,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,OAAO,GACpC,MAAM,GAAG,SAAS,CAEpB"}
@@ -0,0 +1,7 @@
1
+ export function toValue(strOrLiteral) {
2
+ return typeof strOrLiteral === "string" ? strOrLiteral : String(strOrLiteral.value);
3
+ }
4
+ export function toRaw(strOrLiteral) {
5
+ return typeof strOrLiteral === "string" ? strOrLiteral : strOrLiteral.raw;
6
+ }
7
+ //# sourceMappingURL=literal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"literal.js","sourceRoot":"","sources":["../../src/estree/literal.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,OAAO,CACrB,YAAqC;IAErC,OAAO,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AACtF,CAAC;AAED,MAAM,UAAU,KAAK,CACnB,YAAqC;IAErC,OAAO,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC;AAC5E,CAAC"}
@@ -9,4 +9,8 @@ export declare function isNode(value: unknown): value is ESTree.Node;
9
9
  export declare function isLiteral(node: unknown): node is Literal<string>;
10
10
  export declare function isTemplateLiteral(node: unknown): node is ESTree.TemplateLiteral;
11
11
  export declare function isCallExpression(node: unknown): node is ESTree.CallExpression;
12
- //# sourceMappingURL=estree.d.ts.map
12
+ export interface DefaultOptions {
13
+ externalIdentifierLookup?(name: string): string | null;
14
+ }
15
+ export declare function noop(_name: string): string | null;
16
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/estree/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,GAAG;IACxC,KAAK,EAAE,CAAC,CAAC;CACV,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,MAAM,CAAC,aAAa,GAAG;IACpD,KAAK,EAAE,CAAC,CAAC;CACV,CAAC;AAEF,wBAAgB,MAAM,CACpB,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,MAAM,CAAC,IAAI,CAOtB;AAED,wBAAgB,SAAS,CACvB,IAAI,EAAE,OAAO,GACZ,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAIzB;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,OAAO,GACZ,IAAI,IAAI,MAAM,CAAC,eAAe,CAchC;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,OAAO,GACZ,IAAI,IAAI,MAAM,CAAC,cAAc,CAE/B;AAED,MAAM,WAAW,cAAc;IAC7B,wBAAwB,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CACxD;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAEjD"}
@@ -23,4 +23,7 @@ export function isTemplateLiteral(node) {
23
23
  export function isCallExpression(node) {
24
24
  return isNode(node) && node.type === "CallExpression";
25
25
  }
26
- //# sourceMappingURL=estree.js.map
26
+ export function noop(_name) {
27
+ return null;
28
+ }
29
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/estree/types.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,MAAM,CACpB,KAAc;IAEd,OAAO,CACL,KAAK,KAAK,IAAI;QACd,OAAO,KAAK,KAAK,QAAQ;QACzB,MAAM,IAAI,KAAK;QACf,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAC/B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,IAAa;IAEb,OAAO,MAAM,CAAC,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,KAAK,SAAS;QACvB,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,IAAa;IAEb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACrC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,CACL,UAAU,CAAC,IAAI,KAAK,iBAAiB;QACrC,OAAO,UAAU,CAAC,KAAK,CAAC,GAAG,KAAK,QAAQ,CACzC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,IAAa;IAEb,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,CAAC;AACxD,CAAC;AAMD,MAAM,UAAU,IAAI,CAAC,KAAa;IAChC,OAAO,IAAI,CAAC;AACd,CAAC"}