@openrewrite/rewrite 0.29.0 → 0.30.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.
@@ -4,4 +4,7 @@ export declare function getPreviousSibling(node: ts.Node): ts.Node | null;
4
4
  export type TextSpan = [number, number];
5
5
  export declare function compareTextSpans(span1: TextSpan, span2: TextSpan): 1 | -1 | 0;
6
6
  export declare function binarySearch<T>(arr: T[], target: T, compare: (a: T, b: T) => number): number;
7
+ export declare function hasFlowAnnotation(sourceFile: ts.SourceFile): boolean;
8
+ export declare function checkSyntaxErrors(program: ts.Program, sourceFile: ts.SourceFile): [errorMsg: string, errorCode: number][];
9
+ export declare function isValidSurrogateRange(unicodeString: string): boolean;
7
10
  //# sourceMappingURL=parserUtils.d.ts.map
@@ -1 +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"}
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;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,WAQ1D;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,2CAqB/E;AAkBD,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CA8BpE"}
@@ -37,6 +37,9 @@ exports.getNextSibling = getNextSibling;
37
37
  exports.getPreviousSibling = getPreviousSibling;
38
38
  exports.compareTextSpans = compareTextSpans;
39
39
  exports.binarySearch = binarySearch;
40
+ exports.hasFlowAnnotation = hasFlowAnnotation;
41
+ exports.checkSyntaxErrors = checkSyntaxErrors;
42
+ exports.isValidSurrogateRange = isValidSurrogateRange;
40
43
  const ts = __importStar(require("typescript"));
41
44
  function getNextSibling(node) {
42
45
  const parent = node.parent;
@@ -172,4 +175,70 @@ function binarySearch(arr, target, compare) {
172
175
  }
173
176
  return ~low;
174
177
  }
178
+ function hasFlowAnnotation(sourceFile) {
179
+ if (sourceFile.fileName.endsWith('.js') || sourceFile.fileName.endsWith('.jsx')) {
180
+ const comments = sourceFile.getFullText().match(/\/\*[\s\S]*?\*\/|\/\/.*(?=[\r\n])/g);
181
+ if (comments) {
182
+ return comments.some(comment => comment.includes("@flow"));
183
+ }
184
+ }
185
+ return false;
186
+ }
187
+ function checkSyntaxErrors(program, sourceFile) {
188
+ const diagnostics = ts.getPreEmitDiagnostics(program, sourceFile);
189
+ let syntaxErrors = [];
190
+ if (diagnostics.length > 0) {
191
+ const errors = diagnostics.filter(d => (d.category === ts.DiagnosticCategory.Error) && isCriticalDiagnostic(d.code));
192
+ if (errors.length > 0) {
193
+ syntaxErrors = errors.map(e => {
194
+ let errorMsg;
195
+ if (e.file) {
196
+ let { line, character } = ts.getLineAndCharacterOfPosition(e.file, e.start);
197
+ let message = ts.flattenDiagnosticMessageText(e.messageText, "\n");
198
+ errorMsg = `(${line + 1},${character + 1}): ${message}`;
199
+ }
200
+ else {
201
+ errorMsg = ts.flattenDiagnosticMessageText(e.messageText, "\n");
202
+ }
203
+ return [errorMsg, e.code];
204
+ });
205
+ }
206
+ }
207
+ return syntaxErrors;
208
+ }
209
+ const additionalCriticalCodes = new Set([
210
+ 17019,
211
+ 17020,
212
+ ]);
213
+ const excludedCodes = new Set([1039, 1064, 1101, 1107, 1111, 1155, 1166, 1170, 1183, 1203, 1207, 1215, 1238, 1239, 1240, 1241, 1244, 1250,
214
+ 1251, 1252, 1253, 1254, 1308, 1314, 1315, 1324, 1329, 1335, 1338, 1340, 1343, 1344, 1345, 1355, 1360, 1375, 1378, 1432]);
215
+ function isCriticalDiagnostic(code) {
216
+ return (code > 1000 && code < 2000 && !excludedCodes.has(code)) || additionalCriticalCodes.has(code);
217
+ }
218
+ function isValidSurrogateRange(unicodeString) {
219
+ const matches = unicodeString.match(/(?<!\\)\\u([a-fA-F0-9]{4})/g);
220
+ if (!matches) {
221
+ return true;
222
+ }
223
+ const codes = matches.map(m => {
224
+ const codePointStr = m.slice(2);
225
+ const codePoint = parseInt(codePointStr, 16);
226
+ return codePoint;
227
+ });
228
+ const isHighSurrogate = (charCode) => charCode >= 0xD800 && charCode <= 0xDBFF;
229
+ const isLowSurrogate = (charCode) => charCode >= 0xDC00 && charCode <= 0xDFFF;
230
+ for (let i = 0; i < codes.length; i++) {
231
+ const c = codes[i];
232
+ if (isHighSurrogate(c)) {
233
+ if (i + 1 >= codes.length || !isLowSurrogate(codes[i + 1])) {
234
+ return false;
235
+ }
236
+ i++;
237
+ }
238
+ else if (isLowSurrogate(c)) {
239
+ return false;
240
+ }
241
+ }
242
+ return true;
243
+ }
175
244
  //# sourceMappingURL=parserUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parserUtils.js","sourceRoot":"","sources":["../../../src/javascript/parserUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parserUtils.js","sourceRoot":"","sources":["../../../src/javascript/parserUtils.ts"],"names":[],"mappings":"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"}
