@openrewrite/rewrite 8.69.0-20251210-153743 → 8.69.0-20251210-164937
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.
- package/dist/javascript/tabs-and-indents-visitor.d.ts +1 -0
- package/dist/javascript/tabs-and-indents-visitor.d.ts.map +1 -1
- package/dist/javascript/tabs-and-indents-visitor.js +63 -15
- package/dist/javascript/tabs-and-indents-visitor.js.map +1 -1
- package/dist/version.txt +1 -1
- package/package.json +1 -1
- package/src/javascript/tabs-and-indents-visitor.ts +68 -14
|
@@ -16,6 +16,7 @@ export declare class TabsAndIndentsVisitor<P> extends JavaScriptVisitor<P> {
|
|
|
16
16
|
private prefixContainsNewline;
|
|
17
17
|
private isJsxChildElement;
|
|
18
18
|
private computeIndentKind;
|
|
19
|
+
private isLambdaBodyInsideContainer;
|
|
19
20
|
postVisit(tree: J, _p: P): Promise<J | undefined>;
|
|
20
21
|
private isInsideJsxTag;
|
|
21
22
|
private normalizeJsxTextContent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs-and-indents-visitor.d.ts","sourceRoot":"","sources":["../../src/javascript/tabs-and-indents-visitor.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAC;AAC5C,OAAO,EAGH,CAAC,EAOJ,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAC,MAAM,EAAmB,IAAI,EAAC,MAAM,SAAS,CAAC;AAGtD,OAAO,EAAC,mBAAmB,EAAC,MAAM,SAAS,CAAC;AAK5C,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;
|
|
1
|
+
{"version":3,"file":"tabs-and-indents-visitor.d.ts","sourceRoot":"","sources":["../../src/javascript/tabs-and-indents-visitor.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAC;AAC5C,OAAO,EAGH,CAAC,EAOJ,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAC,MAAM,EAAmB,IAAI,EAAC,MAAM,SAAS,CAAC;AAGtD,OAAO,EAAC,mBAAmB,EAAC,MAAM,SAAS,CAAC;AAK5C,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;IAa7B,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;IAkEhE,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"}
|
|
@@ -60,14 +60,27 @@ class TabsAndIndentsVisitor extends visitor_1.JavaScriptVisitor {
|
|
|
60
60
|
const mi = tree;
|
|
61
61
|
if (mi.select && mi.select.after.whitespace.includes("\n")) {
|
|
62
62
|
// This MethodInvocation has a chained method call after it
|
|
63
|
-
// Store the
|
|
63
|
+
// Store the BASE indent context in "chainedIndentContext"
|
|
64
64
|
// This will be propagated down and used when we reach the chain's innermost element
|
|
65
|
-
const
|
|
66
|
-
|
|
67
|
-
//
|
|
68
|
-
//
|
|
69
|
-
|
|
70
|
-
|
|
65
|
+
const [parentIndent, parentIndentKind] = this.getParentIndentContext(cursor);
|
|
66
|
+
// If this chain-start itself is on a new line and we're in continuation context,
|
|
67
|
+
// the base indent includes continuation.
|
|
68
|
+
// BUT if parentIndentKind is 'align', we're likely in a Block child context where
|
|
69
|
+
// the parent already set the correct indent - don't add extra continuation.
|
|
70
|
+
const prefixHasNewline = this.prefixContainsNewline(tree);
|
|
71
|
+
let baseIndent = parentIndent;
|
|
72
|
+
if (prefixHasNewline && parentIndentKind !== 'align') {
|
|
73
|
+
baseIndent += this.indentSize;
|
|
74
|
+
}
|
|
75
|
+
// If we're inside a Lambda expression body that's inside a Container (like method arguments),
|
|
76
|
+
// add another continuation for the Container context
|
|
77
|
+
const isLambdaBodyContainer = this.isLambdaBodyInsideContainer(cursor);
|
|
78
|
+
if (prefixHasNewline && isLambdaBodyContainer) {
|
|
79
|
+
baseIndent += this.indentSize;
|
|
80
|
+
}
|
|
81
|
+
cursor.messages.set("chainedIndentContext", [baseIndent, parentIndentKind]);
|
|
82
|
+
// For children (arguments), use continuation indent from base
|
|
83
|
+
cursor.messages.set("indentContext", [baseIndent + this.indentSize, parentIndentKind]);
|
|
71
84
|
return;
|
|
72
85
|
}
|
|
73
86
|
// Check if we're at the base of a chain (no select) and parent has chainedIndentContext
|
|
@@ -113,13 +126,24 @@ class TabsAndIndentsVisitor extends visitor_1.JavaScriptVisitor {
|
|
|
113
126
|
cursor.messages.set("indentContext", [myIndent, indentKind]);
|
|
114
127
|
}
|
|
115
128
|
getParentIndentContext(cursor) {
|
|
129
|
+
var _a;
|
|
116
130
|
// Walk up the cursor chain to find the nearest indent context
|
|
117
131
|
// We need to walk because intermediate nodes like RightPadded may not have context set
|
|
132
|
+
let passedScopeBoundary = false;
|
|
118
133
|
for (let c = cursor.parent; c != null; c = c.parent) {
|
|
134
|
+
// Check if we're passing a scope boundary (Lambda creates a new scope)
|
|
135
|
+
// After crossing a Lambda, we should ignore chainedIndentContext from outer scopes
|
|
136
|
+
const nodeKind = (_a = c.value) === null || _a === void 0 ? void 0 : _a.kind;
|
|
137
|
+
if (nodeKind === java_1.J.Kind.Lambda) {
|
|
138
|
+
passedScopeBoundary = true;
|
|
139
|
+
}
|
|
119
140
|
// chainedIndentContext stores the original context - prefer it
|
|
120
|
-
|
|
121
|
-
if (
|
|
122
|
-
|
|
141
|
+
// BUT only if we haven't crossed a scope boundary (like Lambda)
|
|
142
|
+
if (!passedScopeBoundary) {
|
|
143
|
+
const chainedContext = c.messages.get("chainedIndentContext");
|
|
144
|
+
if (chainedContext !== undefined) {
|
|
145
|
+
return chainedContext;
|
|
146
|
+
}
|
|
123
147
|
}
|
|
124
148
|
const context = c.messages.get("indentContext");
|
|
125
149
|
if (context !== undefined) {
|
|
@@ -207,6 +231,28 @@ class TabsAndIndentsVisitor extends visitor_1.JavaScriptVisitor {
|
|
|
207
231
|
return 'continuation';
|
|
208
232
|
}
|
|
209
233
|
}
|
|
234
|
+
isLambdaBodyInsideContainer(cursor) {
|
|
235
|
+
var _a;
|
|
236
|
+
// Check if we're the DIRECT Lambda body (not inside a Block that's the Lambda body)
|
|
237
|
+
// AND that Lambda is inside a Container (method arguments)
|
|
238
|
+
// Walk up to find Lambda, but stop if we hit a Block (meaning we're inside a block body, not expression body)
|
|
239
|
+
let foundLambda = false;
|
|
240
|
+
for (let c = cursor.parent; c != null; c = c.parent) {
|
|
241
|
+
const kind = (_a = c.value) === null || _a === void 0 ? void 0 : _a.kind;
|
|
242
|
+
// If we hit a Block before Lambda, we're inside the block body, not expression body
|
|
243
|
+
if (!foundLambda && kind === java_1.J.Kind.Block) {
|
|
244
|
+
return false;
|
|
245
|
+
}
|
|
246
|
+
if (kind === java_1.J.Kind.Lambda) {
|
|
247
|
+
foundLambda = true;
|
|
248
|
+
}
|
|
249
|
+
// After finding Lambda, check for Container
|
|
250
|
+
if (foundLambda && kind && kind === java_1.J.Kind.Container) {
|
|
251
|
+
return true;
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
return false;
|
|
255
|
+
}
|
|
210
256
|
postVisit(tree, _p) {
|
|
211
257
|
return __awaiter(this, void 0, void 0, function* () {
|
|
212
258
|
var _a, _b, _c, _d, _e;
|
|
@@ -228,12 +274,12 @@ class TabsAndIndentsVisitor extends visitor_1.JavaScriptVisitor {
|
|
|
228
274
|
}
|
|
229
275
|
let [myIndent] = indentContext;
|
|
230
276
|
// For chain-start MethodInvocations, the prefix contains whitespace before the chain BASE
|
|
231
|
-
// Use chainedIndentContext
|
|
277
|
+
// Use chainedIndentContext for the prefix - it already accounts for newlines
|
|
232
278
|
const chainedContext = this.cursor.messages.get("chainedIndentContext");
|
|
233
279
|
if (chainedContext !== undefined && tree.kind === java_1.J.Kind.MethodInvocation) {
|
|
234
280
|
const mi = tree;
|
|
235
281
|
if (mi.select && mi.select.after.whitespace.includes("\n")) {
|
|
236
|
-
// This is a chain-start - use
|
|
282
|
+
// This is a chain-start - use the base indent from chainedIndentContext
|
|
237
283
|
myIndent = chainedContext[0];
|
|
238
284
|
}
|
|
239
285
|
}
|
|
@@ -473,15 +519,17 @@ class TabsAndIndentsVisitor extends visitor_1.JavaScriptVisitor {
|
|
|
473
519
|
const [parentIndent, parentIndentKind] = parentContext !== null && parentContext !== void 0 ? parentContext : [0, 'continuation'];
|
|
474
520
|
// Check if parent has chainedIndentContext - if so, this is the select of a method chain
|
|
475
521
|
// Propagate chainedIndentContext but do NOT set indentContext
|
|
522
|
+
// EXCEPTION: Do NOT propagate into Lambda bodies - arrow functions create a new scope
|
|
476
523
|
const parentChainedContext = (_b = this.cursor.parent) === null || _b === void 0 ? void 0 : _b.messages.get("chainedIndentContext");
|
|
477
|
-
|
|
524
|
+
const elementKind = (_c = right.element) === null || _c === void 0 ? void 0 : _c.kind;
|
|
525
|
+
const isLambdaBody = elementKind === java_1.J.Kind.Lambda;
|
|
526
|
+
if (parentChainedContext !== undefined && !isLambdaBody) {
|
|
478
527
|
this.cursor.messages.set("chainedIndentContext", parentChainedContext);
|
|
479
528
|
// Do NOT set indentContext - child elements will use chainedIndentContext
|
|
480
529
|
return;
|
|
481
530
|
}
|
|
482
531
|
// Check if Parentheses wraps a Binary expression - if so, let Binary handle its own indent
|
|
483
|
-
const rightPaddedParentKind = (
|
|
484
|
-
const elementKind = (_e = right.element) === null || _e === void 0 ? void 0 : _e.kind;
|
|
532
|
+
const rightPaddedParentKind = (_e = (_d = this.cursor.parent) === null || _d === void 0 ? void 0 : _d.value) === null || _e === void 0 ? void 0 : _e.kind;
|
|
485
533
|
const isParenthesesWrappingBinary = rightPaddedParentKind === java_1.J.Kind.Parentheses &&
|
|
486
534
|
elementKind === java_1.J.Kind.Binary;
|
|
487
535
|
// Check if this is a NamedVariable inside a VariableDeclarations with decorators
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs-and-indents-visitor.js","sourceRoot":"","sources":["../../src/javascript/tabs-and-indents-visitor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tabs-and-indents-visitor.js","sourceRoot":"","sources":["../../src/javascript/tabs-and-indents-visitor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,iCAA+B;AAC/B,uCAA4C;AAC5C,kCAUiB;AACjB,iCAA8B;AAC9B,kCAAsD;AACtD,kCAAiC;AACjC,wCAAwC;AAExC,wCAAsC;AAItC,MAAa,qBAAyB,SAAQ,2BAAoB;IAI9D,YAA6B,mBAAwC,EAAU,SAAgB;QAC3F,KAAK,EAAE,CAAC;QADiB,wBAAmB,GAAnB,mBAAmB,CAAqB;QAAU,cAAS,GAAT,SAAS,CAAO;QAE3F,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC;IACpE,CAAC;IAEO,YAAY,CAAC,MAAc;QAC/B,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAEe,QAAQ,CAAC,IAAO,EAAE,EAAK;;YACnC,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACnD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAEO,0BAA0B,CAAC,MAAc,EAAE,IAAO;;QACtD,kFAAkF;QAClF,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxC,MAAM,EAAE,GAAG,IAA0B,CAAC;YACtC,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzD,2DAA2D;gBAC3D,0DAA0D;gBAC1D,oFAAoF;gBACpF,MAAM,CAAC,YAAY,EAAE,gBAAgB,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;gBAE7E,iFAAiF;gBACjF,yCAAyC;gBACzC,kFAAkF;gBAClF,4EAA4E;gBAC5E,MAAM,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;gBAC1D,IAAI,UAAU,GAAG,YAAY,CAAC;gBAC9B,IAAI,gBAAgB,IAAI,gBAAgB,KAAK,OAAO,EAAE,CAAC;oBACnD,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;gBAClC,CAAC;gBAED,8FAA8F;gBAC9F,qDAAqD;gBACrD,MAAM,qBAAqB,GAAG,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;gBACvE,IAAI,gBAAgB,IAAI,qBAAqB,EAAE,CAAC;oBAC5C,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;gBAClC,CAAC;gBAED,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC,UAAU,EAAE,gBAAgB,CAAkB,CAAC,CAAC;gBAC7F,8DAA8D;gBAC9D,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAkB,CAAC,CAAC;gBAExG,OAAO;YACX,CAAC;YACD,wFAAwF;YACxF,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;gBACb,MAAM,cAAc,GAAG,MAAA,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAA8B,CAAC;gBACxG,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;oBAC/B,mEAAmE;oBACnE,oEAAoE;oBACpE,6EAA6E;oBAC7E,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;oBACrD,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC;oBAC5D,OAAO;gBACX,CAAC;YACL,CAAC;QACL,CAAC;QAED,yEAAyE;QACzE,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,WAAW,GAAG,MAAA,MAAM,CAAC,MAAM,0CAAE,KAAK,CAAC;YACzC,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,MAAK,QAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAChD,MAAM,QAAQ,GAAG,WAAiC,CAAC;gBACnD,iFAAiF;gBACjF,4DAA4D;gBAC5D,MAAM,oBAAoB,GAAG,MAAA,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAA8B,CAAC;gBAC9G,IAAI,oBAAoB,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACzD,oFAAoF;oBACpF,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;oBAC3D,OAAO;gBACX,CAAC;YACL,CAAC;QACL,CAAC;QAED,MAAM,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC;QAE9E,8EAA8E;QAC9E,IAAI,UAAsB,CAAC;QAC3B,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,mEAAmE;YACnE,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YACpD,UAAU,GAAG,CAAC,UAAU,IAAI,gBAAgB,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC;QACzF,CAAC;aAAM,CAAC;YACJ,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAkB,CAAC,CAAC;IAClF,CAAC;IAEO,sBAAsB,CAAC,MAAc;;QACzC,8DAA8D;QAC9D,uFAAuF;QACvF,IAAI,mBAAmB,GAAG,KAAK,CAAC;QAEhC,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;YAClD,uEAAuE;YACvE,mFAAmF;YACnF,MAAM,QAAQ,GAAG,MAAC,CAAC,CAAC,KAAa,0CAAE,IAAI,CAAC;YACxC,IAAI,QAAQ,KAAK,QAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC7B,mBAAmB,GAAG,IAAI,CAAC;YAC/B,CAAC;YAED,+DAA+D;YAC/D,gEAAgE;YAChE,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACvB,MAAM,cAAc,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAA8B,CAAC;gBAC3F,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;oBAC/B,OAAO,cAAc,CAAC;gBAC1B,CAAC;YACL,CAAC;YAED,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAA8B,CAAC;YAC7E,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO,OAAO,CAAC;YACnB,CAAC;QACL,CAAC;QAED,OAAO,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IAC/B,CAAC;IAEO,eAAe,CAAC,IAAO,EAAE,cAAsB,EAAE,gBAA4B;;QACjF,sFAAsF;QACtF,IAAI,IAAI,CAAC,IAAI,KAAK,SAAE,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACxC,OAAO,CAAC,CAAC;QACb,CAAC;QACD,yGAAyG;QACzG,4GAA4G;QAC5G,IAAI,IAAI,CAAC,IAAI,KAAK,SAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC/C,uFAAuF;YACvF,MAAM,IAAI,GAAG,IAAkC,CAAC;YAChD,MAAM,MAAM,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,UAAU,0CAAE,MAAM,0CAAE,UAAU,mCAAI,EAAE,CAAC;YACzD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC7C,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;gBACnB,OAAO,MAAM,CAAC,MAAM,GAAG,WAAW,GAAG,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,CAAC,CAAC;QACb,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,MAAM,IAAI,gBAAgB,KAAK,OAAO,EAAE,CAAC;YAC9D,OAAO,cAAc,CAAC;QAC1B,CAAC;QACD,iFAAiF;QACjF,oDAAoD;QACpD,iDAAiD;QACjD,iEAAiE;QACjE,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,SAAE,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1G,OAAO,cAAc,CAAC;QAC1B,CAAC;QACD,uDAAuD;QACvD,iEAAiE;QACjE,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,+EAA+E;YAC/E,uFAAuF;YACvF,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/B,OAAO,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC;YAC5C,CAAC;YACD,OAAO,cAAc,CAAC;QAC1B,CAAC;QACD,gDAAgD;QAChD,OAAO,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC;IAC5C,CAAC;IAEO,qBAAqB,CAAC,IAAO;;QACjC,+EAA+E;QAC/E,IAAI,IAAI,CAAC,MAAM,IAAI,IAAA,qBAAc,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5D,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,oEAAoE;QACpE,MAAM,YAAY,GAAG,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAE,CAAC,OAAO,CAAC,MAAM,CAAoC,CAAC;QACvH,IAAI,YAAY,IAAI,IAAA,2BAAoB,EAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5D,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,iBAAiB,CAAC,IAAO;QAC7B,gEAAgE;QAChE,uFAAuF;QACvF,+EAA+E;QAC/E,IAAI,IAAI,CAAC,IAAI,KAAK,SAAE,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAE,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC9E,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QAC5C,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,SAAE,CAAC,IAAI,CAAC,MAAM,CAAC;IAChF,CAAC;IAEO,iBAAiB,CAAC,IAAO;QAC7B,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAChB,KAAK,QAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YAClB,KAAK,QAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACjB,KAAK,SAAE,CAAC,IAAI,CAAC,MAAM,CAAC;YACpB,KAAK,SAAE,CAAC,IAAI,CAAC,WAAW,CAAC;YACzB,KAAK,QAAC,CAAC,IAAI,CAAC,YAAY;gBACpB,OAAO,OAAO,CAAC;YACnB,KAAK,SAAE,CAAC,IAAI,CAAC,eAAe;gBACxB,OAAO,OAAO,CAAC;YACnB;gBACI,OAAO,cAAc,CAAC;QAC9B,CAAC;IACL,CAAC;IAEO,2BAA2B,CAAC,MAAc;;QAC9C,oFAAoF;QACpF,2DAA2D;QAC3D,8GAA8G;QAC9G,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;YAClD,MAAM,IAAI,GAAG,MAAC,CAAC,CAAC,KAAa,0CAAE,IAAI,CAAC;YACpC,oFAAoF;YACpF,IAAI,CAAC,WAAW,IAAI,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACxC,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,IAAI,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACzB,WAAW,GAAG,IAAI,CAAC;YACvB,CAAC;YACD,4CAA4C;YAC5C,IAAI,WAAW,IAAI,IAAI,IAAI,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnD,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEc,SAAS,CAAC,IAAO,EAAE,EAAK;;;YACnC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC1D,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACjD,CAAC;YAED,6FAA6F;YAC7F,gFAAgF;YAChF,sGAAsG;YACtG,MAAM,oBAAoB,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAA8B,CAAC;YACnH,MAAM,sBAAsB,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YACjF,IAAI,oBAAoB,KAAK,SAAS,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAChE,MAAM,CAAC,aAAa,EAAE,iBAAiB,CAAC,GAAG,oBAAoB,CAAC;gBAChE,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAkB,CAAC,CAAC;YAC7H,CAAC;YAED,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAA8B,CAAC;YAC7F,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC;YAE/B,0FAA0F;YAC1F,6EAA6E;YAC7E,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAA8B,CAAC;YACrG,IAAI,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxE,MAAM,EAAE,GAAG,IAA0B,CAAC;gBACtC,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzD,wEAAwE;oBACxE,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;gBACjC,CAAC;YACL,CAAC;YAED,IAAI,MAAM,GAAG,IAAI,CAAC;YAClB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAE9C,iFAAiF;YACjF,MAAM,YAAY,GAAG,MAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,OAAO,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAE,CAAC,OAAO,CAAC,MAAM,CAAoC,CAAC;YACzH,IAAI,YAAY,IAAI,IAAA,2BAAoB,EAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5D,MAAM,gBAAgB,GAAG,IAAA,2BAAoB,EAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBAC9E,IAAI,gBAAgB,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;oBAC3C,MAAM,GAAG,IAAA,eAAO,EAAC,MAAM,EAAE,KAAK,CAAC,EAAE;wBAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;wBACrF,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;4BAClB,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC;wBACxE,CAAC;oBACL,CAAC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;iBAAM,IAAI,MAAM,CAAC,MAAM,IAAI,IAAA,2BAAoB,EAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC9D,+DAA+D;gBAC/D,MAAM,gBAAgB,GAAG,IAAA,2BAAoB,EAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBACxE,IAAI,gBAAgB,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;oBACrC,MAAM,GAAG,IAAA,eAAO,EAAC,MAAM,EAAE,KAAK,CAAC,EAAE;wBAC7B,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC;oBACpC,CAAC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YAED,IAAI,MAAM,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC/B,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAiB,EAAE,QAAQ,CAAC,CAAC;YACjE,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;gBACjE,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAmB,EAAE,QAAQ,CAAC,CAAC;YACzE,CAAC;YAED,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;IAEO,cAAc;QAClB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QAC5C,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,SAAE,CAAC,IAAI,CAAC,MAAM,CAAC;IAChF,CAAC;IAEO,uBAAuB,CAAC,OAAkB,EAAE,QAAgB;QAChE,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9D,OAAO,OAAO,CAAC;QACnB,CAAC;QAED,uFAAuF;QACvF,6DAA6D;QAC7D,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAA8B,CAAC;QAC3G,MAAM,YAAY,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAG,CAAC,CAAC,CAAC;QACxC,MAAM,WAAW,GAAG,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAEpF,qEAAqE;QACrE,oFAAoF;QACpF,2EAA2E;QAC3E,kDAAkD;QAClD,MAAM,aAAa,GAAG,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC;QAEjD,0DAA0D;QAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACV,2CAA2C;gBAC3C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtB,SAAS;YACb,CAAC;YAED,MAAM,OAAO,GAAG,IAAA,yBAAkB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAE7C,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;gBACjB,yCAAyC;gBACzC,IAAI,WAAW,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxC,kFAAkF;oBAClF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,YAAa,CAAC,CAAC,CAAC;gBAClD,CAAC;qBAAM,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9B,iEAAiE;oBACjE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACpB,CAAC;qBAAM,CAAC;oBACJ,6DAA6D;oBAC7D,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC;gBAClD,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,uCAAuC;gBACvC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,CAAC;YAC5D,CAAC;QACL,CAAC;QAED,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,qBAAqB,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC;YAChD,OAAO,OAAO,CAAC;QACnB,CAAC;QACD,OAAO,IAAA,eAAO,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YAC5B,KAAK,CAAC,WAAW,GAAG,qBAAqB,CAAC;QAC9C,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,mBAAmB,CAAC,OAAkB;QAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QAC9C,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,SAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC7D,MAAM,GAAG,GAAG,YAAY,CAAC,KAAgB,CAAC;YAC1C,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACxD,2EAA2E;gBAC3E,OAAO,SAAS,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,OAAO,IAAK,SAAuB,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;YAC3F,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,iBAAiB,CAAC,KAAc,EAAE,QAAgB;QACtD,MAAM,eAAe,GAAG,IAAA,qBAAc,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,IAAA,eAAO,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE;YAC1B,KAAK,CAAC,GAAG,GAAG,IAAA,4BAAqB,EAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,IAAA,oCAA6B,EAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvH,CAAC,CAAC,CAAC;IACP,CAAC;IAEY,cAAc,CAAc,SAAyB,EAAE,CAAI;;YACpE,mCAAmC;YACnC,IAAI,CAAC,MAAM,GAAG,IAAI,aAAM,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAEjD,yCAAyC;YACzC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAEzB,yEAAyE;YACzE,IAAI,GAAG,GAAG,CAAC,MAAM,IAAA,sBAAY,EAAiB,SAAS,EAAE,CAAM,KAAK,EAAC,EAAE;gBACnE,KAAK,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACzD,KAAK,CAAC,QAA+B,GAAG,MAAM,IAAA,eAAQ,EAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC9G,KAAK,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC,CAAA,CAAC,CAAE,CAAC;YAEL,yCAAyC;YACzC,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;YAEnC,iBAAiB;YACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC;YAElC,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;IAEO,iBAAiB;;QACrB,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,eAAe,CAA8B,CAAC;QACrG,MAAM,CAAC,QAAQ,CAAC,GAAG,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,cAAc,CAAkB,CAAC,CAAC;IAC3F,CAAC;IAEO,kBAAkB,CAAc,SAAyB;;QAC7D,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,eAAe,CAA8B,CAAC;QACrG,MAAM,CAAC,YAAY,CAAC,GAAG,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QAE5D,6EAA6E;QAC7E,oEAAoE;QACpE,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,eAAe,GAAG,IAAA,qBAAc,EAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAChG,IAAI,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,OAAO,IAAA,eAAO,EAAC,SAAS,EAAE,KAAK,CAAC,EAAE;oBAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC5D,SAAS,CAAC,KAAK,GAAG,IAAA,4BAAqB,EAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,IAAA,oCAA6B,EAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBACvI,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAEY,eAAe,CACxB,IAAqB,EACrB,CAAI;;YAEJ,oCAAoC;YACpC,IAAI,CAAC,MAAM,GAAG,IAAI,aAAM,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAE5C,yCAAyC;YACzC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAE9B,yEAAyE;YACzE,IAAI,GAAG,GAAG,MAAM,IAAA,sBAAY,EAAkB,IAAI,EAAE,CAAM,KAAK,EAAC,EAAE;gBAC9D,KAAK,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACrD,IAAI,IAAA,aAAM,EAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;oBACtB,KAAK,CAAC,OAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACpE,CAAC;qBAAM,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC9B,KAAK,CAAC,OAAmB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACxE,CAAC;gBACD,KAAK,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC7D,CAAC,CAAA,CAAC,CAAC;YAEH,yCAAyC;YACzC,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAEpC,iBAAiB;YACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC;YAElC,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;IAEO,kBAAkB,CAAoD,IAAqB;;QAC/F,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,eAAe,CAA8B,CAAC;QACrG,MAAM,CAAC,YAAY,EAAE,gBAAgB,CAAC,GAAG,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QAC9E,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEzD,mFAAmF;QACnF,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,KAAK,CAAC;QAC9C,MAAM,WAAW,GAAG,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,MAAK,QAAC,CAAC,IAAI,CAAC,MAAM,IAAI,gBAAgB,KAAK,OAAO,CAAC;QAExF,wDAAwD;QACxD,IAAI,QAAQ,GAAG,YAAY,CAAC;QAC5B,IAAI,UAAU,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7B,QAAQ,GAAG,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,cAAc,CAAkB,CAAC,CAAC;QACvF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACvD,CAAC;IAEO,mBAAmB,CACvB,IAAiC;;QAEjC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrB,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAY,mCAAI,KAAK,CAAC;QAC9E,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,+FAA+F;QAC/F,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAA8B,CAAC;QACvF,MAAM,CAAC,YAAY,CAAC,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QACtD,OAAO,IAAA,eAAO,EAAC,IAAI,EAAE,KAAK,CAAC,EAAE;YACzB,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,IAAA,oCAA6B,EAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;QACtH,CAAC,CAAC,CAAC;IACP,CAAC;IAEY,gBAAgB,CACzB,KAAuB,EACvB,CAAI;;YAEJ,qCAAqC;YACrC,IAAI,CAAC,MAAM,GAAG,IAAI,aAAM,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAE7C,sFAAsF;YACtF,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAEhC,yEAAyE;YACzE,IAAI,GAAG,GAAG,MAAM,IAAA,sBAAY,EAAmB,KAAK,EAAE,CAAM,KAAK,EAAC,EAAE;gBAChE,IAAI,IAAA,aAAM,EAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,OAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACrE,CAAC;gBACD,KAAK,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,KAAK,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC9D,CAAC,CAAA,CAAC,CAAC;YAEH,iBAAiB;YACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC;YAElC,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,MAAK,SAAS,EAAE,CAAC;gBAC7B,OAAO,SAAS,CAAC;YACrB,CAAC;YACD,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;IAEO,mBAAmB,CAAwB,KAAuB;;QACtE,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,eAAe,CAA8B,CAAC;QACrG,MAAM,CAAC,YAAY,EAAE,gBAAgB,CAAC,GAAG,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QAE9E,yFAAyF;QACzF,8DAA8D;QAC9D,sFAAsF;QACtF,MAAM,oBAAoB,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAA8B,CAAC;QACnH,MAAM,WAAW,GAAG,MAAC,KAAK,CAAC,OAAe,0CAAE,IAAI,CAAC;QACjD,MAAM,YAAY,GAAG,WAAW,KAAK,QAAC,CAAC,IAAI,CAAC,MAAM,CAAC;QAEnD,IAAI,oBAAoB,KAAK,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC;YACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;YACvE,0EAA0E;YAC1E,OAAO;QACX,CAAC;QAED,2FAA2F;QAC3F,MAAM,qBAAqB,GAAG,MAAA,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,KAAK,0CAAE,IAAI,CAAC;QAC9D,MAAM,2BAA2B,GAAG,qBAAqB,KAAK,QAAC,CAAC,IAAI,CAAC,WAAW;YAC5E,WAAW,KAAK,QAAC,CAAC,IAAI,CAAC,MAAM,CAAC;QAElC,iFAAiF;QACjF,qGAAqG;QACrG,MAAM,wBAAwB,GAAG,WAAW,KAAK,QAAC,CAAC,IAAI,CAAC,aAAa;YACjE,qBAAqB,KAAK,QAAC,CAAC,IAAI,CAAC,oBAAoB;YACrD,CAAC,MAAA,MAAA,MAAC,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,KAAgC,0CAAE,kBAAkB,0CAAE,MAAM,mCAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAEjG,IAAI,QAAQ,GAAG,YAAY,CAAC;QAC5B,IAAI,CAAC,2BAA2B,IAAI,CAAC,wBAAwB,IAAI,gBAAgB,KAAK,OAAO,IAAI,IAAA,aAAM,EAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,OAAY,CAAC,EAAE,CAAC;YACvK,QAAQ,GAAG,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC;YAC1C,sEAAsE;YACtE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAY,CAAC;YACnC,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChC,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;YACrE,CAAC;QACL,CAAC;aAAM,IAAI,IAAA,aAAM,EAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,OAAY,CAAC,EAAE,CAAC;YAClF,gFAAgF;YAChF,MAAM,kBAAkB,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,0CAAE,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAuB,CAAC;YACxG,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;gBACnC,QAAQ,GAAG,kBAAkB,CAAC;YAClC,CAAC;QACL,CAAC;QAED,2EAA2E;QAC3E,gGAAgG;QAChG,MAAM,UAAU,GAAe,2BAA2B,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC;QACtF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAkB,CAAC,CAAC;IACvF,CAAC;IAED;;;OAGG;IACK,eAAe,CAAC,OAAU;;QAC9B,kCAAkC;QAClC,IAAI,IAAA,oBAAU,EAAC,OAAO,EAAE,SAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,yEAAyE;QACzE,IAAI,OAAO,CAAC,IAAI,KAAK,SAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC9C,MAAM,UAAU,GAAG,OAAgC,CAAC;YACpD,MAAM,WAAW,GAAG,MAAA,UAAU,CAAC,IAAI,0CAAE,OAAO,CAAC;YAC7C,IAAI,IAAA,oBAAU,EAAC,WAAW,EAAE,SAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7C,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEK,KAAK,CAAc,IAAU,EAAE,CAAI,EAAE,MAAe;;;;;;YACtD,IAAI,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,iBAAiB,CAAC,MAAM,CAAC,KAAI,IAAI,EAAE,CAAC;gBACjD,OAAO,IAAS,CAAC;YACrB,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACT,IAAI,CAAC,MAAM,GAAG,IAAI,aAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACvC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAChC,CAAC;YAED,OAAO,MAAM,OAAM,KAAK,YAAC,IAAI,EAAE,CAAC,CAAM,CAAC;QAC3C,CAAC;KAAA;IAEO,oBAAoB;QACxB,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,YAAgC,CAAC;QACrC,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;YAC/C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;YAElB,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;gBACrD,MAAM,EAAE,GAAG,IAAA,qBAAc,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBACpC,MAAM,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACjC,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;oBACb,YAAY,GAAG,CAAC,CAAC;oBACjB,YAAY,GAAG,EAAE,CAAC,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC;gBACvC,CAAC;YACL,CAAC;YAED,IAAI,CAAC,CAAC,IAAI,KAAK,SAAE,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrC,IAAI,CAAC,YAAY,EAAE,CAAC;oBAChB,YAAY,GAAG,CAAC,CAAC;oBACjB,YAAY,GAAG,CAAC,CAAC;gBACrB,CAAC;gBACD,MAAM;YACV,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC9B,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACnB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;gBAAE,SAAS;YAErC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC;YAChC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAChB,IAAI,CAAC,KAAK,YAAY,EAAE,CAAC;gBACrB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAkB,CAAC,CAAC;YAChG,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC;QAC9B,CAAC;IACL,CAAC;IAEO,aAAa,CAAC,CAAM;QACxB,OAAO,IAAA,aAAM,EAAC,CAAC,CAAC;YACZ,CAAC,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,SAAS;YAC3B,CAAC,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU;YAC5B,CAAC,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,WAAW,CAAC;IACtC,CAAC;CACJ;AAzpBD,sDAypBC"}
|
package/dist/version.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
8.69.0-20251210-
|
|
1
|
+
8.69.0-20251210-164937
|
package/package.json
CHANGED
|
@@ -63,14 +63,31 @@ export class TabsAndIndentsVisitor<P> extends JavaScriptVisitor<P> {
|
|
|
63
63
|
const mi = tree as J.MethodInvocation;
|
|
64
64
|
if (mi.select && mi.select.after.whitespace.includes("\n")) {
|
|
65
65
|
// This MethodInvocation has a chained method call after it
|
|
66
|
-
// Store the
|
|
66
|
+
// Store the BASE indent context in "chainedIndentContext"
|
|
67
67
|
// This will be propagated down and used when we reach the chain's innermost element
|
|
68
|
-
const
|
|
69
|
-
|
|
70
|
-
//
|
|
71
|
-
//
|
|
72
|
-
|
|
73
|
-
|
|
68
|
+
const [parentIndent, parentIndentKind] = this.getParentIndentContext(cursor);
|
|
69
|
+
|
|
70
|
+
// If this chain-start itself is on a new line and we're in continuation context,
|
|
71
|
+
// the base indent includes continuation.
|
|
72
|
+
// BUT if parentIndentKind is 'align', we're likely in a Block child context where
|
|
73
|
+
// the parent already set the correct indent - don't add extra continuation.
|
|
74
|
+
const prefixHasNewline = this.prefixContainsNewline(tree);
|
|
75
|
+
let baseIndent = parentIndent;
|
|
76
|
+
if (prefixHasNewline && parentIndentKind !== 'align') {
|
|
77
|
+
baseIndent += this.indentSize;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// If we're inside a Lambda expression body that's inside a Container (like method arguments),
|
|
81
|
+
// add another continuation for the Container context
|
|
82
|
+
const isLambdaBodyContainer = this.isLambdaBodyInsideContainer(cursor);
|
|
83
|
+
if (prefixHasNewline && isLambdaBodyContainer) {
|
|
84
|
+
baseIndent += this.indentSize;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
cursor.messages.set("chainedIndentContext", [baseIndent, parentIndentKind] as IndentContext);
|
|
88
|
+
// For children (arguments), use continuation indent from base
|
|
89
|
+
cursor.messages.set("indentContext", [baseIndent + this.indentSize, parentIndentKind] as IndentContext);
|
|
90
|
+
|
|
74
91
|
return;
|
|
75
92
|
}
|
|
76
93
|
// Check if we're at the base of a chain (no select) and parent has chainedIndentContext
|
|
@@ -122,11 +139,23 @@ export class TabsAndIndentsVisitor<P> extends JavaScriptVisitor<P> {
|
|
|
122
139
|
private getParentIndentContext(cursor: Cursor): IndentContext {
|
|
123
140
|
// Walk up the cursor chain to find the nearest indent context
|
|
124
141
|
// We need to walk because intermediate nodes like RightPadded may not have context set
|
|
142
|
+
let passedScopeBoundary = false;
|
|
143
|
+
|
|
125
144
|
for (let c = cursor.parent; c != null; c = c.parent) {
|
|
145
|
+
// Check if we're passing a scope boundary (Lambda creates a new scope)
|
|
146
|
+
// After crossing a Lambda, we should ignore chainedIndentContext from outer scopes
|
|
147
|
+
const nodeKind = (c.value as any)?.kind;
|
|
148
|
+
if (nodeKind === J.Kind.Lambda) {
|
|
149
|
+
passedScopeBoundary = true;
|
|
150
|
+
}
|
|
151
|
+
|
|
126
152
|
// chainedIndentContext stores the original context - prefer it
|
|
127
|
-
|
|
128
|
-
if (
|
|
129
|
-
|
|
153
|
+
// BUT only if we haven't crossed a scope boundary (like Lambda)
|
|
154
|
+
if (!passedScopeBoundary) {
|
|
155
|
+
const chainedContext = c.messages.get("chainedIndentContext") as IndentContext | undefined;
|
|
156
|
+
if (chainedContext !== undefined) {
|
|
157
|
+
return chainedContext;
|
|
158
|
+
}
|
|
130
159
|
}
|
|
131
160
|
|
|
132
161
|
const context = c.messages.get("indentContext") as IndentContext | undefined;
|
|
@@ -219,6 +248,28 @@ export class TabsAndIndentsVisitor<P> extends JavaScriptVisitor<P> {
|
|
|
219
248
|
}
|
|
220
249
|
}
|
|
221
250
|
|
|
251
|
+
private isLambdaBodyInsideContainer(cursor: Cursor): boolean {
|
|
252
|
+
// Check if we're the DIRECT Lambda body (not inside a Block that's the Lambda body)
|
|
253
|
+
// AND that Lambda is inside a Container (method arguments)
|
|
254
|
+
// Walk up to find Lambda, but stop if we hit a Block (meaning we're inside a block body, not expression body)
|
|
255
|
+
let foundLambda = false;
|
|
256
|
+
for (let c = cursor.parent; c != null; c = c.parent) {
|
|
257
|
+
const kind = (c.value as any)?.kind;
|
|
258
|
+
// If we hit a Block before Lambda, we're inside the block body, not expression body
|
|
259
|
+
if (!foundLambda && kind === J.Kind.Block) {
|
|
260
|
+
return false;
|
|
261
|
+
}
|
|
262
|
+
if (kind === J.Kind.Lambda) {
|
|
263
|
+
foundLambda = true;
|
|
264
|
+
}
|
|
265
|
+
// After finding Lambda, check for Container
|
|
266
|
+
if (foundLambda && kind && kind === J.Kind.Container) {
|
|
267
|
+
return true;
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
return false;
|
|
271
|
+
}
|
|
272
|
+
|
|
222
273
|
override async postVisit(tree: J, _p: P): Promise<J | undefined> {
|
|
223
274
|
if (this.stopAfter != null && isScope(this.stopAfter, tree)) {
|
|
224
275
|
this.cursor?.root.messages.set("stop", true);
|
|
@@ -241,12 +292,12 @@ export class TabsAndIndentsVisitor<P> extends JavaScriptVisitor<P> {
|
|
|
241
292
|
let [myIndent] = indentContext;
|
|
242
293
|
|
|
243
294
|
// For chain-start MethodInvocations, the prefix contains whitespace before the chain BASE
|
|
244
|
-
// Use chainedIndentContext
|
|
295
|
+
// Use chainedIndentContext for the prefix - it already accounts for newlines
|
|
245
296
|
const chainedContext = this.cursor.messages.get("chainedIndentContext") as IndentContext | undefined;
|
|
246
297
|
if (chainedContext !== undefined && tree.kind === J.Kind.MethodInvocation) {
|
|
247
298
|
const mi = tree as J.MethodInvocation;
|
|
248
299
|
if (mi.select && mi.select.after.whitespace.includes("\n")) {
|
|
249
|
-
// This is a chain-start - use
|
|
300
|
+
// This is a chain-start - use the base indent from chainedIndentContext
|
|
250
301
|
myIndent = chainedContext[0];
|
|
251
302
|
}
|
|
252
303
|
}
|
|
@@ -521,8 +572,12 @@ export class TabsAndIndentsVisitor<P> extends JavaScriptVisitor<P> {
|
|
|
521
572
|
|
|
522
573
|
// Check if parent has chainedIndentContext - if so, this is the select of a method chain
|
|
523
574
|
// Propagate chainedIndentContext but do NOT set indentContext
|
|
575
|
+
// EXCEPTION: Do NOT propagate into Lambda bodies - arrow functions create a new scope
|
|
524
576
|
const parentChainedContext = this.cursor.parent?.messages.get("chainedIndentContext") as IndentContext | undefined;
|
|
525
|
-
|
|
577
|
+
const elementKind = (right.element as any)?.kind;
|
|
578
|
+
const isLambdaBody = elementKind === J.Kind.Lambda;
|
|
579
|
+
|
|
580
|
+
if (parentChainedContext !== undefined && !isLambdaBody) {
|
|
526
581
|
this.cursor.messages.set("chainedIndentContext", parentChainedContext);
|
|
527
582
|
// Do NOT set indentContext - child elements will use chainedIndentContext
|
|
528
583
|
return;
|
|
@@ -530,7 +585,6 @@ export class TabsAndIndentsVisitor<P> extends JavaScriptVisitor<P> {
|
|
|
530
585
|
|
|
531
586
|
// Check if Parentheses wraps a Binary expression - if so, let Binary handle its own indent
|
|
532
587
|
const rightPaddedParentKind = this.cursor.parent?.value?.kind;
|
|
533
|
-
const elementKind = (right.element as any)?.kind;
|
|
534
588
|
const isParenthesesWrappingBinary = rightPaddedParentKind === J.Kind.Parentheses &&
|
|
535
589
|
elementKind === J.Kind.Binary;
|
|
536
590
|
|