@inline-openclaw/inline 0.0.3 → 0.0.4

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.
@@ -3,8 +3,14 @@ import path from "node:path";
3
3
  import { createReplyPrefixOptions, createTypingCallbacks, logInboundDrop, resolveControlCommandGate, resolveMentionGatingWithBypass, } from "openclaw/plugin-sdk";
4
4
  import { InlineSdkClient, JsonFileStateStore, Method } from "@inline-chat/realtime-sdk";
5
5
  import { resolveInlineToken } from "./accounts.js";
6
+ import { resolveInlineGroupRequireMention } from "./policy.js";
6
7
  import { getInlineRuntime } from "../runtime.js";
7
8
  const CHANNEL_ID = "inline";
9
+ const DEFAULT_GROUP_HISTORY_LIMIT = 12;
10
+ const DEFAULT_DM_HISTORY_LIMIT = 6;
11
+ const HISTORY_LINE_MAX_CHARS = 280;
12
+ const BOT_MESSAGE_CACHE_LIMIT = 500;
13
+ const REACTION_TARGET_LOOKUP_LIMIT = 8;
8
14
  function normalizeAllowEntry(raw) {
9
15
  return raw.trim().replace(/^inline:/i, "").replace(/^user:/i, "");
10
16
  }
@@ -54,6 +60,146 @@ function rewriteNumericMentionsToUsernames(text, senderProfilesById) {
54
60
  return `${prefix}@${username}`;
55
61
  });
56
62
  }
