@openrewrite/rewrite 8.91.2 → 8.91.3

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 (124) hide show
  1. package/dist/execution.d.ts +8 -0
  2. package/dist/execution.d.ts.map +1 -1
  3. package/dist/execution.js +31 -0
  4. package/dist/execution.js.map +1 -1
  5. package/dist/javascript/add-import.d.ts +64 -9
  6. package/dist/javascript/add-import.d.ts.map +1 -1
  7. package/dist/javascript/add-import.js +398 -71
  8. package/dist/javascript/add-import.js.map +1 -1
  9. package/dist/javascript/amd.d.ts +11 -1
  10. package/dist/javascript/amd.d.ts.map +1 -1
  11. package/dist/javascript/amd.js +43 -9
  12. package/dist/javascript/amd.js.map +1 -1
  13. package/dist/javascript/binding.d.ts +10 -2
  14. package/dist/javascript/binding.d.ts.map +1 -1
  15. package/dist/javascript/binding.js +44 -71
  16. package/dist/javascript/binding.js.map +1 -1
  17. package/dist/javascript/comparator.d.ts +2 -0
  18. package/dist/javascript/comparator.d.ts.map +1 -1
  19. package/dist/javascript/comparator.js +5 -1
  20. package/dist/javascript/comparator.js.map +1 -1
  21. package/dist/javascript/format/format.d.ts +5 -2
  22. package/dist/javascript/format/format.d.ts.map +1 -1
  23. package/dist/javascript/format/format.js +51 -11
  24. package/dist/javascript/format/format.js.map +1 -1
  25. package/dist/javascript/format/minimum-viable-spacing-visitor.d.ts +19 -0
  26. package/dist/javascript/format/minimum-viable-spacing-visitor.d.ts.map +1 -1
  27. package/dist/javascript/format/minimum-viable-spacing-visitor.js +180 -7
  28. package/dist/javascript/format/minimum-viable-spacing-visitor.js.map +1 -1
  29. package/dist/javascript/format/prettier-format.d.ts +2 -1
  30. package/dist/javascript/format/prettier-format.d.ts.map +1 -1
  31. package/dist/javascript/format/prettier-format.js +33 -23
  32. package/dist/javascript/format/prettier-format.js.map +1 -1
  33. package/dist/javascript/index.d.ts +3 -3
  34. package/dist/javascript/index.d.ts.map +1 -1
  35. package/dist/javascript/index.js +21 -1
  36. package/dist/javascript/index.js.map +1 -1
  37. package/dist/javascript/parser-utils.d.ts.map +1 -1
  38. package/dist/javascript/parser-utils.js +5 -9
  39. package/dist/javascript/parser-utils.js.map +1 -1
  40. package/dist/javascript/parser.d.ts.map +1 -1
  41. package/dist/javascript/parser.js +48 -3
  42. package/dist/javascript/parser.js.map +1 -1
  43. package/dist/javascript/print.d.ts +1 -0
  44. package/dist/javascript/print.d.ts.map +1 -1
  45. package/dist/javascript/print.js +9 -0
  46. package/dist/javascript/print.js.map +1 -1
  47. package/dist/javascript/recipes/change-import.d.ts +6 -3
  48. package/dist/javascript/recipes/change-import.d.ts.map +1 -1
  49. package/dist/javascript/recipes/change-import.js +17 -277
  50. package/dist/javascript/recipes/change-import.js.map +1 -1
  51. package/dist/javascript/rpc.js +2 -0
  52. package/dist/javascript/rpc.js.map +1 -1
  53. package/dist/javascript/scope.d.ts +40 -7
  54. package/dist/javascript/scope.d.ts.map +1 -1
  55. package/dist/javascript/scope.js +182 -30
  56. package/dist/javascript/scope.js.map +1 -1
  57. package/dist/javascript/templating/bindings.js +2 -20
  58. package/dist/javascript/templating/bindings.js.map +1 -1
  59. package/dist/javascript/templating/comparator.d.ts +2 -0
  60. package/dist/javascript/templating/comparator.d.ts.map +1 -1
  61. package/dist/javascript/templating/comparator.js +25 -0
  62. package/dist/javascript/templating/comparator.js.map +1 -1
  63. package/dist/javascript/templating/engine.d.ts +5 -0
  64. package/dist/javascript/templating/engine.d.ts.map +1 -1
  65. package/dist/javascript/templating/engine.js +30 -12
  66. package/dist/javascript/templating/engine.js.map +1 -1
  67. package/dist/javascript/templating/template.d.ts.map +1 -1
  68. package/dist/javascript/templating/template.js +6 -0
  69. package/dist/javascript/templating/template.js.map +1 -1
  70. package/dist/javascript/templating/types.d.ts +5 -0
  71. package/dist/javascript/templating/types.d.ts.map +1 -1
  72. package/dist/javascript/tree.d.ts +1 -0
  73. package/dist/javascript/tree.d.ts.map +1 -1
  74. package/dist/javascript/tree.js.map +1 -1
  75. package/dist/javascript/type-mapping.d.ts.map +1 -1
  76. package/dist/javascript/type-mapping.js +14 -0
  77. package/dist/javascript/type-mapping.js.map +1 -1
  78. package/dist/javascript/visitor.d.ts.map +1 -1
  79. package/dist/javascript/visitor.js +1 -0
  80. package/dist/javascript/visitor.js.map +1 -1
  81. package/dist/parser.d.ts +6 -0
  82. package/dist/parser.d.ts.map +1 -1
  83. package/dist/parser.js +23 -1
  84. package/dist/parser.js.map +1 -1
  85. package/dist/print.d.ts.map +1 -1
  86. package/dist/print.js +5 -2
  87. package/dist/print.js.map +1 -1
  88. package/dist/rewrite-javascript-version.txt +1 -1
  89. package/dist/rpc/request/parse-project.d.ts +11 -1
  90. package/dist/rpc/request/parse-project.d.ts.map +1 -1
  91. package/dist/rpc/request/parse-project.js +7 -2
  92. package/dist/rpc/request/parse-project.js.map +1 -1
  93. package/dist/rpc/request/parse.d.ts +13 -1
  94. package/dist/rpc/request/parse.d.ts.map +1 -1
  95. package/dist/rpc/request/parse.js +8 -2
  96. package/dist/rpc/request/parse.js.map +1 -1
  97. package/package.json +1 -1
  98. package/src/execution.ts +23 -0
  99. package/src/javascript/add-import.ts +449 -78
  100. package/src/javascript/amd.ts +49 -10
  101. package/src/javascript/binding.ts +60 -74
  102. package/src/javascript/comparator.ts +6 -1
  103. package/src/javascript/format/format.ts +56 -12
  104. package/src/javascript/format/minimum-viable-spacing-visitor.ts +196 -7
  105. package/src/javascript/format/prettier-format.ts +35 -25
  106. package/src/javascript/index.ts +10 -3
  107. package/src/javascript/parser-utils.ts +5 -11
  108. package/src/javascript/parser.ts +65 -6
  109. package/src/javascript/print.ts +10 -0
  110. package/src/javascript/recipes/change-import.ts +19 -349
  111. package/src/javascript/rpc.ts +2 -0
  112. package/src/javascript/scope.ts +210 -31
  113. package/src/javascript/templating/bindings.ts +2 -25
  114. package/src/javascript/templating/comparator.ts +29 -2
  115. package/src/javascript/templating/engine.ts +41 -14
  116. package/src/javascript/templating/template.ts +6 -0
  117. package/src/javascript/templating/types.ts +6 -0
  118. package/src/javascript/tree.ts +1 -0
  119. package/src/javascript/type-mapping.ts +15 -0
  120. package/src/javascript/visitor.ts +1 -0
  121. package/src/parser.ts +24 -1
  122. package/src/print.ts +5 -2
  123. package/src/rpc/request/parse-project.ts +6 -2
  124. package/src/rpc/request/parse.ts +7 -2
