@openrewrite/rewrite 0.18.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 (172) hide show
  1. package/CONTRIBUTING.md +22 -0
  2. package/LICENSE +201 -0
  3. package/README.md +13 -0
  4. package/dist/src/core/execution.d.ts +35 -0
  5. package/dist/src/core/execution.d.ts.map +1 -0
  6. package/dist/src/core/execution.js +65 -0
  7. package/dist/src/core/execution.js.map +1 -0
  8. package/dist/src/core/index.d.ts +6 -0
  9. package/dist/src/core/index.d.ts.map +1 -0
  10. package/dist/src/core/index.js +22 -0
  11. package/dist/src/core/index.js.map +1 -0
  12. package/dist/src/core/markers.d.ts +56 -0
  13. package/dist/src/core/markers.d.ts.map +1 -0
  14. package/dist/src/core/markers.js +140 -0
  15. package/dist/src/core/markers.js.map +1 -0
  16. package/dist/src/core/parser.d.ts +34 -0
  17. package/dist/src/core/parser.d.ts.map +1 -0
  18. package/dist/src/core/parser.js +106 -0
  19. package/dist/src/core/parser.js.map +1 -0
  20. package/dist/src/core/tree.d.ts +195 -0
  21. package/dist/src/core/tree.d.ts.map +1 -0
  22. package/dist/src/core/tree.js +455 -0
  23. package/dist/src/core/tree.js.map +1 -0
  24. package/dist/src/core/utils.d.ts +12 -0
  25. package/dist/src/core/utils.d.ts.map +1 -0
  26. package/dist/src/core/utils.js +69 -0
  27. package/dist/src/core/utils.js.map +1 -0
  28. package/dist/src/index.d.ts +2 -0
  29. package/dist/src/index.d.ts.map +1 -0
  30. package/dist/src/index.js +3 -0
  31. package/dist/src/index.js.map +1 -0
  32. package/dist/src/java/extensions.d.ts +7 -0
  33. package/dist/src/java/extensions.d.ts.map +1 -0
  34. package/dist/src/java/extensions.js +53 -0
  35. package/dist/src/java/extensions.js.map +1 -0
  36. package/dist/src/java/index.d.ts +4 -0
  37. package/dist/src/java/index.d.ts.map +1 -0
  38. package/dist/src/java/index.js +20 -0
  39. package/dist/src/java/index.js.map +1 -0
  40. package/dist/src/java/markers.d.ts +20 -0
  41. package/dist/src/java/markers.d.ts.map +1 -0
  42. package/dist/src/java/markers.js +54 -0
  43. package/dist/src/java/markers.js.map +1 -0
  44. package/dist/src/java/tree/extensions.d.ts +6 -0
  45. package/dist/src/java/tree/extensions.d.ts.map +1 -0
  46. package/dist/src/java/tree/extensions.js +36 -0
  47. package/dist/src/java/tree/extensions.js.map +1 -0
  48. package/dist/src/java/tree/index.d.ts +4 -0
  49. package/dist/src/java/tree/index.d.ts.map +1 -0
  50. package/dist/src/java/tree/index.js +20 -0
  51. package/dist/src/java/tree/index.js.map +1 -0
  52. package/dist/src/java/tree/support_types.d.ts +396 -0
  53. package/dist/src/java/tree/support_types.d.ts.map +1 -0
  54. package/dist/src/java/tree/support_types.js +450 -0
  55. package/dist/src/java/tree/support_types.js.map +1 -0
  56. package/dist/src/java/tree/tree.d.ts +3377 -0
  57. package/dist/src/java/tree/tree.d.ts.map +1 -0
  58. package/dist/src/java/tree/tree.js +4613 -0
  59. package/dist/src/java/tree/tree.js.map +1 -0
  60. package/dist/src/java/tree/types.d.ts +80 -0
  61. package/dist/src/java/tree/types.d.ts.map +1 -0
  62. package/dist/src/java/tree/types.js +138 -0
  63. package/dist/src/java/tree/types.js.map +1 -0
  64. package/dist/src/java/visitor.d.ts +82 -0
  65. package/dist/src/java/visitor.d.ts.map +1 -0
  66. package/dist/src/java/visitor.js +872 -0
  67. package/dist/src/java/visitor.js.map +1 -0
  68. package/dist/src/javascript/extensions.d.ts +12 -0
  69. package/dist/src/javascript/extensions.d.ts.map +1 -0
  70. package/dist/src/javascript/extensions.js +60 -0
  71. package/dist/src/javascript/extensions.js.map +1 -0
  72. package/dist/src/javascript/index.d.ts +6 -0
  73. package/dist/src/javascript/index.d.ts.map +1 -0
  74. package/dist/src/javascript/index.js +22 -0
  75. package/dist/src/javascript/index.js.map +1 -0
  76. package/dist/src/javascript/markers.d.ts +2 -0
  77. package/dist/src/javascript/markers.d.ts.map +1 -0
  78. package/dist/src/javascript/markers.js +3 -0
  79. package/dist/src/javascript/markers.js.map +1 -0
  80. package/dist/src/javascript/parser.d.ts +268 -0
  81. package/dist/src/javascript/parser.d.ts.map +1 -0
  82. package/dist/src/javascript/parser.js +1137 -0
  83. package/dist/src/javascript/parser.js.map +1 -0
  84. package/dist/src/javascript/parserUtils.d.ts +7 -0
  85. package/dist/src/javascript/parserUtils.d.ts.map +1 -0
  86. package/dist/src/javascript/parserUtils.js +165 -0
  87. package/dist/src/javascript/parserUtils.js.map +1 -0
  88. package/dist/src/javascript/projectParser.d.ts +25 -0
  89. package/dist/src/javascript/projectParser.d.ts.map +1 -0
  90. package/dist/src/javascript/projectParser.js +149 -0
  91. package/dist/src/javascript/projectParser.js.map +1 -0
  92. package/dist/src/javascript/projectParserMain.d.ts +3 -0
  93. package/dist/src/javascript/projectParserMain.d.ts.map +1 -0
  94. package/dist/src/javascript/projectParserMain.js +59 -0
  95. package/dist/src/javascript/projectParserMain.js.map +1 -0
  96. package/dist/src/javascript/tree/extensions.d.ts +4 -0
  97. package/dist/src/javascript/tree/extensions.d.ts.map +1 -0
  98. package/dist/src/javascript/tree/extensions.js +80 -0
  99. package/dist/src/javascript/tree/extensions.js.map +1 -0
  100. package/dist/src/javascript/tree/index.d.ts +3 -0
  101. package/dist/src/javascript/tree/index.d.ts.map +1 -0
  102. package/dist/src/javascript/tree/index.js +19 -0
  103. package/dist/src/javascript/tree/index.js.map +1 -0
  104. package/dist/src/javascript/tree/support_types.d.ts +184 -0
  105. package/dist/src/javascript/tree/support_types.d.ts.map +1 -0
  106. package/dist/src/javascript/tree/support_types.js +224 -0
  107. package/dist/src/javascript/tree/support_types.js.map +1 -0
  108. package/dist/src/javascript/tree/tree.d.ts +1173 -0
  109. package/dist/src/javascript/tree/tree.d.ts.map +1 -0
  110. package/dist/src/javascript/tree/tree.js +1590 -0
  111. package/dist/src/javascript/tree/tree.js.map +1 -0
  112. package/dist/src/javascript/typeMapping.d.ts +16 -0
  113. package/dist/src/javascript/typeMapping.d.ts.map +1 -0
  114. package/dist/src/javascript/typeMapping.js +120 -0
  115. package/dist/src/javascript/typeMapping.js.map +1 -0
  116. package/dist/src/javascript/visitor.d.ts +41 -0
  117. package/dist/src/javascript/visitor.d.ts.map +1 -0
  118. package/dist/src/javascript/visitor.js +360 -0
  119. package/dist/src/javascript/visitor.js.map +1 -0
  120. package/dist/src/json/extensions.d.ts +6 -0
  121. package/dist/src/json/extensions.d.ts.map +1 -0
  122. package/dist/src/json/extensions.js +11 -0
  123. package/dist/src/json/extensions.js.map +1 -0
  124. package/dist/src/json/index.d.ts +5 -0
  125. package/dist/src/json/index.d.ts.map +1 -0
  126. package/dist/src/json/index.js +21 -0
  127. package/dist/src/json/index.js.map +1 -0
  128. package/dist/src/json/markers.d.ts +2 -0
  129. package/dist/src/json/markers.d.ts.map +1 -0
  130. package/dist/src/json/markers.js +3 -0
  131. package/dist/src/json/markers.js.map +1 -0
  132. package/dist/src/json/support_types.d.ts +19 -0
  133. package/dist/src/json/support_types.d.ts.map +1 -0
  134. package/dist/src/json/support_types.js +47 -0
  135. package/dist/src/json/support_types.js.map +1 -0
  136. package/dist/src/json/tree.d.ts +187 -0
  137. package/dist/src/json/tree.d.ts.map +1 -0
  138. package/dist/src/json/tree.js +393 -0
  139. package/dist/src/json/tree.js.map +1 -0
  140. package/dist/src/json/visitor.d.ts +16 -0
  141. package/dist/src/json/visitor.d.ts.map +1 -0
  142. package/dist/src/json/visitor.js +83 -0
  143. package/dist/src/json/visitor.js.map +1 -0
  144. package/dist/src/yaml/index.d.ts +4 -0
  145. package/dist/src/yaml/index.d.ts.map +1 -0
  146. package/dist/src/yaml/index.js +20 -0
  147. package/dist/src/yaml/index.js.map +1 -0
  148. package/dist/src/yaml/markers.d.ts +2 -0
  149. package/dist/src/yaml/markers.d.ts.map +1 -0
  150. package/dist/src/yaml/markers.js +3 -0
  151. package/dist/src/yaml/markers.js.map +1 -0
  152. package/dist/src/yaml/tree/extensions.d.ts +2 -0
  153. package/dist/src/yaml/tree/extensions.d.ts.map +1 -0
  154. package/dist/src/yaml/tree/extensions.js +3 -0
  155. package/dist/src/yaml/tree/extensions.js.map +1 -0
  156. package/dist/src/yaml/tree/index.d.ts +3 -0
  157. package/dist/src/yaml/tree/index.d.ts.map +1 -0
  158. package/dist/src/yaml/tree/index.js +19 -0
  159. package/dist/src/yaml/tree/index.js.map +1 -0
  160. package/dist/src/yaml/tree/support_types.d.ts +37 -0
  161. package/dist/src/yaml/tree/support_types.d.ts.map +1 -0
  162. package/dist/src/yaml/tree/support_types.js +25 -0
  163. package/dist/src/yaml/tree/support_types.js.map +1 -0
  164. package/dist/src/yaml/tree/tree.d.ts +451 -0
  165. package/dist/src/yaml/tree/tree.d.ts.map +1 -0
  166. package/dist/src/yaml/tree/tree.js +551 -0
  167. package/dist/src/yaml/tree/tree.js.map +1 -0
  168. package/dist/src/yaml/visitor.d.ts +16 -0
  169. package/dist/src/yaml/visitor.d.ts.map +1 -0
  170. package/dist/src/yaml/visitor.js +64 -0
  171. package/dist/src/yaml/visitor.js.map +1 -0
  172. package/package.json +40 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/javascript/parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import * as ts from "typescript";
