rivet-design 0.11.11 → 0.11.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/install/harnesses.d.ts.map +1 -1
- package/dist/install/harnesses.js +122 -4
- package/dist/install/harnesses.js.map +1 -1
- package/dist/mcp/agent-variants/SessionStore.d.ts +150 -10
- package/dist/mcp/agent-variants/SessionStore.d.ts.map +1 -1
- package/dist/mcp/agent-variants/SessionStore.js +468 -23
- package/dist/mcp/agent-variants/SessionStore.js.map +1 -1
- package/dist/mcp/agent-variants/WorktreeOrchestrator.d.ts +143 -51
- package/dist/mcp/agent-variants/WorktreeOrchestrator.d.ts.map +1 -1
- package/dist/mcp/agent-variants/WorktreeOrchestrator.js +465 -299
- package/dist/mcp/agent-variants/WorktreeOrchestrator.js.map +1 -1
- package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.d.ts +5 -4
- package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.d.ts.map +1 -1
- package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.js +24 -5
- package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.js.map +1 -1
- package/dist/mcp/agent-variants/contracts.d.ts +102 -89
- package/dist/mcp/agent-variants/contracts.d.ts.map +1 -1
- package/dist/mcp/agent-variants/contracts.js +29 -14
- package/dist/mcp/agent-variants/contracts.js.map +1 -1
- package/dist/mcp/agent-variants/index.d.ts +3 -3
- package/dist/mcp/agent-variants/index.d.ts.map +1 -1
- package/dist/mcp/agent-variants/index.js +1 -2
- package/dist/mcp/agent-variants/index.js.map +1 -1
- package/dist/mcp/agent-variants/previewQa.d.ts.map +1 -1
- package/dist/mcp/agent-variants/previewQa.js +0 -6
- package/dist/mcp/agent-variants/previewQa.js.map +1 -1
- package/dist/mcp/agent-variants/tools.d.ts +12 -4
- package/dist/mcp/agent-variants/tools.d.ts.map +1 -1
- package/dist/mcp/agent-variants/tools.js +69 -13
- package/dist/mcp/agent-variants/tools.js.map +1 -1
- package/dist/mcp/changeBatchClassification.d.ts +30 -0
- package/dist/mcp/changeBatchClassification.d.ts.map +1 -1
- package/dist/mcp/changeBatchClassification.js +76 -0
- package/dist/mcp/changeBatchClassification.js.map +1 -1
- package/dist/mcp/instructions.d.ts.map +1 -1
- package/dist/mcp/instructions.js +7 -1
- package/dist/mcp/instructions.js.map +1 -1
- package/dist/mcp/server.d.ts +51 -3
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +404 -156
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/watchLoopResumePrompt.d.ts +16 -0
- package/dist/mcp/watchLoopResumePrompt.d.ts.map +1 -0
- package/dist/mcp/watchLoopResumePrompt.js +21 -0
- package/dist/mcp/watchLoopResumePrompt.js.map +1 -0
- package/dist/routes/agentVariants.d.ts +10 -1
- package/dist/routes/agentVariants.d.ts.map +1 -1
- package/dist/routes/agentVariants.js +214 -3
- package/dist/routes/agentVariants.js.map +1 -1
- package/dist/routes/mcp.d.ts.map +1 -1
- package/dist/routes/mcp.js +106 -47
- package/dist/routes/mcp.js.map +1 -1
- package/dist/services/BridgeBatchPipeline.d.ts +99 -0
- package/dist/services/BridgeBatchPipeline.d.ts.map +1 -0
- package/dist/services/BridgeBatchPipeline.js +278 -0
- package/dist/services/BridgeBatchPipeline.js.map +1 -0
- package/dist/services/BridgeQueueStore.d.ts +28 -0
- package/dist/services/BridgeQueueStore.d.ts.map +1 -0
- package/dist/services/BridgeQueueStore.js +88 -0
- package/dist/services/BridgeQueueStore.js.map +1 -0
- package/dist/services/InlineVariantGenerationService.d.ts.map +1 -1
- package/dist/services/InlineVariantGenerationService.js +15 -3
- package/dist/services/InlineVariantGenerationService.js.map +1 -1
- package/dist/services/SessionBridgeService.d.ts +127 -31
- package/dist/services/SessionBridgeService.d.ts.map +1 -1
- package/dist/services/SessionBridgeService.js +428 -83
- package/dist/services/SessionBridgeService.js.map +1 -1
- package/dist/services/TelemetryService.d.ts +30 -0
- package/dist/services/TelemetryService.d.ts.map +1 -1
- package/dist/services/TelemetryService.js +42 -0
- package/dist/services/TelemetryService.js.map +1 -1
- package/dist/services/WorktreeManager.d.ts +29 -2
- package/dist/services/WorktreeManager.d.ts.map +1 -1
- package/dist/services/WorktreeManager.js +73 -7
- package/dist/services/WorktreeManager.js.map +1 -1
- package/dist/services/createAgentVariantsOrchestrator.d.ts +0 -8
- package/dist/services/createAgentVariantsOrchestrator.d.ts.map +1 -1
- package/dist/services/createAgentVariantsOrchestrator.js +1 -18
- package/dist/services/createAgentVariantsOrchestrator.js.map +1 -1
- package/dist/utils/portUtils.d.ts +9 -0
- package/dist/utils/portUtils.d.ts.map +1 -1
- package/dist/utils/portUtils.js +26 -0
- package/dist/utils/portUtils.js.map +1 -1
- package/dist/utils/skills/claude-skill.d.ts +1 -1
- package/dist/utils/skills/claude-skill.d.ts.map +1 -1
- package/dist/utils/skills/claude-skill.js +31 -12
- package/dist/utils/skills/claude-skill.js.map +1 -1
- package/dist/utils/skills/cursor-rules.d.ts +1 -1
- package/dist/utils/skills/cursor-rules.d.ts.map +1 -1
- package/dist/utils/skills/cursor-rules.js +26 -11
- package/dist/utils/skills/cursor-rules.js.map +1 -1
- package/dist/utils/skills/shared-variants-protocol.d.ts +28 -0
- package/dist/utils/skills/shared-variants-protocol.d.ts.map +1 -1
- package/dist/utils/skills/shared-variants-protocol.js +88 -14
- package/dist/utils/skills/shared-variants-protocol.js.map +1 -1
- package/package.json +3 -2
- package/src/ui/dist/assets/main-DREt3GGU.css +1 -0
- package/src/ui/dist/assets/main-Dt7ShmjM.js +655 -0
- package/src/ui/dist/index.html +2 -2
- package/dist/mcp/agent-variants/designCritique.d.ts +0 -167
- package/dist/mcp/agent-variants/designCritique.d.ts.map +0 -1
- package/dist/mcp/agent-variants/designCritique.js +0 -774
- package/dist/mcp/agent-variants/designCritique.js.map +0 -1
- package/src/ui/dist/assets/main-B1LAuLK_.js +0 -655
- package/src/ui/dist/assets/main-D-YwdYjm.css +0 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ChangeRequest, TelemetryContext } from '../types/change-request-types';
|
|
2
|
-
type
|
|
2
|
+
import { type BatchChannelKind, type LeasedBatchRecord } from './BridgeBatchPipeline';
|
|
3
|
+
type SessionStatus = 'IDLE' | 'WATCHING' | 'APPLYING' | 'READY';
|
|
3
4
|
export type DevServerOwnership = 'rivet_owned' | 'external' | 'none';
|
|
4
5
|
export type DevServerHealthReason = 'healthy' | 'upstream_unreachable' | 'rivet_unreachable' | 'unknown';
|
|
5
6
|
export type DevServerHealth = {
|
|
@@ -21,6 +22,65 @@ type StartApplyingRunResult = {
|
|
|
21
22
|
newRun: ActiveRunCorrelation;
|
|
22
23
|
orphanedRun: ActiveRunCorrelation | null;
|
|
23
24
|
};
|
|
25
|
+
/**
|
|
26
|
+
* Upper bound on the variant-request FIFO depth. The queue intentionally
|
|
27
|
+
* appends (never clobbers) so concurrent "Vary" runs aren't dropped, but
|
|
28
|
+
* without a cap a caller hitting the unauthenticated queue endpoint could
|
|
29
|
+
* append unboundedly and exhaust server memory. 16 is far above any real
|
|
30
|
+
* concurrent-Vary workload; past it we reject with backpressure (HTTP 429)
|
|
31
|
+
* so the request surfaces as an error the user can retry, rather than being
|
|
32
|
+
* silently dropped or growing the queue.
|
|
33
|
+
*/
|
|
34
|
+
export declare const MAX_PENDING_VARIANT_REQUESTS = 16;
|
|
35
|
+
/** FIFO depth cap for apply batches (was a single overwrite slot). */
|
|
36
|
+
export declare const MAX_PENDING_APPLY_BATCHES = 16;
|
|
37
|
+
/** Maximum concurrent variant batches leased to agents/watchers. */
|
|
38
|
+
export declare const MAX_LEASED_VARIANT_BATCHES = 4;
|
|
39
|
+
/**
|
|
40
|
+
* Per-batch byte budget for a queued variant-request/refine batch. The count
|
|
41
|
+
* cap above bounds HOW MANY batches queue; this bounds how BIG one can be. The
|
|
42
|
+
* route schema already caps attached images, but `instruction` / `sourceFiles`
|
|
43
|
+
* / element metadata are otherwise bounded only by the (much larger) HTTP body
|
|
44
|
+
* limit — so without this a local/LAN caller could pin memory with a few large
|
|
45
|
+
* batches × the FIFO depth. ~2MB of non-image text/metadata is generous.
|
|
46
|
+
*/
|
|
47
|
+
export declare const MAX_VARIANT_REQUEST_BYTES: number;
|
|
48
|
+
/** Same per-batch byte cap for apply batches queued on the apply FIFO. */
|
|
49
|
+
export declare const MAX_APPLY_BATCH_BYTES: number;
|
|
50
|
+
/** Result of {@link SessionBridgeService.queueChangeRequest}. */
|
|
51
|
+
export type QueueChangeResult = {
|
|
52
|
+
accepted: true;
|
|
53
|
+
} | {
|
|
54
|
+
accepted: false;
|
|
55
|
+
reason: 'apply_queue_full' | 'apply_batch_too_large' | 'variant_queue_full' | 'variant_request_too_large';
|
|
56
|
+
};
|
|
57
|
+
export type BridgeAckResult = {
|
|
58
|
+
acked: boolean;
|
|
59
|
+
mergedRequestIds: string[];
|
|
60
|
+
kind?: BatchChannelKind;
|
|
61
|
+
};
|
|
62
|
+
export type ChannelDepth = {
|
|
63
|
+
queued: number;
|
|
64
|
+
leased: number;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Real liveness of the change pipeline, derived from the live queue + waiter
|
|
68
|
+
* state (NOT from elapsed silence — a `watch_for_changes` long-poll can sit
|
|
69
|
+
* quiet for up to 600s and still be perfectly healthy). Surfaced so the UI can
|
|
70
|
+
* tell "the host agent stopped draining" (changes queued, no watcher) apart
|
|
71
|
+
* from "the host agent is patiently long-polling" (watcher active, nothing
|
|
72
|
+
* queued).
|
|
73
|
+
*/
|
|
74
|
+
export type WatcherLiveness = {
|
|
75
|
+
/** True while at least one `watch_for_changes` waiter is blocked/registered. */
|
|
76
|
+
watcherActive: boolean;
|
|
77
|
+
/** Unconsumed changes across BOTH channels (apply slot + variant FIFO). */
|
|
78
|
+
pendingCount: number;
|
|
79
|
+
/** Epoch-ms the oldest unconsumed change was queued, or null when none. */
|
|
80
|
+
oldestPendingChangeEnqueuedAt: number | null;
|
|
81
|
+
/** Age of the oldest unconsumed change against the caller's clock, or null. */
|
|
82
|
+
oldestPendingChangeAgeMs: number | null;
|
|
83
|
+
};
|
|
24
84
|
/**
|
|
25
85
|
* Manages the lifecycle of an MCP visual editing session and queues
|
|
26
86
|
* changes between the Rivet UI and the MCP server.
|
|
@@ -35,12 +95,21 @@ export declare class SessionBridgeService {
|
|
|
35
95
|
private _isVariantPortAllowed;
|
|
36
96
|
private statusAccessToken;
|
|
37
97
|
private projectPath;
|
|
38
|
-
private
|
|
98
|
+
private applyPipeline;
|
|
99
|
+
private variantPipeline;
|
|
39
100
|
private telemetryContext;
|
|
40
101
|
private roundsCompleted;
|
|
41
102
|
private feedback;
|
|
42
103
|
private status;
|
|
43
|
-
private
|
|
104
|
+
private waitResolvers;
|
|
105
|
+
/**
|
|
106
|
+
* Subscribers notified whenever {@link WatcherLiveness} could have changed
|
|
107
|
+
* (queue/drain/waiter register/settle). The variants SSE stream subscribes so
|
|
108
|
+
* a strand the user causes — sending a change with no watcher draining it —
|
|
109
|
+
* re-pushes the snapshot promptly instead of waiting on the next orchestrator
|
|
110
|
+
* event, which a stranded queue never produces.
|
|
111
|
+
*/
|
|
112
|
+
private livenessListeners;
|
|
44
113
|
private activeRunCorrelation;
|
|
45
114
|
private baseDevServerHealth;
|
|
46
115
|
private devServerHealth;
|
|
@@ -49,6 +118,9 @@ export declare class SessionBridgeService {
|
|
|
49
118
|
* @returns The unique session ID
|
|
50
119
|
*/
|
|
51
120
|
startSession(projectPath: string): string;
|
|
121
|
+
/** Write the current queue snapshot to disk for MCP restart recovery. */
|
|
122
|
+
private persistQueue;
|
|
123
|
+
private buildQueuedBatch;
|
|
52
124
|
/**
|
|
53
125
|
* Add a feedback message to the session.
|
|
54
126
|
* Feedback is shown in the Rivet UI to let the user know what the MCP client is doing.
|
|
@@ -75,14 +147,37 @@ export declare class SessionBridgeService {
|
|
|
75
147
|
rebindProjectPath(projectPath: string): void;
|
|
76
148
|
/**
|
|
77
149
|
* Queue changes from the Rivet UI for retrieval by the MCP client.
|
|
78
|
-
*
|
|
150
|
+
* Each send appends to the apply or variant FIFO (never overwrites).
|
|
79
151
|
*/
|
|
80
|
-
queueChangeRequest(intent: ChangeRequest):
|
|
152
|
+
queueChangeRequest(intent: ChangeRequest): QueueChangeResult;
|
|
81
153
|
/**
|
|
82
|
-
* Retrieve
|
|
83
|
-
* Does NOT clear the queue — call clearPending() after processing.
|
|
154
|
+
* Retrieve the oldest queued apply batch intent without leasing it.
|
|
84
155
|
*/
|
|
85
156
|
getPendingChanges(): ChangeRequest | null;
|
|
157
|
+
/** True when one or more variant-request/refine batches are queued or leased. */
|
|
158
|
+
hasPendingVariantRequests(): boolean;
|
|
159
|
+
/** Queued variant batches still waiting for lease pickup. */
|
|
160
|
+
pendingVariantRequestCount(): number;
|
|
161
|
+
/** Non-destructive snapshot of queued variant-request/refine batches. */
|
|
162
|
+
peekVariantRequests(): ChangeRequest[];
|
|
163
|
+
/**
|
|
164
|
+
* Lease the oldest eligible batch across apply and variant channels.
|
|
165
|
+
* Global FIFO uses oldest `enqueuedAt` among channels that can lease.
|
|
166
|
+
*/
|
|
167
|
+
leaseBatch(requestId?: string): LeasedBatchRecord | null;
|
|
168
|
+
/**
|
|
169
|
+
* Release a leased batch after the agent completes work (`refresh_git` or `ack_batch`).
|
|
170
|
+
*/
|
|
171
|
+
ackBatch(params: {
|
|
172
|
+
leaseId: string;
|
|
173
|
+
requestId?: string;
|
|
174
|
+
}): BridgeAckResult;
|
|
175
|
+
/** True when either channel has queued or in-flight leased work. */
|
|
176
|
+
hasUnfinishedWork(): boolean;
|
|
177
|
+
/** Queue and leased depth for one channel (status API). */
|
|
178
|
+
getChannelDepth(kind: BatchChannelKind): ChannelDepth;
|
|
179
|
+
/** @deprecated Use {@link ackBatch} after the agent completes a leased apply batch. */
|
|
180
|
+
shiftVariantRequest(): ChangeRequest | null;
|
|
86
181
|
/**
|
|
87
182
|
* Block until changes are queued, or return immediately if already pending.
|
|
88
183
|
* Used by watch_for_changes for clients without background monitoring (e.g. Cursor).
|
|
@@ -90,30 +185,14 @@ export declare class SessionBridgeService {
|
|
|
90
185
|
*/
|
|
91
186
|
waitForChanges(timeoutMs?: number): Promise<ChangeRequest>;
|
|
92
187
|
/**
|
|
93
|
-
*
|
|
94
|
-
* Call after the MCP client has retrieved and processed the intent.
|
|
188
|
+
* Ack the active apply lease after processing (legacy alias for tests).
|
|
95
189
|
*/
|
|
96
190
|
clearPending(expectedIntent?: ChangeRequest): void;
|
|
97
|
-
/**
|
|
98
|
-
* Consume a single-item variant-request batch from the pending queue.
|
|
99
|
-
*
|
|
100
|
-
* Variant-request batches are not "applied" — they are routed into the MCP
|
|
101
|
-
* variants lifecycle (propose_variants → approval → continue → commit). They
|
|
102
|
-
* must NOT call startApplyingRun, must NOT fire trackChangesQueued /
|
|
103
|
-
* trackAgentRunStarted, and must NOT increment the apply-run round counter.
|
|
104
|
-
*
|
|
105
|
-
* Returns the consumed intent so callers can derive the agent's
|
|
106
|
-
* propose_variants target from it.
|
|
107
|
-
*/
|
|
191
|
+
/** @deprecated Leased batches are released via {@link ackBatch}. */
|
|
108
192
|
consumeVariantRequestBatch(expectedIntent?: ChangeRequest): ChangeRequest | null;
|
|
109
|
-
/**
|
|
110
|
-
* Consume a static-preview refinement batch from the pending queue.
|
|
111
|
-
*
|
|
112
|
-
* These batches refine an in-memory HTML variant through the variants MCP
|
|
113
|
-
* lifecycle. They must not start a base project apply run or increment the
|
|
114
|
-
* apply-round counter.
|
|
115
|
-
*/
|
|
193
|
+
/** @deprecated Leased batches are released via {@link ackBatch}. */
|
|
116
194
|
consumeStaticPreviewRefineBatch(expectedIntent?: ChangeRequest): ChangeRequest | null;
|
|
195
|
+
private findVariantLeaseForIntent;
|
|
117
196
|
/**
|
|
118
197
|
* Remove variant-request comment items from a mixed pending batch while
|
|
119
198
|
* preserving all non-variant items for a follow-up apply run.
|
|
@@ -127,6 +206,8 @@ export declare class SessionBridgeService {
|
|
|
127
206
|
* Complete the active MCP run and clear it from bridge state.
|
|
128
207
|
*/
|
|
129
208
|
completeActiveRunCorrelation(): ActiveRunCorrelation | null;
|
|
209
|
+
/** Active apply lease, if any (at most one). */
|
|
210
|
+
findActiveApplyLease(): LeasedBatchRecord | null;
|
|
130
211
|
/** Get the number of completed editing rounds in this session */
|
|
131
212
|
getRoundsCompleted(): number;
|
|
132
213
|
/** Get telemetry correlation data for the active session */
|
|
@@ -169,12 +250,11 @@ export declare class SessionBridgeService {
|
|
|
169
250
|
* preview) on `devServerHealth` so `/api/mcp/status` and the iframe's
|
|
170
251
|
* `usePreviewUpstreamHealth` probe see `ownership: 'rivet_owned'` + the
|
|
171
252
|
* new port. Pass `null` to clear back to the no-server state. Distinct
|
|
172
|
-
* from `switchPreviewPort` (which
|
|
253
|
+
* from `switchPreviewPort` (which temporarily retargets health while a
|
|
254
|
+
* variant preview is active, then restores `baseDevServerHealth`) and from
|
|
173
255
|
* `setDevServerContext` (which the MCP server uses for the user's own
|
|
174
256
|
* dev server during a regular session). Only the orchestrator's
|
|
175
|
-
* commit-handoff path should call this
|
|
176
|
-
* still go through `switchPreviewPort` and must NOT touch the user's
|
|
177
|
-
* external dev-server health.
|
|
257
|
+
* commit-handoff path should call this.
|
|
178
258
|
*/
|
|
179
259
|
setCommittedDevServerHealth(port: number | null): void;
|
|
180
260
|
/** Switch the proxy to a variant dev server (or back to user's dev server when port is null) */
|
|
@@ -184,6 +264,22 @@ export declare class SessionBridgeService {
|
|
|
184
264
|
* @returns The total number of completed rounds
|
|
185
265
|
*/
|
|
186
266
|
endSession(): number;
|
|
267
|
+
/**
|
|
268
|
+
* Snapshot the real liveness of the change pipeline for stale-watcher
|
|
269
|
+
* detection. `watcherActive` reflects a registered `watch_for_changes` waiter,
|
|
270
|
+
* NOT channel silence; `oldestPendingChangeAgeMs` is measured against `now`
|
|
271
|
+
* (injectable for tests) so a healthy long-poll can never look stuck — only
|
|
272
|
+
* genuinely unconsumed, unwatched work does.
|
|
273
|
+
*/
|
|
274
|
+
getWatcherLiveness(now?: number): WatcherLiveness;
|
|
275
|
+
/**
|
|
276
|
+
* Subscribe to changes in {@link getWatcherLiveness} state (queue/drain,
|
|
277
|
+
* waiter register/settle, session start/end). Returns an unsubscribe fn.
|
|
278
|
+
*/
|
|
279
|
+
onWatcherLivenessChange(listener: () => void): () => void;
|
|
280
|
+
/** Oldest enqueue time across queued apply and variant batches, or null. */
|
|
281
|
+
private oldestPendingChangeEnqueuedAt;
|
|
282
|
+
private notifyLivenessChange;
|
|
187
283
|
}
|
|
188
284
|
export {};
|
|
189
285
|
//# sourceMappingURL=SessionBridgeService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionBridgeService.d.ts","sourceRoot":"","sources":["../../src/services/SessionBridgeService.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EACjB,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"SessionBridgeService.d.ts","sourceRoot":"","sources":["../../src/services/SessionBridgeService.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EACjB,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAQ/B,KAAK,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAAC;AAChE,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,UAAU,GAAG,MAAM,CAAC;AACrE,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,sBAAsB,GACtB,mBAAmB,GACnB,SAAS,CAAC;AAEd,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,kBAAkB,CAAC;IAC9B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,qBAAqB,CAAC;IAC9B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,WAAW,EAAE,oBAAoB,GAAG,IAAI,CAAC;CAC1C,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,sEAAsE;AACtE,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAE5C,oEAAoE;AACpE,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAE5C;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,QAAkB,CAAC;AAEzD,0EAA0E;AAC1E,eAAO,MAAM,qBAAqB,QAA4B,CAAC;AAE/D,iEAAiE;AACjE,MAAM,MAAM,iBAAiB,GACzB;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,GAClB;IACE,QAAQ,EAAE,KAAK,CAAC;IAChB,MAAM,EACF,kBAAkB,GAClB,uBAAuB,GACvB,oBAAoB,GACpB,2BAA2B,CAAC;CACjC,CAAC;AAEN,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,IAAI,CAAC,EAAE,gBAAgB,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,gFAAgF;IAChF,aAAa,EAAE,OAAO,CAAC;IACvB,2EAA2E;IAC3E,YAAY,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,6BAA6B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,+EAA+E;IAC/E,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAC;CACzC,CAAC;AAEF;;;;;;GAMG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,iBAAiB,CAAgD;IACzE,OAAO,CAAC,cAAc,CAAmD;IACzE,OAAO,CAAC,qBAAqB,CAA4C;IACzE,OAAO,CAAC,iBAAiB,CAAuB;IAChD,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,aAAa,CAKlB;IACH,OAAO,CAAC,eAAe,CAKpB;IACH,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,MAAM,CAAyB;IAKvC,OAAO,CAAC,aAAa,CAA8C;IACnE;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB,CAAyB;IAClD,OAAO,CAAC,oBAAoB,CAAqC;IACjE,OAAO,CAAC,mBAAmB,CAAgC;IAC3D,OAAO,CAAC,eAAe,CAQrB;IAEF;;;OAGG;IACH,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAoDzC,yEAAyE;IACzE,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,gBAAgB;IAexB;;;;;OAKG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAerC,wDAAwD;IACxD,WAAW,IAAI,MAAM,EAAE;IAIvB,qCAAqC;IACrC,SAAS,IAAI,aAAa;IAI1B,sEAAsE;IACtE,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAOtC,kDAAkD;IAClD,QAAQ,IAAI,OAAO;IAInB,kEAAkE;IAClE,YAAY,IAAI,MAAM,GAAG,IAAI;IAI7B,mDAAmD;IACnD,cAAc,IAAI,MAAM,GAAG,IAAI;IAI/B;;;OAGG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAQ5C;;;OAGG;IACH,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB;IA8D5D;;OAEG;IACH,iBAAiB,IAAI,aAAa,GAAG,IAAI;IAIzC,iFAAiF;IACjF,yBAAyB,IAAI,OAAO;IAIpC,6DAA6D;IAC7D,0BAA0B,IAAI,MAAM;IAIpC,yEAAyE;IACzE,mBAAmB,IAAI,aAAa,EAAE;IAItC;;;OAGG;IACH,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI;IA2CxD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe;IAsB1E,oEAAoE;IACpE,iBAAiB,IAAI,OAAO;IAI5B,2DAA2D;IAC3D,eAAe,CAAC,IAAI,EAAE,gBAAgB,GAAG,YAAY;IASrD,uFAAuF;IACvF,mBAAmB,IAAI,aAAa,GAAG,IAAI;IAW3C;;;;OAIG;IACH,cAAc,CAAC,SAAS,SAAU,GAAG,OAAO,CAAC,aAAa,CAAC;IAwB3D;;OAEG;IACH,YAAY,CAAC,cAAc,CAAC,EAAE,aAAa,GAAG,IAAI;IAmClD,oEAAoE;IACpE,0BAA0B,CAAC,cAAc,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,IAAI;IAahF,oEAAoE;IACpE,+BAA+B,CAC7B,cAAc,CAAC,EAAE,aAAa,GAC7B,aAAa,GAAG,IAAI;IAavB,OAAO,CAAC,yBAAyB;IAgCjC;;;OAGG;IACH,8BAA8B,CAC5B,cAAc,CAAC,EAAE,aAAa,GAC7B,aAAa,GAAG,IAAI,GAAG,SAAS;IA2CnC;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,sBAAsB;IAgB/D;;OAEG;IACH,4BAA4B,IAAI,oBAAoB,GAAG,IAAI;IAM3D,gDAAgD;IAChD,oBAAoB,IAAI,iBAAiB,GAAG,IAAI;IAKhD,iEAAiE;IACjE,kBAAkB,IAAI,MAAM;IAI5B,4DAA4D;IAC5D,mBAAmB,IAAI,gBAAgB,GAAG,IAAI;IAI9C,iEAAiE;IACjE,kBAAkB,IAAI,eAAe;IAIrC,sEAAsE;IACtE,mBAAmB,CAAC,OAAO,EAAE;QAC3B,SAAS,EAAE,kBAAkB,CAAC;QAC9B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,cAAc,EAAE,OAAO,CAAC;KACzB,GAAG,IAAI;IAWR,4DAA4D;IAC5D,qBAAqB,CAAC,MAAM,EAAE;QAC5B,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QAC7B,MAAM,CAAC,EAAE,qBAAqB,CAAC;QAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC/B,GAAG,IAAI;IAuBR,wEAAwE;IACxE,OAAO,CAAC,sBAAsB;IAoB9B,4FAA4F;IAC5F,2BAA2B,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI;IAIpE,+GAA+G;IAC/G,qBAAqB,CAAC,EAAE,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,IAAI;IAItE,iFAAiF;IACjF,4BAA4B,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GAAG,IAAI;IAIjE,4DAA4D;IAC5D,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIpD,gFAAgF;IAChF,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI3C,wDAAwD;IACxD,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIzC,wEAAwE;IACxE,oBAAoB,IAAI,OAAO;IAI/B,uDAAuD;IACvD,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO;IAInE;;;;;;;;;;OAUG;IACH,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IA+BtD,gGAAgG;IAChG,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IA+B5C;;;OAGG;IACH,UAAU,IAAI,MAAM;IAgDpB;;;;;;OAMG;IACH,kBAAkB,CAAC,GAAG,GAAE,MAAmB,GAAG,eAAe;IAe7D;;;OAGG;IACH,uBAAuB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAOzD,4EAA4E;IAC5E,OAAO,CAAC,6BAA6B;IAarC,OAAO,CAAC,oBAAoB;CAS7B"}
|