@openrewrite/rewrite 8.91.0 → 8.92.0-20260826-190443

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.
@@ -28,15 +28,18 @@ export declare function replaceIndentAfterLastNewline(ws: string, newIndent: str
28
28
  */
29
29
  export declare function spaceContainsNewline(space: J.Space | undefined): boolean;
30
30
  /**
31
- * Normalizes indentation in an entire Space: whitespace and comment suffixes take the target
32
- * indent, and the interior lines of a multi-line comment shift with it, so they stay aligned with
33
- * the opening delimiter that the surrounding whitespace positions.
31
+ * Normalizes indentation in an entire Space: comment lines take `commentIndent` and the line the
32
+ * following token lands on takes `targetIndent`, with the interior lines of a multi-line comment
33
+ * shifting alongside the opening delimiter that the surrounding whitespace positions.
34
34
  *
35
35
  * @param space The Space to normalize
36
- * @param targetIndent The indentation to use after newlines
36
+ * @param targetIndent The indentation for the token this Space precedes
37
+ * @param commentIndent The indentation for comment lines, which can sit deeper than the token — a
38
+ * block's `}` closes at the block's own column while the comments ahead of it belong with
39
+ * the block's contents
37
40
  * @returns The normalized Space, or the original if unchanged
38
41
  */
39
- export declare function normalizeSpaceIndent(space: J.Space, targetIndent: string): J.Space;
42
+ export declare function normalizeSpaceIndent(space: J.Space, targetIndent: string, commentIndent?: string): J.Space;
40
43
  /**
41
44
  * Handles element removal from lists while preserving LST formatting.
42
45
  * Automatically applies prefixes from removed elements to the next kept element,
@@ -1 +1 @@
1
- {"version":3,"file":"formatting-utils.d.ts","sourceRoot":"","sources":["../../src/java/formatting-utils.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAU,CAAC,EAAc,MAAM,SAAS,CAAC;AAGhD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,MAAM,CAKrD;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,CAAC,CAAC,KAAK,CAShG;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGnF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,SAAS,GAAG,OAAO,CAIxE;AAqCD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,CAoClF;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,uBAAuB,CAAC,CAAC,SAAS,CAAC;IAShC,OAAO,CAAC,QAAQ,CAAC,4BAA4B;IARzD,OAAO,CAAC,WAAW,CAAC,CAAI;IACxB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAK;IAEzB;;;OAGG;gBAC0B,4BAA4B,GAAE,OAAe;IAE1E;;OAEG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI;IAK1B;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC;CAY1B"}
1
+ {"version":3,"file":"formatting-utils.d.ts","sourceRoot":"","sources":["../../src/java/formatting-utils.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAU,CAAC,EAAc,MAAM,SAAS,CAAC;AAGhD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,MAAM,CAKrD;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,CAAC,CAAC,KAAK,CAShG;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGnF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,SAAS,GAAG,OAAO,CAIxE;AAqCD;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,GAAE,MAAqB,GAAG,CAAC,CAAC,KAAK,CAqCxH;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,uBAAuB,CAAC,CAAC,SAAS,CAAC;IAShC,OAAO,CAAC,QAAQ,CAAC,4BAA4B;IARzD,OAAO,CAAC,WAAW,CAAC,CAAI;IACxB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAK;IAEzB;;;OAGG;gBAC0B,4BAA4B,GAAE,OAAe;IAE1E;;OAEG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI;IAK1B;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC;CAY1B"}
@@ -109,30 +109,34 @@ function marginOf(precedingWhitespace) {
109
109
  return lastNewline < 0 ? undefined : precedingWhitespace.substring(lastNewline + 1);
110
110
  }
111
111
  /**
112
- * Normalizes indentation in an entire Space: whitespace and comment suffixes take the target
113
- * indent, and the interior lines of a multi-line comment shift with it, so they stay aligned with
114
- * the opening delimiter that the surrounding whitespace positions.
112
+ * Normalizes indentation in an entire Space: comment lines take `commentIndent` and the line the
113
+ * following token lands on takes `targetIndent`, with the interior lines of a multi-line comment
114
+ * shifting alongside the opening delimiter that the surrounding whitespace positions.
115
115
  *
116
116
  * @param space The Space to normalize
117
- * @param targetIndent The indentation to use after newlines
117
+ * @param targetIndent The indentation for the token this Space precedes
118
+ * @param commentIndent The indentation for comment lines, which can sit deeper than the token — a
119
+ * block's `}` closes at the block's own column while the comments ahead of it belong with
120
+ * the block's contents
118
121
  * @returns The normalized Space, or the original if unchanged
119
122
  */
120
- function normalizeSpaceIndent(space, targetIndent) {
123
+ function normalizeSpaceIndent(space, targetIndent, commentIndent = targetIndent) {
121
124
  let changed = false;
122
- // Normalize whitespace
125
+ const lastComment = space.comments.length - 1;
126
+ // Normalize whitespace, which precedes the first comment when there is one
123
127
  let newWhitespace = space.whitespace;
124
128
  if (space.whitespace.includes("\n")) {
125
- newWhitespace = replaceIndentAfterLastNewline(space.whitespace, targetIndent);
129
+ newWhitespace = replaceIndentAfterLastNewline(space.whitespace, lastComment < 0 ? targetIndent : commentIndent);
126
130
  changed = changed || newWhitespace !== space.whitespace;
127
131
  }
128
132
  // Normalize comment suffixes and multi-line comment interiors
129
133
  const newComments = space.comments.map((comment, i) => {
130
134
  const margin = marginOf(i === 0 ? space.whitespace : space.comments[i - 1].suffix);
131
- let result = margin !== undefined && margin !== targetIndent && isTextComment(comment) ?
132
- reindentComment(comment, margin, targetIndent) : comment;
135
+ let result = margin !== undefined && margin !== commentIndent && isTextComment(comment) ?
136
+ reindentComment(comment, margin, commentIndent) : comment;
133
137
  changed = changed || result !== comment;
134
138
  if (result.suffix.includes("\n")) {
135
- const newSuffix = replaceIndentAfterLastNewline(result.suffix, targetIndent);
139
+ const newSuffix = replaceIndentAfterLastNewline(result.suffix, i === lastComment ? targetIndent : commentIndent);
136
140
  if (newSuffix !== result.suffix) {
137
141
  changed = true;
138
142
  result = Object.assign(Object.assign({}, result), { suffix: newSuffix });
@@ -1 +1 @@
1
- {"version":3,"file":"formatting-utils.js","sourceRoot":"","sources":["../../src/java/formatting-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatting-utils.js","sourceRoot":"","sources":["../../src/java/formatting-utils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAUH,wCAKC;AAUD,sDASC;AAKD,gDAEC;AAMD,sEAGC;AAKD,oDAIC;AAiDD,oDAqCC;AA/ID,kCAAgD;AAChD,uCAA2C;AAE3C;;;;GAIG;AACH,SAAgB,cAAc,CAAC,KAAc;IACzC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5D,CAAC;IACD,OAAO,KAAK,CAAC,UAAU,CAAC;AAC5B,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,qBAAqB,CAAC,KAAc,EAAE,SAAiC;IACnF,OAAO,IAAA,iBAAO,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE;QAC1B,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC9D,WAAW,CAAC,MAAM,GAAG,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACnD,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,CAAS;IACxC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;AACpC,CAAC;AAED;;;GAGG;AACH,SAAgB,6BAA6B,CAAC,EAAU,EAAE,SAAiB;IACvE,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACzC,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,KAA0B;IAC3D,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,IAAI,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACjD,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,aAAa,GAAG,CAAC,OAAgB,EAA0B,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,WAAW,CAAC;AAExG;;;GAGG;AACH,SAAS,WAAW,CAAC,MAAc,EAAE,SAAiB,EAAE,SAAiB;IACrE,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,OAAO,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1D,CAAC;IACD,6FAA6F;IAC7F,wFAAwF;IACxF,IAAI,IAAI,GAAG,CAAC,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACnD,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;IAClD,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC;AAClH,CAAC;AAED,SAAS,eAAe,CAAC,OAAoB,EAAE,SAAiB,EAAE,SAAiB;IAC/E,6FAA6F;IAC7F,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,MAAc,EAAE,MAAc,EAAE,IAAY,EAAE,EAAE,CACrG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IAC7G,OAAO,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,iCAAK,OAAO,KAAE,IAAI,GAAC,CAAC;AAChE,CAAC;AAED;;;GAGG;AACH,SAAS,QAAQ,CAAC,mBAA2B;IACzC,MAAM,WAAW,GAAG,mBAAmB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC1D,OAAO,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;AACxF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,oBAAoB,CAAC,KAAc,EAAE,YAAoB,EAAE,gBAAwB,YAAY;IAC3G,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAE9C,2EAA2E;IAC3E,IAAI,aAAa,GAAG,KAAK,CAAC,UAAU,CAAC;IACrC,IAAI,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,aAAa,GAAG,6BAA6B,CAAC,KAAK,CAAC,UAAU,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;QAChH,OAAO,GAAG,OAAO,IAAI,aAAa,KAAK,KAAK,CAAC,UAAU,CAAC;IAC5D,CAAC;IAED,8DAA8D;IAC9D,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE;QAClD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACnF,IAAI,MAAM,GAAY,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YAC9F,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAC9D,OAAO,GAAG,OAAO,IAAI,MAAM,KAAK,OAAO,CAAC;QAExC,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,6BAA6B,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;YACjH,IAAI,SAAS,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC9B,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,mCAAO,MAAM,KAAE,MAAM,EAAE,SAAS,GAAC,CAAC;YAC5C,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,uCACO,KAAK,KACR,UAAU,EAAE,aAAa,EACzB,QAAQ,EAAE,WAAW,IACvB;AACN,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAa,uBAAuB;IAKhC;;;OAGG;IACH,YAA6B,+BAAwC,KAAK;QAA7C,iCAA4B,GAA5B,4BAA4B,CAAiB;QAPlE,cAAS,GAAG,CAAC,CAAC;QACd,iBAAY,GAAG,CAAC,CAAC;IAMoD,CAAC;IAE9E;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAO;;QACf,MAAA,IAAI,CAAC,WAAW,oCAAhB,IAAI,CAAC,WAAW,GAAK,IAAI,EAAC;QAC1B,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAO;QACf,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,4BAA4B,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC;QACnF,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACrF,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ;AAzCD,0DAyCC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,yBAAyB,CAAc,cAAiB,EAAE,WAAc,EAAE,0BAAmC,KAAK;IACvH,IAAI,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;QAChD,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC;IAC5C,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC;IAEzC,IAAI,aAAa,KAAK,aAAa,EAAE,CAAC;QAClC,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,yCAAyC;IACzC,MAAM,aAAa,GAAG,CAAC,EAAsB,EAAE,EAAE,CAAC,CAAC,CAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,KAAK,CAAC,QAAQ,CAAC,KAAI,EAAE,CAAC,CAAC,MAAM,CAAC;IAErF,iGAAiG;IACjG,MAAM,iBAAiB,GAAG,CAAC,EAAsB,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9E,MAAM,SAAS,GAAG,aAAa,CAAC,UAAU,IAAI,EAAE,CAAC;IACjD,MAAM,SAAS,GAAG,aAAa,CAAC,UAAU,IAAI,EAAE,CAAC;IACjD,MAAM,eAAe,GAAG,aAAa,CAAC,QAAQ,IAAI,EAAE,CAAC;IACrD,MAAM,eAAe,GAAG,aAAa,CAAC,QAAQ,IAAI,EAAE,CAAC;IAErD,gEAAgE;IAChE,IAAI,cAAc,GAAG,eAAe,CAAC;IACrC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9D,MAAM,YAAY,GAAQ,eAAe,CAAC,CAAC,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC;QACpE,MAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,SAAS,KAAK,KAAK,CAAC;QACrF,IAAI,aAAa,EAAE,CAAC;YAChB,cAAc,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;IAED,sDAAsD;IACtD,IAAI,aAAoB,CAAC;IACzB,IAAI,uBAAuB,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1D,iDAAiD;QACjD,aAAa,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,cAAc,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACJ,aAAa,GAAG,cAAc,CAAC;IACnC,CAAC;IAED,iFAAiF;IACjF,MAAM,+BAA+B,GACjC,CAAC,uBAAuB;QACxB,aAAa,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAExD,OAAO,IAAA,iBAAO,EAAC,WAAW,EAAE,KAAK,CAAC,EAAE;QAChC,KAAK,CAAC,MAAM,GAAG;YACX,IAAI,EAAE,+BAA+B,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI;YAC/E,UAAU,EAAE,+BAA+B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YACnE,QAAQ,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE;SAC1D,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tabs-and-indents-visitor.d.ts","sourceRoot":"","sources":["../../../src/javascript/format/tabs-and-indents-visitor.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAC7C,OAAO,EAGH,CAAC,EAOJ,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAC,MAAM,EAAmB,IAAI,EAAC,MAAM,YAAY,CAAC;AAGzD,OAAO,EAAC,mBAAmB,EAAC,MAAM,UAAU,CAAC;AAK7C,qBAAa,qBAAqB,CAAC,CAAC,CAAE,SAAQ,iBAAiB,CAAC,CAAC,CAAC;IAIlD,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IAAuB,OAAO,CAAC,SAAS,CAAC;IAHzF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAU;gBAEb,mBAAmB,EAAE,mBAAmB,EAAU,SAAS,CAAC,EAAE,IAAI,YAAA;IAM/F,OAAO,CAAC,YAAY;cAOJ,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAKhE,OAAO,CAAC,0BAA0B;IA+ElC,OAAO,CAAC,sBAAsB;IA+B9B,OAAO,CAAC,eAAe;IA0CvB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,2BAA2B;IAsBpB,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAsDhE,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,uBAAuB;IAyD/B,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,iBAAiB;IAUZ,cAAc,CAAC,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAuBlG,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,kBAAkB;IAmBb,eAAe,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAC1E,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EACrB,CAAC,EAAE,CAAC,GACL,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IA2BvC,OAAO,CAAC,kBAAkB;IAmB1B,OAAO,CAAC,mBAAmB;IAoBd,gBAAgB,CAAC,CAAC,SAAS,CAAC,GAAG,OAAO,EAC/C,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EACvB,CAAC,EAAE,CAAC,GACL,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAyBxC,OAAO,CAAC,mBAAmB;IAkD3B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgBjB,KAAK,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAanF,OAAO,CAAC,oBAAoB;IA6C5B,OAAO,CAAC,aAAa;CAMxB"}
1
+ {"version":3,"file":"tabs-and-indents-visitor.d.ts","sourceRoot":"","sources":["../../../src/javascript/format/tabs-and-indents-visitor.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAC7C,OAAO,EAGH,CAAC,EAMJ,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAC,MAAM,EAAmB,IAAI,EAAC,MAAM,YAAY,CAAC;AAGzD,OAAO,EAAC,mBAAmB,EAAC,MAAM,UAAU,CAAC;AAK7C,qBAAa,qBAAqB,CAAC,CAAC,CAAE,SAAQ,iBAAiB,CAAC,CAAC,CAAC;IAIlD,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IAAuB,OAAO,CAAC,SAAS,CAAC;IAHzF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAU;gBAEb,mBAAmB,EAAE,mBAAmB,EAAU,SAAS,CAAC,EAAE,IAAI,YAAA;IAM/F,OAAO,CAAC,YAAY;cAOJ,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAKhE,OAAO,CAAC,0BAA0B;IA+ElC,OAAO,CAAC,sBAAsB;IA+B9B,OAAO,CAAC,eAAe;IA0CvB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,2BAA2B;IAsBpB,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAsDhE,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,uBAAuB;IAyD/B,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,iBAAiB;IAUZ,cAAc,CAAC,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAuBlG,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,kBAAkB;IAqBb,eAAe,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAC1E,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EACrB,CAAC,EAAE,CAAC,GACL,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IA2BvC,OAAO,CAAC,kBAAkB;IAmB1B,OAAO,CAAC,mBAAmB;IAoBd,gBAAgB,CAAC,CAAC,SAAS,CAAC,GAAG,OAAO,EAC/C,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EACvB,CAAC,EAAE,CAAC,GACL,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAyBxC,OAAO,CAAC,mBAAmB;IAkD3B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgBjB,KAAK,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAanF,OAAO,CAAC,oBAAoB;IA6C5B,OAAO,CAAC,aAAa;CAMxB"}
@@ -352,12 +352,12 @@ class TabsAndIndentsVisitor extends visitor_1.JavaScriptVisitor {
352
352
  return false;
353
353
  }
354
354
  normalizeBlockEnd(block, myIndent) {
355
- const effectiveLastWs = (0, java_1.lastWhitespace)(block.end);
356
- if (!effectiveLastWs.includes("\n")) {
355
+ if (!(0, java_1.spaceContainsNewline)(block.end)) {
357
356
  return block;
358
357
  }
359
- return (0, mutative_1.create)(block, draft => {
360
- draft.end = (0, java_1.replaceLastWhitespace)(draft.end, ws => (0, java_1.replaceIndentAfterLastNewline)(ws, this.indentString(myIndent)));
358
+ const end = (0, java_1.normalizeSpaceIndent)(block.end, this.indentString(myIndent), this.indentString(myIndent + this.indentSize));
359
+ return end === block.end ? block : (0, mutative_1.create)(block, draft => {
360
+ draft.end = end;
361
361
  });
362
362
  }
363
363
  async visitContainer(container, p) {
@@ -390,12 +390,14 @@ class TabsAndIndentsVisitor extends visitor_1.JavaScriptVisitor {
390
390
  // Normalize the last element's after whitespace (closing delimiter like `)`)
391
391
  // The closing delimiter should align with the parent's indent level
392
392
  if (container.elements.length > 0) {
393
- const effectiveLastWs = (0, java_1.lastWhitespace)(container.elements[container.elements.length - 1].after);
394
- if (effectiveLastWs.includes("\n")) {
395
- return (0, mutative_1.create)(container, draft => {
396
- const lastDraft = draft.elements[draft.elements.length - 1];
397
- lastDraft.after = (0, java_1.replaceLastWhitespace)(lastDraft.after, ws => (0, java_1.replaceIndentAfterLastNewline)(ws, this.indentString(parentIndent)));
398
- });
393
+ const last = container.elements[container.elements.length - 1];
394
+ if ((0, java_1.spaceContainsNewline)(last.after)) {
395
+ const after = (0, java_1.normalizeSpaceIndent)(last.after, this.indentString(parentIndent), this.indentString(parentIndent + this.indentSize));
396
+ if (after !== last.after) {
397
+ return (0, mutative_1.create)(container, draft => {
398
+ draft.elements[draft.elements.length - 1].after = after;
399
+ });
400
+ }
399
401
  }
400
402
  }
401
403
  return container;
@@ -1 +1 @@
1
- {"version":3,"file":"tabs-and-indents-visitor.js","sourceRoot":"","sources":["../../../src/javascript/format/tabs-and-indents-visitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tabs-and-indents-visitor.js","sourceRoot":"","sources":["../../../src/javascript/format/tabs-and-indents-visitor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- 8.91.0
1
+ 8.92.0-20260826-190443
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openrewrite/rewrite",
3
- "version": "8.91.0",
3
+ "version": "8.92.0-20260826-190443",
4
4
  "license": "Moderne Source Available License",
5
5
  "description": "OpenRewrite JavaScript.",
6
6
  "repository": {
@@ -109,33 +109,37 @@ function marginOf(precedingWhitespace: string): string | undefined {
109
109
  }
110
110
 
111
111
  /**
112
- * Normalizes indentation in an entire Space: whitespace and comment suffixes take the target
113
- * indent, and the interior lines of a multi-line comment shift with it, so they stay aligned with
114
- * the opening delimiter that the surrounding whitespace positions.
112
+ * Normalizes indentation in an entire Space: comment lines take `commentIndent` and the line the
113
+ * following token lands on takes `targetIndent`, with the interior lines of a multi-line comment
114
+ * shifting alongside the opening delimiter that the surrounding whitespace positions.
115
115
  *
116
116
  * @param space The Space to normalize
117
- * @param targetIndent The indentation to use after newlines
117
+ * @param targetIndent The indentation for the token this Space precedes
118
+ * @param commentIndent The indentation for comment lines, which can sit deeper than the token — a
119
+ * block's `}` closes at the block's own column while the comments ahead of it belong with
120
+ * the block's contents
118
121
  * @returns The normalized Space, or the original if unchanged
119
122
  */
120
- export function normalizeSpaceIndent(space: J.Space, targetIndent: string): J.Space {
123
+ export function normalizeSpaceIndent(space: J.Space, targetIndent: string, commentIndent: string = targetIndent): J.Space {
121
124
  let changed = false;
125
+ const lastComment = space.comments.length - 1;
122
126
 
123
- // Normalize whitespace
127
+ // Normalize whitespace, which precedes the first comment when there is one
124
128
  let newWhitespace = space.whitespace;
125
129
  if (space.whitespace.includes("\n")) {
126
- newWhitespace = replaceIndentAfterLastNewline(space.whitespace, targetIndent);
130
+ newWhitespace = replaceIndentAfterLastNewline(space.whitespace, lastComment < 0 ? targetIndent : commentIndent);
127
131
  changed = changed || newWhitespace !== space.whitespace;
128
132
  }
129
133
 
130
134
  // Normalize comment suffixes and multi-line comment interiors
131
135
  const newComments = space.comments.map((comment, i) => {
132
136
  const margin = marginOf(i === 0 ? space.whitespace : space.comments[i - 1].suffix);
133
- let result: Comment = margin !== undefined && margin !== targetIndent && isTextComment(comment) ?
134
- reindentComment(comment, margin, targetIndent) : comment;
137
+ let result: Comment = margin !== undefined && margin !== commentIndent && isTextComment(comment) ?
138
+ reindentComment(comment, margin, commentIndent) : comment;
135
139
  changed = changed || result !== comment;
136
140
 
137
141
  if (result.suffix.includes("\n")) {
138
- const newSuffix = replaceIndentAfterLastNewline(result.suffix, targetIndent);
142
+ const newSuffix = replaceIndentAfterLastNewline(result.suffix, i === lastComment ? targetIndent : commentIndent);
139
143
  if (newSuffix !== result.suffix) {
140
144
  changed = true;
141
145
  result = {...result, suffix: newSuffix};
@@ -22,7 +22,6 @@ import {
22
22
  lastWhitespace,
23
23
  normalizeSpaceIndent,
24
24
  replaceIndentAfterLastNewline,
25
- replaceLastWhitespace,
26
25
  spaceContainsNewline,
27
26
  stripLeadingIndent
28
27
  } from "../../java";
@@ -395,12 +394,12 @@ export class TabsAndIndentsVisitor<P> extends JavaScriptVisitor<P> {
395
394
  }
396
395
 
397
396
  private normalizeBlockEnd(block: J.Block, myIndent: number): J.Block {
398
- const effectiveLastWs = lastWhitespace(block.end);
399
- if (!effectiveLastWs.includes("\n")) {
397
+ if (!spaceContainsNewline(block.end)) {
400
398
  return block;
401
399
  }
402
- return produce(block, draft => {
403
- draft.end = replaceLastWhitespace(draft.end, ws => replaceIndentAfterLastNewline(ws, this.indentString(myIndent)));
400
+ const end = normalizeSpaceIndent(block.end, this.indentString(myIndent), this.indentString(myIndent + this.indentSize));
401
+ return end === block.end ? block : produce(block, draft => {
402
+ draft.end = end;
404
403
  });
405
404
  }
406
405
 
@@ -440,12 +439,14 @@ export class TabsAndIndentsVisitor<P> extends JavaScriptVisitor<P> {
440
439
  // Normalize the last element's after whitespace (closing delimiter like `)`)
441
440
  // The closing delimiter should align with the parent's indent level
442
441
  if (container.elements.length > 0) {
443
- const effectiveLastWs = lastWhitespace(container.elements[container.elements.length - 1].after);
444
- if (effectiveLastWs.includes("\n")) {
445
- return produce(container, draft => {
446
- const lastDraft = draft.elements[draft.elements.length - 1];
447
- lastDraft.after = replaceLastWhitespace(lastDraft.after, ws => replaceIndentAfterLastNewline(ws, this.indentString(parentIndent)));
448
- });
442
+ const last = container.elements[container.elements.length - 1];
443
+ if (spaceContainsNewline(last.after)) {
444
+ const after = normalizeSpaceIndent(last.after, this.indentString(parentIndent), this.indentString(parentIndent + this.indentSize));
445
+ if (after !== last.after) {
446
+ return produce(container, draft => {
447
+ draft.elements[draft.elements.length - 1].after = after;
448
+ });
449
+ }
449
450
  }
450
451
  }
451
452