@@ -946,6 +946,15 @@ class Visitor extends __1.JavaScriptVisitor {
946
946
  instanceOf = instanceOf.withType(ctx.receiveValue(instanceOf.type, 5));
947
947
  return instanceOf;
948
948
  }
949
+ visitDeconstructionPattern(deconstructionPattern, ctx) {
950
+ deconstructionPattern = deconstructionPattern.withId(ctx.receiveValue(deconstructionPattern.id, 0));
951
+ deconstructionPattern = deconstructionPattern.withPrefix(ctx.receiveNode(deconstructionPattern.prefix, receiveSpace));
952
+ deconstructionPattern = deconstructionPattern.withMarkers(ctx.receiveNode(deconstructionPattern.markers, ctx.receiveMarkers));
953
+ deconstructionPattern = deconstructionPattern.withDeconstructor(ctx.receiveNode(deconstructionPattern.deconstructor, ctx.receiveTree));
954
+ deconstructionPattern = deconstructionPattern.padding.withNested(ctx.receiveNode(deconstructionPattern.padding.nested, receiveContainer));
955
+ deconstructionPattern = deconstructionPattern.withType(ctx.receiveValue(deconstructionPattern.type, 5));
956
+ return deconstructionPattern;
957
+ }
949
958
  visitIntersectionType(intersectionType, ctx) {
950
959
  intersectionType = intersectionType.withId(ctx.receiveValue(intersectionType.id, 0));
951
960
  intersectionType = intersectionType.withPrefix(ctx.receiveNode(intersectionType.prefix, receiveSpace));
@@ -1140,6 +1149,7 @@ class Visitor extends __1.JavaScriptVisitor {
1140
1149
  switchExpression = switchExpression.withMarkers(ctx.receiveNode(switchExpression.markers, ctx.receiveMarkers));
1141
1150
  switchExpression = switchExpression.withSelector(ctx.receiveNode(switchExpression.selector, ctx.receiveTree));
1142
1151
  switchExpression = switchExpression.withCases(ctx.receiveNode(switchExpression.cases, ctx.receiveTree));
1152
+ switchExpression = switchExpression.withType(ctx.receiveValue(switchExpression.type, 5));
1143
1153
  return switchExpression;
1144
1154
  }
1145
1155
  visitSynchronized(synchronized, ctx) {
@@ -1592,6 +1602,9 @@ class Factory {
1592
1602
  if (type === "org.openrewrite.java.tree.J$InstanceOf") {
1593
1603
  return new Java.InstanceOf(ctx.receiveValue(null, 0), ctx.receiveNode(null, receiveSpace), ctx.receiveNode(null, ctx.receiveMarkers), ctx.receiveNode(null, receiveRightPaddedTree), ctx.receiveNode(null, ctx.receiveTree), ctx.receiveNode(null, ctx.receiveTree), ctx.receiveValue(null, 5));
1594
1604
  }
1605
+ if (type === "org.openrewrite.java.tree.J$DeconstructionPattern") {
1606
+ return new Java.DeconstructionPattern(ctx.receiveValue(null, 0), ctx.receiveNode(null, receiveSpace), ctx.receiveNode(null, ctx.receiveMarkers), ctx.receiveNode(null, ctx.receiveTree), ctx.receiveNode(null, receiveContainer), ctx.receiveValue(null, 5));
1607
+ }
1595
1608
  if (type === "org.openrewrite.java.tree.J$IntersectionType") {
1596
1609
  return new Java.IntersectionType(ctx.receiveValue(null, 0), ctx.receiveNode(null, receiveSpace), ctx.receiveNode(null, ctx.receiveMarkers), ctx.receiveNode(null, receiveContainer));
1597
1610
  }
@@ -1656,7 +1669,7 @@ class Factory {
1656
1669
  return new Java.Switch(ctx.receiveValue(null, 0), ctx.receiveNode(null, receiveSpace), ctx.receiveNode(null, ctx.receiveMarkers), ctx.receiveNode(null, ctx.receiveTree), ctx.receiveNode(null, ctx.receiveTree));
1657
1670
  }
1658
1671
  if (type === "org.openrewrite.java.tree.J$SwitchExpression") {
1659
- return new Java.SwitchExpression(ctx.receiveValue(null, 0), ctx.receiveNode(null, receiveSpace), ctx.receiveNode(null, ctx.receiveMarkers), ctx.receiveNode(null, ctx.receiveTree), ctx.receiveNode(null, ctx.receiveTree));
1672
+ return new Java.SwitchExpression(ctx.receiveValue(null, 0), ctx.receiveNode(null, receiveSpace), ctx.receiveNode(null, ctx.receiveMarkers), ctx.receiveNode(null, ctx.receiveTree), ctx.receiveNode(null, ctx.receiveTree), ctx.receiveValue(null, 5));
1660
1673
  }
1661
1674
  if (type === "org.openrewrite.java.tree.J$Synchronized") {
1662
1675
  return new Java.Synchronized(ctx.receiveValue(null, 0), ctx.receiveNode(null, receiveSpace), ctx.receiveNode(null, ctx.receiveMarkers), ctx.receiveNode(null, ctx.receiveTree), ctx.receiveNode(null, ctx.receiveTree));