@openrewrite/rewrite 8.66.0-20251101-165148 → 8.66.0-20251102-092007
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templating.d.ts","sourceRoot":"","sources":["../../src/javascript/templating.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAC,MAAM,EAAU,IAAI,EAAC,MAAM,IAAI,CAAC;AACxC,OAAO,
|
|
1
|
+
{"version":3,"file":"templating.d.ts","sourceRoot":"","sources":["../../src/javascript/templating.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,7 @@ const java_1 = require("../java");
|
|
|
37
37
|
const immer_1 = require("immer");
|
|
38
38
|
const comparator_1 = require("./comparator");
|
|
39
39
|
const dependency_workspace_1 = require("./dependency-workspace");
|
|
40
|
+
const markers_1 = require("../markers");
|
|
40
41
|
const uuid_1 = require("../uuid");
|
|
41
42
|
/**
|
|
42
43
|
* Cache for compiled templates and patterns.
|
|
@@ -109,6 +110,111 @@ class CaptureMarker {
|
|
|
109
110
|
this.id = (0, uuid_1.randomId)();
|
|
110
111
|
}
|
|
111
112
|
}
|
|
113
|
+
/**
|
|
114
|
+
* A comparator for pattern matching that is lenient about optional properties.
|
|
115
|
+
* Allows patterns without type annotations to match actual code with type annotations.
|
|
116
|
+
* Uses semantic comparison to match semantically equivalent code (e.g., isDate() and util.isDate()).
|
|
117
|
+
*/
|
|
118
|
+
class PatternMatchingComparator extends comparator_1.JavaScriptSemanticComparatorVisitor {
|
|
119
|
+
constructor(matcher) {
|
|
120
|
+
super();
|
|
121
|
+
this.matcher = matcher;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Creates a wildcard identifier that will match any AST node during comparison.
|
|
125
|
+
* The identifier has a CaptureMarker which causes it to match anything without storing the result.
|
|
126
|
+
*
|
|
127
|
+
* @param captureName The name for the capture marker (for debugging purposes)
|
|
128
|
+
* @returns A wildcard identifier
|
|
129
|
+
*/
|
|
130
|
+
createWildcardIdentifier(captureName) {
|
|
131
|
+
return {
|
|
132
|
+
id: (0, uuid_1.randomId)(),
|
|
133
|
+
kind: java_1.J.Kind.Identifier,
|
|
134
|
+
prefix: java_1.emptySpace,
|
|
135
|
+
markers: Object.assign(Object.assign({}, markers_1.emptyMarkers), { markers: [new CaptureMarker(captureName)] }),
|
|
136
|
+
annotations: [],
|
|
137
|
+
simpleName: '__wildcard__',
|
|
138
|
+
type: undefined,
|
|
139
|
+
fieldType: undefined
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
visit(j, p, parent) {
|
|
143
|
+
const _super = Object.create(null, {
|
|
144
|
+
visit: { get: () => super.visit }
|
|
145
|
+
});
|
|
146
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
147
|
+
// Check if the pattern node is a capture - this handles captures anywhere in the tree
|
|
148
|
+
if (PlaceholderUtils.isCapture(j)) {
|
|
149
|
+
const success = this.matcher.handleCapture(j, p);
|
|
150
|
+
if (!success) {
|
|
151
|
+
return this.abort(j);
|
|
152
|
+
}
|
|
153
|
+
return j;
|
|
154
|
+
}
|
|
155
|
+
if (!this.match) {
|
|
156
|
+
return j;
|
|
157
|
+
}
|
|
158
|
+
return _super.visit.call(this, j, p, parent);
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
visitVariableDeclarations(variableDeclarations, other) {
|
|
162
|
+
const _super = Object.create(null, {
|
|
163
|
+
visitVariableDeclarations: { get: () => super.visitVariableDeclarations }
|
|
164
|
+
});
|
|
165
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
166
|
+
if (!this.match || other.kind !== java_1.J.Kind.VariableDeclarations) {
|
|
167
|
+
return this.abort(variableDeclarations);
|
|
168
|
+
}
|
|
169
|
+
const otherVariableDeclarations = other;
|
|
170
|
+
// LENIENT: If pattern lacks typeExpression but target has one, add a wildcard capture to pattern
|
|
171
|
+
// This allows the pattern to match without requiring us to modify the target (which would corrupt captures)
|
|
172
|
+
if (!variableDeclarations.typeExpression && otherVariableDeclarations.typeExpression) {
|
|
173
|
+
variableDeclarations = (0, immer_1.produce)(variableDeclarations, draft => {
|
|
174
|
+
draft.typeExpression = this.createWildcardIdentifier('__wildcard_type__');
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
// Delegate to super implementation
|
|
178
|
+
return _super.visitVariableDeclarations.call(this, variableDeclarations, otherVariableDeclarations);
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
visitMethodDeclaration(methodDeclaration, other) {
|
|
182
|
+
const _super = Object.create(null, {
|
|
183
|
+
visitMethodDeclaration: { get: () => super.visitMethodDeclaration }
|
|
184
|
+
});
|
|
185
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
186
|
+
if (!this.match || other.kind !== java_1.J.Kind.MethodDeclaration) {
|
|
187
|
+
return this.abort(methodDeclaration);
|
|
188
|
+
}
|
|
189
|
+
const otherMethodDeclaration = other;
|
|
190
|
+
// LENIENT: If pattern lacks returnTypeExpression but target has one, add a wildcard capture to pattern
|
|
191
|
+
// This allows the pattern to match without requiring us to modify the target (which would corrupt captures)
|
|
192
|
+
if (!methodDeclaration.returnTypeExpression && otherMethodDeclaration.returnTypeExpression) {
|
|
193
|
+
methodDeclaration = (0, immer_1.produce)(methodDeclaration, draft => {
|
|
194
|
+
draft.returnTypeExpression = this.createWildcardIdentifier('__wildcard_return_type__');
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
// Delegate to super implementation
|
|
198
|
+
return _super.visitMethodDeclaration.call(this, methodDeclaration, otherMethodDeclaration);
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
hasSameKind(j, other) {
|
|
202
|
+
return super.hasSameKind(j, other) ||
|
|
203
|
+
(j.kind == java_1.J.Kind.Identifier && PlaceholderUtils.isCapture(j));
|
|
204
|
+
}
|
|
205
|
+
visitIdentifier(identifier, other) {
|
|
206
|
+
const _super = Object.create(null, {
|
|
207
|
+
visitIdentifier: { get: () => super.visitIdentifier }
|
|
208
|
+
});
|
|
209
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
210
|
+
if (PlaceholderUtils.isCapture(identifier)) {
|
|
211
|
+
const success = this.matcher.handleCapture(identifier, other);
|
|
212
|
+
return success ? identifier : this.abort(identifier);
|
|
213
|
+
}
|
|
214
|
+
return _super.visitIdentifier.call(this, identifier, other);
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
}
|
|
112
218
|
class CaptureImpl {
|
|
113
219
|
constructor(name) {
|
|
114
220
|
this.name = name;
|
|
@@ -270,23 +376,11 @@ class Matcher {
|
|
|
270
376
|
if (pattern.kind !== target.kind) {
|
|
271
377
|
return false;
|
|
272
378
|
}
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
visitIdentifier(identifier, other) {
|
|
279
|
-
const _super = Object.create(null, {
|
|
280
|
-
visitIdentifier: { get: () => super.visitIdentifier }
|
|
281
|
-
});
|
|
282
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
283
|
-
return this.matchesParameter(identifier, other) ? identifier : yield _super.visitIdentifier.call(this, identifier, other);
|
|
284
|
-
});
|
|
285
|
-
}
|
|
286
|
-
matchesParameter(identifier, other) {
|
|
287
|
-
return PlaceholderUtils.isCapture(identifier) && matcher.handleCapture(identifier, other);
|
|
288
|
-
}
|
|
289
|
-
}).compare(pattern, target));
|
|
379
|
+
// Use the pattern matching comparator which is lenient about optional properties
|
|
380
|
+
const comparator = new PatternMatchingComparator({
|
|
381
|
+
handleCapture: (p, t) => this.handleCapture(p, t)
|
|
382
|
+
});
|
|
383
|
+
return yield comparator.compare(pattern, target);
|
|
290
384
|
});
|
|
291
385
|
}
|
|
292
386
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templating.js","sourceRoot":"","sources":["../../src/javascript/templating.ts"],"names":[],"mappings":";;;;;;;;;;;;AA4JA,0BAKC;AA0ND,0BAMC;AAoHD,4BAQC;AAomBD,0BAWC;AA5mCD;;;;;;;;;;;;;;GAcG;AACH,wBAAqB;AACrB,qCAA0C;AAC1C,uCAA4C;AAC5C,0BAAwC;AACxC,kCAA0B;AAC1B,iCAA8B;AAC9B,6CAAiE;AACjE,iEAA2D;AAE3D,kCAAiC;AAEjC;;;GAGG;AACH,MAAM,aAAa;IAAnB;QACY,UAAK,GAAG,IAAI,GAAG,EAA8B,CAAC;IAsE1D,CAAC;IApEG;;OAEG;IACK,WAAW,CACf,cAAsB,EACtB,QAAmB,EACnB,OAAiB,EACjB,YAAoC;QAEpC,wEAAwE;QACxE,MAAM,WAAW,GAAG,cAAc,CAAC;QAEnC,gBAAgB;QAChB,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAExD,UAAU;QACV,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAErC,eAAe;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;QAEnD,OAAO,GAAG,WAAW,KAAK,WAAW,KAAK,UAAU,KAAK,OAAO,EAAE,CAAC;IACvE,CAAC;IAED;;OAEG;IACG,UAAU,CACZ,cAAsB,EACtB,QAAmB,EACnB,OAAiB,EACjB,YAAoC;;YAEpC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;YAE9E,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,EAAE,EAAE,CAAC;gBACL,OAAO,EAAE,CAAC;YACd,CAAC;YAED,gDAAgD;YAChD,oEAAoE;YACpE,oEAAoE;YACpE,IAAI,YAAgC,CAAC;YACrC,IAAI,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvD,YAAY,GAAG,MAAM,0CAAmB,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;YAChF,CAAC;YAED,+CAA+C;YAC/C,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC;gBACzC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,cAAc;gBAC5C,CAAC,CAAC,cAAc,CAAC;YAErB,yDAAyD;YACzD,MAAM,MAAM,GAAG,IAAI,yBAAgB,CAAC,EAAC,UAAU,EAAE,YAAY,EAAC,CAAC,CAAC;YAChE,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,EAAC,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAC,CAAC,CAAC;YAC3F,EAAE,GAAG,CAAC,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,KAA2B,CAAC;YAE/D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxB,OAAO,EAAE,CAAC;QACd,CAAC;KAAA;IAED;;OAEG;IACH,KAAK;QACD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;CACJ;AAED,wBAAwB;AACxB,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;AAE1C;;;GAGG;AACH,MAAM,aAAa;IAIf,YACoB,WAAmB;QAAnB,gBAAW,GAAX,WAAW,CAAQ;QAJ9B,SAAI,GAAG,0CAA0C,CAAC;QAClD,OAAE,GAAG,IAAA,eAAQ,GAAE,CAAC;IAKzB,CAAC;CACJ;AAaD,MAAM,WAAW;IACb,YACoB,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAEhC,CAAC;CACJ;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,OAAO,CAAC,IAAa;IACjC,IAAI,IAAI,EAAE,CAAC;QACP,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,IAAI,WAAW,CAAC,WAAW,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,gEAAgE;AAChE,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC;AAE1B;;;;;;;;;;GAUG;AACU,QAAA,CAAC,GAAG,OAAO,CAAC;AAoBzB;;GAEG;AACH,MAAa,OAAO;IAGhB;;;OAGG;IACH,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACH,YACoB,aAAmC,EACnC,QAAmB;QADnB,kBAAa,GAAb,aAAa,CAAsB;QACnC,aAAQ,GAAR,QAAQ,CAAW;QAlB/B,aAAQ,GAAmB,EAAE,CAAC;IAoBtC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,OAAuB;QAC7B,IAAI,CAAC,QAAQ,mCAAQ,IAAI,CAAC,QAAQ,GAAK,OAAO,CAAE,CAAC;QACjD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACG,KAAK,CAAC,GAAM;;YACd,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;YACxC,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,CAAC;KAAA;CACJ;AApDD,0BAoDC;AAED,MAAa,WAAW;IACpB,YACqB,WAA2B,IAAI,GAAG,EAAE;QAApC,aAAQ,GAAR,QAAQ,CAA4B;IAEzD,CAAC;IAED,GAAG,CAAC,OAAyB;QACzB,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QAClE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;CACJ;AAVD,kCAUC;AAED;;GAEG;AACH,MAAM,OAAO;IAIT;;;;;OAKG;IACH,YACqB,OAAgB,EAChB,GAAM;QADN,YAAO,GAAP,OAAO,CAAS;QAChB,QAAG,GAAH,GAAG,CAAG;QAXV,aAAQ,GAAG,IAAI,GAAG,EAAa,CAAC;IAajD,CAAC;IAED;;;;OAIG;IACG,OAAO;;YACT,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACnB,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAC3C,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,IAAI,CAAC,OAAO,CAAC,QAAQ,EACrB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,EAClC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAC1C,CAAC;gBACF,IAAI,CAAC,UAAU,GAAG,MAAM,iBAAiB,CAAC,YAAY,EAAE,CAAC;YAC7D,CAAC;YAED,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,CAAC;KAAA;IAED;;;;OAIG;IACH,MAAM;QACF,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IACW,SAAS,CAAC,OAAU,EAAE,MAAS;;YACzC,4CAA4C;YAC5C,IAAI,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtC,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC/C,CAAC;YAED,oCAAoC;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC/B,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC;YACrB,OAAO,MAAM,CAAC,CAAC,IAAI,KAAM,SAAQ,gDAAmC;gBACtD,WAAW,CAAC,CAAI,EAAE,KAAQ;oBAChC,OAAO,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,QAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAiB,EAAE,KAAK,CAAC,CAAC;gBACzH,CAAC;gBAEc,eAAe,CAAC,UAAwB,EAAE,KAAQ;;;;;wBAC7D,OAAO,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,OAAM,eAAe,YAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBAClH,CAAC;iBAAA;gBAEO,gBAAgB,CAAC,UAAwB,EAAE,KAAQ;oBACvD,OAAO,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC9F,CAAC;aACJ,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACjC,CAAC;KAAA;IAED;;;;;;OAMG;IACK,aAAa,CAAC,OAAU,EAAE,MAAS;QACvC,MAAM,WAAW,GAAG,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAE7D,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,OAAO,CAAC,OAA6B,EAAE,GAAG,QAA8B;IACpF,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,OAAO,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC,EAAE,IAAI,GAAG,EAAmB,CAAC,CAAC;IAC/B,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAE,CAAC,CAAC,CAAC;AAC5G,CAAC;AAQD,IAAU,eAAe,CASxB;AATD,WAAU,eAAe;IAIrB,IAAY,IAIX;IAJD,WAAY,IAAI;QACZ,mCAAM,CAAA;QACN,iCAAK,CAAA;QACL,qCAAO,CAAA;IACX,CAAC,EAJW,IAAI,GAAJ,oBAAI,KAAJ,oBAAI,QAIf;AACL,CAAC,EATS,eAAe,KAAf,eAAe,QASxB;AA4BD;;;;;;;;;;;;;GAaG;AACH,MAAa,QAAQ;IAGjB;;;;;OAKG;IACH,YACqB,aAAmC,EACnC,UAAuB;QADvB,kBAAa,GAAb,aAAa,CAAsB;QACnC,eAAU,GAAV,UAAU,CAAa;QAVpC,YAAO,GAAoB,EAAE,CAAC;IAYtC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,OAAwB;QAC9B,IAAI,CAAC,OAAO,mCAAQ,IAAI,CAAC,OAAO,GAAK,OAAO,CAAE,CAAC;QAC/C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACG,KAAK,CAAC,MAAc,EAAE,IAAO,EAAE,MAAoC;;YACrE,OAAO,cAAc,CAAC,aAAa,CAC/B,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,UAAU,EACf,MAAM,EACN;gBACI,IAAI;gBACJ,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,OAAO;aACrC,EACD,MAAM,EACN,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,EAC1B,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAClC,CAAC;QACN,CAAC;KAAA;CACJ;AAvDD,4BAuDC;AAED,SAAgB,QAAQ,CAAC,OAA6B,EAAE,GAAG,UAA+B;IACtF,8FAA8F;IAC9F,MAAM,mBAAmB,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAC/C,uDAAuD;QACvD,OAAO,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;AACtD,CAAC;AAaD;;;GAGG;AACH,MAAM,cAAc;IAChB;;;;;;;;;;;OAWG;IACH,MAAM,CAAO,aAAa;6DACtB,aAAmC,EACnC,UAAuB,EACvB,MAAc,EACd,WAA4B,EAC5B,SAAsC,IAAI,GAAG,EAAE,EAC/C,UAAoB,EAAE,EACtB,eAAuC,EAAE;YAEzC,wDAAwD;YACxD,MAAM,cAAc,GAAG,cAAc,CAAC,mBAAmB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YAErF,oDAAoD;YACpD,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC;gBACzB,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,iDAAiD;YACjD,4DAA4D;YAC5D,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,CACrC,cAAc,EACd,EAAE,EAAE,iDAAiD;YACrD,OAAO,EACP,YAAY,CACf,CAAC;YAEF,oCAAoC;YACpC,IAAI,CAAC,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/C,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,4DAA4D;YAC5D,MAAM,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9C,IAAI,sBAAsB,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;gBACjD,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,uCAAuC;YACvC,MAAM,cAAc,GAAG,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC,OAAO,CAAC;YACrE,IAAI,SAAS,GAAG,cAAc,CAAC,IAAI,KAAK,KAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAChE,cAAyC,CAAC,UAAU,CAAC,CAAC;gBACvD,cAAc,CAAC;YAEnB,sDAAsD;YACtD,MAAM,GAAG,GAAG,IAAA,eAAO,EAAC,SAAS,EAAE,KAAK,CAAC,EAAE,GAAE,CAAC,CAAC,CAAC;YAE5C,4CAA4C;YAC5C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAqB,CAAC;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,WAAW,GAAG,GAAG,gBAAgB,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC;gBACnE,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,CAAC;YAED,2EAA2E;YAC3E,MAAM,OAAO,GAAG,IAAI,6BAA6B,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YACzE,MAAM,gBAAgB,GAAG,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAE,CAAC;YAE3D,wCAAwC;YACxC,OAAO,IAAI,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QAC1F,CAAC;KAAA;IAED;;;;;;OAMG;IACK,MAAM,CAAC,mBAAmB,CAC9B,aAAmC,EACnC,UAAuB;QAEvB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;gBACxB,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAClC,gDAAgD;gBAChD,+DAA+D;gBAC/D,IAAI,KAAK,YAAY,WAAW,IAAI,IAAA,UAAM,EAAC,KAAK,CAAC,EAAE,CAAC;oBAChD,MAAM,WAAW,GAAG,GAAG,gBAAgB,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC;oBACnE,MAAM,IAAI,WAAW,CAAC;gBAC1B,CAAC;qBAAM,CAAC;oBACJ,MAAM,IAAI,KAAK,CAAC;gBACpB,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,gBAAgB;IAIlB;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,IAAO;QACpB,4CAA4C;QAC5C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACxC,IAAI,MAAM,YAAY,aAAa,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,IAAO;QACzB,0BAA0B;QAC1B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACxC,IAAI,MAAM,YAAY,aAAa,EAAE,CAAC;gBAClC,OAAO,MAAM,CAAC,WAAW,CAAC;YAC9B,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,UAAkB;QAClC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,mDAAmD;QACnD,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,cAAc,UAAU,CAAC,EAAE,CAAC;YAC1D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC5D,OAAO,KAAK,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3C,CAAC;QAED,uEAAuE;QACvE,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO;YACH,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YACd,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;SAC3B,CAAC;IACN,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,IAAY,EAAE,cAAuB;QACtD,OAAO,cAAc;YACjB,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,cAAc,IAAI;YACrD,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC;IAC5C,CAAC;;AA5Ee,+BAAc,GAAG,YAAY,CAAC;AAC9B,mCAAkB,GAAG,gBAAgB,CAAC;AA8E1D;;GAEG;AACH,MAAM,6BAA8B,SAAQ,2BAAsB;IAC9D,YACqB,aAAqC,EACrC,SAAsC,IAAI,GAAG,EAAE;QAEhE,KAAK,EAAE,CAAC;QAHS,kBAAa,GAAb,aAAa,CAAwB;QACrC,WAAM,GAAN,MAAM,CAAyC;IAGpE,CAAC;IAEK,KAAK,CAAc,IAAO,EAAE,CAAM,EAAE,MAAe;;;;;YACrD,sCAAsC;YACtC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAClD,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;oBACvB,OAAO,WAAgB,CAAC;gBAC5B,CAAC;YACL,CAAC;YAED,iCAAiC;YACjC,OAAO,OAAM,KAAK,YAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE;QACxC,CAAC;KAAA;IAED;;;;;OAKG;IACK,aAAa,CAAC,IAAO;;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,IAAoB,CAAC;YACxC,OAAO,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QACjF,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAiB,CAAC;YAClC,OAAO,CAAA,MAAA,OAAO,CAAC,WAAW,0CAAE,UAAU,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,KAAI,KAAK,CAAC;QACzF,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACK,kBAAkB,CAAC,WAAc;QACrC,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAE7D,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACvF,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,mCAAmC;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,kEAAkE;QAClE,IAAI,KAAK,CAAC,KAAK,YAAY,WAAW,EAAE,CAAC;YACrC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtD,IAAI,WAAW,EAAE,CAAC;gBACd,OAAO,IAAA,eAAO,EAAC,WAAW,EAAE,KAAK,CAAC,EAAE;oBAChC,KAAK,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;oBACpC,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;gBACtC,CAAC,CAAC,CAAC;YACP,CAAC;YACD,kDAAkD;YAClD,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,yDAAyD;QACzD,IAAI,IAAA,UAAM,EAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACtB,sDAAsD;YACtD,OAAO,IAAA,eAAO,EAAC,KAAK,CAAC,KAAU,EAAE,KAAK,CAAC,EAAE;gBACrC,KAAK,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;gBACpC,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;YACtC,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACK,kBAAkB,CAAC,IAAO;QAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,OAAQ,IAAqB,CAAC,UAAU,CAAC;QAC7C,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACtC,OAAQ,IAAkB,CAAC,WAAW,IAAI,IAAI,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,eAAe;IACjB,YACqB,MAAc,EACd,WAA4B,EAC5B,GAAM,EACN,aAA0B,EAAE;QAH5B,WAAM,GAAN,MAAM,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAiB;QAC5B,QAAG,GAAH,GAAG,CAAG;QACN,eAAU,GAAV,UAAU,CAAkB;IAEjD,CAAC;IAED;;;;OAIG;IACG,KAAK;;YACP,MAAM,EAAC,GAAG,EAAC,GAAG,IAAI,CAAC,WAAW,CAAC;YAE/B,oDAAoD;YACpD,QAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAC;gBACjC,KAAK,mBAAmB;oBACpB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACpC,KAAK,kBAAkB;oBACnB,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACnC,KAAK,WAAW;oBACZ,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC/B;oBACI,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,EAAE,CAAC,CAAC;YACxD,CAAC;QACL,CAAC;KAAA;IAED;;;;OAIG;IACW,iBAAiB;;YAC3B,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,WAAW,CAAC;YAEhC,2DAA2D;YAC3D,OAAO,IAAI,CAAC,CAAC,CAAC,IAAA,eAAO,EAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE;gBACpC,KAAK,CAAC,MAAM,GAAI,IAAU,CAAC,MAAM,CAAC;YACtC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAClB,CAAC;KAAA;IAED;;;;OAIG;IACW,gBAAgB;;YAC1B,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,WAAW,CAAC;YAEhC,2DAA2D;YAC3D,OAAO,IAAA,eAAO,EAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE;gBAC7B,KAAK,CAAC,MAAM,GAAI,IAAU,CAAC,MAAM,CAAC;YACtC,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;IAED;;;;OAIG;IACW,YAAY;;YACtB,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,WAAW,CAAC;YAEhC,2DAA2D;YAC3D,OAAO,IAAA,eAAO,EAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE;gBAC7B,KAAK,CAAC,MAAM,GAAI,IAAU,CAAC,MAAM,CAAC;YACtC,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;CACJ;AAED;;;GAGG;AACH,MAAM,iBAAiB;IACnB;;;;;;;OAOG;IACH,YACqB,aAAmC,EACnC,QAAmB,EACnB,UAAoB,EAAE,EACtB,eAAuC,EAAE;QAHzC,kBAAa,GAAb,aAAa,CAAsB;QACnC,aAAQ,GAAR,QAAQ,CAAW;QACnB,YAAO,GAAP,OAAO,CAAe;QACtB,iBAAY,GAAZ,YAAY,CAA6B;IAE9D,CAAC;IAED;;;;OAIG;IACG,YAAY;;YACd,0CAA0C;YAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAElD,iDAAiD;YACjD,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,CACrC,cAAc,EACd,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,YAAY,CACpB,CAAC;YAEF,uCAAuC;YACvC,OAAO,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC;KAAA;IAED;;;;OAIG;IACK,mBAAmB;QACvB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACjD,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACjC,MAAM,IAAI,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3D,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACK,qBAAqB,CAAC,EAAsB;QAChD,2DAA2D;QAC3D,MAAM,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAElD,qEAAqE;QACrE,MAAM,cAAc,GAAG,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC;QAEpE,IAAI,SAAY,CAAC;QACjB,4EAA4E;QAC5E,IAAI,cAAc,CAAC,IAAI,KAAK,KAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACtD,SAAS,GAAI,cAAyC,CAAC,UAAU,CAAC;QACtE,CAAC;aAAM,CAAC;YACJ,yCAAyC;YACzC,SAAS,GAAG,cAAc,CAAC;QAC/B,CAAC;QAED,+CAA+C;QAC/C,OAAO,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;OAMG;IACK,oBAAoB,CAAC,GAAM;QAC/B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAO,CAAC;QAC/B,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,KAAK,CAAC,EAAE;YACxB,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACK,qBAAqB,CAAC,IAAS,EAAE,OAAiB;;QACtD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,OAAO;QACX,CAAC;QAED,kCAAkC;QAClC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAElB,sEAAsE;QACtE,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU,KAAI,MAAA,IAAI,CAAC,UAAU,0CAAE,UAAU,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAA,EAAE,CAAC;YAClG,MAAM,WAAW,GAAG,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACnE,IAAI,WAAW,EAAE,CAAC;gBACd,+BAA+B;gBAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAChB,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,gCAAgC,EAAE,EAAE,EAAE,IAAA,eAAQ,GAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;gBAC3F,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;oBACxB,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;gBAC9B,CAAC;gBAED,oBAAoB;gBACpB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;YACnE,CAAC;QACL,CAAC;QAED,mCAAmC;QACnC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;gBACxB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;gBACrE,CAAC;qBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACrD,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC/C,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AA0BD;;GAEG;AACH,MAAM,eAAe;IACjB,YACqB,MAAiB,EACjB,KAAe;QADf,WAAM,GAAN,MAAM,CAAW;QACjB,UAAK,GAAL,KAAK,CAAU;IAEpC,CAAC;IAEK,KAAK,CAAC,MAAc,EAAE,IAAO;;YAC/B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,KAAK,EAAE,CAAC;oBACR,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;oBAC3D,IAAI,MAAM,EAAE,CAAC;wBACT,OAAO,MAAM,CAAC;oBAClB,CAAC;gBACL,CAAC;YACL,CAAC;YAED,wCAAwC;YACxC,OAAO,SAAS,CAAC;QACrB,CAAC;KAAA;CACJ;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,SAAgB,OAAO,CACnB,SAA8B;IAE9B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,mDAAmD;IACnD,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC/F,CAAC;IAED,OAAO,IAAI,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AAC7G,CAAC"}
|
|
1
|
+
{"version":3,"file":"templating.js","sourceRoot":"","sources":["../../src/javascript/templating.ts"],"names":[],"mappings":";;;;;;;;;;;;AAkQA,0BAKC;AAiND,0BAMC;AAoHD,4BAQC;AAomBD,0BAWC;AAzsCD;;;;;;;;;;;;;;GAcG;AACH,wBAAqB;AACrB,qCAA0C;AAC1C,uCAA4C;AAC5C,0BAAwC;AACxC,kCAAsC;AACtC,iCAA8B;AAC9B,6CAAiE;AACjE,iEAA2D;AAC3D,wCAAgD;AAChD,kCAAiC;AAEjC;;;GAGG;AACH,MAAM,aAAa;IAAnB;QACY,UAAK,GAAG,IAAI,GAAG,EAA8B,CAAC;IAsE1D,CAAC;IApEG;;OAEG;IACK,WAAW,CACf,cAAsB,EACtB,QAAmB,EACnB,OAAiB,EACjB,YAAoC;QAEpC,wEAAwE;QACxE,MAAM,WAAW,GAAG,cAAc,CAAC;QAEnC,gBAAgB;QAChB,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAExD,UAAU;QACV,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAErC,eAAe;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;QAEnD,OAAO,GAAG,WAAW,KAAK,WAAW,KAAK,UAAU,KAAK,OAAO,EAAE,CAAC;IACvE,CAAC;IAED;;OAEG;IACG,UAAU,CACZ,cAAsB,EACtB,QAAmB,EACnB,OAAiB,EACjB,YAAoC;;YAEpC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;YAE9E,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,EAAE,EAAE,CAAC;gBACL,OAAO,EAAE,CAAC;YACd,CAAC;YAED,gDAAgD;YAChD,oEAAoE;YACpE,oEAAoE;YACpE,IAAI,YAAgC,CAAC;YACrC,IAAI,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvD,YAAY,GAAG,MAAM,0CAAmB,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;YAChF,CAAC;YAED,+CAA+C;YAC/C,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC;gBACzC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,cAAc;gBAC5C,CAAC,CAAC,cAAc,CAAC;YAErB,yDAAyD;YACzD,MAAM,MAAM,GAAG,IAAI,yBAAgB,CAAC,EAAC,UAAU,EAAE,YAAY,EAAC,CAAC,CAAC;YAChE,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,EAAC,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAC,CAAC,CAAC;YAC3F,EAAE,GAAG,CAAC,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,KAA2B,CAAC;YAE/D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxB,OAAO,EAAE,CAAC;QACd,CAAC;KAAA;IAED;;OAEG;IACH,KAAK;QACD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;CACJ;AAED,wBAAwB;AACxB,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;AAE1C;;;GAGG;AACH,MAAM,aAAa;IAIf,YACoB,WAAmB;QAAnB,gBAAW,GAAX,WAAW,CAAQ;QAJ9B,SAAI,GAAG,0CAA0C,CAAC;QAClD,OAAE,GAAG,IAAA,eAAQ,GAAE,CAAC;IAKzB,CAAC;CACJ;AAED;;;;GAIG;AACH,MAAM,yBAA0B,SAAQ,gDAAmC;IACvE,YAA6B,OAA8D;QACvF,KAAK,EAAE,CAAC;QADiB,YAAO,GAAP,OAAO,CAAuD;IAE3F,CAAC;IAED;;;;;;OAMG;IACK,wBAAwB,CAAC,WAAmB;QAChD,OAAO;YACH,EAAE,EAAE,IAAA,eAAQ,GAAE;YACd,IAAI,EAAE,QAAC,CAAC,IAAI,CAAC,UAAU;YACvB,MAAM,EAAE,iBAAU;YAClB,OAAO,kCACA,sBAAY,KACf,OAAO,EAAE,CAAC,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC,GAC5C;YACD,WAAW,EAAE,EAAE;YACf,UAAU,EAAE,cAAc;YAC1B,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,SAAS;SACvB,CAAC;IACN,CAAC;IAEc,KAAK,CAAc,CAAO,EAAE,CAAI,EAAE,MAAe;;;;;YAC5D,sFAAsF;YACtF,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAAM,CAAC,EAAE,CAAC;gBACrC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAM,EAAE,CAAC,CAAC,CAAC;gBACtD,IAAI,CAAC,OAAO,EAAE,CAAC;oBACX,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAM,CAAC;gBAC9B,CAAC;gBACD,OAAO,CAAM,CAAC;YAClB,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACd,OAAO,CAAM,CAAC;YAClB,CAAC;YAED,OAAO,OAAM,KAAK,YAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE;QACrC,CAAC;KAAA;IAEc,yBAAyB,CAAC,oBAA4C,EAAE,KAAQ;;;;;YAC3F,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC5D,OAAO,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;YAC5C,CAAC;YAED,MAAM,yBAAyB,GAAG,KAA+B,CAAC;YAElE,iGAAiG;YACjG,4GAA4G;YAC5G,IAAI,CAAC,oBAAoB,CAAC,cAAc,IAAI,yBAAyB,CAAC,cAAc,EAAE,CAAC;gBACnF,oBAAoB,GAAG,IAAA,eAAO,EAAC,oBAAoB,EAAE,KAAK,CAAC,EAAE;oBACzD,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,wBAAwB,CAAC,mBAAmB,CAAiB,CAAC;gBAC9F,CAAC,CAAC,CAAC;YACP,CAAC;YAED,mCAAmC;YACnC,OAAO,OAAM,yBAAyB,YAAC,oBAAoB,EAAE,yBAAyB,EAAE;QAC5F,CAAC;KAAA;IAEc,sBAAsB,CAAC,iBAAsC,EAAE,KAAQ;;;;;YAClF,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzD,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACzC,CAAC;YAED,MAAM,sBAAsB,GAAG,KAA4B,CAAC;YAE5D,uGAAuG;YACvG,4GAA4G;YAC5G,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,CAAC;gBACzF,iBAAiB,GAAG,IAAA,eAAO,EAAC,iBAAiB,EAAE,KAAK,CAAC,EAAE;oBACnD,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC,wBAAwB,CAAC,0BAA0B,CAAiB,CAAC;gBAC3G,CAAC,CAAC,CAAC;YACP,CAAC;YAED,mCAAmC;YACnC,OAAO,OAAM,sBAAsB,YAAC,iBAAiB,EAAE,sBAAsB,EAAE;QACnF,CAAC;KAAA;IAES,WAAW,CAAC,CAAI,EAAE,KAAQ;QAChC,OAAO,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC;YAC3B,CAAC,CAAC,CAAC,IAAI,IAAI,QAAC,CAAC,IAAI,CAAC,UAAU,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAAiB,CAAC,CAAC,CAAC;IAC1F,CAAC;IAEc,eAAe,CAAC,UAAwB,EAAE,KAAQ;;;;;YAC7D,IAAI,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;gBACzC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC9D,OAAO,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACzD,CAAC;YACD,OAAO,OAAM,eAAe,YAAC,UAAU,EAAE,KAAK,EAAE;QACpD,CAAC;KAAA;CACJ;AAaD,MAAM,WAAW;IACb,YACoB,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAEhC,CAAC;CACJ;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,OAAO,CAAC,IAAa;IACjC,IAAI,IAAI,EAAE,CAAC;QACP,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,IAAI,WAAW,CAAC,WAAW,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,gEAAgE;AAChE,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC;AAE1B;;;;;;;;;;GAUG;AACU,QAAA,CAAC,GAAG,OAAO,CAAC;AAoBzB;;GAEG;AACH,MAAa,OAAO;IAGhB;;;OAGG;IACH,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACH,YACoB,aAAmC,EACnC,QAAmB;QADnB,kBAAa,GAAb,aAAa,CAAsB;QACnC,aAAQ,GAAR,QAAQ,CAAW;QAlB/B,aAAQ,GAAmB,EAAE,CAAC;IAoBtC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,OAAuB;QAC7B,IAAI,CAAC,QAAQ,mCAAQ,IAAI,CAAC,QAAQ,GAAK,OAAO,CAAE,CAAC;QACjD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACG,KAAK,CAAC,GAAM;;YACd,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;YACxC,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,CAAC;KAAA;CACJ;AApDD,0BAoDC;AAED,MAAa,WAAW;IACpB,YACqB,WAA2B,IAAI,GAAG,EAAE;QAApC,aAAQ,GAAR,QAAQ,CAA4B;IAEzD,CAAC;IAED,GAAG,CAAC,OAAyB;QACzB,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QAClE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;CACJ;AAVD,kCAUC;AAED;;GAEG;AACH,MAAM,OAAO;IAIT;;;;;OAKG;IACH,YACqB,OAAgB,EAChB,GAAM;QADN,YAAO,GAAP,OAAO,CAAS;QAChB,QAAG,GAAH,GAAG,CAAG;QAXV,aAAQ,GAAG,IAAI,GAAG,EAAa,CAAC;IAajD,CAAC;IAED;;;;OAIG;IACG,OAAO;;YACT,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACnB,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAC3C,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,IAAI,CAAC,OAAO,CAAC,QAAQ,EACrB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,EAClC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAC1C,CAAC;gBACF,IAAI,CAAC,UAAU,GAAG,MAAM,iBAAiB,CAAC,YAAY,EAAE,CAAC;YAC7D,CAAC;YAED,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,CAAC;KAAA;IAED;;;;OAIG;IACH,MAAM;QACF,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IACW,SAAS,CAAC,OAAU,EAAE,MAAS;;YACzC,4CAA4C;YAC5C,IAAI,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtC,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC/C,CAAC;YAED,oCAAoC;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC/B,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,iFAAiF;YACjF,MAAM,UAAU,GAAG,IAAI,yBAAyB,CAAC;gBAC7C,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;aACpD,CAAC,CAAC;YACH,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACrD,CAAC;KAAA;IAED;;;;;;OAMG;IACK,aAAa,CAAC,OAAU,EAAE,MAAS;QACvC,MAAM,WAAW,GAAG,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAE7D,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,OAAO,CAAC,OAA6B,EAAE,GAAG,QAA8B;IACpF,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,OAAO,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC,EAAE,IAAI,GAAG,EAAmB,CAAC,CAAC;IAC/B,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAE,CAAC,CAAC,CAAC;AAC5G,CAAC;AAQD,IAAU,eAAe,CASxB;AATD,WAAU,eAAe;IAIrB,IAAY,IAIX;IAJD,WAAY,IAAI;QACZ,mCAAM,CAAA;QACN,iCAAK,CAAA;QACL,qCAAO,CAAA;IACX,CAAC,EAJW,IAAI,GAAJ,oBAAI,KAAJ,oBAAI,QAIf;AACL,CAAC,EATS,eAAe,KAAf,eAAe,QASxB;AA4BD;;;;;;;;;;;;;GAaG;AACH,MAAa,QAAQ;IAGjB;;;;;OAKG;IACH,YACqB,aAAmC,EACnC,UAAuB;QADvB,kBAAa,GAAb,aAAa,CAAsB;QACnC,eAAU,GAAV,UAAU,CAAa;QAVpC,YAAO,GAAoB,EAAE,CAAC;IAYtC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,OAAwB;QAC9B,IAAI,CAAC,OAAO,mCAAQ,IAAI,CAAC,OAAO,GAAK,OAAO,CAAE,CAAC;QAC/C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACG,KAAK,CAAC,MAAc,EAAE,IAAO,EAAE,MAAoC;;YACrE,OAAO,cAAc,CAAC,aAAa,CAC/B,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,UAAU,EACf,MAAM,EACN;gBACI,IAAI;gBACJ,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,OAAO;aACrC,EACD,MAAM,EACN,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,EAC1B,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAClC,CAAC;QACN,CAAC;KAAA;CACJ;AAvDD,4BAuDC;AAED,SAAgB,QAAQ,CAAC,OAA6B,EAAE,GAAG,UAA+B;IACtF,8FAA8F;IAC9F,MAAM,mBAAmB,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAC/C,uDAAuD;QACvD,OAAO,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;AACtD,CAAC;AAaD;;;GAGG;AACH,MAAM,cAAc;IAChB;;;;;;;;;;;OAWG;IACH,MAAM,CAAO,aAAa;6DACtB,aAAmC,EACnC,UAAuB,EACvB,MAAc,EACd,WAA4B,EAC5B,SAAsC,IAAI,GAAG,EAAE,EAC/C,UAAoB,EAAE,EACtB,eAAuC,EAAE;YAEzC,wDAAwD;YACxD,MAAM,cAAc,GAAG,cAAc,CAAC,mBAAmB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YAErF,oDAAoD;YACpD,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC;gBACzB,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,iDAAiD;YACjD,4DAA4D;YAC5D,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,CACrC,cAAc,EACd,EAAE,EAAE,iDAAiD;YACrD,OAAO,EACP,YAAY,CACf,CAAC;YAEF,oCAAoC;YACpC,IAAI,CAAC,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/C,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,4DAA4D;YAC5D,MAAM,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9C,IAAI,sBAAsB,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;gBACjD,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,uCAAuC;YACvC,MAAM,cAAc,GAAG,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC,OAAO,CAAC;YACrE,IAAI,SAAS,GAAG,cAAc,CAAC,IAAI,KAAK,KAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAChE,cAAyC,CAAC,UAAU,CAAC,CAAC;gBACvD,cAAc,CAAC;YAEnB,sDAAsD;YACtD,MAAM,GAAG,GAAG,IAAA,eAAO,EAAC,SAAS,EAAE,KAAK,CAAC,EAAE,GAAE,CAAC,CAAC,CAAC;YAE5C,4CAA4C;YAC5C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAqB,CAAC;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,WAAW,GAAG,GAAG,gBAAgB,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC;gBACnE,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,CAAC;YAED,2EAA2E;YAC3E,MAAM,OAAO,GAAG,IAAI,6BAA6B,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YACzE,MAAM,gBAAgB,GAAG,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAE,CAAC;YAE3D,wCAAwC;YACxC,OAAO,IAAI,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QAC1F,CAAC;KAAA;IAED;;;;;;OAMG;IACK,MAAM,CAAC,mBAAmB,CAC9B,aAAmC,EACnC,UAAuB;QAEvB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;gBACxB,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAClC,gDAAgD;gBAChD,+DAA+D;gBAC/D,IAAI,KAAK,YAAY,WAAW,IAAI,IAAA,UAAM,EAAC,KAAK,CAAC,EAAE,CAAC;oBAChD,MAAM,WAAW,GAAG,GAAG,gBAAgB,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC;oBACnE,MAAM,IAAI,WAAW,CAAC;gBAC1B,CAAC;qBAAM,CAAC;oBACJ,MAAM,IAAI,KAAK,CAAC;gBACpB,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,gBAAgB;IAIlB;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,IAAO;QACpB,4CAA4C;QAC5C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACxC,IAAI,MAAM,YAAY,aAAa,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,IAAO;QACzB,0BAA0B;QAC1B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACxC,IAAI,MAAM,YAAY,aAAa,EAAE,CAAC;gBAClC,OAAO,MAAM,CAAC,WAAW,CAAC;YAC9B,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,UAAkB;QAClC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,mDAAmD;QACnD,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,cAAc,UAAU,CAAC,EAAE,CAAC;YAC1D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC5D,OAAO,KAAK,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3C,CAAC;QAED,uEAAuE;QACvE,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO;YACH,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YACd,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;SAC3B,CAAC;IACN,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,IAAY,EAAE,cAAuB;QACtD,OAAO,cAAc;YACjB,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,cAAc,IAAI;YACrD,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC;IAC5C,CAAC;;AA5Ee,+BAAc,GAAG,YAAY,CAAC;AAC9B,mCAAkB,GAAG,gBAAgB,CAAC;AA8E1D;;GAEG;AACH,MAAM,6BAA8B,SAAQ,2BAAsB;IAC9D,YACqB,aAAqC,EACrC,SAAsC,IAAI,GAAG,EAAE;QAEhE,KAAK,EAAE,CAAC;QAHS,kBAAa,GAAb,aAAa,CAAwB;QACrC,WAAM,GAAN,MAAM,CAAyC;IAGpE,CAAC;IAEK,KAAK,CAAc,IAAO,EAAE,CAAM,EAAE,MAAe;;;;;YACrD,sCAAsC;YACtC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAClD,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;oBACvB,OAAO,WAAgB,CAAC;gBAC5B,CAAC;YACL,CAAC;YAED,iCAAiC;YACjC,OAAO,OAAM,KAAK,YAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE;QACxC,CAAC;KAAA;IAED;;;;;OAKG;IACK,aAAa,CAAC,IAAO;;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,IAAoB,CAAC;YACxC,OAAO,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QACjF,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAiB,CAAC;YAClC,OAAO,CAAA,MAAA,OAAO,CAAC,WAAW,0CAAE,UAAU,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,KAAI,KAAK,CAAC;QACzF,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACK,kBAAkB,CAAC,WAAc;QACrC,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAE7D,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACvF,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,mCAAmC;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,kEAAkE;QAClE,IAAI,KAAK,CAAC,KAAK,YAAY,WAAW,EAAE,CAAC;YACrC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtD,IAAI,WAAW,EAAE,CAAC;gBACd,OAAO,IAAA,eAAO,EAAC,WAAW,EAAE,KAAK,CAAC,EAAE;oBAChC,KAAK,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;oBACpC,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;gBACtC,CAAC,CAAC,CAAC;YACP,CAAC;YACD,kDAAkD;YAClD,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,yDAAyD;QACzD,IAAI,IAAA,UAAM,EAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACtB,sDAAsD;YACtD,OAAO,IAAA,eAAO,EAAC,KAAK,CAAC,KAAU,EAAE,KAAK,CAAC,EAAE;gBACrC,KAAK,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;gBACpC,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;YACtC,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACK,kBAAkB,CAAC,IAAO;QAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,OAAQ,IAAqB,CAAC,UAAU,CAAC;QAC7C,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACtC,OAAQ,IAAkB,CAAC,WAAW,IAAI,IAAI,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,eAAe;IACjB,YACqB,MAAc,EACd,WAA4B,EAC5B,GAAM,EACN,aAA0B,EAAE;QAH5B,WAAM,GAAN,MAAM,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAiB;QAC5B,QAAG,GAAH,GAAG,CAAG;QACN,eAAU,GAAV,UAAU,CAAkB;IAEjD,CAAC;IAED;;;;OAIG;IACG,KAAK;;YACP,MAAM,EAAC,GAAG,EAAC,GAAG,IAAI,CAAC,WAAW,CAAC;YAE/B,oDAAoD;YACpD,QAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAC;gBACjC,KAAK,mBAAmB;oBACpB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACpC,KAAK,kBAAkB;oBACnB,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACnC,KAAK,WAAW;oBACZ,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC/B;oBACI,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,EAAE,CAAC,CAAC;YACxD,CAAC;QACL,CAAC;KAAA;IAED;;;;OAIG;IACW,iBAAiB;;YAC3B,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,WAAW,CAAC;YAEhC,2DAA2D;YAC3D,OAAO,IAAI,CAAC,CAAC,CAAC,IAAA,eAAO,EAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE;gBACpC,KAAK,CAAC,MAAM,GAAI,IAAU,CAAC,MAAM,CAAC;YACtC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAClB,CAAC;KAAA;IAED;;;;OAIG;IACW,gBAAgB;;YAC1B,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,WAAW,CAAC;YAEhC,2DAA2D;YAC3D,OAAO,IAAA,eAAO,EAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE;gBAC7B,KAAK,CAAC,MAAM,GAAI,IAAU,CAAC,MAAM,CAAC;YACtC,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;IAED;;;;OAIG;IACW,YAAY;;YACtB,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,WAAW,CAAC;YAEhC,2DAA2D;YAC3D,OAAO,IAAA,eAAO,EAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE;gBAC7B,KAAK,CAAC,MAAM,GAAI,IAAU,CAAC,MAAM,CAAC;YACtC,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;CACJ;AAED;;;GAGG;AACH,MAAM,iBAAiB;IACnB;;;;;;;OAOG;IACH,YACqB,aAAmC,EACnC,QAAmB,EACnB,UAAoB,EAAE,EACtB,eAAuC,EAAE;QAHzC,kBAAa,GAAb,aAAa,CAAsB;QACnC,aAAQ,GAAR,QAAQ,CAAW;QACnB,YAAO,GAAP,OAAO,CAAe;QACtB,iBAAY,GAAZ,YAAY,CAA6B;IAE9D,CAAC;IAED;;;;OAIG;IACG,YAAY;;YACd,0CAA0C;YAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAElD,iDAAiD;YACjD,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,CACrC,cAAc,EACd,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,YAAY,CACpB,CAAC;YAEF,uCAAuC;YACvC,OAAO,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC;KAAA;IAED;;;;OAIG;IACK,mBAAmB;QACvB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACjD,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACjC,MAAM,IAAI,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3D,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACK,qBAAqB,CAAC,EAAsB;QAChD,2DAA2D;QAC3D,MAAM,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAElD,qEAAqE;QACrE,MAAM,cAAc,GAAG,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC;QAEpE,IAAI,SAAY,CAAC;QACjB,4EAA4E;QAC5E,IAAI,cAAc,CAAC,IAAI,KAAK,KAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACtD,SAAS,GAAI,cAAyC,CAAC,UAAU,CAAC;QACtE,CAAC;aAAM,CAAC;YACJ,yCAAyC;YACzC,SAAS,GAAG,cAAc,CAAC;QAC/B,CAAC;QAED,+CAA+C;QAC/C,OAAO,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;OAMG;IACK,oBAAoB,CAAC,GAAM;QAC/B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAO,CAAC;QAC/B,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,KAAK,CAAC,EAAE;YACxB,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACK,qBAAqB,CAAC,IAAS,EAAE,OAAiB;;QACtD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,OAAO;QACX,CAAC;QAED,kCAAkC;QAClC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAElB,sEAAsE;QACtE,IAAI,IAAI,CAAC,IAAI,KAAK,QAAC,CAAC,IAAI,CAAC,UAAU,KAAI,MAAA,IAAI,CAAC,UAAU,0CAAE,UAAU,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAA,EAAE,CAAC;YAClG,MAAM,WAAW,GAAG,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACnE,IAAI,WAAW,EAAE,CAAC;gBACd,+BAA+B;gBAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAChB,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,gCAAgC,EAAE,EAAE,EAAE,IAAA,eAAQ,GAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;gBAC3F,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;oBACxB,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;gBAC9B,CAAC;gBAED,oBAAoB;gBACpB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;YACnE,CAAC;QACL,CAAC;QAED,mCAAmC;QACnC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;gBACxB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;gBACrE,CAAC;qBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACrD,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC/C,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AA0BD;;GAEG;AACH,MAAM,eAAe;IACjB,YACqB,MAAiB,EACjB,KAAe;QADf,WAAM,GAAN,MAAM,CAAW;QACjB,UAAK,GAAL,KAAK,CAAU;IAEpC,CAAC;IAEK,KAAK,CAAC,MAAc,EAAE,IAAO;;YAC/B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,KAAK,EAAE,CAAC;oBACR,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;oBAC3D,IAAI,MAAM,EAAE,CAAC;wBACT,OAAO,MAAM,CAAC;oBAClB,CAAC;gBACL,CAAC;YACL,CAAC;YAED,wCAAwC;YACxC,OAAO,SAAS,CAAC;QACrB,CAAC;KAAA;CACJ;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,SAAgB,OAAO,CACnB,SAA8B;IAE9B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,mDAAmD;IACnD,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC/F,CAAC;IAED,OAAO,IAAI,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AAC7G,CAAC"}
|
package/dist/version.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
8.66.0-
|
|
1
|
+
8.66.0-20251102-092007
|
package/package.json
CHANGED
|
@@ -17,11 +17,11 @@ import {JS} from '.';
|
|
|
17
17
|
import {JavaScriptParser} from './parser';
|
|
18
18
|
import {JavaScriptVisitor} from './visitor';
|
|
19
19
|
import {Cursor, isTree, Tree} from '..';
|
|
20
|
-
import {J} from '../java';
|
|
20
|
+
import {emptySpace, J} from '../java';
|
|
21
21
|
import {produce} from "immer";
|
|
22
22
|
import {JavaScriptSemanticComparatorVisitor} from "./comparator";
|
|
23
23
|
import {DependencyWorkspace} from './dependency-workspace';
|
|
24
|
-
import {Marker} from '../markers';
|
|
24
|
+
import {emptyMarkers, Marker} from '../markers';
|
|
25
25
|
import {randomId} from '../uuid';
|
|
26
26
|
|
|
27
27
|
/**
|
|
@@ -118,6 +118,108 @@ class CaptureMarker implements Marker {
|
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
120
|
|
|
121
|
+
/**
|
|
122
|
+
* A comparator for pattern matching that is lenient about optional properties.
|
|
123
|
+
* Allows patterns without type annotations to match actual code with type annotations.
|
|
124
|
+
* Uses semantic comparison to match semantically equivalent code (e.g., isDate() and util.isDate()).
|
|
125
|
+
*/
|
|
126
|
+
class PatternMatchingComparator extends JavaScriptSemanticComparatorVisitor {
|
|
127
|
+
constructor(private readonly matcher: { handleCapture: (pattern: J, target: J) => boolean }) {
|
|
128
|
+
super();
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Creates a wildcard identifier that will match any AST node during comparison.
|
|
133
|
+
* The identifier has a CaptureMarker which causes it to match anything without storing the result.
|
|
134
|
+
*
|
|
135
|
+
* @param captureName The name for the capture marker (for debugging purposes)
|
|
136
|
+
* @returns A wildcard identifier
|
|
137
|
+
*/
|
|
138
|
+
private createWildcardIdentifier(captureName: string): J.Identifier {
|
|
139
|
+
return {
|
|
140
|
+
id: randomId(),
|
|
141
|
+
kind: J.Kind.Identifier,
|
|
142
|
+
prefix: emptySpace,
|
|
143
|
+
markers: {
|
|
144
|
+
...emptyMarkers,
|
|
145
|
+
markers: [new CaptureMarker(captureName)]
|
|
146
|
+
},
|
|
147
|
+
annotations: [],
|
|
148
|
+
simpleName: '__wildcard__',
|
|
149
|
+
type: undefined,
|
|
150
|
+
fieldType: undefined
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
override async visit<R extends J>(j: Tree, p: J, parent?: Cursor): Promise<R | undefined> {
|
|
155
|
+
// Check if the pattern node is a capture - this handles captures anywhere in the tree
|
|
156
|
+
if (PlaceholderUtils.isCapture(j as J)) {
|
|
157
|
+
const success = this.matcher.handleCapture(j as J, p);
|
|
158
|
+
if (!success) {
|
|
159
|
+
return this.abort(j) as R;
|
|
160
|
+
}
|
|
161
|
+
return j as R;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
if (!this.match) {
|
|
165
|
+
return j as R;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
return super.visit(j, p, parent);
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
override async visitVariableDeclarations(variableDeclarations: J.VariableDeclarations, other: J): Promise<J | undefined> {
|
|
172
|
+
if (!this.match || other.kind !== J.Kind.VariableDeclarations) {
|
|
173
|
+
return this.abort(variableDeclarations);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
const otherVariableDeclarations = other as J.VariableDeclarations;
|
|
177
|
+
|
|
178
|
+
// LENIENT: If pattern lacks typeExpression but target has one, add a wildcard capture to pattern
|
|
179
|
+
// This allows the pattern to match without requiring us to modify the target (which would corrupt captures)
|
|
180
|
+
if (!variableDeclarations.typeExpression && otherVariableDeclarations.typeExpression) {
|
|
181
|
+
variableDeclarations = produce(variableDeclarations, draft => {
|
|
182
|
+
draft.typeExpression = this.createWildcardIdentifier('__wildcard_type__') as J.Identifier;
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
// Delegate to super implementation
|
|
187
|
+
return super.visitVariableDeclarations(variableDeclarations, otherVariableDeclarations);
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
override async visitMethodDeclaration(methodDeclaration: J.MethodDeclaration, other: J): Promise<J | undefined> {
|
|
191
|
+
if (!this.match || other.kind !== J.Kind.MethodDeclaration) {
|
|
192
|
+
return this.abort(methodDeclaration);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
const otherMethodDeclaration = other as J.MethodDeclaration;
|
|
196
|
+
|
|
197
|
+
// LENIENT: If pattern lacks returnTypeExpression but target has one, add a wildcard capture to pattern
|
|
198
|
+
// This allows the pattern to match without requiring us to modify the target (which would corrupt captures)
|
|
199
|
+
if (!methodDeclaration.returnTypeExpression && otherMethodDeclaration.returnTypeExpression) {
|
|
200
|
+
methodDeclaration = produce(methodDeclaration, draft => {
|
|
201
|
+
draft.returnTypeExpression = this.createWildcardIdentifier('__wildcard_return_type__') as J.Identifier;
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
// Delegate to super implementation
|
|
206
|
+
return super.visitMethodDeclaration(methodDeclaration, otherMethodDeclaration);
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
protected hasSameKind(j: J, other: J): boolean {
|
|
210
|
+
return super.hasSameKind(j, other) ||
|
|
211
|
+
(j.kind == J.Kind.Identifier && PlaceholderUtils.isCapture(j as J.Identifier));
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
override async visitIdentifier(identifier: J.Identifier, other: J): Promise<J | undefined> {
|
|
215
|
+
if (PlaceholderUtils.isCapture(identifier)) {
|
|
216
|
+
const success = this.matcher.handleCapture(identifier, other);
|
|
217
|
+
return success ? identifier : this.abort(identifier);
|
|
218
|
+
}
|
|
219
|
+
return super.visitIdentifier(identifier, other);
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
|
|
121
223
|
/**
|
|
122
224
|
* Capture specification for pattern matching.
|
|
123
225
|
* Represents a placeholder in a template pattern that can capture a part of the AST.
|
|
@@ -329,20 +431,11 @@ class Matcher {
|
|
|
329
431
|
return false;
|
|
330
432
|
}
|
|
331
433
|
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
override async visitIdentifier(identifier: J.Identifier, other: J): Promise<J | undefined> {
|
|
339
|
-
return this.matchesParameter(identifier, other) ? identifier : await super.visitIdentifier(identifier, other);
|
|
340
|
-
}
|
|
341
|
-
|
|
342
|
-
private matchesParameter(identifier: J.Identifier, other: J): boolean {
|
|
343
|
-
return PlaceholderUtils.isCapture(identifier) && matcher.handleCapture(identifier, other);
|
|
344
|
-
}
|
|
345
|
-
}).compare(pattern, target));
|
|
434
|
+
// Use the pattern matching comparator which is lenient about optional properties
|
|
435
|
+
const comparator = new PatternMatchingComparator({
|
|
436
|
+
handleCapture: (p, t) => this.handleCapture(p, t)
|
|
437
|
+
});
|
|
438
|
+
return await comparator.compare(pattern, target);
|
|
346
439
|
}
|
|
347
440
|
|
|
348
441
|
/**
|