ccgateway 0.1.8 → 0.2.1
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/daemon.d.ts.map +1 -1
- package/dist/daemon.js +5 -36
- package/dist/daemon.js.map +1 -1
- package/dist/messaging.d.ts +16 -2
- package/dist/messaging.d.ts.map +1 -1
- package/dist/messaging.js +58 -20
- package/dist/messaging.js.map +1 -1
- package/dist/plugin.d.ts +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugins/discord-gateway.d.ts.map +1 -1
- package/dist/plugins/discord-gateway.js +90 -11
- package/dist/plugins/discord-gateway.js.map +1 -1
- package/dist/plugins/slack-gateway.d.ts +2 -2
- package/dist/plugins/slack-gateway.d.ts.map +1 -1
- package/dist/plugins/slack-gateway.js +195 -111
- package/dist/plugins/slack-gateway.js.map +1 -1
- package/dist/router.d.ts +14 -12
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +62 -62
- package/dist/router.js.map +1 -1
- package/dist/skills.d.ts +6 -1
- package/dist/skills.d.ts.map +1 -1
- package/dist/skills.js +21 -6
- package/dist/skills.js.map +1 -1
- package/dist/spawner.d.ts +12 -26
- package/dist/spawner.d.ts.map +1 -1
- package/dist/spawner.js +145 -93
- package/dist/spawner.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { App } from "@slack/bolt";
|
|
2
2
|
import { logger } from "../logger.js";
|
|
3
|
+
// ── Constants ────────────────────────────────────────────────────────────
|
|
4
|
+
/** Minimum interval between Slack message updates (rate-limit safe). */
|
|
5
|
+
const UPDATE_THROTTLE_MS = 1500;
|
|
6
|
+
/** Slack section block text limit. */
|
|
7
|
+
const SECTION_TEXT_LIMIT = 3000;
|
|
3
8
|
// ── Helpers ───────────────────────────────────────────────────────────────
|
|
4
9
|
/**
|
|
5
10
|
* Resolve a config value: if it starts with "$", read from process.env.
|
|
@@ -55,10 +60,10 @@ export function markdownToMrkdwn(md) {
|
|
|
55
60
|
return result;
|
|
56
61
|
}
|
|
57
62
|
/**
|
|
58
|
-
* Split a message into chunks that fit within Slack's
|
|
59
|
-
* Prefers splitting at newline boundaries.
|
|
63
|
+
* Split a message into chunks that fit within Slack's section block text
|
|
64
|
+
* limit (3000 chars). Prefers splitting at newline boundaries.
|
|
60
65
|
*/
|
|
61
|
-
export function splitMessage(text, maxLen =
|
|
66
|
+
export function splitMessage(text, maxLen = SECTION_TEXT_LIMIT) {
|
|
62
67
|
if (text.length <= maxLen)
|
|
63
68
|
return [text];
|
|
64
69
|
const chunks = [];
|
|
@@ -83,11 +88,26 @@ export function splitMessage(text, maxLen = 3900) {
|
|
|
83
88
|
}
|
|
84
89
|
return chunks;
|
|
85
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Build Slack blocks from mrkdwn text, splitting into multiple section
|
|
93
|
+
* blocks if the text exceeds the 3000-char section limit.
|
|
94
|
+
*/
|
|
95
|
+
function buildBlocks(mrkdwn) {
|
|
96
|
+
const chunks = splitMessage(mrkdwn);
|
|
97
|
+
return chunks.map((chunk) => ({
|
|
98
|
+
type: "section",
|
|
99
|
+
text: { type: "mrkdwn", text: chunk },
|
|
100
|
+
}));
|
|
101
|
+
}
|
|
86
102
|
// ── Plugin factory ────────────────────────────────────────────────────────
|
|
87
103
|
export default function createSlackGateway(pluginConfig) {
|
|
88
104
|
let core;
|
|
89
105
|
const bots = [];
|
|
90
106
|
const resolvedTokens = new Map();
|
|
107
|
+
// Per-channel message queue — prevents concurrent spawns for the same channel.
|
|
108
|
+
const channelLocks = new Map();
|
|
109
|
+
// Message deduplication — socket mode can replay events during reconnection.
|
|
110
|
+
const seenMessages = new Set();
|
|
91
111
|
/**
|
|
92
112
|
* Send a message to a specific channel using a specific bot.
|
|
93
113
|
*/
|
|
@@ -120,9 +140,6 @@ export default function createSlackGateway(pluginConfig) {
|
|
|
120
140
|
case "/new":
|
|
121
141
|
case "/reset": {
|
|
122
142
|
const sessionKey = core.sessions.getOrCreateSession(agentId, "slack", channelId);
|
|
123
|
-
// SessionManager.resetSession expects (agentId, sessionKey)
|
|
124
|
-
// but the interface exposed via CcgCore only has getOrCreateSession.
|
|
125
|
-
// We just create a new session reference which effectively resets context.
|
|
126
143
|
return `Session reset for agent *${agentId}* in this channel.`;
|
|
127
144
|
}
|
|
128
145
|
case "/status": {
|
|
@@ -139,7 +156,6 @@ export default function createSlackGateway(pluginConfig) {
|
|
|
139
156
|
* Register message and event handlers for a single bot App.
|
|
140
157
|
*/
|
|
141
158
|
function registerHandlers(app, botId) {
|
|
142
|
-
// Handle messages
|
|
143
159
|
app.message(async ({ message, say, client }) => {
|
|
144
160
|
// Ignore bot messages and message_changed subtypes
|
|
145
161
|
if (!message || message.subtype)
|
|
@@ -147,125 +163,193 @@ export default function createSlackGateway(pluginConfig) {
|
|
|
147
163
|
// message type narrowing — we only handle standard user messages
|
|
148
164
|
if (!("user" in message) || !("text" in message))
|
|
149
165
|
return;
|
|
166
|
+
// Deduplicate — socket mode can replay events during reconnection.
|
|
167
|
+
// Key includes botId so different bots can still process the same message.
|
|
168
|
+
const msgTs = message.ts;
|
|
169
|
+
const dedupKey = `${botId}:${msgTs}`;
|
|
170
|
+
if (seenMessages.has(dedupKey))
|
|
171
|
+
return;
|
|
172
|
+
seenMessages.add(dedupKey);
|
|
173
|
+
if (seenMessages.size > 5000) {
|
|
174
|
+
const all = [...seenMessages];
|
|
175
|
+
seenMessages.clear();
|
|
176
|
+
for (const id of all.slice(-2500))
|
|
177
|
+
seenMessages.add(id);
|
|
178
|
+
}
|
|
150
179
|
const userId = message.user;
|
|
151
180
|
const text = message.text ?? "";
|
|
152
181
|
const channelId = message.channel;
|
|
153
182
|
const messageTs = message.ts;
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
// to bot-level binding (needed for Slack DMs where channel IDs are dynamic)
|
|
163
|
-
const agentId = core.router.resolveAgent("slack", channelId) ??
|
|
164
|
-
core.router.resolveAgentByBot("slack", botId);
|
|
165
|
-
if (!agentId) {
|
|
166
|
-
logger.debug(`slack: no agent bound to channel ${channelId} or bot ${botId}`);
|
|
167
|
-
return;
|
|
168
|
-
}
|
|
169
|
-
// Check if message is a slash command (text-based, not actual Slack slash commands)
|
|
170
|
-
const trimmed = text.trim();
|
|
171
|
-
if (pluginConfig.commands.includes(trimmed)) {
|
|
172
|
-
const cmdResponse = await handleSlashCommand(trimmed, agentId, channelId, userId);
|
|
173
|
-
if (cmdResponse) {
|
|
174
|
-
await say({
|
|
175
|
-
text: cmdResponse,
|
|
176
|
-
thread_ts: threadTs ?? messageTs,
|
|
177
|
-
});
|
|
183
|
+
// Per-channel queue — serialize so only one spawn runs at a time
|
|
184
|
+
const lockKey = `${botId}:${channelId}`;
|
|
185
|
+
const prev = channelLocks.get(lockKey) ?? Promise.resolve();
|
|
186
|
+
const current = prev.then(() => handleSlackMsg(), () => handleSlackMsg());
|
|
187
|
+
channelLocks.set(lockKey, current);
|
|
188
|
+
current.finally(() => {
|
|
189
|
+
if (channelLocks.get(lockKey) === current) {
|
|
190
|
+
channelLocks.delete(lockKey);
|
|
178
191
|
}
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
//
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
if (!resp.ok)
|
|
207
|
-
continue;
|
|
208
|
-
attachments.push({
|
|
209
|
-
type: file.mimetype ?? "application/octet-stream",
|
|
210
|
-
data: Buffer.from(await resp.arrayBuffer()),
|
|
211
|
-
filename: file.name ?? undefined,
|
|
212
|
-
});
|
|
213
|
-
}
|
|
214
|
-
catch {
|
|
215
|
-
// Skip failed downloads
|
|
216
|
-
}
|
|
192
|
+
});
|
|
193
|
+
return current;
|
|
194
|
+
async function handleSlackMsg() {
|
|
195
|
+
const threadTs = "thread_ts" in message ? message.thread_ts : undefined;
|
|
196
|
+
logger.info(`slack: bot "${botId}" received message in channel ${channelId} from user ${userId}`);
|
|
197
|
+
// Check if user is allowed (empty allowedUsers means allow everyone)
|
|
198
|
+
if (pluginConfig.allowedUsers.length > 0 && !pluginConfig.allowedUsers.includes(userId)) {
|
|
199
|
+
logger.debug(`slack: ignoring message from non-allowed user ${userId}`);
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
// Resolve agent from bindings — try exact channel first, then fall back
|
|
203
|
+
// to bot-level binding (needed for Slack DMs where channel IDs are dynamic)
|
|
204
|
+
const agentId = core.router.resolveAgent("slack", channelId) ??
|
|
205
|
+
core.router.resolveAgentByBot("slack", botId);
|
|
206
|
+
if (!agentId) {
|
|
207
|
+
logger.debug(`slack: no agent bound to channel ${channelId} or bot ${botId}`);
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
// Check if message is a slash command (text-based, not actual Slack slash commands)
|
|
211
|
+
const trimmed = text.trim();
|
|
212
|
+
if (pluginConfig.commands.includes(trimmed)) {
|
|
213
|
+
const cmdResponse = await handleSlashCommand(trimmed, agentId, channelId, userId);
|
|
214
|
+
if (cmdResponse) {
|
|
215
|
+
await say({
|
|
216
|
+
text: cmdResponse,
|
|
217
|
+
thread_ts: threadTs ?? messageTs,
|
|
218
|
+
});
|
|
217
219
|
}
|
|
220
|
+
return;
|
|
218
221
|
}
|
|
219
|
-
//
|
|
220
|
-
const
|
|
221
|
-
|
|
222
|
-
|
|
222
|
+
// Post initial "Thinking..." message that we'll update with streaming content
|
|
223
|
+
const replyTs = threadTs ?? messageTs;
|
|
224
|
+
let initialMsg;
|
|
225
|
+
try {
|
|
226
|
+
initialMsg = await client.chat.postMessage({
|
|
223
227
|
channel: channelId,
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
//
|
|
235
|
-
const
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
228
|
+
text: "Thinking...",
|
|
229
|
+
thread_ts: replyTs,
|
|
230
|
+
});
|
|
231
|
+
}
|
|
232
|
+
catch {
|
|
233
|
+
// Fallback: use say() if postMessage fails
|
|
234
|
+
initialMsg = await say({ text: "Thinking...", thread_ts: replyTs });
|
|
235
|
+
}
|
|
236
|
+
const sentTs = initialMsg?.ts;
|
|
237
|
+
let lastUpdateTime = 0;
|
|
238
|
+
// Throttled streaming callback — updates the message at most every UPDATE_THROTTLE_MS
|
|
239
|
+
const onChunk = (accumulated) => {
|
|
240
|
+
if (!sentTs)
|
|
241
|
+
return;
|
|
242
|
+
const now = Date.now();
|
|
243
|
+
if (now - lastUpdateTime < UPDATE_THROTTLE_MS)
|
|
244
|
+
return;
|
|
245
|
+
lastUpdateTime = now;
|
|
246
|
+
const mrkdwn = markdownToMrkdwn(accumulated);
|
|
247
|
+
// Cap at section limit for streaming preview
|
|
248
|
+
const preview = mrkdwn.length > SECTION_TEXT_LIMIT - 3
|
|
249
|
+
? mrkdwn.slice(0, SECTION_TEXT_LIMIT - 3) + "..."
|
|
250
|
+
: mrkdwn;
|
|
251
|
+
client.chat.update({
|
|
252
|
+
channel: channelId,
|
|
253
|
+
ts: sentTs,
|
|
254
|
+
text: preview,
|
|
240
255
|
blocks: [
|
|
241
256
|
{
|
|
242
257
|
type: "section",
|
|
243
|
-
text: { type: "mrkdwn", text:
|
|
258
|
+
text: { type: "mrkdwn", text: preview },
|
|
244
259
|
},
|
|
245
260
|
],
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
catch (err) {
|
|
251
|
-
const errMsg = err instanceof Error ? err.message : String(err);
|
|
252
|
-
logger.error(`slack: error handling message: ${errMsg}`);
|
|
253
|
-
await say({
|
|
254
|
-
text: `:warning: Error: ${errMsg}`,
|
|
255
|
-
thread_ts: threadTs ?? messageTs,
|
|
256
|
-
});
|
|
257
|
-
}
|
|
258
|
-
finally {
|
|
259
|
-
// Remove hourglass reaction
|
|
261
|
+
}).catch(() => { });
|
|
262
|
+
};
|
|
260
263
|
try {
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
264
|
+
// Extract file attachments (Slack files require bot token to download)
|
|
265
|
+
const attachments = [];
|
|
266
|
+
if ("files" in message && Array.isArray(message.files)) {
|
|
267
|
+
const bot = bots.find((b) => b.botId === botId);
|
|
268
|
+
const token = bot ? resolvedTokens.get(botId)?.token : undefined;
|
|
269
|
+
for (const file of message.files) {
|
|
270
|
+
const url = file.url_private_download ?? file.url_private;
|
|
271
|
+
if (!url)
|
|
272
|
+
continue;
|
|
273
|
+
try {
|
|
274
|
+
const resp = await fetch(url, {
|
|
275
|
+
headers: token ? { Authorization: `Bearer ${token}` } : {},
|
|
276
|
+
});
|
|
277
|
+
if (!resp.ok)
|
|
278
|
+
continue;
|
|
279
|
+
attachments.push({
|
|
280
|
+
type: file.mimetype ?? "application/octet-stream",
|
|
281
|
+
data: Buffer.from(await resp.arrayBuffer()),
|
|
282
|
+
filename: file.name ?? undefined,
|
|
283
|
+
});
|
|
284
|
+
}
|
|
285
|
+
catch {
|
|
286
|
+
// Skip failed downloads
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
// Build IncomingMessage
|
|
291
|
+
const incoming = {
|
|
292
|
+
from: {
|
|
293
|
+
gateway: "slack",
|
|
294
|
+
channel: channelId,
|
|
295
|
+
user: userId,
|
|
296
|
+
userId,
|
|
297
|
+
messageId: messageTs,
|
|
298
|
+
},
|
|
299
|
+
to: { agent: agentId },
|
|
300
|
+
content: text,
|
|
301
|
+
attachments,
|
|
302
|
+
};
|
|
303
|
+
// Route the message with streaming callback
|
|
304
|
+
const response = await core.router.route(incoming, onChunk);
|
|
305
|
+
// Final update: replace initial message + send overflow chunks
|
|
306
|
+
const mrkdwn = markdownToMrkdwn(response);
|
|
307
|
+
const blocks = buildBlocks(mrkdwn);
|
|
308
|
+
if (sentTs) {
|
|
309
|
+
// First block goes into the edited message
|
|
310
|
+
await client.chat.update({
|
|
311
|
+
channel: channelId,
|
|
312
|
+
ts: sentTs,
|
|
313
|
+
text: blocks[0]?.text.text ?? response,
|
|
314
|
+
blocks: [blocks[0]],
|
|
315
|
+
});
|
|
316
|
+
// Remaining blocks as new messages
|
|
317
|
+
for (let i = 1; i < blocks.length; i++) {
|
|
318
|
+
await say({
|
|
319
|
+
text: blocks[i].text.text,
|
|
320
|
+
blocks: [blocks[i]],
|
|
321
|
+
thread_ts: replyTs,
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
else {
|
|
326
|
+
// No initial message to edit — send all as new
|
|
327
|
+
for (const block of blocks) {
|
|
328
|
+
await say({
|
|
329
|
+
text: block.text.text,
|
|
330
|
+
blocks: [block],
|
|
331
|
+
thread_ts: replyTs,
|
|
332
|
+
});
|
|
333
|
+
}
|
|
334
|
+
}
|
|
266
335
|
}
|
|
267
|
-
catch {
|
|
268
|
-
|
|
336
|
+
catch (err) {
|
|
337
|
+
const errMsg = err instanceof Error ? err.message : String(err);
|
|
338
|
+
logger.error(`slack: error handling message: ${errMsg}`);
|
|
339
|
+
// Update initial message with error, or send new error message
|
|
340
|
+
if (sentTs) {
|
|
341
|
+
await client.chat.update({
|
|
342
|
+
channel: channelId,
|
|
343
|
+
ts: sentTs,
|
|
344
|
+
text: `:warning: Error: ${errMsg}`,
|
|
345
|
+
}).catch(() => { });
|
|
346
|
+
}
|
|
347
|
+
else {
|
|
348
|
+
await say({
|
|
349
|
+
text: `:warning: Error: ${errMsg}`,
|
|
350
|
+
thread_ts: replyTs,
|
|
351
|
+
});
|
|
352
|
+
}
|
|
269
353
|
}
|
|
270
354
|
}
|
|
271
355
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack-gateway.js","sourceRoot":"","sources":["../../src/plugins/slack-gateway.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slack-gateway.js","sourceRoot":"","sources":["../../src/plugins/slack-gateway.ts"],"names":[],"mappings":"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"}
|
package/dist/router.d.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { AgentRegistry } from "./agents.js";
|
|
2
|
-
import type { AsyncTaskWatcher } from "./async-watcher.js";
|
|
3
2
|
import type { SessionManager } from "./sessions.js";
|
|
4
3
|
import type { ContextBuilder } from "./context.js";
|
|
5
|
-
import type { CCSpawner } from "./spawner.js";
|
|
4
|
+
import type { CCSpawner, StreamCallback } from "./spawner.js";
|
|
6
5
|
import type { IncomingMessage, BindingConfig } from "./types.js";
|
|
7
6
|
export declare class MessageRouter {
|
|
8
7
|
private agents;
|
|
@@ -10,8 +9,7 @@ export declare class MessageRouter {
|
|
|
10
9
|
private context;
|
|
11
10
|
private spawner;
|
|
12
11
|
private bindings;
|
|
13
|
-
|
|
14
|
-
constructor(agents: AgentRegistry, sessions: SessionManager, context: ContextBuilder, spawner: CCSpawner, bindings: BindingConfig[], watcher?: AsyncTaskWatcher | undefined);
|
|
12
|
+
constructor(agents: AgentRegistry, sessions: SessionManager, context: ContextBuilder, spawner: CCSpawner, bindings: BindingConfig[]);
|
|
15
13
|
/**
|
|
16
14
|
* Resolve which agent handles a message based on bindings.
|
|
17
15
|
* Given (gateway, channelId), find the matching binding and return binding.agent.
|
|
@@ -26,15 +24,19 @@ export declare class MessageRouter {
|
|
|
26
24
|
* Full message dispatch pipeline.
|
|
27
25
|
*
|
|
28
26
|
* 1. Look up agent config from registry
|
|
29
|
-
* 2.
|
|
30
|
-
* 3.
|
|
31
|
-
* 4.
|
|
32
|
-
* 5.
|
|
33
|
-
* 6.
|
|
34
|
-
* 7.
|
|
35
|
-
* 8.
|
|
27
|
+
* 2. Short-circuit trivial messages (thanks, ok, etc.)
|
|
28
|
+
* 3. Derive session key: {agentId}:{gateway}:{channel}
|
|
29
|
+
* 4. Get or create session
|
|
30
|
+
* 5. Append user message to session
|
|
31
|
+
* 6. Build context
|
|
32
|
+
* 7. Spawn claude with streaming (or batch if no onChunk)
|
|
33
|
+
* 8. Append assistant response to session (or error on failure)
|
|
34
|
+
* 9. Return response text
|
|
35
|
+
*
|
|
36
|
+
* When `onChunk` is provided, uses the streaming spawner so callers
|
|
37
|
+
* (Discord, Slack) can relay incremental text to the user in real time.
|
|
36
38
|
*/
|
|
37
|
-
route(message: IncomingMessage): Promise<string>;
|
|
39
|
+
route(message: IncomingMessage, onChunk?: StreamCallback): Promise<string>;
|
|
38
40
|
/**
|
|
39
41
|
* Add a binding at runtime.
|
|
40
42
|
*/
|
package/dist/router.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAc,cAAc,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAc,aAAa,EAAE,MAAM,YAAY,CAAC;AAwB7E,qBAAa,aAAa;IAEtB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ;gBAJR,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,aAAa,EAAE;IAGnC;;;OAGG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOpE;;;OAGG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOrE;;;;;;;;;;;;;;;OAeG;IACG,KAAK,CACT,OAAO,EAAE,eAAe,EACxB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC;IAgIlB;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAIxC;;OAEG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE;IAIrD;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAI7D;;;;OAIG;YACW,mBAAmB;CAmDlC;AAkDD,yDAAyD;AACzD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAY/E"}
|