63
+ function rememberBotMessageId(cache, chatId, messageId) {
64
+ const key = String(chatId);
65
+ const list = cache.get(key) ?? [];
66
+ const nextId = String(messageId);
67
+ if (!list.includes(nextId))
68
+ list.push(nextId);
69
+ if (list.length > BOT_MESSAGE_CACHE_LIMIT) {
70
+ list.splice(0, list.length - BOT_MESSAGE_CACHE_LIMIT);
71
+ }
72
+ cache.set(key, list);
73
+ }
74
+ function hasBotMessageId(cache, chatId, messageId) {
75
+ const key = String(chatId);
76
+ return (cache.get(key) ?? []).includes(String(messageId));
77
+ }
78
+ async function isReactionTargetBotMessage(params) {
79
+ if (hasBotMessageId(params.botMessageIdsByChat, params.chatId, params.messageId)) {
80
+ return true;
81
+ }
82
+ const result = await params.client.invokeRaw(Method.GET_CHAT_HISTORY, {
83
+ oneofKind: "getChatHistory",
84
+ getChatHistory: {
85
+ peerId: {
86
+ type: {
87
+ oneofKind: "chat",
88
+ chat: { chatId: params.chatId },
89
+ },
90
+ },
91
+ offsetId: params.messageId + 1n,
92
+ limit: REACTION_TARGET_LOOKUP_LIMIT,
93
+ },
94
+ });
95
+ if (result.oneofKind !== "getChatHistory") {
96
+ return false;
97
+ }
98
+ const messages = result.getChatHistory.messages ?? [];
99
+ for (const item of messages) {
100
+ if (item.fromId === params.meId) {
101
+ rememberBotMessageId(params.botMessageIdsByChat, params.chatId, item.id);
102
+ }
103
+ }
104
+ const target = messages.find((item) => item.id === params.messageId);
105
+ if (!target)
106
+ return false;
107
+ return target.fromId === params.meId;
108
+ }
109
+ function normalizeHistoryText(raw) {
110
+ const compact = (raw ?? "").replace(/\s+/g, " ").trim();
111
+ if (!compact)
112
+ return "";
113
+ if (compact.length <= HISTORY_LINE_MAX_CHARS)
114
+ return compact;
115
+ return `${compact.slice(0, HISTORY_LINE_MAX_CHARS - 1)}…`;
116
+ }
117
+ function resolveHistorySenderLabel(params) {
118
+ if (params.senderId === params.meId)
119
+ return "assistant";
120
+ const senderId = String(params.senderId);
121
+ const profile = params.senderProfilesById.get(senderId);
122
+ if (profile?.username)
123
+ return `@${profile.username}`;
124
+ if (profile?.name)
125
+ return profile.name;
126
+ return `user:${senderId}`;
127
+ }
128
+ function resolveHistoryLimit(params) {
129
+ if (params.isGroup) {
130
+ return params.historyLimit ?? DEFAULT_GROUP_HISTORY_LIMIT;
131
+ }
132
+ return params.dmHistoryLimit ?? params.historyLimit ?? DEFAULT_DM_HISTORY_LIMIT;
133
+ }
134
+ async function buildHistoryContext(params) {
135
+ if (params.historyLimit <= 0) {
136
+ return {
137
+ historyText: null,
138
+ repliedToBot: params.replyToMsgId != null &&
139
+ hasBotMessageId(params.botMessageIdsByChat, params.chatId, params.replyToMsgId),
140
+ };
141
+ }
142
+ const result = await params.client.invokeRaw(Method.GET_CHAT_HISTORY, {
143
+ oneofKind: "getChatHistory",
144
+ getChatHistory: {
145
+ peerId: {
146
+ type: {
147
+ oneofKind: "chat",
148
+ chat: { chatId: params.chatId },
149
+ },
150
+ },
151
+ offsetId: params.currentMessageId,
152
+ limit: params.historyLimit,
153
+ },
154
+ });
155
+ if (result.oneofKind !== "getChatHistory") {
156
+ return {
157
+ historyText: null,
158
+ repliedToBot: params.replyToMsgId != null &&
159
+ hasBotMessageId(params.botMessageIdsByChat, params.chatId, params.replyToMsgId),
160
+ };
161
+ }
162
+ const messages = [...(result.getChatHistory.messages ?? [])]
163
+ .filter((item) => item.id !== params.currentMessageId)
164
+ .sort((a, b) => {
165
+ const byDate = Number(a.date - b.date);
166
+ if (byDate !== 0)
167
+ return byDate;
168
+ if (a.id === b.id)
169
+ return 0;
170
+ return a.id < b.id ? -1 : 1;
171
+ });
172
+ const lines = [];
173
+ let repliedToBot = params.replyToMsgId != null &&
174
+ hasBotMessageId(params.botMessageIdsByChat, params.chatId, params.replyToMsgId);
175
+ for (const item of messages) {
176
+ if (item.fromId === params.meId) {
177
+ rememberBotMessageId(params.botMessageIdsByChat, params.chatId, item.id);
178
+ }
179
+ if (params.replyToMsgId != null &&
180
+ item.id === params.replyToMsgId &&
181
+ item.fromId === params.meId) {
182
+ repliedToBot = true;
183
+ }
184
+ const text = normalizeHistoryText(item.message);
185
+ if (!text)
186
+ continue;
187
+ const label = resolveHistorySenderLabel({
188
+ senderId: item.fromId,
189
+ meId: params.meId,
190
+ senderProfilesById: params.senderProfilesById,
191
+ });
192
+ const replySuffix = item.replyToMsgId != null ? ` ->${String(item.replyToMsgId)}` : "";
193
+ lines.push(`#${String(item.id)}${replySuffix} ${label}: ${text}`);
194
+ }
195
+ if (!lines.length) {
196
+ return { historyText: null, repliedToBot };
197
+ }
198
+ return {
199
+ historyText: `Recent thread messages (oldest -> newest):\n${lines.join("\n")}`,
200
+ repliedToBot,
201
+ };
202
+ }
57
203
  export async function monitorInlineProvider(params) {
58
204
  const { cfg, account, runtime, abortSignal, log, statusSink } = params;
59
205
  const core = getInlineRuntime();
@@ -81,6 +227,7 @@ export async function monitorInlineProvider(params) {
81
227
  log?.info(`[${account.accountId}] inline connected (me=${String(me.userId)})`);
82
228
  const chatCache = new Map();
83
229
  const senderProfilesById = new Map();
230
+ const botMessageIdsByChat = new Map();
84
231
  const hydratedParticipantChats = new Set();
85
232
  const participantFetches = new Map();
86
233
  const hydrateChatParticipants = async (chatId) => {
@@ -127,15 +274,83 @@ export async function monitorInlineProvider(params) {
127
274
  for await (const event of client.events()) {
128
275
  if (abortSignal.aborted)
129
276
  break;
130
- if (event.kind !== "message.new")
131
- continue;
132
- const msg = event.message;
133
- const rawBody = messageText(msg);
134
- if (!rawBody)
135
- continue;
136
- // Ignore echoes / our own outbound messages.
137
- if (msg.out || msg.fromId === me.userId)
277
+ let msg;
278
+ let rawBody = "";
279
+ let reactionEvent = null;
280
+ if (event.kind === "message.new") {
281
+ msg = event.message;
282
+ rawBody = messageText(msg);
283
+ if (!rawBody)
284
+ continue;
285
+ // Ignore echoes / our own outbound messages.
286
+ if (msg.out || msg.fromId === me.userId)
287
+ continue;
288
+ }
289
+ else if (event.kind === "reaction.add") {
290
+ if (event.reaction.userId === me.userId)
291
+ continue;
292
+ const onBotMessage = await isReactionTargetBotMessage({
293
+ client,
294
+ chatId: event.chatId,
295
+ messageId: event.reaction.messageId,
296
+ meId: me.userId,
297
+ botMessageIdsByChat,
298
+ }).catch((err) => {
299
+ statusSink?.({ lastError: `getChatHistory (reaction target) failed: ${String(err)}` });
300
+ return false;
301
+ });
302
+ if (!onBotMessage)
303
+ continue;
304
+ reactionEvent = {
305
+ action: "added",
306
+ emoji: event.reaction.emoji,
307
+ targetMessageId: event.reaction.messageId,
308
+ };
309
+ msg = {
310
+ id: event.reaction.messageId,
311
+ chatId: event.chatId,
312
+ date: event.date,
313
+ fromId: event.reaction.userId,
314
+ message: "",
315
+ out: false,
316
+ mentioned: false,
317
+ replyToMsgId: event.reaction.messageId,
318
+ };
319
+ }
320
+ else if (event.kind === "reaction.delete") {
321
+ if (event.userId === me.userId)
322
+ continue;
323
+ const onBotMessage = await isReactionTargetBotMessage({
324
+ client,
325
+ chatId: event.chatId,
326
+ messageId: event.messageId,
327
+ meId: me.userId,
328
+ botMessageIdsByChat,
329
+ }).catch((err) => {
330
+ statusSink?.({ lastError: `getChatHistory (reaction target) failed: ${String(err)}` });
331
+ return false;
332
+ });
333
+ if (!onBotMessage)
334
+ continue;
335
+ reactionEvent = {
336
+ action: "removed",
337
+ emoji: event.emoji,
338
+ targetMessageId: event.messageId,
339
+ };
340
+ msg = {
341
+ id: event.messageId,
342
+ chatId: event.chatId,
343
+ date: event.date,
344
+ fromId: event.userId,
345
+ message: "",
346
+ out: false,
347
+ mentioned: false,
348
+ replyToMsgId: event.messageId,
349
+ };
350
+ }
351
+ else {
138
352
  continue;
353
+ }
139
354
  const chatId = event.chatId;
140
355
  statusSink?.({ lastInboundAt: Date.now() });
141
356
  let chatInfo;
@@ -153,6 +368,19 @@ export async function monitorInlineProvider(params) {
153
368
  const senderProfile = senderProfilesById.get(senderId);
154
369
  const senderUsername = senderProfile?.username;
155
370
  const senderName = senderProfile?.name ?? (!isGroup ? chatInfo.title ?? undefined : undefined);
371
+ if (reactionEvent) {
372
+ const actor = senderUsername != null && senderUsername.length > 0
373
+ ? `@${senderUsername}`
374
+ : senderName ?? `user:${senderId}`;
375
+ const emoji = reactionEvent.emoji.trim() || "a reaction";
376
+ const messageId = String(reactionEvent.targetMessageId);
377
+ if (reactionEvent.action === "added") {
378
+ rawBody = `${actor} reacted with ${emoji} to your message #${messageId}`;
379
+ }
380
+ else {
381
+ rawBody = `${actor} removed ${emoji} from your message #${messageId}`;
382
+ }
383
+ }
156
384
  const dmPolicy = account.config.dmPolicy ?? "pairing";
157
385
  const defaultGroupPolicy = cfg.channels?.defaults?.groupPolicy;
158
386
  const groupPolicy = account.config.groupPolicy ?? defaultGroupPolicy ?? "allowlist";
@@ -256,12 +484,43 @@ export async function monitorInlineProvider(params) {
256
484
  : mentionRegexes.length
257
485
  ? core.channel.mentions.matchesMentionPatterns(rawBody, mentionRegexes)
258
486
  : false;
259
- const requireMention = isGroup ? (account.config.requireMention ?? true) : false;
487
+ const historyLimit = resolveHistoryLimit({
488
+ isGroup,
489
+ historyLimit: account.config.historyLimit,
490
+ dmHistoryLimit: account.config.dmHistoryLimit,
491
+ });
492
+ const historyContext = await buildHistoryContext({
493
+ client,
494
+ chatId,
495
+ currentMessageId: msg.id,
496
+ replyToMsgId: msg.replyToMsgId,
497
+ senderProfilesById,
498
+ meId: me.userId,
499
+ historyLimit,
500
+ botMessageIdsByChat,
501
+ }).catch((err) => {
502
+ statusSink?.({ lastError: `getChatHistory failed: ${String(err)}` });
503
+ return { historyText: null, repliedToBot: false };
504
+ });
505
+ const implicitMention = (reactionEvent != null && isGroup) ||
506
+ (isGroup &&
507
+ (account.config.replyToBotWithoutMention ?? false) &&
508
+ msg.replyToMsgId != null &&
509
+ historyContext.repliedToBot);
510
+ const requireMention = isGroup
511
+ ? resolveInlineGroupRequireMention({
512
+ cfg,
513
+ groupId: String(chatId),
514
+ accountId: account.accountId,
515
+ requireMentionDefault: account.config.requireMention ?? true,
516
+ })
517
+ : false;
260
518
  const mentionGate = resolveMentionGatingWithBypass({
261
519
  isGroup,
262
520
  requireMention,
263
521
  canDetectMention: typeof msg.mentioned === "boolean" || mentionRegexes.length > 0,
264
522
  wasMentioned,
523
+ implicitMention,
265
524
  allowTextCommands,
266
525
  hasControlCommand,
267
526
  commandAuthorized,
@@ -281,7 +540,9 @@ export async function monitorInlineProvider(params) {
281
540
  timestamp,
282
541
  ...(previousTimestamp != null ? { previousTimestamp } : {}),
283
542
  envelope: envelopeOptions,
284
- body: rawBody,
543
+ body: historyContext.historyText
544
+ ? `${historyContext.historyText}\n\nCurrent message:\n${rawBody}`
545
+ : rawBody,
285
546
  });
286
547
  const ctxPayload = core.channel.reply.finalizeInboundContext({
287
548
  Body: body,
@@ -323,19 +584,35 @@ export async function monitorInlineProvider(params) {
323
584
  : {}),
324
585
  onRecordError: (err) => runtime.error?.(`inline: failed updating session meta: ${String(err)}`),
325
586
  });
326
- const { onModelSelected, ...prefixOptions } = createReplyPrefixOptions({
327
- cfg,
328
- agentId: route.agentId,
329
- channel: CHANNEL_ID,
330
- accountId: account.accountId,
331
- });
332
- const typingCallbacks = createTypingCallbacks({
333
- start: () => client.sendTyping({ chatId, typing: true }),
334
- stop: () => client.sendTyping({ chatId, typing: false }),
335
- onStartError: (err) => runtime.error?.(`inline typing start failed: ${String(err)}`),
336
- onStopError: (err) => runtime.error?.(`inline typing stop failed: ${String(err)}`),
337
- });
587
+ const prefixConfig = (typeof createReplyPrefixOptions === "function"
588
+ ? createReplyPrefixOptions({
589
+ cfg,
590
+ agentId: route.agentId,
591
+ channel: CHANNEL_ID,
592
+ accountId: account.accountId,
593
+ })
594
+ : {});
595
+ const onModelSelected = typeof prefixConfig.onModelSelected === "function"
596
+ ? prefixConfig.onModelSelected
597
+ : undefined;
598
+ const { onModelSelected: _ignoredOnModelSelected, ...prefixOptions } = prefixConfig;
599
+ const typingCallbacks = typeof createTypingCallbacks === "function"
600
+ ? createTypingCallbacks({
601
+ start: () => client.sendTyping({ chatId, typing: true }),
602
+ stop: () => client.sendTyping({ chatId, typing: false }),
603
+ onStartError: (err) => runtime.error?.(`inline typing start failed: ${String(err)}`),
604
+ onStopError: (err) => runtime.error?.(`inline typing stop failed: ${String(err)}`),
605
+ })
606
+ : {};
338
607
  const parseMarkdown = account.config.parseMarkdown ?? true;
608
+ const disableBlockStreaming = typeof account.config.blockStreaming === "boolean"
609
+ ? !account.config.blockStreaming
610
+ : undefined;
611
+ const replyOptions = {
612
+ ...(onModelSelected ? { onModelSelected } : {}),
613
+ blockReplyTimeoutMs: 25_000,
614
+ ...(typeof disableBlockStreaming === "boolean" ? { disableBlockStreaming } : {}),
615
+ };
339
616
  await core.channel.reply.dispatchReplyWithBufferedBlockDispatcher({
340
617
  ctx: ctxPayload,
341
618
  cfg,
@@ -367,20 +644,24 @@ export async function monitorInlineProvider(params) {
367
644
  // ignore
368
645
  }
369
646
  }
370
- await client.sendMessage({
647
+ // Keep reply chains threaded when inbound is a reply in group chats.
648
+ if (replyToMsgId == null && isGroup && msg.replyToMsgId != null) {
649
+ replyToMsgId = msg.id;
650
+ }
651
+ const sent = await client.sendMessage({
371
652
  chatId,
372
653
  text: outboundText,
373
654
  ...(replyToMsgId != null ? { replyToMsgId } : {}),
374
655
  parseMarkdown,
375
656
  });
657
+ if (sent.messageId != null) {
658
+ rememberBotMessageId(botMessageIdsByChat, chatId, sent.messageId);
659
+ }
376
660
  statusSink?.({ lastOutboundAt: Date.now() });
377
661
  },
378
662
  onError: (err, info) => runtime.error?.(`inline ${info.kind} reply failed: ${String(err)}`),
379
663
  },
380
- replyOptions: {
381
- onModelSelected,
382
- blockReplyTimeoutMs: 25_000,
383
- },
664
+ replyOptions,
384
665
  });
385
666
  }
386
667
  }
@@ -1 +1 @@
1
- {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/inline/monitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,cAAc,EACd,yBAAyB,EACzB,8BAA8B,GAG/B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,EAAgB,MAAM,2BAA2B,CAAA;AACrG,OAAO,EAAE,kBAAkB,EAA8B,MAAM,eAAe,CAAA;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAEhD,MAAM,UAAU,GAAG,QAAiB,CAAA;AAkBpC,SAAS,mBAAmB,CAAC,GAAW;IACtC,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;AACnE,CAAC;AAED,SAAS,kBAAkB,CAAC,OAA2C;IACrE,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;SACnB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;SAClD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,OAAO,CAAC,CAAA;AACpB,CAAC;AAED,SAAS,cAAc,CAAC,MAAiD;IACvE,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAChE,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAA;AACpE,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,MAAuB,EACvB,KAAkC,EAClC,MAAc;IAEd,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAClC,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAA;IAE7B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAC/C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAA;IAC5C,MAAM,IAAI,GAA2B,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAA;IAC7E,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI,CAAA;IAC1C,MAAM,IAAI,GAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IAC5C,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACvB,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,WAAW,CAAC,OAAgB;IACnC,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;AACvC,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAuB;IACtD,MAAM,OAAO,GAAG,GAAG,EAAE,IAAI,EAAE,CAAA;IAC3B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAA;IAC9B,OAAO,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;AAC7D,CAAC;AAED,SAAS,qBAAqB,CAAC,MAG9B;IACC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;IACjF,OAAO,IAAI,IAAI,SAAS,CAAA;AAC1B,CAAC;AAED,SAAS,iCAAiC,CAAC,IAAY,EAAE,kBAA8C;IACrG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IACpC,OAAO,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,CAAC,IAAI,EAAE,MAAc,EAAE,MAAc,EAAE,EAAE;QACpF,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAA;QACzD,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAA;QAC1B,OAAO,GAAG,MAAM,IAAI,QAAQ,EAAE,CAAA;IAChC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,MAO3C;IACC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,MAAM,CAAA;IACtE,MAAM,IAAI,GAAG,gBAAgB,EAAE,CAAA;IAE/B,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,sCAAsC,OAAO,CAAC,SAAS,8BAA8B,CAAC,CAAA;IACxG,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAE/C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAA;IAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,SAAS,OAAO,CAAC,CAAA;IACxF,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEzD,MAAM,MAAM,GAAG;QACb,KAAK,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;QACzC,IAAI,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;QACrC,IAAI,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;QACrC,KAAK,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;KACxC,CAAA;IAED,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QACjC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK;QACL,MAAM,EAAE,MAAM;QACd,KAAK,EAAE,IAAI,kBAAkB,CAAC,SAAS,CAAC;KACzC,CAAC,CAAA;IAEF,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IACjC,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;IAC/B,GAAG,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,0BAA0B,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAE9E,MAAM,SAAS,GAAG,IAAI,GAAG,EAA0B,CAAA;IACnD,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAyB,CAAA;IAC3D,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAU,CAAA;IAClD,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAyB,CAAA;IAE3D,MAAM,uBAAuB,GAAG,KAAK,EAAE,MAAc,EAAiB,EAAE;QACtE,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;QAC9B,IAAI,wBAAwB,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAM;QACjD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAChD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAA;QAE7B,MAAM,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE;YACtB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,qBAAqB,EAAE;gBAClE,SAAS,EAAE,qBAAqB;gBAChC,mBAAmB,EAAE,EAAE,MAAM,EAAE;aAChC,CAAC,CAAA;YACF,IAAI,MAAM,CAAC,SAAS,KAAK,qBAAqB;gBAAE,OAAM;YAEtD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;gBAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAC9B,IAAI,CAAC,MAAM;oBAAE,SAAQ;gBACrB,MAAM,QAAQ,GAAG,qBAAqB,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;gBAC9F,MAAM,YAAY,GAAG,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBAC3D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBAC/C,MAAM,UAAU,GAAG,QAAQ,IAAI,QAAQ,EAAE,IAAI,CAAA;gBAC7C,MAAM,cAAc,GAAG,YAAY,IAAI,QAAQ,EAAE,QAAQ,CAAA;gBACzD,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE;oBAC7B,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3C,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACxD,CAAC,CAAA;YACJ,CAAC;YAED,wBAAwB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACvC,CAAC,CAAC,EAAE;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,+BAA+B,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAA;QAC3E,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACZ,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC,CAAC,CAAA;QAEJ,kBAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;QACpC,MAAM,GAAG,CAAA;IACX,CAAC,CAAA;IAED,MAAM,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE;QACvB,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC1C,IAAI,WAAW,CAAC,OAAO;oBAAE,MAAK;gBAC9B,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;oBAAE,SAAQ;gBAE1C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAA;gBACzB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAA;gBAChC,IAAI,CAAC,OAAO;oBAAE,SAAQ;gBAEtB,6CAA6C;gBAC7C,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,CAAC,MAAM;oBAAE,SAAQ;gBAEjD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;gBAC3B,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;gBAE3C,IAAI,QAAwB,CAAA;gBAC5B,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;gBAC7D,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,yDAAyD;oBACzD,QAAQ,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;oBACzC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC/D,CAAC;gBAED,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAA;gBAC1C,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACnC,MAAM,uBAAuB,CAAC,MAAM,CAAC,CAAA;gBACrC,MAAM,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;gBACtD,MAAM,cAAc,GAAG,aAAa,EAAE,QAAQ,CAAA;gBAC9C,MAAM,UAAU,GAAG,aAAa,EAAE,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;gBAE9F,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAA;gBACrD,MAAM,kBAAkB,GAAG,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAA;gBAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,kBAAkB,IAAI,WAAW,CAAA;gBAEnF,MAAM,eAAe,GAAG,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;gBACpE,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;gBAC9E,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;gBAChG,MAAM,cAAc,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAA;gBAEzD,MAAM,kBAAkB,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,cAAc,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;gBAClF,MAAM,uBAAuB,GAAG;oBAC9B,GAAG,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,eAAe,CAAC;oBAC7E,GAAG,cAAc;iBAClB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;gBAEjB,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC;oBACvE,GAAG;oBACH,OAAO,EAAE,UAAU;iBACpB,CAAC,CAAA;gBACF,MAAM,eAAe,GAAG,GAAG,CAAC,QAAQ,EAAE,eAAe,KAAK,KAAK,CAAA;gBAC/D,MAAM,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,kBAAkB,CAAA;gBAC/E,MAAM,wBAAwB,GAAG,cAAc,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC,CAAA;gBAC1F,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;gBAC3E,MAAM,WAAW,GAAG,yBAAyB,CAAC;oBAC5C,eAAe;oBACf,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC;oBAC7F,iBAAiB;oBACjB,iBAAiB;iBAClB,CAAC,CAAA;gBACF,MAAM,iBAAiB,GAAG,WAAW,CAAC,iBAAiB,CAAA;gBAEvD,IAAI,OAAO,EAAE,CAAC;oBACZ,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;wBAC/B,GAAG,EAAE,IAAI,CACP,IAAI,OAAO,CAAC,SAAS,6BAA6B,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAC1F,CAAA;wBACD,SAAQ;oBACV,CAAC;oBACD,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;wBAChC,MAAM,OAAO,GAAG,cAAc,CAAC,EAAE,SAAS,EAAE,uBAAuB,EAAE,QAAQ,EAAE,CAAC,CAAA;wBAChF,IAAI,CAAC,OAAO,EAAE,CAAC;4BACb,GAAG,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,+BAA+B,QAAQ,0BAA0B,CAAC,CAAA;4BACjG,SAAQ;wBACV,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;wBAC5B,GAAG,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,4BAA4B,QAAQ,sBAAsB,CAAC,CAAA;wBAC1F,SAAQ;oBACV,CAAC;oBACD,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;wBACxB,MAAM,OAAO,GAAG,cAAc,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,CAAA;wBAC3E,IAAI,CAAC,OAAO,EAAE,CAAC;4BACb,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gCAC3B,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;oCACxE,OAAO,EAAE,UAAU;oCACnB,EAAE,EAAE,QAAQ;oCACZ,IAAI,EAAE,EAAE;oCACR,mFAAmF;oCACnF,cAAc,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE;iCACjE,CAAC,CAAA;gCACF,IAAI,OAAO,EAAE,CAAC;oCACZ,IAAI,CAAC;wCACH,MAAM,MAAM,CAAC,WAAW,CAAC;4CACvB,MAAM;4CACN,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC;gDAC3C,OAAO,EAAE,UAAU;gDACnB,MAAM,EAAE,wBAAwB,QAAQ,EAAE;gDAC1C,IAAI;6CACL,CAAC;yCACH,CAAC,CAAA;wCACF,UAAU,EAAE,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;oCAC9C,CAAC;oCAAC,OAAO,GAAG,EAAE,CAAC;wCACb,OAAO,CAAC,KAAK,EAAE,CAAC,oCAAoC,QAAQ,KAAK,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;oCACjF,CAAC;gCACH,CAAC;4BACH,CAAC;4BACD,GAAG,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,4BAA4B,QAAQ,cAAc,QAAQ,GAAG,CAAC,CAAA;4BAC7F,SAAQ;wBACV,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC;oBAC5B,cAAc,CAAC;wBACb,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;wBAC5B,OAAO,EAAE,UAAU;wBACnB,MAAM,EAAE,gCAAgC;wBACxC,MAAM,EAAE,QAAQ;qBACjB,CAAC,CAAA;oBACF,SAAQ;gBACV,CAAC;gBAED,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC;oBACnD,GAAG;oBACH,OAAO,EAAE,UAAU;oBACnB,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,IAAI,EAAE;wBACJ,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ;wBAClC,qFAAqF;wBACrF,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ;qBACxC;iBACF,CAAC,CAAA;gBAEF,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;gBACpF,MAAM,YAAY,GAChB,OAAO,GAAG,CAAC,SAAS,KAAK,SAAS;oBAChC,CAAC,CAAC,GAAG,CAAC,SAAS;oBACf,CAAC,CAAC,cAAc,CAAC,MAAM;wBACrB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,OAAO,EAAE,cAAc,CAAC;wBACvE,CAAC,CAAC,KAAK,CAAA;gBAEb,MAAM,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;gBAChF,MAAM,WAAW,GAAG,8BAA8B,CAAC;oBACjD,OAAO;oBACP,cAAc;oBACd,gBAAgB,EAAE,OAAO,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;oBACjF,YAAY;oBACZ,iBAAiB;oBACjB,iBAAiB;oBACjB,iBAAiB;iBAClB,CAAC,CAAA;gBACF,IAAI,OAAO,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;oBACtC,OAAO,CAAC,GAAG,EAAE,CAAC,2BAA2B,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;oBACvE,SAAQ;gBACV,CAAC;gBAED,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;gBACzC,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,QAAQ,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,QAAQ,EAAE,CAAA;gBAE3F,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;gBACvG,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAA;gBAC5E,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;gBAChH,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC;oBAClD,OAAO,EAAE,QAAQ;oBACjB,IAAI,EAAE,SAAS;oBACf,SAAS;oBACT,GAAG,CAAC,iBAAiB,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3D,QAAQ,EAAE,eAAe;oBACzB,IAAI,EAAE,OAAO;iBACd,CAAC,CAAA;gBAEF,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC;oBAC3D,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,OAAO;oBAChB,WAAW,EAAE,OAAO;oBACpB,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,eAAe,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,QAAQ,EAAE;oBACtE,EAAE,EAAE,UAAU,MAAM,CAAC,MAAM,CAAC,EAAE;oBAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ;oBACtC,iBAAiB,EAAE,SAAS;oBAC5B,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtE,QAAQ,EAAE,QAAQ;oBAClB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjD,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7D,QAAQ,EAAE,UAAU;oBACpB,OAAO,EAAE,UAAU;oBACnB,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1B,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5E,SAAS,EAAE,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;oBAClC,YAAY,EAAE,WAAW,CAAC,qBAAqB;oBAC/C,iBAAiB,EAAE,iBAAiB;oBACpC,kBAAkB,EAAE,UAAU;oBAC9B,aAAa,EAAE,UAAU,MAAM,CAAC,MAAM,CAAC,EAAE;iBAC1C,CAAC,CAAA;gBAEF,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;oBAC9C,SAAS;oBACT,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU;oBACrD,GAAG,EAAE,UAAU;oBACf,GAAG,CAAC,CAAC,OAAO;wBACV,CAAC,CAAC;4BACE,eAAe,EAAE;gCACf,UAAU,EAAE,KAAK,CAAC,cAAc;gCAChC,OAAO,EAAE,UAAU;gCACnB,EAAE,EAAE,UAAU,MAAM,CAAC,MAAM,CAAC,EAAE;gCAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;6BAC3B;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;oBACP,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,yCAAyC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;iBAChG,CAAC,CAAA;gBAEF,MAAM,EAAE,eAAe,EAAE,GAAG,aAAa,EAAE,GAAG,wBAAwB,CAAC;oBACrE,GAAG;oBACH,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,OAAO,EAAE,UAAU;oBACnB,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC7B,CAAC,CAAA;gBAEF,MAAM,eAAe,GAAG,qBAAqB,CAAC;oBAC5C,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;oBACxD,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;oBACxD,YAAY,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,+BAA+B,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;oBACpF,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,8BAA8B,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;iBACnF,CAAC,CAAA;gBAEF,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,IAAI,IAAI,CAAA;gBAE1D,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC;oBAChE,GAAG,EAAE,UAAU;oBACf,GAAG;oBACH,iBAAiB,EAAE;wBACjB,GAAG,aAAa;wBAChB,GAAG,eAAe;wBAClB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;4BACzB,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;4BACxC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,MAAM;gCACzC,CAAC,CAAC,OAAO,CAAC,SAAS;gCACnB,CAAC,CAAC,OAAO,CAAC,QAAQ;oCAChB,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;oCACpB,CAAC,CAAC,EAAE,CAAA;4BACR,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;4BAClG,MAAM,QAAQ,GAAG,IAAI;gCACnB,CAAC,CAAC,UAAU;oCACV,CAAC,CAAC,GAAG,IAAI,OAAO,UAAU,EAAE;oCAC5B,CAAC,CAAC,IAAI;gCACR,CAAC,CAAC,UAAU,CAAA;4BAEd,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;gCAAE,OAAM;4BAC5B,MAAM,YAAY,GAAG,iCAAiC,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAA;4BAEpF,IAAI,YAAgC,CAAA;4BACpC,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;gCAC9B,IAAI,CAAC;oCACH,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;gCAC1C,CAAC;gCAAC,MAAM,CAAC;oCACP,SAAS;gCACX,CAAC;4BACH,CAAC;4BACD,MAAM,MAAM,CAAC,WAAW,CAAC;gCACvB,MAAM;gCACN,IAAI,EAAE,YAAY;gCAClB,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACjD,aAAa;6BACd,CAAC,CAAA;4BACF,UAAU,EAAE,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;wBAC9C,CAAC;wBACD,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,UAAU,IAAI,CAAC,IAAI,kBAAkB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;qBAC5F;oBACD,YAAY,EAAE;wBACZ,eAAe;wBACf,mBAAmB,EAAE,MAAM;qBAC5B;iBACF,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACxC,OAAO,CAAC,KAAK,EAAE,CAAC,gCAAgC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAChE,CAAC;IACH,CAAC,CAAC,EAAE,CAAA;IAEJ,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QACpC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IAC5B,CAAC,CAAA;IAED,WAAW,CAAC,gBAAgB,CAC1B,OAAO,EACP,GAAG,EAAE;QACH,KAAK,IAAI,EAAE,CAAA;IACb,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAA;IAED,OAAO,EAAE,IAAI,EAAE,CAAA;AACjB,CAAC"}
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/inline/monitor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { type OpenClawConfig } from "openclaw/plugin-sdk";
2
+ type InlineToolPolicy = Record<string, unknown>;
3
+ export declare function resolveInlineGroupRequireMention(params: {
4
+ cfg: OpenClawConfig;
5
+ accountId: string | null | undefined;
6
+ groupId: string | null | undefined;
7
+ requireMentionDefault: boolean;
8
+ }): boolean;
9
+ export declare function resolveInlineGroupToolPolicy(params: {
10
+ cfg: OpenClawConfig;
11
+ accountId: string | null | undefined;
12
+ groupId: string | null | undefined;
13
+ senderId: string | null | undefined;
14
+ senderName: string | null | undefined;
15
+ senderUsername: string | null | undefined;
16
+ senderE164: string | null | undefined;
17
+ }): InlineToolPolicy | undefined;
18
+ export {};
19
+ //# sourceMappingURL=policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/inline/policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAE7E,KAAK,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AA4F/C,wBAAgB,gCAAgC,CAAC,MAAM,EAAE;IACvD,GAAG,EAAE,cAAc,CAAA;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IACpC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAClC,qBAAqB,EAAE,OAAO,CAAA;CAC/B,GAAG,OAAO,CAOV;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE;IACnD,GAAG,EAAE,cAAc,CAAA;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IACpC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAClC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IACnC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IACrC,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IACzC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CACtC,GAAG,gBAAgB,GAAG,SAAS,CAwB/B"}
@@ -0,0 +1,108 @@
1
+ import { DEFAULT_ACCOUNT_ID } from "openclaw/plugin-sdk";
2
+ function normalizeAccountId(raw) {
3
+ const trimmed = (raw ?? DEFAULT_ACCOUNT_ID).trim();
4
+ return (trimmed || DEFAULT_ACCOUNT_ID).toLowerCase();
5
+ }
6
+ function resolveInlineGroups(cfg, accountId) {
7
+ const inline = cfg.channels?.inline;
8
+ if (!inline)
9
+ return undefined;
10
+ const normalized = normalizeAccountId(accountId);
11
+ const accounts = inline.accounts ?? {};
12
+ const accountEntry = accounts[normalized] ??
13
+ accounts[Object.keys(accounts).find((key) => key.toLowerCase() === normalized) ?? ""];
14
+ return accountEntry?.groups ?? inline.groups;
15
+ }
16
+ function resolveGroupConfig(groups, groupId) {
17
+ if (!groups)
18
+ return undefined;
19
+ const normalizedGroupId = (groupId ?? "").trim();
20
+ if (!normalizedGroupId)
21
+ return undefined;
22
+ const direct = groups[normalizedGroupId];
23
+ if (direct)
24
+ return direct;
25
+ const lowered = normalizedGroupId.toLowerCase();
26
+ const matchedKey = Object.keys(groups).find((key) => key !== "*" && key.toLowerCase() === lowered);
27
+ return matchedKey ? groups[matchedKey] : undefined;
28
+ }
29
+ function normalizeSenderKey(raw) {
30
+ const trimmed = raw.trim();
31
+ if (!trimmed)
32
+ return "";
33
+ const withoutAt = trimmed.startsWith("@") ? trimmed.slice(1) : trimmed;
34
+ return withoutAt.toLowerCase();
35
+ }
36
+ function resolveToolsBySender(params) {
37
+ const entries = Object.entries(params.toolsBySender ?? {});
38
+ if (!entries.length)
39
+ return undefined;
40
+ const normalizedMap = new Map();
41
+ let wildcard;
42
+ for (const [rawKey, policy] of entries) {
43
+ if (!policy)
44
+ continue;
45
+ const key = normalizeSenderKey(rawKey);
46
+ if (!key)
47
+ continue;
48
+ if (key === "*") {
49
+ wildcard = policy;
50
+ continue;
51
+ }
52
+ if (!normalizedMap.has(key)) {
53
+ normalizedMap.set(key, policy);
54
+ }
55
+ }
56
+ const candidates = [
57
+ params.senderId,
58
+ params.senderE164,
59
+ params.senderUsername,
60
+ params.senderName,
61
+ ];
62
+ for (const candidate of candidates) {
63
+ const key = normalizeSenderKey(candidate ?? "");
64
+ if (!key)
65
+ continue;
66
+ const matched = normalizedMap.get(key);
67
+ if (matched)
68
+ return matched;
69
+ }
70
+ return wildcard;
71
+ }
72
+ export function resolveInlineGroupRequireMention(params) {
73
+ const groups = resolveInlineGroups(params.cfg, params.accountId);
74
+ const groupConfig = resolveGroupConfig(groups, params.groupId);
75
+ const defaultConfig = groups?.["*"];
76
+ if (typeof groupConfig?.requireMention === "boolean")
77
+ return groupConfig.requireMention;
78
+ if (typeof defaultConfig?.requireMention === "boolean")
79
+ return defaultConfig.requireMention;
80
+ return params.requireMentionDefault;
81
+ }
82
+ export function resolveInlineGroupToolPolicy(params) {
83
+ const groups = resolveInlineGroups(params.cfg, params.accountId);
84
+ const groupConfig = resolveGroupConfig(groups, params.groupId);
85
+ const defaultConfig = groups?.["*"];
86
+ const groupSenderPolicy = resolveToolsBySender({
87
+ toolsBySender: groupConfig?.toolsBySender,
88
+ senderId: params.senderId,
89
+ senderName: params.senderName,
90
+ senderUsername: params.senderUsername,
91
+ senderE164: params.senderE164,
92
+ });
93
+ if (groupSenderPolicy)
94
+ return groupSenderPolicy;
95
+ if (groupConfig?.tools)
96
+ return groupConfig.tools;
97
+ const defaultSenderPolicy = resolveToolsBySender({
98
+ toolsBySender: defaultConfig?.toolsBySender,
99
+ senderId: params.senderId,
100
+ senderName: params.senderName,
101
+ senderUsername: params.senderUsername,
102
+ senderE164: params.senderE164,
103
+ });
104
+ if (defaultSenderPolicy)
105
+ return defaultSenderPolicy;
106
+ return defaultConfig?.tools;
107
+ }
108
+ //# sourceMappingURL=policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/inline/policy.ts"],"names":[],"mappings":"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"}