@alloy-js/core 0.23.0-dev.1 → 0.23.0-dev.8
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/CHANGELOG.md +0 -22
- package/dist/devtools/index.html +68 -0
- package/dist/src/binder.d.ts +2 -0
- package/dist/src/binder.d.ts.map +1 -1
- package/dist/src/binder.js +55 -12
- package/dist/src/binder.js.map +1 -1
- package/dist/src/components/AppendFile.d.ts.map +1 -1
- package/dist/src/components/AppendFile.js +14 -3
- package/dist/src/components/AppendFile.js.map +1 -1
- package/dist/src/components/Block.js +1 -1
- package/dist/src/components/Block.js.map +1 -1
- package/dist/src/components/Declaration.d.ts.map +1 -1
- package/dist/src/components/Declaration.js +2 -1
- package/dist/src/components/Declaration.js.map +1 -1
- package/dist/src/components/Scope.d.ts.map +1 -1
- package/dist/src/components/Scope.js +4 -1
- package/dist/src/components/Scope.js.map +1 -1
- package/dist/src/components/TemplateFile.d.ts.map +1 -1
- package/dist/src/components/TemplateFile.js +18 -3
- package/dist/src/components/TemplateFile.js.map +1 -1
- package/dist/src/content-slot.d.ts.map +1 -1
- package/dist/src/content-slot.js +6 -5
- package/dist/src/content-slot.js.map +1 -1
- package/dist/src/context.d.ts.map +1 -1
- package/dist/src/context.js +8 -1
- package/dist/src/context.js.map +1 -1
- package/dist/src/debug/cli.d.ts +6 -0
- package/dist/src/debug/cli.d.ts.map +1 -0
- package/dist/src/{debug.js → debug/cli.js} +79 -82
- package/dist/src/debug/cli.js.map +1 -0
- package/dist/src/debug/diagnostics.test.d.ts +2 -0
- package/dist/src/debug/diagnostics.test.d.ts.map +1 -0
- package/dist/src/debug/diagnostics.test.js +45 -0
- package/dist/src/debug/diagnostics.test.js.map +1 -0
- package/dist/src/debug/effects.d.ts +69 -0
- package/dist/src/debug/effects.d.ts.map +1 -0
- package/dist/src/debug/effects.js +228 -0
- package/dist/src/debug/effects.js.map +1 -0
- package/dist/src/debug/effects.test.d.ts +2 -0
- package/dist/src/debug/effects.test.d.ts.map +1 -0
- package/dist/src/debug/effects.test.js +86 -0
- package/dist/src/debug/effects.test.js.map +1 -0
- package/dist/src/debug/files.d.ts +14 -0
- package/dist/src/debug/files.d.ts.map +1 -0
- package/dist/src/debug/files.js +40 -0
- package/dist/src/debug/files.js.map +1 -0
- package/dist/src/debug/files.test.d.ts +2 -0
- package/dist/src/debug/files.test.d.ts.map +1 -0
- package/dist/src/debug/files.test.js +89 -0
- package/dist/src/debug/files.test.js.map +1 -0
- package/dist/src/debug/index.d.ts +60 -0
- package/dist/src/debug/index.d.ts.map +1 -0
- package/dist/src/debug/index.js +68 -0
- package/dist/src/debug/index.js.map +1 -0
- package/dist/src/debug/render.d.ts +57 -0
- package/dist/src/debug/render.d.ts.map +1 -0
- package/dist/src/debug/render.js +519 -0
- package/dist/src/debug/render.js.map +1 -0
- package/dist/src/debug/render.test.d.ts +2 -0
- package/dist/src/debug/render.test.d.ts.map +1 -0
- package/dist/src/debug/render.test.js +328 -0
- package/dist/src/debug/render.test.js.map +1 -0
- package/dist/src/debug/serialize.d.ts +9 -0
- package/dist/src/debug/serialize.d.ts.map +1 -0
- package/dist/src/debug/serialize.js +70 -0
- package/dist/src/debug/serialize.js.map +1 -0
- package/dist/src/debug/symbols.d.ts +9 -0
- package/dist/src/debug/symbols.d.ts.map +1 -0
- package/dist/src/debug/symbols.js +164 -0
- package/dist/src/debug/symbols.js.map +1 -0
- package/dist/src/debug/symbols.test.d.ts +2 -0
- package/dist/src/debug/symbols.test.d.ts.map +1 -0
- package/dist/src/debug/symbols.test.js +104 -0
- package/dist/src/debug/symbols.test.js.map +1 -0
- package/dist/src/debug/trace.d.ts +342 -0
- package/dist/src/debug/trace.d.ts.map +1 -0
- package/dist/src/debug/trace.js +443 -0
- package/dist/src/debug/trace.js.map +1 -0
- package/dist/src/devtools/devtools-protocol.d.ts +232 -0
- package/dist/src/devtools/devtools-protocol.d.ts.map +1 -0
- package/dist/src/devtools/devtools-protocol.js +2 -0
- package/dist/src/devtools/devtools-protocol.js.map +1 -0
- package/dist/src/devtools/devtools-server.browser.d.ts +28 -0
- package/dist/src/devtools/devtools-server.browser.d.ts.map +1 -0
- package/dist/src/devtools/devtools-server.browser.js +36 -0
- package/dist/src/devtools/devtools-server.browser.js.map +1 -0
- package/dist/src/devtools/devtools-server.d.ts +72 -0
- package/dist/src/devtools/devtools-server.d.ts.map +1 -0
- package/dist/src/devtools/devtools-server.js +256 -0
- package/dist/src/devtools/devtools-server.js.map +1 -0
- package/dist/src/devtools/devtools-transport.d.ts +23 -0
- package/dist/src/devtools/devtools-transport.d.ts.map +1 -0
- package/dist/src/devtools/devtools-transport.js +114 -0
- package/dist/src/devtools/devtools-transport.js.map +1 -0
- package/dist/src/devtools-entry.browser.d.ts +4 -0
- package/dist/src/devtools-entry.browser.d.ts.map +1 -0
- package/dist/src/devtools-entry.browser.js +2 -0
- package/dist/src/devtools-entry.browser.js.map +1 -0
- package/dist/src/devtools-entry.d.ts +4 -0
- package/dist/src/devtools-entry.d.ts.map +1 -0
- package/dist/src/devtools-entry.js +2 -0
- package/dist/src/devtools-entry.js.map +1 -0
- package/dist/src/diagnostics.d.ts +34 -0
- package/dist/src/diagnostics.d.ts.map +1 -0
- package/dist/src/diagnostics.js +89 -0
- package/dist/src/diagnostics.js.map +1 -0
- package/dist/src/index.d.ts +3 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/print-hook.d.ts +14 -0
- package/dist/src/print-hook.d.ts.map +1 -0
- package/dist/src/print-hook.js +10 -0
- package/dist/src/print-hook.js.map +1 -0
- package/dist/src/reactive-union-set.d.ts.map +1 -1
- package/dist/src/reactive-union-set.js +15 -0
- package/dist/src/reactive-union-set.js.map +1 -1
- package/dist/src/reactivity.d.ts +17 -3
- package/dist/src/reactivity.d.ts.map +1 -1
- package/dist/src/reactivity.js +162 -14
- package/dist/src/reactivity.js.map +1 -1
- package/dist/src/render-stack.d.ts +17 -1
- package/dist/src/render-stack.d.ts.map +1 -1
- package/dist/src/render-stack.js +57 -1
- package/dist/src/render-stack.js.map +1 -1
- package/dist/src/render.d.ts +8 -15
- package/dist/src/render.d.ts.map +1 -1
- package/dist/src/render.js +362 -103
- package/dist/src/render.js.map +1 -1
- package/dist/src/resource.d.ts.map +1 -1
- package/dist/src/resource.js +5 -0
- package/dist/src/resource.js.map +1 -1
- package/dist/src/scheduler.d.ts +3 -0
- package/dist/src/scheduler.d.ts.map +1 -1
- package/dist/src/scheduler.js +45 -2
- package/dist/src/scheduler.js.map +1 -1
- package/dist/src/symbols/basic-symbol.d.ts.map +1 -1
- package/dist/src/symbols/basic-symbol.js +6 -1
- package/dist/src/symbols/basic-symbol.js.map +1 -1
- package/dist/src/symbols/decl.d.ts.map +1 -1
- package/dist/src/symbols/decl.js +5 -1
- package/dist/src/symbols/decl.js.map +1 -1
- package/dist/src/symbols/output-scope.d.ts +2 -1
- package/dist/src/symbols/output-scope.d.ts.map +1 -1
- package/dist/src/symbols/output-scope.js +13 -8
- package/dist/src/symbols/output-scope.js.map +1 -1
- package/dist/src/symbols/output-symbol.d.ts +1 -0
- package/dist/src/symbols/output-symbol.d.ts.map +1 -1
- package/dist/src/symbols/output-symbol.js +23 -6
- package/dist/src/symbols/output-symbol.js.map +1 -1
- package/dist/src/symbols/symbol-flow.d.ts.map +1 -1
- package/dist/src/symbols/symbol-flow.js +22 -6
- package/dist/src/symbols/symbol-flow.js.map +1 -1
- package/dist/src/symbols/symbol-slot.d.ts.map +1 -1
- package/dist/src/symbols/symbol-slot.js +15 -0
- package/dist/src/symbols/symbol-slot.js.map +1 -1
- package/dist/src/symbols/symbol-slot.test.d.ts +2 -0
- package/dist/src/symbols/symbol-slot.test.d.ts.map +1 -0
- package/dist/src/symbols/symbol-slot.test.js +35 -0
- package/dist/src/symbols/symbol-slot.test.js.map +1 -0
- package/dist/src/symbols/symbol-table.d.ts.map +1 -1
- package/dist/src/symbols/symbol-table.js +6 -5
- package/dist/src/symbols/symbol-table.js.map +1 -1
- package/dist/src/trace.d.ts +2 -0
- package/dist/src/trace.d.ts.map +1 -0
- package/dist/src/trace.js +2 -0
- package/dist/src/trace.js.map +1 -0
- package/dist/src/tracer.d.ts +2 -228
- package/dist/src/tracer.d.ts.map +1 -1
- package/dist/src/tracer.js +5 -298
- package/dist/src/tracer.js.map +1 -1
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +5 -0
- package/dist/src/utils.js.map +1 -1
- package/dist/test/components/append-file.test.d.ts.map +1 -1
- package/dist/test/components/append-file.test.js +18 -10
- package/dist/test/components/append-file.test.js.map +1 -1
- package/dist/test/components/template-file.test.d.ts.map +1 -1
- package/dist/test/components/template-file.test.js +6 -4
- package/dist/test/components/template-file.test.js.map +1 -1
- package/dist/test/rendering/basic.test.js +3 -0
- package/dist/test/rendering/basic.test.js.map +1 -1
- package/dist/test/rendering/print-render-stack.test.d.ts.map +1 -1
- package/dist/test/rendering/print-render-stack.test.js +91 -98
- package/dist/test/rendering/print-render-stack.test.js.map +1 -1
- package/dist/testing/create-test-wrapper.d.ts +1 -1
- package/dist/testing/create-test-wrapper.d.ts.map +1 -1
- package/dist/testing/create-test-wrapper.js +1 -1
- package/dist/testing/create-test-wrapper.js.map +1 -1
- package/dist/testing/devtools-utils.d.ts +26 -0
- package/dist/testing/devtools-utils.d.ts.map +1 -0
- package/dist/testing/devtools-utils.js +140 -0
- package/dist/testing/devtools-utils.js.map +1 -0
- package/dist/testing/extend-expect.d.ts.map +1 -1
- package/dist/testing/extend-expect.js +63 -1
- package/dist/testing/extend-expect.js.map +1 -1
- package/dist/testing/render.d.ts +2 -2
- package/dist/testing/render.d.ts.map +1 -1
- package/dist/testing/render.js +2 -2
- package/dist/testing/render.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +21 -7
- package/scripts/copy-devtools-ui.mjs +26 -0
- package/src/binder.ts +71 -16
- package/src/components/AppendFile.tsx +14 -9
- package/src/components/Block.tsx +1 -1
- package/src/components/Declaration.tsx +2 -1
- package/src/components/Scope.tsx +4 -1
- package/src/components/TemplateFile.tsx +18 -9
- package/src/content-slot.tsx +6 -6
- package/src/context.ts +15 -4
- package/src/{debug.ts → debug/cli.ts} +114 -125
- package/src/debug/diagnostics.test.tsx +55 -0
- package/src/debug/effects.test.tsx +96 -0
- package/src/debug/effects.ts +313 -0
- package/src/debug/files.test.tsx +96 -0
- package/src/debug/files.ts +40 -0
- package/src/debug/index.ts +126 -0
- package/src/debug/render.test.tsx +379 -0
- package/src/debug/render.ts +639 -0
- package/src/debug/serialize.ts +85 -0
- package/src/debug/symbols.test.tsx +106 -0
- package/src/debug/symbols.ts +230 -0
- package/src/debug/trace.ts +312 -0
- package/src/devtools/devtools-protocol.ts +312 -0
- package/src/devtools/devtools-server.browser.ts +71 -0
- package/src/devtools/devtools-server.ts +290 -0
- package/src/devtools/devtools-transport.ts +154 -0
- package/src/devtools-entry.browser.ts +52 -0
- package/src/devtools-entry.ts +54 -0
- package/src/diagnostics.ts +141 -0
- package/src/index.ts +2 -6
- package/src/print-hook.ts +22 -0
- package/src/reactive-union-set.ts +71 -41
- package/src/reactivity.ts +206 -23
- package/src/render-stack.ts +68 -1
- package/src/render.ts +464 -157
- package/src/resource.ts +28 -19
- package/src/scheduler.ts +55 -3
- package/src/symbols/basic-symbol.ts +6 -1
- package/src/symbols/decl.ts +5 -1
- package/src/symbols/output-scope.ts +21 -12
- package/src/symbols/output-symbol.ts +33 -12
- package/src/symbols/symbol-flow.ts +68 -37
- package/src/symbols/symbol-slot.test.tsx +41 -0
- package/src/symbols/symbol-slot.tsx +47 -20
- package/src/symbols/symbol-table.ts +6 -10
- package/src/trace.ts +1 -0
- package/src/tracer.ts +13 -242
- package/src/utils.tsx +22 -13
- package/temp/api.json +1675 -162
- package/test/components/append-file.test.tsx +36 -29
- package/test/components/template-file.test.tsx +11 -11
- package/test/rendering/basic.test.tsx +4 -0
- package/test/rendering/print-render-stack.test.tsx +52 -43
- package/testing/create-test-wrapper.tsx +1 -1
- package/testing/devtools-utils.ts +203 -0
- package/testing/extend-expect.ts +89 -0
- package/testing/render.ts +2 -2
- package/testing/vitest.d.ts +9 -0
- package/dist/src/debug.d.ts +0 -14
- package/dist/src/debug.d.ts.map +0 -1
- package/dist/src/debug.js.map +0 -1
package/testing/extend-expect.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Children,
|
|
3
|
+
Diagnostic,
|
|
3
4
|
getContextForRenderNode,
|
|
5
|
+
getDiagnosticsForTree,
|
|
4
6
|
printTree,
|
|
5
7
|
RenderedTextTree,
|
|
6
8
|
renderTree,
|
|
@@ -16,6 +18,11 @@ interface ToRenderToOptions {
|
|
|
16
18
|
useTabs?: boolean;
|
|
17
19
|
}
|
|
18
20
|
|
|
21
|
+
interface ExpectedDiagnostic {
|
|
22
|
+
message: string | RegExp;
|
|
23
|
+
severity?: Diagnostic["severity"];
|
|
24
|
+
}
|
|
25
|
+
|
|
19
26
|
expect.extend({
|
|
20
27
|
toRenderTo(
|
|
21
28
|
received: Children,
|
|
@@ -38,6 +45,24 @@ expect.extend({
|
|
|
38
45
|
const actual = getFilesFromTree(tree, renderOptions);
|
|
39
46
|
return validateRender(actual, expectedRaw, this.isNot);
|
|
40
47
|
},
|
|
48
|
+
toHaveDiagnostics(
|
|
49
|
+
received: Children,
|
|
50
|
+
expectedDiagnostics: ExpectedDiagnostic[],
|
|
51
|
+
) {
|
|
52
|
+
const tree = renderTree(received);
|
|
53
|
+
flushJobs();
|
|
54
|
+
const diagnostics = getDiagnosticsForTree(tree);
|
|
55
|
+
return validateDiagnostics(diagnostics, expectedDiagnostics, this.isNot);
|
|
56
|
+
},
|
|
57
|
+
async toHaveDiagnosticsAsync(
|
|
58
|
+
received: Children,
|
|
59
|
+
expectedDiagnostics: ExpectedDiagnostic[],
|
|
60
|
+
) {
|
|
61
|
+
const tree = renderTree(received);
|
|
62
|
+
await flushJobsAsync();
|
|
63
|
+
const diagnostics = getDiagnosticsForTree(tree);
|
|
64
|
+
return validateDiagnostics(diagnostics, expectedDiagnostics, this.isNot);
|
|
65
|
+
},
|
|
41
66
|
});
|
|
42
67
|
|
|
43
68
|
function isAsymmetricMatcher(value: any): value is {
|
|
@@ -108,6 +133,70 @@ function validateRender(
|
|
|
108
133
|
}
|
|
109
134
|
}
|
|
110
135
|
|
|
136
|
+
function validateDiagnostics(
|
|
137
|
+
actual: Diagnostic[],
|
|
138
|
+
expected: ExpectedDiagnostic[],
|
|
139
|
+
isNot: boolean,
|
|
140
|
+
) {
|
|
141
|
+
const message = () => `Diagnostics are${isNot ? " not" : ""} incorrect`;
|
|
142
|
+
|
|
143
|
+
if (actual.length !== expected.length) {
|
|
144
|
+
return {
|
|
145
|
+
pass: false,
|
|
146
|
+
message: () =>
|
|
147
|
+
`Expected ${expected.length} diagnostic(s), but got ${actual.length}`,
|
|
148
|
+
actual: actual.map((d) => ({ message: d.message, severity: d.severity })),
|
|
149
|
+
expected,
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
for (let i = 0; i < expected.length; i++) {
|
|
154
|
+
const actualDiag = actual[i];
|
|
155
|
+
const expectedDiag = expected[i];
|
|
156
|
+
|
|
157
|
+
const messageMatches =
|
|
158
|
+
expectedDiag.message instanceof RegExp ?
|
|
159
|
+
expectedDiag.message.test(actualDiag.message)
|
|
160
|
+
: actualDiag.message === expectedDiag.message;
|
|
161
|
+
|
|
162
|
+
if (!messageMatches) {
|
|
163
|
+
return {
|
|
164
|
+
pass: false,
|
|
165
|
+
message: () =>
|
|
166
|
+
`Diagnostic ${i} message mismatch: expected "${expectedDiag.message}", got "${actualDiag.message}"`,
|
|
167
|
+
actual: actual.map((d) => ({
|
|
168
|
+
message: d.message,
|
|
169
|
+
severity: d.severity,
|
|
170
|
+
})),
|
|
171
|
+
expected,
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
if (
|
|
176
|
+
expectedDiag.severity !== undefined &&
|
|
177
|
+
actualDiag.severity !== expectedDiag.severity
|
|
178
|
+
) {
|
|
179
|
+
return {
|
|
180
|
+
pass: false,
|
|
181
|
+
message: () =>
|
|
182
|
+
`Diagnostic ${i} severity mismatch: expected "${expectedDiag.severity}", got "${actualDiag.severity}"`,
|
|
183
|
+
actual: actual.map((d) => ({
|
|
184
|
+
message: d.message,
|
|
185
|
+
severity: d.severity,
|
|
186
|
+
})),
|
|
187
|
+
expected,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
return {
|
|
193
|
+
pass: true,
|
|
194
|
+
message,
|
|
195
|
+
actual: actual.map((d) => ({ message: d.message, severity: d.severity })),
|
|
196
|
+
expected,
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
|
|
111
200
|
function getFilesFromTree(tree: RenderedTextTree, options?: ToRenderToOptions) {
|
|
112
201
|
const files: Record<string, string> = {};
|
|
113
202
|
|
package/testing/render.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Children, printTree, renderTree } from "
|
|
1
|
+
import { Children, printTree, renderTree } from "../src/index.js";
|
|
2
2
|
|
|
3
|
-
export { printTree } from "
|
|
3
|
+
export { printTree } from "../src/index.js";
|
|
4
4
|
|
|
5
5
|
export function renderToString(element: Children) {
|
|
6
6
|
return printTree(renderTree(element));
|
package/testing/vitest.d.ts
CHANGED
|
@@ -6,6 +6,11 @@ interface ToRenderToRenderOptions {
|
|
|
6
6
|
useTabs?: boolean;
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
+
interface ExpectedDiagnostic {
|
|
10
|
+
message: string | RegExp;
|
|
11
|
+
severity?: "info" | "warning" | "error";
|
|
12
|
+
}
|
|
13
|
+
|
|
9
14
|
interface CustomMatchers<R = unknown> {
|
|
10
15
|
toRenderTo: (
|
|
11
16
|
str: string | Record<string, string>,
|
|
@@ -15,6 +20,10 @@ interface CustomMatchers<R = unknown> {
|
|
|
15
20
|
str: string | Record<string, string>,
|
|
16
21
|
options?: ToRenderToRenderOptions,
|
|
17
22
|
) => Promise<R>;
|
|
23
|
+
toHaveDiagnostics: (expectedDiagnostics: ExpectedDiagnostic[]) => R;
|
|
24
|
+
toHaveDiagnosticsAsync: (
|
|
25
|
+
expectedDiagnostics: ExpectedDiagnostic[],
|
|
26
|
+
) => Promise<R>;
|
|
18
27
|
}
|
|
19
28
|
|
|
20
29
|
declare module "vitest" {
|
package/dist/src/debug.d.ts
DELETED
package/dist/src/debug.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../src/debug.ts"],"names":[],"mappings":"AAMA,UAAU,cAAc;IACtB,SAAS,EAAE;QACT,KAAK,IAAI,IAAI,CAAC;QACd,IAAI,IAAI,IAAI,CAAC;QACb,KAAK,IAAI,IAAI,CAAC;QACd,MAAM,IAAI,IAAI,CAAC;QACf,OAAO,IAAI,IAAI,CAAC;KACjB,CAAC;CACH;AAwGD,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,KAAK,EAAE,cAAc,CAAC;CAC3B"}
|
package/dist/src/debug.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["isReactive","Table","pc","contextsByKey","getContext","debug","component","stack","debugStack","tree","console","log","watch","render","context","debugContext","currentContext","foundContexts","Object","getOwnPropertySymbols","push","componentOwner","name","process","stdout","write","style","table","kvTable","props","hAlign","content","keys","length","dumpValue","gray","map","c","printContext","join","toString","owner","omitOwner","key","contextDefinition","get","contextName","value","output","findContextOwner","undefined","globalThis","primitive","blue","String","symbol","bgBlack","white","bgBlue","reactiveTag","greenBright","level","propValue","entries","sep","chars","top","bottom","left","mid","right","middle"],"sources":["../../src/debug.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAU,QAAQ,iBAAiB;AAC5C,OAAOC,KAAK,MAAM,YAAY;AAC9B,OAAOC,EAAE,MAAM,YAAY;AAC3B,SAASC,aAAa,QAAQ,cAAc;AAC5C,SAAkBC,UAAU,QAAQ,iBAAiB;AAYrD,MAAMC,KAAqB,GAAG;EAC5BC,SAAS,EAAE;IACTC,KAAK,EAAEC,UAAU;IACjBC,IAAIA,CAAA,EAAG;MACL;MACAC,OAAO,CAACC,GAAG,CAAC,MAAM,CAAC;IACrB,CAAC;IACDC,KAAKA,CAAA,EAAG;MACN;MACAF,OAAO,CAACC,GAAG,CAAC,OAAO,CAAC;IACtB,CAAC;IACDE,MAAMA,CAAA,EAAG;MACP;MACAH,OAAO,CAACC,GAAG,CAAC,QAAQ,CAAC;IACvB,CAAC;IACDG,OAAO,EAAEC;EACX;AACF,CAAC;AAED,SAASP,UAAUA,CAAA,EAAG;EACpB,IAAIQ,cAAc,GAAGZ,UAAU,CAAC,CAAC;EACjC,IAAIa,aAAwB,GAAG,EAAE;EACjC,OAAOD,cAAc,KAAK,IAAI,EAAE;IAC9B,IACEA,cAAc,CAACF,OAAO,IACtBI,MAAM,CAACC,qBAAqB,CAACH,cAAc,CAACF,OAAO,CAAC,CAAC,CAAC,CAAC,EACvD;MACAG,aAAa,CAACG,IAAI,CAACJ,cAAc,CAAC;IACpC;IAEA,IACEA,cAAc,CAACK,cAAc,IAC7BL,cAAc,CAACK,cAAc,CAACf,SAAS,CAACgB,IAAI,KAAK,UAAU,EAC3D;MACAC,OAAO,CAACC,MAAM,CAACC,KAAK,CAClBC,KAAK,CAACpB,SAAS,CAACgB,IAAI,CAACN,cAAc,CAACK,cAAc,CAACf,SAAS,CAACgB,IAAI,CAAC,GAChE,IACJ,CAAC;MACD,MAAMK,KAAK,GAAGC,OAAO,CAAC,CAAC;MACvB,MAAMC,KAAK,GAAGb,cAAc,CAACK,cAAc,CAACQ,KAAK;MAEjDF,KAAK,CAACP,IAAI,CAAC,CACT;QAAEU,MAAM,EAAE,OAAO;QAAEC,OAAO,EAAE;MAAQ,CAAC,EACrCF,KAAK,IAAIX,MAAM,CAACc,IAAI,CAACH,KAAK,CAAC,CAACI,MAAM,GAAG,CAAC,GACpCC,SAAS,CAACL,KAAK,CAAC,GAChB3B,EAAE,CAACiC,IAAI,CAAC,QAAQ,CAAC,CACpB,CAAC;MAEFR,KAAK,CAACP,IAAI,CAAC,CACT;QAAEU,MAAM,EAAE,OAAO;QAAEC,OAAO,EAAE;MAAW,CAAC,EACxCd,aAAa,CAACgB,MAAM,GAAG,CAAC,GACtBhB,aAAa,CAACmB,GAAG,CAAEC,CAAC,IAAKC,YAAY,CAACD,CAAC,EAAE,IAAI,CAAC,CAAC,CAACE,IAAI,CAAC,IAAI,CAAC,GAC1DrC,EAAE,CAACiC,IAAI,CAAC,QAAQ,CAAC,CACpB,CAAC;MAEFZ,OAAO,CAACC,MAAM,CAACC,KAAK,CAACE,KAAK,CAACa,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC;MAC/CvB,aAAa,GAAG,EAAE;IACpB;IAEAD,cAAc,GAAGA,cAAc,CAACyB,KAAK;EACvC;AACF;AAEA,SAAS1B,YAAYA,CAAA,EAAG;EACtB,IAAIC,cAAc,GAAGZ,UAAU,CAAC,CAAC;EACjC,OAAOY,cAAc,KAAK,IAAI,EAAE;IAC9B;IACAN,OAAO,CAACC,GAAG,CAAC2B,YAAY,CAACtB,cAAc,CAAC,CAAC;IACzCA,cAAc,GAAGA,cAAc,CAACyB,KAAK;EACvC;AACF;AACA,SAASH,YAAYA,CAACxB,OAAgB,EAAE4B,SAAkB,GAAG,KAAK,EAAE;EAClE,IAAI,CAAC5B,OAAO,CAACA,OAAO,EAAE,OAAO,EAAE;EAC/B,MAAM6B,GAAG,GAAGzB,MAAM,CAACC,qBAAqB,CAACL,OAAO,CAACA,OAAO,CAAC,CAAC,CAAC,CAAC;EAC5D,IAAI,CAAC6B,GAAG,EAAE,OAAO,EAAE;EACnB,MAAMC,iBAAiB,GAAGzC,aAAa,CAAC0C,GAAG,CAACF,GAAG,CAAC;EAChD,MAAMG,WAAW,GAAGF,iBAAiB,EAAEtB,IAAI,IAAI,iBAAiB;EAChE,MAAMyB,KAAK,GAAGjC,OAAO,CAACA,OAAO,CAAC6B,GAAG,CAAC;EAElC,IAAIK,MAAM,GAAGtB,KAAK,CAACZ,OAAO,CAACQ,IAAI,CAACwB,WAAW,CAAC;EAC5C,IAAI,CAACJ,SAAS,EAAE;IACd,MAAMD,KAAK,GAAGQ,gBAAgB,CAACnC,OAAO,CAAC;IACvCkC,MAAM,IAAI,eAAe,GAAGtB,KAAK,CAACpB,SAAS,CAACgB,IAAI,CAACmB,KAAK,CAAC;EACzD;EAEAO,MAAM,IAAI,IAAI,GAAGd,SAAS,CAACa,KAAK,CAAC,GAAG,IAAI;EAExC,OAAOC,MAAM;AACf;AAEA,SAASC,gBAAgBA,CAACnC,OAAgB,EAAE;EAC1C,IAAIE,cAA8B,GAAGF,OAAO;EAC5C,OACEE,cAAc,KACbA,cAAc,CAACK,cAAc,KAAK6B,SAAS,IAC1ClC,cAAc,CAACK,cAAc,CAACf,SAAS,CAACgB,IAAI,KAAK,UAAU,CAAC,EAC9D;IACAN,cAAc,GAAGA,cAAc,CAACyB,KAAK;EACvC;EAEA,OAAOzB,cAAc,EAAEK,cAAc,EAAEf,SAAS,CAACgB,IAAI,IAAI,SAAS;AACpE;AAKA6B,UAAU,CAAC9C,KAAK,GAAGA,KAAK;AAExB,MAAMqB,KAAK,GAAG;EACZqB,KAAK,EAAE;IACLK,SAASA,CAACL,KAAmD,EAAE;MAC7D,QAAQ,OAAOA,KAAK;QAClB,KAAK,QAAQ;UACX,OAAO7C,EAAE,CAACmD,IAAI,CAAC,IAAIN,KAAK,GAAG,CAAC;QAC9B,KAAK,QAAQ;QACb,KAAK,WAAW;UACd,OAAO7C,EAAE,CAACiC,IAAI,CAACmB,MAAM,CAACP,KAAK,CAAC,CAAC;QAC/B;UACE,OAAO7C,EAAE,CAACmD,IAAI,CAACC,MAAM,CAACP,KAAK,CAAC,CAAC;MACjC;IACF,CAAC;IACDQ,MAAMA,CAACR,KAAa,EAAE;MACpB,OAAO7C,EAAE,CAACiC,IAAI,CAACmB,MAAM,CAACP,KAAK,CAAC,CAAC;IAC/B;EACF,CAAC;EACDjC,OAAO,EAAE;IACPQ,IAAIA,CAACA,IAAY,EAAE;MACjB,OAAOpB,EAAE,CAACsD,OAAO,CAAC,IAAItD,EAAE,CAACuD,KAAK,CAACnC,IAAI,CAAC,GAAG,CAAC;IAC1C;EACF,CAAC;EACDhB,SAAS,EAAE;IACTgB,IAAIA,CAACA,IAAY,EAAE;MACjB,OAAOpB,EAAE,CAACwD,MAAM,CAAC,KAAKxD,EAAE,CAACuD,KAAK,CAACnC,IAAI,CAAC,IAAI,CAAC;IAC3C;EACF;AACF,CAAC;AAED,SAASqC,WAAWA,CAACZ,KAAc,EAAE;EACnC,IAAI/C,UAAU,CAAC+C,KAAK,CAAC,EAAE;IACrB,OAAO,GAAG,GAAG7C,EAAE,CAAC0D,WAAW,CAAC,UAAU,CAAC,GAAG,GAAG;EAC/C;EACA,OAAO,EAAE;AACX;AAEA,SAAS1B,SAASA,CAACa,KAAc,EAAEc,KAAK,GAAG,CAAC,EAAE;EAC5C,QAAQ,OAAOd,KAAK;IAClB,KAAK,SAAS;IACd,KAAK,QAAQ;IACb,KAAK,QAAQ;MACX,OAAOrB,KAAK,CAACqB,KAAK,CAACK,SAAS,CAACL,KAAK,CAAC,GAAGY,WAAW,CAACZ,KAAK,CAAC;IAC1D,KAAK,QAAQ;MACX,OAAOrB,KAAK,CAACqB,KAAK,CAACQ,MAAM,CAACR,KAAK,CAAC,GAAGY,WAAW,CAACZ,KAAK,CAAC;IACvD,KAAK,QAAQ;MACX,IAAIA,KAAK,KAAK,IAAI,EAAE;QAClB,OAAOrB,KAAK,CAACqB,KAAK,CAACK,SAAS,CAAC,IAAI,CAAC,GAAGO,WAAW,CAACZ,KAAK,CAAC;MACzD,CAAC,MAAM;QACL,IAAIc,KAAK,GAAG,CAAC,EAAE,OAAO3D,EAAE,CAACiC,IAAI,CAAC,SAAS,GAAGwB,WAAW,CAACZ,KAAK,CAAC,CAAC;QAE7D,MAAMpB,KAAK,GAAGC,OAAO,CAAC,GAAG,CAAC;QAE1B,KAAK,MAAM,CAACe,GAAG,EAAEmB,SAAS,CAAC,IAAI5C,MAAM,CAAC6C,OAAO,CAAChB,KAAK,CAAC,EAAE;UACpDpB,KAAK,CAACP,IAAI,CAAC,CAAC;YAAEW,OAAO,EAAEY;UAAI,CAAC,EAAET,SAAS,CAAC4B,SAAS,EAAED,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QACjE;QAEA,OAAOlC,KAAK,CAACa,QAAQ,CAAC,CAAC;MACzB;IACF,KAAK,UAAU;MACb,OAAOtC,EAAE,CAACiC,IAAI,CAAC,MAAM,CAAC;IACxB,KAAK,WAAW;MACd,OAAOT,KAAK,CAACqB,KAAK,CAACK,SAAS,CAACF,SAAS,CAAC;EAC3C;AACF;AAEA,SAAStB,OAAOA,CAACoC,GAAG,GAAG,IAAI,EAAE;EAC3B,OAAO,IAAI/D,KAAK,CAAC;IACfgE,KAAK,EAAE;MACLC,GAAG,EAAE,EAAE;MACP,SAAS,EAAE,EAAE;MACb,UAAU,EAAE,EAAE;MACd,WAAW,EAAE,EAAE;MACfC,MAAM,EAAE,EAAE;MACV,YAAY,EAAE,EAAE;MAChB,aAAa,EAAE,EAAE;MACjB,cAAc,EAAE,EAAE;MAClBC,IAAI,EAAE,EAAE;MACR,UAAU,EAAE,EAAE;MACdC,GAAG,EAAE,EAAE;MACP,SAAS,EAAE,EAAE;MACbC,KAAK,EAAE,EAAE;MACT,WAAW,EAAE,EAAE;MACfC,MAAM,EAAEP;IACV,CAAC;IACDtC,KAAK,EAAE;MAAE,cAAc,EAAE,CAAC;MAAE,eAAe,EAAE;IAAE;EACjD,CAAC,CAAC;AACJ","ignoreList":[]}
|