@lingxia/test 0.18.0 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/dist/clock.d.ts +30 -0
  2. package/dist/clock.d.ts.map +1 -0
  3. package/dist/clock.js +99 -0
  4. package/dist/clock.js.map +1 -0
  5. package/dist/coverage.d.ts +25 -0
  6. package/dist/coverage.d.ts.map +1 -0
  7. package/dist/coverage.js +92 -0
  8. package/dist/coverage.js.map +1 -0
  9. package/dist/deadline.d.ts +82 -0
  10. package/dist/deadline.d.ts.map +1 -0
  11. package/dist/deadline.js +184 -0
  12. package/dist/deadline.js.map +1 -0
  13. package/dist/dialogs.d.ts +28 -0
  14. package/dist/dialogs.d.ts.map +1 -0
  15. package/dist/dialogs.js +74 -0
  16. package/dist/dialogs.js.map +1 -0
  17. package/dist/equal.d.ts +28 -0
  18. package/dist/equal.d.ts.map +1 -0
  19. package/dist/equal.js +149 -0
  20. package/dist/equal.js.map +1 -0
  21. package/dist/errors.d.ts +8 -0
  22. package/dist/errors.d.ts.map +1 -0
  23. package/dist/errors.js +37 -0
  24. package/dist/errors.js.map +1 -0
  25. package/dist/expect.d.ts +35 -7
  26. package/dist/expect.d.ts.map +1 -1
  27. package/dist/expect.js +216 -68
  28. package/dist/expect.js.map +1 -1
  29. package/dist/fixture.d.ts +201 -23
  30. package/dist/fixture.d.ts.map +1 -1
  31. package/dist/fixture.js +1127 -157
  32. package/dist/fixture.js.map +1 -1
  33. package/dist/format.d.ts +2 -0
  34. package/dist/format.d.ts.map +1 -1
  35. package/dist/format.js +78 -0
  36. package/dist/format.js.map +1 -1
  37. package/dist/host-types.d.ts +65 -0
  38. package/dist/host-types.d.ts.map +1 -0
  39. package/dist/host-types.js +2 -0
  40. package/dist/host-types.js.map +1 -0
  41. package/dist/host.d.ts +20 -0
  42. package/dist/host.d.ts.map +1 -1
  43. package/dist/host.js +33 -1
  44. package/dist/host.js.map +1 -1
  45. package/dist/ids.d.ts +14 -0
  46. package/dist/ids.d.ts.map +1 -1
  47. package/dist/ids.js +37 -2
  48. package/dist/ids.js.map +1 -1
  49. package/dist/index.d.ts +5 -7
  50. package/dist/index.d.ts.map +1 -1
  51. package/dist/index.js +3 -5
  52. package/dist/index.js.map +1 -1
  53. package/dist/json-result.d.ts +3 -0
  54. package/dist/json-result.d.ts.map +1 -0
  55. package/dist/json-result.js +62 -0
  56. package/dist/json-result.js.map +1 -0
  57. package/dist/junit.d.ts +1 -1
  58. package/dist/junit.d.ts.map +1 -1
  59. package/dist/junit.js +32 -4
  60. package/dist/junit.js.map +1 -1
  61. package/dist/locator.d.ts +87 -9
  62. package/dist/locator.d.ts.map +1 -1
  63. package/dist/locator.js +413 -86
  64. package/dist/locator.js.map +1 -1
  65. package/dist/mock.d.ts +43 -0
  66. package/dist/mock.d.ts.map +1 -0
  67. package/dist/mock.js +162 -0
  68. package/dist/mock.js.map +1 -0
  69. package/dist/network.d.ts +68 -0
  70. package/dist/network.d.ts.map +1 -0
  71. package/dist/network.js +287 -0
  72. package/dist/network.js.map +1 -0
  73. package/dist/openapi.d.ts +127 -0
  74. package/dist/openapi.d.ts.map +1 -0
  75. package/dist/openapi.js +414 -0
  76. package/dist/openapi.js.map +1 -0
  77. package/dist/pending.d.ts +84 -0
  78. package/dist/pending.d.ts.map +1 -0
  79. package/dist/pending.js +311 -0
  80. package/dist/pending.js.map +1 -0
  81. package/dist/redact.d.ts +41 -0
  82. package/dist/redact.d.ts.map +1 -0
  83. package/dist/redact.js +168 -0
  84. package/dist/redact.js.map +1 -0
  85. package/dist/remote.d.ts +32 -0
  86. package/dist/remote.d.ts.map +1 -0
  87. package/dist/remote.js +117 -0
  88. package/dist/remote.js.map +1 -0
  89. package/dist/report-extras.d.ts +16 -0
  90. package/dist/report-extras.d.ts.map +1 -0
  91. package/dist/report-extras.js +125 -0
  92. package/dist/report-extras.js.map +1 -0
  93. package/dist/report-types.d.ts +428 -0
  94. package/dist/report-types.d.ts.map +1 -0
  95. package/dist/report-types.js +6 -0
  96. package/dist/report-types.js.map +1 -0
  97. package/dist/report.d.ts +15 -1
  98. package/dist/report.d.ts.map +1 -1
  99. package/dist/report.js +195 -19
  100. package/dist/report.js.map +1 -1
  101. package/dist/runner.d.ts +13 -0
  102. package/dist/runner.d.ts.map +1 -0
  103. package/dist/runner.js +11 -0
  104. package/dist/runner.js.map +1 -0
  105. package/dist/runtime.d.ts +54 -4
  106. package/dist/runtime.d.ts.map +1 -1
  107. package/dist/runtime.js +1375 -97
  108. package/dist/runtime.js.map +1 -1
  109. package/dist/schema.d.ts +29 -0
  110. package/dist/schema.d.ts.map +1 -0
  111. package/dist/schema.js +463 -0
  112. package/dist/schema.js.map +1 -0
  113. package/dist/spec-api.d.ts +7 -2
  114. package/dist/spec-api.d.ts.map +1 -1
  115. package/dist/tags.d.ts +26 -0
  116. package/dist/tags.d.ts.map +1 -0
  117. package/dist/tags.js +78 -0
  118. package/dist/tags.js.map +1 -0
  119. package/dist/types.d.ts +852 -165
  120. package/dist/types.d.ts.map +1 -1
  121. package/dist/version.d.ts +1 -1
  122. package/dist/version.js +1 -1
  123. package/package.json +18 -5
  124. package/schemas/lxdev.schema.json +50 -0
  125. package/schemas/mock-config.schema.json +21 -0
  126. package/schemas/scenario.schema.json +180 -0
