@cotal-ai/connector-core 0.35.0 → 0.37.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.
- package/README.md +1 -1
- package/dist/agent.d.ts +73 -17
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +266 -54
- package/dist/agent.js.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/docs-bundle.generated.js +21 -21
- package/dist/docs-bundle.generated.js.map +1 -1
- package/dist/orientation.d.ts +1 -0
- package/dist/orientation.d.ts.map +1 -1
- package/dist/orientation.js +8 -4
- package/dist/orientation.js.map +1 -1
- package/dist/tool-specs.d.ts.map +1 -1
- package/dist/tool-specs.js +116 -11
- package/dist/tool-specs.js.map +1 -1
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# @cotal-ai/connector-core
|
|
2
2
|
|
|
3
3
|
The shared MCP-bridge runtime: the mesh agent, the `cotal_*` tool specs (including
|
|
4
|
-
`cotal_spawn` / `cotal_persona` / `cotal_despawn`), and the hook relay. The connector adapters
|
|
4
|
+
`cotal_spawn` / `cotal_persona` / `cotal_personas` / `cotal_despawn`), and the hook relay. The connector adapters
|
|
5
5
|
(Claude Code, OpenCode, Hermes) are thin clients over it.
|
|
6
6
|
|
|
7
7
|
**Tier:** `extensions/`. Peer-depends [`@cotal-ai/core`](../../packages/core); self-registers on
|
package/dist/agent.d.ts
CHANGED
|
@@ -2,11 +2,10 @@ import { EventEmitter } from "node:events";
|
|
|
2
2
|
import { CotalEndpoint, type ControlReply, type Presence, type PresenceStatus, type AttentionMode, type ChannelMode, type CotalMessage } from "@cotal-ai/core";
|
|
3
3
|
import type { AgentConfig } from "./config.js";
|
|
4
4
|
export type { AttentionMode, ChannelMode };
|
|
5
|
-
/** Client-side
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* relation by test. */
|
|
5
|
+
/** Client-side floor for a spawn action's submit + follow. The manager acceptance carries the exact
|
|
6
|
+
* connector-selected readiness budget, and core extends the follow through that budget plus
|
|
7
|
+
* delivery margin. This floor still outlives the manager's generic 30s default and protects
|
|
8
|
+
* older responders whose acceptance predates that field. */
|
|
10
9
|
export declare const SPAWN_TIMEOUT_MS = 40000;
|
|
11
10
|
/** Grace for a mesh op issued while the link is still coming up. `start()` deliberately returns
|
|
12
11
|
* immediately so the connector's MCP surface boots while the broker is absent — which means a
|
|
@@ -78,6 +77,15 @@ export interface ExactDrainResult {
|
|
|
78
77
|
* layer to wake the session now (the Stop→idle flush of held messages); `"error"` (Error) for
|
|
79
78
|
* endpoint faults.
|
|
80
79
|
*/
|
|
80
|
+
/**
|
|
81
|
+
* The five states a caller has to tell apart, derived in one place so every consumer agrees.
|
|
82
|
+
*
|
|
83
|
+
* `degraded` is the one that matters and the one a single boolean gets wrong: the endpoint is bound
|
|
84
|
+
* but the socket underneath it is down, so sends queue or fail while the client reconnects. It is
|
|
85
|
+
* NOT the same as `disconnected`, and it is not a stopped session either. `stopped` is terminal and
|
|
86
|
+
* is not a fault at all.
|
|
87
|
+
*/
|
|
88
|
+
export type ConnectionState = "ready" | "degraded" | "connecting" | "disconnected" | "stopped";
|
|
81
89
|
export declare class MeshAgent extends EventEmitter {
|
|
82
90
|
readonly ep: CotalEndpoint;
|
|
83
91
|
readonly config: AgentConfig;
|
|
@@ -109,10 +117,16 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
109
117
|
private protectedDropIds;
|
|
110
118
|
private dropUnsafe;
|
|
111
119
|
private _connected;
|
|
120
|
+
/** Raw NATS transport liveness, separate from `_connected` (the full Cotal bind/readiness). */
|
|
121
|
+
private _transportConnected;
|
|
122
|
+
/** Wall-clock time of the latest inbox drain that actually committed at least one delivery.
|
|
123
|
+
* This is measured only after the backing acknowledgements succeed, never inferred from a read
|
|
124
|
+
* attempt or from an empty inbox. */
|
|
125
|
+
private _lastInboxDrainedAt?;
|
|
112
126
|
/** Latest connection failure, retained until the endpoint binds so a bounded readiness gate can
|
|
113
127
|
* explain why an otherwise healthy host never joined the mesh. */
|
|
114
128
|
private lastConnectionError?;
|
|
115
|
-
private
|
|
129
|
+
private endpointNoticeLog;
|
|
116
130
|
private _status;
|
|
117
131
|
private _attention;
|
|
118
132
|
private _recallCursor;
|
|
@@ -140,12 +154,24 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
140
154
|
private recvKeySeq;
|
|
141
155
|
private focusExcludedIds;
|
|
142
156
|
private focusRecallUnsafeChannels;
|
|
143
|
-
private
|
|
157
|
+
private _stopping;
|
|
144
158
|
constructor(config: AgentConfig);
|
|
145
159
|
get id(): string;
|
|
146
160
|
get connected(): boolean;
|
|
147
|
-
/**
|
|
161
|
+
/** Whether this session's current NATS transport is live, independent of full endpoint readiness. */
|
|
162
|
+
get transportConnected(): boolean;
|
|
163
|
+
/** Latest pre-bind failure. A successful bind clears it; stop preserves it for post-mortem diagnosis. */
|
|
148
164
|
get connectionIssue(): string | undefined;
|
|
165
|
+
/** The latest successful, non-empty inbox drain in this session. */
|
|
166
|
+
get lastInboxDrainedAt(): number | undefined;
|
|
167
|
+
/** Whether {@link stop} has been called. Terminal, and never cleared: a stopped session does not
|
|
168
|
+
* serve again. This is the ONLY way to tell a deliberate shutdown from a lost connection, because
|
|
169
|
+
* `stop()` clears readiness and transport together, so those two read identically in both cases. */
|
|
170
|
+
get stopping(): boolean;
|
|
171
|
+
/** The three liveness facts combined, in one place. Every combination maps, so a caller never has
|
|
172
|
+
* to guess what an unlisted pair means, and a caller that disagrees with this reading can still
|
|
173
|
+
* read {@link connected}, {@link transportConnected} and {@link stopping} directly. */
|
|
174
|
+
get connectionState(): ConnectionState;
|
|
149
175
|
/** Wait for the endpoint's real post-bind connection signal. `start()` deliberately stays
|
|
150
176
|
* background for connectors whose MCP surface must boot while the broker is absent; a host that
|
|
151
177
|
* advertises mesh readiness uses this bounded gate before making that claim. */
|
|
@@ -219,6 +245,8 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
219
245
|
* starts — so memory stays ~2× the cap while the lookup horizon never shrinks below it. */
|
|
220
246
|
private markHandled;
|
|
221
247
|
inboxCount(scope?: InboxScope): number;
|
|
248
|
+
/** Local receive time of the oldest still-buffered automatic delivery, if any. */
|
|
249
|
+
oldestAutomaticReceivedAt(): number | undefined;
|
|
222
250
|
/**
|
|
223
251
|
* How far this session has read the focus-mode channel recall.
|
|
224
252
|
*
|
|
@@ -347,16 +375,26 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
347
375
|
setAttention(mode: AttentionMode): Promise<void>;
|
|
348
376
|
/** Focus recall: the channel ambient + @mentions ack-dropped since this agent entered focus,
|
|
349
377
|
* read back from the chat stream on demand and **replay-gated per channel** (a `replay=off`
|
|
350
|
-
* channel yields nothing — recall must not become a history
|
|
351
|
-
*
|
|
352
|
-
*
|
|
353
|
-
*
|
|
354
|
-
*
|
|
378
|
+
* channel yields nothing, and is named in `droppedChannels` — recall must not become a history
|
|
379
|
+
* bypass, and it must not claim a suppressed channel's window was empty and complete either).
|
|
380
|
+
* Items are marked `historical` (catch-up framing). `droppedChannels` also names channels whose
|
|
381
|
+
* earliest retained message postdates the focus-watermark — older ambient may have aged out of
|
|
382
|
+
* the per-channel window — and wildcard subscriptions (`team.>`), which recall cannot read back
|
|
383
|
+
* per concrete sub-channel (#977: a wildcard join is not itself a channel ingest can consult a
|
|
384
|
+
* replay policy for) and so cannot vouch for either (never-silent throughout). Empty unless in
|
|
385
|
+
* focus. */
|
|
355
386
|
recallAmbient(): Promise<{
|
|
356
387
|
items: InboxItem[];
|
|
357
388
|
droppedChannels: string[];
|
|
358
389
|
}>;
|
|
359
390
|
send(text: string, channel?: string, mentions?: string[]): Promise<CotalMessage>;
|
|
391
|
+
/**
|
|
392
|
+
* What a caller can TELL about a send target BEFORE the publish: whether the name
|
|
393
|
+
* already existed (joined, registry, or prior traffic) and close matches when it
|
|
394
|
+
* did not. Does not refuse create. Graded before multicast so the new message cannot
|
|
395
|
+
* make the name look pre-existing.
|
|
396
|
+
*/
|
|
397
|
+
describeSendChannel(channel: string): Promise<string>;
|
|
360
398
|
/** Throw if any name isn't a peer we've observed. Validates against the FULL roster
|
|
361
399
|
* (incl. self — your own name is a valid participant; resolvePeer's self-filter would
|
|
362
400
|
* wrongly reject it), case-insensitively. Send is all-or-nothing: one unknown @name aborts
|
|
@@ -373,10 +411,9 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
373
411
|
msg: CotalMessage;
|
|
374
412
|
peer: Presence;
|
|
375
413
|
}>;
|
|
376
|
-
/** Ask the manager to spawn a new teammate into this space (its `
|
|
377
|
-
*
|
|
378
|
-
*
|
|
379
|
-
* not the 5s op default.
|
|
414
|
+
/** Ask the manager to spawn a new teammate into this space (its `spawn` action).
|
|
415
|
+
* The request uses {@link SPAWN_TIMEOUT_MS} as its floor; after acceptance, core follows through
|
|
416
|
+
* the exact connector-selected readiness budget carried by the acceptance.
|
|
380
417
|
* How it lands — a detached PTY, a tmux window, a cmux tab — is the manager's
|
|
381
418
|
* runtime; from here it just joins the mesh as a lateral peer. `opts.agent` picks
|
|
382
419
|
* the harness (default the manager's `COTAL_DEFAULT_AGENT`, else `cotal`/Claude), `opts.model` /
|
|
@@ -394,6 +431,15 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
394
431
|
cwd?: string;
|
|
395
432
|
prompt?: string;
|
|
396
433
|
}): Promise<ControlReply>;
|
|
434
|
+
/** The manager's recorded model pin for a managed seat (`inspect.model`). Absence is a real
|
|
435
|
+
* state: a launch may pin none. Distinct from a failed inspect, which cannot attest. */
|
|
436
|
+
inspectModel(name: string): Promise<{
|
|
437
|
+
ok: true;
|
|
438
|
+
model?: string;
|
|
439
|
+
} | {
|
|
440
|
+
ok: false;
|
|
441
|
+
error: string;
|
|
442
|
+
}>;
|
|
397
443
|
/** One v0.4 manager-endpoint invoke (P2 item 1, 1c.2b): the generic {@link CotalEndpoint.invokeService}
|
|
398
444
|
* path (describe → §13.7 store fetch → digest-verified recompile → typed command), adapted back to
|
|
399
445
|
* the {@link ControlReply} shape every tool above consumes. `undefined` args are stripped BEFORE the
|
|
@@ -454,6 +500,11 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
454
500
|
announceError?: string;
|
|
455
501
|
announceOutcome?: "denied" | "unknown";
|
|
456
502
|
}>;
|
|
503
|
+
/** Mesh-side persona catalog list: name, role, model, description, scoped by the same
|
|
504
|
+
* ownership rule as `definePersona`. */
|
|
505
|
+
listPersonas(): Promise<ControlReply>;
|
|
506
|
+
/** Mesh-side persona catalog show of one card. Unauthorized / missing names are not-found. */
|
|
507
|
+
showPersona(name: string): Promise<ControlReply>;
|
|
457
508
|
/** The full roster, including ourselves. */
|
|
458
509
|
roster(): Presence[];
|
|
459
510
|
/** Our last self-reported presence status. */
|
|
@@ -476,6 +527,7 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
476
527
|
description?: string;
|
|
477
528
|
instructions?: string;
|
|
478
529
|
replay: boolean;
|
|
530
|
+
registered: boolean;
|
|
479
531
|
};
|
|
480
532
|
/** Channels we're currently subscribed to (live — reflects join/leave). */
|
|
481
533
|
joinedChannels(): string[];
|
|
@@ -532,6 +584,10 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
532
584
|
* attached Codex TUI. Consumer names are generated per reset, so normalize them before
|
|
533
585
|
* deduplicating; otherwise every `_71`, `_72`, ... would look like a new fault. */
|
|
534
586
|
private handleEndpointError;
|
|
587
|
+
private handleEndpointWarning;
|
|
588
|
+
private logEndpointNotice;
|
|
535
589
|
private log;
|
|
536
590
|
}
|
|
591
|
+
/** Names already known that differ from `channel` by one insertion, deletion, or substitution. */
|
|
592
|
+
export declare function closeChannelNames(channel: string, known: readonly string[]): string[];
|
|
537
593
|
//# sourceMappingURL=agent.d.ts.map
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAOL,aAAa,
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAOL,aAAa,EAQb,KAAK,YAAY,EAIjB,KAAK,QAAQ,EACb,KAAK,cAAc,EAEnB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI/C,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC;AAE3C;;;6DAG6D;AAC7D,eAAO,MAAM,gBAAgB,QAAS,CAAC;AAEvC;;;;;;8EAM8E;AAC9E,eAAO,MAAM,gBAAgB,QAAS,CAAC;AAEvC;;8BAE8B;AAC9B,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAItD;AAgCD,2EAA2E;AAC3E,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX;;;;;;6EAMyE;IACzE,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,GAAG,IAAI,GAAG,SAAS,CAAC;IACnC,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,kGAAkG;IAClG,UAAU,EAAE,OAAO,CAAC;IACpB,+FAA+F;IAC/F,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAaD,0GAA0G;AAC1G,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,0GAA0G;AAC1G,wBAAgB,eAAe,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CASrE;AAmBD,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,WAAW,GAAG,WAAW,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAiBD;;;;;;;;;;;;;;;GAeG;AACH;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,UAAU,GAAG,YAAY,GAAG,cAAc,GAAG,SAAS,CAAC;AAE/F,qBAAa,SAAU,SAAQ,YAAY;IACzC,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAE7B,OAAO,CAAC,KAAK,CAAiB;IAC9B;;;;;;oGAMgG;IAChG,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,cAAc,CAAqB;IAC3C;;8DAE0D;IAC1D,OAAO,CAAC,sBAAsB,CAA6D;IAC3F;wGACoG;IACpG,OAAO,CAAC,iBAAiB,CAA6B;IACtD;oDACgD;IAChD,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,oBAAoB,CAAS;IACrC;;6EAEyE;IACzE,OAAO,CAAC,oBAAoB,CAAqB;IACjD,OAAO,CAAC,gBAAgB,CAAqB;IAC7C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,+FAA+F;IAC/F,OAAO,CAAC,mBAAmB,CAAS;IACpC;;0CAEsC;IACtC,OAAO,CAAC,mBAAmB,CAAC,CAAS;IACrC;sEACkE;IAClE,OAAO,CAAC,mBAAmB,CAAC,CAAS;IACrC,OAAO,CAAC,iBAAiB,CAAmE;IAC5F,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,aAAa,CAAiC;IACtD;;kEAE8D;IAC9D,OAAO,CAAC,cAAc,CAAqB;IAC3C;;;8EAG0E;IAC1E,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,UAAU,CAAqB;IACvC;qFACiF;IACjF,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAS;IAC9B;;;;;mGAK+F;IAC/F,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAChE,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,gBAAgB,CAA6B;IACrD,OAAO,CAAC,yBAAyB,CAAqB;IACtD,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,EAAE,WAAW;IAuE/B,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,qGAAqG;IACrG,IAAI,kBAAkB,IAAI,OAAO,CAEhC;IAED,yGAAyG;IACzG,IAAI,eAAe,IAAI,MAAM,GAAG,SAAS,CAExC;IAED,oEAAoE;IACpE,IAAI,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAE3C;IAED;;yGAEqG;IACrG,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;4FAEwF;IACxF,IAAI,eAAe,IAAI,eAAe,CAIrC;IAED;;oFAEgF;IAC1E,kBAAkB,CAAC,SAAS,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA0B3D,+EAA+E;IAC/E,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAKjD,4FAA4F;IAC5F,KAAK,CAAC,OAAO,SAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YAItB,WAAW;IAqBnB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3B;;;;iGAI6F;IACvF,SAAS,IAAI,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAkB5D,OAAO,CAAC,MAAM;IA+Fd,OAAO,CAAC,MAAM;IA8Ed,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,kBAAkB;IAa1B;;;;gDAI4C;IAC5C,OAAO,CAAC,WAAW;IAwBnB;sDACkD;IAClD,SAAS,CAAC,KAAK,GAAE,UAAkB,GAAG,SAAS,EAAE;IAIjD;;;;;;;;;;;;;kEAa8D;IAC9D,YAAY,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO;IAa7C;;;sGAGkG;IAClG,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI/B;mGAC+F;IAC/F,eAAe,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAS7C,8FAA8F;IAC9F,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,UAAkB,GAAG,SAAS,EAAE;IAclE;;;;;;iDAM6C;IAC7C,oBAAoB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,gBAAgB;IA8B/D,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,OAAO;IAIf;;gGAE4F;IAC5F,OAAO,CAAC,WAAW;IAUnB,UAAU,CAAC,KAAK,GAAE,UAAkB,GAAG,MAAM;IAI7C,kFAAkF;IAClF,yBAAyB,IAAI,MAAM,GAAG,SAAS;IAS/C;;;;;;;;;;;;;;;;;;;OAmBG;IACH,IAAI,YAAY,IAAI,UAAU,CAE7B;IAED;;;;;;;OAOG;IACH,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAIpC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,WAAW,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAI1C,oFAAoF;IACpF,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIpC;;;;;;;;OAQG;IACH,eAAe,IAAI,MAAM;IAIzB,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAInC;;;;;;;;;OASG;IACH,OAAO,CAAC,eAAe;IAKvB;gCAC4B;IAC5B,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,SAAS;IAK/D;;;0EAGsE;IACtE,oBAAoB,IAAI,MAAM;IAI9B;;;;;;0GAMsG;IACtG,WAAW,IAAI,MAAM;IASrB;;;wFAGoF;IACpF,WAAW,IAAI,IAAI;IAMnB;qFACiF;IACjF,IAAI,SAAS,IAAI,aAAa,CAE7B;IAED,4FAA4F;IAC5F,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAItD,4EAA4E;IAC5E,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC;IAIjD;;;;;;;;iDAQ6C;IACvC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAUlF;;;;;;kCAM8B;IACxB,YAAY,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BtD;;;;;;;;;iBASa;IACP,aAAa,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QAAC,eAAe,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IA0B3E,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAOtF;;;;;OAKG;IACG,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAe3D;;;;;2DAKuD;IACvD,OAAO,CAAC,mBAAmB;IASrB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAKhE;;wEAEoE;IACpE,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAI3C,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,YAAY,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAC;IAUtF;;;;;;;;;;;kFAW8E;IACxE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAiDpM;6FACyF;IACnF,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAStG;;;;;;sEAMkE;YACpD,aAAa;IAyC3B;;;;;kGAK8F;YAChF,gBAAgB;IAS9B;;;;;;;4FAOwF;IAClF,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAUlF;uGACmG;IAC7F,YAAY,CAAC,IAAI,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAM1E;;;;;;;;;;;;;;;;;;;+FAmB2F;IACrF,aAAa,CAAC,GAAG,EAAE;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,YAAY,GAAG;QAAE,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;KAAE,CAAC;IA8D9F;6CACyC;IACnC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC;IAK3C,8FAA8F;IACxF,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAOtD,4CAA4C;IAC5C,MAAM,IAAI,QAAQ,EAAE;IAIpB,8CAA8C;IAC9C,IAAI,MAAM,IAAI,cAAc,CAE3B;IAEK,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzE;;;8EAG0E;IACpE,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9D;;;;qFAIiF;IACjF,eAAe,IAAI,MAAM,GAAG,SAAS;IAUrC;oFACgF;IAChF,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE;IAUnH,2EAA2E;IAC3E,cAAc,IAAI,MAAM,EAAE;IAI1B;;iEAE6D;IACvD,YAAY,IAAI,OAAO,CAC3B;QACE,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,OAAO,CAAC;QAChB,MAAM,EAAE,OAAO,CAAC;QAChB,eAAe,EAAE,OAAO,CAAC;QACzB,cAAc,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;QACvC,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,WAAW,GAAG,QAAQ,CAAC;KAC9B,EAAE,CACJ;IA6DD;;;;;2BAKuB;IACjB,WAAW,CACf,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAKtF,mEAAmE;IAC7D,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC;IAO/D,OAAO,CAAC,GAAG;IAIX;;wEAEoE;YACtD,gBAAgB;IAI9B;;;;+EAI2E;IACrE,aAAa,CAAC,SAAS,GAAE,MAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxE;;;6DAGyD;IACzD,OAAO,CAAC,eAAe;IAmBvB;;qEAEiE;IACjE,OAAO,CAAC,mBAAmB;IAO3B;;uFAEmF;IACnF,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,GAAG;CAGZ;AAED,kGAAkG;AAClG,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAOrF"}
|