@linkshell/gateway 0.4.49 → 0.4.51

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.
@@ -59,6 +59,67 @@ function sendSessionError(socket, sessionId, code, message) {
59
59
  payload: { code, message },
60
60
  })));
61
61
  }
62
+ function truncateDetail(text, max = 72) {
63
+ const line = text.replace(/\s+/g, " ").trim();
64
+ return line.length > max ? `${line.slice(0, max - 1)}…` : line;
65
+ }
66
+ function commandOrPathFromToolInput(toolInput) {
67
+ if (!toolInput)
68
+ return {};
69
+ try {
70
+ const parsed = JSON.parse(toolInput);
71
+ if (parsed && typeof parsed === "object") {
72
+ return {
73
+ command: typeof parsed.command === "string" ? parsed.command : undefined,
74
+ path: typeof parsed.path === "string"
75
+ ? parsed.path
76
+ : typeof parsed.file_path === "string"
77
+ ? parsed.file_path
78
+ : undefined,
79
+ };
80
+ }
81
+ }
82
+ catch {
83
+ const match = toolInput.match(/\$\s+([^\n]+)/);
84
+ if (match?.[1])
85
+ return { command: match[1].trim() };
86
+ }
87
+ return {};
88
+ }
89
+ /** List-line for a live permission request: "运行命令 · pnpm test". */
90
+ function permissionAttentionDetail(p) {
91
+ const { command, path } = commandOrPathFromToolInput(p.toolInput);
92
+ const name = (p.toolName ?? "").toLowerCase();
93
+ if (command) {
94
+ return truncateDetail(/bash|shell|command/.test(name) || !p.toolName
95
+ ? `运行命令 · ${command}`
96
+ : `${p.toolName} · ${command}`);
97
+ }
98
+ if (path) {
99
+ const leaf = path.split("/").filter(Boolean).pop() ?? path;
100
+ if (/write|edit|multiedit/.test(name))
101
+ return truncateDetail(`改文件 · ${leaf}`);
102
+ if (/(^|_)read(_|$)|readfile/.test(name))
103
+ return truncateDetail(`读取 · ${leaf}`);
104
+ return truncateDetail(`${p.toolName || "文件"} · ${leaf}`);
105
+ }
106
+ if (p.context?.trim())
107
+ return truncateDetail(p.context.trim());
108
+ if (p.toolName)
109
+ return truncateDetail(`需要授权 · ${p.toolName}`);
110
+ return undefined;
111
+ }
112
+ function conversationAttentionDetail(conversation, status, current) {
113
+ if (status === "waiting_permission") {
114
+ if (current?.agentStatus === "waiting_permission" && current.agentDetail)
115
+ return undefined;
116
+ return conversation?.lastMessagePreview;
117
+ }
118
+ if (status === "running" || status === "error") {
119
+ return conversation?.lastMessagePreview ?? null;
120
+ }
121
+ return status ? null : undefined;
122
+ }
62
123
  function pickConversationSummary(conversations, activeConversationId) {
63
124
  const active = conversations.find((c) => c.id === activeConversationId);
64
125
  if (active)
@@ -108,14 +169,45 @@ function shouldPromoteTerminalStatus(status, current) {
108
169
  }
109
170
  function cacheAgentEnvelope(envelope, sessions) {
110
171
  try {
172
+ if (envelope.type === "agent.v2.conversation.list.result") {
173
+ const p = parseTypedPayload("agent.v2.conversation.list.result", envelope.payload);
174
+ const picked = pickConversationSummary(p.conversations);
175
+ const status = aggregateAgentStatus(p.conversations, picked?.status ?? "idle");
176
+ sessions.cacheAgentSummary(envelope.sessionId, {
177
+ status,
178
+ provider: picked?.provider,
179
+ conversationId: picked?.id,
180
+ title: picked?.title,
181
+ detail: conversationAttentionDetail(picked, status, sessions.get(envelope.sessionId)),
182
+ lastActivity: picked?.lastActivityAt ?? Date.now(),
183
+ usage: picked?.usage ?? null,
184
+ });
185
+ return;
186
+ }
187
+ if (envelope.type === "agent.v2.conversation.opened") {
188
+ const p = parseTypedPayload("agent.v2.conversation.opened", envelope.payload);
189
+ const conversation = p.conversation;
190
+ sessions.cacheAgentSummary(envelope.sessionId, {
191
+ status: conversation.status,
192
+ provider: conversation.provider,
193
+ conversationId: conversation.id,
194
+ title: conversation.title,
195
+ detail: conversationAttentionDetail(conversation, conversation.status, sessions.get(envelope.sessionId)),
196
+ lastActivity: conversation.lastActivityAt ?? Date.now(),
197
+ usage: conversation.usage ?? null,
198
+ });
199
+ return;
200
+ }
111
201
  if (envelope.type === "agent.v2.snapshot") {
112
202
  const p = parseTypedPayload("agent.v2.snapshot", envelope.payload);
113
203
  const picked = pickConversationSummary(p.conversations, p.activeConversationId);
204
+ const status = aggregateAgentStatus(p.conversations, picked?.status ?? "idle");
114
205
  sessions.cacheAgentSummary(envelope.sessionId, {
115
- status: aggregateAgentStatus(p.conversations, picked?.status ?? "idle"),
206
+ status,
116
207
  provider: picked?.provider,
117
208
  conversationId: picked?.id ?? p.activeConversationId,
118
209
  title: picked?.title,
210
+ detail: conversationAttentionDetail(picked, status, sessions.get(envelope.sessionId)),
119
211
  lastActivity: picked?.lastActivityAt ?? Date.now(),
120
212
  usage: picked?.usage ?? null,
121
213
  });
@@ -123,12 +215,14 @@ function cacheAgentEnvelope(envelope, sessions) {
123
215
  }
124
216
  if (envelope.type === "agent.v2.event") {
125
217
  const p = parseTypedPayload("agent.v2.event", envelope.payload);
218
+ const current = sessions.get(envelope.sessionId);
126
219
  if (p.conversation) {
127
220
  sessions.cacheAgentSummary(envelope.sessionId, {
128
221
  status: p.conversation.status,
129
222
  provider: p.conversation.provider,
130
223
  conversationId: p.conversation.id,
131
224
  title: p.conversation.title,
225
+ detail: conversationAttentionDetail(p.conversation, p.conversation.status, current),
132
226
  lastActivity: p.conversation.lastActivityAt,
133
227
  usage: p.conversation.usage ?? null,
134
228
  });
@@ -137,6 +231,7 @@ function cacheAgentEnvelope(envelope, sessions) {
137
231
  sessions.cacheAgentSummary(envelope.sessionId, {
138
232
  status: p.patch.status,
139
233
  conversationId: p.conversationId,
234
+ detail: conversationAttentionDetail(undefined, p.patch.status, current),
140
235
  lastActivity: Date.now(),
141
236
  });
142
237
  }
@@ -147,6 +242,7 @@ function cacheAgentEnvelope(envelope, sessions) {
147
242
  sessions.cacheAgentSummary(envelope.sessionId, {
148
243
  status: "waiting_permission",
149
244
  conversationId: p.conversationId,
245
+ detail: permissionAttentionDetail(p),
150
246
  lastActivity: Date.now(),
151
247
  });
152
248
  return;
@@ -176,6 +272,7 @@ function cacheAgentEnvelope(envelope, sessions) {
176
272
  sessions.cacheAgentSummary(envelope.sessionId, {
177
273
  status: "waiting_permission",
178
274
  conversationId: p.agentSessionId,
275
+ detail: permissionAttentionDetail(p),
179
276
  lastActivity: Date.now(),
180
277
  });
181
278
  return;
@@ -211,6 +308,7 @@ function cacheAgentEnvelope(envelope, sessions) {
211
308
  function handleHostMessage(envelope, session, sessions) {
212
309
  if (agentV2MessageRoute(envelope.type) === "host_to_client") {
213
310
  cacheAgentEnvelope(envelope, sessions);
311
+ sessions.bufferAgentEnvelope(session.id, envelope);
214
312
  broadcastToClients(session, envelope);
215
313
  return;
216
314
  }
@@ -372,6 +470,7 @@ function handleClientMessage(envelope, socket, session, deviceId, sessions) {
372
470
  for (const statusMsg of statusReplay) {
373
471
  socket.send(serializeEnvelope(statusMsg));
374
472
  }
473
+ replayAgentToSocket(socket, session.id, sessions);
375
474
  // Also forward resume to host so it can fill gaps beyond gateway buffer.
376
475
  sendToHost(session, session.machineId
377
476
  ? {
@@ -456,6 +555,16 @@ function broadcastToClients(session, envelope) {
456
555
  client.socket.send(data);
457
556
  }
458
557
  }
558
+ /** Replay the last agent snapshot + recent host→client agent envelopes. */
559
+ export function replayAgentToSocket(socket, sessionId, sessions) {
560
+ if (socket.readyState !== socket.OPEN)
561
+ return;
562
+ for (const envelope of sessions.getAgentReplay(sessionId)) {
563
+ if (socket.bufferedAmount > MAX_CLIENT_BUFFER_BYTES)
564
+ break;
565
+ socket.send(serializeEnvelope(envelope));
566
+ }
567
+ }
459
568
  function sendToHost(session, envelope) {
460
569
  if (session.host &&
461
570
  session.host.socket.readyState === session.host.socket.OPEN) {
@@ -1 +1 @@
1
- {"version":3,"file":"relay.js","sourceRoot":"","sources":["../../../src/relay.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAE/B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAE3E,MAAM,UAAU,mBAAmB,CACjC,MAAiB,EACjB,GAAW,EACX,IAAuB,EACvB,SAAiB,EACjB,QAAgB,EAChB,QAAwB;IAExB,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,0BAA0B,CAAC,CAAC;QACnF,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACrC,gBAAgB,CACd,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,wDAAwD,CACzD,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;QAC9E,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,IAAI,8BAA8B,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAClD,QAAQ,GAAG;gBACT,GAAG,QAAQ;gBACX,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC;aAC5D,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;YAC9B,gBAAgB,CACd,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,yBAAyB,CACtD,CAAC;YACF,OAAO;QACT,CAAC;QACD,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,0BAA0B,CAAC,CAAC;IACrF,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,8BAA8B,CAAC,IAAY;IAClD,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACrD,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,gBAAgB,CACvB,MAAiB,EACjB,SAAiB,EACjB,IAAY,EACZ,OAAe;IAEf,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI;QAAE,OAAO;IAC9C,MAAM,CAAC,IAAI,CACT,iBAAiB,CACf,cAAc,CAAC;QACb,IAAI,EAAE,eAAe;QACrB,SAAS;QACT,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;KAC3B,CAAC,CACH,CACF,CAAC;AACJ,CAAC;AAkBD,SAAS,uBAAuB,CAC9B,aAAsC,EACtC,oBAA6B;IAE7B,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,oBAAoB,CAAC,CAAC;IACxE,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,oBAAoB,CAAC,CAAC;IAC7E,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IAClE,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,OAAO,CAAC,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjG,CAAC;AAED,SAAS,oBAAoB,CAAC,aAAsC,EAAE,QAAiB;IACrF,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,oBAAoB,CAAC;QAAE,OAAO,oBAAoB,CAAC;IAC9F,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IACxE,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,4BAA4B,CAAC,KAAa;IACjD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,UAAU,CAAC;QAChB,KAAK,UAAU,CAAC;QAChB,KAAK,YAAY;YACf,OAAO,SAAS,CAAC;QACnB,KAAK,SAAS;YACZ,OAAO,oBAAoB,CAAC;QAC9B,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,OAA+D;IAC1F,IAAI,OAAO,CAAC,QAAQ;QAAE,OAAO,UAAU,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,OAAO;QAAE,OAAO,UAAU,OAAO,CAAC,OAAO,EAAE,CAAC;IACxD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAc,EAAE,OAAgB;IACnE,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACnC,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,oBAAoB,CAAC;AACnE,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAkB,EAAE,QAAwB;IACtE,IAAI,CAAC;QACH,IAAI,QAAQ,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,uBAAuB,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,oBAAoB,CAAC,CAAC;YAChF,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;gBAC7C,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC;gBACvE,QAAQ,EAAE,MAAM,EAAE,QAAQ;gBAC1B,cAAc,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC,oBAAoB;gBACpD,KAAK,EAAE,MAAM,EAAE,KAAK;gBACpB,YAAY,EAAE,MAAM,EAAE,cAAc,IAAI,IAAI,CAAC,GAAG,EAAE;gBAClD,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,IAAI;aAC7B,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChE,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;gBACnB,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;oBAC7C,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;oBAC7B,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,QAAQ;oBACjC,cAAc,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE;oBACjC,KAAK,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK;oBAC3B,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,cAAc;oBAC3C,KAAK,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK,IAAI,IAAI;iBACpC,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;gBAC3B,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;oBAC7C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;oBACtB,cAAc,EAAE,CAAC,CAAC,cAAc;oBAChC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;iBACzB,CAAC,CAAC;YACL,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,6BAA6B,EAAE,CAAC;YACpD,MAAM,CAAC,GAAG,iBAAiB,CAAC,6BAA6B,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC7E,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;gBAC7C,MAAM,EAAE,oBAAoB;gBAC5B,cAAc,EAAE,CAAC,CAAC,cAAc;gBAChC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;aACzB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChE,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;gBAC7C,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,cAAc,EAAE,CAAC,CAAC,cAAc;gBAChC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;aACzB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,iBAAiB,CAAC,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC9D,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;gBACb,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;oBAC7C,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,cAAc,EAAE,CAAC,CAAC,cAAc;oBAChC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;iBACzB,CAAC,CAAC;YACL,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,0BAA0B,EAAE,CAAC;YACjD,MAAM,CAAC,GAAG,iBAAiB,CAAC,0BAA0B,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC1E,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;gBAC7C,MAAM,EAAE,oBAAoB;gBAC5B,cAAc,EAAE,CAAC,CAAC,cAAc;gBAChC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;aACzB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,4BAA4B,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACrD,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC;YACpE,IAAI,MAAM,IAAI,2BAA2B,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC;gBACjE,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;oBAC7C,MAAM;oBACN,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI;oBAC5B,cAAc,EAAE,IAAI;oBACpB,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;oBAC7B,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;iBACzB,CAAC,CAAC;YACL,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,uBAAuB,EAAE,CAAC;YAC9C,sEAAsE;YACtE,0EAA0E;YAC1E,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACjD,IAAI,OAAO;gBAAE,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC;YACzD,OAAO;QACT,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wEAAwE;IAC1E,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,QAAkB,EAClB,OAA+C,EAC/C,QAAwB;IAExB,IAAI,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,gBAAgB,EAAE,CAAC;QAC5D,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACvC,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO;IACT,CAAC;IAED,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtB,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,+CAA+C;YAC/C,MAAM,CAAC,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACjE,wEAAwE;YACxE,kEAAkE;YAClE,sEAAsE;YACtE,mCAAmC;YACnC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC;gBACpD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,6BAA6B,OAAO,CAAC,EAAE,yBAAyB,CAAC,CAAC,eAAe,IAAI;oBACrF,oFAAoF,CACrF,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;gBACpF,QAAQ,CAAC,WAAW,CAClB,OAAO,CAAC,EAAE,EACV,CAAC,CAAC,QAAQ,IAAI,SAAS,EACvB,CAAC,CAAC,SAAS,IAAI,SAAS,EACxB,CAAC,CAAC,QAAQ,IAAI,SAAS,EACvB,CAAC,CAAC,QAAQ,IAAI,SAAS,EACvB,CAAC,CAAC,GAAG,IAAI,SAAS,EAClB,CAAC,CAAC,WAAW,IAAI,SAAS,CAC3B,CAAC;YACJ,CAAC;YACD,MAAM;QACR,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC5C,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,CAAC;QACD,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,iEAAiE;YACjE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,CAAC;QACD,KAAK,mBAAmB;YACtB,MAAM;QACR,KAAK,4BAA4B,CAAC,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,iBAAiB,CAAC,4BAA4B,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC5E,6BAA6B,CAAC;gBAC5B,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,GAAG,EAAE;oBACH,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,OAAO,EAAE,CAAC,CAAC,OAAO;iBACnB;aACF,CAAC,CAAC;YACH,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,CAAC;QACD,oDAAoD;QACpD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,MAAM,CAAC,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACjE,oBAAoB,CAAC,CAAC,CAAC,CAAC;YACxB,OAAO;QACT,CAAC;QACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChE,kBAAkB,CAAC,CAAC,CAAC,CAAC;YACtB,OAAO;QACT,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,MAAM,CAAC,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACjE,mBAAmB,CAAC,CAAC,CAAC,CAAC;YACvB,OAAO;QACT,CAAC;QACD,KAAK,eAAe,CAAC;QACrB,KAAK,gBAAgB;YACnB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,iCAAiC;QACjC,KAAK,cAAc,CAAC;QACpB,KAAK,eAAe,CAAC;QACrB,KAAK,cAAc,CAAC;QACpB,KAAK,YAAY,CAAC;QAClB,4BAA4B;QAC5B,KAAK,oBAAoB,CAAC;QAC1B,KAAK,cAAc,CAAC;QACpB,KAAK,0BAA0B,CAAC;QAChC,KAAK,gBAAgB;YACnB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACvC,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,iCAAiC;QACjC,KAAK,kBAAkB,CAAC;QACxB,KAAK,eAAe,CAAC;QACrB,KAAK,wBAAwB,CAAC;QAC9B,KAAK,2BAA2B;YAC9B,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,+BAA+B;QAC/B,KAAK,iBAAiB;YACpB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACvC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC3C,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR;YACE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;IACV,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAkB,EAClB,MAAiB,EACjB,OAA+C,EAC/C,QAAgB,EAChB,QAAwB;IAExB,MAAM,iBAAiB,GAAG,GAAY,EAAE;QACtC,IAAI,OAAO,CAAC,YAAY,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACnD,MAAM,CAAC,IAAI,CACT,iBAAiB,CACf,cAAc,CAAC;YACb,IAAI,EAAE,eAAe;YACrB,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,OAAO,EAAE;gBACP,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,oBAAoB;aAC9B;SACF,CAAC,CACH,CACF,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;QAClC,IAAI,CAAC,iBAAiB,EAAE;YAAE,OAAO;QACjC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IACD,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;QACjC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtB,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,iBAAiB,EAAE;gBAAE,OAAO;YACjC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,IAAI,CAAC,iBAAiB,EAAE;gBAAE,OAAO;YACjC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,CAAC;QACD,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,sBAAsB;YACtB,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,CAAC;QACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChE,mCAAmC;YACnC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CACnC,OAAO,CAAC,EAAE,EACV,CAAC,CAAC,sBAAsB,EACxB,CAAC,CAAC,YAAY,CACf,CAAC;YACF,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACzB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAkC,CAAC;gBACvD,MAAM,CAAC,IAAI,CACT,iBAAiB,CACf,cAAc,CAAC;oBACb,IAAI,EAAE,iBAAiB;oBACvB,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,UAAU,EAAE,GAAG,CAAC,UAAU;oBAC1B,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE;iBACxC,CAAC,CACH,CACF,CAAC;YACJ,CAAC;YACD,gDAAgD;YAChD,MAAM,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1D,KAAK,MAAM,SAAS,IAAI,YAAY,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5C,CAAC;YACD,yEAAyE;YACzE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS;gBACnC,CAAC,CAAC;oBACE,GAAG,QAAQ;oBACX,OAAO,EAAE;wBACP,GAAI,QAAQ,CAAC,OAAmC;wBAChD,SAAS,EAAE,OAAO,CAAC,SAAS;qBAC7B;iBACF;gBACH,CAAC,CAAC,QAAQ,CAAC,CAAC;YACd,MAAM;QACR,CAAC;QACD,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,cAAc,CAAC;gBAC9B,IAAI,EAAE,eAAe;gBACrB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,OAAO,EAAE,EAAE,QAAQ,EAAE;aACtB,CAAC,CAAC;YACH,oEAAoE;YACpE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC9C,MAAM,UAAU,GAAG,cAAc,CAAC;gBAChC,IAAI,EAAE,iBAAiB;gBACvB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,OAAO,EAAE,EAAE,QAAQ,EAAE;aACtB,CAAC,CAAC;YACH,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACxC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAChC,MAAM;QACR,CAAC;QACD,KAAK,mBAAmB;YACtB,MAAM;QACR,gCAAgC;QAChC,KAAK,cAAc,CAAC;QACpB,KAAK,aAAa,CAAC;QACnB,KAAK,eAAe,CAAC;QACrB,KAAK,YAAY,CAAC;QAClB,KAAK,mBAAmB,CAAC;QACzB,KAAK,oBAAoB,CAAC;QAC1B,KAAK,cAAc,CAAC;QACpB,KAAK,cAAc,CAAC;QACpB,KAAK,2BAA2B,CAAC;QACjC,+DAA+D;QAC/D,KAAK,gBAAgB,CAAC;QACtB,KAAK,eAAe,CAAC;QACrB,KAAK,gBAAgB,CAAC;QACtB,KAAK,aAAa,CAAC;QACnB,KAAK,qBAAqB;YACxB,IAAI,CAAC,iBAAiB,EAAE;gBAAE,OAAO;YACjC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,2DAA2D;QAC3D,KAAK,eAAe,CAAC;QACrB,KAAK,iBAAiB,CAAC;QACvB,KAAK,oBAAoB,CAAC;QAC1B,KAAK,0BAA0B,CAAC;QAChC,KAAK,kBAAkB,CAAC;QACxB,KAAK,oBAAoB;YACvB,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR;YACE,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;IACV,CAAC;AACH,CAAC;AAED;8DAC8D;AAC9D,MAAM,uBAAuB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,MAAM;AAEvD,SAAS,kBAAkB,CACzB,OAA+C,EAC/C,QAAkB;IAElB,MAAM,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACzC,KAAK,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI;YAAE,SAAS;QAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,cAAc,GAAG,uBAAuB;YAAE,SAAS;QACrE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CACjB,OAA+C,EAC/C,QAAkB;IAElB,IACE,OAAO,CAAC,IAAI;QACZ,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAC3D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"relay.js","sourceRoot":"","sources":["../../../src/relay.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAE/B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAE3E,MAAM,UAAU,mBAAmB,CACjC,MAAiB,EACjB,GAAW,EACX,IAAuB,EACvB,SAAiB,EACjB,QAAgB,EAChB,QAAwB;IAExB,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,0BAA0B,CAAC,CAAC;QACnF,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACrC,gBAAgB,CACd,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,wDAAwD,CACzD,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;QAC9E,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,IAAI,8BAA8B,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAClD,QAAQ,GAAG;gBACT,GAAG,QAAQ;gBACX,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC;aAC5D,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;YAC9B,gBAAgB,CACd,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,yBAAyB,CACtD,CAAC;YACF,OAAO;QACT,CAAC;QACD,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,0BAA0B,CAAC,CAAC;IACrF,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,8BAA8B,CAAC,IAAY;IAClD,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACrD,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,gBAAgB,CACvB,MAAiB,EACjB,SAAiB,EACjB,IAAY,EACZ,OAAe;IAEf,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI;QAAE,OAAO;IAC9C,MAAM,CAAC,IAAI,CACT,iBAAiB,CACf,cAAc,CAAC;QACb,IAAI,EAAE,eAAe;QACrB,SAAS;QACT,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;KAC3B,CAAC,CACH,CACF,CAAC;AACJ,CAAC;AAmBD,SAAS,cAAc,CAAC,IAAY,EAAE,GAAG,GAAG,EAAE;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACjE,CAAC;AAED,SAAS,0BAA0B,CAAC,SAAkB;IACpD,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAC1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAA4B,CAAC;QAChE,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzC,OAAO;gBACL,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;gBACxE,IAAI,EAAE,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;oBACnC,CAAC,CAAC,MAAM,CAAC,IAAI;oBACb,CAAC,CAAC,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;wBACpC,CAAC,CAAC,MAAM,CAAC,SAAS;wBAClB,CAAC,CAAC,SAAS;aAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC/C,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC;YAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;IACtD,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,mEAAmE;AACnE,SAAS,yBAAyB,CAAC,CAIlC;IACC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,0BAA0B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9C,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CACnB,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ;YAC5C,CAAC,CAAC,UAAU,OAAO,EAAE;YACrB,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,MAAM,OAAO,EAAE,CACjC,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC;QAC3D,IAAI,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,cAAc,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QAC9E,IAAI,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,cAAc,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAChF,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,IAAI,MAAM,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE;QAAE,OAAO,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/D,IAAI,CAAC,CAAC,QAAQ;QAAE,OAAO,cAAc,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9D,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,2BAA2B,CAClC,YAA+C,EAC/C,MAA0B,EAC1B,OAAwD;IAExD,IAAI,MAAM,KAAK,oBAAoB,EAAE,CAAC;QACpC,IAAI,OAAO,EAAE,WAAW,KAAK,oBAAoB,IAAI,OAAO,CAAC,WAAW;YAAE,OAAO,SAAS,CAAC;QAC3F,OAAO,YAAY,EAAE,kBAAkB,CAAC;IAC1C,CAAC;IACD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QAC/C,OAAO,YAAY,EAAE,kBAAkB,IAAI,IAAI,CAAC;IAClD,CAAC;IACD,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AACnC,CAAC;AAED,SAAS,uBAAuB,CAC9B,aAAsC,EACtC,oBAA6B;IAE7B,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,oBAAoB,CAAC,CAAC;IACxE,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,oBAAoB,CAAC,CAAC;IAC7E,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IAClE,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,OAAO,CAAC,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjG,CAAC;AAED,SAAS,oBAAoB,CAAC,aAAsC,EAAE,QAAiB;IACrF,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,oBAAoB,CAAC;QAAE,OAAO,oBAAoB,CAAC;IAC9F,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IACxE,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,4BAA4B,CAAC,KAAa;IACjD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,UAAU,CAAC;QAChB,KAAK,UAAU,CAAC;QAChB,KAAK,YAAY;YACf,OAAO,SAAS,CAAC;QACnB,KAAK,SAAS;YACZ,OAAO,oBAAoB,CAAC;QAC9B,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,OAA+D;IAC1F,IAAI,OAAO,CAAC,QAAQ;QAAE,OAAO,UAAU,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,OAAO;QAAE,OAAO,UAAU,OAAO,CAAC,OAAO,EAAE,CAAC;IACxD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAc,EAAE,OAAgB;IACnE,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACnC,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,oBAAoB,CAAC;AACnE,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAkB,EAAE,QAAwB;IACtE,IAAI,CAAC;QACH,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAmC,EAAE,CAAC;YAC1D,MAAM,CAAC,GAAG,iBAAiB,CAAC,mCAAmC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACnF,MAAM,MAAM,GAAG,uBAAuB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,CAAC;YAC/E,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;gBAC7C,MAAM;gBACN,QAAQ,EAAE,MAAM,EAAE,QAAQ;gBAC1B,cAAc,EAAE,MAAM,EAAE,EAAE;gBAC1B,KAAK,EAAE,MAAM,EAAE,KAAK;gBACpB,MAAM,EAAE,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACrF,YAAY,EAAE,MAAM,EAAE,cAAc,IAAI,IAAI,CAAC,GAAG,EAAE;gBAClD,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,IAAI;aAC7B,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,8BAA8B,EAAE,CAAC;YACrD,MAAM,CAAC,GAAG,iBAAiB,CAAC,8BAA8B,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC9E,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC;YACpC,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;gBAC7C,MAAM,EAAE,YAAY,CAAC,MAAM;gBAC3B,QAAQ,EAAE,YAAY,CAAC,QAAQ;gBAC/B,cAAc,EAAE,YAAY,CAAC,EAAE;gBAC/B,KAAK,EAAE,YAAY,CAAC,KAAK;gBACzB,MAAM,EAAE,2BAA2B,CAAC,YAAY,EAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACxG,YAAY,EAAE,YAAY,CAAC,cAAc,IAAI,IAAI,CAAC,GAAG,EAAE;gBACvD,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;aAClC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,uBAAuB,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,oBAAoB,CAAC,CAAC;YAChF,MAAM,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,CAAC;YAC/E,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;gBAC7C,MAAM;gBACN,QAAQ,EAAE,MAAM,EAAE,QAAQ;gBAC1B,cAAc,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC,oBAAoB;gBACpD,KAAK,EAAE,MAAM,EAAE,KAAK;gBACpB,MAAM,EAAE,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACrF,YAAY,EAAE,MAAM,EAAE,cAAc,IAAI,IAAI,CAAC,GAAG,EAAE;gBAClD,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,IAAI;aAC7B,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChE,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACjD,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;gBACnB,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;oBAC7C,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;oBAC7B,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,QAAQ;oBACjC,cAAc,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE;oBACjC,KAAK,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK;oBAC3B,MAAM,EAAE,2BAA2B,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC;oBACnF,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,cAAc;oBAC3C,KAAK,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK,IAAI,IAAI;iBACpC,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;gBAC3B,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;oBAC7C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;oBACtB,cAAc,EAAE,CAAC,CAAC,cAAc;oBAChC,MAAM,EAAE,2BAA2B,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC;oBACvE,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;iBACzB,CAAC,CAAC;YACL,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,6BAA6B,EAAE,CAAC;YACpD,MAAM,CAAC,GAAG,iBAAiB,CAAC,6BAA6B,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC7E,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;gBAC7C,MAAM,EAAE,oBAAoB;gBAC5B,cAAc,EAAE,CAAC,CAAC,cAAc;gBAChC,MAAM,EAAE,yBAAyB,CAAC,CAAC,CAAC;gBACpC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;aACzB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChE,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;gBAC7C,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,cAAc,EAAE,CAAC,CAAC,cAAc;gBAChC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;aACzB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,iBAAiB,CAAC,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC9D,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;gBACb,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;oBAC7C,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,cAAc,EAAE,CAAC,CAAC,cAAc;oBAChC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;iBACzB,CAAC,CAAC;YACL,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,0BAA0B,EAAE,CAAC;YACjD,MAAM,CAAC,GAAG,iBAAiB,CAAC,0BAA0B,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC1E,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;gBAC7C,MAAM,EAAE,oBAAoB;gBAC5B,cAAc,EAAE,CAAC,CAAC,cAAc;gBAChC,MAAM,EAAE,yBAAyB,CAAC,CAAC,CAAC;gBACpC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;aACzB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,4BAA4B,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACrD,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC;YACpE,IAAI,MAAM,IAAI,2BAA2B,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC;gBACjE,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE;oBAC7C,MAAM;oBACN,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI;oBAC5B,cAAc,EAAE,IAAI;oBACpB,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;oBAC7B,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;iBACzB,CAAC,CAAC;YACL,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,KAAK,uBAAuB,EAAE,CAAC;YAC9C,sEAAsE;YACtE,0EAA0E;YAC1E,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACjD,IAAI,OAAO;gBAAE,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC;YACzD,OAAO;QACT,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wEAAwE;IAC1E,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,QAAkB,EAClB,OAA+C,EAC/C,QAAwB;IAExB,IAAI,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,gBAAgB,EAAE,CAAC;QAC5D,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACvC,QAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACnD,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO;IACT,CAAC;IAED,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtB,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,+CAA+C;YAC/C,MAAM,CAAC,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACjE,wEAAwE;YACxE,kEAAkE;YAClE,sEAAsE;YACtE,mCAAmC;YACnC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC;gBACpD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,6BAA6B,OAAO,CAAC,EAAE,yBAAyB,CAAC,CAAC,eAAe,IAAI;oBACrF,oFAAoF,CACrF,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;gBACpF,QAAQ,CAAC,WAAW,CAClB,OAAO,CAAC,EAAE,EACV,CAAC,CAAC,QAAQ,IAAI,SAAS,EACvB,CAAC,CAAC,SAAS,IAAI,SAAS,EACxB,CAAC,CAAC,QAAQ,IAAI,SAAS,EACvB,CAAC,CAAC,QAAQ,IAAI,SAAS,EACvB,CAAC,CAAC,GAAG,IAAI,SAAS,EAClB,CAAC,CAAC,WAAW,IAAI,SAAS,CAC3B,CAAC;YACJ,CAAC;YACD,MAAM;QACR,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC5C,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,CAAC;QACD,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,iEAAiE;YACjE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,CAAC;QACD,KAAK,mBAAmB;YACtB,MAAM;QACR,KAAK,4BAA4B,CAAC,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,iBAAiB,CAAC,4BAA4B,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC5E,6BAA6B,CAAC;gBAC5B,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,GAAG,EAAE;oBACH,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,OAAO,EAAE,CAAC,CAAC,OAAO;iBACnB;aACF,CAAC,CAAC;YACH,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,CAAC;QACD,oDAAoD;QACpD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,MAAM,CAAC,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACjE,oBAAoB,CAAC,CAAC,CAAC,CAAC;YACxB,OAAO;QACT,CAAC;QACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChE,kBAAkB,CAAC,CAAC,CAAC,CAAC;YACtB,OAAO;QACT,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,MAAM,CAAC,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YACjE,mBAAmB,CAAC,CAAC,CAAC,CAAC;YACvB,OAAO;QACT,CAAC;QACD,KAAK,eAAe,CAAC;QACrB,KAAK,gBAAgB;YACnB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,iCAAiC;QACjC,KAAK,cAAc,CAAC;QACpB,KAAK,eAAe,CAAC;QACrB,KAAK,cAAc,CAAC;QACpB,KAAK,YAAY,CAAC;QAClB,4BAA4B;QAC5B,KAAK,oBAAoB,CAAC;QAC1B,KAAK,cAAc,CAAC;QACpB,KAAK,0BAA0B,CAAC;QAChC,KAAK,gBAAgB;YACnB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACvC,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,iCAAiC;QACjC,KAAK,kBAAkB,CAAC;QACxB,KAAK,eAAe,CAAC;QACrB,KAAK,wBAAwB,CAAC;QAC9B,KAAK,2BAA2B;YAC9B,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR,+BAA+B;QAC/B,KAAK,iBAAiB;YACpB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACvC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC3C,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;QACR;YACE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM;IACV,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAkB,EAClB,MAAiB,EACjB,OAA+C,EAC/C,QAAgB,EAChB,QAAwB;IAExB,MAAM,iBAAiB,GAAG,GAAY,EAAE;QACtC,IAAI,OAAO,CAAC,YAAY,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACnD,MAAM,CAAC,IAAI,CACT,iBAAiB,CACf,cAAc,CAAC;YACb,IAAI,EAAE,eAAe;YACrB,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,OAAO,EAAE;gBACP,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,oBAAoB;aAC9B;SACF,CAAC,CACH,CACF,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;QAClC,IAAI,CAAC,iBAAiB,EAAE;YAAE,OAAO;QACjC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IACD,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;QACjC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtB,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,iBAAiB,EAAE;gBAAE,OAAO;YACjC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,IAAI,CAAC,iBAAiB,EAAE;gBAAE,OAAO;YACjC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,CAAC;QACD,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,sBAAsB;YACtB,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,CAAC;QACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChE,mCAAmC;YACnC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CACnC,OAAO,CAAC,EAAE,EACV,CAAC,CAAC,sBAAsB,EACxB,CAAC,CAAC,YAAY,CACf,CAAC;YACF,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACzB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAkC,CAAC;gBACvD,MAAM,CAAC,IAAI,CACT,iBAAiB,CACf,cAAc,CAAC;oBACb,IAAI,EAAE,iBAAiB;oBACvB,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,UAAU,EAAE,GAAG,CAAC,UAAU;oBAC1B,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE;iBACxC,CAAC,CACH,CACF,CAAC;YACJ,CAAC;YACD,gDAAgD;YAChD,MAAM,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1D,KAAK,MAAM,SAAS,IAAI,YAAY,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5C,CAAC;YACD,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAClD,yEAAyE;YACzE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS;gBACnC,CAAC,CAAC;oBACE,GAAG,QAAQ;oBACX,OAAO,EAAE;wBACP,GAAI,QAAQ,CAAC,OAAmC;wBAChD,SAAS,EAAE,OAAO,CAAC,SAAS;qBAC7B;iBACF;gBACH,CAAC,CAAC,QAAQ,CAAC,CAAC;YACd,MAAM;QACR,CAAC;QACD,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,cAAc,CAAC;gBAC9B,IAAI,EAAE,eAAe;gBACrB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,OAAO,EAAE,EAAE,QAAQ,EAAE;aACtB,CAAC,CAAC;YACH,oEAAoE;YACpE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC9C,MAAM,UAAU,GAAG,cAAc,CAAC;gBAChC,IAAI,EAAE,iBAAiB;gBACvB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,OAAO,EAAE,EAAE,QAAQ,EAAE;aACtB,CAAC,CAAC;YACH,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACxC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAChC,MAAM;QACR,CAAC;QACD,KAAK,mBAAmB;YACtB,MAAM;QACR,gCAAgC;QAChC,KAAK,cAAc,CAAC;QACpB,KAAK,aAAa,CAAC;QACnB,KAAK,eAAe,CAAC;QACrB,KAAK,YAAY,CAAC;QAClB,KAAK,mBAAmB,CAAC;QACzB,KAAK,oBAAoB,CAAC;QAC1B,KAAK,cAAc,CAAC;QACpB,KAAK,cAAc,CAAC;QACpB,KAAK,2BAA2B,CAAC;QACjC,+DAA+D;QAC/D,KAAK,gBAAgB,CAAC;QACtB,KAAK,eAAe,CAAC;QACrB,KAAK,gBAAgB,CAAC;QACtB,KAAK,aAAa,CAAC;QACnB,KAAK,qBAAqB;YACxB,IAAI,CAAC,iBAAiB,EAAE;gBAAE,OAAO;YACjC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,2DAA2D;QAC3D,KAAK,eAAe,CAAC;QACrB,KAAK,iBAAiB,CAAC;QACvB,KAAK,oBAAoB,CAAC;QAC1B,KAAK,0BAA0B,CAAC;QAChC,KAAK,kBAAkB,CAAC;QACxB,KAAK,oBAAoB;YACvB,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR;YACE,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;IACV,CAAC;AACH,CAAC;AAED;8DAC8D;AAC9D,MAAM,uBAAuB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,MAAM;AAEvD,SAAS,kBAAkB,CACzB,OAA+C,EAC/C,QAAkB;IAElB,MAAM,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACzC,KAAK,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI;YAAE,SAAS;QAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,cAAc,GAAG,uBAAuB;YAAE,SAAS;QACrE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,mBAAmB,CACjC,MAAiB,EACjB,SAAiB,EACjB,QAAwB;IAExB,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI;QAAE,OAAO;IAC9C,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1D,IAAI,MAAM,CAAC,cAAc,GAAG,uBAAuB;YAAE,MAAM;QAC3D,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CACjB,OAA+C,EAC/C,QAAkB;IAElB,IACE,OAAO,CAAC,IAAI;QACZ,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAC3D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,CAAC;AACH,CAAC"}
@@ -30,9 +30,12 @@ export interface Session {
30
30
  agentProvider: string | undefined;
31
31
  agentConversationId: string | undefined;
32
32
  agentTitle: string | undefined;
33
+ agentDetail: string | undefined;
33
34
  agentLastActivity: number | undefined;
34
35
  agentUsage: AgentUsageSummary | undefined;
35
36
  agentUsageReport: unknown | undefined;
37
+ lastAgentSnapshot: Envelope | undefined;
38
+ agentReplay: Envelope[];
36
39
  }
37
40
  export interface AgentUsageSummary {
38
41
  inputTokens?: number;
@@ -45,7 +48,10 @@ export interface AgentUsageSummary {
45
48
  export declare class SessionManager {
46
49
  private sessions;
47
50
  private cleanupTimer;
51
+ /** Fired when host liveness or visible agent summary fields change. */
52
+ onPresenceChange?: (session: Session) => void;
48
53
  constructor();
54
+ private emitPresence;
49
55
  getOrCreate(sessionId: string): Session;
50
56
  get(sessionId: string): Session | undefined;
51
57
  setHost(sessionId: string, device: ConnectedDevice): void;
@@ -84,6 +90,7 @@ export declare class SessionManager {
84
90
  agentProvider: string | null;
85
91
  agentConversationId: string | null;
86
92
  agentTitle: string | null;
93
+ agentDetail: string | null;
87
94
  agentLastActivity: number | null;
88
95
  agentUsage: AgentUsageSummary | null;
89
96
  agentUsageReport: {} | null;
@@ -93,9 +100,12 @@ export declare class SessionManager {
93
100
  provider?: string | null;
94
101
  conversationId?: string | null;
95
102
  title?: string | null;
103
+ detail?: string | null;
96
104
  lastActivity?: number | null;
97
105
  usage?: AgentUsageSummary | null;
98
- }): void;
106
+ }): boolean;
107
+ bufferAgentEnvelope(sessionId: string, envelope: Envelope): void;
108
+ getAgentReplay(sessionId: string): Envelope[];
99
109
  setMetadata(sessionId: string, provider?: string, machineId?: string, hostname?: string, platform?: string, cwd?: string, projectName?: string): void;
100
110
  private maybeDelete;
101
111
  private cleanup;
@@ -1,5 +1,6 @@
1
1
  const OUTPUT_BUFFER_CAPACITY = 200;
2
2
  const OUTPUT_BUFFER_MAX_BYTES = 8 * 1024 * 1024; // 8MB per terminal buffer
3
+ const AGENT_REPLAY_CAPACITY = 80;
3
4
  const HOST_RECONNECT_WINDOW = 60_000; // 60s
4
5
  const CLEANUP_INTERVAL = 30_000;
5
6
  /** Approximate the wire byte size of an envelope for buffer accounting. */
@@ -17,9 +18,14 @@ function approxEnvelopeBytes(envelope) {
17
18
  export class SessionManager {
18
19
  sessions = new Map();
19
20
  cleanupTimer;
21
+ /** Fired when host liveness or visible agent summary fields change. */
22
+ onPresenceChange;
20
23
  constructor() {
21
24
  this.cleanupTimer = setInterval(() => this.cleanup(), CLEANUP_INTERVAL);
22
25
  }
26
+ emitPresence(session) {
27
+ this.onPresenceChange?.(session);
28
+ }
23
29
  getOrCreate(sessionId) {
24
30
  let session = this.sessions.get(sessionId);
25
31
  if (!session) {
@@ -46,9 +52,12 @@ export class SessionManager {
46
52
  agentProvider: undefined,
47
53
  agentConversationId: undefined,
48
54
  agentTitle: undefined,
55
+ agentDetail: undefined,
49
56
  agentLastActivity: undefined,
50
57
  agentUsage: undefined,
51
58
  agentUsageReport: undefined,
59
+ lastAgentSnapshot: undefined,
60
+ agentReplay: [],
52
61
  };
53
62
  this.sessions.set(sessionId, session);
54
63
  }
@@ -63,6 +72,7 @@ export class SessionManager {
63
72
  session.state = "active";
64
73
  session.hostDisconnectedAt = undefined;
65
74
  session.lastActivity = Date.now();
75
+ this.emitPresence(session);
66
76
  }
67
77
  addClient(sessionId, device) {
68
78
  const session = this.getOrCreate(sessionId);
@@ -79,6 +89,7 @@ export class SessionManager {
79
89
  session.host = undefined;
80
90
  session.state = "host_disconnected";
81
91
  session.hostDisconnectedAt = Date.now();
92
+ this.emitPresence(session);
82
93
  return { clients: session.clients };
83
94
  }
84
95
  removeClient(sessionId, deviceId) {
@@ -222,6 +233,7 @@ export class SessionManager {
222
233
  agentProvider: session.agentProvider ?? null,
223
234
  agentConversationId: session.agentConversationId ?? null,
224
235
  agentTitle: session.agentTitle ?? null,
236
+ agentDetail: session.agentDetail ?? null,
225
237
  agentLastActivity: session.agentLastActivity ?? null,
226
238
  agentUsage: session.agentUsage ?? null,
227
239
  agentUsageReport: session.agentUsageReport ?? null,
@@ -230,7 +242,14 @@ export class SessionManager {
230
242
  cacheAgentSummary(sessionId, summary) {
231
243
  const session = this.sessions.get(sessionId);
232
244
  if (!session)
233
- return;
245
+ return false;
246
+ const prev = {
247
+ status: session.agentStatus,
248
+ provider: session.agentProvider,
249
+ conversationId: session.agentConversationId,
250
+ title: session.agentTitle,
251
+ detail: session.agentDetail,
252
+ };
234
253
  if (summary.status)
235
254
  session.agentStatus = summary.status;
236
255
  if (summary.provider !== undefined)
@@ -239,11 +258,50 @@ export class SessionManager {
239
258
  session.agentConversationId = summary.conversationId ?? undefined;
240
259
  if (summary.title !== undefined)
241
260
  session.agentTitle = summary.title ?? undefined;
261
+ if (summary.detail !== undefined) {
262
+ session.agentDetail = summary.detail ?? undefined;
263
+ }
264
+ else if (summary.status && summary.status !== "waiting_permission") {
265
+ // Permission lines are only meaningful while waiting. A running/idle
266
+ // status without a new preview must not keep "运行命令 · …" around.
267
+ session.agentDetail = undefined;
268
+ }
242
269
  if (summary.lastActivity !== undefined)
243
270
  session.agentLastActivity = summary.lastActivity ?? undefined;
244
271
  if (summary.usage !== undefined)
245
272
  session.agentUsage = summary.usage ?? undefined;
246
273
  session.lastActivity = Date.now();
274
+ const changed = prev.status !== session.agentStatus ||
275
+ prev.provider !== session.agentProvider ||
276
+ prev.conversationId !== session.agentConversationId ||
277
+ prev.title !== session.agentTitle ||
278
+ prev.detail !== session.agentDetail;
279
+ if (changed)
280
+ this.emitPresence(session);
281
+ return changed;
282
+ }
283
+ bufferAgentEnvelope(sessionId, envelope) {
284
+ const session = this.sessions.get(sessionId);
285
+ if (!session)
286
+ return;
287
+ if (envelope.type === "agent.v2.snapshot") {
288
+ session.lastAgentSnapshot = envelope;
289
+ session.agentReplay = [];
290
+ return;
291
+ }
292
+ session.agentReplay.push(envelope);
293
+ if (session.agentReplay.length > AGENT_REPLAY_CAPACITY) {
294
+ session.agentReplay.splice(0, session.agentReplay.length - AGENT_REPLAY_CAPACITY);
295
+ }
296
+ }
297
+ getAgentReplay(sessionId) {
298
+ const session = this.sessions.get(sessionId);
299
+ if (!session)
300
+ return [];
301
+ return [
302
+ ...(session.lastAgentSnapshot ? [session.lastAgentSnapshot] : []),
303
+ ...session.agentReplay,
304
+ ];
247
305
  }
248
306
  setMetadata(sessionId, provider, machineId, hostname, platform, cwd, projectName) {
249
307
  const session = this.sessions.get(sessionId);
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/sessions.ts"],"names":[],"mappings":"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"}