package/dist/fixture.d.ts CHANGED
@@ -1,17 +1,33 @@
1
+ import type { PendingWork } from "./pending.js";
1
2
  import { type ResolvedHost } from "./host.js";
2
- import type { Apps, AttachmentRef, Fixture, FixtureExpect, AssertionRecord, TestAutomation, RejectExpected, ReportError, StepRecord, TestApp } from "./types.js";
3
- import type { Automation, LxAppDriver } from "@lingxia/types/automation";
4
- export declare class TimeoutError extends Error {
5
- readonly name = "TimeoutError";
3
+ import type { Redactor } from "./redact.js";
4
+ import { ScenarioScope } from "./mock.js";
5
+ import { ClockScope } from "./clock.js";
6
+ import { TimeoutError } from "./deadline.js";
7
+ import type { ArgOptions, Fixture, StepScope, TestAutomation, RejectExpected, TestApp, OpenApiRun, WaitForOptions } from "./types.js";
8
+ import type { AttachmentRef, AssertionRecord, ReportError, StepRecord } from "./report-types.js";
9
+ import type { HostRunAutomation as Automation, LxAppDriver } from "@lingxia/types/automation";
10
+ export { TimeoutError };
11
+ /**
12
+ * Thrown by `t.skip()`. It unwinds the spec like any throw, but the runtime
13
+ * grades it `skipped`, never `failed` — and not `xfail` under `spec.fail`.
14
+ * Internal: a spec never needs to name it.
15
+ */
16
+ export declare class SkipSignal extends Error {
17
+ readonly reason: string;
18
+ readonly name = "SkipSignal";
19
+ readonly code: "E_SKIPPED";
20
+ constructor(reason: string);
6
21
  }
7
- export type FailurePhase = "beforeEach" | "body" | "defer" | "forensics" | "timeout";
22
+ export type FailurePhase = "beforeEach" | "body" | "defer" | "forensics" | "timeout" | "contract" | "capture";
8
23
  export declare class LiveFixture implements Fixture {
9
24
  readonly specId: string;
10
25
  private readonly host;
11
26
  private readonly specBudgetMs;
12
- readonly apps: Apps;
27
+ private readonly redactor?;
13
28
  readonly automation: TestAutomation;
14
- readonly args: Record<string, string>;
29
+ /** `--arg` / `--secret-arg` values; read through `arg()`. */
30
+ private readonly argValues;
15
31
  readonly steps: StepRecord[];
16
32
  /**
17
33
  * `lx.*` members this spec's evals actually reached. Collected so the report
@@ -26,25 +42,103 @@ export declare class LiveFixture implements Fixture {
26
42
  abortError: Error | null;
27
43
  private actionSilence;
28
44
  private actionCount;
45
+ traceTruncated: boolean;
46
+ private eventSequence;
29
47
  /** Actions still in flight, so an abort can mark them instead of leaving
30
48
  * them at their optimistic default. */
31
49
  private readonly openActions;
50
+ /** Fixture calls that have started and not settled; see `track`. */
51
+ private readonly inFlight;
32
52
  cleanupUntil: number;
33
53
  cleanupActive: boolean;
54
+ /**
55
+ * The spec reached an app page (a locator, view, nav or page-bound Logic
56
+ * call). A failure names the current page only then: a unit spec that
57
+ * never touched one is not "on" whatever page the app happens to show.
58
+ */
59
+ usedPage: boolean;
34
60
  lastStepPath: string | undefined;
35
61
  failurePhase: FailurePhase | null;
62
+ /** The last recorded action that failed, and the error it failed with. */
63
+ failedAction: {
64
+ action: string;
65
+ error: unknown;
66
+ } | undefined;
67
+ /** Locator assertions that timed out, by error: the page instance they were bound to. */
68
+ readonly locatorFailures: WeakMap<object, string | null>;
69
+ /** Instance ids `t.app.page()` bound, so a trace detail's `#id` is not read from a CSS selector. */
70
+ readonly boundPages: Set<string>;
71
+ /** A driver timeout does not prove its remote app task has stopped. */
72
+ remoteTimeoutKind: "Logic eval" | "View eval" | "page action" | undefined;
73
+ /** Set by `t.skip()`; survives a body that catches the signal. */
74
+ skipReason: string | undefined;
36
75
  private readonly stepStack;
37
- private rawApp;
38
- constructor(specId: string, rawApp: LxAppDriver, host: ResolvedHost, args: Record<string, string>, automation: Automation, specBudgetMs?: number);
76
+ /** An overlap cannot be attributed safely without async-local JS context. */
77
+ stepConflict: Error | undefined;
78
+ private readonly stepStarted;
79
+ /** The app `t.app` is pinned to. */
80
+ private readonly pinned;
81
+ /** Every app a fixture app reaches; a profile switch re-selects them. */
82
+ private readonly appRefs;
83
+ private readonly dialogWatches;
84
+ private readonly dialogInitializers;
85
+ private readonly resolveDialogFailure;
86
+ readonly dialogFailure: Promise<string>;
87
+ private readonly hostAutomation;
88
+ /** When this spec's budget started; the runtime arms its timer right after construction. */
89
+ private readonly startedAt;
90
+ private traceMeta;
91
+ private readonly networkScope;
92
+ /** The scenario this spec installed; removed when it ends. */
93
+ readonly scenarioScope: ScenarioScope;
94
+ /** Test clocks this spec installed; uninstalled when it ends. */
95
+ readonly clockScope: ClockScope;
96
+ /** When the spec's own timer fires; see `budgetRoom()`. */
97
+ private readonly specDeadline;
98
+ constructor(specId: string, rawApp: LxAppDriver, host: ResolvedHost, args: Record<string, string>, automation: Automation, specBudgetMs?: number, redactor?: Redactor | undefined, appId?: string, traceOriginMs?: number);
39
99
  get app(): TestApp;
100
+ get scenario(): Fixture["scenario"];
40
101
  get raw(): LxAppDriver;
41
- step<T>(name: string, body: () => T | Promise<T>): Promise<T>;
42
- get expect(): FixtureExpect;
102
+ watchPrimaryDialogs(): Promise<void>;
103
+ private ensureDialogWatch;
104
+ private startDialogWatch;
105
+ endDialogWatches(): Promise<{
106
+ unused: string[];
107
+ failures: string[];
108
+ }>;
109
+ /** One fixture app per reached app, so a saved handle stays the same object. */
110
+ private appOf;
111
+ private refFor;
112
+ private trackRef;
113
+ get openapi(): OpenApiRun | undefined;
114
+ /** `t.app.profile`: it re-selects the app after a switch. */
115
+ private profileFixture;
116
+ /**
117
+ * A profile switch closes the app and reopens it as a new instance, which
118
+ * the old driver no longer reaches: select the same lxapp again after it,
119
+ * for every fixture app that reaches it. Fixture apps read `ref.driver` on
120
+ * each call, so one saved before the switch follows the reopened app.
121
+ */
122
+ private reopening;
123
+ step<T>(name: string, body: (scope: StepScope) => T | Promise<T>): Promise<T>;
124
+ private runStep;
43
125
  reject(operation: () => unknown | Promise<unknown>, expected?: RejectExpected): Promise<unknown>;
44
126
  defer(cleanup: () => void | Promise<void>): void;
127
+ arg(name: string, options: {
128
+ required: false;
129
+ default?: undefined;
130
+ }): string | undefined;
131
+ arg(name: string, options?: ArgOptions): string;
132
+ waitFor<T>(read: () => T | Promise<T>, options?: WaitForOptions<Awaited<T>>): Promise<Awaited<T>>;
133
+ skip(reason: string): never;
45
134
  attach(name: string, data: unknown): Promise<void>;
46
- attachRaw(name: string, data: unknown): Promise<AttachmentRef>;
47
- abort(reason: Error): void;
135
+ attachRaw(name: string, input: unknown, purpose?: AttachmentRef["purpose"]): Promise<AttachmentRef>;
136
+ /**
137
+ * Stop the body: its fixture calls reject with `reason` from now on. A
138
+ * timeout marks the actions still open as timed out; a failure (an
139
+ * unanswered dialog) as failed.
140
+ */
141
+ abort(reason: Error, as?: "timeout" | "failed"): void;
48
142
  allowCleanup(budgetMs?: number): void;
49
143
  endCleanup(): void;
50
144
  /**
@@ -53,35 +147,119 @@ export declare class LiveFixture implements Fixture {
53
147
  * would otherwise bury the report in a hundred identical rows.
54
148
  */
55
149
  act<T>(name: string, detail: string, op: () => T | Promise<T>): Promise<T>;
150
+ /**
151
+ * Run one fixture call while it counts as in flight, so a body that
152
+ * returns without awaiting it can be named (with where it was started),
153
+ * and a timed-out body can say what it still awaits.
154
+ */
155
+ private track;
156
+ /** A read `t.waitFor` gave up on is still running in the app. */
157
+ detachedInFlight(): boolean;
158
+ /**
159
+ * The fixture calls still running, as a body that returned without
160
+ * awaiting them left them: what each is and where the spec started it.
161
+ */
162
+ unsettledCalls(): Array<{
163
+ call: string;
164
+ at: string;
165
+ ageMs: number;
166
+ }>;
167
+ /**
168
+ * Stop the calls a returned body left running: each fails at its next
169
+ * fixture guard or retry, and its rejection is marked handled (nobody
170
+ * awaits it). Resolves `true` once they settled, `false` if one is still
171
+ * waiting on the app after `ms`. The fixture is usable again afterwards,
172
+ * for cleanup.
173
+ */
174
+ stopUnsettled(reason: Error, ms: number): Promise<boolean>;
175
+ /**
176
+ * Fixture calls that have not returned, e.g. a hung `t.app.logic.eval` a
177
+ * timed-out body still awaits. Unlike the trace rows, this includes calls
178
+ * made from silenced retry loops.
179
+ */
180
+ pendingCalls(): PendingWork[];
181
+ private recordAct;
182
+ /**
183
+ * A trace event is progress for lxdev, not part of the spec: one the
184
+ * transport drops is sent once more and then given up, and never fails the
185
+ * action it describes. The report is built from the fixture's own records.
186
+ */
187
+ private emitTrace;
188
+ /**
189
+ * A note beside the trace. A warning unless `level` is `"info"`: expected
190
+ * housekeeping, such as the timers the spec's own clock dropped, which
191
+ * lxdev shows only with `--verbose`.
192
+ */
193
+ diagnostic(phase: string, message: string, level?: "info"): Promise<void>;
194
+ /**
195
+ * An idempotent driver read, retried when the transport between the test
196
+ * runtime and the app dropped it. Never used for input or other calls with
197
+ * side effects: those may already have landed.
198
+ */
199
+ readRetrying<T>(read: () => T | Promise<T>): Promise<T>;
200
+ private noteFailedAction;
56
201
  private recordFailedAction;
57
202
  silenceActions(): void;
58
203
  resumeActions(): void;
59
204
  guard<T>(op: () => T | Promise<T>): Promise<T>;
205
+ /**
206
+ * Milliseconds an action or assertion may still take. Short of the spec's
207
+ * own deadline by a margin, so the action fails first and names its step
208
+ * instead of losing the race to the anonymous spec timeout. During cleanup
209
+ * the cleanup budget bounds it instead.
210
+ */
211
+ budgetRoom(): number;
60
212
  currentStepPath(): string | undefined;
61
- noteAssertion(entry: {
62
- matcher: string;
63
- expected: string;
64
- actual: string;
65
- passed: boolean;
66
- }): void;
213
+ noteAssertion(entry: Omit<AssertionRecord, "step">): void;
67
214
  close(): void;
215
+ private finishOpenSteps;
216
+ /**
217
+ * Remove what the framework installed for this spec — its routes, mock
218
+ * scenario and test clocks — apart from the spec's own cleanup, and
219
+ * whether or not its body settled. Resolves one message per failure; a
220
+ * resource already gone is removed.
221
+ */
222
+ reclaim(): Promise<string[]>;
68
223
  private assertRunnable;
69
224
  private stepPathLine;
70
225
  private wrapApp;
226
+ /**
227
+ * Fixture navigation takes the fixture's option names and waits for the
228
+ * landed page's `onReady` unless the caller picks `waitUntil: 'commit'`;
229
+ * reads retry a dropped transport.
230
+ */
231
+ private wrapNav;
232
+ private bindPage;
233
+ /** The driver's options for a fixture nav action. */
234
+ private navOptions;
235
+ private wrapLogic;
236
+ /**
237
+ * Logic eval that asks the runtime which `lx.*` the script reached and
238
+ * hands the caller only the value — the observation is the report's
239
+ * business, not the spec author's, and specs must not have to opt in for
240
+ * their coverage to be measured.
241
+ */
242
+ private evalLogic;
71
243
  /**
72
244
  * The driver's own eval default is a flat few seconds, so a call that runs
73
245
  * long under load fails a spec that still had most of its budget left. An
74
- * eval gets a share of the spec's budget instead — a third, capped — never
75
- * all of it: a call allowed to run the full budget leaves the spec no room
76
- * to retry, so one stalled call takes the whole spec down with it.
246
+ * eval gets `MAX_EVAL_BUDGET_MS` instead, clamped to what the spec has left.
77
247
  */
78
248
  private withEvalBudget;
79
- private wrapPage;
249
+ /**
250
+ * An eval's own `timeout`, clamped to the spec's remaining budget; without
251
+ * one, `withEvalBudget` picks the default.
252
+ */
253
+ private evalTimeout;
254
+ private viewEval;
255
+ /** `bound` is the immutable instance id captured by app.page(). */
256
+ private wrapView;
80
257
  private locator;
81
258
  private locatorMatchers;
82
259
  private pollMatchers;
83
260
  private retryLocator;
84
261
  private retryPoll;
262
+ private deadlineContext;
85
263
  private retryFailure;
86
264
  }
87
265
  export declare function toReportError(error: unknown, step?: string): ReportError;
@@ -1 +1 @@
1
- {"version":3,"file":"fixture.d.ts","sourceRoot":"","sources":["../src/fixture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fixture.d.ts","sourceRoot":"","sources":["../src/fixture.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAmC,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,aAAa,EAAmB,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAa,MAAM,YAAY,CAAC;AAGnD,OAAO,EAAkB,YAAY,EAAoB,MAAM,eAAe,CAAC;AAc/E,OAAO,KAAK,EACV,UAAU,EAEV,OAAO,EACP,SAAS,EAGT,cAAc,EACd,cAAc,EAGd,OAAO,EAUP,UAAU,EAOV,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,WAAW,EACX,UAAU,EACX,MAAM,mBAAmB,CAAC;AAS3B,OAAO,KAAK,EAAE,iBAAiB,IAAI,UAAU,EAAE,WAAW,EAA+C,MAAM,2BAA2B,CAAC;AAE3I,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,KAAK;IAGvB,QAAQ,CAAC,MAAM,EAAE,MAAM;IAFnC,SAAkB,IAAI,gBAAgB;IACtC,QAAQ,CAAC,IAAI,EAAG,WAAW,CAAU;gBAChB,MAAM,EAAE,MAAM;CAGpC;AAED,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;AAE9G,qBAAa,WAAY,YAAW,OAAO;IAyEvC,QAAQ,CAAC,MAAM,EAAE,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAGrB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IA9E5B,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,6DAA6D;IAC7D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+C;IACzE,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,CAAM;IAClC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,cAAqB;IACtC,QAAQ,CAAC,UAAU,EAAE,eAAe,EAAE,CAAM;IAC5C,QAAQ,CAAC,WAAW,EAAE,aAAa,EAAE,CAAM;IAC3C,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM;IACxD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,UAAS;IAChB,UAAU,EAAE,KAAK,GAAG,IAAI,CAAQ;IAChC,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,WAAW,CAAK;IACxB,cAAc,UAAS;IACvB,OAAO,CAAC,aAAa,CAAK;IAC1B;4CACwC;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAyB;IACrD,oEAAoE;IACpE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,YAAY,SAAK;IACjB,aAAa,UAAS;IACtB;;;;OAIG;IACH,QAAQ,UAAS;IACjB,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,YAAY,EAAE,YAAY,GAAG,IAAI,CAAQ;IACzC,0EAA0E;IAC1E,YAAY,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,GAAG,SAAS,CAAC;IAC7D,yFAAyF;IACzF,QAAQ,CAAC,eAAe,iCAAwC;IAChE,oGAAoG;IACpG,QAAQ,CAAC,UAAU,cAAqB;IACxC,uEAAuE;IACvE,iBAAiB,EAAE,YAAY,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC;IAC1E,kEAAkE;IAClE,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,6EAA6E;IAC7E,YAAY,EAAE,KAAK,GAAG,SAAS,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqC;IACjE,oCAAoC;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0G;IACxI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoC;IACvE,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA4B;IACjE,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAa;IAC5C,4FAA4F;IAC5F,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,OAAO,CAAC,SAAS;IAGjB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,8DAA8D;IAC9D,QAAQ,CAAC,aAAa,gBAAuB;IAC7C,iEAAiE;IACjE,QAAQ,CAAC,UAAU,aAAoB;IACvC,2DAA2D;IAC3D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAG3B,MAAM,EAAE,MAAM,EACvB,MAAM,EAAE,WAAW,EACF,IAAI,EAAE,YAAY,EACnC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,UAAU,EAAE,UAAU,EACL,YAAY,GAAE,MAAgC,EAC9C,QAAQ,CAAC,EAAE,QAAQ,YAAA,EACpC,KAAK,CAAC,EAAE,MAAM,EACd,aAAa,CAAC,EAAE,MAAM;IA+BxB,IAAI,GAAG,IAAI,OAAO,CAEjB;IAED,IAAI,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC,CAoBlC;IAED,IAAI,GAAG,IAAI,WAAW,CAErB;IAEK,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1C,OAAO,CAAC,iBAAiB;YAQX,gBAAgB;IAYxB,gBAAgB,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAe3E,gFAAgF;IAChF,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,QAAQ;IAKhB,IAAI,OAAO,IAAI,UAAU,GAAG,SAAS,CAUpC;IAED,6DAA6D;IAC7D,OAAO,CAAC,cAAc;IAiBtB;;;;;OAKG;YACW,SAAS;IAkBvB,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAI7E,OAAO,CAAC,OAAO;IA2ET,MAAM,CACV,SAAS,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,EAC3C,QAAQ,GAAE,cAAmB,GAC5B,OAAO,CAAC,OAAO,CAAC;IAoEnB,KAAK,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAIhD,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,QAAQ,EAAE,KAAK,CAAC;QAAC,OAAO,CAAC,EAAE,SAAS,CAAA;KAAE,GAAG,MAAM,GAAG,SAAS;IACxF,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM;IAoB/C,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,GAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAmErG,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK;IAQrB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAMlD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAwBzG;;;;OAIG;IACH,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,GAAE,SAAS,GAAG,QAAoB,GAAG,IAAI;IAahE,YAAY,CAAC,QAAQ,SAAyB,GAAG,IAAI;IAKrD,UAAU,IAAI,IAAI;IAIlB;;;;OAIG;IACH,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAiB1E;;;;OAIG;IACH,OAAO,CAAC,KAAK;IAcb,iEAAiE;IACjE,gBAAgB,IAAI,OAAO;IAI3B;;;OAGG;IACH,cAAc,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAYpE;;;;;;OAMG;IACG,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWhE;;;;OAIG;IACH,YAAY,IAAI,WAAW,EAAE;YASf,SAAS;IA0FvB;;;;OAIG;YACW,SAAS;IAWvB;;;;OAIG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/E;;;;OAIG;IACG,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAW7D,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,kBAAkB;IAuB1B,cAAc,IAAI,IAAI;IAItB,aAAa,IAAI,IAAI;IAIf,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAOpD;;;;;OAKG;IACH,UAAU,IAAI,MAAM;IAMpB,eAAe,IAAI,MAAM,GAAG,SAAS;IAKrC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,IAAI;IAUzD,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,eAAe;IASvB;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAalC,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,OAAO;IA0Cf;;;;OAIG;IACH,OAAO,CAAC,OAAO;IAkBf,OAAO,CAAC,QAAQ;IA+GhB,qDAAqD;IACrD,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,SAAS;IAgBjB;;;;;OAKG;YACW,SAAS;IAuBvB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAMtB;;;OAGG;IACH,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,QAAQ;IAmBhB,mEAAmE;IACnE,OAAO,CAAC,QAAQ;IA6ChB,OAAO,CAAC,OAAO;IAkBf,OAAO,CAAC,eAAe;IAiCvB,OAAO,CAAC,YAAY;IAiCpB,OAAO,CAAC,YAAY;IAkEpB,OAAO,CAAC,SAAS;IA8DjB,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,YAAY;CAiDrB;AAgWD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAiCxE"}