@@ -82,9 +82,10 @@ class MinimumViableSpacingVisitor extends visitor_1.JavaScriptVisitor {
82
82
  // Note: typeParameters should NOT have space before them - they immediately follow the class name
83
83
  // e.g., "class DataTable<Row>" not "class DataTable <Row>"
84
84
  // Note: body.prefix spacing (space before '{') is handled by SpacesVisitor, not here.
85
- if (c.extends && c.extends.before.whitespace === "") {
85
+ if (c.extends) {
86
86
  c = (0, mutative_1.create)(c, draft => {
87
87
  this.ensureSpace(draft.extends.before);
88
+ this.ensureSpace(draft.extends.element.prefix);
88
89
  });
89
90
  }
90
91
  if (c.implements && c.implements.before.whitespace === "") {
@@ -142,10 +143,9 @@ class MinimumViableSpacingVisitor extends visitor_1.JavaScriptVisitor {
142
143
  async visitNewClass(newClass, p) {
143
144
  const ret = await super.visitNewClass(newClass, p);
144
145
  return (0, mutative_1.create)(ret, draft => {
145
- if (draft.class) {
146
- if (draft.class.kind == java_1.J.Kind.Identifier) {
147
- this.ensureSpace(draft.class.prefix);
148
- }
146
+ // a parenthesized class expression separates itself from `new`
147
+ if (draft.class && draft.class.kind !== java_1.J.Kind.Parentheses) {
148
+ this.ensureSpace(draft.class.prefix);
149
149
  }
150
150
  });
151
151
  }
@@ -208,16 +208,189 @@ class MinimumViableSpacingVisitor extends visitor_1.JavaScriptVisitor {
208
208
  }
209
209
  return ret;
210
210
  }
211
+ async visitAlias(alias, p) {
212
+ const ret = await super.visitAlias(alias, p);
213
+ return (0, mutative_1.create)(ret, draft => {
214
+ this.ensureSpace(draft.propertyName.after);
215
+ this.ensureSpace(draft.alias.prefix);
216
+ });
217
+ }
218
+ async visitAs(as_, p) {
219
+ const ret = await super.visitAs(as_, p);
220
+ return (0, mutative_1.create)(ret, draft => {
221
+ this.ensureSpace(draft.left.after);
222
+ this.ensureSpace(draft.right.prefix);
223
+ });
224
+ }
225
+ async visitBinaryExtensions(jsBinary, p) {
226
+ const ret = await super.visitBinaryExtensions(jsBinary, p);
227
+ // `in` is the only word operator here; the rest are punctuators that need no separation
228
+ if (ret.operator.element !== tree_2.JS.Binary.Type.In) {
229
+ return ret;
230
+ }
231
+ return (0, mutative_1.create)(ret, draft => {
232
+ this.ensureSpace(draft.operator.before);
233
+ this.ensureSpace(draft.right.prefix);
234
+ });
235
+ }
236
+ async visitBreak(breakNode, p) {
237
+ const ret = await super.visitBreak(breakNode, p);
238
+ return ret.label ? (0, mutative_1.create)(ret, draft => {
239
+ this.ensureSpace(draft.label.prefix);
240
+ }) : ret;
241
+ }
211
242
  async visitCase(caseNode, p) {
212
- const c = await super.visitCase(caseNode, p);
243
+ var _a;
244
+ let c = await super.visitCase(caseNode, p);
245
+ // `default` prints without the `case` keyword, so its label needs no separator
246
+ const first = (_a = c.caseLabels.elements[0]) === null || _a === void 0 ? void 0 : _a.element;
247
+ if (first && (first.kind !== java_1.J.Kind.Identifier || first.simpleName !== "default")) {
248
+ c = (0, mutative_1.create)(c, draft => {
249
+ this.ensureSpace(draft.caseLabels.before);
250
+ });
251
+ }
213
252
  if (c.guard && c.caseLabels.elements.length > 0 && c.caseLabels.elements[c.caseLabels.elements.length - 1].after.whitespace === "") {
214
- return (0, mutative_1.create)(c, draft => {
253
+ c = (0, mutative_1.create)(c, draft => {
215
254
  const last = draft.caseLabels.elements.length - 1;
216
255
  draft.caseLabels.elements[last].after.whitespace = " ";
217
256
  });
218
257
  }
219
258
  return c;
220
259
  }
260
+ async visitContinue(continueNode, p) {
261
+ const ret = await super.visitContinue(continueNode, p);
262
+ return ret.label ? (0, mutative_1.create)(ret, draft => {
263
+ this.ensureSpace(draft.label.prefix);
264
+ }) : ret;
265
+ }
266
+ async visitDelete(delete_, p) {
267
+ const ret = await super.visitDelete(delete_, p);
268
+ return (0, mutative_1.create)(ret, draft => {
269
+ this.ensureSpace(draft.expression.prefix);
270
+ });
271
+ }
272
+ async visitExportAssignment(exportAssignment, p) {
273
+ const ret = await super.visitExportAssignment(exportAssignment, p);
274
+ if (ret.exportEquals) {
275
+ return ret;
276
+ }
277
+ return (0, mutative_1.create)(ret, draft => {
278
+ this.ensureSpace(draft.expression.before);
279
+ this.ensureSpace(draft.expression.element.prefix);
280
+ });
281
+ }
282
+ async visitExportDeclaration(exportDeclaration, p) {
283
+ const ret = await super.visitExportDeclaration(exportDeclaration, p);
284
+ return (0, mutative_1.create)(ret, draft => {
285
+ var _a;
286
+ if (draft.typeOnly.element) {
287
+ this.ensureSpace(draft.typeOnly.before);
288
+ }
289
+ // a namespace re-export ends its clause with the alias, unlike `}` or a bare `*`
290
+ if (draft.moduleSpecifier && ((_a = draft.exportClause) === null || _a === void 0 ? void 0 : _a.kind) === tree_2.JS.Kind.Alias) {
291
+ this.ensureSpace(draft.moduleSpecifier.before);
292
+ }
293
+ });
294
+ }
295
+ async visitForInLoop(forInLoop, p) {
296
+ const ret = await super.visitForInLoop(forInLoop, p);
297
+ return (0, mutative_1.create)(ret, draft => {
298
+ this.ensureSpace(draft.control.variable.after);
299
+ this.ensureSpace(draft.control.iterable.element.prefix);
300
+ });
301
+ }
302
+ async visitForOfLoop(forOfLoop, p) {
303
+ const ret = await super.visitForOfLoop(forOfLoop, p);
304
+ return (0, mutative_1.create)(ret, draft => {
305
+ this.ensureSpace(draft.loop.control.variable.after);
306
+ this.ensureSpace(draft.loop.control.iterable.element.prefix);
307
+ });
308
+ }
309
+ async visitImportClause(importClause, p) {
310
+ const ret = await super.visitImportClause(importClause, p);
311
+ return (0, mutative_1.create)(ret, draft => {
312
+ // named bindings open with a punctuator, which separates itself from `import` and `type`
313
+ if (draft.typeOnly || draft.name) {
314
+ this.ensureSpace(draft.prefix);
315
+ }
316
+ if (draft.typeOnly && draft.name) {
317
+ this.ensureSpace(draft.name.element.prefix);
318
+ }
319
+ });
320
+ }
321
+ async visitImportDeclaration(jsImport, p) {
322
+ var _a;
323
+ const ret = await super.visitImportDeclaration(jsImport, p);
324
+ // `from` prints only with a clause, and not at all in the `= require(...)` form; `}` separates
325
+ // named imports from it, and the specifier after it is always a string literal
326
+ const bindings = (_a = ret.importClause) === null || _a === void 0 ? void 0 : _a.namedBindings;
327
+ if (!ret.importClause || !ret.moduleSpecifier || (bindings === null || bindings === void 0 ? void 0 : bindings.kind) === tree_2.JS.Kind.NamedImports) {
328
+ return ret;
329
+ }
330
+ return (0, mutative_1.create)(ret, draft => {
331
+ this.ensureSpace(draft.moduleSpecifier.before);
332
+ });
333
+ }
334
+ async visitInstanceOf(instanceOf, p) {
335
+ const ret = await super.visitInstanceOf(instanceOf, p);
336
+ return (0, mutative_1.create)(ret, draft => {
337
+ this.ensureSpace(draft.expression.after);
338
+ this.ensureSpace(draft.class.prefix);
339
+ });
340
+ }
341
+ async visitSatisfiesExpression(satisfies, p) {
342
+ const ret = await super.visitSatisfiesExpression(satisfies, p);
343
+ return (0, mutative_1.create)(ret, draft => {
344
+ this.ensureSpace(draft.satisfiesType.before);
345
+ this.ensureSpace(draft.satisfiesType.element.prefix);
346
+ });
347
+ }
348
+ async visitScopedVariableDeclarations(scoped, p) {
349
+ const ret = await super.visitScopedVariableDeclarations(scoped, p);
350
+ if (ret.modifiers.length === 0 || ret.variables.length === 0) {
351
+ return ret;
352
+ }
353
+ return (0, mutative_1.create)(ret, draft => {
354
+ for (let i = 1; i < draft.modifiers.length; i++) {
355
+ this.ensureSpace(draft.modifiers[i].prefix);
356
+ }
357
+ this.ensureSpace(draft.variables[0].element.prefix);
358
+ });
359
+ }
360
+ async visitTypeOperator(typeOperator, p) {
361
+ const ret = await super.visitTypeOperator(typeOperator, p);
362
+ return (0, mutative_1.create)(ret, draft => {
363
+ this.ensureSpace(draft.expression.before);
364
+ });
365
+ }
366
+ async visitTypePredicate(typePredicate, p) {
367
+ const ret = await super.visitTypePredicate(typePredicate, p);
368
+ return (0, mutative_1.create)(ret, draft => {
369
+ if (draft.asserts.element) {
370
+ this.ensureSpace(draft.parameterName.prefix);
371
+ }
372
+ if (draft.expression) {
373
+ this.ensureSpace(draft.expression.before);
374
+ this.ensureSpace(draft.expression.element.prefix);
375
+ }
376
+ });
377
+ }
378
+ async visitVoid(void_, p) {
379
+ const ret = await super.visitVoid(void_, p);
380
+ return (0, mutative_1.create)(ret, draft => {
381
+ this.ensureSpace(draft.expression.prefix);
382
+ });
383
+ }
384
+ async visitYield(aYield, p) {
385
+ const ret = await super.visitYield(aYield, p);
386
+ // `yield*` separates itself from the value
387
+ if (!ret.value || (0, markers_1.findMarker)(ret, tree_2.JS.Markers.DelegatedYield)) {
388
+ return ret;
389
+ }
390
+ return (0, mutative_1.create)(ret, draft => {
391
+ this.ensureSpace(draft.value.prefix);
392
+ });
393
+ }
221
394
  ensureSpace(spaceDraft) {
222
395
  if (spaceDraft.whitespace.length === 0 && spaceDraft.comments.length === 0) {
223
396
  spaceDraft.whitespace = " ";
@@ -1 +1 @@
1
- {"version":3,"file":"minimum-viable-spacing-visitor.js","sourceRoot":"","sources":["../../../src/javascript/format/minimum-viable-spacing-visitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"minimum-viable-spacing-visitor.js","sourceRoot":"","sources":["../../../src/javascript/format/minimum-viable-spacing-visitor.ts"],"names":[],"mappings":"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"}
@@ -105,7 +105,8 @@ export declare function getPrettierStyle(tree: Tree, cursor?: Cursor, styles?: N
105
105
  * @param p The visitor parameter
106
106
  * @param cursor Optional cursor for subtree formatting
107
107
  * @param stopAfter Optional tree to stop after
108
- * @returns The formatted tree
108
+ * @returns The formatted tree, or `undefined` where Prettier's result cannot be carried back,
109
+ * leaving the caller to lay the tree out itself
109
110
  */
110
111
  export declare function applyPrettierFormatting<R extends J, P>(tree: R, prettierStyle: PrettierStyle, p: P, cursor?: Cursor, stopAfter?: Tree): Promise<R | undefined>;
111
112
  //# sourceMappingURL=prettier-format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prettier-format.d.ts","sourceRoot":"","sources":["../../../src/javascript/format/prettier-format.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,EAAE,EAAC,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAC,CAAC,EAAY,MAAM,YAAY,CAAC;AACxC,OAAO,EAAC,MAAM,EAAE,IAAI,EAAC,MAAM,YAAY,CAAC;AAKxC,OAAO,EAAC,aAAa,EAAY,MAAM,UAAU,CAAC;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,aAAa,CAAC;AA0BxC;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAEvC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;IAErD;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAChC,UAAU,EAAE,EAAE,CAAC,eAAe,EAC9B,OAAO,GAAE,qBAA0B,EACnC,SAAS,CAAC,EAAE,CAAC,GACd,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,CA0D7B;AA2QD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,qBAAqB,CAAC,CAAC,SAAS,CAAC,EACnD,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,qBAA0B,EACnC,SAAS,CAAC,EAAE,CAAC,GACd,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CA2BxB;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,IAAI,EACV,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,GAC/B,aAAa,GAAG,SAAS,CA+B3B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,uBAAuB,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EACxD,IAAI,EAAE,CAAC,EACP,aAAa,EAAE,aAAa,EAC5B,CAAC,EAAE,CAAC,EACJ,MAAM,CAAC,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,IAAI,GACjB,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAsDxB"}
1
+ {"version":3,"file":"prettier-format.d.ts","sourceRoot":"","sources":["../../../src/javascript/format/prettier-format.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,EAAE,EAAC,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAC,CAAC,EAAY,MAAM,YAAY,CAAC;AACxC,OAAO,EAAC,MAAM,EAAE,IAAI,EAAC,MAAM,YAAY,CAAC;AAKxC,OAAO,EAAC,aAAa,EAAY,MAAM,UAAU,CAAC;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,aAAa,CAAC;AA0BxC;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAEvC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;IAErD;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAChC,UAAU,EAAE,EAAE,CAAC,eAAe,EAC9B,OAAO,GAAE,qBAA0B,EACnC,SAAS,CAAC,EAAE,CAAC,GACd,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,CA0D7B;AAoRD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,qBAAqB,CAAC,CAAC,SAAS,CAAC,EACnD,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,qBAA0B,EACnC,SAAS,CAAC,EAAE,CAAC,GACd,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAsCxB;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,IAAI,EACV,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,GAC/B,aAAa,GAAG,SAAS,CA+B3B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,uBAAuB,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EACxD,IAAI,EAAE,CAAC,EACP,aAAa,EAAE,aAAa,EAC5B,CAAC,EAAE,CAAC,EACJ,MAAM,CAAC,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,IAAI,GACjB,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CA2CxB"}
@@ -254,6 +254,14 @@ function pruneNode(node, path, pathIndex, target) {
254
254
  if (value == null) {
255
255
  return node;
256
256
  }
257
+ // A compilation unit's statements are laid out at column 0, so nothing beside the target bears
258
+ // on how Prettier lays it out and the printed program can be the target alone.
259
+ if (node.kind === tree_1.JS.Kind.CompilationUnit && segment.property === 'statements' && segment.index !== undefined) {
260
+ const statements = value;
261
+ return (0, util_1.updateIfChanged)(node, {
262
+ statements: [pruneNode(statements[segment.index], path, pathIndex + 1, target)]
263
+ });
264
+ }
257
265
  // Handle J.Block#statements specially - prune siblings
258
266
  if (node.kind === java_1.J.Kind.Block && segment.property === 'statements' && segment.index !== undefined) {
259
267
  const statements = value;
@@ -320,10 +328,10 @@ function findByPath(tree, path) {
320
328
  if (value == null)
321
329
  return undefined;
322
330
  if (Array.isArray(value) && segment.index !== undefined) {
323
- // For block statements, target is always at the last index
324
- // since following siblings are omitted during pruning
325
- const isBlockStatements = current.kind === java_1.J.Kind.Block && segment.property === 'statements';
326
- const index = isBlockStatements ? value.length - 1 : segment.index;
331
+ // In pruned statement lists the target is last, following siblings having been omitted
332
+ const isPrunedStatements = segment.property === 'statements' &&
333
+ (current.kind === java_1.J.Kind.Block || current.kind === tree_1.JS.Kind.CompilationUnit);
334
+ const index = isPrunedStatements ? value.length - 1 : segment.index;
327
335
  const item = value[index];
328
336
  if (item == null)
329
337
  return undefined;
@@ -357,6 +365,11 @@ async function prettierFormatSubtree(target, cursor, options = {}, stopAfter) {
357
365
  if (!cu) {
358
366
  return undefined;
359
367
  }
368
+ // Whatever stands between a statement and the top of its file is the file's business, so a whole
369
+ // statement keeps the prefix it came with. Prettier sees it, for the directives — a leading
370
+ // `prettier-ignore` — that a statement's own layout answers to.
371
+ const wholeStatement = path.length === 2 && path[0].property === 'statements' &&
372
+ path[0].index !== undefined && path[1].property === 'element';
360
373
  // Prune the tree for efficient formatting and substitute the (potentially modified) target.
361
374
  // This ensures that if the visitor modified the target before calling autoFormat,
362
375
  // we format the modified content, not the original from the cursor.
@@ -371,7 +384,12 @@ async function prettierFormatSubtree(target, cursor, options = {}, stopAfter) {
371
384
  // Reconcile only the target subtree, optionally stopping after a specific node
372
385
  const reconciler = new whitespace_reconciler_1.WhitespaceReconciler();
373
386
  const reconciled = reconciler.reconcile(target, formattedTarget, undefined, stopAfter);
374
- return reconciled;
387
+ // The walk that carries whitespace back pairs the two trees node for node, which a change to
388
+ // the code itself — Prettier dropping redundant parentheses, say — makes impossible
389
+ if (!reconciler.isCompatible()) {
390
+ return undefined;
391
+ }
392
+ return (wholeStatement ? Object.assign(Object.assign({}, reconciled), { prefix: target.prefix }) : reconciled);
375
393
  }
376
394
  /**
377
395
  * Gets the PrettierStyle from the styles array or source file markers.
@@ -425,7 +443,8 @@ function getPrettierStyle(tree, cursor, styles) {
425
443
  * @param p The visitor parameter
426
444
  * @param cursor Optional cursor for subtree formatting
427
445
  * @param stopAfter Optional tree to stop after
428
- * @returns The formatted tree
446
+ * @returns The formatted tree, or `undefined` where Prettier's result cannot be carried back,
447
+ * leaving the caller to lay the tree out itself
429
448
  */
430
449
  async function applyPrettierFormatting(tree, prettierStyle, p, cursor, stopAfter) {
431
450
  // Run only the essential visitors first
@@ -447,30 +466,21 @@ async function applyPrettierFormatting(tree, prettierStyle, p, cursor, stopAfter
447
466
  // Build options for Prettier
448
467
  // Pass through the entire resolved config - let Prettier use its own defaults for unspecified options
449
468
  const prettierOpts = Object.assign(Object.assign({}, prettierStyle.config), { prettierVersion: prettierStyle.prettierVersion });
469
+ const wholeFile = t.kind === tree_1.JS.Kind.CompilationUnit;
450
470
  try {
451
- if (t.kind === tree_1.JS.Kind.CompilationUnit) {
471
+ if (wholeFile) {
452
472
  // Format and reconcile the entire compilation unit
453
473
  const formatted = await prettierFormat(t, prettierOpts, stopAfter);
454
474
  return formatted;
455
475
  }
456
- if (!cursor) {
457
- // No cursor provided - can't use subtree formatting, return with essential formatting
458
- console.warn('Prettier formatting: No cursor provided for subtree, returning with essential formatting only');
459
- return t;
460
- }
461
- // Use prettierFormatSubtree for subtree formatting
462
- const formatted = await prettierFormatSubtree(t, cursor, prettierOpts, stopAfter);
463
- if (formatted) {
464
- return formatted;
465
- }
466
- // Subtree formatting failed, return with essential formatting applied
467
- console.warn('Prettier formatting: Subtree formatting failed, returning with essential formatting only');
468
- return t;
476
+ // Pruning and reconciling a subtree both go by where it sits in its file
477
+ return cursor && await prettierFormatSubtree(t, cursor, prettierOpts, stopAfter);
469
478
  }
470
479
  catch (e) {
471
- // If Prettier fails, return tree with essential formatting applied
472
- console.warn('Prettier formatting failed, returning with essential formatting only:', e);
473
- return t;
480
+ console.warn('Prettier formatting failed:', e);
481
+ // The built-in visitors lay out every line they are given, so a whole file — the author's
482
+ // layout rather than a recipe's — keeps the one it came with; a subtree is handed on.
483
+ return wholeFile ? t : undefined;
474
484
  }
475
485
  }
476
486
  //# sourceMappingURL=prettier-format.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prettier-format.js","sourceRoot":"","sources":["../../../src/javascript/format/prettier-format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prettier-format.js","sourceRoot":"","sources":["../../../src/javascript/format/prettier-format.ts"],"names":[],"mappings":"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"}
@@ -16,11 +16,11 @@ export * from "./autodetect";
16
16
  export * from "./tree-debug";
17
17
  export * from "./project-parser";
18
18
  export type { Scope } from "./scope";
19
- export { scopeOf, namesDeclaredIn, bindingNames } from "./scope";
19
+ export { scopeOf, namesDeclaredIn, namesDeclaredWithin, namesUsedIn, bindingNames, deconflict, isValueReference, declarationsOf, compilationUnitOf, walk } from "./scope";
20
20
  export type { QuoteChar, AddImportOptions } from "./add-import";
21
21
  export { ImportStyle, moduleNameOf, AddImport } from "./add-import";
22
- export type { AmdBlock } from "./amd";
23
- export { DEFAULT_AMD_CALLEES, amdBlockOf, dependencyNames, parameterNames, withDependency, withoutDependencyAt, RemoveAmdDependency, removeNewlyUnusedAmdBindings } from "./amd";
22
+ export type { AmdBlock, AmdCalleeOptions } from "./amd";
23
+ export { DEFAULT_AMD_CALLEES, amdBlockOf, enclosingAmdBlock, present, elementsOf, parametersOf, identifierOf, dependencyNames, parameterNames, bodyOf, references, namesUsed, lastSegment, derivedBindingName, withDependency, withUnboundDependency, withoutDependencyAt, RemoveAmdDependency, removeNewlyUnusedAmdBindings } from "./amd";
24
24
  export type { MaybeBindOptions, MaybeUnbindOptions, MaybeRebindOptions, ModuleBindings } from "./binding";
25
25
  export { maybeBind, maybeUnbind, maybeRebind, moduleBindings, isAmdBlock, maybeRemoveImport, maybeAddImport } from "./binding";
26
26
  export * from "./remove-import";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/javascript/index.ts"],"names":[],"mappings":"AAeA,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AAEjC,YAAY,EAAC,KAAK,EAAC,MAAM,SAAS,CAAC;AACnC,OAAO,EAAC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAC,MAAM,SAAS,CAAC;AAC/D,YAAY,EAAC,SAAS,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,SAAS,EAAC,MAAM,cAAc,CAAC;AAElE,YAAY,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AACpC,OAAO,EACH,mBAAmB,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EACrG,mBAAmB,EAAE,4BAA4B,EACpD,MAAM,OAAO,CAAC;AACf,YAAY,EAAC,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,cAAc,EAAC,MAAM,WAAW,CAAC;AACxG,OAAO,EAAC,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,iBAAiB,EAAE,cAAc,EAAC,MAAM,WAAW,CAAC;AAC7H,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAE/B,OAAO,SAAS,CAAC;AACjB,OAAO,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/javascript/index.ts"],"names":[],"mappings":"AAeA,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AAEjC,YAAY,EAAC,KAAK,EAAC,MAAM,SAAS,CAAC;AAGnC,OAAO,EACH,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EACpF,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,IAAI,EAC5D,MAAM,SAAS,CAAC;AACjB,YAAY,EAAC,SAAS,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,SAAS,EAAC,MAAM,cAAc,CAAC;AAElE,YAAY,EAAC,QAAQ,EAAE,gBAAgB,EAAC,MAAM,OAAO,CAAC;AACtD,OAAO,EACH,mBAAmB,EAAE,UAAU,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EACnG,eAAe,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,kBAAkB,EAC/F,cAAc,EAAE,qBAAqB,EAAE,mBAAmB,EAC1D,mBAAmB,EAAE,4BAA4B,EACpD,MAAM,OAAO,CAAC;AACf,YAAY,EAAC,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,cAAc,EAAC,MAAM,WAAW,CAAC;AACxG,OAAO,EAAC,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,iBAAiB,EAAE,cAAc,EAAC,MAAM,WAAW,CAAC;AAC7H,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAE/B,OAAO,SAAS,CAAC;AACjB,OAAO,OAAO,CAAC"}
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.maybeAddImport = exports.maybeRemoveImport = exports.isAmdBlock = exports.moduleBindings = exports.maybeRebind = exports.maybeUnbind = exports.maybeBind = exports.removeNewlyUnusedAmdBindings = exports.RemoveAmdDependency = exports.withoutDependencyAt = exports.withDependency = exports.parameterNames = exports.dependencyNames = exports.amdBlockOf = exports.DEFAULT_AMD_CALLEES = exports.AddImport = exports.moduleNameOf = exports.ImportStyle = exports.bindingNames = exports.namesDeclaredIn = exports.scopeOf = void 0;
17
+ exports.maybeAddImport = exports.maybeRemoveImport = exports.isAmdBlock = exports.moduleBindings = exports.maybeRebind = exports.maybeUnbind = exports.maybeBind = exports.removeNewlyUnusedAmdBindings = exports.RemoveAmdDependency = exports.withoutDependencyAt = exports.withUnboundDependency = exports.withDependency = exports.derivedBindingName = exports.lastSegment = exports.namesUsed = exports.references = exports.bodyOf = exports.parameterNames = exports.dependencyNames = exports.identifierOf = exports.parametersOf = exports.elementsOf = exports.present = exports.enclosingAmdBlock = exports.amdBlockOf = exports.DEFAULT_AMD_CALLEES = exports.AddImport = exports.moduleNameOf = exports.ImportStyle = exports.walk = exports.compilationUnitOf = exports.declarationsOf = exports.isValueReference = exports.deconflict = exports.bindingNames = exports.namesUsedIn = exports.namesDeclaredWithin = exports.namesDeclaredIn = exports.scopeOf = void 0;
18
18
  /*
19
19
  * Copyright 2025 the original author or authors.
20
20
  * <p>
@@ -47,10 +47,19 @@ __exportStar(require("./format"), exports);
47
47
  __exportStar(require("./autodetect"), exports);
48
48
  __exportStar(require("./tree-debug"), exports);
49
49
  __exportStar(require("./project-parser"), exports);
50
+ // `cursorOf` is deliberately absent: a visitor of one's own reaches `this.cursor` directly, and
51
+ // the free functions that have no visitor to reach it through are already in this list.
50
52
  var scope_1 = require("./scope");
51
53
  Object.defineProperty(exports, "scopeOf", { enumerable: true, get: function () { return scope_1.scopeOf; } });
52
54
  Object.defineProperty(exports, "namesDeclaredIn", { enumerable: true, get: function () { return scope_1.namesDeclaredIn; } });
55
+ Object.defineProperty(exports, "namesDeclaredWithin", { enumerable: true, get: function () { return scope_1.namesDeclaredWithin; } });
56
+ Object.defineProperty(exports, "namesUsedIn", { enumerable: true, get: function () { return scope_1.namesUsedIn; } });
53
57
  Object.defineProperty(exports, "bindingNames", { enumerable: true, get: function () { return scope_1.bindingNames; } });
58
+ Object.defineProperty(exports, "deconflict", { enumerable: true, get: function () { return scope_1.deconflict; } });
59
+ Object.defineProperty(exports, "isValueReference", { enumerable: true, get: function () { return scope_1.isValueReference; } });
60
+ Object.defineProperty(exports, "declarationsOf", { enumerable: true, get: function () { return scope_1.declarationsOf; } });
61
+ Object.defineProperty(exports, "compilationUnitOf", { enumerable: true, get: function () { return scope_1.compilationUnitOf; } });
62
+ Object.defineProperty(exports, "walk", { enumerable: true, get: function () { return scope_1.walk; } });
54
63
  var add_import_1 = require("./add-import");
55
64
  Object.defineProperty(exports, "ImportStyle", { enumerable: true, get: function () { return add_import_1.ImportStyle; } });
56
65
  Object.defineProperty(exports, "moduleNameOf", { enumerable: true, get: function () { return add_import_1.moduleNameOf; } });
@@ -58,9 +67,20 @@ Object.defineProperty(exports, "AddImport", { enumerable: true, get: function ()
58
67
  var amd_1 = require("./amd");
59
68
  Object.defineProperty(exports, "DEFAULT_AMD_CALLEES", { enumerable: true, get: function () { return amd_1.DEFAULT_AMD_CALLEES; } });
60
69
  Object.defineProperty(exports, "amdBlockOf", { enumerable: true, get: function () { return amd_1.amdBlockOf; } });
70
+ Object.defineProperty(exports, "enclosingAmdBlock", { enumerable: true, get: function () { return amd_1.enclosingAmdBlock; } });
71
+ Object.defineProperty(exports, "present", { enumerable: true, get: function () { return amd_1.present; } });
72
+ Object.defineProperty(exports, "elementsOf", { enumerable: true, get: function () { return amd_1.elementsOf; } });
73
+ Object.defineProperty(exports, "parametersOf", { enumerable: true, get: function () { return amd_1.parametersOf; } });
74
+ Object.defineProperty(exports, "identifierOf", { enumerable: true, get: function () { return amd_1.identifierOf; } });
61
75
  Object.defineProperty(exports, "dependencyNames", { enumerable: true, get: function () { return amd_1.dependencyNames; } });
62
76
  Object.defineProperty(exports, "parameterNames", { enumerable: true, get: function () { return amd_1.parameterNames; } });
77
+ Object.defineProperty(exports, "bodyOf", { enumerable: true, get: function () { return amd_1.bodyOf; } });
78
+ Object.defineProperty(exports, "references", { enumerable: true, get: function () { return amd_1.references; } });
79
+ Object.defineProperty(exports, "namesUsed", { enumerable: true, get: function () { return amd_1.namesUsed; } });
80
+ Object.defineProperty(exports, "lastSegment", { enumerable: true, get: function () { return amd_1.lastSegment; } });
81
+ Object.defineProperty(exports, "derivedBindingName", { enumerable: true, get: function () { return amd_1.derivedBindingName; } });
63
82
  Object.defineProperty(exports, "withDependency", { enumerable: true, get: function () { return amd_1.withDependency; } });
83
+ Object.defineProperty(exports, "withUnboundDependency", { enumerable: true, get: function () { return amd_1.withUnboundDependency; } });
64
84
  Object.defineProperty(exports, "withoutDependencyAt", { enumerable: true, get: function () { return amd_1.withoutDependencyAt; } });
65
85
  Object.defineProperty(exports, "RemoveAmdDependency", { enumerable: true, get: function () { return amd_1.RemoveAmdDependency; } });
66
86
  Object.defineProperty(exports, "removeNewlyUnusedAmdBindings", { enumerable: true, get: function () { return amd_1.removeNewlyUnusedAmdBindings; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/javascript/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yCAAuB;AACvB,4CAA0B;AAC1B,+CAA6B;AAC7B,2CAAyB;AACzB,0CAAwB;AACxB,4CAA0B;AAC1B,2DAAyC;AACzC,wDAAsC;AACtC,oDAAkC;AAClC,uDAAqC;AACrC,kDAAgC;AAChC,qDAAmC;AACnC,mDAAiC;AACjC,2CAAyB;AACzB,+CAA6B;AAC7B,+CAA6B;AAC7B,mDAAiC;AAGjC,iCAA+D;AAAvD,gGAAA,OAAO,OAAA;AAAE,wGAAA,eAAe,OAAA;AAAE,qGAAA,YAAY,OAAA;AAE9C,2CAAkE;AAA1D,yGAAA,WAAW,OAAA;AAAE,0GAAA,YAAY,OAAA;AAAE,uGAAA,SAAS,OAAA;AAG5C,6BAGe;AAFX,0GAAA,mBAAmB,OAAA;AAAE,iGAAA,UAAU,OAAA;AAAE,sGAAA,eAAe,OAAA;AAAE,qGAAA,cAAc,OAAA;AAAE,qGAAA,cAAc,OAAA;AAAE,0GAAA,mBAAmB,OAAA;AACrG,0GAAA,mBAAmB,OAAA;AAAE,mHAAA,4BAA4B,OAAA;AAGrD,qCAA6H;AAArH,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAAE,sGAAA,WAAW,OAAA;AAAE,yGAAA,cAAc,OAAA;AAAE,qGAAA,UAAU,OAAA;AAAE,4GAAA,iBAAiB,OAAA;AAAE,yGAAA,cAAc,OAAA;AAC1G,kDAAgC;AAChC,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAE/B,mBAAiB;AACjB,iBAAe"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/javascript/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yCAAuB;AACvB,4CAA0B;AAC1B,+CAA6B;AAC7B,2CAAyB;AACzB,0CAAwB;AACxB,4CAA0B;AAC1B,2DAAyC;AACzC,wDAAsC;AACtC,oDAAkC;AAClC,uDAAqC;AACrC,kDAAgC;AAChC,qDAAmC;AACnC,mDAAiC;AACjC,2CAAyB;AACzB,+CAA6B;AAC7B,+CAA6B;AAC7B,mDAAiC;AAGjC,gGAAgG;AAChG,wFAAwF;AACxF,iCAGiB;AAFb,gGAAA,OAAO,OAAA;AAAE,wGAAA,eAAe,OAAA;AAAE,4GAAA,mBAAmB,OAAA;AAAE,oGAAA,WAAW,OAAA;AAAE,qGAAA,YAAY,OAAA;AAAE,mGAAA,UAAU,OAAA;AACpF,yGAAA,gBAAgB,OAAA;AAAE,uGAAA,cAAc,OAAA;AAAE,0GAAA,iBAAiB,OAAA;AAAE,6FAAA,IAAI,OAAA;AAG7D,2CAAkE;AAA1D,yGAAA,WAAW,OAAA;AAAE,0GAAA,YAAY,OAAA;AAAE,uGAAA,SAAS,OAAA;AAG5C,6BAKe;AAJX,0GAAA,mBAAmB,OAAA;AAAE,iGAAA,UAAU,OAAA;AAAE,wGAAA,iBAAiB,OAAA;AAAE,8FAAA,OAAO,OAAA;AAAE,iGAAA,UAAU,OAAA;AAAE,mGAAA,YAAY,OAAA;AAAE,mGAAA,YAAY,OAAA;AACnG,sGAAA,eAAe,OAAA;AAAE,qGAAA,cAAc,OAAA;AAAE,6FAAA,MAAM,OAAA;AAAE,iGAAA,UAAU,OAAA;AAAE,gGAAA,SAAS,OAAA;AAAE,kGAAA,WAAW,OAAA;AAAE,yGAAA,kBAAkB,OAAA;AAC/F,qGAAA,cAAc,OAAA;AAAE,4GAAA,qBAAqB,OAAA;AAAE,0GAAA,mBAAmB,OAAA;AAC1D,0GAAA,mBAAmB,OAAA;AAAE,mHAAA,4BAA4B,OAAA;AAGrD,qCAA6H;AAArH,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAAE,sGAAA,WAAW,OAAA;AAAE,yGAAA,cAAc,OAAA;AAAE,qGAAA,UAAU,OAAA;AAAE,4GAAA,iBAAiB,OAAA;AAAE,yGAAA,cAAc,OAAA;AAC1G,kDAAgC;AAChC,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAE/B,mBAAiB;AACjB,iBAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser-utils.d.ts","sourceRoot":"","sources":["../../src/javascript/parser-utils.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAC,MAAM,SAAS,CAAC;AAyIjD,wBAAgB,WAAW,CAAC,SAAS,EAAE,CAAC,GAAI,SAAS,IAAI,SAAS,CAEjE;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE,CAAC,GAAI,UAAU,IAAI,UAAU,CAErE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,SAAS,CA6DjE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,SAAS,CAyDrE;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;AA8ED,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CA8BpE"}
1
+ {"version":3,"file":"parser-utils.d.ts","sourceRoot":"","sources":["../../src/javascript/parser-utils.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAC,MAAM,SAAS,CAAC;AAyIjD,wBAAgB,WAAW,CAAC,SAAS,EAAE,CAAC,GAAI,SAAS,IAAI,SAAS,CAEjE;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE,CAAC,GAAI,UAAU,IAAI,UAAU,CAErE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,SAAS,CA6DjE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,SAAS,CAyDrE;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,2CAsB/E;AAuED,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CA8BpE"}
@@ -357,8 +357,9 @@ function hasFlowAnnotation(sourceFile) {
357
357
  return false;
358
358
  }
359
359
  function checkSyntaxErrors(program, sourceFile) {
360
- const diagnostics = ts.getPreEmitDiagnostics(program, sourceFile);
361
- // checking Parsing and Syntax Errors
360
+ // Only parse diagnostics decide whether a file gets an LST, so the visitor has to map every slot the
361
+ // parser fills — including ones the checker would reject — or the file loses text on print.
362
+ const diagnostics = program.getSyntacticDiagnostics(sourceFile);
362
363
  let syntaxErrors = [];
363
364
  if (diagnostics.length > 0) {
364
365
  const errors = diagnostics.filter(d => (d.category === ts.DiagnosticCategory.Error) && isCriticalDiagnostic(d.code, sourceFile));
@@ -379,16 +380,11 @@ function checkSyntaxErrors(program, sourceFile) {
379
380
  }
380
381
  return syntaxErrors;
381
382
  }
382
- const additionalCriticalCodes = new Set([
383
- // Syntax errors
384
- 17019, // "'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"
385
- 17020, // "'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"
386
- // Other critical errors
387
- ]);
388
383
  // errors code description available at https://github.com/microsoft/TypeScript/blob/main/src/compiler/diagnosticMessages.json
389
384
  const excludedCodes = new Set([
390
385
  1039, // Initializers are not allowed in ambient contexts.
391
386
  1064, // The return type of an async function or method must be the global Promise<T> type. Did you mean to write 'Promise<{0}>'?
387
+ 1101, // 'with' statements are not allowed in strict mode.
392
388
  1107, // Jump target cannot cross function boundary.
393
389
  1111, // Private field '{0}' must be declared in an enclosing class.
394
390
  1117, // An object literal cannot have multiple properties with the same name.
@@ -447,7 +443,7 @@ function isCriticalDiagnostic(code, sourceFile) {
447
443
  return false; // Not critical for JS files
448
444
  }
449
445
  }
450
- return (code > 1000 && code < 2000 && !excludedCodes.has(code)) || additionalCriticalCodes.has(code);
446
+ return code > 1000 && code < 2000 && !excludedCodes.has(code);
451
447
  }
452
448
  function isValidSurrogateRange(unicodeString) {
453
449
  const matches = unicodeString.match(/(?<!\\)\\u([a-fA-F0-9]{4})/g);