2
+ export declare function getNextSibling(node: ts.Node): ts.Node | null;
3
+ export declare function getPreviousSibling(node: ts.Node): ts.Node | null;
4
+ export type TextSpan = [number, number];
5
+ export declare function compareTextSpans(span1: TextSpan, span2: TextSpan): 0 | 1 | -1;
6
+ export declare function binarySearch<T>(arr: T[], target: T, compare: (a: T, b: T) => number): number;
7
+ //# sourceMappingURL=parserUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parserUtils.d.ts","sourceRoot":"","sources":["../../../src/javascript/parserUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,wBAAgB,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,IAAI,CA6D5D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,IAAI,CAyDhE;AAkBD,MAAM,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAExC,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,cAmBhE;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,UAkBnF"}
@@ -0,0 +1,165 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.getNextSibling = getNextSibling;
27
+ exports.getPreviousSibling = getPreviousSibling;
28
+ exports.compareTextSpans = compareTextSpans;
29
+ exports.binarySearch = binarySearch;
30
+ const ts = __importStar(require("typescript"));
31
+ function getNextSibling(node) {
32
+ const parent = node.parent;
33
+ if (!parent) {
34
+ return null;
35
+ }
36
+ const syntaxList = findContainingSyntaxList(node);
37
+ if (syntaxList) {
38
+ const children = syntaxList.getChildren();
39
+ const nodeIndex = children.indexOf(node);
40
+ if (nodeIndex === -1) {
41
+ throw new Error('Node not found among SyntaxList\'s children.');
42
+ }
43
+ if (nodeIndex === children.length - 1) {
44
+ const syntaxListIndex = parent.getChildren().indexOf(syntaxList);
45
+ if (parent.getChildCount() > syntaxListIndex + 1) {
46
+ return parent.getChildAt(syntaxListIndex + 1);
47
+ }
48
+ const parentNextSibling = getNextSibling(parent);
49
+ if (!parentNextSibling) {
50
+ return null;
51
+ }
52
+ const parentSyntaxList = findContainingSyntaxList(parentNextSibling);
53
+ if (parentSyntaxList) {
54
+ const siblings = parentSyntaxList.getChildren();
55
+ return siblings[0] || null;
56
+ }
57
+ else {
58
+ return parentNextSibling;
59
+ }
60
+ }
61
+ return children[nodeIndex + 1];
62
+ }
63
+ const parentChildren = parent.getChildren();
64
+ const nodeIndex = parentChildren.indexOf(node);
65
+ if (nodeIndex === -1) {
66
+ throw new Error('Node not found among parent\'s children.');
67
+ }
68
+ if (nodeIndex === parentChildren.length - 1) {
69
+ const parentNextSibling = getNextSibling(parent);
70
+ if (!parentNextSibling) {
71
+ return null;
72
+ }
73
+ return parentNextSibling.getChildCount() > 0 ? parentNextSibling.getChildAt(0) : parentNextSibling;
74
+ }
75
+ return parentChildren[nodeIndex + 1];
76
+ }
77
+ function getPreviousSibling(node) {
78
+ const parent = node.parent;
79
+ if (!parent) {
80
+ return null;
81
+ }
82
+ const syntaxList = findContainingSyntaxList(node);
83
+ if (syntaxList) {
84
+ const children = syntaxList.getChildren();
85
+ const nodeIndex = children.indexOf(node);
86
+ if (nodeIndex === -1) {
87
+ throw new Error('Node not found among SyntaxList\'s children.');
88
+ }
89
+ if (nodeIndex === 0) {
90
+ const parentPreviousSibling = getPreviousSibling(parent);
91
+ if (!parentPreviousSibling) {
92
+ return null;
93
+ }
94
+ const parentSyntaxList = findContainingSyntaxList(parentPreviousSibling);
95
+ if (parentSyntaxList) {
96
+ const siblings = parentSyntaxList.getChildren();
97
+ return siblings[siblings.length - 1] || null;
98
+ }
99
+ else {
100
+ return parentPreviousSibling;
101
+ }
102
+ }
103
+ return children[nodeIndex - 1];
104
+ }
105
+ const parentChildren = parent.getChildren();
106
+ const nodeIndex = parentChildren.indexOf(node);
107
+ if (nodeIndex === -1) {
108
+ throw new Error('Node not found among parent\'s children.');
109
+ }
110
+ if (nodeIndex === 0) {
111
+ const parentPreviousSibling = getPreviousSibling(parent);
112
+ if (!parentPreviousSibling) {
113
+ return null;
114
+ }
115
+ return parentPreviousSibling.getChildCount() > 0 ? parentPreviousSibling.getLastToken() : parentPreviousSibling;
116
+ }
117
+ return parentChildren[nodeIndex - 1];
118
+ }
119
+ function findContainingSyntaxList(node) {
120
+ const parent = node.parent;
121
+ if (!parent) {
122
+ return null;
123
+ }
124
+ const children = parent.getChildren();
125
+ for (const child of children) {
126
+ if (child.kind == ts.SyntaxKind.SyntaxList && child.getChildren().includes(node)) {
127
+ return child;
128
+ }
129
+ }
130
+ return null;
131
+ }
132
+ function compareTextSpans(span1, span2) {
133
+ if (span1[0] < span2[0]) {
134
+ return -1;
135
+ }
136
+ if (span1[0] > span2[0]) {
137
+ return 1;
138
+ }
139
+ if (span1[1] < span2[1]) {
140
+ return -1;
141
+ }
142
+ if (span1[1] > span2[1]) {
143
+ return 1;
144
+ }
145
+ return 0;
146
+ }
147
+ function binarySearch(arr, target, compare) {
148
+ let low = 0;
149
+ let high = arr.length - 1;
150
+ while (low <= high) {
151
+ const mid = Math.floor((low + high) / 2);
152
+ const comparison = compare(arr[mid], target);
153
+ if (comparison === 0) {
154
+ return mid;
155
+ }
156
+ else if (comparison < 0) {
157
+ low = mid + 1;
158
+ }
159
+ else {
160
+ high = mid - 1;
161
+ }
162
+ }
163
+ return ~low;
164
+ }
165
+ //# sourceMappingURL=parserUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parserUtils.js","sourceRoot":"","sources":["../../../src/javascript/parserUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wCA6DC;AAED,gDAyDC;AAoBD,4CAmBC;AAED,oCAkBC;AArLD,+CAAiC;AAEjC,SAAgB,cAAc,CAAC,IAAa;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAElD,IAAI,UAAU,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACpE,CAAC;QAGD,IAAI,SAAS,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACjE,IAAI,MAAM,CAAC,aAAa,EAAE,GAAG,eAAe,GAAG,CAAC,EAAE,CAAC;gBAC/C,OAAO,MAAM,CAAC,UAAU,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;YAClD,CAAC;YACD,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrB,OAAO,IAAI,CAAC;YAChB,CAAC;YAGD,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;YACrE,IAAI,gBAAgB,EAAE,CAAC;gBACnB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,EAAE,CAAC;gBAChD,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACJ,OAAO,iBAAiB,CAAC;YAC7B,CAAC;QACL,CAAC;QAGD,OAAO,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAC5C,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAChE,CAAC;IAGD,IAAI,SAAS,KAAK,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC;QAChB,CAAC;QAGD,OAAO,iBAAiB,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;IACvG,CAAC;IAGD,OAAO,cAAc,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAElD,IAAI,UAAU,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACpE,CAAC;QAGD,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YAClB,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;YACzD,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC;YAChB,CAAC;YAGD,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;YACzE,IAAI,gBAAgB,EAAE,CAAC;gBACnB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,EAAE,CAAC;gBAChD,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACJ,OAAO,qBAAqB,CAAC;YACjC,CAAC;QACL,CAAC;QAGD,OAAO,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAC5C,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAChE,CAAC;IAGD,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QAClB,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QAChB,CAAC;QAGD,OAAO,qBAAqB,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,YAAY,EAAG,CAAC,CAAC,CAAC,qBAAqB,CAAC;IACrH,CAAC;IAGD,OAAO,cAAc,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAa;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/E,OAAO,KAAsB,CAAC;QAClC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAID,SAAgB,gBAAgB,CAAC,KAAe,EAAE,KAAe;IAE7D,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IACD,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,CAAC;IACb,CAAC;IAGD,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IACD,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,CAAC;IACb,CAAC;IAGD,OAAO,CAAC,CAAC;AACb,CAAC;AAED,SAAgB,YAAY,CAAI,GAAQ,EAAE,MAAS,EAAE,OAA+B;IAChF,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,IAAI,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;IAE1B,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;QACjB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAEzC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;QAE7C,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,GAAG,CAAC;QACf,CAAC;aAAM,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACxB,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACJ,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;QACnB,CAAC;IACL,CAAC;IACD,OAAO,CAAC,GAAG,CAAC;AAChB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import * as ts from 'typescript';
2
+ export declare enum PackageManager {
3
+ Npm = "npm",
4
+ Yarn = "yarn",
5
+ Pnpm = "pnpm"
6
+ }
7
+ export declare class Subproject {
8
+ rootDir: string;
9
+ packageManager: PackageManager | undefined;
10
+ packageManagerInstalled: boolean;
11
+ dependenciesInstalled: boolean;
12
+ tsConfigPath?: string;
13
+ tsTestConfigPath?: string;
14
+ constructor(rootDir: string, packageManager?: PackageManager | undefined);
15
+ detectPackageManager(): PackageManager;
16
+ locateTsConfigs(): void;
17
+ installPackageManager(installedPackageManagers: Set<PackageManager>): void;
18
+ installDependencies(): void;
19
+ }
20
+ export declare class TypeScriptParser {
21
+ parseTsConfig(tsConfigPath: string): ts.ParsedCommandLine;
22
+ parseProject(tsConfigPath: string, oldProgram?: ts.Program): ts.Program;
23
+ }
24
+ export declare function findSubprojects(rootDir: string): string[];
25
+ //# sourceMappingURL=projectParser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectParser.d.ts","sourceRoot":"","sources":["../../../src/javascript/projectParser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAGjC,oBAAY,cAAc;IACtB,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,IAAI,SAAS;CAChB;AAED,qBAAa,UAAU;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,cAAc,GAAG,SAAS,CAAC;IAC3C,uBAAuB,EAAE,OAAO,CAAC;IACjC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;gBAEd,OAAO,EAAE,MAAM,EAAE,cAAc,GAAE,cAAc,GAAG,SAAqB;IAOnF,oBAAoB,IAAI,cAAc;IAgBtC,eAAe,IAAI,IAAI;IAgBvB,qBAAqB,CAAC,wBAAwB,EAAE,GAAG,CAAC,cAAc,CAAC,GAAG,IAAI;IAkB1E,mBAAmB,IAAI,IAAI;CAY9B;AAED,qBAAa,gBAAgB;IACzB,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,EAAE,CAAC,iBAAiB;IA0BzD,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO;CAuB1E;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAkBzD"}
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.TypeScriptParser = exports.Subproject = exports.PackageManager = void 0;
27
+ exports.findSubprojects = findSubprojects;
28
+ const fs = __importStar(require("fs"));
29
+ const path = __importStar(require("path"));
30
+ const ts = __importStar(require("typescript"));
31
+ const child_process_1 = require("child_process");
32
+ var PackageManager;
33
+ (function (PackageManager) {
34
+ PackageManager["Npm"] = "npm";
35
+ PackageManager["Yarn"] = "yarn";
36
+ PackageManager["Pnpm"] = "pnpm";
37
+ })(PackageManager || (exports.PackageManager = PackageManager = {}));
38
+ class Subproject {
39
+ constructor(rootDir, packageManager = undefined) {
40
+ this.rootDir = rootDir;
41
+ this.packageManagerInstalled = false;
42
+ this.dependenciesInstalled = false;
43
+ this.packageManager = packageManager;
44
+ }
45
+ detectPackageManager() {
46
+ if (this.packageManager)
47
+ return this.packageManager;
48
+ const hasYarnLock = fs.existsSync(path.join(this.rootDir, 'yarn.lock'));
49
+ const hasPnpmLock = fs.existsSync(path.join(this.rootDir, 'pnpm-lock.yaml'));
50
+ if (hasYarnLock) {
51
+ this.packageManager = PackageManager.Yarn;
52
+ }
53
+ else if (hasPnpmLock) {
54
+ this.packageManager = PackageManager.Pnpm;
55
+ }
56
+ else {
57
+ this.packageManager = PackageManager.Npm;
58
+ }
59
+ return this.packageManager;
60
+ }
61
+ locateTsConfigs() {
62
+ this.tsConfigPath = ts.findConfigFile(this.rootDir, ts.sys.fileExists, 'tsconfig.json');
63
+ this.tsTestConfigPath = ts.findConfigFile(this.rootDir, ts.sys.fileExists, 'tsconfig.test.json');
64
+ }
65
+ installPackageManager(installedPackageManagers) {
66
+ if (this.packageManager === PackageManager.Npm) {
67
+ this.packageManagerInstalled = true;
68
+ return;
69
+ }
70
+ if (!installedPackageManagers.has(this.packageManager)) {
71
+ console.log(`Installing package manager: ${this.packageManager} globally...`);
72
+ const result = (0, child_process_1.spawnSync)('corepack', ['enable', this.packageManager], { stdio: 'inherit' });
73
+ if (result.status !== 0) {
74
+ throw new Error(`Failed to install ${this.packageManager} globally.`);
75
+ }
76
+ installedPackageManagers.add(this.packageManager);
77
+ }
78
+ this.packageManagerInstalled = true;
79
+ }
80
+ installDependencies() {
81
+ if (this.dependenciesInstalled)
82
+ return;
83
+ console.log(`Installing dependencies for subproject at ${this.rootDir} using ${this.packageManager}...`);
84
+ let args = ['-c', `yes " " | ${this.packageManager} install`];
85
+ const result = (0, child_process_1.spawnSync)('bash', args, { cwd: this.rootDir, stdio: 'inherit' });
86
+ if (result.status !== 0) {
87
+ throw new Error(`Failed to install dependencies in ${this.rootDir} using ${this.packageManager}.`);
88
+ }
89
+ this.dependenciesInstalled = true;
90
+ }
91
+ }
92
+ exports.Subproject = Subproject;
93
+ class TypeScriptParser {
94
+ parseTsConfig(tsConfigPath) {
95
+ const configFileText = fs.readFileSync(tsConfigPath, 'utf8');
96
+ const result = ts.parseConfigFileTextToJson(tsConfigPath, configFileText);
97
+ if (result.error) {
98
+ throw new Error(`Error parsing ${tsConfigPath}: ${result.error.messageText}`);
99
+ }
100
+ const configParseResult = ts.parseJsonConfigFileContent(result.config, ts.sys, path.dirname(tsConfigPath));
101
+ if (configParseResult.errors.length > 0) {
102
+ const errors = ts.formatDiagnosticsWithColorAndContext(configParseResult.errors, {
103
+ getCurrentDirectory: ts.sys.getCurrentDirectory,
104
+ getCanonicalFileName: (fileName) => fileName,
105
+ getNewLine: () => ts.sys.newLine,
106
+ });
107
+ throw new Error(`Errors parsing ${tsConfigPath}:\n${errors}`);
108
+ }
109
+ return configParseResult;
110
+ }
111
+ parseProject(tsConfigPath, oldProgram) {
112
+ console.log(`Parsing project using ${tsConfigPath}...`);
113
+ const configParseResult = this.parseTsConfig(tsConfigPath);
114
+ const program = ts.createProgram({
115
+ rootNames: configParseResult.fileNames,
116
+ options: configParseResult.options,
117
+ projectReferences: configParseResult.projectReferences,
118
+ oldProgram: oldProgram,
119
+ });
120
+ const diagnostics = ts.getPreEmitDiagnostics(program);
121
+ if (diagnostics.length > 0) {
122
+ const formattedDiagnostics = ts.formatDiagnosticsWithColorAndContext(diagnostics, {
123
+ getCurrentDirectory: ts.sys.getCurrentDirectory,
124
+ getCanonicalFileName: (fileName) => fileName,
125
+ getNewLine: () => ts.sys.newLine,
126
+ });
127
+ console.warn(`TypeScript diagnostics for ${tsConfigPath}:\n${formattedDiagnostics}`);
128
+ }
129
+ return program;
130
+ }
131
+ }
132
+ exports.TypeScriptParser = TypeScriptParser;
133
+ function findSubprojects(rootDir) {
134
+ const subprojects = [];
135
+ function searchDirectory(directory) {
136
+ const entries = fs.readdirSync(directory, { withFileTypes: true });
137
+ if (entries.some((entry) => entry.name === 'package.json')) {
138
+ subprojects.push(directory);
139
+ }
140
+ for (const entry of entries) {
141
+ if (entry.isDirectory() && !entry.name.startsWith('.')) {
142
+ searchDirectory(path.join(directory, entry.name));
143
+ }
144
+ }
145
+ }
146
+ searchDirectory(rootDir);
147
+ return subprojects;
148
+ }
149
+ //# sourceMappingURL=projectParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectParser.js","sourceRoot":"","sources":["../../../src/javascript/projectParser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ts-node
2
+ export {};
3
+ //# sourceMappingURL=projectParserMain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectParserMain.d.ts","sourceRoot":"","sources":["../../../src/javascript/projectParserMain.ts"],"names":[],"mappings":""}
@@ -0,0 +1,59 @@
1
+ #!/usr/bin/env ts-node
2
+ "use strict";
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ const path_1 = __importDefault(require("path"));
8
+ const fs_1 = __importDefault(require("fs"));
9
+ const parser_1 = require("./parser");
10
+ const core_1 = require("../core");
11
+ const projectParser_1 = require("./projectParser");
12
+ function main() {
13
+ const args = process.argv.slice(2);
14
+ if (args.length !== 1) {
15
+ console.error('Usage: ts-node script.ts <path_to_project_root>');
16
+ process.exit(1);
17
+ }
18
+ const rootDir = path_1.default.resolve(args[0]);
19
+ if (!fs_1.default.existsSync(rootDir) || !fs_1.default.statSync(rootDir).isDirectory()) {
20
+ console.error(`Invalid directory: ${rootDir}`);
21
+ process.exit(1);
22
+ }
23
+ const subprojectPaths = (0, projectParser_1.findSubprojects)(rootDir);
24
+ console.log(`Found ${subprojectPaths.length} subproject(s).`);
25
+ const installedPackageManagers = new Set();
26
+ const tsParser = new projectParser_1.TypeScriptParser();
27
+ let detectedPackageManager = undefined;
28
+ for (const subprojectPath of subprojectPaths) {
29
+ try {
30
+ console.log(`\nProcessing subproject at ${subprojectPath}...`);
31
+ const subproject = new projectParser_1.Subproject(subprojectPath, detectedPackageManager);
32
+ detectedPackageManager = subproject.detectPackageManager();
33
+ subproject.locateTsConfigs();
34
+ subproject.installPackageManager(installedPackageManagers);
35
+ subproject.installDependencies();
36
+ let productionProgram = undefined;
37
+ const parser = parser_1.JavaScriptParser.builder().build();
38
+ const sourceFiles = [];
39
+ if (subproject.tsConfigPath) {
40
+ productionProgram = tsParser.parseProject(subproject.tsConfigPath);
41
+ sourceFiles.push(...parser.parseProgramSources(productionProgram, rootDir, new core_1.InMemoryExecutionContext()));
42
+ }
43
+ if (subproject.tsTestConfigPath) {
44
+ let testProgram = tsParser.parseProject(subproject.tsTestConfigPath, productionProgram);
45
+ sourceFiles.push(...parser.parseProgramSources(testProgram, rootDir, new core_1.InMemoryExecutionContext()));
46
+ }
47
+ console.log(`\nParsed ${sourceFiles.length} source files:`);
48
+ for (let sourceFile of sourceFiles) {
49
+ console.log(`\t${sourceFile.sourcePath}`);
50
+ }
51
+ }
52
+ catch (e) {
53
+ console.log('\nSkipping subproject.');
54
+ }
55
+ }
56
+ console.log('\nProcessing completed.');
57
+ }
58
+ main();
59
+ //# sourceMappingURL=projectParserMain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectParserMain.js","sourceRoot":"","sources":["../../../src/javascript/projectParserMain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { J, JavaType } from "../../java";
2
+ export declare function getJavaType<T extends J>(expr: T): JavaType | null;
3
+ export declare function withJavaType<T>(expr: T, type: JavaType): T;
4
+ //# sourceMappingURL=extensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../../../src/javascript/tree/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAE,QAAQ,EAAC,MAAM,YAAY,CAAC;AAKvC,wBAAgB,WAAW,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,QAAQ,GAAG,IAAI,CAiBjE;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,GAAG,CAAC,CAiB1D"}